class IDF_Views_Wiki␊ |
{␊ |
/**␊ |
* View list of issues for a given project.␊ |
* View list of pages for a given project.␊ |
*/␊ |
public $index_precond = array('IDF_Precondition::accessWiki');␊ |
public function index($request, $match, $api=false)␊ |
public $listPages_precond = array('IDF_Precondition::accessWiki');␊ |
public function listPages($request, $match, $api=false)␊ |
{␊ |
$prj = $request->project;␊ |
$title = sprintf(__('%s Documentation'), (string) $prj);␊ |
|
'shortname' => $prj->shortname,␊ |
'current_user' => $request->user);␊ |
$pag->summary = __('This table shows the documentation pages.');␊ |
$pag->action = array('IDF_Views_Wiki::index', array($prj->shortname));␊ |
$pag->edit_action = array('IDF_Views_Wiki::view', 'shortname', 'title');␊ |
$pag->action = array('IDF_Views_Wiki::listPages', array($prj->shortname));␊ |
$pag->edit_action = array('IDF_Views_Wiki::viewPage', 'shortname', 'title');␊ |
$sql = 'project=%s';␊ |
$ptags = self::getWikiTags($prj);␊ |
$dtag = array_pop($ptags); // The last tag is the deprecated tag.␊ |
|
$pag->no_results_text = __('No documentation pages were found.');␊ |
$pag->sort_order = array('title', 'ASC');␊ |
$pag->setFromRequest($request);␊ |
return Pluf_Shortcuts_RenderToResponse('idf/wiki/index.html',␊ |
return Pluf_Shortcuts_RenderToResponse('idf/wiki/listPages.html',␊ |
array(␊ |
'page_title' => $title,␊ |
'pages' => $pag,␊ |
|
{␊ |
$prj = $request->project;␊ |
if (!isset($request->REQUEST['q']) or trim($request->REQUEST['q']) == '') {␊ |
$url = Pluf_HTTP_URL_urlForView('IDF_Views_Wiki::index',␊ |
$url = Pluf_HTTP_URL_urlForView('IDF_Views_Wiki::listPages',␊ |
array($prj->shortname));␊ |
return new Pluf_HTTP_Response_Redirect($url);␊ |
}␊ |
|
'current_user' => $request->user);␊ |
$pag->summary = __('This table shows the pages found.');␊ |
$pag->action = array('IDF_Views_Wiki::search', array($prj->shortname), array('q'=> $q));␊ |
$pag->edit_action = array('IDF_Views_Wiki::view', 'shortname', 'title');␊ |
$pag->edit_action = array('IDF_Views_Wiki::viewPage', 'shortname', 'title');␊ |
$pag->extra_classes = array('right', '', 'a-c');␊ |
$list_display = array(␊ |
'title' => __('Page Title'),␊ |
|
/**␊ |
* View list of pages with a given label.␊ |
*/␊ |
public $listLabel_precond = array('IDF_Precondition::accessWiki');␊ |
public function listLabel($request, $match)␊ |
public $listPagesWithLabel_precond = array('IDF_Precondition::accessWiki');␊ |
public function listPagesWithLabel($request, $match)␊ |
{␊ |
$prj = $request->project;␊ |
$tag = Pluf_Shortcuts_GetObjectOr404('IDF_Tag', $match[2]);␊ |
|
'shortname' => $prj->shortname);␊ |
$pag->summary = sprintf(__('This table shows the documentation pages with label %s.'), (string) $tag);␊ |
$pag->forced_where = new Pluf_SQL('project=%s AND idf_tag_id=%s', array($prj->id, $tag->id));␊ |
$pag->action = array('IDF_Views_Wiki::listLabel', array($prj->shortname, $tag->id));␊ |
$pag->edit_action = array('IDF_Views_Wiki::view', 'shortname', 'title');␊ |
$pag->action = array('IDF_Views_Wiki::listPagesWithLabel', array($prj->shortname, $tag->id));␊ |
$pag->edit_action = array('IDF_Views_Wiki::viewPage', 'shortname', 'title');␊ |
$pag->extra_classes = array('right', '', 'a-c');␊ |
$list_display = array(␊ |
'title' => __('Page Title'),␊ |
|
$pag->items_per_page = 25;␊ |
$pag->no_results_text = __('No documentation pages were found.');␊ |
$pag->setFromRequest($request);␊ |
return Pluf_Shortcuts_RenderToResponse('idf/wiki/index.html',␊ |
return Pluf_Shortcuts_RenderToResponse('idf/wiki/listPages.html',␊ |
array(␊ |
'page_title' => $title,␊ |
'label' => $tag,␊ |
|
/**␊ |
* Create a new documentation page.␊ |
*/␊ |
public $create_precond = array('IDF_Precondition::accessWiki',␊ |
'Pluf_Precondition::loginRequired');␊ |
public function create($request, $match)␊ |
public $createPage_precond = array('IDF_Precondition::accessWiki',␊ |
'Pluf_Precondition::loginRequired');␊ |
public function createPage($request, $match)␊ |
{␊ |
$prj = $request->project;␊ |
$title = __('New Page');␊ |
|
));␊ |
if ($form->isValid() and !isset($request->POST['preview'])) {␊ |
$page = $form->save();␊ |
$urlpage = Pluf_HTTP_URL_urlForView('IDF_Views_Wiki::view',␊ |
$urlpage = Pluf_HTTP_URL_urlForView('IDF_Views_Wiki::viewPage',␊ |
array($prj->shortname, $page->title));␊ |
$request->user->setMessage(sprintf(__('The page <a href="%s">%s</a> has been created.'), $urlpage, Pluf_esc($page->title)));␊ |
$url = Pluf_HTTP_URL_urlForView('IDF_Views_Wiki::index',␊ |
$url = Pluf_HTTP_URL_urlForView('IDF_Views_Wiki::listPages',␊ |
array($prj->shortname));␊ |
return new Pluf_HTTP_Response_Redirect($url);␊ |
} elseif (isset($request->POST['preview'])) {␊ |
|
'project' => $prj,␊ |
'user' => $request->user));␊ |
}␊ |
return Pluf_Shortcuts_RenderToResponse('idf/wiki/create.html',␊ |
return Pluf_Shortcuts_RenderToResponse('idf/wiki/createPage.html',␊ |
array(␊ |
'auto_labels' => self::autoCompleteArrays($prj),␊ |
'page_title' => $title,␊ |
|
/**␊ |
* View a documentation page.␊ |
*/␊ |
public $view_precond = array('IDF_Precondition::accessWiki');␊ |
public function view($request, $match)␊ |
public $viewPage_precond = array('IDF_Precondition::accessWiki');␊ |
public function viewPage($request, $match)␊ |
{␊ |
$prj = $request->project;␊ |
// Find the page␊ |
|
$false = Pluf_DB_BooleanToDb(false, $page->getDbConnection());␊ |
$revs = $page->get_revisions_list(array('order' => 'creation_dtime DESC',␊ |
'filter' => 'is_head='.$false));␊ |
return Pluf_Shortcuts_RenderToResponse('idf/wiki/view.html',␊ |
return Pluf_Shortcuts_RenderToResponse('idf/wiki/viewPage.html',␊ |
array(␊ |
'page_title' => $title,␊ |
'page' => $page,␊ |
|
/**␊ |
* Remove a revision of a page.␊ |
*/␊ |
public $deleteRev_precond = array('IDF_Precondition::accessWiki',␊ |
'IDF_Precondition::projectMemberOrOwner');␊ |
public function deleteRev($request, $match)␊ |
public $deletePageRev_precond = array('IDF_Precondition::accessWiki',␊ |
'IDF_Precondition::projectMemberOrOwner');␊ |
public function deletePageRev($request, $match)␊ |
{␊ |
$prj = $request->project;␊ |
$oldrev = Pluf_Shortcuts_GetObjectOr404('IDF_Wiki_PageRevision', $match[2]);␊ |
|
if ($request->method == 'POST') {␊ |
$oldrev->delete();␊ |
$request->user->setMessage(__('The old revision has been deleted.'));␊ |
$url = Pluf_HTTP_URL_urlForView('IDF_Views_Wiki::view',␊ |
$url = Pluf_HTTP_URL_urlForView('IDF_Views_Wiki::viewPage',␊ |
array($prj->shortname, $page->title));␊ |
return new Pluf_HTTP_Response_Redirect($url);␊ |
}␊ |
|
$false = Pluf_DB_BooleanToDb(false, $page->getDbConnection());␊ |
$revs = $page->get_revisions_list(array('order' => 'creation_dtime DESC',␊ |
'filter' => 'is_head='.$false));␊ |
return Pluf_Shortcuts_RenderToResponse('idf/wiki/delete.html',␊ |
return Pluf_Shortcuts_RenderToResponse('idf/wiki/deletePageRev.html',␊ |
array(␊ |
'page_title' => $title,␊ |
'page' => $page,␊ |
|
/**␊ |
* View a documentation page.␊ |
*/␊ |
public $update_precond = array('IDF_Precondition::accessWiki',␊ |
'Pluf_Precondition::loginRequired');␊ |
public function update($request, $match)␊ |
public $updatePage_precond = array('IDF_Precondition::accessWiki',␊ |
'Pluf_Precondition::loginRequired');␊ |
public function updatePage($request, $match)␊ |
{␊ |
$prj = $request->project;␊ |
// Find the page␊ |
|
$form = new IDF_Form_WikiUpdate($request->POST, $params);␊ |
if ($form->isValid() and !isset($request->POST['preview'])) {␊ |
$page = $form->save();␊ |
$urlpage = Pluf_HTTP_URL_urlForView('IDF_Views_Wiki::view',␊ |
$urlpage = Pluf_HTTP_URL_urlForView('IDF_Views_Wiki::viewPage',␊ |
array($prj->shortname, $page->title));␊ |
$request->user->setMessage(sprintf(__('The page <a href="%s">%s</a> has been updated.'), $urlpage, Pluf_esc($page->title)));␊ |
$url = Pluf_HTTP_URL_urlForView('IDF_Views_Wiki::index',␊ |
$url = Pluf_HTTP_URL_urlForView('IDF_Views_Wiki::listPages',␊ |
array($prj->shortname));␊ |
return new Pluf_HTTP_Response_Redirect($url);␊ |
} elseif (isset($request->POST['preview'])) {␊ |
|
␊ |
$form = new IDF_Form_WikiUpdate(null, $params);␊ |
}␊ |
return Pluf_Shortcuts_RenderToResponse('idf/wiki/update.html',␊ |
return Pluf_Shortcuts_RenderToResponse('idf/wiki/updatePage.html',␊ |
array(␊ |
'auto_labels' => self::autoCompleteArrays($prj),␊ |
'page_title' => $title,␊ |
|
/**␊ |
* Delete a Wiki page.␊ |
*/␊ |
public $delete_precond = array('IDF_Precondition::accessWiki',␊ |
'IDF_Precondition::projectMemberOrOwner');␊ |
public function delete($request, $match)␊ |
public $deletePage_precond = array('IDF_Precondition::accessWiki',␊ |
'IDF_Precondition::projectMemberOrOwner');␊ |
public function deletePage($request, $match)␊ |
{␊ |
$prj = $request->project;␊ |
$page = Pluf_Shortcuts_GetObjectOr404('IDF_Wiki_Page', $match[2]);␊ |
|
if ($form->isValid()) {␊ |
$form->save();␊ |
$request->user->setMessage(__('The documentation page has been deleted.'));␊ |
$url = Pluf_HTTP_URL_urlForView('IDF_Views_Wiki::index',␊ |
$url = Pluf_HTTP_URL_urlForView('IDF_Views_Wiki::listPages',␊ |
array($prj->shortname));␊ |
return new Pluf_HTTP_Response_Redirect($url);␊ |
}␊ |
|
$false = Pluf_DB_BooleanToDb(false, $page->getDbConnection());␊ |
$revs = $page->get_revisions_list(array('order' => 'creation_dtime DESC',␊ |
'filter' => 'is_head='.$false));␊ |
return Pluf_Shortcuts_RenderToResponse('idf/wiki/deletepage.html',␊ |
return Pluf_Shortcuts_RenderToResponse('idf/wiki/deletePage.html',␊ |
array(␊ |
'page_title' => $title,␊ |
'page' => $page,␊ |