Guest User

Untitled

a guest
Mar 16th, 2018
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.49 KB | None | 0 0
  1. <form class="form-horizontal form-label-left" method="post" id="AddUserForm"
  2. data-ui-jq="parsley"
  3. data-parsley-remote
  4. data-parsley-priority-enabled="false"
  5. novalidate="novalidate">
  6. <fieldset>
  7. <legend>
  8. By default validation is started only after at least 3 characters have been input.
  9. </legend>
  10. <div class="form-group">
  11. <label class="control-label col-sm-3" for="basic">User Name</label>
  12. <div class="col-sm-9">
  13. <input type="text" name="userName" class="form-control" data-ng-model="user.userName" value=""
  14. data-parsley-remote
  15. data-parsley-remote-validator='checkusername'
  16. data-parsley-trigger="focusout"
  17. data-parsley-remote-message="User name is already registerd in the system"
  18. required="required" />
  19.  
  20. <span class="help-block">
  21. Username must be unique
  22. </span>
  23. </div>
  24. </div>
  25.  
  26. <div class="form-group">
  27. <label class="control-label col-sm-3" for="email">
  28. E-mail
  29. </label>
  30. <div class="col-sm-9">
  31. <input type="email" id="email" name="email" class="form-control" data-ng-model="user.email"
  32. data-parsley-remote
  33. data-parsley-remote-validator='checkemail'
  34. data-parsley-trigger="focusout"
  35. data-parsley-remote-message="Email is already registerd in the system"
  36. required="required" />
  37. <span class="help-block">
  38. Email must be unique
  39. </span>
  40. </div>
  41. </div>
  42.  
  43.  
  44. <div class="form-group">
  45. <label class="control-label col-sm-3" for="password">
  46. Password:
  47. </label>
  48. <div class="col-sm-9">
  49. <input type="password" id="password" name="password" class="form-control mb-sm" data-ng-model="user.password"
  50. data-parsley-trigger="change"
  51. data-parsley-minlength="6"
  52. required="required" />
  53. <input type="password" id="password-r" name="password-r" class="form-control" placeholder="Confrim Password" data-ng-model="user.confirmPassword"
  54. data-parsley-trigger="change"
  55. data-parsley-minlength="6"
  56. data-parsley-equalto="#password"
  57. required="required" />
  58. </div>
  59. </div>
  60. </fieldset>
  61. <div class="form-actions">
  62. <button type="submit" data-ng-click="AddNewUser($event)" class="btn btn-danger btn-rounded pull-right">Validate & Submit</button>
  63. <button type="button" class="btn btn-default btn-rounded">Cancel</button>
  64. </div>
  65. </form>
  66.  
  67. window.ParsleyExtend = {
  68. asyncValidators: {
  69. checkusername: {
  70. fn: function (xhr) {
  71. console.log($('[name="userName"]'));
  72. return 404 === xhr.status;
  73.  
  74. },
  75. url: authService.serviceBase + 'api/account/CheckUserName/' //+ $('[name="userName"]').text()
  76.  
  77.  
  78. },
  79. checkemail: {
  80. fn: function (xhr) {
  81.  
  82. console.log($('[name="email"]'));
  83.  
  84. return 404 === xhr.status;
  85. },
  86. url: authService.serviceBase + 'api/account/CheckEmail/'// + $('[name="email"]').text()
  87. }
  88. }
  89. };
  90.  
  91. $scope.AddNewUser = function ($event) {
  92.  
  93. $event.preventDefault();
  94. //THis resturns true allways when the remote validation is not valid,, but when other non remote valdiation happens is works fine
  95. $('#AddUserForm').parsley().validate();
  96. //and this if statement resturns true allways even when the remote validation is not valid,, but when other non remote valdiation happens is works fine
  97. if ($('#AddUserForm').parsley().isValid()) {
  98. authService.saveRegistration($scope.user).then(function (response) {
  99.  
  100. $scope.savedSuccessfully = true;
  101.  
  102. // $scope.message = "User has been registered successfully, you will be redicted to login page in 2 seconds.";
  103. //startTimer();
  104.  
  105. },
  106. function (response) {
  107. var errors = [];
  108. for (var key in response.data.modelState) {
  109. for (var i = 0; i < response.data.modelState[key].length; i++) {
  110. errors.push(response.data.modelState[key][i]);
  111. }
  112. }
  113. $scope.message = "Failed to register user due to:" + errors.join(' ');
  114. });
  115. }
  116. };
  117.  
  118. $('#AddUserForm').parsley().asyncValidate();
  119.  
  120. if($('#AddUserForm').parsley().isValid() && $('#AddUserForm').parsley().isAsyncValid()) {
  121.  
  122. ....}
  123.  
  124. $(function() {
  125. var ok;
  126. $('#signup').parsley().on('field:validated', function() {
  127. ok = $('.parsley-error').length === 0;
  128. })
  129. .on('form:submit', function() {
  130. if (ok) return true;
  131. else return false;
  132. });
  133. });
  134.  
  135. Parsley.addAsyncValidator('checkExists', function(xhr) {
  136. return false === xhr.responseJSON;
  137. }, '/data-management/verify-data?filter=signup');
Add Comment
Please, Sign In to add comment