add current dev version (WIP)
[GitHub/Stricted/Domain-Control-Panel.git] / lib / system / cache / builder / ControllerCacheBuilder.class.php
1 <?php
2 namespace dns\system\cache\builder;
3 use dns\system\DNS;
4
5 /**
6 * @author Jan Altensen (Stricted)
7 * @copyright 2013-2015 Jan Altensen (Stricted)
8 */
9 class ControllerCacheBuilder extends AbstractCacheBuilder {
10 /**
11 * @see \dns\system\cache\builder\AbstractCacheBuilder::$maxLifetime
12 */
13 protected $maxLifetime = 3600;
14
15 /**
16 * @see \dns\system\cache\builder\AbstractCacheBuilder::rebuild()
17 */
18 public function rebuild(array $parameters) {
19 $data = array();
20
21 $pages = glob(DNS_DIR.'/lib/'.(empty($parameters['module']) ? '' : $parameters['module'].'/').'page/*Page.class.php');
22
23 foreach ($pages as $page) {
24 $page = str_replace('Page.class.php', '', basename($page));
25
26 $class = "\\dns".(empty($parameters['module']) ? '' : "\\".$parameters['module'])."\\page\\".$page."Page";
27 if (class_exists($class) && is_subclass_of($class, '\\dns\\page\\AbstractPage')) {
28 $data[strtolower($page)] = $class;
29 }
30 }
31
32 return $data;
33 }
34 }