74 lines
2.2 KiB
PHP
74 lines
2.2 KiB
PHP
|
<?php defined('SYSPATH') or die('No direct access allowed.');
|
||
|
|
||
|
/**
|
||
|
* This class provides login capability
|
||
|
*
|
||
|
* @package lnApp
|
||
|
* @category lnApp/Controllers
|
||
|
* @author Deon George
|
||
|
* @copyright (c) 2009-2013 Deon George
|
||
|
* @license http://dev.leenooks.net/license.html
|
||
|
* @also [logout]
|
||
|
*/
|
||
|
class lnApp_Controller_Login extends Controller_TemplateDefault {
|
||
|
protected $auth_required = FALSE;
|
||
|
|
||
|
public function action_index() {
|
||
|
// If user already signed-in
|
||
|
if (Auth::instance()->logged_in() != 0) {
|
||
|
// Redirect to the user account
|
||
|
HTTP::redirect(URL::link('user','welcome/index'));
|
||
|
}
|
||
|
|
||
|
// If there is a post and $_POST is not empty
|
||
|
if ($_POST) {
|
||
|
// Store our details in a session key
|
||
|
Session::instance()->set(Kohana::$config->load('auth')->session_key,$_POST['username']);
|
||
|
Session::instance()->set('password',$_POST['password']);
|
||
|
|
||
|
// If the post data validates using the rules setup in the user model
|
||
|
if (Auth::instance()->login($_POST['username'],$_POST['password'])) {
|
||
|
// Redirect to the user account
|
||
|
if ($redir = Session::instance()->get('afterlogin')) {
|
||
|
Session::instance()->delete('afterlogin');
|
||
|
HTTP::redirect($redir);
|
||
|
|
||
|
} else
|
||
|
HTTP::redirect(URL::link('user','welcome/index'));
|
||
|
|
||
|
} else {
|
||
|
// We are not successful logging in, so delete our session data
|
||
|
Session::instance()->delete(Kohana::$config->load('auth')->session_key);
|
||
|
Session::instance()->delete('password');
|
||
|
|
||
|
SystemMessage::add(array(
|
||
|
'title'=>_('Invalid username or password'),
|
||
|
'type'=>'error',
|
||
|
'body'=>_('The username or password was invalid.')
|
||
|
));
|
||
|
}
|
||
|
}
|
||
|
|
||
|
Block::add(array(
|
||
|
'title'=>_('Login to server'),
|
||
|
'body'=>View::factory('login'),
|
||
|
'style'=>array('css/login.css'=>'screen'),
|
||
|
));
|
||
|
|
||
|
Script::add(array('type'=>'stdin','data'=>'
|
||
|
$(document).ready(function() {
|
||
|
$("#ajxbody").click(function() {$("#ajBODY").load("'.$this->request->uri().'/"); return false;});
|
||
|
});'
|
||
|
));
|
||
|
}
|
||
|
|
||
|
public function action_noaccess() {
|
||
|
SystemMessage::add(array(
|
||
|
'title'=>_('No access to requested resource'),
|
||
|
'type'=>'error',
|
||
|
'body'=>_('You do not have access to the requested resource, please contact your administrator.')
|
||
|
));
|
||
|
}
|
||
|
}
|
||
|
?>
|