function getFoundPages() { require_once $GLOBALS["where_framework"] . "/lib/lib.wiki_revision.php"; // TODO: set some time limit before a search and the next one // TODO: see if this function can be optimized $res = ""; $wiki_id = $this->getWikiId(); $page_code = $this->getPageCode(); $wiki_lang = $this->getWikiLanguage(); $page_info = $this->wikiManager->getPageInfo($wiki_id, $wiki_lang, $page_code); $wiki_lang = $this->getWikiLanguage(); $rev = new WikiRevisionManager(array($wiki_id, $page_info["page_id"], $wiki_lang)); $search_txt = isset($_POST["search_txt"]) ? $_POST["search_txt"] : ""; if (!empty($search_txt) && strlen($search_txt) > 2) { $found = $rev->searchInLatestRevision("page_id", $search_txt); $content_found = $found["found"]; // print_r($found["found"]); $title_found = $this->wikiManager->searchByTitle($search_txt, $wiki_id, $wiki_lang); //echo "title: "; print_r($title_found); $found_all = array_unique(array_merge($content_found, $title_found)); //print_r($found_all); foreach ($found_all as $page_id) { $page_info = $this->wikiManager->getPageInfo($wiki_id, $wiki_lang, FALSE, $page_id); if (isset($found["cached"][$page_id])) { $res .= $this->getSearchResult($search_txt, $found["cached"][$page_id], $page_info); } else { $data = array(); $rev->setDefaultKeys(array($wiki_id, $page_id, $wiki_lang)); $data = $rev->getLastRevision(); $res .= $this->getSearchResult($search_txt, $data, $page_info); } } } else { $res .= getInfoUI($this->lang->def("_PROVIDE_SEARCH_QUERY")); } return $res; }
function deleteWiki() { checkPerm('edit'); $res = ""; $can_mod = checkPerm('edit', true); if (isset($_GET["wiki_id"]) && $_GET["wiki_id"] > 0) { $wiki_id = (int) $_GET["wiki_id"]; } else { return FALSE; } $cwa =& cwaSetup(); $cwa->requireLmsWikiOwner($wiki_id); $delete_ui_code = $cwa->deleteWiki($wiki_id); if (!empty($delete_ui_code)) { $info = $cwa->wikiManager->getWikiInfo($wiki_id); $title_label = $cwa->lang->def("_DEL") . ": " . $info["title"]; $out =& $GLOBALS["page"]; $out->setWorkingZone("content"); $um =& UrlManager::getInstance(); $back_url = $um->getUrl(); $title[$back_url] = $cwa->lang->def("_WIKI"); $title[] = $title_label; $res .= $cwa->titleArea($title); $res .= $cwa->getHead($can_mod, TRUE, FALSE, FALSE, TRUE); $res .= $cwa->backUi(); $course_id = $cwa->getCourseId(); if ($cwa->wikiManager->isWikiUsedByOthers($course_id, $wiki_id)) { $res .= getInfoUI($cwa->lang->def("_WIKI_USED_BY_OTHER_COURSES")); } $res .= $delete_ui_code; $res .= $cwa->getFooter(); $out->add($res); } }