From: Carsten K. <car...@us...> - 2002-01-08 06:47:01
|
Update of /cvsroot/phpwiki/phpwiki/lib In directory usw-pr-cvs1:/tmp/cvs-serv3020 Modified Files: savepage.php Log Message: New template token: ${EDIT_FAIL_MESSAGES} so that NoChangesMade() and ConcurrentUpdates() errors can be displayed on the browse template. Expanded save error message "page has been locked by the admin...". Index: savepage.php =================================================================== RCS file: /cvsroot/phpwiki/phpwiki/lib/savepage.php,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -r1.24 -r1.25 *** savepage.php 2002/01/08 00:31:24 1.24 --- savepage.php 2002/01/08 06:46:58 1.25 *************** *** 24,33 **** function ConcurrentUpdates($pagename) { ! /* xgettext only knows about c/c++ line-continuation strings it does not know about php's dot operator. We want to translate this entire paragraph as one string, of course. */ $html = "<p>"; ! $html .= "<h1>" .sprintf (_("Problem while updating %s"), $pagename) ."</h1>"; $html .= _("PhpWiki is unable to save your changes, because another user edited and saved the page while you were editing the page too. If saving proceeded now changes from the previous author would be lost."); $html .= "</p>\n<p>"; --- 24,34 ---- function ConcurrentUpdates($pagename) { ! /* ! xgettext only knows about c/c++ line-continuation strings it does not know about php's dot operator. We want to translate this entire paragraph as one string, of course. */ $html = "<p>"; ! $html = QElement('h1', __sprintf("Problem while updating %s", $pagename)); $html .= _("PhpWiki is unable to save your changes, because another user edited and saved the page while you were editing the page too. If saving proceeded now changes from the previous author would be lost."); $html .= "</p>\n<p>"; *************** *** 51,58 **** function PageIsLocked($pagename) { $html = QElement('p', ! _("This page has been locked by the administrator and cannot be edited.")); $html .= QElement('p', _("Sorry for the inconvenience.")); ! echo GeneratePage('MESSAGE', $html, sprintf (_("Problem while editing %s"), $pagename)); --- 52,62 ---- function PageIsLocked($pagename) { $html = QElement('p', ! _("This page has been locked by the administrator so your changes could not be saved.")); ! $html .= '<p>' ._("Use your browser's <b>Back</b> button to go back to the edit page."); ! $html .= _("Copy your changes to the clipboard. You can try editing a different page or save your text in a text editor."); ! $html .= '</p>'; $html .= QElement('p', _("Sorry for the inconvenience.")); ! echo GeneratePage('MESSAGE', $html, sprintf (_("Problem while editing %s"), $pagename)); *************** *** 61,69 **** function NoChangesMade($pagename) { ! $html = QElement('p', _("You have not made any changes.")); $html .= QElement('p', _("New version not saved.")); ! echo GeneratePage('MESSAGE', $html, ! sprintf(_("Edit aborted: %s"), $pagename)); ! ExitWiki (""); } --- 65,75 ---- function NoChangesMade($pagename) { ! $html = "<p>"; ! $html .= QElement('h1', __sprintf("Edit aborted: %s.", $pagename)); ! ! $html .= QElement('p', _("You have not made any changes.")); $html .= QElement('p', _("New version not saved.")); ! ! return $html; } *************** *** 75,86 **** ExitWiki (""); } ! function savePreview($dbi, $request) { $pagename = $request->getArg('pagename'); $version = $request->getArg('version'); ! $page = $dbi->getPage($pagename); $selected = $page->getRevision($version); ! // FIXME: sanity checking about posted variables // FIXME: check for simultaneous edits. --- 81,92 ---- ExitWiki (""); } ! function savePreview($dbi, $request) { $pagename = $request->getArg('pagename'); $version = $request->getArg('version'); ! $page = $dbi->getPage($pagename); $selected = $page->getRevision($version); ! // FIXME: sanity checking about posted variables // FIXME: check for simultaneous edits. *************** *** 90,98 **** 'version') as $key) @$formvars[$key] = htmlspecialchars($request->getArg($key)); ! $template = new WikiTemplate('EDITPAGE'); $template->setPageRevisionTokens($selected); $template->replace('FORMVARS', $formvars); ! $PREVIEW_CONTENT= do_transform($request->getArg('content')); $template->replace('PREVIEW_CONTENT',$PREVIEW_CONTENT); --- 96,104 ---- 'version') as $key) @$formvars[$key] = htmlspecialchars($request->getArg($key)); ! $template = new WikiTemplate('EDITPAGE'); $template->setPageRevisionTokens($selected); $template->replace('FORMVARS', $formvars); ! $PREVIEW_CONTENT= do_transform($request->getArg('content')); $template->replace('PREVIEW_CONTENT',$PREVIEW_CONTENT); *************** *** 100,104 **** toolbar_Warnings_Edit(!empty($PREVIEW_CONTENT), $version == $request->getArg('editversion'))); ! echo $template->getExpansion(); } --- 106,110 ---- toolbar_Warnings_Edit(!empty($PREVIEW_CONTENT), $version == $request->getArg('editversion'))); ! echo $template->getExpansion(); } *************** *** 106,110 **** function savePage ($dbi, $request) { global $user; ! // FIXME: fail if this check fails? assert($request->get('REQUEST_METHOD') == 'POST'); --- 112,116 ---- function savePage ($dbi, $request) { global $user; ! // FIXME: fail if this check fails? assert($request->get('REQUEST_METHOD') == 'POST'); *************** *** 115,122 **** $pagename = $request->getArg('pagename'); $version = $request->getArg('version'); ! $page = $dbi->getPage($pagename); $current = $page->getCurrentRevision(); ! $content = $request->getArg('content'); $editversion = $request->getArg('editversion'); --- 121,128 ---- $pagename = $request->getArg('pagename'); $version = $request->getArg('version'); ! $page = $dbi->getPage($pagename); $current = $page->getCurrentRevision(); ! $content = $request->getArg('content'); $editversion = $request->getArg('editversion'); *************** *** 138,184 **** if ($content == $current->getPackedContent()) { ! NoChangesMade($pagename); // noreturn ! } ! //////////////////////////////////////////////////////////////// ! // ! // From here on, we're actually saving. ! // ! $newrevision = $page->createRevision($editversion + 1, ! $content, $meta, ! ExtractWikiPageLinks($content)); ! ! $template = new WikiTemplate('BROWSE'); ! $template->replace('TITLE', $pagename); ! ! if (is_object($newrevision)) { ! // New contents successfully saved... ! ! // Clean out archived versions of this page. ! $cleaner = new ArchiveCleaner($GLOBALS['ExpireParams']); ! $cleaner->cleanPageRevisions($page); ! $warnings = $dbi->GenericWarnings(); ! global $SignatureImg; ! if (empty($warnings)) { ! if (empty($SignatureImg)){ ! // Do redirect to browse page if no signature has been defined. ! // In this case, the user will most likely not see the rest of ! // the HTML we generate (below). ! $request->redirect(WikiURL($pagename, false, 'absolute_url')); } } - - $template->replace('THANK_YOU', - toolbar_Info_ThankYou($pagename, $warnings)); - } else { - // Save failed. - // (This is a bit kludgy...) - $template->replace('THANK_YOU', - ConcurrentUpdates($pagename) - . "<hr noshade=\"noshade\" />"); - $newrevision = $current; } ! $template->setPageRevisionTokens($newrevision); $template->replace('CONTENT', do_transform($newrevision->getContent())); --- 144,201 ---- if ($content == $current->getPackedContent()) { ! // Save failed. ! // (This is a bit kludgy...) ! $template = new WikiTemplate('BROWSE'); ! $template->replace('TITLE', $pagename); ! $template->replace('EDIT_FAIL_MESSAGES', ! NoChangesMade($pagename) ! . QElement('hr', array('noshade' => 'noshade'))); ! $newrevision = $current; ! } else { ! //////////////////////////////////////////////////////////////// ! // ! // From here on, we're actually saving. ! // ! $newrevision = $page->createRevision($editversion + 1, ! $content, $meta, ! ExtractWikiPageLinks($content)); ! $template = new WikiTemplate('BROWSE'); ! $template->replace('TITLE', $pagename); ! ! if (is_object($newrevision)) { ! // New contents successfully saved... ! ! // Clean out archived versions of this page. ! $cleaner = new ArchiveCleaner($GLOBALS['ExpireParams']); ! $cleaner->cleanPageRevisions($page); ! ! $warnings = $dbi->GenericWarnings(); ! global $SignatureImg; ! if (empty($warnings)) { ! if (empty($SignatureImg)){ ! // Do redirect to browse page if no signature has ! // been defined. In this case, the user will most ! // likely not see the rest of the HTML we generate ! // (below). ! $request->redirect(WikiURL($pagename, false, ! 'absolute_url')); ! } } + + $template->replace('THANK_YOU', + toolbar_Info_ThankYou($pagename, $warnings)); + } else { + // Save failed. + // (This is a bit kludgy...) + $template->replace('EDIT_FAIL_MESSAGES', + ConcurrentUpdates($pagename) + . QElement('hr', + array('noshade' => 'noshade'))); + $newrevision = $current; } } ! $template->setPageRevisionTokens($newrevision); $template->replace('CONTENT', do_transform($newrevision->getContent())); *************** *** 186,190 **** } ! // Local Variables: // mode: php --- 203,207 ---- } ! // Local Variables: // mode: php |