From: Michael Tremer Date: Tue, 19 May 2020 16:30:51 +0000 (+0000) Subject: wiki: Allow adding a comment when a page is being restored X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9f1cfab7f1e19500b42018b1e4fddf60ee68f338;p=ipfire.org.git wiki: Allow adding a comment when a page is being restored Signed-off-by: Michael Tremer --- diff --git a/src/backend/wiki.py b/src/backend/wiki.py index d2212ec9..8237da97 100644 --- a/src/backend/wiki.py +++ b/src/backend/wiki.py @@ -453,9 +453,13 @@ class Page(misc.Object): self.backend.messages.send_template("wiki/messages/page-changed", account=watcher, page=self, priority=-10) - def restore(self, author, address): + def restore(self, author, address, comment=None): changes = "Restore to revision from %s" % self.timestamp.isoformat() + # Append comment + if comment: + changes = "%s: %s" % (changes, comment) + return self.backend.wiki.create_page(self.page, author, self.markdown, changes=changes, address=address) diff --git a/src/templates/wiki/confirm-restore.html b/src/templates/wiki/confirm-restore.html index f9acfaed..7bebd42c 100644 --- a/src/templates/wiki/confirm-restore.html +++ b/src/templates/wiki/confirm-restore.html @@ -18,6 +18,11 @@ +
+ +
+ diff --git a/src/web/wiki.py b/src/web/wiki.py index f417e22a..edc52730 100644 --- a/src/web/wiki.py +++ b/src/web/wiki.py @@ -138,13 +138,16 @@ class ActionRestoreHandler(auth.CacheMixin, base.BaseHandler): # Check if we are asked to render a certain revision revision = self.get_argument("revision", None) + comment = self.get_argument("comment", None) # Fetch the wiki page page = self.backend.wiki.get_page(path, revision=revision) with self.db.transaction(): page = page.restore( - author=self.current_user, address=self.get_remote_ip(), + author=self.current_user, + address=self.get_remote_ip(), + comment=comment, ) # Redirect back to page