Example #1
0
 private function filterRoutes(AppRequest $appRequest)
 {
     foreach ($this->pageRoutes as $key => $pageRoute) {
         if ($pageRoute->comparePath($appRequest->getRequestUrl())) {
             return $pageRoute->getFile();
         }
     }
     return $this->getDefaultPage();
 }
 public function validateToken(AppRequest &$appRequest, $authTokenName)
 {
     if (!isset($appRequest->getAllHeaders()[$authTokenName]) || empty($appRequest->getAllHeaders()[$authTokenName])) {
         return false;
     }
     $result = $this->getValidationTokenByToken($appRequest->getAllHeaders()[$authTokenName]);
     if (empty($result)) {
         return false;
     }
     $this->updateTokenLastActiveDate($result);
     $appRequest->setAuthToken($result);
     return true;
 }
 private function _callControllerMethod(AppRequest $appRequest, ControllerRoute $route)
 {
     if (!method_exists($this->calledController, $route->getRoutePointer()->getMethodName())) {
         throw new AemosCriticalException("unknown page method", HttpStatusCode::notFound());
     }
     call_user_func_array(array($this->calledController, $route->getRoutePointer()->getMethodName()), $route->getParameters($appRequest->getRequestUrl()));
 }
Example #4
0
 public static function getInstance()
 {
     // проверяем актуальность экземпляра
     if (null === self::$_instance) {
         // создаем новый экземпляр
         self::$_instance = new self();
     }
     // возвращаем созданный или существующий экземпляр
     return self::$_instance;
 }
Example #5
0
 /**
  * Get all headers from Server environment
  * saves the headers array to static variable
  *
  * @return void
  */
 private static function parseRequestHeaders()
 {
     $headers = [];
     foreach ($_SERVER as $key => $value) {
         if (substr($key, 0, 5) != 'HTTP_') {
             continue;
         }
         $header = str_replace(' ', '-', ucwords(str_replace('_', ' ', strtolower(substr($key, 5)))));
         $headers[$header] = $value;
     }
     self::$headers = $headers;
 }
 private function hasRole(AppRequest $appRequest, SecurityRoute $securityRoute)
 {
     if (empty($securityRoute->getRoles())) {
         return true;
     }
     $authTokenRole = $appRequest->getAuthToken()->getUserRole();
     foreach ($securityRoute->getRoles() as $role) {
         if ($role === $authTokenRole) {
             return true;
         }
     }
     return false;
 }