jsFiles[$name] = [ 'file' => $filepath, 'pos' => $pos ]; } public function addCSS(string $name, string $filepath, $pos = 99999): void { $this->cssFiles[$name] = [ 'file' => $filepath, 'pos' => $pos ]; } public function getImagePath(string $filepath, bool $useAbsolute = false) { $preDir = '/content/'; if ($useAbsolute) { $preDir = Config::getInstance()->getBaseUrl() . $preDir; } return $preDir . $filepath; } public function setRenderer(VenomRenderer $renderer): void { $this->renderer = $renderer; } //this will output all js files! sorted by position public function renderJS(): void { usort($this->jsFiles, function ($a, $b) { return $a['pos'] <=> $b['pos']; }); $theme = $this->getPath('/theme/' . Config::getInstance()->getRenderer()->theme . '/js/'); foreach ($this->jsFiles as $key => $file) { echo ''; } } private function getPath($base): string { $preDir = $base; $config = Config::getInstance(); $baseUrl = Config::getInstance()->getBaseUrl(); if ($baseUrl != '' && $config->getRenderer()->useStaticUrl) { $preDir = Config::getInstance()->getBaseUrl() . $preDir; } return $preDir; } public function renderCSS(): void { usort($this->cssFiles, function ($a, $b) { return $a['pos'] <=> $b['pos']; }); $theme = $this->getPath('/theme/' . Config::getInstance()->getRenderer()->theme . '/css/'); foreach ($this->cssFiles as $key => $file) { echo ''; } } }