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;
}
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(); } }