diff options
-rw-r--r-- | application/controllers/user.php | 18 | ||||
-rw-r--r-- | application/views/user/hash_password.php | 26 |
2 files changed, 42 insertions, 2 deletions
diff --git a/application/controllers/user.php b/application/controllers/user.php index a32b930d2..204612b2d 100644 --- a/application/controllers/user.php +++ b/application/controllers/user.php @@ -192,8 +192,22 @@ class User extends CI_Controller { function hash_password() { + $process = $this->input->post("process"); $password = $this->input->post("password"); - echo "hashing $password: "; - echo $this->muser->hash_password($password); + $password_confirm = $this->input->post("password_confirm"); + $this->data["hash"] = false; + $this->data["password"] = $password; + + if ($process) { + if (!$password || $password != $password_confirm) { + $error[]= "No password or passwords don't match."; + } else { + $this->data["hash"] = $this->muser->hash_password($password); + } + } + + $this->load->view($this->var->view_dir.'header', $this->data); + $this->load->view($this->var->view_dir.'hash_password', $this->data); + $this->load->view($this->var->view_dir.'footer', $this->data); } } diff --git a/application/views/user/hash_password.php b/application/views/user/hash_password.php new file mode 100644 index 000000000..a0aa88ce5 --- /dev/null +++ b/application/views/user/hash_password.php @@ -0,0 +1,26 @@ +<?php +if (!empty($error)) { + echo "<p>"; + echo implode("<br />\n", $error); + echo "</p>"; +} + +if ($hash) { + echo "<p>Result (this hash uses a random salt, so it will be different each time you submit this form):<br />$hash</p>\n"; +} +?> +<?php echo form_open('user/hash_password'); ?> + <table> + <tr> + <td>Password</td> + <td> <input type="password" name="password" /></td> + </tr><tr> + <td>Confirm password</td> + <td> <input type="password" name="password_confirm" /></td> + </tr><tr> + <td></td> + <td><input type="submit" value="Hash it" name="process" /></td> + </tr> + </table> +</form> + |