Figment.Import("Disney.WDPRO.IBC.GuestServices",Figment.getJSRoot()+"modules/");Figment.Import("Figment.EventHandler",Figment.getJSRoot()+"_framework/");Figment.Import("Figment.DOM",Figment.getJSRoot()+"_framework/");Figment.Import("Figment.Date",Figment.getJSRoot()+"_framework/");Figment.Namespace("Disney.WDPRO.IBC.GuestServices.Plugins.Register");Disney.WDPRO.IBC.GuestServices.Plugins.Register={CONSTANTS:{PLUGIN_ID:"GuestServices_Register_PlugIn",CHANGE_STATE_BUTTON_CLASS:"guest_services_register_plugin_change_state_button",PLUGIN_STATE_CLASS:"guest_services_register_plugin_state",AGEGATE_ACTION_BUTTON_ID:"guest_services_agegate_action_button",DEFAULT_STATE:"promo",MINIMUM_ALLOWED_AGE:18,INVALID_DATE_ERROR_CODE:"E1800003",UNDER_AGED_ERROR_CODE:"E1800015",CREATE_NEW_ACCOUNT_WORKFLOW_NAME:"Guest_STD_CreateAccount_Guest_Information_WorkFlow",CREATE_NEW_ACCOUNT_GUEST_INFO_PAGE_NAME:"Guest_STD_GuestInformation_CreateAccount_Page",NEW_ACCT_LOGIN_LINK_ID:"newAcctRegLoginLink",PROCESS_WORKFLOW_LOCATION:Figment.getWebRoot()+"en_US/modules/helpers/goToEntryWorkFlow",PROCESS_ENGINE_LOCATION:Figment.getWebRoot()+"en_US/_framework/components/processEngine"},getClassName:function(){return "Disney.WDPRO.IBC.GuestServices.Plugins.Register";},setToDefaultState:function(){Disney.WDPRO.IBC.GuestServices.Plugins.Register.setToState(Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.DEFAULT_STATE);},setToState:function(state){Disney.WDPRO.IBC.GuestServices.changeState(state,YAHOO.util.Dom.getElementsByClassName(Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.PLUGIN_STATE_CLASS));},register:function(_1114,_1115,_1116,_1117){var _1118=Disney.WDPRO.IBC.GuestServices.Plugins.Register._validateDate(_1114,_1115,_1116);if(_1118.length>0){var xml=Disney.WDPRO.IBC.GuestServices.Plugins.Register._createXMLDocument(_1118);Disney.WDPRO.IBC.GuestServices.Plugins.Register._handleErrors(xml);Disney.WDPRO.IBC.GuestServices.Plugins.Register._sendEvent(_1118,false,"register",_1114,_1115,_1116,_1117);}else{Disney.WDPRO.IBC.GuestServices.Plugins.Register._handleErrors(null);Disney.WDPRO.IBC.GuestServices.Plugins.Register._sendEvent([],true,"register",_1114,_1115,_1116,_1117);}},getPluginElement:function(){return document.getElementById(Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.PLUGIN_ID);},_validateDate:function(_111a,_111b,_111c){var _111d=[];if(_111a===""||_111b===""||_111c===""){_111d.push(Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.INVALID_DATE_ERROR_CODE);}else{var _111b=Figment.Date.createDate((parseInt(_111a,10)-1)+"/"+_111b+"/"+_111c);var _111e=Figment.Date.subtract(new Date(),"Y",Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.MINIMUM_ALLOWED_AGE);Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("Birthday: "+_111b.toString());Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("18th Birthday: "+_111e.toString());if(_111b>=_111e){_111d.push(Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.UNDER_AGED_ERROR_CODE);}}return _111d;},_createXMLDocument:function(_111f){var doc;var xml="<?xml version=\"1.0\"?>\n";xml+="<Message>\n";xml+="<Errors id=\"ErrorList\">\n";for(var i=0;i<_111f.length;i++){var _1123=_111f[i];var _1124=Disney.WDPRO.IBC.GuestServices.getError(_1123);if(typeof _1124==="undefined"||_1124===null){_1124="Unknown error occurred";}xml+="<Error code=\""+_1123+"\">\n";xml+=_1124+"\n";xml+="</Error>\n";}xml+="</Errors>\n";xml+="<Response>\n";xml+="<Result id=\"result\">\n";xml+="false\n";xml+="</Result>\n";xml+="</Response>\n";xml+="</Message>\n";if(document.implementation.createDocument){Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("Creating XML document in W3C-compliant browser");var _1125=new DOMParser();doc=_1125.parseFromString(xml,"text/xml");}else{if(window.ActiveXObject){Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("Creating XML document in IE browser");doc=new ActiveXObject("Microsoft.XMLDOM");doc.async="false";doc.loadXML(xml);}}return doc;},_handleErrors:function(xml){var _1127={ERROR_CODE_LIST_IN_REGISTER_STATE_ID:"guest_services_agegate_error_list"};var _1128=document.getElementById(_1127.ERROR_CODE_LIST_IN_REGISTER_STATE_ID);if(_1128!==null){var _1129=_1128.getElementsByTagName("UL");var _112a=false;var _112b=null;if(_1129.length===0){_112b=document.createElement("UL");_112a=true;}else{_112b=_1129[0];while(_112b.hasChildNodes()){_112b.removeChild(_112b.firstChild);}}if(_112b!==null&&xml!==null){var _112c=xml.getElementsByTagName("Error");for(var i=0;i<_112c.length;i++){var _112e=_112c[i];var code=_112e.getAttribute("code");var _1130=Figment.DOM.getFirstChildElement(_112e).nodeValue.trim();Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("Error: "+code+" ==> "+_1130);var error=document.createElement("LI");error.appendChild(document.createTextNode(_1130));_112b.appendChild(error);}if(_112a){_1128.appendChild(_112b);}}}},_sendEvent:function(_1132,_1133,_1134,_1135,_1136,_1137,_1138){var _1139=new Disney.WDPRO.IBC.GuestServices.Event();_1139.setEvent(_1134);_1139.setSource(_1138);_1139.setErrors(_1132);_1139.setResult(_1133);_1139.addData("birth_month",_1135);_1139.addData("birth_day",_1136);_1139.addData("birth_year",_1137);Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("Sending event: "+_1139.toString());Disney.WDPRO.IBC.GuestServices.dispatchEvent(_1139);},_changeStateEvent:function(e){Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("Change state fired!");var event=Figment.EventHandler.getEvent(e);var _113c=event.element;Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("Element: "+_113c.tagName+" "+_113c.id);var _113d=_113c.getAttribute(Disney.WDPRO.IBC.GuestServices.CONSTANTS.STATE_ATTRIBUTE_NAME);Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("State to change to: "+_113d);var _113e=Figment.EventHandler.getEvent(e);var _113f=Disney.WDPRO.IBC.GuestServices.getHBXPNCode(_113e);var _1140=Disney.WDPRO.IBC.GuestServices.getHBXMLCCode(_113e);var _1141=Disney.WDPRO.IBC.GuestServices.getSCPNCode(_113e);var _1142=Disney.WDPRO.IBC.GuestServices.getSCHierCode(_113e);if(_113f!==null&&_1140!==null){Disney.WDPRO.IBC.GuestServices.EVENT_HBX_Event_PageView(_113f,_1140,_1141,_1142);}if(_113d!==null){Disney.WDPRO.IBC.GuestServices.changeState(_113d,YAHOO.util.Dom.getElementsByClassName(Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.PLUGIN_STATE_CLASS));}},_ageGateEvent:function(e){var _1144={BIRTH_MONTH_ID:"guest_services_register_birth_month",BIRTH_DAY_ID:"guest_services_register_birth_day",BIRTH_YEAR_ID:"guest_services_register_birth_year"};var _1145=null;var _1146=null;var _1147=null;var _1148=document.getElementById(_1144.BIRTH_MONTH_ID);if(_1148!==null){_1145=_1148.value;}var _1149=document.getElementById(_1144.BIRTH_DAY_ID);if(_1149!==null){_1146=_1149.value;}var _114a=document.getElementById(_1144.BIRTH_YEAR_ID);if(_114a!==null){_1147=_114a.value;}var _114b=Figment.EventHandler.getEvent(e);var _114c=Disney.WDPRO.IBC.GuestServices.getHBXPNCode(_114b);var _114d=Disney.WDPRO.IBC.GuestServices.getHBXMLCCode(_114b);var _114e=Disney.WDPRO.IBC.GuestServices.getSCPNCode(_114b);var _114f=Disney.WDPRO.IBC.GuestServices.getSCHierCode(_114b);if(_114c!==null&&_114d!==null){Disney.WDPRO.IBC.GuestServices.EVENT_HBX_Event_PageView(_114c,_114d,_114e,_114f);}var _1150=Disney.WDPRO.IBC.GuestServices.getSourceName();Disney.WDPRO.IBC.GuestServices.Plugins.Register.register(_1145,_1146,_1147,_1150);},EVENT_newAcctLoginLink_onClick:function(evt){var _1152=Figment.EventHandler.getEvent(evt),element=_1152.element,plugins=element.getAttribute(Disney.WDPRO.IBC.GuestServices.CONSTANTS.CALLER_ELEMENT_PLUGIN_ATTRIBUTE_NAME);if(plugins===null){element.setAttribute(Disney.WDPRO.IBC.GuestServices.CONSTANTS.CALLER_ELEMENT_PLUGIN_ATTRIBUTE_NAME,"login,register");}Disney.WDPRO.IBC.GuestServices.open(element,"newAcctLogin");},main:function(){if(Figment.doesClassExist("Disney.WDPRO.IBC.GuestServices")){if(Disney.WDPRO.IBC.UI.Header!=null){Disney.WDPRO.IBC.UI.Header.OBSERVER=Disney.WDPRO.IBC.GuestServices.subscribe();Disney.WDPRO.IBC.UI.Header.OBSERVER.update=function(obs,_1154){var _1155=_1154.getEvent().toLowerCase();var _1156=_1154.getResult();var _1157=_1154.getSource();if(_1156&&_1155==="login"&&_1157==="newAcctLogin"){window.location=Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.PROCESS_ENGINE_LOCATION+"?process=true&name=";}};}}Disney.WDPRO.IBC.GuestServices.registerPlugin(Disney.WDPRO.IBC.GuestServices.Plugins.Register);YAHOO.util.Dom.getElementsByClassName(Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.CHANGE_STATE_BUTTON_CLASS,null,null,function(_1158){YAHOO.util.Dom.addClass(_1158,Disney.WDPRO.IBC.GuestServices.CONSTANTS.PREVENT_ASYNC_FROM_PLEASEWAIT);YAHOO.util.Event.addListener(_1158,"click",Disney.WDPRO.IBC.GuestServices.Plugins.Register._changeStateEvent);});var _1159=YAHOO.util.Dom.get(Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.AGEGATE_ACTION_BUTTON_ID);if(_1159!==null){YAHOO.util.Dom.addClass(_1159,Disney.WDPRO.IBC.GuestServices.CONSTANTS.PREVENT_ASYNC_FROM_PLEASEWAIT);YAHOO.util.Event.addListener(_1159,"click",Disney.WDPRO.IBC.GuestServices.Plugins.Register._ageGateEvent);}YAHOO.util.Event.addListener(Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.NEW_ACCT_LOGIN_LINK_ID,"click",Disney.WDPRO.IBC.GuestServices.Plugins.Register.EVENT_newAcctLoginLink_onClick);}};Figment.EntryPoint.add(Disney.WDPRO.IBC.GuestServices.Plugins.Register);