Пример #1
0
 /**
  * Generic method for serving all http requests
  *
  * @throws Exception
  */
 public static function serveRequest()
 {
     self::regenerateCsrfToken();
     if (self::isValidRequest()) {
         $resource = ResourceProvider::getResource();
         $controller = ResourceProvider::getControllerByResourceKey($resource->getKey());
         if (!empty($controller) && $controller instanceof AbstractController) {
             $controller->run($resource);
         } else {
             throw new Exception("Invalid controller requested, Exiting");
         }
     } else {
         Logger::getLogger()->logWarn('No CSRF token found. IP:' . print_r($_SERVER['REMOTE_ADDR'], true));
         if (self::isAjaxRequest()) {
             Response::sendFailureResponse('Something went wrong!');
         } else {
         }
     }
 }
Пример #2
0
 public function resource($uri)
 {
     $token = $this->token();
     return $this->resource_provider->resource($token, $uri);
 }
 static function __static()
 {
     stream_wrapper_register('res', __CLASS__);
     self::$instance = new self();
 }
 public function translatePathWorksWithoutModule()
 {
     $this->assertEquals('some/where/file.xsl', ResourceProvider::getInstance()->translatePath('res://some/where/file.xsl'));
 }
Пример #5
0
 /**
  * Get autocomplete search suggestions for search box
  * 
  * @return string
  */
 public function getSearchSuggestions()
 {
     $searchSuggestions = array();
     $userList = ResourceProvider::getControllerByResourceKey(UsersController::MODULE_KEY)->getUserList();
     $languageList = ResourceProvider::getControllerByResourceKey(LanguageController::MODULE_KEY)->getLanguageList();
     $categoryList = ResourceProvider::getControllerByResourceKey(CategoryController::MODULE_KEY)->getCategoryList();
     $textSuggestions = $this->getModel()->getTextualSuggestions();
     $suggestions = array(UsersController::MODULE_KEY => $userList, LanguageController::MODULE_KEY => $languageList, CategoryController::MODULE_KEY => $categoryList, ExplorerController::MODULE_KEY => $textSuggestions);
     foreach ($suggestions as $type => $dataset) {
         foreach ($dataset as $key => $array) {
             $arrayKey = empty($array['name']) ? 'user_name' : 'name';
             if (in_array($type, self::$SEARCH_TAGS)) {
                 $searchSuggestions[] = $type . ':' . $array[$arrayKey];
             } else {
                 $searchSuggestions[] = $array[$arrayKey];
             }
         }
     }
     return json_encode($searchSuggestions);
 }