var browser=navigator.userAgent.toLowerCase();
var isFF=((browser.indexOf('mozilla')!=-1) && (browser.indexOf('spoofer')==-1) && (browser.indexOf('compatible')==-1) && (browser.indexOf('opera')==-1) && (browser.indexOf('webtv')==-1) && (browser.indexOf('hotjava')==-1));
var isIE=((browser.indexOf("msie")!=-1) && (browser.indexOf("opera")==-1));
var isOP=(browser.indexOf("opera")!=-1);
var req=new Array();
var windows=0;
screen.bufferDepth = -1;

function ajax(url, data, func){
  var conn=req.length
  var str='';
  if(window.XMLHttpRequest){
    req[conn]=new XMLHttpRequest();
  }else if(window.ActiveXObject){
    req[conn]=new ActiveXObject("Microsoft.XMLHTTP");
  }
  
  req[conn].onreadystatechange=function(){
    if(req[conn].readyState==4){
      if(req[conn].status==200){
      	if(req[conn].responseXML){
	        response=req[conn].responseXML.getElementsByTagName('response')[0];
	        if(response){
	          var childs=response.childNodes;
	          var dataResponse=new Array();
	          var tag='';
	          for(var i=0;i<childs.length;i++){
	            if(childs[i].tagName){
	              tag=childs[i].tagName
	              if(dataResponse[tag]){
	                if(typeof(dataResponse[tag])!='Object'){
	                  var temp=dataResponse[tag];
	                  dataResponse[tag]=new Array();
	                  dataResponse[tag][0]=temp;
	                }
	                dataResponse[tag][dataResponse[tag].length]=childs[i].firstChild.data;
	              }else{
	                dataResponse[tag]=childs[i].firstChild.data;
	              }
	            }
	          }
	        }else if(req[conn].responseXML.getElementsByTagName('error')[0]){
	          alert('error: '+req[conn].responseXML.getElementsByTagName('error')[0].firstChild.data);
	        }
	        if(func){
	        	eval(func(dataResponse));
	        }
      	}
      }
    }
  }
  
  req[conn].open("POST", url, true);
  req[conn].setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  req[conn].setRequestHeader('Accept-Language', 'en');
  req[conn].setRequestHeader('Accept-Charset', 'utf-8');
  req[conn].send('rand='+Math.random()+'&'+data);
}
function getContent(load, element, query, func){
  var conn=req.length
  var url='/html/xml/'+load+".php?rand="+Math.random()+"&"+query;
  if(window.XMLHttpRequest){
    req[conn]=new XMLHttpRequest();
    if(req[conn].overrideMimeType){req[conn].overrideMimeType('text/html');}
  }else if(window.ActiveXObject){
    req[conn]=new ActiveXObject("Microsoft.XMLHTTP");
  }
  req[conn].onreadystatechange=function(){
    if(req[conn].readyState==4){
      if(req[conn].status==200){
        document.getElementById(element).innerHTML=req[conn].responseText;
        document.getElementById(element).className='content';
        if(func){
          setTimeout(func, 0);
        }
      }
    }
  }
  req[conn].open("GET", url, true);
  req[conn].setRequestHeader('Accept-Language', 'en');
  req[conn].setRequestHeader('Accept-Charset', 'utf-8');
  req[conn].send(null);
}
function getWindow(file, title, query, w, h, x, y){
  windows++;
  loadBack();
  var window=document.createElement('div');
  if(!w){
    w=500;
  }
  if(!h){
    h=100;
  }
  if(!x){
    x=200;
  }
  if(!y){
    y=200;
  }
  window.innerHTML='<table class="window" id="window-'+windows+'" cellspacing="0" cellpadding="0"><tr><td class="shadow-lt"></td><td class="shadow-ltt"></td><td class="shadow-t"></td><td class="shadow-rtt"></td><td class="shadow-rt"></td></tr><tr><td class="shadow-llt"></td><td class="shadow-ilt"></td><td class="shadow-null"></td><td class="shadow-irt"></td><td class="shadow-rrt"></td></tr><tr><td class="shadow-l"></td><td class="shadow-null"></td><td class="text"><h3 class="title">'+title+'</h3><a class="exit" href="javascript:void(0);" onclick="closeWindow();">x</a><div class="load" id="windowcontent-'+windows+'">loading...</div></td><td class="shadow-null"></td><td class="shadow-r"></td></tr><tr><td class="shadow-l"></td><td class="shadow-bl"></td><td class="shadow-bottom" rowspan="2"></td><td class="shadow-br"></td><td class="shadow-r"></td></tr><tr><td class="shadow-llb"></td><td class="shadow-ilb"></td><td class="shadow-irb"></td><td class="shadow-rrb"></td></tr><tr><td class="shadow-lb"></td><td class="shadow-lbb"></td><td class="shadow-b"></td><td class="shadow-rbb"></td><td class="shadow-rb"></td></tr></table>';
  window.style.position='absolute';
  window.getElementsByTagName('table')[0].style.width=w+'px';
  window.getElementsByTagName('table')[0].style.height=h+'px';
  window.style.top=getPageSize('browser')[1]/2-h/2+'px';
  window.style.left=getPageSize('browser')[0]/2-w/2+'px';
  setTimeout(function(){document.body.appendChild(window);getContent(file, 'windowcontent-'+windows, query, function(){resizeWindow(windows, 1);});}, 0);
}
function closeWindow(){
  if(document.getElementById('window-'+windows)){
    document.body.removeChild(document.getElementById('window-'+windows).parentNode);  
    document.body.removeChild(document.getElementById('loadwindow-'+windows));
    windows--;
  }
}
function loadBack(){
  var load=document.createElement('div');
  load.className='loadwindow';
  load.id='loadwindow-'+windows;
  load.style.filter="alpha(opacity:0)";
  load.style.KHTMLOpacity="0.0";
  load.style.MozOpacity="0.0";
  load.style.opacity="0.0";
  
  var xP=0;
  var yP=0;

  load.style.width=getPageSize('body')[0]-xP+'px';
  load.style.height=getPageSize('body')[1]-yP+'px';
  document.body.appendChild(load);
  
  alpha(0, 25, 10, [load.id]);
}
function resizeWindow(window, back){
  for(var i=1;i<=windows;i++){
    if(id('window-'+i)){
      var repeat=0;
      if(!isIE){id('window-'+i).style.position='absolute';}else if(!id('window-'+i).offsetHeight){repeat=1;}
      id('window-'+i).parentNode.style.top=getPageSize('browser')[1]/2-parseInt(id('window-'+i).offsetHeight)/2+'px';
      id('window-'+i).parentNode.style.left=getPageSize('browser')[0]/2-parseInt(id('window-'+i).offsetWidth)/2+'px';
      if(repeat){
        id('window-'+i).parentNode.style.top=getPageSize('browser')[1]/2-parseInt(id('window-'+i).offsetHeight)/2+'px';
        id('window-'+i).parentNode.style.left=getPageSize('browser')[0]/2-parseInt(id('window-'+i).offsetWidth)/2+'px';
      }
      if(!isIE){id('window-'+i).style.position='fixed';}
      if(!back){
        id('loadwindow-'+i).style.width=getPageSize('body')[0]+'px';
        id('loadwindow-'+i).style.height=getPageSize('body')[1]+'px';
      }
    }
  }
  if(document.getElementById('igraph')){
    src=getiGraph();
    document.getElementById('igraph').src=src;
  }
}
onresize=resizeWindow;

function getParent(element, id){
  if(element.id==id){
    return element;
  }else{
    for(var parent=element.parentNode;parent;parent=parent.parentNode){
      if(parent.id==id){
        return parent;
      }
    }
  }
  return 0;
}
function alpha(start, end, point, elements, func){
  if(start<end){
    start=start+point;
    if(start<end){
      for(var x in elements){
        if(start){
          id(elements[x]).style.filter="alpha(opacity:"+start+")";
          id(elements[x]).style.KHTMLOpacity=start/100;
          id(elements[x]).style.MozOpacity=start/100;
          id(elements[x]).style.opacity=start/100;
        }
      }
      setTimeout(function(){alpha(start, end, point, elements, func);}, 10);
    }else{
      for(var x in elements){
        id(elements[x]).style.filter="alpha(opacity:"+end+")";
        id(elements[x]).style.KHTMLOpacity=end/100;
        id(elements[x]).style.MozOpacity=end/100;
        id(elements[x]).style.opacity=end/100;
      }
      if(func){eval(func);}
    }
  }else if(start>end){
    start=start-point;
    if(start>end){
      for(var x in elements){
        if(start && id(elements[x])){
          id(elements[x]).style.filter="alpha(opacity:"+start+")";
          id(elements[x]).style.KHTMLOpacity=start/100;
          id(elements[x]).style.MozOpacity=start/100;
          id(elements[x]).style.opacity=start/100;
        }
      }
      setTimeout(function(){alpha(start, end, point, elements, func);}, 10);
    }else{
      for(var x in elements){
        if(id(elements[x])){
          id(elements[x]).style.filter="alpha(opacity:"+end+")";
          id(elements[x]).style.KHTMLOpacity=end/100;
          id(elements[x]).style.MozOpacity=end/100;
          id(elements[x]).style.opacity=end/100;
        }
      }
      if(func){eval(func(end));}
    }
  }
}
function id(element){
  if(!document.getElementById(element)){return null;}
  return document.getElementById(element);
}
function addClass(element, cName){
  element.className=element.className+' '+cName;
}
function removeClass(element, cName){
  if(element.className){
    var arrClass=element.className.split(' ');
    element.className='';
    for(var i=0;i<arrClass.length;i++){
      if(arrClass[i]!=cName){
        addClass(element, arrClass[i]);
      }
    }
  }
}
function getLeftTop(element){
  var left=element.offsetLeft;
  var top=element.offsetTop;
  for(var parent=element.offsetParent;parent;parent=parent.offsetParent){
    left+=parent.offsetLeft;
    top+=parent.offsetTop;
  }
  return [left, top];
}
function getPageSize(type){
  var xScroll, yScroll;
  var windowWidth, windowHeight;
  if(!type){
    if(window.innerHeight && window.scrollMaxY){  
      xScroll=document.body.scrollWidth;
      yScroll=window.innerHeight + window.scrollMaxY;
    }else if(document.body.scrollHeight>document.body.offsetHeight){
      xScroll=document.body.scrollWidth;
      yScroll=document.body.scrollHeight;
    }else{
      xScroll=document.body.offsetWidth;
      yScroll=document.body.offsetHeight;
    }
    if(self.innerHeight){
      windowWidth=self.innerWidth;
      windowHeight=self.innerHeight;
    }else if(document.documentElement && document.documentElement.clientHeight){
      windowWidth=document.documentElement.clientWidth;
      windowHeight=document.documentElement.clientHeight;
    }else if(document.body){
      windowWidth=document.body.clientWidth;
      windowHeight=document.body.clientHeight;
    }  
    if(yScroll<windowHeight){
      pageHeight=windowHeight;
    }else{ 
      pageHeight=yScroll;
    }
    if(xScroll<windowWidth){  
      pageWidth=windowWidth;
    }else{
      pageWidth=xScroll;
    }
  }else if(type=='browser'){
    if(self.innerHeight){
      pageWidth=self.innerWidth;
      pageHeight=self.innerHeight;
    }else if(document.documentElement && document.documentElement.clientHeight){
      pageWidth=document.documentElement.clientWidth;
      pageHeight=document.documentElement.clientHeight;
    }else if(document.body){
      pageWidth=document.body.clientWidth;
      pageHeight=document.body.clientHeight;
    }
  }else if(type=='body'){
    pageWidth=getLeftTop(id('usermenu'))[0]+id('usermenu').offsetWidth;
    pageHeight=getLeftTop(id('footer'))[1]+id('footer').offsetHeight;
  }
  return [pageWidth, pageHeight]
}
function switchCategory(id, check){
	var checks=check.parentNode.getElementsByTagName('input');
	var get_id=0;
	var display='none';
	check.previousSibling.src='/img/plus.gif';
	if(check.checked){
		display='';
		check.previousSibling.src='/img/minus.gif';
	}
	for(var i=0;i<checks.length;i++){
		if(checks[i].getAttribute('for') && checks[i].getAttribute('for')==id){
			checks[i].style.display=display;
			checks[i].nextSibling.style.display=display;
			if(checks[i].nextSibling.nextSibling.nextSibling){
				checks[i].nextSibling.nextSibling.nextSibling.style.display=display;
			}
		}
	}
}
/*function hideCategory(){
	var index=document.getElementsByTagName('input');
	var display='none';
	for(var i=0;i<index.length;i++){
		if(index[i].type=='checkbox' && index[i].getAttribute('index') && !index[i].checked){
			var id=index[i].getAttribute('index');
			var img=document.createElement('img');
			img.src="/img/plus.gif";
			img.style.verticalAlign='middle';
			img.style.marginRight='5px';
			img.id='plus-'+id;
			index[i].parentNode.insertBefore(img, index[i]);
			var checks=index[i].parentNode.getElementsByTagName('input');
			for(var j=0;j<checks.length;j++){
				if(checks[j].getAttribute('for')==id){
					checks[j].style.display=display;
					checks[j].nextSibling.style.display=display;
					if(checks[j].nextSibling.nextSibling.nextSibling){
						checks[j].nextSibling.nextSibling.nextSibling.style.display=display;
					}
				}
			}
		}else if(index[i].type=='checkbox' && index[i].getAttribute('index') && index[i].checked){
			var id=index[i].getAttribute('index');
			var img=document.createElement('img');
			img.src="/img/minus.gif";
			img.style.verticalAlign='middle';
			img.style.marginRight='5px';
			img.id='plus-'+id;
			index[i].parentNode.insertBefore(img, index[i]);
		}
	}
}*/