function L(a){return a};
function tryStartup(){if(startup){startup()}}function myEval(A){eval(A)}function myEval(A){return eval(A)}function $(a){if(document.getElementById){$=function(b){return document.getElementById(b)};return $(a)}if(document.all){$=function(b){return document.all[b]};return $(a)}}function setOpacity(b,a){b.style.opacity=a/10;b.style.filter="progid:DXImageTransform.Microsoft.alpha(opacity="+a*10+")"}function obj_left(b){var a=b.offsetLeft;while((b=b.offsetParent)!=null){a+=b.offsetLeft}return a}function obj_top(b){var a=b.offsetTop;while((b=b.offsetParent)!=null){a+=b.offsetTop}return a}function IsNumeric(a){var d="0123456789.-",c=true,b;if(typeof a=="undefined"){return false}if(a==""){return false}for(i=0;i<a.length&&c==true;i++){b=a.charAt(i);if(d.indexOf(b)==-1){c=false}}return c}function IsPosInt(a){var d="0123456789",c=true,b;if(typeof a=="undefined"){return false}if(a==""){return false}for(i=0;i<a.length&&c==true;i++){b=a.charAt(i);if(d.indexOf(b)==-1){c=false}}return c}function nl2pnl(b){var a;if(b){b=escape(b);if(b.indexOf("%0D%0A")>-1){a=/%0D%0A/g}else{if(b.indexOf("%0A")>-1){a=/%0A/g}else{if(b.indexOf("%0D")>-1){a=/%0D/g}}}return unescape(b.replace(a,"\n"))}return b}function nl2br(c){var b,a;if(c){c=escape(c);if(c.indexOf("%0D%0A")>-1){b=/%0D%0A/g}else{if(c.indexOf("%0A")>-1){b=/%0A/g}else{if(c.indexOf("%0D")>-1){b=/%0D/g}}}a=unescape(c.replace(b,"<br />"));a=a.replace(/&lt;br\ \/&gt;/g,"<br />");return a}return c}function stripnl(b){var a;if(b){b=escape(b);if(b.indexOf("%0D%0A")>-1){a=/%0D%0A/g}else{if(b.indexOf("%0A")>-1){a=/%0A/g}else{if(b.indexOf("%0D")>-1){a=/%0D/g}}}return unescape(b.replace(a,""))}return b}function htmlspecialchars(a){if(a){a=a.replace(/\"/g,"&quot;");a=a.replace(/</g,"&lt;");a=a.replace(/>/g,"&gt;")}return a}function uni_unescape(a){return a.replace(/(%u([0-9A-F]{4}))/gi,"&#x$2;")}function stringFill(c,d){var a="";for(var b=0;b<d;b++){a+=c}return a}function ajax(b,c,e,a){var d=grabAjaxObj();if(!d){alert("It appears your browser does not support XMLHTTP requests. Some functions may not work correctly.");d=function(){return false};return false}d.onreadystatechange=function(){if(d.readyState==4){if(d.status==200){e(d.responseText)}else{a(d)}}};d.open("POST",b,true);d.setRequestHeader("Content-type","application/x-www-form-urlencoded");d.setRequestHeader("Content-length",c.length);d.setRequestHeader("Connection","close");d.send(c)}function defaultErrorHandler(a){switch(a.status){case 404:alert(L("This action could not be completed, 404: Unable to find page."));break;case 403:alert(L("This action could not be completed, 403: Access Denied."));break;case 500:alert(L("This action could not be completed, 500: Internal Server Error."));break;default:alert(L("This action could not be completed, Unknown error (")+a.status+")");break}}function grabAjaxObj(){var b;if(window.XMLHttpRequest){grabAjaxObj=function(){return new XMLHttpRequest()};return grabAjaxObj()}try{b=new ActiveXObject("Microsoft.XMLHTTP");grabAjaxObj=function(){return new ActiveXObject("Microsoft.XMLHTTP")}}catch(a){b=new ActiveXObject("Msxml2.XMLHTTP");grabAjaxObj=function(){return new ActiveXObject("Msxml2.XMLHTTP")}}return b}function cleanData(a){var a=a.replace(/^\"/g,"");a=a.replace(/\\$/g,"");a=a.replace(/([^\\])\"/g,"$1");a=a.replace(/\\\"/g,'"');a=unescape(a);return a}function BindArgument(b,a){return function(){return b(a)}}function getPageSize(){var c,a,b,d;if(window.innerHeight&&window.scrollMaxY){c=document.body.scrollWidth;a=window.innerHeight+window.scrollMaxY}else{if(document.body.scrollHeight>document.body.offsetHeight){c=document.body.scrollWidth;a=document.body.scrollHeight}else{c=document.body.offsetWidth;a=document.body.offsetHeight}}if(self.innerHeight){b=self.innerWidth;d=self.innerHeight}else{if(document.documentElement&&document.documentElement.clientHeight){b=document.documentElement.clientWidth;d=document.documentElement.clientHeight}else{if(document.body){b=document.body.clientWidth;d=document.body.clientHeight}}}if(a<d){pageHeight=d}else{pageHeight=a}if(c<b){pageWidth=b}else{pageWidth=c}arrayPageSize=new Array(pageWidth,pageHeight,b,d);return arrayPageSize}function getCookie(a){if(document.cookie.length>0){c_start=document.cookie.indexOf(a+"=");if(c_start!=-1){c_start=c_start+a.length+1;c_end=document.cookie.indexOf(";",c_start);if(c_end==-1){c_end=document.cookie.length}return unescape(document.cookie.substring(c_start,c_end))}}return""}function setCookie(b,c,a){var d=new Date();d.setDate(d.getDate()+a);document.cookie=b+"="+escape(c)+((a==null)?"":";expires="+d.toGMTString())}function addListener(b,c,d,a){if(window.addEventListener){addListener=function(f,g,h,e){e=e||false;f.addEventListener(g,h,e);return true};return addListener(b,c,d,a)}else{if(window.attachEvent){addListener=function(f,g,h,e){f.attachEvent("on"+g,h);return true};return addListener(b,c,d,a)}else{addListener=function(f,g,h,e){return false};return addListener(b,c,d,a)}}}function ucFirst(a){var b=a.charAt(0);if(parseInt(a.length)==1){return b.toUpperCase()}else{return b.toUpperCase()+a.slice(1).toLowerCase()}}function trim(a){return a.replace(/(^\s+)([^\s]*)(\s+$)/,"$2")}function validEmail(a){var b=/^[A-Z0-9~!#$%^&*{}|\/=_'`?]?[A-Z0-9~!#$%^&*{}|\/=._'`\?+-]+[A-Z0-9~!#$%^&*{}|\/=_'`?-]?@([A-Z0-9._-]{0,}[A-Z_-]\.[A-Z]{2,3}|\[{0,1}[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\]{0,1})/i;return(null!=a.match(b))}function getNow(){return new Date().getTime()};
var execLogin=null,knownbaduser=new Array(),knownbadmail=new Array();function requestLogin(){var d=$("loginuser").value,b=$("loginpass").value,c="N",a="";if(d.length<1||d.length>100){a+=L("- Please enter a valid username.\n")}if(b.length<1||b.length>100){a+=L("- Please enter a valid password.\n")}if(d==b&&b!=""){a+=L("- This is not a valid password.\n")}if(a==""){setDisableLoginForm(true);formcontent="la=login&loginuser="+escape(d)+"&loginpass="+escape(b)+"&loginrem="+escape(c);ajax("ajax.php?a=l",formcontent,handleLoginResponds,defaultErrorHandler)}else{alert(a)}return false}function requstSignup(){var f=$("signupuser").value,e=$("signuppass1").value,d=$("signuppass2").value,a=$("signupmail").value,b="",c;if(f.length<1||f.length>100){b+=L("- Please enter a valid username.\n")}if(e.length<1||e.length>100){b+=L("- Please enter a valid password.\n")}if(e!=d&&e!=""){b+=L("- The passwords you entered did not match.\n")}if(f==e&&e!=""){b+=L("- This is not a valid password.\n")}for(c=0;c<knownbaduser.length;c++){if(knownbaduser[c]==f){b+=L("- This username is already in use.\n")}}if(a!=""){if(!validEmail(a)){b+=L("- This e-mail address is not valid.\n")}else{for(c=0;c<knownbadmail.length;c++){if(knownbadmail[c]==a){b+=L("- This e-mail address is already in use.\n")}}}}if(b==""){setDisableSignupForm(true);formcontent="la=signup&user="+escape(f)+"&pass="+escape(e)+"&mail="+escape(a);ajax("ajax.php?a=l",formcontent,handleSignupResponds,defaultErrorHandler)}else{alert(b)}}function handleSignupResponds(a){switch(a.substr(0,4)){case"suc:":curUser=myEval("("+a.substr(4)+")");$("usernamelabel").innerHTML=curUser.username;$("header_right_menu").style.display="";$("userava").className="noava";switch(curUser.avatar_type){case"0":$("userava").src="img/spacer.gif";break;case"1":$("userava").src="ava/"+curUser.avatar_arg+".jpg";break;case"2":$("userava").src=curUser.avatar_arg;break}previewBackground(curUser.background);closeSignupWindow();if(execLogin!=null){execLogin();execLogin=null}break;case"err:":alert(a.substr(4));break;case"dis:":alert(L("The server declined the request:\n")+a.substr(4));break;case"use:":switch(a.substr(4)){case"user":knownbaduser.push($("signupuser").value);alert(L("Your registration was not successful, username already in use."));break;case"mail":knownbadmail.push($("signupmail").value);alert(L("Your registration was not successful, e-mail address already in use."));break;case"both":knownbaduser.push($("signupuser").value);knownbadmail.push($("signupmail").value);alert(L("Your registration was not successful, username and e-mail address already in use."));break}break;default:alert(L("Your registration was not successful, the server was unable to handle your request. (")+a+")");break}setDisableSignupForm(false)}function handleLoginResponds(a){switch(a.substr(0,4)){case"suc:":curUser=myEval("("+a.substr(4)+")");$("usernamelabel").innerHTML=curUser.username;$("header_right_menu").style.display="";$("userava").className="noava";switch(curUser.avatar_type){case"0":$("userava").src="img/spacer.gif";break;case"1":$("userava").src="ava/"+curUser.avatar_arg+".jpg";break;case"2":$("userava").src=curUser.avatar_arg;break}previewBackground(curUser.background);closeLoginWindow();if(execLogin!=null){execLogin();execLogin=null}break;case"err:":alert(a.substr(4));break;default:alert(L("You have not been logged in, the server was unable to handle your request. (")+a+")");break}setDisableLoginForm(false)}function handleLogoutResponds(a){switch(a.substr(0,4)){case"err:":setCookie("ugsession","invalid");case"suc:":curUser={userID:"0"};$("usernamelabel").innerHTML=L("Guest (Click to login)");$("header_right_menu").style.display="none";$("userava").className="guestava";$("userava").src="img/spacer.gif";break}}function setDisableLoginForm(a){$("loginuser").disabled=a;$("loginpass").disabled=a;$("loginbutton").disabled=a;$("loginbutton").value=(a?L("Loading..."):L("Log-in"));$("loginbutton").className=(a?"loginbuttondis":"loginbutton");$("registerbutton").style.display=(a?"none":"");$("cancelbutton").style.display=(a?"none":"")}function setDisableSignupForm(a){$("signupuser").disabled=a;$("signuppass1").disabled=a;$("signuppass2").disabled=a;$("signupmail").disabled=a;$("signupbutton").disabled=a;$("signupbutton").value=(a?L("Loading..."):L("Save"));$("signupbutton").className=(a?"loginbuttondis":"loginbutton");$("signupcancelbutton").style.display=(a?"none":"")}function loginClick(){if(curUser.userID==0){return openLoginWindow()}}function menuClick(){if($("usermenu").style.display=="none"){$("usermenu").style.display=""}else{$("usermenu").style.display="none"}}function menuClose(){$("usermenu").style.display="none"}function doLogout(){ajax("ajax.php?a=l","la=logout",handleLogoutResponds,defaultErrorHandler);$("usermenu").style.display="none"}function searchMyTree(){top.location="bt.html#%26a"+curUser.username+"%7Cd1%7Ccall%7Cqt%3A0";$("usermenu").style.display="none"}function openLoginWindow(){blackBox();ajax("ajax.php?a=w","w=login",windowRespondsLogin,defaultErrorHandler)}function openSignupWindow(){blackBox();ajax("ajax.php?a=w","w=signup",windowRespondsSignup,defaultErrorHandler)}function openProfileWindow(){var b=getPageSize(),a=$("profilebox");blackBox();a.style.display="block";a.style.left=(b[2]/2)-(a.clientWidth/2)+"px";a.style.top=(b[3]/2)-(a.clientHeight/2)+"px"}function windowRespondsLogin(a){var b=document.createElement("div");b.innerHTML=a;document.body.appendChild(b);window.openLoginWindow=function(){blackBox();var d=$("loginbox");var c=getPageSize();d.style.display="block";d.style.left=(c[2]/2)-(d.clientWidth/2)+"px";d.style.top=(c[3]/2)-(d.clientHeight/2)+"px";setDisableLoginForm(false)};openLoginWindow()}function windowRespondsSignup(a){var b=document.createElement("div");b.innerHTML=a;document.body.appendChild(b);window.openSignupWindow=function(){blackBox();var d=$("signupbox");var c=getPageSize();d.style.display="block";d.style.left=(c[2]/2)-(d.clientWidth/2)+"px";d.style.top=(c[3]/2)-(d.clientHeight/2)+"px";setDisableSignupForm(false)};openSignupWindow()}function blackBox(){var b=getPageSize(),a=$("blackbox");a.style.display="block";a.style.height=b[1]+"px"}function closeLoginWindow(){$("loginbox").style.left="-100%";setDisableLoginForm(false);$("blackbox").style.display="none"}function closeProfileWindow(){$("profilebox").style.left="-100%";setDisableLoginForm(false);$("blackbox").style.display="none"}function signupButton(){$("loginbox").style.left="-100%";setDisableLoginForm(false);openSignupWindow()}function closeSignupWindow(){$("signupbox").style.left="-100%";setDisableSignupForm(false);$("blackbox").style.display="none"}function previewBackground(a){switch(a){case 0:document.body.style.backgroundImage="url(/img/arthas.png)";document.body.style.backgroundPosition="center 130px";break;case 1:document.body.style.backgroundImage="url(/img/illidan.png)";document.body.style.backgroundPosition="center 130px";break;case 2:document.body.style.backgroundImage="url(/img/illidan.png)";document.body.style.backgroundPosition="left 130px";break;case 3:document.body.style.backgroundImage="url(/img/illidan.png)";document.body.style.backgroundPosition="right 130px";break;case 4:document.body.style.backgroundImage="url(/img/kaelthasL.png)";document.body.style.backgroundPosition="left 130px";break;case 5:document.body.style.backgroundImage="url(/img/draeneiL.png)";document.body.style.backgroundPosition="left 130px";break;case 6:document.body.style.backgroundImage="url(/img/kaelthasR.png)";document.body.style.backgroundPosition="right 130px";break;case 7:document.body.style.backgroundImage="url(/img/draeneiR.png)";document.body.style.backgroundPosition="right 130px";break;case 8:document.body.style.backgroundImage="none";break}};
var activeClasses=new Array(10),knownData=new Array(),currentLimit=25,currentStart=0,lastQuery="",knownHash="";activeClasses.mage=true;activeClasses.deathknight=true;activeClasses.druid=true;activeClasses.hunter=true;activeClasses.pet=true;activeClasses.paladin=true;activeClasses.priest=true;activeClasses.rogue=true;activeClasses.shaman=true;activeClasses.warlock=true;activeClasses.warrior=true;window.onload=function(){$("searchform").style.visibility="visible";knownHash=location.hash;readHash();doSearch(true);setInterval(hashCheck,250)};function hashCheck(){var a=location.hash.substr((location.hash.indexOf("#")+1));if(a.substr(0,1)!="&"){a=unescape(a)}if(escape(a)!=knownHash){readHash();doSearch(true)}}function readHash(){var f=location.hash.substr((location.hash.indexOf("#")+1)),c,a,e,d,b;if(f.substr(0,1)!="&"){f=unescape(f)}f=f.substr(1);e=f.split(":");lastQuery=e[0];d=e[0].split("|");for(c=0;c<d.length;c++){switch(d[c].substring(0,1)){case"a":$("author").value=unescape(d[c].substring(1));showAdvanced();break;case"d":$("authortype").value=unescape(d[c].substring(1));showAdvanced();break;case"b":$("authorc").value=unescape(d[c].substring(1));showAdvanced();break;case"t":$("title").value=unescape(d[c].substring(1));showAdvanced();break;case"r":$("rating").value=unescape(d[c].substring(1));showAdvanced();break;case"q":if(unescape(d[c].substring(1))=="t"){$("recent_alltime").checked=true}else{$("recent_recent").checked=true}break;case"c":if(d[c].substring(1)=="all"){toggleOnClasses()}else{b=unescape(d[c].substring(1)).split(",");toggleOffClasses();for(a=0;a<b.length;a++){toggleClass(b[a])}}break;default:break}}currentStart=parseInt(e[1])}function doSearch(e){var c=$("author"),i=$("authortype"),d=$("authorc"),g=$("title"),b=$("rating"),l=($("recent_alltime").checked?"t":"r"),f="",k,j,a="",h=0;if(c.value!=""){f+="a"+escape(c.value)}if(i.value!="3"){if(f!=""){f+="|"}f+="d"+escape(i.value)}if(d.value!=""){if(f!=""){f+="|"}f+="b"+escape(d.value)}if(g.value!=""){if(f!=""){f+="|"}f+="t"+escape(g.value)}if(b.value!=""){if(!IsNumeric(b.value)){if(e){b.value=""}else{alert(L("You must enter a number between 1 and 100 when using the rating field"));return}}else{k=parseInt(b.value);if(k<1||k>100){if(e){b.value=""}else{alert(L("You must enter a number between 1 and 100 when using the rating field"));return}}else{if(f!=""){f+="|"}f+="r"+k}}}for(cname in activeClasses){if(activeClasses[cname]==true){h++;if(a!=""){a+=","}a+=cname}}if(a!=""){if(f!=""){f+="|"}if(h==activeClasses.length){f+="call"}else{f+="c"+a}}else{if(e){alert(L("You must select atleast 1 class"));return}else{f+="call"}}if(f!=""){f+="|"}f+="q"+l;$("pagecounter").innerHTML=L("Loading page...")+"<br />"+$("pagecounter2").innerHTML;if(f!=lastQuery){currentStart=0}lastQuery=f;j=escape("&"+f+":"+currentStart);knownHash=j;location.hash=j;orderby=$("orderbyselect").value;ajax("ajax.php?a=b","a=b&s="+currentStart+"&l="+currentLimit+"&t="+l+"&w="+f+"&o="+orderby,handleResponds,defaultErrorHandler)}function handleResponds(a){a=a.substr(4);fillTable(myEval(a))}function fillTable(u){var a=$("innnerrow"),q,f,o,l,v,d,h,k,b,g,c,j,n,r,m,e="",t;while(a.firstChild){a.removeChild(a.firstChild)}numFound=u[1];u=u[0];for(var q=0;q<u.length;q++){if(u[q]&&u[q].id){knownData[u[q].id]=u[q]}f=document.createElement("tr");o=document.createElement("td");l=document.createElement("td");v=document.createElement("td");d=document.createElement("td");h=document.createElement("td");k=document.createElement("td");b=document.createElement("a");g=document.createElement("a");b.appendChild(document.createTextNode(u[q].id));l.appendChild(document.createTextNode(L(ucFirst(u[q].classname))));if(u[q].title==""){c=document.createElement("em");c.appendChild(document.createTextNode("No title"));v.appendChild(c)}else{v.innerHTML=uni_unescape(htmlspecialchars(u[q].title))}if(curUser.userID!=0){if(parseInt(u[q].authorID)==parseInt(curUser.userID)){var s=document.createElement("strong");s.innerHTML=uni_unescape(htmlspecialchars(u[q].author));d.appendChild(s)}else{d.innerHTML=uni_unescape(htmlspecialchars(u[q].author))}}else{d.innerHTML=uni_unescape(htmlspecialchars(u[q].author))}if(parseInt(u[q].isHidden)==0){h.appendChild(document.createTextNode(u[q].views))}else{j=document.createElement("em");j.appendChild(document.createTextNode(L("Hidden")));h.appendChild(j)}if(parseInt(u[q].votes)==0){n=document.createElement("em");n.appendChild(document.createTextNode(L("Unrated")));k.appendChild(n)}else{if(parseInt(u[q].votes)==1){k.appendChild(document.createTextNode(u[q].rating+"/100 ("+L("1 vote")+")"))}else{if(parseInt(u[q].votes)>25){r=document.createElement("strong");if(parseInt(u[q].rating)>80){r.className="good"}if(parseInt(u[q].rating)<40){r.className="bad"}r.appendChild(document.createTextNode(u[q].rating+"/100 ("+u[q].votes+" "+L("votes")+")"));k.appendChild(r)}else{k.appendChild(document.createTextNode(u[q].rating+"/100 ("+u[q].votes+" "+L("votes")+")"))}}}b.href="t"+u[q].id+".html";f.className="searchrow";f.onclick=BindArgument(displayBuild,u[q].id);o.appendChild(b);f.appendChild(o);f.appendChild(l);f.appendChild(v);f.appendChild(d);f.appendChild(h);f.appendChild(k);a.appendChild(f)}m=currentStart+"-"+(currentStart+u.length)+L(" of a total ")+numFound+L(" found")+"<br />";t=Math.ceil(numFound/currentLimit);if(t>1){$("pagecounter2").style.display="block";if(currentStart>numFound){currentStart=0}var p=currentStart/currentLimit;if(p>0){e+='<a href="javascript:goStart('+(currentLimit*(p-1))+')">&laquo; '+L("Previous")+"</a> "}else{e+='<span class="dislink">&laquo; '+L("Previous")+"</span> "}if((p+1)<t){e+='<a href="javascript:goStart('+(currentLimit*(p+1))+')">'+L("Next")+" &raquo;</a> | "}else{e+='<span class="dislink">'+L("Next")+" &raquo;</span> | "}if(t>20){for(q=0;q<5;q++){e+=doPageLink(q,p)}if(p>7){e+="... "}for(q=Math.max(p-2,5);q<Math.min(p+3,t-5);q++){e+=doPageLink(q,p)}if(p<t-8){e+="... "}for(q=t-5;q<t;q++){e+=doPageLink(q,p)}}else{for(q=0;q<t;q++){e+=doPageLink(q,p)}}}else{$("pagecounter2").style.display="none"}$("pagecounter").innerHTML=m+e;$("pagecounter2").innerHTML=e}function doPageLink(a,b){if(a==b){return"<strong>"+(a+1)+"</strong> "}else{return'<a href="javascript:goStart('+(currentLimit*a)+')">'+(a+1)+"</a> "}}function displayBuild(a){top.location="t"+a+".html"}function toggleOffClasses(){for(cname in activeClasses){toggleOff(cname)}}function toggleOnClasses(){for(cname in activeClasses){toggleOn(cname)}}function invertSelection(){for(cname in activeClasses){toggleClass(cname)}}function toggleClass(b){var a=$("classSwitch"+b);if(a){activeClasses[b]=!activeClasses[b];if(activeClasses[b]){a.className="textSwitcherActive"}else{a.className="textSwitcherInactive"}}}function toggleOff(b){var a=$("classSwitch"+b);if(a){activeClasses[b]=false;a.className="textSwitcherInactive"}}function toggleOn(b){var a=$("classSwitch"+b);if(a){activeClasses[b]=true;a.className="textSwitcherActive"}}function goStart(a){currentStart=a;doSearch()}function displaySearch(){$("searchform").style.display="block";$("talentcontainer").style.display="none"}function hideAdvanced(){$("advancedBrowseOptions").style.display="none";$("showAdvancedBrowseOptions").style.display="block"}function showAdvanced(){$("advancedBrowseOptions").style.display="block";$("showAdvancedBrowseOptions").style.display="none"};
