From 778a2996df3ae454553d0fbf33d703d1c857447a Mon Sep 17 00:00:00 2001 From: Antonio de la Rosa Date: Wed, 29 Apr 2015 03:07:40 +0200 Subject: [PATCH] Added passwordfield --- src/CoreFields/PasswordField.php | 69 ++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 src/CoreFields/PasswordField.php diff --git a/src/CoreFields/PasswordField.php b/src/CoreFields/PasswordField.php new file mode 100644 index 0000000..09f203e --- /dev/null +++ b/src/CoreFields/PasswordField.php @@ -0,0 +1,69 @@ + +* @file +* @package ExtraFields +* +*/ + +namespace PhangoApp\PhaModels\CoreFields; +use PhangoApp\PhaUtils\Utils; + +class PasswordField extends CharField { + + + function __construct($size=255) + { + + $this->size=$size; + $this->form='PasswordForm'; + + } + + public function check($value) + { + + $value=trim($value); + + if($value=='') + { + + return ''; + + } + + $token_pass=Utils::generate_random_password(); + + $hash_password=$token_pass.'_'.sha1($token_pass.'_'.$value); + + return $hash_password; + + } + + //I load the password with the username and check here. + + static public function check_password($value, $hash_password_check) + { + + //If pass have _ check if work fine... + + $token_pass=preg_replace('/(.*)[_].*/', '$1', $hash_password_check); + + $hash_password=$token_pass.'_'.sha1($token_pass.'_'.$value); + + if($hash_password==$hash_password_check) + { + + return true; + + } + + return false; + + } + +} + +?> \ No newline at end of file