Ejemplo n.º 1
0
 function __construct()
 {
     # Nest-tastic!
     list($site_name, $template_name, $extra) = array_pad(array_filter(explode("/", trim(array_shift(explode("?", $_SERVER["REQUEST_URI"])), "/"), 2)), 3, false);
     if ($site_name) {
         if (self::$site_dir = $this->get_site_dir($site_name)) {
             self::$site_name = $site_name;
             if (file_exists(self::$site_dir . "data.yml")) {
                 self::$data = sfYaml::load(self::$site_dir . "data.yml");
                 if ($template_name) {
                     if (file_exists(self::$site_dir . "templates/" . $template_name) && $template_name != "index.html") {
                         self::$template = $template_name;
                     } else {
                         self::$template = "template_error.html";
                         self::$data = array("error_msg" => "Template “{$template_name}” does not exist.");
                     }
                 } else {
                     self::$data["SITE_URL"] = "/" . $site_name . "/";
                     self::$template = "index.html";
                 }
             } else {
                 self::$template = "template_error.html";
             }
         } else {
             self::$template = "template_error.html";
             self::$data = array("error_msg" => "Site <code>{$site_name}</code> does not exist!");
         }
     } else {
         self::$template = "template_error.html";
         self::$data = array("error_msg" => "No site specified!");
     }
 }
Ejemplo n.º 2
0
<?php

define("ROOT_PATH", dirname(__FILE__) . "/");
define("ROOT_URL", "/");
define("SYS_PATH", ROOT_PATH . "system/");
define("SITE_PATH", ROOT_PATH . "sites/");
define("SITE_URL", ROOT_URL . "sites/");
error_reporting(E_ALL);
ini_set('display_errors', true);
// Twig template engine. So awesome.
require_once SYS_PATH . 'third-party/twig/lib/Twig/Autoloader.php';
require_once SYS_PATH . 'third-party/yaml/lib/sfYaml.php';
require_once SYS_PATH . "tintype.php";
Twig_Autoloader::register();
$twigfs = new Twig_Loader_Filesystem(SYS_PATH . "templates");
$twig = new Twig_Environment($twigfs, array('cache' => false));
// Custom Twig tags
require_once SYS_PATH . 'tags.php';
$twig->addExtension(new Twig_Extras());
$system = new Tintype();
$system->render_page();