﻿var $u=unihan={};window.unihan=unihan;unihan.inf={engine:"../../ajax_engine.asp",flashName:"HanZiFlash",postBox:"#postMsg",loading:"#loading",rulesTree:"#rulesTree",rulesBox:"#strokRules",rulesDowloadLink:"#download_pdf_rls",strokeList:"#strokeList",compntList:"#componentList"};unihan.getFlash=function(a){if($.browser.msie)return $("#"+a)[0];else return $("embed[name='"+a+"']")[0]};unihan.playMedia=function(a){var f=unihan.getFlash(unihan.inf.flashName);if(f){f.palyMedia(a)}};unihan.toggleTree=function(b){var a=$(b),p=a.parent(),c=p.find("ul");if(c.length>0){if(c.is(":visible")){c.hide();a.addClass("t_down")}else{c.show();a.removeClass("t_down")}}};unihan.bindView=function(a){$(a).click(function(){unihan.viewDetail(this);return false})};unihan.viewDetail=function(b){var a=$(b),p=a.attr("href").replace(/\/HSK[\/]?\?/gi,"/Hanzi/HSK.asp?"),W=screen.availWidth?screen.availWidth:$(self).width(),w=630;var c=window.open(p,"HSK","height=285, width="+w+", top=120, left="+(W-w)/2+", toolbar=no, menubar=no, scrollbars=auto, resizable=yes, location=no, status=no");c.focus()};unihan.getLangAndID=function(a){var b=a.toLowerCase().split("&"),t,ii={"id":0,"lang":"cn"},i=0,n=b.length;for(;i<n;i++){t=b[i].split("=");if(t[0]=="r"){ii.id=t[1]}else if(t[0]=="l"){ii.lang=t[1]}}return ii};unihan.bindLanguageView=function(b){$(b).each(function(){var a=$(this),para=a.attr("href").split("?")[1],ii=unihan.getLangAndID(para),onShow=a.parent("li").is(".on");if(onShow){a.css("cursor","default").click(function(){return false})}else{a.click(function(){unihan.loadRulesInfo(ii.lang,ii.id);return false})}})};unihan.loadRulesInfo=function(c,d){var f=$(unihan.inf.loading),para="r="+d+"&l="+c,e=$(unihan.inf.rulesBox+" .lang").attr("rel")+unihan.inf.engine.substr(unihan.inf.engine.lastIndexOf("\/")+1);f.show();$.ajax({dataType:"string",type:"get",url:e+"?a=srInf&"+para,error:function(){window.location.href="?"+para},success:function(a){var b=$(unihan.inf.rulesDowloadLink+","+unihan.inf.rulesTree+" a:not(.title),.rsMore");f.hide();$(unihan.inf.rulesBox).html(a);unihan.bindView(".samples a");unihan.bindLanguageView(".lang a");b.each(function(){$(this).attr("href",$(this).attr("href").replace(/l=[a-z]*(?:$|&)/g,"l="+c))})}})};unihan.bindRulesView=function(b){$(b).click(function(){var a=$(this),para=a.attr("href").split("?")[1],ii=unihan.getLangAndID(para),onShow=a.parent("li").is(".on");if(!onShow){$(unihan.inf.rulesTree+" .on").removeClass("on");a.parent("li").addClass("on");unihan.loadRulesInfo(ii.lang,ii.id);unihan.loadTalk(ii.id)}this.blur();return false})};unihan.loadTalk=function(){var b=$(unihan.inf.loading),rulesID;b.show();if(arguments.length==1){rulesID=arguments[0]}else{rulesID=$(unihan.inf.rulesTree+" li:not(:has(a.title))").index($(unihan.inf.rulesTree+" .on"))}$.ajax({dataType:"string",type:"get",url:unihan.inf.engine+"?rnd="+Math.random(),data:{"a":"rsTlk","r":rulesID},error:function(){$(unihan.inf.rulesTree+" .on a")[0].click()},success:function(a){b.hide();$("#talks").find(".list").html(a).end().find("#t_index").val(rulesID)}})};unihan.bindStrokeView=function(b){$(b).each(function(){var a=$(this),id=a.attr("href").split("?i=")[1];a.click(function(){var a=$(this).is(".on");if(!a){$(unihan.inf.strokeList+" .on").removeClass("on");$(this).addClass("on");unihan.loadStrokeInf(id)}this.blur();return false})})};unihan.loadStrokeInf=function(b){var c=$(unihan.inf.loading);c.show();$.ajax({dataType:"string",type:"get",url:unihan.inf.engine+"?a=bsInf&i="+b,error:function(){window.location.href="?i="+b},success:function(a){c.hide();$("#stroke .inf").html(a);unihan.getFlash(unihan.inf.flashName).loadStroke(b)}})};unihan.toggleList=function(a){$(a).each(function(){var d=$(this),h=d.outerHeight(),H=this.scrollHeight,h0=d.data("h");if(h<H){d.data("h",d.css("height"));d.css({"overflow":"visible","height":"auto"})}else{if(!h0)h0="150px";d.css({"overflow":"auto","height":h0})}})};unihan.bindComponentView=function(b){$(b).each(function(){var a=$(this),id=a.attr("href").split("?c=")[1],unicode=a.attr("rel");a.click(function(){var a=$(this).is(".on");if(!a){$(unihan.inf.compntList+" .on").removeClass("on");$(this).addClass("on");unihan.loadComponentInf(id,unicode)}this.blur();return false})})};unihan.loadComponentInf=function(b,c){var d=$(unihan.inf.loading);d.show();$.ajax({dataType:"string",type:"get",url:unihan.inf.engine+"?a=cpInf&c="+b,error:function(){window.location.href="?c="+b},success:function(a){d.hide();$("#component .inf").html(a);unihan.getFlash(unihan.inf.flashName).loadImage(c);unihan.loadCpSmp(b,c)}})};unihan.loadCpSmp=function(b,c){$.ajax({dataType:"string",type:"get",url:unihan.inf.engine+"?a=cpSmp&u="+c,error:function(){window.location.href="?c="+b},success:function(a){$("#cmpSmp").html(a);$u.bindView("#cmpSmp .samples a")}})};$(document).ready(function(){$(".viewTree .title").each(function(){var c=$(this).parent().find("ul").find(".on");if(!c[0]){$u.toggleTree(this)}});$u.bindView(".samples a");$u.bindLanguageView(".lang a");$u.bindRulesView($u.inf.rulesTree+" a:not(.title)");$u.bindStrokeView($u.inf.strokeList+" a");$u.bindComponentView($u.inf.compntList+" a")});