CD.Application=new Class({path:null,keyboardWrapID:"inputBinder",searchFormID:"SearchForm",chooseType:"keyboard",isSplash:false,initialize:function(A){this.body=$(document.body);this.body.getElement("#canvas");var B=new CD.FontDetector();CD.Conf.abSans=new CD.FontDetector().test("Aboriginal Sans");CD.Conf.pathImg=CD.Conf.path+("kids"==CD.Conf.style?"img/kids/":"img/adult/");this.activatePage();new CD.ImagePreload(CD.Conf.images).run()},activatePage:function(){this.activateHeader();this.flashSplashSetup();this.setupKeyboard();this.makeDropDownMenu();this.initSearchForm();var A=this.body.getElements('input[type="image"]');if(A.length>0){$each(A,function(B){B.addEvents({mouseover:this.onHoverImage.bind(this),mouseout:this.onHoverImage.bind(this)})}.bind(this))}window.addEvent("onVKLoad",function(){if(CD.Conf.skipFontDetect==0&&!CD.Conf.abSans){var C=$("FontError");if($defined(C)){C.innerHTML='<div style="line-height:3em;">If text in the following box <div style="display:inline;background:#fff;border:1px solid #666;font-size:1.4em;padding:5px;width:5em;">?????</div> &nbsp; does not look like <img src="'+CD.Conf.path+'img/adult/syllabic_test.gif" alt="acahkos" title="?????" style="vertical-align:bottom;"><br />Please, <a href="'+CD.Conf.path+'download/absans.zip">download</a> and install Unicode Cree Syllabics Font.<br />Follow <a href="'+CD.Conf.path+'converter/installfont.php">this page</a> for installation instuctions for MacOS X and Windows.<br /><input type="checkbox" name="skipFontDetect" />&nbsp;I can see syllabic, don\'t perform this check anymore.</div>';var B=C.getElement("input[type=checkbox]");if($defined(B)){B.addEvent("change",function(){new CD.Setting("skipFontDetect",this.checked?1:0).save();C.setStyle("display","none")})}}CD.VKS.switchBinder()}});if(CD.Conf.isIE){window.addEvent("unload",function(){if($defined(Swiff.Uploader)){Swiff.Uploader.loaded=false;delete Swiff.Uploader.object}}.bind(this))}window.fireEvent("onAppReady")},setupKeyboard:function(){if(this.isKeyboardWrap()){CD.Conf.arrayId.syllabic=CD.Conf.arrayId.syllabic.concat(["compleate"]);CD.VKS=new CD.VirtualKeyboard(this.getKeyboardWrap(),"hidden"==this.getKeyboardWrap().getStyle("visibility"));CD.VKS.handleFields(CD.Conf.arrayId)}},initSearchForm:function(){if(this.isSearchForm()){CD.VKS.getLanguage=function(H){if(CD.Conf.currentLayout!=H){CD.Conf.currentLayout=H;var G=H=="latin"?0:2;this.selectInput(G)}}.bind(this);CD.VKS.switchBinder=function(){var G;if("visible"==this.keyboardWrap.getStyle("visibility")){CD.VKS.keyboardWrap.setStyle("visibility","hidden");G="Show";if($defined(CD.VKS.focusedEl)){CD.VKS.focusedEl.focus()}}else{CD.VKS.keyboardWrap.setStyle("visibility","visible");G="Hide";CD.VKS.swiff.focus()}$("SwitchVK").innerHTML=G+" Virtual Keyboard"};var E=this.getSearchForm().getElement("#select_field");this.selectInput(CD.Conf.searchPlace);this.makeLanguage(CD.Conf.searchPlace);if($defined(E)){var D=E.getFirst().getNext().getChildren();if(D.length>0){$each(D,function(G){G.addEvent("click",function(){this.selectInput(E.obj.state);this.makeLanguage(E.obj.state)}.bind(this))}.bind(this))}}var A=this.getSearchForm().getElement("#compleate");if($defined(A)){A.addEvent("keyup",function(H){var G=new Event(H);CD.VKS.keyUpVK(G);if(G.code==13){this.getSearchForm().submit()}}.bind(this))}var C=$("SwitchVK");if($defined(C)){C.addEvent("click",function(G){new Event(G).stop();CD.VKS.switchBinder()}.bind(this))}var B=this.getSearchForm().getElement("#compleate");if($defined(B)&&!this.isSplash){this.setVKFocus(B)}var F=$("options");if($defined(F)){F.addEvent("click",function(G){new Event(G).stop();new CD.Options()})}this.makeSuggest()}},makeSuggest:function(){var B=$("compleate");var C=$("lang");if($defined(B)&&$defined(C)){var A=new CD.Autocompleter.Ajax.Json(B,CD.Conf.path+"search/autocomplete.php",{minLength:1,onRequest:function(D){},onComplete:function(D){},postVar:"input",addPostData:[{name:"type",value:C}],className:"autosuggest"})}},makeDropDownMenu:function(){var A=this.body.getElements(".comboBox");if(A.length>0){$each(A,function(B){B.obj=new CD.DropdownMenu(B)})}},activateHeader:function(){var C=new Swiff(CD.Conf.path+"img/adult/swf/tatawaw.swf",{width:123,height:25,allowScriptAccess:"sameDomain",wmode:"transparent",bgcolor:"#FFFFFF",menu:"false",name:"tataw",allowFullScreen:"false",quality:"high",align:"middle"});var B=$("top-flash");if($defined(B)){B.appendChild(C)}var A=this.body.getElement("#dmenu");if($defined(A)){new CD.HeaderMenu(A)}},flashSplashSetup:function(){var A=this.body.getElement("#splash");if($defined(A)){this.isSplash=true;this.body.getElement("#content").setStyle("display","none");var B=new Swiff(CD.Conf.pathImg+"swf/teaser.swf",{width:666,height:234,allowScriptAccess:"sameDomain",wmode:"transparent",bgcolor:"#fbf6de",menu:"false",name:"tiser",allowFullScreen:"false",quality:"high",align:"middle"});$("indexFlash").appendChild(B);var C=this.body.getElement("#HideSplash");if($defined(C)){C.addEvent("click",this.hideSplash)}}},selectInput:function(B){var A=this.getSearchForm().getElement("#lang");if($defined(A)){A.value=B;new CD.Setting("searchPlace",B).save();this.getSearchForm().getElement("#select_field_value_search").innerHTML=CD.Conf.lang[B];if(2==B&&"Syllabic"!=CD.Conf.searchInputType){new CD.Setting("searchInputType","Syllabic").save()}else{if(2!=B&&"SRO"!=CD.Conf.searchInputType){new CD.Setting("searchInputType","SRO").save()}}}},makeLanguage:function(A){var B=2==A?CD.Conf.keyboardDialect:"latin";CD.VKS.sendLanguage(B)},onHoverImage:function(A){var C=new Event(A);var B=C.target;if(-1==B.src.indexOf("_o")&&-1!=C.type.indexOf("mouseover")){B.src=B.src.substr(0,B.src.lastIndexOf("."))+"_o"+B.src.substr(B.src.lastIndexOf("."))}else{B.src=B.src.replace("_o.",".")}},hideSplash:function(){var B=CD.App;$("splash").setStyle("display","none");$("content").setStyle("display","block");B.isSplash=false;var A=B.getSearchForm().getElement("#compleate");if($defined(A)&&!B.isSplash){B.setVKFocus(A)}},setVKFocus:function(A){CD.VKS.focusedEl=A;CD.VKS.focused=true;CD.VKS.focusedEl.focus()},isKeyboardWrap:function(){return $defined(this.body.getElement("#"+this.keyboardWrapID))},getKeyboardWrap:function(){return this.body.getElement("#"+this.keyboardWrapID)},isSearchForm:function(){return $defined(this.body.getElement("#"+this.searchFormID))},getSearchForm:function(){return this.body.getElement("#"+this.searchFormID)}});