var FastOrderForm=new Class({Extends:OrderInterface,Implements:Form,initialize:function(user){this.dialog=$("fast-order");this.form=$("fast-order-form");this.user=user;this.button={submit:$("order-submit")};this._initAuth();new AttacheController("order_attache");this.initElements();},initElements:function(){this.parent();var element={budget:new Field("budget",this.dialog),end_date:new Field("end-date",this.dialog)};this.element=$extend(this.element,element);this.field("budget").addError("CRuleNumberFormat").addRule(new CRuleNumberFormat("budget",false));this.field("budget").addError("CRuleNotEmpty").addRule(new CRuleNotEmpty('budget'));this.field("budget").addError("CRuleValueInRange").addRule(new CRuleValueInRange('budget',min_budget,max_budget));this.field("end_date").addError("CRuleNotEmpty").addRule(new CRuleNotEmpty("end-date"));this.field("end_date").addError("CRuleFutureDay");new DatePicker($('calendar-title'),calendar_options,$('end-date'));this.initButtons();},initButtons:function(){var self=this;this.button.submit.addEvent("click",function(){var auth_result=self.validateAuth();var main_result=self.validate();if(auth_result==true&&main_result==true){self.form.submit();}});},_initAuth:function(){if(this.user==true){return false;}
this._initAuthButtons();this.signup=new OrderSignupForm();this.login=new OrderLoginForm();this.active_form=this.signup;this._changeFormState(this.login,true);},_initAuthButtons:function(){var self=this;$("user-signup-button").addEvent("click",function(){self._changeFormState(self.login,true);return self._activateAuthForm({active:self.signup,signup:"block",login:"none",a_tab:"li-signup",p_tab:"li-login"});});$("user-login-button").addEvent("click",function(){self._changeFormState(self.signup,true);return self._activateAuthForm({active:self.login,signup:"none",login:"block",a_tab:"li-login",p_tab:"li-signup"});});},_activateAuthForm:function(props){this.active_form=props.active;$("user-signup-block").setStyle("display",props.signup);$("user-login-block").setStyle("display",props.login);$(props.p_tab).removeClass("ctab-a");$(props.a_tab).addClass("ctab-a");$(props.a_tab).getElements('a').removeClass("adott");$(props.p_tab).getElements('a').addClass("adott");this._changeFormState(props.active,false);return false;},_changeFormState:function(form,state){for(var i in form.element){form.field(i).dom.input.disabled=state;}},validateAuth:function(){if(this.user==true){return true;}
return this.active_form.validate();}});var OrderLoginForm=new Class({Extends:BaseLoginForm,initialize:function(){this.dialog=$("order-login-form");this.parent();},_initMessages:function(){return true;}});var OrderSignupForm=new Class({Extends:BaseSignupForm,initialize:function(){this.parent();var element={phone_code:new Field("phone_code",this.dialog),phone:new Field("phone",this.dialog)}
this.element=$extend(this.element,element);this.field("phone_code").dom.input.addEvent("focus",function(){if(this.value==$Locale.ModOrder.PHONE_CODE_TITLE()){this.value="";}});this.field("phone_code").dom.input.addEvent("blur",function(){if(this.value==""){this.value=$Locale.ModOrder.PHONE_CODE_TITLE();}});this.field("phone").dom.input.addEvent("focus",function(){if(this.value==$Locale.ModOrder.PHONE_NUMBER_TITLE()){this.value="";}});this.field("phone").dom.input.addEvent("blur",function(){if(this.value==""){this.value=$Locale.ModOrder.PHONE_NUMBER_TITLE();}});},validate:function(){var phone_validate=this.phoneValidate();var result=this.parent();if(this.field("acept_user").dom.input.checked==false){this.field("acept_user").error("CRuleNotEmpty").setStyle("display","block");result=false;}
return result;},_initButtons:function(){return false;},phoneValidate:function(){if(this.field("phone_code").value()!=$Locale.ModOrder.PHONE_CODE_TITLE()){this.field("phone_code").addError("CRuleNumberFormat").addRule(new CRuleNumberFormat("phone_code",false));}else{this.field("phone_code").value("");}
if(this.field("phone").value()!=$Locale.ModOrder.PHONE_NUMBER_TITLE()){this.field("phone").addError("CRuleNumberFormat").addRule(new CRuleNumberFormat("phone",false));}else{this.field("phone").value("");}}});