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(_1156,_1157,_1158,_1159){var _115a=Disney.WDPRO.IBC.GuestServices.Plugins.Register._validateDate(_1156,_1157,_1158);if(_115a.length>0){var xml=Disney.WDPRO.IBC.GuestServices.Plugins.Register._createXMLDocument(_115a);Disney.WDPRO.IBC.GuestServices.Plugins.Register._handleErrors(xml);Disney.WDPRO.IBC.GuestServices.Plugins.Register._sendEvent(_115a,false,"register",_1156,_1157,_1158,_1159);}else{Disney.WDPRO.IBC.GuestServices.Plugins.Register._handleErrors(null);Disney.WDPRO.IBC.GuestServices.Plugins.Register._sendEvent([],true,"register",_1156,_1157,_1158,_1159);}},getPluginElement:function(){return document.getElementById(Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.PLUGIN_ID);},_validateDate:function(_115c,_115d,_115e){var _115f=[];if(_115c===""||_115d===""||_115e===""){_115f.push(Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.INVALID_DATE_ERROR_CODE);}else{var _115d=Figment.Date.createDate((parseInt(_115c,10)-1)+"/"+_115d+"/"+_115e);var _1160=Figment.Date.subtract(new Date(),"Y",Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.MINIMUM_ALLOWED_AGE);Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("Birthday: "+_115d.toString());Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("18th Birthday: "+_1160.toString());if(_115d>=_1160){_115f.push(Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.UNDER_AGED_ERROR_CODE);}}return _115f;},_createXMLDocument:function(_1161){var doc;var xml="<?xml version=\"1.0\"?>\n";xml+="<Message>\n";xml+="<Errors id=\"ErrorList\">\n";for(var i=0;i<_1161.length;i++){var _1165=_1161[i];var _1166=Disney.WDPRO.IBC.GuestServices.getError(_1165);if(typeof _1166==="undefined"||_1166===null){_1166="Unknown error occurred";}xml+="<Error code=\""+_1165+"\">\n";xml+=_1166+"\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 _1167=new DOMParser();doc=_1167.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 _1169={ERROR_CODE_LIST_IN_REGISTER_STATE_ID:"guest_services_agegate_error_list"};var _116a=document.getElementById(_1169.ERROR_CODE_LIST_IN_REGISTER_STATE_ID);if(_116a!==null){var _116b=_116a.getElementsByTagName("UL");var _116c=false;var _116d=null;if(_116b.length===0){_116d=document.createElement("UL");_116c=true;}else{_116d=_116b[0];while(_116d.hasChildNodes()){_116d.removeChild(_116d.firstChild);}}if(_116d!==null&&xml!==null){var _116e=xml.getElementsByTagName("Error");for(var i=0;i<_116e.length;i++){var _1170=_116e[i];var code=_1170.getAttribute("code");var _1172=Figment.DOM.getFirstChildElement(_1170).nodeValue.trim();Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("Error: "+code+" ==> "+_1172);var error=document.createElement("LI");error.appendChild(document.createTextNode(_1172));_116d.appendChild(error);}if(_116c){_116a.appendChild(_116d);}}}},_sendEvent:function(_1174,_1175,_1176,_1177,_1178,_1179,_117a){var _117b=new Disney.WDPRO.IBC.GuestServices.Event();_117b.setEvent(_1176);_117b.setSource(_117a);_117b.setErrors(_1174);_117b.setResult(_1175);_117b.addData("birth_month",_1177);_117b.addData("birth_day",_1178);_117b.addData("birth_year",_1179);Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("Sending event: "+_117b.toString());Disney.WDPRO.IBC.GuestServices.dispatchEvent(_117b);},_changeStateEvent:function(e){Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("Change state fired!");var event=Figment.EventHandler.getEvent(e);var _117e=event.element;Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("Element: "+_117e.tagName+" "+_117e.id);var _117f=_117e.getAttribute(Disney.WDPRO.IBC.GuestServices.CONSTANTS.STATE_ATTRIBUTE_NAME);Disney.WDPRO.IBC.GuestServices.Shared.logger.debug("State to change to: "+_117f);var _1180=Figment.EventHandler.getEvent(e);var _1181=Disney.WDPRO.IBC.GuestServices.getHBXPNCode(_1180);var _1182=Disney.WDPRO.IBC.GuestServices.getHBXMLCCode(_1180);var _1183=Disney.WDPRO.IBC.GuestServices.getSCPNCode(_1180);var _1184=Disney.WDPRO.IBC.GuestServices.getSCHierCode(_1180);if(_1181!==null&&_1182!==null){Disney.WDPRO.IBC.GuestServices.EVENT_HBX_Event_PageView(_1181,_1182,_1183,_1184);}if(_117f!==null){Disney.WDPRO.IBC.GuestServices.changeState(_117f,YAHOO.util.Dom.getElementsByClassName(Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.PLUGIN_STATE_CLASS));}},_ageGateEvent:function(e){var _1186={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 _1187=null;var _1188=null;var _1189=null;var _118a=document.getElementById(_1186.BIRTH_MONTH_ID);if(_118a!==null){_1187=_118a.value;}var _118b=document.getElementById(_1186.BIRTH_DAY_ID);if(_118b!==null){_1188=_118b.value;}var _118c=document.getElementById(_1186.BIRTH_YEAR_ID);if(_118c!==null){_1189=_118c.value;}var _118d=Figment.EventHandler.getEvent(e);var _118e=Disney.WDPRO.IBC.GuestServices.getHBXPNCode(_118d);var _118f=Disney.WDPRO.IBC.GuestServices.getHBXMLCCode(_118d);var _1190=Disney.WDPRO.IBC.GuestServices.getSCPNCode(_118d);var _1191=Disney.WDPRO.IBC.GuestServices.getSCHierCode(_118d);if(_118e!==null&&_118f!==null){Disney.WDPRO.IBC.GuestServices.EVENT_HBX_Event_PageView(_118e,_118f,_1190,_1191);}var _1192=Disney.WDPRO.IBC.GuestServices.getSourceName();Disney.WDPRO.IBC.GuestServices.Plugins.Register.register(_1187,_1188,_1189,_1192);},EVENT_newAcctLoginLink_onClick:function(evt){var _1194=Figment.EventHandler.getEvent(evt),element=_1194.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,_1196){var _1197=_1196.getEvent().toLowerCase();var _1198=_1196.getResult();var _1199=_1196.getSource();if(_1198&&_1197==="login"&&_1199==="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(_119a){YAHOO.util.Dom.addClass(_119a,Disney.WDPRO.IBC.GuestServices.CONSTANTS.PREVENT_ASYNC_FROM_PLEASEWAIT);YAHOO.util.Event.addListener(_119a,"click",Disney.WDPRO.IBC.GuestServices.Plugins.Register._changeStateEvent);});var _119b=YAHOO.util.Dom.get(Disney.WDPRO.IBC.GuestServices.Plugins.Register.CONSTANTS.AGEGATE_ACTION_BUTTON_ID);if(_119b!==null){YAHOO.util.Dom.addClass(_119b,Disney.WDPRO.IBC.GuestServices.CONSTANTS.PREVENT_ASYNC_FROM_PLEASEWAIT);YAHOO.util.Event.addListener(_119b,"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);
