diff -r 8ab046023ff1 MoinMoin/action/edit.py --- a/MoinMoin/action/edit.py Sun Jan 05 04:38:29 2014 +0100 +++ b/MoinMoin/action/edit.py Fri Jan 31 02:56:37 2014 -0800 @@ -12,8 +12,20 @@ from MoinMoin.Page import Page from MoinMoin.web.utils import check_surge_protect +def redirectSelf(request): + request.reset() + path = request.environ['PATH_INFO'] + '#' + request.http_redirect(request.environ['SCRIPT_NAME']+path) + def execute(pagename, request): """ edit a page """ + + # did user hit cancel button? + cancelled = 'button_cancel' in request.form + + if cancelled: + return redirectSelf(request) + _ = request.getText if 'button_preview' in request.form and 'button_spellcheck' in request.form: @@ -76,9 +88,6 @@ pg.sendEditor() return - # did user hit cancel button? - cancelled = 'button_cancel' in request.form - from MoinMoin.error import ConvertError try: if lasteditor == 'gui': @@ -182,8 +191,10 @@ pg.sendEditor(preview=savetext, comment=comment, staytop=1) return - # Send new page after successful save - request.reset() + # Redirect to new page after successful save + # Do not send, or reload will re-post the edit data and be annoying + redirectSelf(request) + return pg = Page(request, pagename) # sets revision number to default for further actions