/** * @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(); }
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; }
<?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();
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); }
/** * @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)); }