public function resolveLayout($route) { $pieces = explode(ES, $route); $layouts = []; $default; foreach (Memory::get(LAYOUT) as $namespace => $layout) { if (strpos('Default', $namespace) !== -1) { $default = $layout; } if (!defined($namespace . '::EVENTS')) { continue; } foreach ($layout::EVENTS as $event) { $common = array_intersect($pieces, explode(ES, $event)); if (count($common) > 1) { $layouts[count($common)] = $layout; } } } if (count($layouts) !== 0) { ksort($layouts); return end($layouts); } return $default; }
private function getHelper() { $helpers = []; foreach (Memory::get(HELPER) as $namespace => $helper) { $pieces = explode('\\', $namespace); $classname = end($pieces); $helpers[strtolower($classname)] = function ($text) use($helper) { return $helper->render($text); }; } return $helpers; }
public function addHeader(string $key, $value) { $headers = Memory::get(HTTP)->get(HEADER); $headers[$key] = $value; Memory::get(HTTP)->set(HEADER, $headers); }