isIE = false;
navVer = navigator.appVersion;
ver = parseFloat(navVer);
IEPos = navVer.indexOf('MSIE');
if (IEPos !=-1) {
  isIE = true;
  ver = parseFloat(navVer.substring(IEPos+5,navVer.indexOf(';',IEPos)));
}

isIE5up = (isIE && ver >= 5);

var trans = [];
for (var i = 0x410; i <= 0x44F; i++)
  trans[i] = i - 0x350; // А-Яа-я
trans[0x401] = 0xA8;    // Ё
trans[0x451] = 0xB8;    // ё


function setHomePage(url)
{
   if (window.sidebar)
   {
	prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components. interfaces.nsIPrefBranch);
	prefs.setCharPref('browser.startup.homepage',url);
   }
   else if (document.layers) 
   {
      netscape.security.PrivilegeManager.enablePrivilege("UniversalPreferencesWrite");
      navigator.preference('browser.startup.homepage',url);

   }
   else if (isIE5up) {
      this.style.behavior='url(#default#homepage)';
      this.setHomePage(url);
   }
}


function bookmark(title, url) {
	if (title == undefined)
		title = document.title;
	if (url == undefined)
		url = top.location.href;
	if (window.sidebar) {
		// Firefox
		window.sidebar.addPanel(title, url, '');
	} else if (window.opera && window.print) {
		// Opera
		var t = document.createElement('a');
		t.setAttribute('rel', 'sidebar');
		t.setAttribute('href', url);
		t.setAttribute('title', title);
		t.click();
	} else if(window.external ) {
		// IE
		window.external.AddFavorite(url, title);
	}
	else {
		alert('Что бы добавить страницу в избранное нажмите CTRL-D.');
	}
	return false;
}
 

function escape1251(str)
{
  var ret = [];
  // Составляем массив кодов символов, попутно переводим кириллицу
  for (var i = 0; i < str.length; i++)
  {
    var n = str.charCodeAt(i);
    if (typeof trans[n] != 'undefined')
      n = trans[n];
    if (n <= 0xFF)
      ret.push(n);
  }
  return escape(String.fromCharCode.apply(null, ret));
}


function showin(filename, params) {
	nw=window.open(filename+params,'Edit','height=600,width=800,location=no,scrollbars=yes,menubars=no,toolbars=no,resizable=yes,top=10');
}

function addText(elname, wrap1, wrap2) {
	if (document.selection) { // for IE
		var str = document.selection.createRange().text;
		document.forms['inputform'].elements[elname].focus();
		var sel = document.selection.createRange();
		sel.text = wrap1 + str + wrap2;
		return;
	} else if ((typeof document.forms['inputform'].elements[elname].selectionStart) != 'undefined') { // for Mozilla
		var txtarea = document.forms['inputform'].elements[elname];
		var selLength = txtarea.textLength;
		var selStart = txtarea.selectionStart;
		var selEnd = txtarea.selectionEnd;
		var oldScrollTop = txtarea.scrollTop;
		//if (selEnd == 1 || selEnd == 2)
		//selEnd = selLength;
		var s1 = (txtarea.value).substring(0,selStart);
		var s2 = (txtarea.value).substring(selStart, selEnd)
		var s3 = (txtarea.value).substring(selEnd, selLength);
		txtarea.value = s1 + wrap1 + s2 + wrap2 + s3;
		txtarea.selectionStart = s1.length;
		txtarea.selectionEnd = s1.length + s2.length + wrap1.length + wrap2.length;
		txtarea.scrollTop = oldScrollTop;
		txtarea.focus();
		return;
	} else {
		insertText(elname, wrap1 + wrap2);
	}
}

function insertText(elname, what) {
	if (document.forms['inputform'].elements[elname].createTextRange) {
		document.forms['inputform'].elements[elname].focus();
		document.selection.createRange().duplicate().text = what;
	} else if ((typeof document.forms['inputform'].elements[elname].selectionStart) != 'undefined') { // for Mozilla
		var tarea = document.forms['inputform'].elements[elname];
		var selEnd = tarea.selectionEnd;
		var txtLen = tarea.value.length;
		var txtbefore = tarea.value.substring(0,selEnd);
		var txtafter =  tarea.value.substring(selEnd, txtLen);
		var oldScrollTop = tarea.scrollTop;
		tarea.value = txtbefore + what + txtafter;
		tarea.selectionStart = txtbefore.length + what.length;
		tarea.selectionEnd = txtbefore.length + what.length;
		tarea.scrollTop = oldScrollTop;
		tarea.focus();
	} else {
		document.forms['inputform'].elements[elname].value += what;
		document.forms['inputform'].elements[elname].focus();
	}
}

function getScrollXY() {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
    scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
    scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
    scrOfX = document.documentElement.scrollLeft;
  }
  return [ scrOfX, scrOfY ];
}

            function Set_Cookie( name, value ){
                var todays_date = new Date();
                var expires_date = new Date(todays_date.getTime() + 24*60*60*1000);
                if ( Get_Cookie( name ) ) document.cookie = name + '=' +
                ';expires=Thu, 01-Jan-1970 00:00:01 GMT';
                document.cookie = name + '=' + escape( value ) + ';expires=' + expires_date.toGMTString();
            }

            function Get_Cookie( name ) {

                var start = document.cookie.indexOf( name + '=' );
                var len = start + name.length + 1;
                if ( ( !start ) && ( name != document.cookie.substring( 0, name.length ) ) ){
                    return null;
                }
                if ( start == -1 ) return null;
                var end = document.cookie.indexOf( ';', len );
                if ( end == -1 ) end = document.cookie.length;
                return unescape( document.cookie.substring( len, end ) );
            }

function setscroll()
{
 Set_Cookie(document.location.href,document.body.scrollLeft+" "+document.body.scrollTop);
}

function getscroll()
{
	st = Get_Cookie(document.location.href);
	if ((st==null) || (st.indexOf(' ')==-1))
	{
		st = 0;
		st1 = 0;
	}
	else
	{
		st1 = parseInt(st.substr(st.indexOf(' ')));
		if (st1==NaN)
			st1 = 0;
		st = parseInt(st.substr(1,st.indexOf(' ')-1));
		if (st==NaN)
			st = 0;
	}
	document.body.scrollLeft = st;
	document.body.scrollTop = st1;
}

function check_login_name(login)
{
	return login.match( /^[A-zА-я0-9\- _]*$/ );
}
