|
433 | 433 | });
|
434 | 434 |
|
435 | 435 | /*
|
436 |
| - * Check password content depending on following parameters: |
437 |
| - * data-validation-require-uc-letter, |
| 436 | + * Check password content depending on following parameters: |
| 437 | + * data-validation-require-uc-letter, |
438 | 438 | * data-validation-require-lc-letter,
|
439 | 439 | * data-validation-require-special-char,
|
440 | 440 | * data-validation-require-numeral
|
441 |
| - * |
442 | 441 | */
|
443 | 442 | $.formUtils.addValidator({
|
444 | 443 | name : 'complexity',
|
| 444 | + validatorFunction : function(value, $input, config, language) { |
| 445 | + var numRequiredUppercaseChars = $input.valAttr('require-uc-letter') || '0', |
| 446 | + numRequiredLowercaseChars = $input.valAttr('require-lc-letter') || '0', |
| 447 | + numRequiredSpecialChars = $input.valAttr('require-special-char') || '0', |
| 448 | + numRequiredNumericChars = $input.valAttr('require-numeral') || '0', |
| 449 | + subValidators = { |
| 450 | + 'uc-letter': { |
| 451 | + pattern: '^(?=(?:.*[A-Z]){'+numRequiredUppercaseChars+',}).+', |
| 452 | + numRequired: numRequiredUppercaseChars, |
| 453 | + dialogEnd: language.passwordComplexityUppercaseInfo |
| 454 | + }, |
| 455 | + 'lc-letter': { |
| 456 | + pattern: '^(?=(?:.*[a-z]){'+numRequiredLowercaseChars+',}).+', |
| 457 | + numRequired: numRequiredLowercaseChars, |
| 458 | + dialogEnd: language.passwordComplexityLowercaseInfo |
| 459 | + }, |
| 460 | + 'special-char': { |
| 461 | + pattern: '^(?=(?:.*(_|[!"#$%&\'()*+\\\\,-./:;<=>?@[\\]^_`{|}~])){'+numRequiredSpecialChars+',}).+', |
| 462 | + numRequired: numRequiredSpecialChars, |
| 463 | + dialogEnd: language.passwordComplexitySpecialCharsInfo |
| 464 | + }, |
| 465 | + 'numeral': { |
| 466 | + pattern: '^(?=(?:.*\\d){'+numRequiredNumericChars+',}).+', |
| 467 | + numRequired: numRequiredNumericChars, |
| 468 | + dialogEnd: $.formUtils.LANG.passwordComplexityNumericCharsInfo |
| 469 | + } |
| 470 | + }, |
| 471 | + errorMessage = ''; |
| 472 | + |
| 473 | + $.each(subValidators, function(name, subValidator) { |
| 474 | + var numRequired = parseInt(subValidator.numRequired, 10); |
| 475 | + if (numRequired) { |
| 476 | + var regexp = new RegExp(subValidator.pattern); |
| 477 | + if (!regexp.test(value)) { |
| 478 | + if (errorMessage === '') { |
| 479 | + errorMessage = language.passwordComplexityStart; |
| 480 | + } |
| 481 | + errorMessage += language.passwordComplexitySeparator + numRequired + subValidator.dialogEnd; |
| 482 | + $input.trigger('complexityValidation', [false, name]); |
| 483 | + } else { |
| 484 | + $input.trigger('complexityValidation', [true, name]); |
| 485 | + } |
| 486 | + } |
| 487 | + }); |
| 488 | + |
| 489 | + if (errorMessage) { |
| 490 | + this.errorMessage = errorMessage + language.passwordComplexityEnd; |
| 491 | + return false; |
| 492 | + } else { |
| 493 | + return true; |
| 494 | + } |
| 495 | + }, |
| 496 | + errorMessage : '', |
| 497 | + errorMessageKey: '' |
| 498 | + }); |
| 499 | +/* |
| 500 | + $.formUtils.addValidator({ |
| 501 | + name : '_complexity', |
445 | 502 | validatorFunction : function(val, $el) {
|
446 |
| - var numRequiredUppercaseChars = $el.valAttr('require-uc-letter') || '0', |
447 |
| - numRequiredLowercaseChars = $el.valAttr('require-lc-letter') || '0', |
448 |
| - numRequiredSpecialChars = $el.valAttr('require-special-char') || '0', |
449 |
| - numRequiredNumericChars = $el.valAttr('require-numeral') || '0', |
| 503 | + var numRequiredUppercaseChars = $el.valAttr('require-uc-letter') || 0, |
| 504 | + numRequiredLowercaseChars = $el.valAttr('require-lc-letter') || 0, |
| 505 | + numRequiredSpecialChars = $el.valAttr('require-special-char') || 0, |
| 506 | + numRequiredNumericChars = $el.valAttr('require-numeral') || 0, |
450 | 507 | patternUpperCaseChars = '^(?=(?:.*[A-Z]){'+numRequiredUppercaseChars+',}).+',
|
451 | 508 | patternLowerCaseChars = '^(?=(?:.*[a-z]){'+numRequiredLowercaseChars+',}).+',
|
452 | 509 | patternSpecialChars = '^(?=(?:.*(_|[!"#$%&\'()*+\\\\,-./:;<=>?@[\\]^_`{|}~])){'+numRequiredSpecialChars+',}).+',
|
|
458 | 515 | error = false,
|
459 | 516 | message_error = '';
|
460 | 517 |
|
| 518 | + var subValidators = { |
| 519 | + 'uc-letter': { |
| 520 | + regex: '^(?=(?:.*[A-Z]){'+numRequiredUppercaseChars+',}).+' |
| 521 | + }, |
| 522 | + 'lc-letter': { |
| 523 | + regex: '^(?=(?:.*[a-z]){'+numRequiredLowercaseChars+',}).+' |
| 524 | + }, |
| 525 | + 'special-char': { |
| 526 | + regex: '^(?=(?:.*(_|[!"#$%&\'()*+\\\\,-./:;<=>?@[\\]^_`{|}~])){'+numRequiredSpecialChars+',}).+', |
| 527 | + }, |
| 528 | + 'numeral': { |
| 529 | + regex: '^(?=(?:.*\\d){'+numRequiredNumericChars+',}).+' |
| 530 | + } |
| 531 | + }; |
| 532 | +
|
461 | 533 | if (numRequiredUppercaseChars !== '0'){
|
462 | 534 | resultRegExpRequiredUppercaseChars = new RegExp(patternUpperCaseChars).test(val);
|
463 | 535 | }
|
|
482 | 554 | else{
|
483 | 555 | error = true;
|
484 | 556 | message_error = $.formUtils.LANG.passwordComplexityStart + numRequiredLowercaseChars + $.formUtils.LANG.passwordComplexityLowercaseInfo;
|
485 |
| - } |
| 557 | + } |
486 | 558 | }
|
487 | 559 | if (!resultRegExpRequiredSpecialChars){
|
488 | 560 | if (error){
|
|
511 | 583 | errorMessage : '',
|
512 | 584 | errorMessageKey: ''
|
513 | 585 | });
|
| 586 | +*/ |
514 | 587 | /*
|
515 | 588 | * Google reCaptcha 2
|
516 | 589 | */
|
|
0 commit comments