var xmlhttp=false;
try { xmlhttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { xmlhttp=false; } }
if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp=new XMLHttpRequest(); }

function show_statistics(url) {
xmlhttp.open("GET",url);
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById('show_stats').innerHTML=xmlhttp.responseText; }
}
xmlhttp.send(null);
overall_height=document.body.offsetHeight;
if (document.documentElement && !document.documentElement.scrollTop) { v_scroll=0; h_scroll=0; } else if (document.documentElement && document.documentElement.scrollTop) { v_scroll=document.documentElement.scrollTop; h_scroll=document.documentElement.scrollLeft; } else if (document.body && document.body.scrollTop) { v_scroll=document.body.scrollTop; h_scroll=document.body.scrollLeft; }
if (typeof(window.innerHeight)=='number') { visible_height=window.innerHeight; visible_width=window.innerWidth; } else if (document.documentElement && document.documentElement.clientHeight) { visible_height=document.documentElement.clientHeight; visible_width=document.documentElement.clientWidth; } else { visible_height=document.body.clientHeight; visible_width=document.body.clientWidth; }
document.getElementById('overlay').style.height=(overall_height>visible_height?overall_height:visible_height)+'px';
document.getElementById('overlay').style.display='';
document.getElementById('show_stats').style.display='';
document.getElementById('show_stats').style.top=Math.round(v_scroll+((visible_height-550)/2))+'px';
document.getElementById('show_stats').style.left=Math.round(h_scroll+((visible_width-350)/2))+'px';
}

function close_statistics() {
document.getElementById('overlay').style.display='none';
document.getElementById('show_stats').style.display='none';
}

function help_popup_on(image,text) {
imagepos=getAbsX(image);
if ((imagepos+350)>document.body.scrollWidth) { xpos=imagepos-325; } else { xpos=imagepos-50; }
image.src='/images/help_over.png';
document.getElementById('mini_popup').style.display='';
document.getElementById('mini_popup').style.top=(getAbsY(image)+20)+'px';
document.getElementById('mini_popup').style.left=xpos+'px';
document.getElementById('mini_popup').innerHTML=text;
}

function help_popup_off(image) {
image.src='/images/help_out.png';
document.getElementById('mini_popup').style.display='none';
}

function getAbsX(elt) { return (elt.x)?elt.x:getAbsPos(elt,"Left"); }
function getAbsY(elt) { return (elt.y)? elt.y:getAbsPos(elt,"Top"); }

function getAbsPos(elt,which) {
iPos=0;
while (elt!=null) { iPos+=elt["offset"+which]; elt=elt.offsetParent; }
return iPos;
}

function str_replace(search,replace,subject) {
var f=search,r=replace,s=subject;
var ra=is_array(r),sa=is_array(s),f=[].concat(f),r=[].concat(r),i=(s=[].concat(s)).length;
while (j=0,i--) {
while (s[i]=s[i].split(f[j]).join(ra?r[j] || "":r[0]), ++j in f){};
};
return sa?s:s[0];
}

function is_array( mixed_var ) {
return ( mixed_var instanceof Array );
}




function makearray(n) {
this.length=n;
for(var i=1;i<=n;i++) { this[i]=0; }
return this;
}

function hex(i) {
if (i<0) { return "00"; } else if (i>255) { return "ff"; } else { return ""+hexa[Math.floor(i/16)]+hexa[i%16]; }
}

function hexnumtodec(hexchar) {
if (parseInt(hexchar)==hexchar) { return Number(hexchar); }
hexchar=hexchar.toUpperCase()
switch (hexchar) {
case 'A': return 10; break;
case 'B': return 11; break;
case 'C': return 12; break;
case 'D': return 13; break;
case 'E': return 14; break;
case 'F': return 15; break;
}
}
function hextodec(daHex) {
var daDec=Number((16*hexnumtodec(daHex.substring(0,1)))+hexnumtodec(daHex.substring(1,2)));
return daDec
}

function setColor(r,g,b) {
var hr=hex(r); var hg=hex(g); var hb=hex(b);
var daColor="#"+hr+hg+hb
daEl.style.backgroundColor=daColor
if (daColor==colorend.toLowerCase()) {
daEl.innerHTML='';
daEl.style.display='none';
clearInterval(iId);
iId=null;
timerRunning=false;
}
}

function fade() {
i++
setColor(Math.floor(sr*((step-i)/step) + er*(i/step)),Math.floor(sg*((step-i)/step) + eg*(i/step)),Math.floor(sb*((step-i)/step) + eb*(i/step))); 
}

hexa=new makearray(16);
for(var i=0;i<10;i++){ hexa[i]=i; }
hexa[10]="a"; hexa[11]="b"; hexa[12]="c";
hexa[13]="d"; hexa[14]="e"; hexa[15]="f";

var daEl;
var timerRunning=false;

function myfade(el,cs,ce,iv,st) {
daEl=el;
colorstart=cs;
colorend=ce;
interval=iv;
step=st;
i=0;
if (timerRunning) { clearInterval(iId); iId=null; }
var myRe=/#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})/i;
if (colorstart.match(myRe)) { sr=hextodec(RegExp.$1); sg=hextodec(RegExp.$2); sb=hextodec(RegExp.$3); }
if (colorend.match(myRe)) { er=hextodec(RegExp.$1); eg=hextodec(RegExp.$2); eb=hextodec(RegExp.$3); }
timerRunning=false;
iId=setInterval("fade()",interval)
timerRunning=true;
}

function reorder_bgcolors(my_section,ignore) {
var bgcolor='#F3F3F3';
var all_divs=document.getElementById(my_section).getElementsByTagName("div");
for (var i=0;i<all_divs.length;i++) {
if (all_divs[i].style.display!='none' && all_divs[i]!=ignore) {
if (bgcolor=='#F3F3F3') { bgcolor=''; } else { bgcolor='#F3F3F3'; }
all_divs[i].style.background=bgcolor;
}
}
}