Code

- finished of handling of retired flag in filter() (sf bug 635260)
authorrichard <richard@57a73879-2fb5-44c3-a270-3262357dd7e2>
Tue, 10 Dec 2002 00:46:55 +0000 (00:46 +0000)
committerrichard <richard@57a73879-2fb5-44c3-a270-3262357dd7e2>
Tue, 10 Dec 2002 00:46:55 +0000 (00:46 +0000)
[bugfix in mailgw unit tests for x-roundup-loop too]

git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@1396 57a73879-2fb5-44c3-a270-3262357dd7e2

CHANGES.txt
roundup/cgi/templating.py
test/test_mailgw.py

index 3e0552d56595b4711e8d84f031bc10b153b1821f..17d3e390b26097de8022b9d1e13df843c3ce5128 100644 (file)
@@ -17,6 +17,7 @@ are given with the most recent entry first.
 - reverse message listing in issue display (reversion of recent change)
 - bad entries for multilink editing in cgi don't traceback now (sf bug 640310)
 - detect and break email loops (sf bug 640854)
+- finished of handling of retired flag in filter() (sf bug 635260)
 
 
 2002-11-07 0.5.2
index 35bc234b290eb86615a6dcc2b526c9f65bc3b8c0..c2e15940578a1a4ec60e9b4665b760d1e3300050 100644 (file)
@@ -971,7 +971,11 @@ class LinkHTMLProperty(HTMLProperty):
         else:
             s = ''
         l.append(_('<option %svalue="-1">- no selection -</option>')%s)
-        # XXX if the current value is retired, then list it explicitly
+
+        # make sure we list the current value if it's retired
+        if self._value and self._value not in options:
+            options.insert(0, self._value)
+
         for optionid in options:
             # get the option value, and if it's None use an empty string
             option = linkcl.get(optionid, k) or ''
@@ -1018,7 +1022,11 @@ class LinkHTMLProperty(HTMLProperty):
         else:  
             sort_on = ('+', linkcl.labelprop())
         options = linkcl.filter(None, conditions, sort_on, (None, None))
-        # XXX if the current value is retired, then list it explicitly
+
+        # make sure we list the current value if it's retired
+        if self._value and self._value not in options:
+            options.insert(0, self._value)
+
         for optionid in options:
             # get the option value, and if it's None use an empty string
             option = linkcl.get(optionid, k) or ''
@@ -1139,7 +1147,12 @@ class MultilinkHTMLProperty(HTMLProperty):
         height = height or min(len(options), 7)
         l = ['<select multiple name="%s" size="%s">'%(self._name, height)]
         k = linkcl.labelprop(1)
-        # XXX if any of the current values are retired, then list them
+
+        # make sure we list the current values if they're retired
+        for value in self._value:
+            if value not in options:
+                options.insert(0, value)
+
         for optionid in options:
             # get the option value, and if it's None use an empty string
             option = linkcl.get(optionid, k) or ''
index 918f431396773b0077205e62d9b2b63796714d64..469b4cfbafb2f34b7ac4742b5f60ec8b437050f2 100644 (file)
@@ -8,7 +8,7 @@
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
-# $Id: test_mailgw.py,v 1.34 2002-12-10 00:11:16 richard Exp $
+# $Id: test_mailgw.py,v 1.35 2002-12-10 00:46:55 richard Exp $
 
 import unittest, cStringIO, tempfile, os, shutil, errno, imp, sys, difflib
 
@@ -211,6 +211,7 @@ Reply-To: Roundup issue tracker <issue_tracker@your.tracker.email.domain.example
 MIME-Version: 1.0
 Message-Id: <dummy_test_message_id>
 X-Roundup-Name: Roundup issue tracker
+X-Roundup-Loop: hello
 Content-Transfer-Encoding: quoted-printable
 
 
@@ -267,6 +268,7 @@ MIME-Version: 1.0
 Message-Id: <followup_dummy_id>
 In-Reply-To: <dummy_test_message_id>
 X-Roundup-Name: Roundup issue tracker
+X-Roundup-Loop: hello
 Content-Transfer-Encoding: quoted-printable
 
 
@@ -315,6 +317,7 @@ MIME-Version: 1.0
 Message-Id: <followup_dummy_id>
 In-Reply-To: <dummy_test_message_id>
 X-Roundup-Name: Roundup issue tracker
+X-Roundup-Loop: hello
 Content-Transfer-Encoding: quoted-printable
 
 
@@ -361,6 +364,7 @@ MIME-Version: 1.0
 Message-Id: <followup_dummy_id>
 In-Reply-To: <dummy_test_message_id>
 X-Roundup-Name: Roundup issue tracker
+X-Roundup-Loop: hello
 Content-Transfer-Encoding: quoted-printable
 
 
@@ -408,6 +412,7 @@ MIME-Version: 1.0
 Message-Id: <followup_dummy_id>
 In-Reply-To: <dummy_test_message_id>
 X-Roundup-Name: Roundup issue tracker
+X-Roundup-Loop: hello
 Content-Transfer-Encoding: quoted-printable
 
 
@@ -456,6 +461,7 @@ MIME-Version: 1.0
 Message-Id: <followup_dummy_id>
 In-Reply-To: <dummy_test_message_id>
 X-Roundup-Name: Roundup issue tracker
+X-Roundup-Loop: hello
 Content-Transfer-Encoding: quoted-printable
 
 
@@ -504,6 +510,7 @@ MIME-Version: 1.0
 Message-Id: <followup_dummy_id>
 In-Reply-To: <dummy_test_message_id>
 X-Roundup-Name: Roundup issue tracker
+X-Roundup-Loop: hello
 Content-Transfer-Encoding: quoted-printable
 
 
@@ -551,6 +558,7 @@ MIME-Version: 1.0
 Message-Id: <followup_dummy_id>
 In-Reply-To: <dummy_test_message_id>
 X-Roundup-Name: Roundup issue tracker
+X-Roundup-Loop: hello
 Content-Transfer-Encoding: quoted-printable
 
 
@@ -598,6 +606,7 @@ MIME-Version: 1.0
 Message-Id: <followup_dummy_id>
 In-Reply-To: <dummy_test_message_id>
 X-Roundup-Name: Roundup issue tracker
+X-Roundup-Loop: hello
 Content-Transfer-Encoding: quoted-printable
 
 
@@ -706,6 +715,7 @@ MIME-Version: 1.0
 Message-Id: <followup_dummy_id>
 In-Reply-To: <dummy_test_message_id>
 X-Roundup-Name: Roundup issue tracker
+X-Roundup-Loop: hello
 Content-Transfer-Encoding: quoted-printable
 
 
@@ -760,6 +770,7 @@ MIME-Version: 1.0
 Message-Id: <followup_dummy_id>
 In-Reply-To: <dummy_test_message_id>
 X-Roundup-Name: Roundup issue tracker
+X-Roundup-Loop: hello
 Content-Transfer-Encoding: quoted-printable
 
 
@@ -804,6 +815,7 @@ MIME-Version: 1.0
 Message-Id: <followup_dummy_id>
 In-Reply-To: <dummy_test_message_id>
 X-Roundup-Name: Roundup issue tracker
+X-Roundup-Loop: hello
 Content-Transfer-Encoding: quoted-printable