public function get_file($params = []) { $link_style = isset($params['link_style']) ? $params['link_style'] : 0; $reference = Reference::read_file($params['file_name'], $link_style); SiteStructure::set_page_title($reference['title']); Render::html($reference['content'], [], 'text/html'); }
public static function read_by_params_and_render($params) { $solution = self::read_by_name($params['solution_name']); SiteStructure::set_page_title($solution['title']); $template = new Template($solution['content'], TRUE); $solution['content'] = $template->scrape($solution)->render(); return $solution; }
private static function include_header() { $template = new Template(HTML . 'header.php'); echo $template->render(['page_title' => SiteStructure::page_title(), 'admin_nav' => SiteStructure::admin_nav(), 'main_nav' => SiteStructure::main_nav(), 'admin' => isset(Session::$admin_user['id']), 'root' => SUBDIR]); if (isset($_REQUEST['adid'])) { $model = ['ip' => $_SERVER['REMOTE_ADDR'], 'uri' => $_SERVER['REQUEST_URI']]; Adhit::create($model); } }
public static function read_by_page($params) { //echo '<pre>'; debug_print_backtrace(); print_r($params); echo '</pre>'; exit; $file_name = isset($params['page']) ? $params['page'] : 'doc-basic'; $link_style = isset($params['link_style']) ? $params['link_style'] : 2; $reference = self::read_file($file_name, $link_style); SiteStructure::set_page_title($reference['title']); return $reference; }
public static function read_by_params_and_render($params) { if (isset($params['post_name'])) { $post = self::read_by_name($params['post_name']); } else { $post = self::read_by_date($params['year'], $params['month'], $params['day']); } SiteStructure::set_page_title($post['title']); $template = new Template($post['content'], TRUE); $post['content'] = $template->scrape($post)->render(); return $post; }
public static function initialize() { global $HTTP_RAW_POST_DATA; global $_PUT; global $_PST; self::$routes = SiteStructure::get_routes(); require_once CONFIG . 'routes.php'; self::admin_routes(); // Format PUT/POST data as an associative array if ($_SERVER['REQUEST_METHOD'] === 'PUT') { $_PUT = json_decode(file_get_contents('php://input'), TRUE); } elseif ($_SERVER['REQUEST_METHOD'] === 'POST') { $_PST = json_decode($HTTP_RAW_POST_DATA, TRUE); foreach ($_POST as $key => $value) { $_PST[$key] = $value; } } }
<?php // Route resolver // Load configs require_once '../../config/config.inc.php'; ContentProcessor::pre(); Session::start(); SiteStructure::initialize(); Router::initialize(); Render::initialize(); // Resolve the incoming request $parsed_request = Router::resolve($_SERVER['REQUEST_METHOD'], SiteStructure::get_request_uri()); if ($parsed_request) { Ctrl::process($parsed_request); } else { Render::error_404(); }
/** * @test * @group creator * @group small * @group dev */ public function test_getPageUrl() { // ARRANGE $input = array('reserveddirectories' => array(), 'homepageid' => '12', 'pageurls' => array('1' => array('path' => '', 'fileName' => 'index.php'), '2' => array('path' => 'PAGE-URL', 'fileName' => 'index.php'), '12' => array('path' => 'HOME-PAGE-URL', 'fileName' => 'index.php'), '33' => array('path' => 'THE-PAGE-URL', 'fileName' => 'someFile.ext')), 'pagestructure' => array()); $siteStructure = new SiteStructure($this->getCreatorContextMock()); $siteStructure->initFromArray($input); // ACT $url = $siteStructure->getPageUrl('2'); $urlNoIndexFile = $siteStructure->getPageUrl('2', false); $homeUrl = $siteStructure->getPageUrl('1', true); $homeUrlNoIndexFile = $siteStructure->getPageUrl('1', false); $nonIndexFileUrl = $siteStructure->getPageUrl('33', false); // ASSERT $this->assertEquals('PAGE-URL/index.php', $url); $this->assertEquals('PAGE-URL/', $urlNoIndexFile); $this->assertEquals('', $homeUrlNoIndexFile); $this->assertEquals('index.php', $homeUrl); $this->assertEquals('THE-PAGE-URL/someFile.ext', $nonIndexFileUrl); }
public static function set_page_title($title) { self::$page_title = $title; }
public function routes($params = []) { Session::permit_admin(); SiteStructure::set_page_title('Routes'); Render::php(ADMIN . 'routes.php'); }