def index(self, pagename="FrontPage"): try: page = Page.byPagename(pagename) except SQLObjectNotFound: raise tg.redirect("notfound", pagename=pagename) content = publish_parts(page.data, writer_name="html")['html_body'] root = str(tg.url('/')) content = wikiwords.sub(r'<a href="%s\1">\1</a>' % root, content) return dict(data=content, page=page)
def notfound(self, pagename): page = Page(pagename=pagename, data="") DBSession.add(page) return dict(wikipage=page)
def save(self, pagename, data, submit): page = Page.byPagename(pagename) page.data = data tg.flash("Changes saved!") raise tg.redirect("/%s" % pagename)
def pagelist(self): pages = [ page.pagename for page in Page.select(orderBy=Page.q.pagename) ] return dict(pages=pages)
def edit(self, pagename): page = Page.byPagename(pagename) return dict(page=page)
def notfound(self, pagename): page = Page(pagename=pagename, data="") return dict(page=page)
def pagelist(self): pages = [page.pagename for page in Page.select(orderBy=Page.q.pagename)] return dict(pages=pages)