WHERE timestamp >= NOW() - INTERVAL '4 weeks' \
ORDER BY timestamp DESC LIMIT %s", limit)
- def create_page(self, page, author, content, changes=None):
+ def create_page(self, page, author, content, changes=None, address=None):
page = Page.sanitise_page_name(page)
- return self._get_page("INSERT INTO wiki(page, author_uid, markdown, changes) \
- VALUES(%s, %s, %s, %s) RETURNING *", page, author.uid, content, changes)
+ return self._get_page("INSERT INTO wiki(page, author_uid, markdown, changes, address) \
+ VALUES(%s, %s, %s, %s, %s) RETURNING *", page, author.uid, content, changes, address)
- def delete_page(self, page, author):
+ def delete_page(self, page, author, **kwargs):
# Do nothing if the page does not exist
if not self.get_page(page):
return
# Just creates a blank last version of the page
- self.create_page(page, author, None)
+ self.create_page(page, author=author, content=None, **kwargs)
@staticmethod
def _split_url(url):
self.render("wiki/page.html", page=page, latest_revision=latest_revision)
@tornado.web.authenticated
- def post(self):
- page = self.get_argument("page")
-
+ def post(self, page):
content = self.get_argument("content", None)
changes = self.get_argument("changes")
# Delete the page if content is empty
if not content:
with self.db.transaction():
- self.backend.wiki.delete_page(page, self.current_user)
+ self.backend.wiki.delete_page(page, self.current_user,
+ address=self.get_remote_ip())
self.redirect("/")
return
# Create a new page in the database
with self.db.transaction():
page = self.backend.wiki.create_page(page,
- self.current_user, content, changes=changes)
+ self.current_user, content, changes=changes, address=self.get_remote_ip())
# Redirect
self.redirect(page.url)