var armory=new Array("eu","us","kr","tw");var currentsite=0;var wowuse_templates=wowuse_templates||{};var achievement_cache=new Array();var achievement_currentsplitter;var callwhichsite=1;wowuse_templates.ranks='{#foreach $T.rankings as rank}<tr id="cur{$T.rank$iteration}" onmouseover="swapCChilds(\'cur{$T.rank$iteration}\',\'#29333D\');" onmouseout="swapCChilds(\'cur{$T.rank$iteration}\',\'#181D21\');"><td>{($T.current*25-25)+$T.rank$iteration+1}</td><td><a href="http://{armory[$T.rank.armory]}.wowarmory.com/character-sheet.xml?r={$T.rank.server}&n={$T.rank.name}" target="_blank"><img src="/img/armory.gif" border="0"/></a>&nbsp;&nbsp;<a href="'+T_LANGADD+'/achievements/char/{armory[$T.rank.armory]}/{$T.rank.server}/{$T.rank.name}">{$T.rank.name}</a></td><td align="center"><div style="background-image: url(/img/achievements/factions.jpg);background-position: {-$T.rank.factionid*18}px 0px;height: 18px;width: 18px;"></div></td><td align="center"><div style="background-image: url(/img/achievements/races.jpg);background-position: {-($T.rank.raceid-1)*18}px {-($T.rank.genderid)*18}px;height: 18px;width: 18px;"></div></td><td align="center"><div style="background-image: url(/img/achievements/classes.jpg);background-position: {-($T.rank.classid-1)*18}px 0px;height: 18px;width: 18px;"></div></td><td><a href="'+T_LANGADD+'/achievements/top/guild/{armory[$T.rank.armory]}/{$T.rank.server}/{$T.rank.guild}">{$T.rank.guild}</a></td><td><a href="'+T_LANGADD+'/achievements/top/realm/{armory[$T.rank.armory]}/{$T.rank.server}">{$T.rank.server}</a></td><td><a href="'+T_LANGADD+'/achievements/top/region/{armory[$T.rank.armory]}">{armory[$T.rank.armory]}</a></td><td>{$T.rank.totaldone}</td><td>{$T.rank.totalpoints}</td><td>{$T.rank.lastachievement}</td><td>{$T.rank.lastscan}</td></tr>{#/for}';function ProccessSite(b,a){$("#error").html("");achievement_currentsplitter=$("#navup").html();$("#navup").html('<div align="center">'+T_PAGE_LOAD+"</div>");$("#navdown").html('<div align="center">'+T_PAGE_LOAD+"</div>");if(achievement_cache[b]){$("#ranking").processTemplate(achievement_cache[b]);currentsite=achievement_cache[b].current;window.location.hash=achievement_cache[b].current;window.scrollTo(0,0);MakeSplitter(achievement_cache[b].current,achievement_cache[b].ptotal)}else{$.get(a+"/"+b,"",function(c){if(c.status==1){$("#ranking").processTemplate(c);achievement_cache[c.current]=c;currentsite=c.current;window.location.hash=c.current;window.scrollTo(0,0);MakeSplitter(c.current,c.ptotal)}else{ShowError(c.error)}},"json")}}function ShowError(msg){$("#error").html(eval(msg));$("#navup").html(achievement_currentsplitter);$("#navdown").html(achievement_currentsplitter);window.scrollTo(0,0)}function HashChanged(){hashval=window.location.hash.substr(1);if(!isNaN(parseInt(hashval))&&hashval!=currentsite){ProccessSite((hashval),stdataurl)}}function MakeSplitter(a,b){split1="";split2="";split3="";split4="";split5="";split6="";split7="";split8="";split9="";split10="";split11="";split12="";split13="";split14="";splitaend="</a>";splitbaseurl='<a href="javascript:;" onclick="ProccessSite(%d,\''+stdataurl+"');\">";splithtml='<div class="grid-nav" style="text-align:right"><span style="float:left">'+T_JUMP_PAGE+': <input type="text" name="wpage" size="3" onkeyup="SetNewPage(this);" style="height:14px"/>&nbsp;&nbsp;<input type="button" class="inputbutton" value="Go" onclick="GotoPage();" /></span>  « %s'+T_FIRST_PAGE+"%s ‹ %s"+T_PREVIOUS_PAGE+"%s %d "+T_OF_PAGE+" %d %s"+T_NEXT_PAGE+"%s ›  %s"+T_LAST_PAGE+"%s »  </div>";if(a>1){split1=sprintf(splitbaseurl,1);split2=splitaend;split3=sprintf(splitbaseurl,(a-1));split4=splitaend}split5=a;split7=b;if(a<b){split8=sprintf(splitbaseurl,(a+1));split9=splitaend;split10=sprintf(splitbaseurl,b);split11=splitaend}splitformatted=sprintf(splithtml,split1,split2,split3,split4,split5,split7,split8,split9,split10,split11);$("#navup").html(splitformatted);$("#navdown").html(splitformatted)}function SetNewPage(a){callwhichsite=$(a).val()}function GotoPage(){window.location.hash=callwhichsite}function InitRanks(){hashval=window.location.hash.substr(1);if(!isNaN(parseInt(hashval))){ProccessSite((hashval),stdataurl)}else{ProccessSite("1",stdataurl)}}function sprintf(){if(sprintf.arguments.length<2){return}var b=sprintf.arguments[0];for(var a=1;a<sprintf.arguments.length;++a){switch(typeof(sprintf.arguments[a])){case"string":b=b.replace(/%s/,sprintf.arguments[a]);break;case"number":b=b.replace(/%d/,sprintf.arguments[a]);break;case"boolean":b=b.replace(/%b/,sprintf.arguments[a]?"true":"false");break;default:break}}return(b)}var diagoldheight;var contentoldheight;var heightisauto=false;function swapCChilds(b,a){$("#"+b).children("td").css("background-color",a)}function jumpMenu(targ,selObj,restore){eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'")}function jumpM(target){eval("parent.location='"+target+"'")}function scrollToBottomOfDiv(a){mydiv=document.getElementById(a);mydiv.scrollTop=mydiv.scrollHeight}function dragclose(){if(recording){recording=false}}function chkObject(a){if(document.getElementById(a)!=null){return true}else{return false}}function AddQueue(){$("#sbutton").attr("disabled",true);$("#submiterror").html();$("#submitsuccess").html();$.post(T_LANGADD+"/achievements/top/world",$("#queues").serialize(),function(a){if(a.error==1){$("#submiterror").html(a.errormsg);$("#sbutton").attr("disabled",false)}else{if(a.error==0){$("#toaddname").val("");$("#submitsuccess").html(a.success);$("#submiterror").html("");$("#sbutton").attr("disabled",false)}}},"json")}function UpdateGuild(){$("#updatebutton").attr("disabled",true);$("#uerror").html();$("#usuccess").html();$.post(T_LANGADD+"/achievements/top/world",$("#uguild").serialize(),function(a){if(a.error==1){$("#uerror").html(a.errormsg)}else{if(a.error==0){$("#usuccess").html(a.success)}}},"json")}function UpdateChar(){$("#updatebutton").attr("disabled",true);$("#uerror").html();$("#usuccess").html();$.post(T_LANGADD+"/achievements/char",$("#uchar").serialize(),function(a){if(a.error==1){$("#uerror").html(a.errormsg)}else{if(a.error==0){$("#usuccess").html(a.success)}}},"json")}function PostForm(d,c,a,b){$.post(d,$("#"+c).serialize(),function(g){if(a=="dialog"){if(chkObject("ensard")){$("#ensard").dialog("destroy");$("#ensard").remove()}dialogdata='<DIV id="ensard"><P>'+g+"</P></DIV>";$("body").append(dialogdata);$("#ensard").dialog({title:$("#diatitle").text(),bgiframe:true,dialogClass:"alert",width:"auto",minHeight:25,position:["center","center"]});$("#diatitle").remove();var e=$("#ensard").dialog();var f=$("#ensard").parents(".ui-dialog").find("a.ui-dialog-titlebar-close");$('<a class="ui-dialog-titlebar-min ui-corner-all"  role="button" unselectable="on" style="-moz-user-select: none;"><span id="minicon" class="ui-icon ui-icon-minusthick" unselectable="on" style="cursor: pointer;-moz-user-select: none;">close</span></a>').insertAfter(f).click(function(){var h=$("#ensard").dialog("option","height");if(h!=40){diagoldheight=h;contentoldheight=$("#ensard")[0].offsetHeight-11;if($("#ensard").dialog("option","height")=="auto"){heightisauto=true}$("#ensard").dialog("option","height",40);$("#ensard").css({height:"0px",visibility:"hidden"});$("#minicon").attr({"class":"ui-icon ui-icon-plusthick"});$("#ensard").dialog("option","resizable",false)}else{$("#ensard").css({height:contentoldheight+"px",visibility:"visible"});$("#ensard").dialog("option","height",diagoldheight);$("#minicon").attr({"class":"ui-icon ui-icon-minusthick"});$("#ensard").dialog("option","resizable",true);if(heightisauto){$("#ensard").css({height:"auto"});heightisauto=false}}})}else{if(a=="inject"){$("#"+b).html(g)}}},"html")}var JSON=JSON||{};(function(){function f(n){return n<10?"0"+n:n}if(typeof Date.prototype.toJSON!=="function"){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+"-"+f(this.getUTCMonth()+1)+"-"+f(this.getUTCDate())+"T"+f(this.getUTCHours())+":"+f(this.getUTCMinutes())+":"+f(this.getUTCSeconds())+"Z":null};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf()}}var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==="string"?c:"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+string+'"'}function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==="object"&&typeof value.toJSON==="function"){value=value.toJSON(key)}if(typeof rep==="function"){value=rep.call(holder,key,value)}switch(typeof value){case"string":return quote(value);case"number":return isFinite(value)?String(value):"null";case"boolean":case"null":return String(value);case"object":if(!value){return"null"}gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==="[object Array]"){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||"null"}v=partial.length===0?"[]":gap?"[\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"]":"["+partial.join(",")+"]";gap=mind;return v}if(rep&&typeof rep==="object"){length=rep.length;for(i=0;i<length;i+=1){k=rep[i];if(typeof k==="string"){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}v=partial.length===0?"{}":gap?"{\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"}":"{"+partial.join(",")+"}";gap=mind;return v}}if(typeof JSON.stringify!=="function"){JSON.stringify=function(value,replacer,space){var i;gap="";indent="";if(typeof space==="number"){for(i=0;i<space;i+=1){indent+=" "}}else{if(typeof space==="string"){indent=space}}rep=replacer;if(replacer&&typeof replacer!=="function"&&(typeof replacer!=="object"||typeof replacer.length!=="number")){throw new Error("JSON.stringify")}return str("",{"":value})}}if(typeof JSON.parse!=="function"){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==="object"){for(k in value){if(Object.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v}else{delete value[k]}}}}return reviver.call(holder,key,value)}cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})}if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,""))){j=eval("("+text+")");return typeof reviver==="function"?walk({"":j},""):j}throw new SyntaxError("JSON.parse")}}}());(function(a){a.fn.hoverIntent=function(k,j){var l={sensitivity:7,interval:100,timeout:0};l=a.extend(l,j?{over:k,out:j}:k);var n,m,h,d;var e=function(f){n=f.pageX;m=f.pageY};var c=function(g,f){f.hoverIntent_t=clearTimeout(f.hoverIntent_t);if((Math.abs(h-n)+Math.abs(d-m))<l.sensitivity){a(f).unbind("mousemove",e);f.hoverIntent_s=1;return l.over.apply(f,[g])}else{h=n;d=m;f.hoverIntent_t=setTimeout(function(){c(g,f)},l.interval)}};var i=function(g,f){f.hoverIntent_t=clearTimeout(f.hoverIntent_t);f.hoverIntent_s=0;return l.out.apply(f,[g])};var b=function(q){var o=(q.type=="mouseover"?q.fromElement:q.toElement)||q.relatedTarget;while(o&&o!=this){try{o=o.parentNode}catch(q){o=this}}if(o==this){return false}var g=jQuery.extend({},q);var f=this;if(f.hoverIntent_t){f.hoverIntent_t=clearTimeout(f.hoverIntent_t)}if(q.type=="mouseover"){h=g.pageX;d=g.pageY;a(f).bind("mousemove",e);if(f.hoverIntent_s!=1){f.hoverIntent_t=setTimeout(function(){c(g,f)},l.interval)}}else{a(f).unbind("mousemove",e);if(f.hoverIntent_s==1){f.hoverIntent_t=setTimeout(function(){i(g,f)},l.timeout)}}};return this.mouseover(b).mouseout(b)}})(jQuery);(function(b){b.fn.superfish=function(k){var g=b.fn.superfish,j=g.c,f=b(['<span class="',j.arrowClass,'"> &#187;</span>'].join("")),i=function(){var c=b(this),l=d(c);clearTimeout(l.sfTimer);c.showSuperfishUl().siblings().hideSuperfishUl()},e=function(){var c=b(this),m=d(c),l=g.op;clearTimeout(m.sfTimer);m.sfTimer=setTimeout(function(){l.retainPath=(b.inArray(c[0],l.$path)>-1);c.hideSuperfishUl();if(l.$path.length&&c.parents(["li.",l.hoverClass].join("")).length<1){i.call(l.$path)}},l.delay)},d=function(c){var l=c.parents(["ul.",j.menuClass,":first"].join(""))[0];g.op=g.o[l.serial];return l},h=function(c){c.addClass(j.anchorClass).append(f.clone())};return this.each(function(){var c=this.serial=g.o.length;var m=b.extend({},g.defaults,k);m.$path=b("li."+m.pathClass,this).slice(0,m.pathLevels).each(function(){b(this).addClass([m.hoverClass,j.bcClass].join(" ")).filter("li:has(ul)").removeClass(m.pathClass)});g.o[c]=g.op=m;b("li:has(ul)",this)[(b.fn.hoverIntent&&!m.disableHI)?"hoverIntent":"hover"](i,e).each(function(){if(m.autoArrows){h(b(">a:first-child",this))}}).not("."+j.bcClass).hideSuperfishUl();var l=b("a",this);l.each(function(n){var o=l.eq(n).parents("li");l.eq(n).focus(function(){i.call(o)}).blur(function(){e.call(o)})});m.onInit.call(this)}).each(function(){var c=[j.menuClass];if(g.op.dropShadows&&!(b.browser.msie&&b.browser.version<7)){c.push(j.shadowClass)}b(this).addClass(c.join(" "))})};var a=b.fn.superfish;a.o=[];a.op={};a.IE7fix=function(){var c=a.op;if(b.browser.msie&&b.browser.version>6&&c.dropShadows&&c.animation.opacity!=undefined){this.toggleClass(a.c.shadowClass+"-off")}};a.c={bcClass:"sf-breadcrumb",menuClass:"sf-js-enabled",anchorClass:"sf-with-ul",arrowClass:"sf-sub-indicator",shadowClass:"sf-shadow"};a.defaults={hoverClass:"sfHover",pathClass:"overideThisToUse",pathLevels:1,delay:800,animation:{opacity:"show"},speed:"normal",autoArrows:true,dropShadows:true,disableHI:false,onInit:function(){},onBeforeShow:function(){},onShow:function(){},onHide:function(){}};b.fn.extend({hideSuperfishUl:function(){var e=a.op,d=(e.retainPath===true)?e.$path:"";e.retainPath=false;var c=b(["li.",e.hoverClass].join(""),this).add(this).not(d).removeClass(e.hoverClass).find(">ul").hide().css("visibility","hidden");e.onHide.call(c);return this},showSuperfishUl:function(){var e=a.op,d=a.c.shadowClass+"-off",c=this.addClass(e.hoverClass).find(">ul:hidden").css("visibility","visible");a.IE7fix.call(c);e.onBeforeShow.call(c);c.animate(e.animation,e.speed,function(){a.IE7fix.call(c);e.onShow.call(c)});return this}})})(jQuery);$(document).ready(function(){$("ul.hm").superfish({delay:100,animation:{opacity:"show",height:"show"},speed:"fast",dropShadows:false})});if(window.jQuery&&!window.jQuery.createTemplate){(function(jQuery){var Template=function(s,includes,settings){this._tree=[];this._param={};this._includes=null;this._templates={};this._templates_code={};this.settings=jQuery.extend({disallow_functions:false,filter_data:true,filter_params:false,runnable_functions:false,clone_data:true,clone_params:true},settings);this.f_cloneData=(this.settings.f_cloneData!==undefined)?(this.settings.f_cloneData):(TemplateUtils.cloneData);this.f_escapeString=(this.settings.f_escapeString!==undefined)?(this.settings.f_escapeString):(TemplateUtils.escapeHTML);this.splitTemplates(s,includes);if(s){this.setTemplate(this._templates_code.MAIN,includes,this.settings)}this._templates_code=null};Template.prototype.version="0.7.8";Template.DEBUG_MODE=true;Template.prototype.splitTemplates=function(s,includes){var reg=/\{#template *(\w*?)( .*)*\}/g;var iter,tname,se;var lastIndex=null;var _template_settings=[];while((iter=reg.exec(s))!=null){lastIndex=reg.lastIndex;tname=iter[1];se=s.indexOf("{#/template "+tname+"}",lastIndex);if(se==-1){throw new Error('jTemplates: Template "'+tname+'" is not closed.')}this._templates_code[tname]=s.substring(lastIndex,se);_template_settings[tname]=TemplateUtils.optionToObject(iter[2])}if(lastIndex===null){this._templates_code.MAIN=s;return}for(var i in this._templates_code){if(i!="MAIN"){this._templates[i]=new Template()}}for(var i in this._templates_code){if(i!="MAIN"){this._templates[i].setTemplate(this._templates_code[i],jQuery.extend({},includes||{},this._templates||{}),jQuery.extend({},this.settings,_template_settings[i]));this._templates_code[i]=null}}};Template.prototype.setTemplate=function(s,includes,settings){if(s==undefined){this._tree.push(new TextNode("",1,this));return}s=s.replace(/[\n\r]/g,"");s=s.replace(/\{\*.*?\*\}/g,"");this._includes=jQuery.extend({},this._templates||{},includes||{});this.settings=new Object(settings);var node=this._tree;var op=s.match(/\{#.*?\}/g);var ss=0,se=0;var e;var literalMode=0;var elseif_level=0;for(var i=0,l=(op)?(op.length):(0);i<l;++i){var this_op=op[i];if(literalMode){se=s.indexOf("{#/literal}");if(se==-1){throw new Error("jTemplates: No end of literal.")}if(se>ss){node.push(new TextNode(s.substring(ss,se),1,this))}ss=se+11;literalMode=0;i=jQuery.inArray("{#/literal}",op);continue}se=s.indexOf(this_op,ss);if(se>ss){node.push(new TextNode(s.substring(ss,se),literalMode,this))}var ppp=this_op.match(/\{#([\w\/]+).*?\}/);var op_=RegExp.$1;switch(op_){case"elseif":++elseif_level;node.switchToElse();case"if":e=new opIF(this_op,node);node.push(e);node=e;break;case"else":node.switchToElse();break;case"/if":while(elseif_level){node=node.getParent();--elseif_level}case"/for":case"/foreach":node=node.getParent();break;case"foreach":e=new opFOREACH(this_op,node,this);node.push(e);node=e;break;case"for":e=opFORFactory(this_op,node,this);node.push(e);node=e;break;case"continue":case"break":node.push(new JTException(op_));break;case"include":node.push(new Include(this_op,this._includes));break;case"param":node.push(new UserParam(this_op));break;case"cycle":node.push(new Cycle(this_op));break;case"ldelim":node.push(new TextNode("{",1,this));break;case"rdelim":node.push(new TextNode("}",1,this));break;case"literal":literalMode=1;break;case"/literal":if(Template.DEBUG_MODE){throw new Error("jTemplates: Missing begin of literal.")}break;default:if(Template.DEBUG_MODE){throw new Error("jTemplates: unknown tag: "+op_+".")}}ss=se+this_op.length}if(s.length>ss){node.push(new TextNode(s.substr(ss),literalMode,this))}};Template.prototype.get=function(d,param,element,deep){++deep;var $T=d,_param1,_param2;if(this.settings.clone_data){$T=this.f_cloneData(d,{escapeData:(this.settings.filter_data&&deep==1),noFunc:this.settings.disallow_functions},this.f_escapeString)}if(!this.settings.clone_params){_param1=this._param;_param2=param}else{_param1=this.f_cloneData(this._param,{escapeData:(this.settings.filter_params),noFunc:false},this.f_escapeString);_param2=this.f_cloneData(param,{escapeData:(this.settings.filter_params&&deep==1),noFunc:false},this.f_escapeString)}var $P=jQuery.extend({},_param1,_param2);var $Q=(element!=undefined)?(element):({});$Q.version=this.version;var ret="";for(var i=0,l=this._tree.length;i<l;++i){ret+=this._tree[i].get($T,$P,$Q,deep)}--deep;return ret};Template.prototype.setParam=function(name,value){this._param[name]=value};TemplateUtils=function(){};TemplateUtils.escapeHTML=function(txt){return txt.replace(/&/g,"&amp;").replace(/>/g,"&gt;").replace(/</g,"&lt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")};TemplateUtils.cloneData=function(d,filter,f_escapeString){if(d==null){return d}switch(d.constructor){case Object:var o={};for(var i in d){o[i]=TemplateUtils.cloneData(d[i],filter,f_escapeString)}if(!filter.noFunc){if(d.hasOwnProperty("toString")){o.toString=d.toString}}return o;case Array:var o=[];for(var i=0,l=d.length;i<l;++i){o[i]=TemplateUtils.cloneData(d[i],filter,f_escapeString)}return o;case String:return(filter.escapeData)?(f_escapeString(d)):(d);case Function:if(filter.noFunc){if(Template.DEBUG_MODE){throw new Error("jTemplates: Functions are not allowed.")}else{return undefined}}default:return d}};TemplateUtils.optionToObject=function(optionText){if(optionText===null||optionText===undefined){return{}}var o=optionText.split(/[= ]/);if(o[0]===""){o.shift()}var obj={};for(var i=0,l=o.length;i<l;i+=2){obj[o[i]]=o[i+1]}return obj};var TextNode=function(val,literalMode,template){this._value=val;this._literalMode=literalMode;this._template=template};TextNode.prototype.get=function(d,param,element,deep){var __t=this._value;if(!this._literalMode){var __template=this._template;var $T=d;var $P=param;var $Q=element;__t=__t.replace(/\{(.*?)\}/g,function(__0,__1){try{var __tmp=eval(__1);if(typeof __tmp=="function"){if(__template.settings.disallow_functions||!__template.settings.runnable_functions){return""}else{__tmp=__tmp($T,$P,$Q)}}return(__tmp===undefined)?(""):(String(__tmp))}catch(e){if(Template.DEBUG_MODE){if(e instanceof JTException){e.type="subtemplate"}throw e}return""}})}return __t};var opIF=function(oper,par){this._parent=par;oper.match(/\{#(?:else)*if (.*?)\}/);this._cond=RegExp.$1;this._onTrue=[];this._onFalse=[];this._currentState=this._onTrue};opIF.prototype.push=function(e){this._currentState.push(e)};opIF.prototype.getParent=function(){return this._parent};opIF.prototype.switchToElse=function(){this._currentState=this._onFalse};opIF.prototype.get=function(d,param,element,deep){var $T=d;var $P=param;var $Q=element;var ret="";try{var tab=(eval(this._cond))?(this._onTrue):(this._onFalse);for(var i=0,l=tab.length;i<l;++i){ret+=tab[i].get(d,param,element,deep)}}catch(e){if(Template.DEBUG_MODE||(e instanceof JTException)){throw e}}return ret};opFORFactory=function(oper,par,template){if(oper.match(/\{#for (\w+?) *= *(\S+?) +to +(\S+?) *(?:step=(\S+?))*\}/)){oper="{#foreach opFORFactory.funcIterator as "+RegExp.$1+" begin="+(RegExp.$2||0)+" end="+(RegExp.$3||-1)+" step="+(RegExp.$4||1)+" extData=$T}";return new opFOREACH(oper,par,template)}else{throw new Error('jTemplates: Operator failed "find": '+oper)}};opFORFactory.funcIterator=function(i){return i};var opFOREACH=function(oper,par,template){this._parent=par;this._template=template;oper.match(/\{#foreach (.+?) as (\w+?)( .+)*\}/);this._arg=RegExp.$1;this._name=RegExp.$2;this._option=RegExp.$3||null;this._option=TemplateUtils.optionToObject(this._option);this._onTrue=[];this._onFalse=[];this._currentState=this._onTrue};opFOREACH.prototype.push=function(e){this._currentState.push(e)};opFOREACH.prototype.getParent=function(){return this._parent};opFOREACH.prototype.switchToElse=function(){this._currentState=this._onFalse};opFOREACH.prototype.get=function(d,param,element,deep){try{var $T=d;var $P=param;var $Q=element;var fcount=eval(this._arg);var key=[];var mode=typeof fcount;if(mode=="object"){var arr=[];jQuery.each(fcount,function(k,v){key.push(k);arr.push(v)});fcount=arr}var extData=(this._option.extData!==undefined)?(eval(this._option.extData)):(($T!=null)?($T):({}));var s=Number(eval(this._option.begin)||0),e;var step=Number(eval(this._option.step)||1);if(mode!="function"){e=fcount.length}else{if(this._option.end===undefined||this._option.end===null){e=Number.MAX_VALUE}else{e=Number(eval(this._option.end))+((step>0)?(1):(-1))}}var ret="";var i,l;if(this._option.count){var tmp=s+Number(eval(this._option.count));e=(tmp>e)?(e):(tmp)}if((e>s&&step>0)||(e<s&&step<0)){var iteration=0;var _total=(mode!="function")?(Math.ceil((e-s)/step)):undefined;var ckey,cval;for(;((step>0)?(s<e):(s>e));s+=step,++iteration){ckey=key[s];if(mode!="function"){cval=fcount[s]}else{cval=fcount(s);if(cval===undefined||cval===null){break}}if((typeof cval=="function")&&(this._template.settings.disallow_functions||!this._template.settings.runnable_functions)){continue}if((mode=="object")&&(ckey in Object)){continue}var prevValue=extData[this._name];extData[this._name]=cval;extData[this._name+"$index"]=s;extData[this._name+"$iteration"]=iteration;extData[this._name+"$first"]=(iteration==0);extData[this._name+"$last"]=(s+step>=e);extData[this._name+"$total"]=_total;extData[this._name+"$key"]=(ckey!==undefined&&ckey.constructor==String)?(this._template.f_escapeString(ckey)):(ckey);extData[this._name+"$typeof"]=typeof cval;for(i=0,l=this._onTrue.length;i<l;++i){try{ret+=this._onTrue[i].get(extData,param,element,deep)}catch(ex){if(ex instanceof JTException){switch(ex.type){case"continue":i=l;break;case"break":i=l;s=e;break;default:throw e}}else{throw e}}}delete extData[this._name+"$index"];delete extData[this._name+"$iteration"];delete extData[this._name+"$first"];delete extData[this._name+"$last"];delete extData[this._name+"$total"];delete extData[this._name+"$key"];delete extData[this._name+"$typeof"];delete extData[this._name];extData[this._name]=prevValue}}else{for(i=0,l=this._onFalse.length;i<l;++i){ret+=this._onFalse[i].get($T,param,element,deep)}}return ret}catch(e){if(Template.DEBUG_MODE||(e instanceof JTException)){throw e}return""}};var JTException=function(type){this.type=type};JTException.prototype=Error;JTException.prototype.get=function(d){throw this};var Include=function(oper,includes){oper.match(/\{#include (.*?)(?: root=(.*?))?\}/);this._template=includes[RegExp.$1];if(this._template==undefined){if(Template.DEBUG_MODE){throw new Error("jTemplates: Cannot find include: "+RegExp.$1)}}this._root=RegExp.$2};Include.prototype.get=function(d,param,element,deep){var $T=d;var $P=param;try{return this._template.get(eval(this._root),param,element,deep)}catch(e){if(Template.DEBUG_MODE||(e instanceof JTException)){throw e}}return""};var UserParam=function(oper){oper.match(/\{#param name=(\w*?) value=(.*?)\}/);this._name=RegExp.$1;this._value=RegExp.$2};UserParam.prototype.get=function(d,param,element,deep){var $T=d;var $P=param;var $Q=element;try{param[this._name]=eval(this._value)}catch(e){if(Template.DEBUG_MODE||(e instanceof JTException)){throw e}param[this._name]=undefined}return""};var Cycle=function(oper){oper.match(/\{#cycle values=(.*?)\}/);this._values=eval(RegExp.$1);this._length=this._values.length;if(this._length<=0){throw new Error("jTemplates: cycle has no elements")}this._index=0;this._lastSessionID=-1};Cycle.prototype.get=function(d,param,element,deep){var sid=jQuery.data(element,"jTemplateSID");if(sid!=this._lastSessionID){this._lastSessionID=sid;this._index=0}var i=this._index++%this._length;return this._values[i]};jQuery.fn.setTemplate=function(s,includes,settings){if(s.constructor===Template){return jQuery(this).each(function(){jQuery.data(this,"jTemplate",s);jQuery.data(this,"jTemplateSID",0)})}else{return jQuery(this).each(function(){jQuery.data(this,"jTemplate",new Template(s,includes,settings));jQuery.data(this,"jTemplateSID",0)})}};jQuery.fn.setTemplateURL=function(url_,includes,settings){var s=jQuery.ajax({url:url_,async:false}).responseText;return jQuery(this).setTemplate(s,includes,settings)};jQuery.fn.setTemplateElement=function(elementName,includes,settings){var s=jQuery("#"+elementName).val();if(s==null){s=jQuery("#"+elementName).html();s=s.replace(/&lt;/g,"<").replace(/&gt;/g,">")}s=jQuery.trim(s);s=s.replace(/^<\!\[CDATA\[([\s\S]*)\]\]>$/im,"$1");s=s.replace(/^<\!--([\s\S]*)-->$/im,"$1");return jQuery(this).setTemplate(s,includes,settings)};jQuery.fn.hasTemplate=function(){var count=0;jQuery(this).each(function(){if(jQuery.getTemplate(this)){++count}});return count};jQuery.fn.removeTemplate=function(){jQuery(this).processTemplateStop();return jQuery(this).each(function(){jQuery.removeData(this,"jTemplate")})};jQuery.fn.setParam=function(name,value){return jQuery(this).each(function(){var t=jQuery.getTemplate(this);if(t===undefined){if(Template.DEBUG_MODE){throw new Error("jTemplates: Template is not defined.")}else{return}}t.setParam(name,value)})};jQuery.fn.processTemplate=function(d,param){return jQuery(this).each(function(){var t=jQuery.getTemplate(this);if(t===undefined){if(Template.DEBUG_MODE){throw new Error("jTemplates: Template is not defined.")}else{return}}jQuery.data(this,"jTemplateSID",jQuery.data(this,"jTemplateSID")+1);jQuery(this).html(t.get(d,param,this,0))})};jQuery.fn.processTemplateURL=function(url_,param,options){var that=this;options=jQuery.extend({type:"GET",async:true,cache:false},options);jQuery.ajax({url:url_,type:options.type,data:options.data,dataFilter:options.dataFilter,async:options.async,cache:options.cache,timeout:options.timeout,dataType:"json",success:function(d){var r=jQuery(that).processTemplate(d,param);if(options.on_success){options.on_success(r)}},error:options.on_error,complete:options.on_complete});return this};var Updater=function(url,param,interval,args,objs,options){this._url=url;this._param=param;this._interval=interval;this._args=args;this.objs=objs;this.timer=null;this._options=options||{};var that=this;jQuery(objs).each(function(){jQuery.data(this,"jTemplateUpdater",that)});this.run()};Updater.prototype.run=function(){this.detectDeletedNodes();if(this.objs.length==0){return}var that=this;jQuery.getJSON(this._url,this._args,function(d){var r=jQuery(that.objs).processTemplate(d,that._param);if(that._options.on_success){that._options.on_success(r)}});this.timer=setTimeout(function(){that.run()},this._interval)};Updater.prototype.detectDeletedNodes=function(){this.objs=jQuery.grep(this.objs,function(o){if(jQuery.browser.msie){var n=o.parentNode;while(n&&n!=document){n=n.parentNode}return n!=null}else{return o.parentNode!=null}})};jQuery.fn.processTemplateStart=function(url,param,interval,args,options){return new Updater(url,param,interval,args,this,options)};jQuery.fn.processTemplateStop=function(){return jQuery(this).each(function(){var updater=jQuery.data(this,"jTemplateUpdater");if(updater==null){return}var that=this;updater.objs=jQuery.grep(updater.objs,function(o){return o!=that});jQuery.removeData(this,"jTemplateUpdater")})};jQuery.extend({createTemplate:function(s,includes,settings){return new Template(s,includes,settings)},createTemplateURL:function(url_,includes,settings){var s=jQuery.ajax({url:url_,async:false}).responseText;return new Template(s,includes,settings)},getTemplate:function(element){return jQuery.data(element,"jTemplate")},processTemplateToText:function(template,data,parameter){return template.get(data,parameter,undefined,0)},jTemplatesDebugMode:function(value){Template.DEBUG_MODE=value}})})(jQuery);
/*
 * jQuery hashchange event - v1.2 - 2/11/2010
 * http://benalman.com/projects/jquery-hashchange-plugin/
 * 
 * Copyright (c) 2010 "Cowboy" Ben Alman
 * Dual licensed under the MIT and GPL licenses.
 * http://benalman.com/about/license/
 */
}(function($,i,b){var j,k=$.event.special,c="location",d="hashchange",l="href",f=$.browser,g=document.documentMode,h=f.msie&&(g===b||g<8),e="on"+d in i&&!h;function a(m){m=m||i[c][l];return m.replace(/^[^#]*#?(.*)$/,"$1")}$[d+"Delay"]=100;k[d]=$.extend(k[d],{setup:function(){if(e){return false}$(j.start)},teardown:function(){if(e){return false}$(j.stop)}});j=(function(){var m={},r,n,o,q;function p(){o=q=function(s){return s};if(h){n=$('<iframe src="javascript:0"/>').hide().insertAfter("body")[0].contentWindow;q=function(){return a(n.document[c][l])};o=function(u,s){if(u!==s){var t=n.document;t.open().close();t[c].hash="#"+u}};o(a())}}m.start=function(){if(r){return}var t=a();o||p();(function s(){var v=a(),u=q(t);if(v!==t){o(t=v,u);$(i).trigger(d)}else{if(u!==t){i[c][l]=i[c][l].replace(/#.*/,"")+"#"+u}}r=setTimeout(s,$[d+"Delay"])})()};m.stop=function(){if(!n){r&&clearTimeout(r);r=0}};return m})()})(jQuery,this);