diff roundup/cgi/templating.py @ 4058:3057092623e1

Robustify (Multi)linkHTMLProperty.plain.
author Stefan Seefeld <stefan@seefeld.name>
date Fri, 20 Feb 2009 04:07:04 +0000
parents 885069b5f328
children 34434785f308
line wrap: on
line diff
--- a/roundup/cgi/templating.py	Fri Feb 20 04:02:38 2009 +0000
+++ b/roundup/cgi/templating.py	Fri Feb 20 04:07:04 2009 +0000
@@ -1830,7 +1830,10 @@
         linkcl = self._db.classes[self._prop.classname]
         k = linkcl.labelprop(1)
         if num_re.match(self._value):
-            value = str(linkcl.get(self._value, k))
+            try:
+                value = str(linkcl.get(self._value, k))
+            except IndexError:
+                value = self._value
         else :
             value = self._value
         if escape:
@@ -2042,9 +2045,15 @@
         k = linkcl.labelprop(1)
         labels = []
         for v in self._value:
-            label = linkcl.get(v, k)
-            # fall back to designator if label is None
-            if label is None: label = '%s%s'%(self._prop.classname, k)
+            if num_re.match(v):
+                try:
+                    label = linkcl.get(v, k)
+                except IndexError:
+                    label = None
+                # fall back to designator if label is None
+                if label is None: label = '%s%s'%(self._prop.classname, k)
+            else:
+                label = v
             labels.append(label)
         value = ', '.join(labels)
         if escape:

Roundup Issue Tracker: http://roundup-tracker.org/