// (c)2011 MrOrange

﻿var mrO=function(){};mrO.elements={};mrO.namespace=function(){var a=arguments,o=null,i,j,d;for(i=0;i<a.length;i=i+1){d=a[i].split(".");o=window;for(j=0;j<d.length;j=j+1){o[d[j]]=o[d[j]]||{};o=o[d[j]];}}
return o;};mrO.isDefined=function(object){return!(typeof(object)==='undefined'||object===null);};mrO.isUndefined=function(object){return typeof(object)==='undefined'||object===null;};mrO.settings={partnerID:null,partnerIDLanguage:null,partnerIDEmail:null};mrO.getParameterArray=function(){var retAr=new Array();for(var parameter in this.parameters){if(this.parameters[parameter]!=null){retAr.push(parameter+":"+this.parameters[parameter]);}}
return retAr;};mrO.registerSetting=function(settingName,settingValue){this.settings[settingName]=settingValue;};mrO.getSetting=function(settingName){return this.settings[settingName];};mrO.getSettings=function(object){if(mrO.isDefined(object)){return mrO.utils.mergeObjects(this.settings,object,"string");}
return this.settings;};mrO.getElementById=function(id){if(mrO.isDefined(id)&&id.length>0){return this.getMrOElement("#"+id);}
return null;};mrO.bindElementToObject=function(elementID,className,functionNameArray){var mrOElement=this.getMrOElement("#"+elementID);if(functionNameArray.length>0){if(!mrO.isDefined(mrOElement.objectCalls)){mrOElement.objectCalls=new Object();}
if($.inArray("hide",functionNameArray)>=0){mrOElement.orgHide=mrOElement.hide;mrOElement.objectCalls.hide=function(arguments){mrO.page.getObject(className).hide(arguments);}
mrOElement.hide=function(){mrOElement.orgHide.apply(this,arguments);mrOElement.objectCalls.hide(arguments);}}
if($.inArray("show",functionNameArray)>=0){mrOElement.orgShow=mrOElement.show;mrOElement.objectCalls.show=function(arguments){mrO.page.getObject(className).show(arguments);}
mrOElement.show=function(){mrOElement.orgShow.apply(this,arguments);mrOElement.objectCalls.show(arguments);}}}
var key=mrO.getElementKey(elementID);mrO.elements[key]=mrOElement;}
mrO.bindMrOElements=function(parent,child){if(mrO.isDefined(child.objectCalls)){if(mrO.isDefined(child.objectCalls.hide)){var hideBase=parent.hide;parent.hide=function(){parent.hide=hideBase;parent.hide.apply(this,arguments);child.objectCalls.hide(arguments);}}
if(mrO.isDefined(child.objectCalls.show)){var showBase=parent.show;parent.show=function(){parent.show=showBase;parent.show.apply(this,arguments);child.objectCalls.show(arguments);}}}
return parent;}
mrO.getMrOElement=function(selector){var element;var key=this.getElementKey(selector)
if(mrO.isDefined(this.elements[key])){return this.elements[key];}
else{element=$(selector);var child_key;for(child_key in this.elements){var childElement=element.find("#"+child_key);if(childElement.length>0){element=mrO.bindMrOElements(element,this.elements[child_key]);}}}
return element;};mrO.getElementKey=function(selector){var key=selector.replace("#","");key=key.replace(" ","");return key;}
