[Moin-user] Including page changes attachment path resolution
Nikolaus Rath
Nikolaus at rath.org
Thu Dec 8 11:23:00 EST 2011
Hi,
Really no one any idea? (Fullquote below in case the message got lost).
Best,
Nikolaus
Nikolaus Rath <Nikolaus at rath.org> writes:
> Hello,
>
> I would like to include a static menu bar in every rendered page. The
> menu bar itself should be editable as a page.
>
> I came up with the following code to include another page:
>
> def includepage(self, page_name):
> request = self.request
> inc_page = Page(request, page_name, formatter=request.formatter)
> if not inc_page.exists():
> return '<p><strong class="error">Page %s does not exist</strong></p>' % page_name
>
> strfile = StringIO.StringIO()
> request.redirect(strfile)
> try:
> inc_page.send_page(content_only=True,
> omit_footnotes=True,
> count_hit=False)
> return strfile.getvalue()
> finally:
> request.redirect()
>
> I then changed my theme's .py file to include the page "navibar":
>
> def navibarpanel(self, d):
> html = [
> u'<div class="sidepanel"><h1>Quick Links</h1>',
> self.navibar(d),
> u'</div>',
>
> u'<div class="sidepanel"><h1>Navigation</h1>',
> self.includepage('navibar'),
> u'</div>',
> ]
> return u''.join(html)
>
>
> This works nicely, but there is one problem: if, in any page, I refer to
> an attachment as [[attachment:bla.zip]], then MoinMoin looks for bla.zip
> in the "navibar" page rather than the page I'm actually viewing.
>
>
> Is there a way to fix this problem? Or is my entire approach wrong?
-Nikolaus
--
»Time flies like an arrow, fruit flies like a Banana.«
PGP fingerprint: 5B93 61F8 4EA2 E279 ABF6 02CF A9AD B7F8 AE4E 425C
More information about the Moin-user
mailing list