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');
 }
Example #2
0
 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;
 }
Example #3
0
 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);
     }
 }
Example #4
0
 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;
 }
Example #5
0
 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;
 }
Example #6
0
 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;
         }
     }
 }
Example #7
0
<?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();
}
Example #8
0
 /**
  * @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;
 }
Example #10
0
 public function routes($params = [])
 {
     Session::permit_admin();
     SiteStructure::set_page_title('Routes');
     Render::php(ADMIN . 'routes.php');
 }