Esempio n. 1
0
 /**
  * Process before maching the routes
  *
  * @return unknown
  */
 protected function _beforeModuleMatch()
 {
     if (!$this->validateRoute()) {
         return false;
     }
     $session = App_Main::getAdminSession();
     /* @var $session Core_Model_Session */
     $request = App_Main::getRequest();
     $user = $session->getUser();
     if ($request->getActionName() == 'forgotpassword' || $request->getActionName() == 'logout') {
         $request->setDispatched(true);
     } else {
         if ($user) {
             $user->reload();
         }
         if (!$user || !$user->getId()) {
             if ($request->getPost('login')) {
                 $postLogin = $request->getPost('login');
                 $username = isset($postLogin['username']) ? $postLogin['username'] : '';
                 $password = isset($postLogin['password']) ? $postLogin['password'] : '';
                 $user = $session->login($username, $password, $request);
                 $request->setPost('login', null);
             }
             if (!$request->getParam('forwarded')) {
                 $request->setParam('forwarded', true)->setRouteName('admin')->setControllerName('index')->setActionName('login')->setDispatched(false);
                 return true;
             }
         }
     }
     return true;
 }
Esempio n. 2
0
 /**
  * Login to the admin area 
  */
 public function loginAction()
 {
     if (App_Main::getAdminSession()->isLoggedIn()) {
         $this->_redirect('*');
         return;
     }
     $loginData = $this->getRequest()->getParam('login');
     $data = array();
     if (is_array($loginData) && array_key_exists('username', $loginData)) {
         $data['username'] = $loginData['username'];
     } else {
         $data['username'] = null;
     }
     $this->_outTemplate('login', $data);
 }
Esempio n. 3
0
 /**
  * Get the admin session
  * 
  * @return Admin_Model_Session 
  */
 public function _getSession()
 {
     return App_Main::getAdminSession();
 }