1 <?php # vim:ts=2:sw=2:et:
2 /* For licensing and copyright terms, see the file named LICENSE */
5 * This is alot simpler now...
7 * In our horrifically simple version...
9 * We could just use a database, and go from there.
10 * ... that looses the diff feature... although we can use the mtrack_change stuff....
12 * ... That sounds alot better in our context as we can show data on the changelog..
13 * -----> It will mean that the change log will have to honour our privacy settings..
16 * oK - uses new mtrack_wiki table..
21 require_once 'MTrack/Attachment.php';
22 require_once 'MTrackWeb.php';
24 class MTrackWeb_Wiki extends MTrackWeb
29 var $hasHistory = false;
33 return parent::getAuth();
38 // non 'json' request...
39 if (!isset($_REQUEST['ajax_body'])) {
40 $this->title = "Browse: " . $pi;
44 $p = DB_DataObject::Factory('Mtrack_wiki');
45 $p->project_id = $this->currentProject();
49 // we add stuff on the end..
51 $px = DB_DataObject::Factory('Mtrack_wiki');
52 $px->project_id = $this->currentProject();
55 $pr = DB_DataObject::factory('core_project');
56 $pr->get($px->project_id);
58 $ar = $px->fetchAll('path');
59 $wikidata = "## Index of pages in Wiki - {$pr->name} \n\n";
61 $wikidata .= " * [$pp](wiki:$pp)\n";
63 $p->wikidata = $wikidata;
64 $this->jdata($p->toArray());
72 if (!$p->find(true)) {
74 $this->jdata($p->toArray());
76 $this->jdata($p->toArray());
78 //echo '<PRE>';print_r($this);echo '</PRE>';
82 function returnNotFound($p) {
93 $au = $this->getAuthUser();
96 $this->jerr("permission denied");
99 $p = DB_DataObject::factory('mtrack_wiki');
100 $p->project_id = $this->currentProject();
102 $id = empty($_REQUEST['id']) ? 0 : $_REQUEST['id'] * 1;
103 if (!empty($id) && !$p->get($id)) {
105 $this->jerr('invalid id');
110 if ($o->project_id != $p->project_id) {
111 $this->jerr("changing project id not permitted");
114 // check change of path...
115 if (!$o->id || ($o->path != $p->path)) {
116 $c = DB_DataObject::factory('mtrack_wiki');
117 $c->project_id = $p->project_id;
120 $this->jerr("Path is not valid - that path already exists");
125 call_user_func(array($p, $o->id ? 'update' : 'insert'), $o);
127 $this->jok($p->toArray());