[Checkins] SVN: zope.app.form/trunk/ - The URIDisplayWidget doesn't render an anchor for empty/None values.

Christian Zagrodnick cz at gocept.com
Wed Nov 26 04:39:22 EST 2008


Log message for revision 93358:
  - The URIDisplayWidget doesn't render an anchor for empty/None values.
  
  

Changed:
  U   zope.app.form/trunk/CHANGES.txt
  U   zope.app.form/trunk/src/zope/app/form/browser/tests/test_textwidget.py
  U   zope.app.form/trunk/src/zope/app/form/browser/textwidgets.py

-=-
Modified: zope.app.form/trunk/CHANGES.txt
===================================================================
--- zope.app.form/trunk/CHANGES.txt	2008-11-26 09:30:59 UTC (rev 93357)
+++ zope.app.form/trunk/CHANGES.txt	2008-11-26 09:39:22 UTC (rev 93358)
@@ -7,6 +7,7 @@
 
 - Depending on zope.schema>=3.5a1 which uses the builtin ``set`` instead of the
   ``sets`` module.
+- The URIDisplayWidget doesn't render an anchor for empty/None values.
 
 3.6.3 (2008-10-15)
 ==================

Modified: zope.app.form/trunk/src/zope/app/form/browser/tests/test_textwidget.py
===================================================================
--- zope.app.form/trunk/src/zope/app/form/browser/tests/test_textwidget.py	2008-11-26 09:30:59 UTC (rev 93357)
+++ zope.app.form/trunk/src/zope/app/form/browser/tests/test_textwidget.py	2008-11-26 09:39:22 UTC (rev 93358)
@@ -150,6 +150,13 @@
         self.verifyResult(self._widget(), ["<a", 'href="uri:fake"',
                                            'target="there"'])
 
+    def testEmptyRenderReturnsEmptyString(self):
+        self._widget.setRenderedValue(None)
+        self.assertEquals(self._widget(), "")
+        self._widget.setRenderedValue('')
+        self.assertEquals(self._widget(), "")
+
+
 class DateDisplayWidgetTest(BrowserWidgetTest):
 
     _WidgetFactory = DateDisplayWidget

Modified: zope.app.form/trunk/src/zope/app/form/browser/textwidgets.py
===================================================================
--- zope.app.form/trunk/src/zope/app/form/browser/textwidgets.py	2008-11-26 09:30:59 UTC (rev 93357)
+++ zope.app.form/trunk/src/zope/app/form/browser/textwidgets.py	2008-11-26 09:39:22 UTC (rev 93358)
@@ -216,6 +216,9 @@
             content = self._data
         else:
             content = self.context.default
+        if not content:
+            # If there is no content it is not useful to render an anchor.
+            return ''
         content = escape(content)
         kw = dict(contents=content, href=content)
         if self.linkTarget:



More information about the Checkins mailing list