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!"); } }
<?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();