Exemplo n.º 1
0
 public static function initGetText($location)
 {
     // ca va surment changer
     // TODO se code est a revoir
     self::$conf = Config::get('location.' . $location);
     //Locale::getRegion
     // je suis sous window ca bug. marchera plus tard
     setlocale(LC_ALL, self::$conf['langue']);
     //putenv("LANGUAGE=english");
     putenv('LANG=' . self::$conf['langue']);
     putenv('LC_ALL=' . self::$conf['langue']);
     //setlocale(LC_MESSAGES, $conf['langue']);
     $domain = self::$conf['domaine'];
     bindtextdomain($domain, APP_FOLDER . DS . "locale");
     textdomain($domain);
 }
Exemplo n.º 2
0
 function __construct()
 {
     $auth = Session::get('skankydev.auth');
     if ($auth) {
         $this->loged = true;
     }
     $this->historique = new Historique();
     $this->userAgent = new UserAgent();
     $this->cookie = new Cookie('skankydev.auth', Config::get('Auth.cookieTimer'));
     $this->historique->updateHistorique();
     $current = $this->historique->getCurrent();
     $controller = Config::get('Auth.redirectAction.controller');
     if ($current['link']['controller'] !== $controller) {
         Session::delete('skankydev.backlink');
     }
     //$this->cookie->set('test.truc',['test1'=>'youpi1','test2'=>'youpi2']);
     if (empty($_COOKIE)) {
         $this->firstStep();
     }
     EventManager::getInstance()->event('auth.construct', $this);
 }
Exemplo n.º 3
0
 /**
  * add the 
  * @param  Request $request the Request
  * @return void
  */
 function updateHistorique()
 {
     $request = Request::getInstance();
     $history = Session::get('skankydev.historique');
     if (!$history) {
         $history = [];
     }
     $hData['url'] = $request->sheme . '://' . $request->host . $request->uri;
     $hData['direct'] = true;
     $hData['sheme'] = $request->sheme;
     $hData['method'] = $request->method;
     $hData['uri'] = $request->uri;
     $hData['link']['namespace'] = $request->namespace;
     $hData['link']['controller'] = $request->controller;
     $hData['link']['action'] = $request->action;
     $hData['link']['params'] = $request->params;
     $count = array_unshift($history, $hData);
     $limit = Config::get('historique.limit');
     if ($count > $limit) {
         unset($history[$limit]);
     }
     Session::set('skankydev.historique', $history);
 }
Exemplo n.º 4
0
 /**
  * create the form object 
  * @param array $data the data to put in input
  */
 function __construct()
 {
     $request = Request::getInstance();
     $this->data = $request->data;
     $this->dClass = Config::get('form.class');
 }
Exemplo n.º 5
0
 /**
  * prepare query for pagination
  * @param  array                          $option the option for query
  * @return SkankyDev\Utilities\Paginator          the paginator object
  */
 public function paginate($option = [])
 {
     $option = array_replace_recursive($this->defaultQuery, $option);
     $dOption = Config::get('paginator');
     $option = array_replace_recursive($dOption, $option);
     if (!$option['page']) {
         $option['page'] = 1;
     }
     $option['skip'] = $option['limit'] * ($option['page'] - 1);
     $option['count'] = $this->count($option['query']);
     $result = $this->find($option);
     $paginator = new Paginator($result);
     unset($option['query']);
     unset($option['skip']);
     $paginator->setOption($option);
     return $paginator;
 }
Exemplo n.º 6
0
 public function execute()
 {
     EventManager::getInstance()->event('router.execute.before', $this);
     $request = Request::getInstance();
     $link = $request->getArrayLink();
     $controller = Factory::load($this->makeControllerName($link));
     $method = new \ReflectionMethod($controller, $link['action']);
     if (!isset($this->permission)) {
         $method->invokeArgs($controller, $link['params']);
     } else {
         if ($method->isPublic()) {
             if ($this->permission->checkPublicAccess($link)) {
                 $method->invokeArgs($controller, $link['params']);
             } else {
                 $request->redirect(Config::get('Auth.redirectAction'));
             }
         } elseif ($method->isProtected()) {
             if ($this->permission->checkProtectedAccess($link)) {
                 $method->setAccessible(true);
                 $method->invokeArgs($controller, $link['params']);
             } else {
                 $request->redirect(Config::get('Auth.redirectAction'));
             }
         } elseif ($method->isPrivate()) {
             if ($this->permission->checkPrivateAccess($link)) {
                 $method->setAccessible(true);
                 $method->invokeArgs($controller, $link['params']);
             } else {
                 $request->redirect(Config::get('Auth.redirectAction'));
             }
         }
     }
     EventManager::getInstance()->event('router.execute.after', $this);
     return $controller->_getView();
 }