Backend\Core\Engine\Model::getModulesOnFilesystem PHP Method

getModulesOnFilesystem() public static method

Get the modules that are available on the filesystem
public static getModulesOnFilesystem ( boolean $includeCore = true ) : array
$includeCore boolean Should core be included as a module?
return array
    public static function getModulesOnFilesystem($includeCore = true)
    {
        if ($includeCore) {
            $return = array('Core');
        } else {
            $return = array();
        }
        $finder = new Finder();
        foreach ($finder->directories()->in(PATH_WWW . '/src/Backend/Modules')->depth('==0') as $folder) {
            $return[] = $folder->getBasename();
        }
        return $return;
    }

Usage Example

Example #1
0
 /**
  * Set the module
  *
  * We can't rely on the parent setModule function, because config could be
  * called before any authentication is required.
  *
  * @param string $module The module to load.
  * @throws BackendException If module is not allowed
  */
 public function setModule($module)
 {
     // does this module exist?
     $modules = BackendModel::getModulesOnFilesystem();
     if (!in_array($module, $modules)) {
         // set correct headers
         header('HTTP/1.1 403 Forbidden');
         // throw exception
         throw new BackendException('Module not allowed.');
     }
     // set property
     $this->module = $module;
 }
All Usage Examples Of Backend\Core\Engine\Model::getModulesOnFilesystem