var win = null;
/**
* Открывает окно в центре экрана или по левому/правому краю
* @param string myurl
* @param string myname
* @param int w
* @param int h
* @param int scroll
* @param enum('left', 'right') position
*/
function CenterWindow(myurl, myname, w, h, scroll, status) {
	if(win == '[object]') {
		win.close();
	}
	
	if (screen.width <= w + 20) {
		// размер выдаваемого окна больше чем размер экрана пользователя
		scroll = 1;
		w = screen.width - 20;
	}
	
	if (screen.height <= h + 50) {
		// размер выдаваемого окна больше чем размер экрана пользователя
		scroll = 1;
		h = screen.height - 50;
	}
	
	// -10 и -50 - поправка для скроллинга и для нижней полосы с меню "Старт"
	LeftPosition = (screen.width) ? (screen.width-w - 10)/2: 0;
	TopPosition = (screen.height) ? (screen.height-h - 50)/2 : 0;
	settings = 'height='+h+',width='+w+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',toolbar=0,locationbar=0,resizeable=0,menubar=0,directories=0,dependent=1,status='+status;
	win = window.open(myurl,myname,settings)
}

function showDialog(myurl, null_reserved, w, h) {
	window.showModalDialog(myurl, window, "dialogHeight:"+h+"px; dialogWidth:"+w+"px; edge: Raised; center: Yes; help: No; resizable: No; status: No; scroll: 0; ");
}
//function centerDiv(layer_id) {
//	if (byId(layer_id)) {
		//var left = (windowWidth()-byId(layer_id).clientWidth)/2;
		//var top = (windowHeight()-byId(layer_id).clientHeight)/2 + getBodyScrollTop();
		//byId(layer_id).style.left = (left >= 0) ? left : 0;
		//byId(layer_id).style.top = (top >= 0) ? top : 0;		
	//}
//}

function centerDiv(layer_id) {
	/*if (byId(layer_id)) {
		var left = (windowWidth()-byId(layer_id).clientWidth)/2;
		var top = (windowHeight()-byId(layer_id).clientHeight)/2;
		byId(layer_id).style.position = 'fixed';
		byId(layer_id).style.top = '300px';
	}*/
			
	ds = getDocumentSize(document);
	byId('ajaxPreloader').style.left = (ds.width / 2 - 150) + "px";
}

function getBodyScrollTop() {
	return self.pageYOffset || (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop);
}
function windowWidth() {
 return (window.innerWidth)?window.innerWidth:((document.all)?document.body.offsetWidth:null);
}
function windowHeight() {
	return (window.innerHeight)?window.innerHeight:((document.all)?document.body.offsetHeight:null);
}

function getDocumentSize(doc) { // getting a real size document with scrolling etc.
  var r = { width: 0, height: 0 };
 
  var width1=0, width2=0, width3=0, width4=0, maxWidth=0;
  var height1=0, height2=0, height3=0, height4=0, maxHeight=0;
  
  
  if (doc.width) maxWidth = doc.width; 
  if (doc.body) { 
	if (doc.body.scrollWidth) width1 = doc.body.scrollWidth;
	if (doc.body.offsetWidth) width2 = doc.body.offsetWidth; 
  }
  if (doc.documentElement) {
	width3 = doc.documentElement.scrollWidth; 
	width4 = doc.documentElement.clientWidth;
  } 
  
  maxWidth = Math.max(Math.max(Math.max(width1, width2), Math.max(width3, width4)),maxWidth);
  
  if (doc.height) maxHeight = doc.height;
  if (doc.body) {
	if (doc.body.scrollHeight) height1 = doc.body.scrollHeight;
	if (doc.body.offsetHeight) height2 = doc.body.offsetHeight;
  }
  if (doc.documentElement) {
	height3 = doc.documentElement.scrollHeight;
	height4 = doc.documentElement.clientHeight;
  }
  maxHeight = Math.max(Math.max(Math.max(height1, height2), Math.max(height3, height4)),maxHeight);
  
  r.width = maxWidth;
  r.height = maxHeight;
  
  return r;
}
