AuthController::indexAction PHP Method

indexAction() public method

public indexAction ( )
    public function indexAction()
    {
        if ($this->auth->hasIdentity()) {
            $this->_helper->redirector('index', 'index');
        }
        $translator = Zend_Registry::get('container')->getService('translator');
        $form = new Application_Form_Login();
        $request = $this->getRequest();
        if ($request->isPost() && $form->isValid($request->getPost())) {
            $values = $form->getValues();
            $adapter = $this->_helper->service('auth.adapter');
            $adapter->setEmail($values['email'])->setPassword($values['password']);
            $result = $this->auth->authenticate($adapter);
            if ($result->getCode() == Zend_Auth_Result::SUCCESS) {
                $expire = null;
                if (!empty($values['remember_me'])) {
                    // set expire to 10 years in the future
                    $expire = time() + 10 * 365 * 24 * 60 * 60;
                }
                setcookie('NO_CACHE', '1', $expire, '/', '.' . $this->extractDomain($_SERVER['HTTP_HOST']));
                if (isset($values['_target_path'])) {
                    $this->_helper->redirector->gotoUrl($values['_target_path']);
                }
                $this->_helper->redirector('index', 'dashboard');
            } else {
                $form->addError($translator->trans("Invalid credentials"));
            }
        }
        $this->view->form = $form;
    }

Usage Example

示例#1
0
 public function route()
 {
     $request = trim(parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH), '/');
     $request_arr = explode('/', $request);
     if ($request == '') {
         $controller = new IndexController($this->service);
         $controller->indexAction();
     } elseif ($request == 'basket') {
         $controller = new BasketController($this->service);
         $controller->indexAction();
     } elseif ($request == 'auth') {
         $controller = new AuthController($this->service);
         $controller->indexAction();
     } elseif ($request == 'reg') {
         $controller = new RegController($this->service);
         $controller->indexAction();
     } elseif ($request == 'admin') {
         $controller = new AdminController($this->service);
         $controller->indexAction();
     } elseif ($request == 'admin/additem') {
         $controller = new AdminController($this->service);
         $controller->additemAction();
     } elseif ($request == 'admin/category') {
         $controller = new AdminController($this->service);
         $controller->categoryAction();
     } elseif ($request == 'admin/catalog') {
         $controller = new AdminController($this->service);
         $controller->catalogAction();
     } elseif ($request == 'admin/orders') {
         $controller = new AdminController($this->service);
         $controller->ordersAction();
     } elseif ($request = 'cat/' . $request_arr[1]) {
         $category_mapper = new CategoryMapper($this->service->get('db'));
         if (!$category_mapper->getCategoryFromCode($request_arr[1])) {
             $this->get404();
         } else {
             $controller = new CatController($this->service);
             $controller->categoryAction($request_arr[1]);
         }
     } else {
         $this->get404();
     }
 }