Пример #1
0
 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);
 }
Пример #3
0
 public function __invoke()
 {
     $auth = new AuthAccess();
     return htmlspecialchars($auth->getRealName());
 }
Пример #4
0
 public function __invoke()
 {
     $auth = new AuthAccess();
     return $auth->hasIdentity();
 }