Code

Fix to handle bad form submissions, Links and the magic -1 form value.
authorrichard <richard@57a73879-2fb5-44c3-a270-3262357dd7e2>
Tue, 10 Dec 2002 06:02:00 +0000 (06:02 +0000)
committerrichard <richard@57a73879-2fb5-44c3-a270-3262357dd7e2>
Tue, 10 Dec 2002 06:02:00 +0000 (06:02 +0000)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@1397 57a73879-2fb5-44c3-a270-3262357dd7e2

TODO.txt
roundup/cgi/client.py
roundup/cgi/templating.py

index 88a53357146d0c8da328a1917e843f2377e9aa69..07eea9cc5c77beee443e55aa4fdc40e0c2b96646 100644 (file)
--- a/TODO.txt
+++ b/TODO.txt
@@ -69,7 +69,6 @@ pending web       implement a python dict version of the form values
 active  web       UNIX init.d script for roundup-server
 bug     web       query editing isn't fully implemented
 bug     web       no testing for parsePropsFromForm
-active  web       revert to showing entire message in classic issue display
 bug     hyperdb   pysqlite and locks
                   http://www.hwaci.com/sw/sqlite/c_interface.html
 bug     web       implement the request.url attribute?
index f45b3366a9950c39abe711591c2a3cadaf04a10d..c1c8021c5a79df735fbfea724c3d2f07e14cfed2 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: client.py,v 1.59 2002-12-10 00:11:15 richard Exp $
+# $Id: client.py,v 1.60 2002-12-10 06:01:59 richard Exp $
 
 __doc__ = """
 WWW request handler (also used in the stand-alone server).
@@ -1309,9 +1309,8 @@ def parsePropsFromForm(db, cl, form, nodeid=0, num_re=re.compile('^\d+$')):
 
         elif isinstance(proptype, hyperdb.Boolean):
             value = value.lower() in ('yes', 'true', 'on', '1')
-            props[propname] = value
         elif isinstance(proptype, hyperdb.Number):
-            props[propname] = value = int(value)
+            value = int(value)
 
         # register this as received if required?
         if propname in required and value is not None:
index c2e15940578a1a4ec60e9b4665b760d1e3300050..5565fe9406162787a90699af4b6f63476bf3c28c 100644 (file)
@@ -930,6 +930,13 @@ class LinkHTMLProperty(HTMLProperty):
         entry identified by the assignedto property on item, and then the
         name property of that user)
     '''
+    def __init__(self, *args):
+        HTMLProperty.__init__(self, *args)
+        # if we're representing a form value, then the -1 from the form really
+        # should be a None
+        if str(self._value) == '-1':
+            self._value = None
+
     def __getattr__(self, attr):
         ''' return a new HTMLItem '''
        #print 'Link.getattr', (self, attr, self._value)