getArg('pagename'); $version = $request->getArg('version'); $page = $dbi->getPage($pagename); $current = $page->getCurrentRevision(); if ($version === false) { $selected = $current; } else { $selected = $page->getRevision($version); if (!$selected) NoSuchRevision($page, $version); // noreturn } global $user; // FIXME: make this non-global. if ($page->get('locked') && !$user->is_admin()) { // Perhaps this can be worked into display.php. It would be nice if: // 'Note: You are viewing an old revision of this page. "View the current version".' // would link to "View source of the current version". // Also the

is hard-coded in brwose.html / editpage.html // so we can't get a nice title like "Page source for %s". if ($version) { $link = QElement('a', array('href' => WikiURL($pagename, array('version' => $version))),$pagename); } else { $link = LinkExistingWikiWord($pagename); } $html = QElement('p'); $html .= QElement('strong', _("Note:")) . " "; $html .= sprintf(_("%s has been locked by the administrator and cannot be edited."), $link); $html .= "\n"; $template = new WikiTemplate('BROWSE'); $template->replace('TITLE', sprintf(_("Page source for %s"), $pagename)); $template->replace('EDIT_FAIL_MESSAGES', $html . QElement('hr', array('noshade' => 'noshade')) . "\n"); $prefs = $user->getPreferences(); $template->replace('CONTENT', Element('p', QElement('textarea', array('class' => 'wikiedit', 'rows' => $prefs['edit_area.height'], 'cols' => $prefs['edit_area.width'], 'wrap' => 'virtual', 'readonly' => true), $selected->getPackedContent()))); $template->setPageRevisionTokens($selected); require_once("lib/display.php"); $template->qreplace('PAGE_DESCRIPTION', GleanDescription($selected)); echo $template->getExpansion(); flush(); ExitWiki (""); } $age = time() - $current->get('mtime'); $minor_edit = ( $age < MINOR_EDIT_TIMEOUT && $current->get('author') == $user->id() ); $formvars = array('content' => htmlspecialchars($selected->getPackedContent()), 'minor_edit' => $minor_edit ? 'checked' : '', 'version' => $selected->getVersion(), 'editversion' => $current->getVersion(), 'summary' => '', 'convert' => '', 'pagename' => htmlspecialchars($pagename)); $template = new WikiTemplate('EDITPAGE'); $template->setPageRevisionTokens($selected); $template->replace('FORMVARS', $formvars); echo $template->getExpansion(); } // Local Variables: // mode: php // tab-width: 8 // c-basic-offset: 4 // c-hanging-comment-ender-p: nil // indent-tabs-mode: nil // End: ?>