'WikiCategory' ); public $fields = array( 'id' => 'key', 'label' => 'string', 'state' => 'string', 'category' => 'int', 'slug' => 'string', 'path' => 'string' ); public static function workspace(){ return File::dir().'wiki'.SLASH.'pages'; } public static function uploads(){ return File::dir().'wiki'.SLASH.'uploads'; } public static function path_from_label($label){ return preg_replace('|[\?\\\/\*\:\|\<\>]|i', '-',$label); } public function author(){ return User::byLogin($this->creator)->fullName(); } public function created(){ return relative_time($this->created); } public function updater(){ return User::byLogin($this->updater)->fullName(); } public function updated(){ return relative_time($this->updated); } public function html(){ require_once(__DIR__.SLASH.'lib'.SLASH.'Parsedown.php'); $markdown = new Parsedown(); return $markdown->text($this->content); } public function content(){ $this->content = file_get_contents(self::workspace().SLASH.wiki_os_encode($this->path)); } } ?>