public function exampleImageUrls() { $layout = new ThemeLayout(1); $template = new ThemeTemplate(1); $theme = new Theme(1); print_d($layout->getThemeConfig()); var_dump($theme->getPath()); var_dump($template->getImageUrl()); echo '<br>'; var_dump($layout->getImageUrl()); echo '<br>'; var_dump($theme->getImageUrl()); }
/** * Gets the full URL of a file in a theme dir based on its relative name * * @param string $relative relative path within the theme directory * @param string $name name of the theme; defaults to current theme * * @return string URL of the file */ static function path($relative, $name = null) { $theme = new Theme($name); return $theme->getPath($relative); }
// clean segments $segments = URL::sanitize($segments); /* |-------------------------------------------------------------------------- | Hook: Routes Before |-------------------------------------------------------------------------- | | Useful for running your own route. Remember to use $app->pass() if | you're not doing anything with the current request. | */ Hook::run('_routes', 'before'); $file_requested = implode($segments, '/'); $file = Theme::getPath() . $file_requested; $file = realpath($file); # Routes only if the file doesn't already exist (e.g. /assets/whatever.ext) if ( ! File::exists(array($file_requested, $file))) { Log::warn("The Static Asset Pipeline is deprecated. It may yet come back to fight another battle someday.", "core", "asset pipeline"); $mime = File::resolveMime($file); header("Content-type: {$mime}"); readfile($file); exit();
<?php defined('PMDDA') or die('Restricted access'); ?> <script src="<?php echo Theme::getPath(); ?> bootstrap/js/bootstrap.js"></script> <script src="<?php echo Theme::getPath(); ?> js/PHPMongoDB.js?v=<?php echo Theme::getVersion('/application/themes/default/js/PHPMongoDB.js'); ?> "></script> <script type="text/javascript"> $("[rel=tooltip]").tooltip(); $(function() { $('.demo-cancel-click').click(function() { return false; }); }); </script> <div class="footer row-fluid"> <div class="navbar-inner"> <ul class="nav pull-right"> <li > <a href="http://www.phpmongodb.org" target="_blank">© <?php echo date('Y'); ?>
/** * Get the original source path * @return string */ public function getSourcePath() { return $this->theme->getPath() . '/assets'; }
/** * Output the template into the browser * Will also assign the labels and all user-defined constants. * If you want custom-headers, you should set them yourself, otherwise the content-type and charset will be set * * @param string $template The path of the template to use. * @param bool $customHeaders Deprecated variable. * @param bool $parseCustom Parse custom template. */ public function display($template, $customHeaders = false, $parseCustom = false) { // do custom stuff if ($parseCustom) { new TemplateCustom($this); } // parse constants $this->parseConstants(); // check debug $this->parseDebug(); // parse the label $this->parseLabels(); // parse date/time formats $this->parseDateTimeFormats(); // parse vars $this->parseVars(); // get template path $template = Theme::getPath($template); /* * Code below is exactly the same as from our parent (SpoonTemplate::display), except * for the compiler being used. We want our own compiler extension here. */ // redefine $template = (string) $template; // validate name if (trim($template) == '' || !is_file($template)) { throw new \SpoonTemplateException('Please provide an existing template.'); } // compiled name $compileName = $this->getCompileName((string) $template); // compiled if needed if ($this->forceCompile || !is_file($this->compileDirectory . '/' . $compileName)) { // create compiler $compiler = new TemplateCompiler((string) $template, $this->variables); // set some options $compiler->setCacheDirectory($this->cacheDirectory); $compiler->setCompileDirectory($this->compileDirectory); $compiler->setForceCompile($this->forceCompile); $compiler->setForms($this->forms); // compile & save $compiler->parseToFile(); } // load template require $this->compileDirectory . '/' . $compileName; }