| @@ 463-497 (lines=35) @@ | ||
| 460 | * @param String $password the password. |
|
| 461 | * @return Integer number of different character sets in use. |
|
| 462 | */ |
|
| 463 | protected function get_charset_size( $password ) { |
|
| 464 | $size = 0; |
|
| 465 | ||
| 466 | // Lowercase a-z. |
|
| 467 | if ( preg_match( '/[a-z]/', $password ) ) { |
|
| 468 | $size += 26; |
|
| 469 | } |
|
| 470 | ||
| 471 | // Uppercase A-Z. |
|
| 472 | if ( preg_match( '/[A-Z]/', substr( $password, 1, -1 ) ) ) { |
|
| 473 | $size += 26; |
|
| 474 | } |
|
| 475 | ||
| 476 | // Digits. |
|
| 477 | if ( preg_match( '/\d/', substr( $password, 1, -1 ) ) ) { |
|
| 478 | $size += 10; |
|
| 479 | } |
|
| 480 | ||
| 481 | // Over digits symbols. |
|
| 482 | if ( preg_match( '/[!|@|#|$|%|^|&|*|(|)]/', $password ) ) { |
|
| 483 | $size += 10; |
|
| 484 | } |
|
| 485 | ||
| 486 | // Other symbols. |
|
| 487 | if ( preg_match( '#[`|~|-|_|=|+|\[|{|\]|}|\\|\|;:\'",<\.>/\?]#', $password ) ) { |
|
| 488 | $size += 20; |
|
| 489 | } |
|
| 490 | ||
| 491 | // Spaces. |
|
| 492 | if ( strpos( $password, ' ' ) ) { |
|
| 493 | $size++; |
|
| 494 | } |
|
| 495 | ||
| 496 | return $size; |
|
| 497 | } |
|
| 498 | ||
| 499 | /** |
|
| 500 | * Shorthand for getting a character index. |
|
| @@ 481-515 (lines=35) @@ | ||
| 478 | * |
|
| 479 | * @return int number of different character sets in use. |
|
| 480 | */ |
|
| 481 | protected function get_charset_size( $password ) { |
|
| 482 | $size = 0; |
|
| 483 | ||
| 484 | // Lowercase a-z. |
|
| 485 | if ( preg_match( '/[a-z]/', $password ) ) { |
|
| 486 | $size += 26; |
|
| 487 | } |
|
| 488 | ||
| 489 | // Uppercase A-Z. |
|
| 490 | if ( preg_match( '/[A-Z]/', substr( $password, 1, - 1 ) ) ) { |
|
| 491 | $size += 26; |
|
| 492 | } |
|
| 493 | ||
| 494 | // Digits. |
|
| 495 | if ( preg_match( '/\d/', substr( $password, 1, - 1 ) ) ) { |
|
| 496 | $size += 10; |
|
| 497 | } |
|
| 498 | ||
| 499 | // Over digits symbols. |
|
| 500 | if ( preg_match( '/[!|@|#|$|%|^|&|*|(|)]/', $password ) ) { |
|
| 501 | $size += 10; |
|
| 502 | } |
|
| 503 | ||
| 504 | // Other symbols. |
|
| 505 | if ( preg_match( '#[`|~|-|_|=|+|\[|{|\]|}|\\|\|;:\'",<\.>/\?]#', $password ) ) { |
|
| 506 | $size += 20; |
|
| 507 | } |
|
| 508 | ||
| 509 | // Spaces. |
|
| 510 | if ( strpos( $password, ' ' ) ) { |
|
| 511 | $size ++; |
|
| 512 | } |
|
| 513 | ||
| 514 | return $size; |
|
| 515 | } |
|
| 516 | ||
| 517 | /** |
|
| 518 | * Shorthand for getting a character index. |
|