Esempio n. 1
0
def execute(pagename, request):
    rev = request.rev or 0
    page = Page(request, pagename, rev=rev)
    request.mimetype = 'text/plain'
    content_disposition='attachment'
    if page.exists():
        request.status_code = 200
        request.last_modified = os.path.getmtime(page._text_filename())
        text = page.encodeTextMimeType(moin2rst(page.body))
        filename_enc = "%s.rst" % page.page_name.encode(config.charset)
        dispo_string = '%s; filename="%s"' % (content_disposition, filename_enc)
        request.headers['Content-Disposition'] = dispo_string
    else:
        request.status_code = 404
        text = u"Page %s not found." % self.page_name
    request.write(text)
Esempio n. 2
0
def do_raw(pagename, request):
    if not request.user.may.read(pagename):
        Page(request, pagename).send_page(request)
        return

    request.http_headers(["Content-type: text/plain;charset=%s" % config.charset])

    if request.form.has_key('rev'):
        try:
            rev = request.form['rev'][0]
            try:
                rev = int(rev)
            except StandardError:
                rev = 0
        except KeyError:
            rev = 0
        page = Page(request, pagename, rev=rev)
    else:
        page = Page(request, pagename)

    text = page.get_raw_body()
    text = page.encodeTextMimeType(text)
    request.write(text)
    raise MoinMoinNoFooter