[wiki-lenny/PageGraphicalEditor.py] Restreindre l'utilisation du GUI à l'édition
Les pages dans la catégorie CatégorieEditeurGraphiqueInterdit ne peuvent être éditées au moyen de l'éditeur graphique. L'utilisateur est redirigé vers l'éditeur texte *BUGS* Il y a trop d'effets de bords trop sales pour que je puisse me prononcer sur la probabilité de bugs introduits par mon patch. darcs-hash:20081018004435-bd074-baf51a18274088abe4e21b399cec8e4d3015b436.gz
This commit is contained in:
parent
46b78c472e
commit
148a75af9f
1 changed files with 19 additions and 2 deletions
|
@ -1,4 +1,4 @@
|
||||||
# -*- coding: iso-8859-1 -*-
|
# -*- coding: utf-8 -*-
|
||||||
"""
|
"""
|
||||||
MoinMoin - Call the GUI editor (FCKeditor)
|
MoinMoin - Call the GUI editor (FCKeditor)
|
||||||
|
|
||||||
|
@ -52,7 +52,8 @@ class PageGraphicalEditor(PageEditor.PageEditor):
|
||||||
form = request.form
|
form = request.form
|
||||||
_ = self._
|
_ = self._
|
||||||
request.disableHttpCaching(level=2)
|
request.disableHttpCaching(level=2)
|
||||||
request.emit_http_headers()
|
page_categories = self.getCategories(request)
|
||||||
|
|
||||||
|
|
||||||
raw_body = ''
|
raw_body = ''
|
||||||
msg = None
|
msg = None
|
||||||
|
@ -63,13 +64,24 @@ class PageGraphicalEditor(PageEditor.PageEditor):
|
||||||
|
|
||||||
# check edit permissions
|
# check edit permissions
|
||||||
if not request.user.may.write(self.page_name):
|
if not request.user.may.write(self.page_name):
|
||||||
|
# L'effet de bord dans le test empêche-t-il la ligne suivante
|
||||||
|
# d'être exécutée ?
|
||||||
msg = _('You are not allowed to edit this page.')
|
msg = _('You are not allowed to edit this page.')
|
||||||
elif not self.isWritable():
|
elif not self.isWritable():
|
||||||
|
# même remarque.
|
||||||
msg = _('Page is immutable!')
|
msg = _('Page is immutable!')
|
||||||
elif self.rev:
|
elif self.rev:
|
||||||
# Trying to edit an old version, this is not possible via
|
# Trying to edit an old version, this is not possible via
|
||||||
# the web interface, but catch it just in case...
|
# the web interface, but catch it just in case...
|
||||||
msg = _('Cannot edit old revisions!')
|
msg = _('Cannot edit old revisions!')
|
||||||
|
elif u"CatégorieEditeurGraphiqueInterdit" in page_categories:
|
||||||
|
msg =_('Cannot edit this page with the graphical editor')
|
||||||
|
request.theme.add_msg(msg, "error")
|
||||||
|
from MoinMoin.PageEditor import PageEditor
|
||||||
|
# Pour éviter à l'utilisateur de rester sur le cul, on le
|
||||||
|
# redirige vers l'éditeur texte
|
||||||
|
pg = PageEditor(request, self.page_name, **kw)
|
||||||
|
pg.sendEditor()
|
||||||
else:
|
else:
|
||||||
# try to acquire edit lock
|
# try to acquire edit lock
|
||||||
ok, edit_lock_message = self.lock.acquire()
|
ok, edit_lock_message = self.lock.acquire()
|
||||||
|
@ -84,9 +96,14 @@ class PageGraphicalEditor(PageEditor.PageEditor):
|
||||||
# Did one of the prechecks fail?
|
# Did one of the prechecks fail?
|
||||||
if msg:
|
if msg:
|
||||||
request.theme.add_msg(msg, "error")
|
request.theme.add_msg(msg, "error")
|
||||||
|
# Il est manifestement hors de question d'avoir envoyé les
|
||||||
|
# headers http avant d'appeler cette fonction
|
||||||
self.send_page()
|
self.send_page()
|
||||||
return
|
return
|
||||||
|
|
||||||
|
# par contre, il faut les envoyer dans le cas contraire
|
||||||
|
request.emit_http_headers()
|
||||||
|
|
||||||
# check if we want to load a draft
|
# check if we want to load a draft
|
||||||
use_draft = None
|
use_draft = None
|
||||||
if 'button_load_draft' in form:
|
if 'button_load_draft' in form:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue