public function addJobAction() { if (!$this->getServiceLocator()->get('AuthStatus')->hasIdentity()) { return $this->redirect()->toRoute('login'); } $form = new JobsForm(); $form->get('submit')->setValue('Submit'); /** @var \Zend\Http\PhpEnvironment\Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $validate = new JobsFilter(); $form->setInputFilter($validate->getInputFilter()); $form->setData($request->getPost()); if ($form->isValid()) { $validate->exchangeArray($form->getData()); $hydrator = new Hydrator\ObjectProperty(); $job = new Job(); $data = $hydrator->extract($request->getPost()); $hydrator->hydrate($data, $job); $auth = new AuthAccess(); if ($this->getServiceLocator()->get('AuthStatus')->hasIdentity()) { $job->author = $auth->getRealName(); $job->date_submitted = time(); $this->getJobsTable()->addJob($job); $submission = (string) $this->getJobsTable()->getId(); return $this->redirect()->toRoute('showaddedjob', array('action' => 'showaddedjob', 'param' => $submission)); } else { $this->redirect()->toRoute('login'); } } } return array('form' => $form); }
public function loginAction() { $form = new LoginForm(); $form->get('submit')->setValue('Login'); /** @var \Zend\Http\PhpEnvironment\Request $request */ $request = $this->getRequest(); $referer = $request->getHeader('referer'); if ($referer === false) { return $this->redirect()->toRoute('home'); } else { $referer_path = $referer->uri()->getPath(); } $current_path = $request->getUri()->getPath(); $_SESSION['referer_path'] = $referer_path; if ($request->isPost()) { $validate = new LoginFilter(); $form->setInputFilter($validate->getInputFilter()); $form->setData($request->getPost()); if ($form->isValid()) { $validate->exchangeArray($form->getData()); $ident = $validate->getInputFilter()->getValue('name'); $password = $validate->getInputFilter()->getValue('password'); $auth = new AuthAccess(); $authenticated = $auth->isAuthenticated($ident, $password); if ($authenticated) { $redirect_path = $_SESSION['referer_path']; if ($redirect_path == '/') { $this->redirect()->toRoute('home'); } elseif ($redirect_path == $current_path) { $this->redirect()->toRoute('home'); } $redirect_route = str_replace('/', '', $redirect_path); $this->redirect()->toRoute($redirect_route); } else { $this->redirect()->toRoute('login'); } } } return array('form' => $form); }
public function __invoke() { $auth = new AuthAccess(); return htmlspecialchars($auth->getRealName()); }
public function __invoke() { $auth = new AuthAccess(); return $auth->hasIdentity(); }