} else { //redirect user to course wiki header("Location: index.php?course={$course_code}"); exit; } } } else { $groupId = 0; } // Objects instantiation $wikiStore = new WikiStore(); if (!$wikiStore->wikiIdExists($wikiId)) { die($langWikiInvalidWikiId); draw($tool_content, 2, null, $head_content); } $wiki = $wikiStore->loadWiki($wikiId); $wikiPage = new WikiPage($wikiId); $wikiRenderer = new Wiki2xhtmlRenderer($wiki); $accessControlList = $wiki->getACL(); // --------------- Start of access rights management -------------- // Wiki access levels $is_allowedToEdit = false; $is_allowedToRead = false; $is_allowedToCreate = false; // set user access rights using user status and wiki access control list if ($groupId != 0 && $is_groupAllowed) { // group_context if (is_array($accessControlList)) { $is_allowedToRead = $is_editor || $is_groupMember && WikiAccessControl::isAllowedToReadPage($accessControlList, 'group') || $is_courseMember && WikiAccessControl::isAllowedToReadPage($accessControlList, 'course') || WikiAccessControl::isAllowedToReadPage($accessControlList, 'other'); $is_allowedToEdit = $is_editor || $is_groupMember && WikiAccessControl::isAllowedToEditPage($accessControlList, 'group') || $is_courseMember && WikiAccessControl::isAllowedToEditPage($accessControlList, 'course') || WikiAccessControl::isAllowedToEditPage($accessControlList, 'other'); $is_allowedToCreate = $is_editor || $is_groupMember && WikiAccessControl::isAllowedToCreatePage($accessControlList, 'group') || $is_courseMember && WikiAccessControl::isAllowedToCreatePage($accessControlList, 'course') || WikiAccessControl::isAllowedToCreatePage($accessControlList, 'other');
$wikiList = array(); // --------- Start of command processing ---------------- switch ($action) { case 'exExport': { require_once "lib/class.wiki2xhtmlexport.php"; if (!$wikiStore->wikiIdExists($wikiId)){ $message = $langWikiInvalidWikiId; $action = "error"; $style = "caution"; } else{ $wiki = $wikiStore->loadWiki($wikiId); $wikiTitle = $wiki->getTitle(); $renderer = new WikiToSingleHTMLExporter($wiki); $contents = $renderer->export(); header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename=WikiExport.html'); header('Content-Transfer-Encoding: binary'); header('Expires: 0'); header('Cache-Control: must-revalidate'); header('Pragma: public'); ob_clean(); flush(); echo $contents;