/*
url-loading object and a request queue built on top of it
*/
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Àÿêñ îáúåêò
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
var net=new Object();

net.READY_STATE_UNINITIALIZED=0;
net.READY_STATE_LOADING=1;
net.READY_STATE_LOADED=2;
net.READY_STATE_INTERACTIVE=3;
net.READY_STATE_COMPLETE=4;

net.ContentLoader=function(url,onload,onerror,method,params,contentType){
  this.req=null;
  this.onload=onload;
  this.onerror=(onerror) ? onerror : this.defaultError;
  this.loadXMLDoc(url,method,params,contentType);
}

net.ContentLoader.prototype.loadXMLDoc=function(url,method,params,contentType){
  if (!method){
    method="GET";
  }
  if (!contentType && method=="POST"){
    contentType='application/x-www-form-urlencoded';
  }
  if (window.XMLHttpRequest){
    this.req=new XMLHttpRequest();
  } else if (window.ActiveXObject){
    this.req=new ActiveXObject("Microsoft.XMLHTTP");
  }
  if (this.req){
    try{
      var loader=this;
      this.req.onreadystatechange=function(){
        if (net.ContentLoader.onReadyState.call)
         {
			net.ContentLoader.onReadyState.call(loader);
         }
      }
      this.req.open(method,url,true);
      if (contentType){
        this.req.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
        this.req.setRequestHeader('Content-Type', contentType);
      }
      this.req.send(params);
    }catch (err){
      this.onerror.call(this);
    }
  }
}



net.ContentLoader.onReadyState=function(){
  var req=this.req;
  var ready=req.readyState;
  if (ready==net.READY_STATE_COMPLETE){
    var httpStatus=req["status"];
    if (httpStatus==200 || httpStatus==0){
      this.onload.call(this);
    }else{
      this.onerror.call(this);
    }
  }
}

net.ContentLoader.prototype.defaultError=function(){
  alert("error fetching data!"
    +"\n\nreadyState:"+this.req.readyState
    +"\nstatus: "+this.req.status
    +"\nheaders: "+this.req.getAllResponseHeaders());
}


Function.prototype.bind = function(context) {
   var fn = this;
   return function() {
      return fn.apply(context, arguments);
   };
}





//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Ïàíåëü
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
panel=function(elemArr,div_panel,url,param,paramFunc,ResultFunc,ClearFunc)
{
	 this.timerr1=0;
	 this.timerr2=0;
	 this.url=url;
	 this.div_panel=div_panel;
	 this.ObjectArr=new Array();
	 this.ResultFunc=ResultFunc;
	 this.param=param;
	 this.paramFunc=paramFunc;
	 this.ClearFunc=ClearFunc;
     this.assignKeys(elemArr);
     this.loader=null;

}
panel.prototype.assignKeys=function(elemArr)
{
	 for(var i=0;i<elemArr.length;i++)
	 {
	     elemArr[i].panel=this;
	 	 elemArr[i].onmouseover=this.OnMouseOverCallBack;
		 elemArr[i].onmouseout=this.OnMouseOutCallBack;
	 }
     this.div_panel.panel=this;
	 this.div_panel.onmouseover=this.OnOverCall;
	 this.div_panel.onmouseout=this.OnMouseOutCallBack;
}
panel.prototype.OnMouseOverCallBack=function(event)
{
    var pan=this.panel;
	clearTimeout(pan.timerr2);
    var id=pan.paramFunc(this);
    var e=event || window.event;
    var El=false;
    if (!El)
    {
        pan.ClearFunc();
		pan.HidePanel();
		pan.SetCoord(e.clientX+document.body.scrollLeft,e.clientY+document.body.scrollTop);
      	pan.timerr1=setTimeout(function()
     	{			var d=new Transport(pan.url);
			d.panel=pan;
			d.handlers.onComplete=function(aa){
			    var g=aa.responseText;
			 	var result=eval("("+unescape(g)+")");
			    d.panel.ResultFunc(result);
			}
    		d.setParam(pan.param,id);
		    d.get();
   		}
     	,500);
      }
      else
      {
      	pan.ClearFunc();
		pan.HidePanel();
		pan.SetCoord(e.clientX+document.body.scrollLeft,e.clientY+document.body.scrollTop);
        pan.ResultFunc(El);
      }
}
panel.prototype.OnMouseOutCallBack=function()
{
     var pan=this.panel;
	 clearTimeout(pan.timerr1);
     pan.timerr2=setTimeout(function(){
     pan.ClearFunc();
	 pan.HidePanel();
	 },500);
}
panel.prototype.OnOverCall=function()
{
	 clearTimeout(this.panel.timerr2);
}
panel.prototype.ResponseData=function()
{
   var resp=this.loader.req.responseText;
   var vacInfo=eval("("+unescape(resp)+")");
   this.ResultFunc(vacInfo);
}
panel.prototype.ShowPanel=function()
{
	this.div_panel.style.display="block";
}
panel.prototype.SetCoord=function(x,y)
{
    var str=this.div_panel.style.width;
    var width=parseInt(str.slice(0,str.indexOf("px")));
    var clienWidth;
    if (window.outerWidth) clientWidth=window.outerWidth;
    else if(document.body.parentElement.clientWidth) clientWidth=document.body.ParentElement.clientWidth;
              else if (document.body && document.body.clientWidth) clientWidth= document.body.clientWidth;
                   else if (outerWidth) clientWidth=outerWidth;

	if(clientWidth-x<width)
	{
		x=x-width;
		this.div_panel.style.marginLeft="-10px";
	}
	else this.div_panel.style.marginLeft="10px";	this.div_panel.style.left=x;
    this.div_panel.style.top=y;
}
panel.prototype.HidePanel=function()
{
	this.div_panel.style.display="none";
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Ïàíåëü äëÿ âàêàíñèé
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function Vac_Panel()
{
    this.CreatePanel();
    this.ElemArr=this.GetElements();
	new panel(this.ElemArr,$("vac_panel"),"/oracle/pages/job/vacancy.php","vacid",this.Param,this.ShowResult,this.Clear);
}
Vac_Panel.prototype.GetElements=function()
{	var ElemArr=new Array();
   	var sss=document.getElementsByTagName("div");
	for(var i=0;i<sss.length;i++)
	{
	    var key=sss[i];
		if (key.className=="vac")
		{
			var DivEl=key;
		}
	}
	if (DivEl)
	{
		var A=DivEl.getElementsByTagName("a");
                var k=0;
		for(var i=0;i<A.length;i++)
		{
			var key=A[i];
			if (key.parentNode.tagName=="LI")
			{
				ElemArr[k]=key;
                                k++;
			}
		}
	}
	return ElemArr;}
Vac_Panel.prototype.Param=function(elem)
{   var hrefStr=elem.href;
   var id=hrefStr.slice(hrefStr.indexOf("#vac")+4,hrefStr.length);
   return id;}
Vac_Panel.prototype.Clear=function()
{
  $("vac_panel_title_holder").innerHTML="";
  $("vac_info").innerHTML="";}
Vac_Panel.prototype.ShowResult=function(vacInfo)
{
   this.ObjectArr[vacInfo.id]=vacInfo;
   if (vacInfo.h_educ=="0")this.ObjectArr[vacInfo.id].Title="÷ÁËÁÎÓÉÑ ÄÌÑ ÓÔÕÄÅÎÔÏ×";
   else this.ObjectArr[vacInfo.id].Title="÷ÁËÁÎÓÉÑ ÄÌÑ ×ÙÐÕÓËÎÉËÏ×";
   if (vacInfo.direction=="8") this.ObjectArr[vacInfo.id].src="/img/skins/10years/icons/vac_science.png";
   if (vacInfo.direction=="5") this.ObjectArr[vacInfo.id].src="/img/skins/10years/icons/vac_tech.png";
   if (vacInfo.direction=="6") this.ObjectArr[vacInfo.id].src="/img/skins/10years/icons/vac_econ.png";
   if (vacInfo.direction=="7") this.ObjectArr[vacInfo.id].src="/img/skins/10years/icons/vac_human1.png";
   $("vac_img").src=this.ObjectArr[vacInfo.id].src;
   $("vac_img").title=vacInfo.img_title+" ÎÁÐÒÁ×ÌÅÎÉÅ";
   $("vac_img").alt=vacInfo.img_title+" ÎÁÐÒÁ×ÌÅÎÉÅ";
   if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent))
   {
     $("vac_img").runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + $("vac_img").attributes['src'].nodeValue + "',sizingMethod='crop')";
     $("vac_img").attributes['src'].nodeValue="/img/skins/10years/blank.gif";
   }
   $("vac_panel_title_holder").innerHTML=this.ObjectArr[vacInfo.id].Title;
   $("vac_info").innerHTML=vacInfo.Info;
   this.ShowPanel();
}
Vac_Panel.prototype.CreatePanel=function()
{
    var Parent;
	var divEl=document.getElementsByTagName("div");
	for(var i=0;i<divEl.length;i++)
	{
	    var key=divEl[i];
		if (key.className=="vac")
		{
			Parent=key;
		}
	}
  	var Panel=document.createElement("div");Panel.id="vac_panel";
    var divWrap=document.createElement("div");divWrap.id="vac_panel_wrap";
    var divHold=document.createElement("div");	divHold.id="vac_panel_holder";
    var divTitle=document.createElement("div");divTitle.id="vac_panel_title_holder";
    var divAnnon=document.createElement("div");divAnnon.id="vac_info";
    var divIcon=document.createElement("div");divIcon.id="vac_icon";
    var img=document.createElement("img");
    img.id="vac_img"; img.width=32; img.height=32;
    Panel.className="season_bkg1";
	Panel.style.fontFamily="verdana";Panel.style.fontSize="10px";
	Panel.style.border="1px solid #A74011";	Panel.style.width="260";	Panel.style.display="none";
	Panel.style.left="0px";	Panel.style.top="0px";Panel.style.position="absolute";Panel.style.margin="0px 0px 0px 10px";
	Panel.style.padding="0px";
	divWrap.style.padding="5px";divWrap.style.textAlign="left";
	divHold.style.padding="0px";divHold.style.margin="0px";
	divTitle.className="season_clr1";
	divTitle.style.borderBottom="2px solid";
	divTitle.style.margin="0px 0px 3px 35px"; divTitle.style.padding="0px";
	divTitle.style.fontSize="1.1em";
	divAnnon.style.margin="0px 0px 0px 35px";divAnnon.style.padding="0px 0px 0px 0px";
	divAnnon.style.fontSize="0.9em";
	divIcon.style.position="absolute";	divIcon.style.left="5px";divIcon.style.top="5px";
	divIcon.style.margin="0px";divIcon.style.padding="0px";
	Panel.appendChild(divWrap);
	divWrap.appendChild(divHold);
	divHold.appendChild(divIcon);
	divHold.appendChild(divTitle);
	divHold.appendChild(divAnnon);
	divIcon.appendChild(img);
	Parent.appendChild(Panel);

}

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Ïàíåëü äëÿ íîâîñòåé
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////


function News_Panel()
{	this.CreatePanel();
    this.ElemArr=this.GetElements();
	new panel(this.ElemArr,$("news_panel"),"/oracle/pages/backend/news_server.php","news_id",this.Param,this.ShowResult,this.Clear);
}

News_Panel.prototype.GetElements=function()
{
	var ElemArr=new Array();
   	var tds=document.getElementsByTagName("div");
	for(var i=0;i<tds.length;i++)
	{
	    var key=tds[i];
		if (key.className=="news_abbrev")
		{
			var DivEl=key;
		}
	}
	if (DivEl)
	{
	  var A=DivEl.getElementsByTagName("a");
	  var k=0;
	  for(var i=0;i<A.length;i++)
	  {
	    var key=A[i];
	  	if (!key.className)
	  	{	  		 ElemArr[k]=A[i];
	  		 k++;
	  	}
	  }
	}
	return ElemArr;
}
News_Panel.prototype.Param=function(elem)
{
   return elem.attributes['news_id'].nodeValue;
}
News_Panel.prototype.Clear=function()
{
  $("news_panel_title_holder").innerHTML="";
  $("news_annotation").innerHTML="";
}
News_Panel.prototype.ShowResult=function(newsInfo)
{
   this.ObjectArr[newsInfo.id]=newsInfo;
   this.ObjectArr[newsInfo.id].Title="îÏ×ÏÅ ÎÁ ÓÅÒ×ÅÒÅ";
   $("news_panel_title_holder").innerHTML=this.ObjectArr[newsInfo.id].Title;
   $("news_annotation").innerHTML=newsInfo.annotation;
   this.ShowPanel();
}
News_Panel.prototype.CreatePanel=function()
{
	var tdLeft=document.getElementsByTagName("div");
	var Parent;
	for(var i=0;i<tdLeft.length;i++)
	{
	    var key=tdLeft[i];
		if (key.className=="vac")
		{
			Parent=key;
		}
	}
	if( $("news_panel")==null)
	{
	var Panel=document.createElement("div");  Panel.id="news_panel";
    var divWrap=document.createElement("div"); divWrap.id="news_panel_wrap";
    var divHold=document.createElement("div"); divHold.id="news_panel_holder";
    var divTitle=document.createElement("div");divTitle.id="news_panel_title_holder";
    var divAnnon=document.createElement("div");divAnnon.id="news_annotation";
	Panel.className="season_bkg1";	Panel.style.fontFamily="verdana";Panel.style.fontSize="10px";
	Panel.style.border="1px solid #A74011";	Panel.style.width="260";	Panel.style.display="none";
	Panel.style.left="0px";	Panel.style.top="0px";Panel.style.position="absolute";Panel.style.margin="0px 0px 0px 10px";
	Panel.style.padding="0px";
	divWrap.style.padding="5px";divWrap.style.textAlign="left";
	divHold.style.padding="0px";divHold.style.margin="0px";
	divTitle.className="season_clr1";
	divTitle.style.borderBottom="2px solid";
	divTitle.style.margin="0px 0px 3px 0px"; divTitle.style.padding="0px";
	divTitle.style.fontSize="1.1em";
	divAnnon.style.margin="0px";divAnnon.style.padding="0px";
	divAnnon.style.fontSize="0.9em";
	Panel.appendChild(divWrap);
	divWrap.appendChild(divHold);
	divHold.appendChild(divTitle);
	divHold.appendChild(divAnnon);
	Parent.appendChild(Panel);
     }
}

Konfer_Panel=function()
{
	this.CreatePanel();
    this.ElemArr=this.GetElements();
	new panel(this.ElemArr,$("konfer_panel"),"/oracle/pages/backend/news_server.php","news_id",this.Param,this.ShowResult,this.Clear);
}
Konfer_Panel.prototype.CreatePanel=function()
{
	var tdLeft=document.getElementsByTagName("div");
	var Parent;
	for(var i=0;i<tdLeft.length;i++)
	{
	    var key=tdLeft[i];
		if (key.className=="vac")
		{
			Parent=key;
		}
	}
	if( $("konfer_panel")==null)
	{
	var Panel=document.createElement("div");  Panel.id="konfer_panel";
    var divWrap=document.createElement("div"); divWrap.id="konfer_panel_wrap";
    var divHold=document.createElement("div"); divHold.id="konfer_panel_holder";
    var divTitle=document.createElement("div");divTitle.id="konfer_panel_title_holder";
    var divAnnon=document.createElement("div");divAnnon.id="konfer_annotation";
	Panel.className="season_bkg1";	Panel.style.fontFamily="verdana";Panel.style.fontSize="10px";
	Panel.style.border="1px solid #A74011";	Panel.style.width="260";	Panel.style.display="none";
	Panel.style.left="0px";	Panel.style.top="0px";Panel.style.position="absolute";Panel.style.margin="0px 0px 0px 10px";
	Panel.style.padding="0px";
	divWrap.style.padding="5px";divWrap.style.textAlign="left";
	divHold.style.padding="0px";divHold.style.margin="0px";
	divTitle.style.borderBottom="2px solid";
	divTitle.className="season_clr1";
	divTitle.style.margin="0px 0px 3px 0px"; divTitle.style.padding="0px";
	divTitle.style.fontSize="1.1em";
	divAnnon.style.margin="0px";divAnnon.style.padding="0px";
	divAnnon.style.fontSize="0.9em";
	Panel.appendChild(divWrap);
	divWrap.appendChild(divHold);
	divHold.appendChild(divTitle);
	divHold.appendChild(divAnnon);
	Parent.appendChild(Panel);
   }
}
Konfer_Panel.prototype.Param=News_Panel.prototype.Param;
Konfer_Panel.prototype.Clear=News_Panel.prototype.Clear;
Konfer_Panel.prototype.ShowResult=function(newsInfo)
{
   this.ObjectArr[newsInfo.id]=newsInfo;
   this.ObjectArr[newsInfo.id].Title="ðÒÉÇÌÁÛÁÅÍ ÐÒÉÎÑÔØ ÕÞÁÓÔÉÅ";
   $("konfer_panel_title_holder").innerHTML=this.ObjectArr[newsInfo.id].Title;
   $("konfer_annotation").innerHTML=newsInfo.annotation;
   this.ShowPanel();}
Konfer_Panel.prototype.GetElements=function()
{	var ElemArr=new Array();
	var DivEl;
   	var ul=document.getElementsByTagName("ul");
	for(var i=0;i<ul.length;i++)
	{
	    var key=ul[i];
		if (key.className=="event")
		{
			DivEl=key;
		}
	}
	if (DivEl)
	{
	  var A=DivEl.getElementsByTagName("a");
	  var k=0;
	  for(var i=0;i<A.length;i++)
	  {
	    var key=A[i];
	  	if (!key.className)
	  	{
	  		 ElemArr[k]=A[i];
	  		 k++;
	  	}
	  }
	}
	return ElemArr;}


