Advertisement
Guest User

Untitled

a guest
Jul 11th, 2017
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.46 KB | None | 0 0
  1. var timesSubmited = 0;
  2.  
  3. //Regularni izrazi koji ce se koristiti pri proveri
  4. var nameRegex = /^[A-Z][a-z]{1,20}[\s]*$/;
  5. var passwordRegex = /^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{6,}$/;
  6. var emailRegex = /^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;
  7. var urlRegex = /((([A-Za-z]{3,9}:(?:\/\/)?)(?:[\-;:&=\+\$,\w]+@)?[A-Za-z0-9\.\-]+|(?:www\.|[\-;:&=\+\$,\w]+@)[A-Za-z0-9\.\-]+)((?:\/[\+~%\/\.\w\-_]*)?\??(?:[\-\+=&;%@\.\w_]*)#?(?:[\.\!\/\\\w]*))?)/;
  8. var usernameRegex = /^[a-zA-Z0-9\-\_]{3,20}$/;
  9.  
  10. $(document).ready(function() {
  11. //Polja u koje ce se upisivati poruke za gresku pri proveri
  12. userErrorField = $("#usernameError");
  13. emailErrorField = $("#emailError");
  14. passwordErrorField = $("#passwordError");
  15. websiteErrorField = $("#websiteError");
  16. firstNameErrorField = $("#firstNameError");
  17.  
  18. $("#regSubmit").click(function(event) {
  19. timesSubmited++;
  20. var errorsNum = 0;
  21.  
  22. //Vrednosti polja koja ce se koristiti pri proveri
  23. var username = $("#rgUsername").val();
  24. var email = $("#rgEmail").val();
  25. var password = $("#rgPassword").val();
  26. var website = $("#rgWebsite").val();
  27. var firstName = $("#rgFirstName").val();
  28.  
  29. if(!validateFieldValue(nameRegex,firstName,firstNameErrorField,"Invalid name format."))errorsNum++;
  30. if(!validateFieldValue(emailRegex,email,emailErrorField,"Invalid email address format."))errorsNum++;
  31. if(!validateFieldValue(usernameRegex,username,userErrorField,"Words, numbers, - and _ only."))errorsNum++;
  32. if(!validateFieldValue(passwordRegex,password,passwordErrorField,"Min 6 characters, letter and a number."))errorsNum++;
  33.  
  34. if(errorsNum)event.preventDefault();
  35.  
  36.  
  37. });
  38.  
  39. //Provera regularnim izrazima na promenu vrednosti u polju
  40. $("#rgFirstName").keyup(function(event) {
  41. validateFieldValue(nameRegex,event.target.value,firstNameErrorField,"Invalid name format.");
  42. });
  43. $("#rgUsername").keyup(function(event) {
  44. validateFieldValue(usernameRegex,event.target.value,userErrorField,"Words, numbers, - and _ only.");
  45. });
  46. $("#rgEmail").keyup(function(event) {
  47. validateFieldValue(emailRegex,event.target.value,emailErrorField,"Invalid email address format.");
  48. });
  49. $("#rgPassword").keyup(function(event) {
  50. validateFieldValue(passwordRegex,event.target.value,passwordErrorField,"Min 6 characters, letter and a number.");
  51. });
  52. });
  53.  
  54.  
  55. /*
  56. Regex - obrazac na osnovu kog se proverava
  57. ValueToValidate - vrednost iz tekstualnog polja koju treba potvrditi
  58. errorField - polje u kom ce se ispisati error
  59. failedText - poruka koja se salje ako validacija nije uspela
  60. */
  61. function validateFieldValue(regex,valueToValidate,errorField,failedText) {
  62. if (timesSubmited) {
  63. if (valueToValidate != "") {
  64. if (!regex.test(valueToValidate)) {
  65. return fadeInError(errorField, failedText);
  66. }else{
  67. return fadeOutError(errorField);
  68. }
  69. } else {
  70. return fadeInError(errorField, "This field is required.");
  71. }
  72. }
  73. }
  74.  
  75. //Funkcija za prikazivanje gresaka, prosledjuje joj se polje u kom se greska prikazuje
  76. //I tekst greske koju treba da prikaze, kao rezultat vraca false
  77. function fadeInError(field, error) {
  78. field.html("<p style='font-size:0.8rem' class='top-buffer-1'>" + error + "</p>");
  79. field.fadeIn("400");
  80. return false;
  81. }
  82.  
  83. //Funkcija za uklananje prikazane greske, ocekuje polje koje treba da sakrije
  84. //Kao rezultat vraca true
  85. function fadeOutError(field) {
  86. field.fadeOut('400');
  87. return true;
  88. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement