Exemple #1
0
    /**
     * @param string $page_path 	书籍页面的路径, 例如chapt01/01-04-summary
     * @param string $book_base_dir 书籍目录地址, 默认值为TIPI项目路径的book目录
     */
    public function __construct($page_name, $base_dir='../../book', $is_for_print=false) {
        $this->page_name = $page_name;
        $this->base_dir = $base_dir;

        if ($title = $this->getTitle()) {
            $this->title = $title;
        }

		$parser = $is_for_print ? new TipiMarkdownExt(array('header' => array($this, 'reAssignHeaderLevel'))) : null;

		parent::__construct(array('file' => $this->getPageFilePath()), $parser);

		// markdown文件的大纲标题信息
		$this->headers = is_array($this->meta['headers']) ? $this->meta['headers'] : array();
    }
Exemple #2
0
 public function getLastUpdatedAt($remote = false, $format = null)
 {
     if ($remote && self::$version_mrg) {
         try {
             $commit = self::$version_mrg->getLastCommit("book/{$this->page_name}." . self::extension);
             $time = strtotime($commit['committed_date']);
         } catch (Exception $e) {
             return false;
         }
     } else {
         $time = parent::getLastUpdatedAt();
     }
     if ($format) {
         return date($format, $time);
     }
     return $time;
 }
Exemple #3
0
<?php

// Attogram Framework - Info Module - README page v0.3.0
namespace Attogram;

$page = new MarkdownPage($this->attogramDirectory . 'README.md', 'Readme - Attogram Framework', $this);
print $page->getPage();
Exemple #4
0
 private function get_page($request)
 {
     $params = $this->params;
     $file = $this->get_file_from_request($request);
     if ($file === false) {
         return $this->generate_error_page('Page Not Found', 'The Page you requested is yet to be made. Try again later.', ErrorPage::NORMAL_ERROR_TYPE);
     }
     $params['request'] = $request;
     $params['file_uri'] = $file->value;
     if ($request !== 'index') {
         $params['entry_page'] = $file->first_page;
     }
     return MarkdownPage::fromFile($file, $params);
 }
Exemple #5
0
    /**
     * @param string $page_name 例如: 2011-03-20-first-release
     */
    public function __construct($page_name) {
		$this->page_name = $page_name;
		parent::__construct(array('file' => self::$base_dir . "/$page_name." . self::extension));
    }