var get_req;
var post_req;
var element;
var elements;

if (navigator.appName=="Netscape") {
	document.write("<style type='text/css'>body {overflow-y:scroll;}<\/style>");
}


function $() {
	var elements = new Array();
	for (var i = 0; i < arguments.length; i++) {
		var element = arguments[i];
		if (typeof element == 'string')
			element = document.getElementById(element);
		if (arguments.length == 1)
			return element;
		elements.push(element);
	}
	return elements;
}

function doNothing() { }

var get_req;
var post_req;
var element;

function get_inc(url, params){
	try {
		get_req = new XMLHttpRequest();
	} catch(e) {
		get_req = new ActiveXObject("Microsoft.XMLHTTP")
	};

	get_req.onreadystatechange = GRH;
	get_req.open("GET", url + params, true);
	get_req.send(null);
}

function post_inc(url, params, formid) {
	var parameters = serialize(formid);
	try {
		post_req = new XMLHttpRequest();
		post_req.overrideMimeType('text/html');
	} catch(e) {
		post_req = new ActiveXObject("Microsoft.XMLHTTP")
	}

	post_req.onreadystatechange = PRH;
	post_req.open('POST', url + params, true);
	post_req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	post_req.setRequestHeader("Content-length", parameters.length);
	post_req.setRequestHeader("Connection", "close");
	post_req.send(parameters);
}

function serialize(formid) {
	var query = '';
	var tail = '';

	for (i = 0; i < $(formid).elements.length; i++) {
		element = $(formid).elements[i];

		switch (element.type) {

			case 'text':
			case 'hidden':
			case 'password':
			case 'textarea':
			case 'select-one':
				query += element.name + '=' + encodeURIComponent(element.value) + '&'
			break;

			case 'select-multiple':
				var isSet = false;
				for(var j = 0; j < element.options.length; j++) {
					var current = element.options[j];
					if(current.selected) {
						query += element.name + '=' + encodeURIComponent(current.value) + '&';
					}
				}
			break;

			case 'radio':
				if (element.checked) {
					query += element.name + '=' + encodeURIComponent(element.value) + '&'
				}
			break;

			case 'checkbox':
				if (element.checked) {
					query += element.name + '=' + encodeURIComponent(element.value);
					query += '&';
					tail = element.name;
				}
			break;

		}
	}
	query = query.substr(0, query.length - 1);
	return query;
}

function getElementsByClassName(className, tag, elm){
	var testClass = new RegExp(".*" + className + ".*");
	var tag = tag || "*";
	var elm = elm || document;
	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
	var returnElements = [];
	var current;
	var length = elements.length;
	for(var i=0; i<length; i++){
		current = elements[i];
		if(testClass.test(current.className)){
			returnElements.push(current);
		}
	}
	return returnElements;
}

function Scale(image, sizewidth) {
	if (sizewidth == null){
		sizewidth = 500;
	}
	if (image.width > sizewidth) {
		image.height = Math.round(((sizewidth)/image.width)*image.height);
		image.width = sizewidth;
		image.title = "Preview";
		image.setAttribute("onclick", "Preview(this);");
	}
}

function Preview(image) {
	$('lightbox').innerHTML = "<a onclick=\"Return();\"><img src=\"" + image.src + "\" /></a>";
	$('curtain').style.display = "block";
	$('lightbox').style.display = "block";
}

function ThumbFull(image) {
	$('lightbox').innerHTML = "<a onclick=\"Return();\"><img src=\"" + image + "\" /></a>";
	$('curtain').style.display = "block";
	$('lightbox').style.display = "block";
}

function Return() {
	$('lightbox').style.display = "none";
	$('curtain').style.display = "none";
	$('lightbox').innerHTML = "";
}

function Bookmark() {
	var url = document.location.href;
	var end = (url.indexOf("?") == -1) ? url.length : url.indexOf("?");
	switch (url.substring(url.lastIndexOf("/")+1, end)) {
		case 'torrents.php': var sort = '0'; break;
		case 'requests.php': var sort = '1'; break;
		case 'forums.php': var sort = '2'; break;
		default: var sort = '3';
	}
	$('lightbox').innerHTML = '<table style="width:600px;margin: auto;"><tr><td class="colhead"><span style="float:left;">New Bookmark:</span><span style="float:right;">' + document.title + '</span></td><td></td></tr><tr><td valign="top"><form id="bookmark" method="post"><input type="hidden" name="title" value="' + document.title + '" /><input type="hidden" name="sort" value="' + sort + '" /><input type="hidden" name="uri" value="' + url + '" />' + url + '</td></tr><tr><td class="center" valign="top"><input type="button" value="Add Bookmark" onclick="Save_Bookmark()" /><input type="button" value="Cancel" onclick="Return()" /></form></td></tr></table>';
	$('curtain').style.display = "block";
	$('lightbox').style.display = "block";
}

function Save_Bookmark() {
	var parameters = serialize('bookmark');
    try {
        bookmark = new XMLHttpRequest();
        bookmark.overrideMimeType('text/html');
    } catch(e) {
        bookmark = new ActiveXObject("Microsoft.XMLHTTP")
    }

	bookmark.onreadystatechange = function() {
	    if (bookmark.readyState == 4 && bookmark.status == 200) {
			$('lightbox').style.display = "none";
			$('curtain').style.display = "none";
			$('lightbox').innerHTML = "";
		}
	};
	bookmark.open('POST', 'bookmarks.php?action=add', true);
    bookmark.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    bookmark.setRequestHeader("Content-length", parameters.length);
    bookmark.setRequestHeader("Connection", "close");
    bookmark.send(parameters);
}


/*
    function ajaxpage(url, containerid) {
		document.getElementById(containerid).innerHTML = ' Loading data... Please wait';
		jQuery("#"+containerid).load(""+url+"");
    }
*/
    function ajaxpage(url, containerid) {
                document.getElementById(containerid).innerHTML = ' Loading data... Please wait';
		jQuery.ajax({
			url: ""+url+"",
			success: function(html) {
				document.getElementById(containerid).innerHTML = ""+html+"";
			}
		});
    }



    function loadobjs() {
        if (!document.getElementById) {
            return;
        }
        for (i = 0; i < arguments.length; i++) {
            var file = arguments[i];
            var fileref = "";
            if (loadedobjects.indexOf(file) == -1) {
                if (file.indexOf(".js") != -1) {
                    fileref = document.createElement("script");
                    fileref.setAttribute("type", "text/javascript");
                    fileref.setAttribute("src", file);
                } else if (file.indexOf(".css") != -1) {
                    fileref = document.createElement("link");
                    fileref.setAttribute("rel", "stylesheet");
                    fileref.setAttribute("type", "text/css");
                    fileref.setAttribute("href", file);
                }
            }
            if (fileref != "") {
                document.getElementsByTagName("head").item(0).appendChild(fileref);
                loadedobjects += file + " ";
            }
        }
    }

function checkAll(clearelement) {
  boxes = document.getElementsByName(""+clearelement+"");
  for(var i=0; i<boxes.length; i++) {
    boxes[i].checked=true;
  }
}
function clearAll(clearelement) {
  boxes = document.getElementsByName(""+clearelement+"");
  for(var i=0; i<boxes.length; i++) {
    boxes[i].checked=false;
  }
}


/*-- Starting a global display swapper with uber options to handle all the different types NOT FINISHED --*/

function toggleDisplay(elem,opts) {
	if ($(opts['prefixParent'])) {
		if (!opts['prefixElemType']) { opts['prefixElemType']="*"; }
		elems=getElementsByClassName(elem,opts['prefixElemType'],$(opts['prefixParent']));
		elem=elems[0];

	} else { elems=""; }

	if ($(elem).className && $(elem).className.match(/(^| )hide$/)) {
		$(elem).className=$(elem).className.substr(0,$(elem).className.length-5);
		if (opts['hideText'] && $(opts['masterElem'])) { $(opts['masterElem']).innerHTML=opts['hideText']; }
	} else {
		$(elem).className=$(elem).className+' hide';
		if (opts['showText'] && $(opts['masterElem'])) { $(opts['masterElem']).innerHTML=opts['showText']; }
	}
	newClass=$(elem).className;

	for(s=0; s<elems.length; s++) { elems[s].className=newClass; }

	return false;
}

function toggleChecks(formElem,masterElem) {
	if (masterElem.checked) { checked=true; } else { checked=false; }
	for(s=0; s<$(formElem).elements.length; s++) {
		if ($(formElem).elements[s].type=="checkbox") {
			$(formElem).elements[s].checked=checked;
		}
	}
}

function BlandToggle(ElementID) {
	if (jQuery(ElementID).hasClass('hidden')) {
		jQuery(ElementID).removeClass('hidden');
	} else {
		jQuery(ElementID).addClass('hidden');
	}
        return false;
}

function ToggleView(ElementID, LinkID) {
	if ($(ElementID).style.display == 'none') {
		jQuery('#'+ElementID).slideDown('slow');
		$(LinkID).innerHTML = '[Hide]';
	} else {
		jQuery('#'+ElementID).slideUp('slow');
		$(LinkID).innerHTML = '[Show]';
	}
}


function AToggleView(ElementID, LinkID) {
	if ($(ElementID).style.display == 'none') {
		jQuery('#'+ElementID).slideDown('slow');
		var url = "ajax.php?action=save&option="+ElementID+"&setting=1";
        jQuery.get(url);
		$(LinkID).innerHTML = '[Hide]';
	} else {
		jQuery('#'+ElementID).slideUp('slow');
		var url = "ajax.php?action=save&option="+ElementID+"&setting=0";
        jQuery.get(url);
		$(LinkID).innerHTML = '[Show]';
	}
}

function ajax_form(baseurl, form, output) {
	var idx = form.selectedIndex;
	var val = form[idx].text;
	document.getElementById(output).innerHTML = ' Loading form... Please wait';
	jQuery("#"+output).load(baseurl+val+"");
}



if(typeof document.attachEvent!="undefined"){window.attachEvent("onload",init);document.attachEvent("onmousemove",moveMouse);document.attachEvent("onclick",checkMove)}else{window.addEventListener("load",init,false);document.addEventListener("mousemove",moveMouse,false);document.addEventListener("click",checkMove,false)}
var oDv=document.createElement("div"),dvHdr=document.createElement("div"),dvBdy=document.createElement("div"),windowlock,boxMove,fixposx,fixposy,lockX,lockY,fixx,fixy,ox,oy,boxLeft,boxRight,boxTop,boxBottom,evt,mouseX,mouseY,boxOpen,totalScrollTop,totalScrollLeft;boxOpen=false;oy=ox=10;lockY=lockX=0;function init(){oDv.appendChild(dvHdr);oDv.appendChild(dvBdy);oDv.style.position="absolute";oDv.style.zindex="9999";oDv.style.visibility="hidden";document.body.appendChild(oDv)}
function defHdrStyle(){dvHdr.innerHTML='<img  style="vertical-align:middle; align:center"  src="info.gif">&nbsp;&nbsp;'+dvHdr.innerHTML;dvHdr.style.fontWeight="bold";dvHdr.style.fontFamily="arial";dvHdr.style.border="1px solid #000";dvHdr.style.padding="3";dvHdr.style.fontSize="11";dvHdr.style.color="#4B7A98";dvHdr.style.background="#222";dvHdr.style.opacity="1.00";dvHdr.style.zindex="9999"}
function defBdyStyle(){dvBdy.style.borderBottom="1px solid #000";dvBdy.style.borderLeft="1px solid #000";dvBdy.style.borderRight="1px solid #000";dvBdy.style.fontFamily="arial";dvBdy.style.fontSize="11";dvBdy.style.padding="3";dvBdy.style.color="#1B4966";dvBdy.style.background="#222";dvBdy.style.opacity="1.00";dvBdy.style.zindex="9999"}
function checkElemBO(a){if(!a||typeof a!="string")return false;return a.indexOf("header")>-1&&a.indexOf("body")>-1&&a.indexOf("[")>-1&&a.indexOf("[")>-1?true:false}
function scanBO(a){if(checkElemBO(a.title)){a.boHDR=getParam("header",a.title);a.boBDY=getParam("body",a.title);a.boCSSBDY=getParam("cssbody",a.title);a.boCSSHDR=getParam("cssheader",a.title);a.IEbugfix=getParam("hideselects",a.title)=="on"?true:false;a.fixX=parseInt(getParam("fixedrelx",a.title));a.fixY=parseInt(getParam("fixedrely",a.title));a.absX=parseInt(getParam("fixedabsx",a.title));a.absY=parseInt(getParam("fixedabsy",a.title));a.offY=getParam("offsety",a.title)!=""?parseInt(getParam("offsety",
a.title)):10;a.offX=getParam("offsetx",a.title)!=""?parseInt(getParam("offsetx",a.title)):10;a.fade=getParam("fade",a.title)=="on"?true:false;a.fadespeed=getParam("fadespeed",a.title)!=""?getParam("fadespeed",a.title):0.04;a.delay=getParam("delay",a.title)!=""?parseInt(getParam("delay",a.title)):0;if(getParam("requireclick",a.title)=="on"){a.requireclick=true;document.all?a.attachEvent("onclick",showHideBox):a.addEventListener("click",showHideBox,false);document.all?a.attachEvent("onmouseover",hideBox):
a.addEventListener("mouseover",hideBox,false)}else{if(getParam("doubleclickstop",a.title)!="off")document.all?a.attachEvent("ondblclick",pauseBox):a.addEventListener("dblclick",pauseBox,false);if(getParam("singleclickstop",a.title)=="on")document.all?a.attachEvent("onclick",pauseBox):a.addEventListener("click",pauseBox,false)}a.windowLock=getParam("windowlock",a.title).toLowerCase()=="off"?false:true;a.title="";a.hasbox=1}else a.hasbox=2}
function getParam(a,b){return(a=(new RegExp("([^a-zA-Z]"+a+"|^"+a+")\\s*=\\s*\\[\\s*(((\\[\\[)|(\\]\\])|([^\\]\\[]))*)\\s*\\]")).exec(b))?a[2].replace("[[","[").replace("]]","]"):""}function Left(a){var b=0;if(a.calcLeft)return a.calcLeft;for(var c=a;a;){if(a.currentStyle&&!isNaN(parseInt(a.currentStyle.borderLeftWidth))&&b!=0)b+=parseInt(a.currentStyle.borderLeftWidth);b+=a.offsetLeft;a=a.offsetParent}return c.calcLeft=b}
function Top(a){var b=0;if(a.calcTop)return a.calcTop;for(var c=a;a;){if(a.currentStyle&&!isNaN(parseInt(a.currentStyle.borderTopWidth))&&b!=0)b+=parseInt(a.currentStyle.borderTopWidth);b+=a.offsetTop;a=a.offsetParent}return c.calcTop=b}var ah,ab;
function applyStyles(){ab&&oDv.removeChild(dvBdy);ah&&oDv.removeChild(dvHdr);dvHdr=document.createElement("div");dvBdy=document.createElement("div");CBE.boCSSBDY?(dvBdy.className=CBE.boCSSBDY):defBdyStyle();CBE.boCSSHDR?(dvHdr.className=CBE.boCSSHDR):defHdrStyle();dvHdr.innerHTML=CBE.boHDR;dvBdy.innerHTML=CBE.boBDY;ab=ah=false;if(CBE.boHDR!=""){oDv.appendChild(dvHdr);ah=true}if(CBE.boBDY!=""){oDv.appendChild(dvBdy);ab=true}}var CSE,iterElem,LSE,CBE,LBE,width,height,ini=false;
function SHW(){if(document.body&&document.body.clientWidth!=0){width=document.body.clientWidth;height=document.body.clientHeight}if(document.documentElement&&document.documentElement.clientWidth!=0&&document.body.clientWidth+20>=document.documentElement.clientWidth){width=document.documentElement.clientWidth;height=document.documentElement.clientHeight}return[width,height]}var ID=null;
function moveMouse(a){a?(evt=a):(evt=event);CSE=evt.target?evt.target:evt.srcElement;if(!CSE.hasbox)for(iElem=CSE;iElem.parentNode&&!iElem.hasbox;){scanBO(iElem);iElem=iElem.parentNode}if(CSE!=LSE&&!isChild(CSE,dvHdr)&&!isChild(CSE,dvBdy)){if(!CSE.boxItem){for(iterElem=CSE;iterElem.hasbox==2&&iterElem.parentNode;)iterElem=iterElem.parentNode;CSE.boxItem=iterElem}if((iterElem=CSE.boxItem)&&CSE.boxItem.hasbox==1){LBE=CBE;CBE=iterElem;if(CBE!=LBE){applyStyles();if(!CBE.requireclick)if(CBE.fade){ID!=
null&&clearTimeout(ID);ID=setTimeout("fadeIn("+CBE.fadespeed+")",CBE.delay)}else{ID!=null&&clearTimeout(ID);COL=1;ID=setTimeout("oDv.style.visibility='visible';ID=null;",CBE.delay)}CBE.IEbugfix&&hideSelects();fixposx=!isNaN(CBE.fixX)?Left(CBE)+CBE.fixX:CBE.absX;fixposy=!isNaN(CBE.fixY)?Top(CBE)+CBE.fixY:CBE.absY;lockY=lockX=0;boxMove=true;ox=CBE.offX?CBE.offX:10;oy=CBE.offY?CBE.offY:10}}else if(!isChild(CSE,dvHdr)&&!isChild(CSE,dvBdy)&&boxMove)if(!isChild(CBE,CSE)||CSE.tagName!="TABLE"){CBE=null;
ID!=null&&clearTimeout(ID);fadeOut();showSelects()}LSE=CSE}else if((isChild(CSE,dvHdr)||isChild(CSE,dvBdy))&&boxMove){totalScrollTop=totalScrollLeft=0;for(iterElem=CSE;iterElem;){isNaN(parseInt(iterElem.scrollTop))||(totalScrollTop+=parseInt(iterElem.scrollTop));isNaN(parseInt(iterElem.scrollLeft))||(totalScrollLeft+=parseInt(iterElem.scrollLeft));iterElem=iterElem.parentNode}if(CBE!=null){boxLeft=Left(CBE)-totalScrollLeft;boxRight=parseInt(Left(CBE)+CBE.offsetWidth)-totalScrollLeft;boxTop=Top(CBE)-
totalScrollTop;boxBottom=parseInt(Top(CBE)+CBE.offsetHeight)-totalScrollTop;doCheck()}}if(boxMove&&CBE){bodyScrollTop=document.documentElement&&document.documentElement.scrollTop?document.documentElement.scrollTop:document.body.scrollTop;bodyScrollLet=document.documentElement&&document.documentElement.scrollLeft?document.documentElement.scrollLeft:document.body.scrollLeft;mouseX=evt.pageX?evt.pageX-bodyScrollLet:evt.clientX-document.body.clientLeft;mouseY=evt.pageY?evt.pageY-bodyScrollTop:evt.clientY-
document.body.clientTop;if(CBE&&CBE.windowLock){mouseY<-oy?(lockY=-mouseY-oy):(lockY=0);mouseX<-ox?(lockX=-mouseX-ox):(lockX=0);mouseY>SHW()[1]-oDv.offsetHeight-oy?(lockY=-mouseY+SHW()[1]-oDv.offsetHeight-oy):(lockY=lockY);mouseX>SHW()[0]-dvBdy.offsetWidth-ox?(lockX=-mouseX-ox+SHW()[0]-dvBdy.offsetWidth):(lockX=lockX)}oDv.style.left=fixposx||fixposx==0?fixposx:bodyScrollLet+mouseX+ox+lockX+"px";oDv.style.zindex="10";oDv.style.top=fixposy||fixposy==0?fixposy:bodyScrollTop+mouseY+oy+lockY+"px"}}
function doCheck(){if(mouseX<boxLeft||mouseX>boxRight||mouseY<boxTop||mouseY>boxBottom){CBE.requireclick||fadeOut();CBE.IEbugfix&&showSelects();CBE=null}}function pauseBox(a){a?(evt=a):(evt=event);boxMove=false;evt.cancelBubble=true}function showHideBox(){oDv.style.visibility=oDv.style.visibility!="visible"?"visible":"hidden"}function hideBox(){oDv.style.visibility="hidden"}var COL=0,stopfade=false;function fadeIn(a){ID=null;COL=0;oDv.style.visibility="visible";fadeIn2(a)}
function fadeIn2(a){COL+=a;COL=COL>1?1:COL;oDv.style.filter="alpha(opacity="+parseInt(100*COL)+")";oDv.style.opacity=COL;COL<1&&setTimeout("fadeIn2("+a+")",20)}function fadeOut(){oDv.style.visibility="hidden"}function isChild(a,b){for(;a;){if(a==b)return true;a=a.parentNode}return false}var cSrc;function checkMove(a){a?(evt=a):(evt=event);cSrc=evt.target?evt.target:evt.srcElement;if(!boxMove&&!isChild(cSrc,oDv)){fadeOut();CBE&&CBE.IEbugfix&&showSelects();boxMove=true;CBE=null}}
function showSelects(){var a=document.getElementsByTagName("select");for(i=0;i<a.length;i++)a[i].style.visibility="visible"}function hideSelects(){var a=document.getElementsByTagName("select");for(i=0;i<a.length;i++)a[i].style.visibility="hidden"};
