var isIE = window.navigator.userAgent.indexOf("MSIE")>-1;

function trim(str){	return str.length>0 ? str.replace( /(^\s+|\s+$)/, "" ) : ""; }

function count(obj){
	if(typeof(obj)!='object') return 0;
	var n=0;
	for(var i in obj) n++;
	return n;
}

function DrawEmail(login, stub, server){
	email  = login+'@'+server; url = 'mailto:'+email;
	document.write('<a href="'+url+'">'+email+'</a>');
}

function isEmail(email) {
	email = trim(email);
	if(email=='')  return false;
	var arr1 = email.split("@");
	if( (arr1.length!=2) || (arr1[0].length<1) ) return false;
	var arr2 = arr1[1].split(".");
	if( (arr2.length<2) || (arr2[0].length < 1) ) return false;
	return true;
}
function isEmpty (txt){ return trim(txt)==''; }


function openW(win_name,w,h)
{
	return window.open(win_name, '_openW', 'resizable=no,menubar=no,scrollbars=yes,width='+w+',height='+h);
}

function openW2(win_name,w,h)
{
	var top = (window.screen.height-h)/2;
	var left = (window.screen.width-w)/2;
	return window.open(win_name, '_openW', 'resizable=no,menubar=no,scrollbars=no,left='+left+',top='+top+',width='+w+',height='+h);
}

function AddToFavorite(){
  var Netscape, MSIE, Opera, Unknown;
  var Win, Mac, Other;
  var NetscapeVer, MSIEVer, OperaVer;
  
  Netscape = navigator.appName == "Netscape";
  MSIE = navigator.appName == "Microsoft Internet Explorer";
  Opera = navigator.userAgent.indexOf("Opera") > -1;
  Unknown = !(Netscape || MSIE || Opera);
  
  Win = navigator.userAgent.indexOf("Win") > -1;
  Mac = navigator.userAgent.indexOf("Mac") > -1;
  Other = !(Win || Mac);
  
  if(Netscape) {
    NetscapeVer = parseFloat(navigator.appVersion);
  }
  else if(MSIE) {
    n = navigator.userAgent;
    MSIEVer = n.substr(n.indexOf("MSIE ")+("MSIE ").length, 4);
    MSIEVer = parseFloat(MSIEVer); 
    
    if(Opera) {
      OperaVer = n.substr(n.indexOf("Opera ")+("Opera ").length, 4);
      OperaVer = parseFloat(OperaVer);
    }
  }
  
  if(Opera) {
    alert("Press Ctrl+T to bookmark this site!");
  }
  else if(Win && MSIE && MSIEVer >= 5) {
    window.external.AddFavorite(document.location.href, document.title);
  }
  else {
    alert("Press Ctrl+D to bookmark this site!");
    alert("And you should update your browser!!");
  }
}
function SetHP() {
	var url = 'http://'+document.location.hostname;
	document.body.style.behavior = "url('#default#homePage')";
	document.body.setHomePage(url);
}

/* AJAX */
function GetAJAXLoader(){
	var req=null;
   	if (typeof(window.XMLHttpRequest)!='undefined') {
       	try { req = new XMLHttpRequest(); } catch (e){ alert("Ошибка при получении AJAX загрузчика"); }
	} else 
	if (typeof(window.ActiveXObject)!='undefined') {
       	try { req = new ActiveXObject('Msxml2.XMLHTTP');} catch (e){
            try { req = new ActiveXObject('Microsoft.XMLHTTP'); } catch (e){ alert("Ошибка при получении AJAX загрузчика"); }
		}
	}
	else {
        alert("Браузер не поддерживает AJAX");
    }
	return req;
}

function GetServerData(url, post){
	var loader = GetAJAXLoader();
	if(loader==null) {alert('Невозможно создать объект'); return '';}
	loader.open('POST',url,false);
	loader.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	if(typeof(TurnWaitWindow)!='undefined')
		TurnWaitWindow(true, 'Подождите...', true);
	loader.send(post);
	if(typeof(TurnWaitWindow)!='undefined')
		TurnWaitWindow(false, '', true);
	return loader.responseText;
}
function GetServerDataGet(url){
	var loader = GetAJAXLoader();
	if(loader==null) {alert('Невозможно создать объект'); return '';}
	loader.open('GET',url,false);
	if(typeof(TurnWaitWindow)!='undefined')
		TurnWaitWindow(true, 'Подождите...', true);
	loader.send(null);
	if(typeof(TurnWaitWindow)!='undefined')
		TurnWaitWindow(false, '', true);
	return loader.responseText;
}
/* cookie */
function GetCookie(name){
	var prefix = name+"=";
	var start = document.cookie.indexOf(prefix);
	if (start == -1) return null;
	var end = document.cookie.indexOf(";", start+prefix.length);
	if (end == -1) end = document.cookie.length;
	var value = document.cookie.substring(start+prefix.length, end);
	return unescape(value);
}
function SetCookie(name, value, path, expires, domain, secure){
	if (!expires){
		expires= new Date();
		expires.setYear(expires.getYear()+1);
	}
	var newCookie = name+"="+escape(value) +((expires)?"; expires="+expires.toGMTString():"")+
	((path)?";path="+path:"")+((domain)?";domain="+domain:"")+((secure)?";secure":"");
	document.cookie = newCookie;
}
function DeleteCookie(name, path, domain){
	if (GetCookie(name))
		document.cookie = name+"="+";expires=Thu, 01-Jan-70 00:00:01 GMT"+((path)?";path="+path:"")+((domain)?";domain="+domain:"");
}


/* просмотр всех свойств объекта */
function GetObjProps(obj, ret, html){
	var str = '';
	var j=0;
	var delim =	html ? '<br />' : '';
	for(var i in obj){
		if(j>0){
			str += ', '+delim;
		}
		str += i+":"+(typeof(obj[i])=='object' ? ('{'+delim+GetObjProps(obj[i],true)+delim+'}') : obj[i]);
		j++;
	}
	str += delim;
	if(ret) return str;
	alert(str);
}

function DOMChildren(obj){
	if(typeof(obj)!='object' || typeof(obj.childNodes)=='undefined') return;
	while(obj.childNodes.length>0) obj.removeChild(obj.childNodes[0]);
}

Array.prototype.search = function(val){
	if(this.length==0) return -1;
	for(var i=0; i<this.length; i++)
		if(this[i]==val) return i;
	return -1;
}