Ejemplo n.º 1
0
 /**
  * init the class
  *
  * @since 2.2.0
  *
  * @param Registry $registry instance of the registry class
  */
 public static function init(Registry $registry)
 {
     $accessValidator = new Validator\Access();
     $modulesDirectory = new Directory();
     $modulesDirectory->init('modules');
     $modulesAvailable = $modulesDirectory->getArray();
     $modulesInstalled = Db::forTablePrefix('modules')->where('status', 1)->findMany();
     /* proccess installed modules */
     foreach ($modulesInstalled as $module) {
         /* validate access */
         if (in_array($module->alias, $modulesAvailable) && $accessValidator->validate($module->access, $registry->get('myGroups')) === Validator\ValidatorInterface::PASSED) {
             self::$_modules[$module->alias] = $module->alias;
         }
     }
 }
Ejemplo n.º 2
0
 /**
  * execute from sql
  *
  * @since 2.4.0
  *
  * @param string $action action to process
  * @param string $type type of the database
  */
 protected function _rawExecute($action = null, $type = 'mysql')
 {
     $sqlDirectory = new Directory();
     $sqlDirectory->init($this->_directory . '/' . $type . '/' . $action);
     $sqlArray = $sqlDirectory->getArray();
     /* process sql */
     foreach ($sqlArray as $file) {
         $query = file_get_contents($this->_directory . '/' . $type . '/' . $action . '/' . $file);
         if ($query) {
             if ($this->_config->get('dbPrefix')) {
                 $query = str_replace($this->_prefixPlaceholder, $this->_config->get('dbPrefix'), $query);
             }
             Db::rawExecute($query);
         }
     }
 }
Ejemplo n.º 3
0
 /**
  * clear the invalid cache
  *
  * @since 3.0.0
  *
  * @param integer $lifetime lifetime of the bundle
  *
  * @return Cache
  */
 public function clearInvalid($lifetime = 3600)
 {
     $cacheDirectory = new Directory();
     $cacheDirectory->init($this->_directory);
     $cacheDirectoryArray = $cacheDirectory->getArray();
     /* process cache */
     foreach ($cacheDirectoryArray as $value) {
         $path = $this->_directory . '/' . $value;
         if (is_file($path) && !$this->_validateFile($path, $lifetime)) {
             $cacheDirectory->remove($value);
         }
     }
     return $this;
 }