Mercurial > p > roundup > code
comparison 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 |
comparison
equal
deleted
inserted
replaced
| 4057:885069b5f328 | 4058:3057092623e1 |
|---|---|
| 1828 if self._value is None: | 1828 if self._value is None: |
| 1829 return '' | 1829 return '' |
| 1830 linkcl = self._db.classes[self._prop.classname] | 1830 linkcl = self._db.classes[self._prop.classname] |
| 1831 k = linkcl.labelprop(1) | 1831 k = linkcl.labelprop(1) |
| 1832 if num_re.match(self._value): | 1832 if num_re.match(self._value): |
| 1833 value = str(linkcl.get(self._value, k)) | 1833 try: |
| 1834 value = str(linkcl.get(self._value, k)) | |
| 1835 except IndexError: | |
| 1836 value = self._value | |
| 1834 else : | 1837 else : |
| 1835 value = self._value | 1838 value = self._value |
| 1836 if escape: | 1839 if escape: |
| 1837 value = cgi.escape(value) | 1840 value = cgi.escape(value) |
| 1838 return value | 1841 return value |
| 2040 | 2043 |
| 2041 linkcl = self._db.classes[self._prop.classname] | 2044 linkcl = self._db.classes[self._prop.classname] |
| 2042 k = linkcl.labelprop(1) | 2045 k = linkcl.labelprop(1) |
| 2043 labels = [] | 2046 labels = [] |
| 2044 for v in self._value: | 2047 for v in self._value: |
| 2045 label = linkcl.get(v, k) | 2048 if num_re.match(v): |
| 2046 # fall back to designator if label is None | 2049 try: |
| 2047 if label is None: label = '%s%s'%(self._prop.classname, k) | 2050 label = linkcl.get(v, k) |
| 2051 except IndexError: | |
| 2052 label = None | |
| 2053 # fall back to designator if label is None | |
| 2054 if label is None: label = '%s%s'%(self._prop.classname, k) | |
| 2055 else: | |
| 2056 label = v | |
| 2048 labels.append(label) | 2057 labels.append(label) |
| 2049 value = ', '.join(labels) | 2058 value = ', '.join(labels) |
| 2050 if escape: | 2059 if escape: |
| 2051 value = cgi.escape(value) | 2060 value = cgi.escape(value) |
| 2052 return value | 2061 return value |
