function addBookmark(url, title)
{
if (!url) url = location.href;
if (!title) title = document.title;
//Gecko
if ((typeof window.sidebar == "object") && (typeof window.sidebar.addPanel == "function")) window.sidebar.addPanel (title, url, "");
//IE4+
else if (typeof window.external == "object") window.external.AddFavorite(url, title);
//Opera7+
else if (window.opera && document.createElement)
{
var a = document.createElement('A');
if (!a) return false; //IF Opera 6
a.setAttribute('rel','sidebar');
a.setAttribute('href',url);
a.setAttribute('title',title);
a.click();
}
else return false;
return true;
}





// ####################################################################################
        var NS4 = (document.layers) ? 1 : 0;
        var IE = (document.all) ? 1 : 0;
        var DOM = 0; 
        if (parseInt(navigator.appVersion) >=5) {DOM=1};
        var lastTarget;
        var lastHeader;
 
        function changeCont(tgt,header) {
            target=('T' +tgt);
            if (DOM) {
                var selected = document.getElementById(target)
                var viewer = document.getElementById("T1")
                var text = selected.innerHTML;
                viewer.visibility = "hide";
                viewer.innerHTML=text
                viewer.visibility = "show";
                return false;
            }
 
            else if (IE) {
                var text = document.all[target].innerHTML;
                document.all["T1"].style.visibility = "hidden";
                document.all["T1"].innerHTML=text
                document.all["T1"].style.visibility = "visible";
                return false;
            }
                
            else if (NS4) {
                var listing_area = document.layers["NTI"];   
                var X = document.layers["NT1"].pageX; 
                var Y = document.layers["NT1"].pageY; 
                if(lastTarget) { lastTarget.visibility = 'hide'; }
                document.layers[target].pageX = X;
                document.layers[target].pageY = Y;
                document.layers[target].visibility = 'show';
                lastTarget = document.layers[target];
            }
            // && (version >=4)
            else {
                window.location=('#A' +target);
                return true;
            }
        }

// ####################################################################################


	
function show(link, w, h) {
	xx = window.open("","link","menubar=no, toolbar=no, location=no, directories=no, status=no, scrollbars=no, resizable=no, width= " + w + ", height=" + h);
	out = "<html><head><title>Просмотр</title></head><body style='margin: 0 0 0 0;'><table cellpadding=0 cellspacing=0><tr><td><a href='javascript:window.close();'><img src='" + link + "' border=0 alt='закрыть'></a></td></tr></table></body></html>";
	xx.document.write(out);
	xx.focus();
	}
	
function html(link, w, h) {
	newWindow = window.open(link, "link", "top=30, left=30, menubar=no, toolbar=no, location=no, directories=no, status=no, scrollbars=no, resizable=no, width= " + w + ", height="+ h);
	newWindow.focus();
	}

	
	
function newW() {
	var newWindow = null  ;

	newWindow = window.open("","newW",'top=130, left=130, menubar=0, toolbar=1, location=1, directories=0, status=0, scrollbars=no, resizable=yes, width=400, height=200')
	document.form.target = "newW" ;
	
			
	if (!newWindow || newWindow.closed)
		newWindow = window.open("","newW","")
	else
		newWindow.focus()

	return;
	}

	
	
	
function check() {

	if ( document.form.name.value == "" && document.form.mail.value == "" && document.form.subject.value == "" && document.form.body.value == "") {
		alert("Ни одно поле не заполнено!\n");
		return false;
		}
		else { 
			newW(); 
			form.submit();
			}

}



function faq() {

	if ( document.faq.quest.value == "" && document.form.name.value == "") {
		alert("Ни одно поле не заполнено!\n");
		return false;
		}
		else { 
			newW(); 
			faq.submit();
			}

}


function showInnerWin() {

	var el = document.getElementById("loginwin");
	if(el) {
	el.style.display = 'block';
	}
	
	var el = document.getElementById("svetofor");
	if(el) {
		el.style.display = 'none';
		}
}

function closeInnerWin()
{
	var el = parent.document.getElementById("loginwin");
	el.style.display = 'none';

	var el = document.getElementById("svetofor");
	if(el)
	{
		el.style.display = 'block';
	}
}



function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
createCookie(name,"",-1);
}



function initKLayers(){
  isDOM=(document.getElementById)?true:false
  isOpera=(window.opera)?true:false
  isOpera5=isOpera && isDOM
  isOpera6=(isOpera5 && window.print)?true:false
  isMSIE=isIE=(document.all && document.all.item && !isOpera)
  isNC=navigator.appName=="Netscape"
  isNC4=isNC && !isDOM
  isNC6=isMozilla=isNC && isDOM

  if(!isDOM && !isNC && !isMSIE && !isOpera5){
    KLayers=false
    return false
  }

  pageLeft=0
  pageTop=0

  KL_imagePreloaderCount=0
  KL_imagePreloaderArray=new Array()

  KL_imageRef="document.images[\""
  KL_imagePostfix="\"]"
  KL_styleSwitch=".style"
  KL_layerPostfix="\"]"

  if(isNC4){
    KL_layerRef="document.layers[\""
    KL_styleSwitch=""
  }

  if(isMSIE){
    KL_layerRef="document.all[\""
  }

  if(isDOM){
    KL_layerRef="document.getElementById(\""
    KL_layerPostfix="\")"
  }

  KLayers=true
  return true
}

initKLayers()

// document and window functions:

function getWindowLeft(){
  if(isMSIE) return top.screenLeft
  if(isNC || isOpera) return top.screenX
}

function getWindowTop(){
  if(isMSIE) return top.screenTop
  if(isNC || isOpera) return top.screenY
}

function setWindowLeft(x){
  top.moveBy(x-getWindowLeft(),0)
}

function setWindowTop(y){
  top.moveBy(0,y-getWindowTop())
}

function getWindowWidth(w){
  if(!w) w=self
  if(isMSIE) return w.document.body.clientWidth
  if(isNC || isOpera) return w.innerWidth
}

function getWindowHeight(w){
  if(!w) w=self
  if(isMSIE) return w.document.body.clientHeight
  if(isNC || isOpera) return w.innerHeight
}

function setWindowWidth(x){
  if(isMSIE) top.resizeBy(x-getWindowWidth(),0); else
  if(isNC || isOpera) top.innerWidth=x
}

function setWindowHeight(y){
  if(isMSIE) top.resizeBy(0,y-getWindowHeight()); else
  if(isNC || isOpera) top.innerHeight=y
}

function getDocumentWidth(w){
  if(!w) w=self
  var d=w.document
  if(isMSIE) return d.body.scrollWidth
  if(isNC) return d.width
  if(isOpera) return d.body.style.pixelWidth
}

function getDocumentHeight(w){
  if(!w) w=self
  var d=w.document
  if(isMSIE) return d.body.scrollHeight
  if(isNC) return d.height
  if(isOpera) return d.body.style.pixelHeight
}

function getScrollX(w){
  if(!w) w=self
  if(isMSIE) return w.document.body.scrollLeft
  if(isNC || isOpera) return w.pageXOffset
}

function getScrollY(w){
  if(!w) w=self
  if(isMSIE) return w.document.body.scrollTop
  if(isNC || isOpera) return w.pageYOffset
}

function preloadImage(imageFile){
  KL_imagePreloaderArray[KL_imagePreloaderCount]=new Image()
  KL_imagePreloaderArray[KL_imagePreloaderCount++].src=imageFile
}

var KL_LAYER=0
var KL_IMAGE=1

function KL_findObject(what,where,type){
  var i,j,l,s
  var len=eval(where+".length")
  for(j=0;j<len;j++){
    s=where+"["+j+"].document.layers"
    if(type==KL_LAYER){
      l=s+"[\""+what+"\"]"
    }
    if(type==KL_IMAGE){
      i=where+"["+j+"].document.images"
      l=i+"[\""+what+"\"]"
    }
    if(eval(l)) return l
    l=KL_findObject(what,s,type)
    if(l!="null") return l
  }
  return "null"
}

function KL_getObjectPath(name,parent,type){
  var l=((parent && isNC4)?(parent+"."):(""))+((type==KL_LAYER)?KL_layerRef:KL_imageRef)+name+((type==KL_LAYER)?KL_layerPostfix:KL_imagePostfix)
  if(eval(l))return l
  if(!isNC4){
    return l
  }else{
    return KL_findObject(name,"document.layers",type)
  }
}

function layer(name){
  return new KLayer(name,null)
}

function layerFrom(name,parent){
  if(parent.indexOf("document.")<0) parent=layer(parent).path
  return new KLayer(name,parent)
}

function image(name){
  return new KImage(name,null)
}

function imageFrom(name,parent){
  if(parent.indexOf("document.")<0) parent=layer(parent).path
  return new KImage(name,parent)
}

// class "KLayer":

function KLayer(name,parent){
  this.path=KL_getObjectPath(name,parent,KL_LAYER)
  this.object=eval(this.path)
  if(!this.object)return
  this.style=this.css=eval(this.path+KL_styleSwitch)
}

KLP=KLayer.prototype

KLP.isExist=KLP.exists=function(){
  return (this.object)?true:false
}

function KL_getPageOffset(o){ 
  var KL_left=0
  var KL_top=0
  do{
    KL_left+=o.offsetLeft
    KL_top+=o.offsetTop
  }while(o=o.offsetParent)
  return [KL_left, KL_top]
}

KLP.getLeft=function(){
  var o=this.object
  if(isMSIE || isNC6 || isOpera5) return o.offsetLeft-pageLeft
  if(isNC4) return o.x-pageLeft
}

KLP.getTop=function(){
  var o=this.object
  if(isMSIE || isNC6 || isOpera5) return o.offsetTop-pageTop
  if(isNC4) return o.y-pageTop
}

KLP.getAbsoluteLeft=function(){
  var o=this.object
  if(isMSIE || isNC6 || isOpera5) return KL_getPageOffset(o)[0]-pageLeft
  if(isNC4) return o.pageX-pageLeft
}

KLP.getAbsoluteTop=function(){
  var o=this.object
  if(isMSIE || isNC6 || isOpera5) return KL_getPageOffset(o)[1]-pageTop
  if(isNC4) return o.pageY-pageTop
}

KLP.getWidth=function(){
  var o=this.object
  if(isOpera5) return this.css.pixelWidth
  if(isMSIE || isNC6) return o.offsetWidth
  if(isNC4) return o.document.width
}

KLP.getHeight=function(){
  var o=this.object
  if(isOpera5) return this.css.pixelHeight
  if(isMSIE || isNC6) return o.offsetHeight
  if(isNC4) return o.document.height
}

KLP.getZIndex=function(){
  return this.css.zIndex
}

KLP.setLeft=KLP.moveX=function(x){
  x+=pageLeft
  if(isOpera){
    this.css.pixelLeft=x
  }else if(isNC4){
  	this.object.x=x
  }else{
    this.css.left=x
  }
}

KLP.setTop=KLP.moveY=function(y){
  y+=pageTop
  if(isOpera){
    this.css.pixelTop=y
  }else if(isNC4){
  	this.object.y=y
  }else{
    this.css.top=y
  }
}

KLP.moveTo=KLP.move=function(x,y){
  this.setLeft(x)
  this.setTop(y)
}

KLP.moveBy=function(x,y){
  this.moveTo(this.getLeft()+x,this.getTop()+y)
}

KLP.setZIndex=KLP.moveZ=function(z){
  this.css.zIndex=z
}

KLP.setVisibility=function(v){
  this.css.visibility=(v)?(isNC4?"show":"visible"):(isNC4?"hide":"hidden")
}

KLP.show=function(){
  this.setVisibility(true)
}

KLP.hide=function(){
  this.setVisibility(false)
}

KLP.isVisible=KLP.getVisibility=function(){
  return (this.css.visibility.toLowerCase().charAt(0)=='h')?false:true
}

KLP.setBgColor=function(c){
  if(isOpera5){
    this.css.background=c
  }else
    if(isMSIE || isNC6){
      this.css.backgroundColor=c
    }else
      if(isNC4){
        this.css.bgColor=c
      }
}

KLP.setBgImage=function(url){
  if(isMSIE || isNC6 || isOpera6){
    this.css.backgroundImage="url("+url+")" // doesn't work at Opera 5. Works at Opera 6.
  }else
    if(isNC4){
      this.css.background.src=url
    }
}

KLP.setClip=KLP.clip=function(top,right,bottom,left){
  if(isMSIE || isNC6){
    this.css.clip="rect("+top+"px "+right+"px "+bottom+"px "+left+"px)"
  }else
  if(isNC4){
    var c=this.css.clip
    c.top=top
    c.right=right
    c.bottom=bottom
    c.left=left
  }
}

KLP.scrollTo=KLP.scroll=function(windowLeft,windowTop,windowWidth,windowHeight,scrollX,scrollY){
  if(scrollX>this.getWidth()-windowWidth) scrollX=this.getWidth()-windowWidth
  if(scrollY>this.getHeight()-windowHeight) scrollY=this.getHeight()-windowHeight
  if(scrollX<0)scrollX=0
  if(scrollY<0)scrollY=0
  var top=0
  var right=windowWidth
  var bottom=windowHeight
  var left=0
  left=left+scrollX
  right=right+scrollX
  top=top+scrollY
  bottom=bottom+scrollY
  this.move(windowLeft-scrollX,windowTop-scrollY)
  this.setClip(top,right,bottom,left)
}

KLP.scrollBy=KLP.scrollByOffset=function(windowLeft,windowTop,windowWidth,windowHeight,scrollX,scrollY){
  var X=-parseInt(this.css.left)+windowLeft+scrollX
  var Y=-parseInt(this.css.top)+windowTop+scrollY
  this.scroll(windowLeft,windowTop,windowWidth,windowHeight,X,Y)
}

KLP.scrollByPercentage=function(windowLeft,windowTop,windowWidth,windowHeight,scrollX,scrollY){
  var X=(this.getWidth()-windowWidth)*scrollX/100
  var Y=(this.getHeight()-windowHeight)*scrollY/100
  this.scroll(windowLeft,windowTop,windowWidth,windowHeight,X,Y)
}

KLP.write=function(str){
  if(isOpera5) return
  var o=this.object
  if(isMSIE || isNC6){
    o.innerHTML=str
  }else if(isNC4){
    var d=o.document
    d.open()
    d.write(str)
    d.close()
  }
}

KLP.add=function(str){
  if(isOpera5) return
  var o=this.object
  if(isMSIE || isNC6){
    o.innerHTML+=str
  }else if(isNC4){
    var d=o.document
    d.write(str)
  }
}

// class "KImage":

KIP=KImage.prototype

function KImage(name){
  this.path=KL_getObjectPath(name,false,KL_IMAGE)
  this.object=eval(this.path)
}

KIP.isExist=KIP.exists=function(){
  return (this.object)?true:false
}

KIP.getSrc=KIP.src=function(){
  return this.object.src
}

KIP.setSrc=KIP.load=function(url){
  this.object.src=url
}
	
