[Checkins] SVN: zope3org/trunk/src/zorg/wikification/browser/ Fixed
some additional encoding problems in the WikiLink processor.
Uwe Oestermeier
uwe_oestermeier at iwm-kmrc.de
Wed Mar 22 09:22:17 EST 2006
Log message for revision 66118:
Fixed some additional encoding problems in the WikiLink processor.
Changed:
U zope3org/trunk/src/zorg/wikification/browser/templates/linkmenu.pt
U zope3org/trunk/src/zorg/wikification/browser/wikilink.py
U zope3org/trunk/src/zorg/wikification/browser/wikipage.py
-=-
Modified: zope3org/trunk/src/zorg/wikification/browser/templates/linkmenu.pt
===================================================================
--- zope3org/trunk/src/zorg/wikification/browser/templates/linkmenu.pt 2006-03-22 13:02:51 UTC (rev 66117)
+++ zope3org/trunk/src/zorg/wikification/browser/templates/linkmenu.pt 2006-03-22 14:22:16 UTC (rev 66118)
@@ -2,7 +2,7 @@
<div class="anylinkcss" tal:attributes="id view/menu_id" >
<span class="anylinkheader">Edit this Link</span>
<div class="anylinkitem" onclick="editPlaceholderLabel();"
- tal:attributes="onclick string:editPlaceholderLabel('${view/link_id}', '${view/menu_id}', '${view/editableLabel}');">
+ tal:attributes="onclick string:editPlaceholderLabel('${view/link_id}', '${view/menu_id}', '${view/unicodeLabel}');">
Rename
</div>
<a class="anylinkitem" href="#" tal:attributes="href view/link">
@@ -81,7 +81,7 @@
Name:
</td>
<td valign="top" >
- <input id="folder_name" name="name" type="text" size="40" value="FolderName" tal:attributes="value python: view.upload_name or view.editableLabel()" />
+ <input id="folder_name" name="name" type="text" size="40" value="FolderName" tal:attributes="value python: view.upload_name or view.unicodeLabel()" />
</td>
</tr>
<tr>
Modified: zope3org/trunk/src/zorg/wikification/browser/wikilink.py
===================================================================
--- zope3org/trunk/src/zorg/wikification/browser/wikilink.py 2006-03-22 13:02:51 UTC (rev 66117)
+++ zope3org/trunk/src/zorg/wikification/browser/wikilink.py 2006-03-22 14:22:16 UTC (rev 66118)
@@ -102,7 +102,10 @@
label = label[:-1]
return label
+ def unicodeLabel(self) :
+ return unicode(self.editableLabel(), encoding='utf-8')
+
class BaseLinkProcessor(BaseHTMLProcessor) :
""" A link processor that wikifies the links by modifying the
href and other attributes of a link.
@@ -205,24 +208,22 @@
if link.startswith(site_url) :
link = link[len(site_url)+1:]
node = page.site
- url = site_url
elif self.isAbsoluteURL(link) :
return False, link
elif link.startswith("#") :
return False, link
else :
node = page.container
- url = self.absoluteLink(node)
-
+
remaining = urllib.unquote(link)
path = [x for x in remaining.split("/") if x]
while path :
try :
name = path[0]
+ name = unicode(name, encoding='utf-8')
node = zapi.traverseName(node, name)
- url += "/" + name
name = path.pop(0)
- except TraversalError :
+ except (TraversalError, UnicodeEncodeError) :
break
if path :
Modified: zope3org/trunk/src/zorg/wikification/browser/wikipage.py
===================================================================
--- zope3org/trunk/src/zorg/wikification/browser/wikipage.py 2006-03-22 13:02:51 UTC (rev 66117)
+++ zope3org/trunk/src/zorg/wikification/browser/wikipage.py 2006-03-22 14:22:16 UTC (rev 66118)
@@ -196,7 +196,8 @@
body = self.getBody()
if body is not None :
- return self.wikify(unicode(body, encoding="utf-8"))
+ wikified = self.wikify(body)
+ return unicode(wikified, encoding="utf-8")
return self._noindex()
@@ -488,7 +489,7 @@
"""
processor = ILinkProcessor(self)
processor.command = cmd
- processor.link_id = link_id
+ processor.link_id = str(link_id)
body = self.getBody()
processor.feed(body)
file = self.getFile()
More information about the Checkins
mailing list