[Moin-devel] CVS: MoinMoin wikiutil.py,1.107,1.108
J?rgen Hermann
jhermann at users.sourceforge.net
Tue Jul 9 14:24:09 EDT 2002
Update of /cvsroot/moin/MoinMoin
In directory usw-pr-cvs1:/tmp/cvs-serv27118/MoinMoin
Modified Files:
wikiutil.py
Log Message:
Free-form links in quicklinks
Index: wikiutil.py
===================================================================
RCS file: /cvsroot/moin/MoinMoin/wikiutil.py,v
retrieving revision 1.107
retrieving revision 1.108
diff -C2 -r1.107 -r1.108
*** wikiutil.py 9 Jul 2002 21:00:39 -0000 1.107
--- wikiutil.py 9 Jul 2002 21:23:45 -0000 1.108
***************
*** 631,646 ****
if not quicklinks:
for pagename in config.navi_bar:
! quicklinks.append(getSysPage(pagename).page_name)
for pagename in quicklinks:
print (
'<td class="navibar" valign=top align=center bgcolor="#E8E8E8">'
'<font class="navibar" face="Arial,Helvetica" size="-1">'
! ' <a class="navibar" href="%(scriptname)s/%(pagelink)s">%(pagename)s</a> '
! '</font></td>') % {
! 'scriptname': webapi.getScriptname(),
! 'pagelink': quoteWikiname(pagename),
! 'pagename': pagename,
! }
print '</tr></table>'
--- 631,659 ----
if not quicklinks:
for pagename in config.navi_bar:
! if pagename.startswith('['):
! # copy real links verbatim
! quicklinks.append(pagename)
! else:
! quicklinks.append(getSysPage(pagename).page_name)
for pagename in quicklinks:
+ if pagename.startswith('[') and pagename.endswith(']'):
+ try:
+ link, pagename = pagename[1:-1].split(' ', 1)
+ except ValueError, TypeError:
+ link = "#error"
+ pagename = "Broken link: " + cgi.escape(pagename)
+ else:
+ # escape untrusted input!
+ link = cgi.escape(link, quote=1)
+ pagename = cgi.escape(pagename)
+ else:
+ link = webapi.getScriptname() + '/' + quoteWikiname(pagename)
+
print (
'<td class="navibar" valign=top align=center bgcolor="#E8E8E8">'
'<font class="navibar" face="Arial,Helvetica" size="-1">'
! ' <a class="navibar" href="%(link)s">%(pagename)s</a> '
! '</font></td>') % {'link': link, 'pagename': pagename}
print '</tr></table>'
More information about the Moin-devel
mailing list