else:
url = script_name()
pathname = url + '/' + pathname
- return pathname
+ return cgi.escape(pathname, quote=True)
def permalink(s):
return re.sub(' ', '-', re.sub('[^a-z0-9_ ]', '', s.lower()).strip())
print '\n Guru Meditation #DEADBEEF.ABADC0DE'
print '</pre>'
print '<script language="JavaScript" type="text/javascript" src="%s" defer="defer"></script>' \
- % relative_url('GuruMeditation.js')
+ % relative_url('sys/GuruMeditation.js')
def send_title(name, text="Limbo", msg_text=None, msg_type='error', writable=False):
global title_done
# Navbar
print '<div class="nav">'
- print link_tag('FrontPage', relative_url(site_icon or 'Home'), 'navlink')
+ print link_tag('FrontPage', site_icon or 'Home', 'navlink')
if name:
print ' <b>' + link_tag('?fullsearch=' + name, text, 'navlink') + '</b> '
else:
if text is None:
text = params # default
elif img_re.match(text):
- text = '<img border="0" src="' + text + '" />'
+ text = '<img border="0" src="' + relative_url(text) + '" alt="' + text + '" />'
if not link_class:
if is_external_url(params):
text = form['savetext'].value
pg.send_editor(text)
+# Used by macros/WordIndex and macros/TitleIndex
def make_index_key():
links = map(lambda ch: '<a href="#%s">%s</a>' % (ch, ch), 'abcdefghijklmnopqrstuvwxyz')
- return '<p><center>'+ ' | '.join(links) + '</center></p>'
+ return '<p style="text-align: center">'+ ' | '.join(links) + '</p>'
def page_list(dirname = None, re = word_re):
return sorted(filter(re.match, os.listdir(dirname or data_dir)))
return link_inline(name, name)
def _html_repl(self, word):
+ if not self.in_html and word.startswith('<div'): word = '</p>' + word
self.in_html += 1
return word; # Pass through
def _htmle_repl(self, word):
self.in_html -= 1
+ if not self.in_html and word.startswith('</div'): word += '<p>'
return word; # Pass through
def _ent_repl(self, s):