contactView.as 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. import com.imt.intimamedia.events.user.PostEvent;
  2. import com.imt.intimamedia.helpers.FormatString;
  3. import com.imt.intimamedia.helpers.WindowShadeButton;
  4. import com.imt.intimamedia.model.*;
  5. import com.imt.intimamedia.views.common.ImtToaster;
  6. import com.imt.intimamedia.vo.MessageVo;
  7. import flash.display.MovieClip;
  8. import flash.events.Event;
  9. import flash.events.MouseEvent;
  10. import flexlib.scheduling.Timeline;
  11. import mx.containers.ViewStack;
  12. import mx.controls.Alert;
  13. import mx.controls.CheckBox;
  14. import mx.events.ValidationResultEvent;
  15. import mx.resources.ResourceManager;
  16. import mx.validators.Validator;
  17. [Bindable]
  18. private var _model : ApplicationModelLocator = ApplicationModelLocator.getInstance();
  19. private function onPost( event : MouseEvent ) : void
  20. {
  21. var toastMessage : ImtToaster = new ImtToaster();
  22. var validators : Array = [ mailValidator, lastNameValidator, firstNameValidator, organizationValidator, messageValidator ];
  23. var validatorsError : Array = Validator.validateAll( validators );
  24. if( validatorsError.length != 0 )
  25. {
  26. toastMessage = new ImtToaster();
  27. toastMessage.titleMessage = ResourceManager.getInstance().getString('labels', 'error.allFieldsTitle');
  28. toastMessage.timeToLive = 7;
  29. toastMessage.message = ResourceManager.getInstance().getString('labels', 'error.allFieldsError');
  30. toastMessage.level = ImtToaster.WARNING;
  31. _model.toaster.toast( toastMessage );
  32. }
  33. else
  34. {
  35. var msgVo : MessageVo = new MessageVo();
  36. msgVo.mail = mailTextInput.text;
  37. msgVo.firstname = firstNameTextInput.text;
  38. msgVo.lastname = lastNameTextInput.text;
  39. msgVo.organization = organizationTextInput.text;
  40. msgVo.phone = phoneTextInput.text;
  41. msgVo.message = formMessageTextInput.text;
  42. new PostEvent( msgVo, this ).dispatch();
  43. sendButton.enabled = false;
  44. }
  45. }
  46. public function returnToContact() : void
  47. {
  48. var toastMessage : ImtToaster = new ImtToaster();
  49. toastMessage = new ImtToaster();
  50. toastMessage.titleMessage = ResourceManager.getInstance().getString('labels', 'info.title');
  51. toastMessage.message = ResourceManager.getInstance().getString('labels', 'info.contactMsg');
  52. toastMessage.level = ImtToaster.INFORMATION;
  53. _model.toaster.toast( toastMessage );
  54. mailTextInput.text = "";
  55. firstNameTextInput.text = "";
  56. lastNameTextInput.text = "";
  57. organizationTextInput.text = "";
  58. phoneTextInput.text = "";
  59. formMessageTextInput.text = "";
  60. }
  61. private function setFieldError() : void
  62. {
  63. mailValidator.requiredFieldError = ResourceManager.getInstance().getString('labels', 'required');
  64. mailValidator.invalidCharError = ResourceManager.getInstance().getString('labels', 'errorField');
  65. mailValidator.invalidDomainError = ResourceManager.getInstance().getString('labels', 'errorField');
  66. mailValidator.invalidIPDomainError = ResourceManager.getInstance().getString('labels', 'errorField');
  67. mailValidator.invalidPeriodsInDomainError = ResourceManager.getInstance().getString('labels', 'errorField');
  68. mailValidator.missingAtSignError = ResourceManager.getInstance().getString('labels', 'errorField');
  69. mailValidator.missingPeriodInDomainError = ResourceManager.getInstance().getString('labels', 'errorField');
  70. mailValidator.missingUsernameError = ResourceManager.getInstance().getString('labels', 'errorField');
  71. mailValidator.tooManyAtSignsError = ResourceManager.getInstance().getString('labels', 'errorField');
  72. lastNameValidator.requiredFieldError = ResourceManager.getInstance().getString('labels', 'required');
  73. firstNameValidator.requiredFieldError = ResourceManager.getInstance().getString('labels', 'required');
  74. organizationValidator.requiredFieldError = ResourceManager.getInstance().getString('labels', 'required');
  75. messageValidator.requiredFieldError = ResourceManager.getInstance().getString('labels', 'required');
  76. }
  77. private function initListeners() : void
  78. {
  79. setFieldError();
  80. mailValidator.addEventListener(ValidationResultEvent.VALID, mailValidatorHandler);
  81. lastNameValidator.addEventListener(ValidationResultEvent.VALID, stringValidatorHandler);
  82. firstNameValidator.addEventListener(ValidationResultEvent.VALID, stringValidatorHandler);
  83. organizationValidator.addEventListener(ValidationResultEvent.VALID, stringValidatorHandler);
  84. messageValidator.addEventListener(ValidationResultEvent.VALID, stringValidatorHandler);
  85. }
  86. public function updateErrorStrings() : void
  87. {
  88. setFieldError();
  89. if (mailTextInput.errorString)
  90. mailTextInput.errorString = ResourceManager.getInstance().getString('labels', 'errorField');
  91. if (lastNameTextInput.errorString)
  92. lastNameTextInput.errorString = ResourceManager.getInstance().getString('labels', 'errorField');
  93. if (firstNameTextInput.errorString)
  94. firstNameTextInput.errorString = ResourceManager.getInstance().getString('labels', 'errorField');
  95. if (organizationTextInput.errorString)
  96. organizationTextInput.errorString = ResourceManager.getInstance().getString('labels', 'errorField');
  97. if (formMessageTextInput.errorString)
  98. formMessageTextInput.errorString = ResourceManager.getInstance().getString('labels', 'errorField');
  99. }
  100. private function mailValidatorHandler() : void
  101. {
  102. if (mailTextInput.errorString)
  103. mailTextInput.errorString = null;
  104. }
  105. private function stringValidatorHandler(event : ValidationResultEvent) : void
  106. {
  107. if (event.currentTarget.source.errorString)
  108. event.currentTarget.source.errorString = null;
  109. }