From 74216a3c636673fd49e82a7c31c0c9ed1de60e7f Mon Sep 17 00:00:00 2001 From: Tim Almdal Date: Wed, 12 Nov 2008 21:42:40 +0000 Subject: The login processing is starting to take shape. Login_Form is gone. The html for the login form is retrieve via an ajax call when the user clicks on login. Can't login with a valid id yet, but you certainly get error messages when things are wrong :-) --- modules/user/controllers/login.php | 29 ++++++++++++++++++----- modules/user/libraries/Login_Form.php | 44 ----------------------------------- modules/user/views/login.html.php | 41 ++++++++++++++++---------------- 3 files changed, 43 insertions(+), 71 deletions(-) delete mode 100644 modules/user/libraries/Login_Form.php (limited to 'modules') diff --git a/modules/user/controllers/login.php b/modules/user/controllers/login.php index e6f10ec8..991fa73b 100644 --- a/modules/user/controllers/login.php +++ b/modules/user/controllers/login.php @@ -19,24 +19,41 @@ */ class Login_Controller extends Controller { public function index() { - $this->template->title = "User Login"; + Kohana::log("debug", "Login_Controller/index"); + $form = new Forge(); + $form->input("username")->rules("required|length[4,32]"); + $form->password("password")->rules("required|length[5,40]"); + $form->submit("Login"); + print $form->render("login.html", true); + } + + public function process() { + Kohana::log("debug", "Login_Controller/process"); - $form = new Login_Form(); + Kohana::log("debug", print_r($_POST, true)); + $form = new Forge("login.html", true); + $form->input("username")->rules("required|length[4,32]"); + $form->password("password")->rules("required|length[5,40]"); + $form->submit("Login"); + $response = array(); if ($form->validate()) { // Load the user $user = ORM::factory("user")->where("name", $form->username->value)->find(); if (!$user->loaded) { - $form->error_message = "Invalid username or password"; + $response["error_message"] = "Invalid username or password"; } else { if (user::is_correct_password($user,$form->password->value)) { user::login($user); - url::redirect("user/success.html"); + $response["error_message"] = ""; } else { - $form->error_message = "Invalid username or password"; + $response["error_message"] = "Invalid username or password"; } } + } else { + $response["error_message"] = "Invalid username or password"; } - $form->render(); + + print json_encode($response); } } \ No newline at end of file diff --git a/modules/user/libraries/Login_Form.php b/modules/user/libraries/Login_Form.php deleted file mode 100644 index 6874cbd4..00000000 --- a/modules/user/libraries/Login_Form.php +++ /dev/null @@ -1,44 +0,0 @@ -legend="Login"; - $this->input("username")->rules("required|length[4,32]"); - $this->password("password")->rules("required|length[5,40]"); - $this->submit("Login"); - } - - public function render($template = 'login.html', $custom = true) { - $form = parent::render($template, $custom); - $form->error_message = $this->error_message; - return $form; - } - - public function __set($key, $value) { - $this->$key = $value; - } -} \ No newline at end of file diff --git a/modules/user/views/login.html.php b/modules/user/views/login.html.php index 58df6024..fb770f3f 100644 --- a/modules/user/views/login.html.php +++ b/modules/user/views/login.html.php @@ -1,24 +1,23 @@ -
- Login - +
+
+
+
+
+ -- cgit v1.2.3