import com.imt.intimamedia.events.user.PostEvent; import com.imt.intimamedia.helpers.FormatString; import com.imt.intimamedia.helpers.WindowShadeButton; import com.imt.intimamedia.model.*; import com.imt.intimamedia.views.common.ImtToaster; import com.imt.intimamedia.vo.MessageVo; import flash.display.MovieClip; import flash.events.Event; import flash.events.MouseEvent; import flexlib.scheduling.Timeline; import mx.containers.ViewStack; import mx.controls.Alert; import mx.controls.CheckBox; import mx.events.ValidationResultEvent; import mx.resources.ResourceManager; import mx.validators.Validator; [Bindable] private var _model : ApplicationModelLocator = ApplicationModelLocator.getInstance(); private function onPost( event : MouseEvent ) : void { var toastMessage : ImtToaster = new ImtToaster(); var validators : Array = [ mailValidator, lastNameValidator, firstNameValidator, organizationValidator, messageValidator ]; var validatorsError : Array = Validator.validateAll( validators ); if( validatorsError.length != 0 ) { toastMessage = new ImtToaster(); toastMessage.titleMessage = ResourceManager.getInstance().getString('labels', 'error.allFieldsTitle'); toastMessage.timeToLive = 7; toastMessage.message = ResourceManager.getInstance().getString('labels', 'error.allFieldsError'); toastMessage.level = ImtToaster.WARNING; _model.toaster.toast( toastMessage ); } else { var msgVo : MessageVo = new MessageVo(); msgVo.mail = mailTextInput.text; msgVo.firstname = firstNameTextInput.text; msgVo.lastname = lastNameTextInput.text; msgVo.organization = organizationTextInput.text; msgVo.phone = phoneTextInput.text; msgVo.message = formMessageTextInput.text; new PostEvent( msgVo, this ).dispatch(); sendButton.enabled = false; } } public function returnToContact() : void { var toastMessage : ImtToaster = new ImtToaster(); toastMessage = new ImtToaster(); toastMessage.titleMessage = ResourceManager.getInstance().getString('labels', 'info.title'); toastMessage.message = ResourceManager.getInstance().getString('labels', 'info.contactMsg'); toastMessage.level = ImtToaster.INFORMATION; _model.toaster.toast( toastMessage ); mailTextInput.text = ""; firstNameTextInput.text = ""; lastNameTextInput.text = ""; organizationTextInput.text = ""; phoneTextInput.text = ""; formMessageTextInput.text = ""; } private function setFieldError() : void { mailValidator.requiredFieldError = ResourceManager.getInstance().getString('labels', 'required'); mailValidator.invalidCharError = ResourceManager.getInstance().getString('labels', 'errorField'); mailValidator.invalidDomainError = ResourceManager.getInstance().getString('labels', 'errorField'); mailValidator.invalidIPDomainError = ResourceManager.getInstance().getString('labels', 'errorField'); mailValidator.invalidPeriodsInDomainError = ResourceManager.getInstance().getString('labels', 'errorField'); mailValidator.missingAtSignError = ResourceManager.getInstance().getString('labels', 'errorField'); mailValidator.missingPeriodInDomainError = ResourceManager.getInstance().getString('labels', 'errorField'); mailValidator.missingUsernameError = ResourceManager.getInstance().getString('labels', 'errorField'); mailValidator.tooManyAtSignsError = ResourceManager.getInstance().getString('labels', 'errorField'); lastNameValidator.requiredFieldError = ResourceManager.getInstance().getString('labels', 'required'); firstNameValidator.requiredFieldError = ResourceManager.getInstance().getString('labels', 'required'); organizationValidator.requiredFieldError = ResourceManager.getInstance().getString('labels', 'required'); messageValidator.requiredFieldError = ResourceManager.getInstance().getString('labels', 'required'); } private function initListeners() : void { setFieldError(); mailValidator.addEventListener(ValidationResultEvent.VALID, mailValidatorHandler); lastNameValidator.addEventListener(ValidationResultEvent.VALID, stringValidatorHandler); firstNameValidator.addEventListener(ValidationResultEvent.VALID, stringValidatorHandler); organizationValidator.addEventListener(ValidationResultEvent.VALID, stringValidatorHandler); messageValidator.addEventListener(ValidationResultEvent.VALID, stringValidatorHandler); } public function updateErrorStrings() : void { setFieldError(); if (mailTextInput.errorString) mailTextInput.errorString = ResourceManager.getInstance().getString('labels', 'errorField'); if (lastNameTextInput.errorString) lastNameTextInput.errorString = ResourceManager.getInstance().getString('labels', 'errorField'); if (firstNameTextInput.errorString) firstNameTextInput.errorString = ResourceManager.getInstance().getString('labels', 'errorField'); if (organizationTextInput.errorString) organizationTextInput.errorString = ResourceManager.getInstance().getString('labels', 'errorField'); if (formMessageTextInput.errorString) formMessageTextInput.errorString = ResourceManager.getInstance().getString('labels', 'errorField'); } private function mailValidatorHandler() : void { if (mailTextInput.errorString) mailTextInput.errorString = null; } private function stringValidatorHandler(event : ValidationResultEvent) : void { if (event.currentTarget.source.errorString) event.currentTarget.source.errorString = null; }