/*
 * Website singleton class
 * @version 1.0
 * @author M.F.Endenburg
 * @copyright (c) Denbel Systems 2008
 */
Denbel.load("Website");var R=null;Denbel.Website={_config:{dialogDefaultPosition:[150,100],dialogDefaultCaption:document.domain,debug:true,showWait:true},_href:((document.location.protocol.substring(0,5)=="https")?"https://":"http://")+document.domain,_isInitialized:null,_waitDialog:null,_messageDialog:null,_inputDialog:null,_dialog:null,_valueCollection:null,_logReader:null,_resources:null,_animSpeed:0.25,_fadeSpeed:0.2,_checksum:"daf2",_loader:null,_manager:null,ready:null,init:function(b,a){this._config.debug=b;try{Denbel.Website._config.dialogDefaultCaption=document.getElementsByTagName("title")[0].innerHTML;}catch(c){Denbel.Website._config.dialogDefaultCaption=document.domain;}if(YAHOO.widget.SimpleDialog){Denbel.Website._initWaitDialog();Denbel.Website._initMessageDialog();Denbel.Website._initInputDialog();Denbel.Website._initDialog();}if(Denbel.Website._config.debug){Denbel.Website._initLogger();}Denbel.Website._valueCollection=new Array();},showInfoBar:function(c,b,e,a){if(!Denbel.ui.InfoBar){return false;}var d=new Denbel.ui.InfoBar("info-bar");if(!a&&d.isShown()){return false;}if(!b){b=Denbel.ui.InfoBar.ICON_INFO;}if(!e){e=10000;}return d.show(b,c,e);},initDialog:function(a,b){if(!a){return;}a.beforeShowEvent.subscribe(function(f){var c=YAHOO.util.Dom.get(this.id+"_mask");if(!c||c==null){return;}YAHOO.util.Dom.setStyle(c,"opacity","0.0");var d=new YAHOO.util.Anim(c,{opacity:{to:0.6}},Denbel.Website._fadeSpeed);d.animate();});a.beforeHideEvent.subscribe(function(f){var c=YAHOO.util.Dom.get(this.id+"_mask");if(!c){return;}var d=new YAHOO.util.Anim(c,{opacity:{to:0}},Denbel.Website._fadeSpeed);d.animate();});},onReady:function(){Denbel.Website._isInitialized=true;Denbel.Website.ready.fire();},createFP:function(){var a=new Date().getTime().toString();a=a.substring(0,a.length-3);return Denbel.Website._checksum+Denbel.core.MD5.calc(Denbel.Website._checksum+"__"+Denbel.Website.getDomain()+"__"+Denbel.Website._checksum+"_"+a);},_initLogger:function(){Denbel.Website._logReader=new YAHOO.widget.LogReader(null,{top:"+300px",height:"450px"});},isInitialized:function(){return Denbel.Website._isInitialized;},initFirstTab:function(){return true;},addValue:function(a,b){if(Denbel.Website._valueCollection[a]){YAHOO.log("addValue: key already exists","warn");return false;}Denbel.Website.setValue(a,b);return true;},setValue:function(a,b){Denbel.Website._valueCollection[a]=b;if(a=="animSpeed"){Denbel.Website._animSpeed=b;}else{if(a=="fadeSpeed"){Denbel.Website._fadeSpeed=b;}}},removeValue:function(a){Denbel.Website._valueCollection[a]=null;},getValue:function(a){if(!Denbel.Website._valueCollection[a]){YAHOO.log("unknown value for key "+a);return null;}return Denbel.Website._valueCollection[a];},insertLoader:function(a,d,c){if(!c){c="/media/img/cms/skins/"+Denbel.Website.getValue("skinName")+"/loader1.gif";}if(!d){d=null;}var b=Denbel.Website.createLoaderElement(d,c);a.innerHTML="";return Denbel.Website.insertContents(a,b);},insertContents:function(element,contents,isString){if(!element){YAHOO.log("No element specified","error");return false;}var htmlString="";element.innerHTML="";if(!isString){htmlString=Denbel.util.XmlHelper.xmlToString(contents);}else{htmlString=contents;}element.innerHTML=htmlString;var xmlDoc=null;if(window.ActiveXObject){xmlDoc=Denbel.util.XmlHelper.stringToXml(htmlString);}else{return true;}if(xmlDoc){var scripts=xmlDoc.getElementsByTagName("script");var js="";YAHOO.log("executing exec scripts");for(var i=0;i<scripts.length;i++){if(scripts[i].getAttribute("class")=="exec"){for(var j=0;j<scripts[i].childNodes.length;j++){js=scripts[i].childNodes[j].nodeValue;if(js){try{eval(js);}catch(e){YAHOO.log("Cannot exec script","error");YAHOO.log(e,"error");}}}}}}else{return true;}return true;},_initInputDialog:function(){var b=null;try{if(YAHOO.widget.ContainerEffect){b={effect:YAHOO.widget.ContainerEffect.FADE,duration:Denbel.Website._fadeSpeed};}}catch(a){b=null;}this._inputDialog=new YAHOO.widget.Dialog("input-dialog",{width:"250px",fixedcenter:true,xy:Denbel.Website._config.dialogDefaultPosition,close:false,draggable:true,modal:true,zIndex:2000,visible:false,effect:b});var c=new YAHOO.util.KeyListener(document,{keys:27},{fn:Denbel.Website._inputDialog.cancel,scope:Denbel.Website._inputDialog,correctScope:true});Denbel.Website._inputDialog.cfg.queueProperty("keylisteners",c);Denbel.Website._inputDialog.render(document.body);Denbel.Website._inputDialog.hide();Denbel.Website.initDialog(Denbel.Website._inputDialog);},_initMessageDialog:function(){var b=null;try{if(YAHOO.widget.ContainerEffect){b={effect:YAHOO.widget.ContainerEffect.FADE,duration:Denbel.Website._fadeSpeed};}}catch(a){b=null;}this._messageDialog=new YAHOO.widget.SimpleDialog("message-dialog",{width:"35em",fixedcenter:true,xy:Denbel.Website._config.dialogDefaultPosition,close:false,draggable:true,modal:true,zIndex:2000,visible:false,effect:b});var c=new YAHOO.util.KeyListener(document,{keys:27},{fn:Denbel.Website._messageDialog.cancel,scope:Denbel.Website._messageDialog,correctScope:true});Denbel.Website._messageDialog.cfg.queueProperty("keylisteners",c);Denbel.Website._messageDialog.render(document.body);Denbel.Website.initDialog(Denbel.Website._messageDialog);},_initDialog:function(){var b=null;try{if(YAHOO.widget.ContainerEffect){b={effect:YAHOO.widget.ContainerEffect.FADE,duration:Denbel.Website._fadeSpeed};}}catch(a){b=null;}if(Denbel.Website._dialog){try{Denbel.Website._dialog.destroy();}catch(d){}Denbel.Website._dialog=null;}Denbel.Website._dialog=new YAHOO.widget.Dialog("dialog-box",{fixedcenter:false,constaintoviewport:false,xy:Denbel.Website._config.dialogDefaultPosition,close:true,draggable:true,modal:true,zIndex:2000,visible:false,effect:b,underlay:"shadow",postMethod:"async"});Denbel.Website._dialog.hideEvent.subscribe(function(g){if(YAHOO.env.ua.ie>0&&YAHOO.env.ua.ie<7){}else{try{this.destroy();}catch(f){}}Denbel.Website._dialog=null;});var c=new YAHOO.util.KeyListener(document,{keys:27},{fn:Denbel.Website._dialog.cancel,scope:Denbel.Website._dialog,correctScope:true});Denbel.Website._dialog.cfg.queueProperty("keylisteners",c);Denbel.Website._dialog.render(document.body);Denbel.Website.initDialog(Denbel.Website._dialog);},showInputDialog:function(i,h,e,g,c){Denbel.Website.hideWaitDialog();if(!Denbel.Website._inputDialog){Denbel.Website._initInputDialog();}if(!i){i=Denbel.Website._config.dialogDefaultCaption;}if(!e){e="";}var b='<div class="spacer10"></div><div><input class="textbox'+((c)?" "+c:"")+'" type="text" id="iInputDialogField" name="iInputDialogField" value="'+e+'" /></div><div class="clear"></div>';Denbel.Website._inputDialog.setHeader(i);Denbel.Website._inputDialog.setBody("<div>"+h+"</div>"+b);var a=function(j,k){this.hide();if(k.success){k.success.call(this,j,k.argument);}};var f=function(j,k){this.cancel();if(k.failure){k.failure.call(this,j,k.argument);}};var d=[{text:Denbel.Website.getResource("BTN_OK"),handler:{fn:a,obj:g},isDefault:true},{text:Denbel.Website.getResource("BTN_CANCEL"),handler:{fn:f,obj:g}}];Denbel.Website._inputDialog.cfg.queueProperty("buttons",d);Denbel.Website._inputDialog.center();Denbel.Website._inputDialog.render();Denbel.Website._inputDialog.show();},showDialog:function(b,a,d,f,g,c){Denbel.Website.hideWaitDialog();if(!Denbel.Website._dialog||!Denbel.Website._dialog.cfg){Denbel.Website._initDialog();}if(!b){b=Denbel.Website._config.dialogDefaultCaption;}Denbel.Website._dialog.setHeader(b);Denbel.Website._dialog.setBody(a);if(!d){d=[{text:Denbel.Website.getResource("BTN_CLOSE"),handler:function(h){this.hide();},isDefault:true}];}Denbel.Website._dialog.cfg.queueProperty("buttons",d);if(f!=null){Denbel.Website._dialog.cfg.queueProperty("close",f);}if(!c&&Denbel.util.BrowserDetect.browser=="Explorer"){Denbel.Website._dialog.cfg.queueProperty("width","500px");}if(c){Denbel.Website._dialog.cfg.queueProperty("width",c.toString()+"px");}Denbel.Website._dialog.render(document.body);Denbel.Website.initDialog(Denbel.Website._dialog);if(g){var e=YAHOO.util.Dom.get(g);this._dialog.callback={form:e,success:function(h){if(parseInt(h.responseXML.getElementsByTagName("code")[0].firstChild.nodeValue)!=1){Denbel.Website.showMessageDialog(null,h.responseXML.getElementsByTagName("message")[0].firstChild.nodeValue);}},failure:function(h){Denbel.Website.showMessageDialog(null,"FAILED");},upload:function(h){}};Denbel.Website.setValue("dialogChangeListener",new Denbel.util.ChangeListener(e));}Denbel.Website._dialog.center();Denbel.Website._dialog.show();},_initWaitDialog:function(c){var b=null;try{if(YAHOO.widget.ContainerEffect){b={effect:YAHOO.widget.ContainerEffect.FADE,duration:Denbel.Website._fadeSpeed};}}catch(a){b=null;}Denbel.Website._waitDialog=new YAHOO.widget.Panel("wait-dialog",{width:"240px",fixedcenter:true,constraintoviewport:true,xy:Denbel.Website._config.dialogDefaultPosition,close:true,draggable:true,modal:true,zIndex:65535,visible:false,effect:b});if(!c){c="/media/img/cms/skins/"+skinName+"/loader1.gif";}Denbel.Website._waitDialog.setHeader("&nbsp;");Denbel.Website._waitDialog.setBody('<div style="text-align:center;"><img alt="" src="'+c+'" /></div>');Denbel.Website._waitDialog.render(document.body);Denbel.Website.initDialog(Denbel.Website._waitDialog);},createLoaderElement:function(d,c){var b=document.createElement("div");b.setAttribute("style","padding:50px;text-align:center;");var e=document.createElement("img");e.setAttribute("alt",c);e.setAttribute("src",c);e.setAttribute("style","vertical-align:middle;");var a=document.createElement("span");a.setAttribute("style","margin-left:10px;");a.innerHTML=d;b.appendChild(e);b.appendChild(a);return b;},showMessageDialog:function(a,e,b,c,d){if(!Denbel.Website._messageDialog){Denbel.Website._initMessageDialog();if(!Denbel.Website._messageDialog){return;}}if(!a){a=Denbel.Website._config.dialogDefaultCaption;}if(!e){e="";}if(b){switch(b.toUpperCase()){case"INFO":case"INFOICON":b=YAHOO.widget.SimpleDialog.ICON_INFO;break;case"ALARM":case"ALRTICON":b=YAHOO.widget.SimpleDialog.ICON_ALARM;break;case"WARNING":case"WARN":case"WARNICON":b=YAHOO.widget.SimpleDialog.ICON_WARN;break;case"ERROR":case"BLOCK":case"BLCKICON":b=YAHOO.widget.SimpleDialog.ICON_BLOCK;break;case"TIP":case"TIPICON":b=YAHOO.widget.SimpleDialog.ICON_TIP;break;case"HELP":case"HLPICON":case"QUESTION":b=YAHOO.widget.SimpleDialog.ICON_HELP;break;default:b=YAHOO.widget.SimpleDialog.ICON_INFO;break;}}else{b=YAHOO.widget.SimpleDialog.ICON_INFO;}if(!d){d=false;}if(!c){c=[{text:Denbel.Website.getResource("BTN_CLOSE"),handler:function(f){this.hide();},isDefault:true}];}Denbel.Website.hideWaitDialog();this._messageDialog.setHeader(a);this._messageDialog.setBody(e);this._messageDialog.cfg.setProperty("icon",b);this._messageDialog.cfg.queueProperty("buttons",c);this._messageDialog.cfg.queueProperty("close",d);this._messageDialog.render();this._messageDialog.show();},hideMessageDialog:function(){if(!Denbel.Website._messageDialog){return;}Denbel.Website._messageDialog.hide();},showWaitDialog:function(a){if(Denbel.Website._messageDialog.cfg.getProperty("visible")){return;}if(!Denbel.Website._config.showWait){return;}if(!Denbel.Website._waitDialog){Denbel.Website._initWaitDialog();}if(!a){a=Denbel.Website.getResource("TXT_WAIT_CAPTION");if(!a||a=="TXT_WAIT_CAPTION"){a="Loading...";}}Denbel.Website._waitDialog.setHeader(a);Denbel.Website._waitDialog.show();},hideWaitDialog:function(){if(!Denbel.Website._waitDialog){return;}Denbel.Website._waitDialog.hide();},getResource:function(a){if(!a){YAHOO.log("no resource key given","error");return null;}if(Denbel.Website._resources==null){YAHOO.log("no resources loaded","error");return a;}var b=Denbel.Website._resources.get(a);return((b)?b:a);},setData:function(c,f){if(!c||!YAHOO.lang.isString(c)){YAHOO.log("setData expects name to be a string","error","Denbel.Website");return null;}var g=Denbel.core.Base64.encode(f);if(g.length>7168){YAHOO.log("Data too long. Maximum request header size exceeded.","error","Denbel.Website");throw Error("Data too long. Maximum request header size exceeded.");return null;}if(g.length>2048){var b="";var a=1;for(var e=0;e<g.length;e++){if(b.length==2048){YAHOO.util.Cookie.set(c+"_"+a,b);a++;b="";}b+=g.charAt(e);}YAHOO.util.Cookie.set(c+"_"+a,b);}else{YAHOO.util.Cookie.set(c,g);}},getData:function(a){var d="";var e=null;var b=1;while((e=YAHOO.util.Cookie.get(a+"_"+b))!=null){d+=Denbel.core.Base64.decode(e);b++;}if(d.length==0){return null;}return d;},loadResources:function(a){var d=new Denbel.rpc.XmlRpcClient();var b=d.createMessage("getResources");d.callService(b,{success:Denbel.Website.loadResourcesCompleted,failure:Denbel.Website.loadResourcesFailure,argument:null},a);},loadResourcesCompleted:function(a){Denbel.Website._resources=a.data[0];R=a.data[0];Denbel.Website.onReady();},loadResourcesFailure:function(a){Denbel.Website._resources=null;R=null;Denbel.Website.onReady();},onAsyncSuccess:function(a){alert(a.responseText);},onAsyncFailure:function(a){alert(a.status+" "+a.statusText);},onAsyncUpload:function(a){alert(a.responseText);},execScripts:function(){YAHOO.log("execScripts called");var scripts=YAHOO.util.Dom.getElementsByClassName("exec");for(var i=0;i<scripts.length;i++){eval(scripts[i].innerHTML);}YAHOO.log("execScripts executed "+i+" scripts","info","website");return;},getDomain:function(){return Denbel.Website._href;},isSecure:function(){return(document.location.protocol.substring(0,5)=="https");},getWaitDialog:function(){return Denbel.Website._waitDialog;},getMessageDialog:function(){return Denbel.Website._messageDialog;},getDialog:function(){if(!Denbel.Website._dialog){Denbel.Website._initDialog();}return Denbel.Website._dialog;},load:function(b,c){if(!b){return false;}if(YAHOO.lang.isArray(b)){for(var g=0;g<b.length;g++){Denbel.Website.load(b[g],c);}}else{var k="-min";if(c){k="-debug";}b=b.toLowerCase();var f=b.split(".");var j="";for(var g=0;g<f.length;g++){if(j){j+="/";}j+=f[g];}j=Denbel.Website._href+"/script/"+j+k+".js";var d={name:b,fullpath:j,skinnable:false,type:"js"};try{if(!Denbel.Website._loader){Denbel.Website._loader=new YAHOO.util.YUILoader();}var a=Denbel.Website._loader.addModule(d);if(a){YAHOO.log("Module added "+j);}else{YAHOO.log("Cannot add module "+j,"error");}}catch(h){YAHOO.log(h,"error");return false;}}},toString:function(){return"Denbel.Website";}};
