@@ -784,12 +784,13 @@ def __init__(self, client, classname, nodeid, prop, name, value,
784784 self ._prop = prop
785785 self ._value = value
786786 self ._anonymous = anonymous
787+ self ._name = name
787788 if not anonymous :
788- self ._name = '%s%s@%s' % (classname , nodeid , name )
789+ self ._formname = '%s%s@%s' % (classname , nodeid , name )
789790 else :
790- self ._name = name
791+ self ._formname = name
791792 def __repr__ (self ):
792- return '<HTMLProperty(0x%x) %s %r %r>' % (id (self ), self ._name ,
793+ return '<HTMLProperty(0x%x) %s %r %r>' % (id (self ), self ._formname ,
793794 self ._prop , self ._value )
794795 def __str__ (self ):
795796 return self .plain ()
@@ -857,7 +858,7 @@ def field(self, size = 30):
857858 else :
858859 value = cgi .escape (str (self ._value ))
859860 value = '"' .join (value .split ('"' ))
860- return '<input name="%s" value="%s" size="%s">' % (self ._name , value , size )
861+ return '<input name="%s" value="%s" size="%s">' % (self ._formname , value , size )
861862
862863 def multiline (self , escape = 0 , rows = 5 , cols = 40 ):
863864 ''' Render a multiline form edit field for the property
@@ -868,7 +869,7 @@ def multiline(self, escape=0, rows=5, cols=40):
868869 value = cgi .escape (str (self ._value ))
869870 value = '"' .join (value .split ('"' ))
870871 return '<textarea name="%s" rows="%s" cols="%s">%s</textarea>' % (
871- self ._name , rows , cols , value )
872+ self ._formname , rows , cols , value )
872873
873874 def email (self , escape = 1 ):
874875 ''' Render the value of the property as an obscured email address
@@ -897,15 +898,15 @@ def plain(self):
897898 def field (self , size = 30 ):
898899 ''' Render a form edit field for the property.
899900 '''
900- return '<input type="password" name="%s" size="%s">' % (self ._name , size )
901+ return '<input type="password" name="%s" size="%s">' % (self ._formname , size )
901902
902903 def confirm (self , size = 30 ):
903904 ''' Render a second form edit field for the property, used for
904905 confirmation that the user typed the password correctly. Generates
905906 a field with name ":confirm:name".
906907 '''
907908 return '<input type="password" name=":confirm:%s" size="%s">' % (
908- self ._name , size )
909+ self ._formname , size )
909910
910911class NumberHTMLProperty (HTMLProperty ):
911912 def plain (self ):
@@ -921,7 +922,7 @@ def field(self, size = 30):
921922 else :
922923 value = cgi .escape (str (self ._value ))
923924 value = '"' .join (value .split ('"' ))
924- return '<input name="%s" value="%s" size="%s">' % (self ._name , value , size )
925+ return '<input name="%s" value="%s" size="%s">' % (self ._formname , value , size )
925926
926927class BooleanHTMLProperty (HTMLProperty ):
927928 def plain (self ):
@@ -935,13 +936,13 @@ def field(self):
935936 ''' Render a form edit field for the property
936937 '''
937938 checked = self ._value and "checked" or ""
938- s = '<input type="radio" name="%s" value="yes" %s>Yes' % (self ._name ,
939+ s = '<input type="radio" name="%s" value="yes" %s>Yes' % (self ._formname ,
939940 checked )
940941 if checked :
941942 checked = ""
942943 else :
943944 checked = "checked"
944- s += '<input type="radio" name="%s" value="no" %s>No' % (self ._name ,
945+ s += '<input type="radio" name="%s" value="no" %s>No' % (self ._formname ,
945946 checked )
946947 return s
947948
@@ -960,7 +961,7 @@ def now(self):
960961 DateHTMLProperty.
961962 '''
962963 return DateHTMLProperty (self ._client , self ._nodeid , self ._prop ,
963- self ._name , date .Date ('.' ))
964+ self ._formname , date .Date ('.' ))
964965
965966 def field (self , size = 30 ):
966967 ''' Render a form edit field for the property
@@ -970,7 +971,7 @@ def field(self, size = 30):
970971 else :
971972 value = cgi .escape (str (self ._value .local (self ._db .getUserTimezone ())))
972973 value = '"' .join (value .split ('"' ))
973- return '<input name="%s" value="%s" size="%s">' % (self ._name , value , size )
974+ return '<input name="%s" value="%s" size="%s">' % (self ._formname , value , size )
974975
975976 def reldate (self , pretty = 1 ):
976977 ''' Render the interval between the date and now.
@@ -1004,7 +1005,7 @@ def local(self, offset):
10041005 ''' Return the date/time as a local (timezone offset) date/time.
10051006 '''
10061007 return DateHTMLProperty (self ._client , self ._nodeid , self ._prop ,
1007- self ._name , self ._value .local (offset ))
1008+ self ._formname , self ._value .local (offset ))
10081009
10091010class IntervalHTMLProperty (HTMLProperty ):
10101011 def plain (self ):
@@ -1027,7 +1028,7 @@ def field(self, size = 30):
10271028 else :
10281029 value = cgi .escape (str (self ._value ))
10291030 value = '"' .join (value .split ('"' ))
1030- return '<input name="%s" value="%s" size="%s">' % (self ._name , value , size )
1031+ return '<input name="%s" value="%s" size="%s">' % (self ._formname , value , size )
10311032
10321033class LinkHTMLProperty (HTMLProperty ):
10331034 ''' Link HTMLProperty
@@ -1080,7 +1081,7 @@ def field(self, showid=0, size=None):
10801081 sort_on = linkcl .labelprop ()
10811082 options = linkcl .filter (None , {}, ('+' , sort_on ), (None , None ))
10821083 # TODO: make this a field display, not a menu one!
1083- l = ['<select name="%s">' % self ._name ]
1084+ l = ['<select name="%s">' % self ._formname ]
10841085 k = linkcl .labelprop (1 )
10851086 if self ._value is None :
10861087 s = 'selected '
@@ -1127,7 +1128,7 @@ def menu(self, size=None, height=None, showid=0, additional=[],
11271128 sortfunc = make_sort_function (self ._db , self ._prop .classname )
11281129
11291130 linkcl = self ._db .getclass (self ._prop .classname )
1130- l = ['<select name="%s">' % self ._name ]
1131+ l = ['<select name="%s">' % self ._formname ]
11311132 k = linkcl .labelprop (1 )
11321133 s = ''
11331134 if value is None :
@@ -1244,7 +1245,7 @@ def field(self, size=30, showid=0):
12441245 k = linkcl .labelprop (1 )
12451246 value = [linkcl .get (v , k ) for v in value ]
12461247 value = cgi .escape (',' .join (value ))
1247- return '<input name="%s" size="%s" value="%s">' % (self ._name , size , value )
1248+ return '<input name="%s" size="%s" value="%s">' % (self ._formname , size , value )
12481249
12491250 def menu (self , size = None , height = None , showid = 0 , additional = [],
12501251 ** conditions ):
@@ -1262,7 +1263,7 @@ def menu(self, size=None, height=None, showid=0, additional=[],
12621263 sort_on = ('+' , linkcl .labelprop ())
12631264 options = linkcl .filter (None , conditions , sort_on , (None ,None ))
12641265 height = height or min (len (options ), 7 )
1265- l = ['<select multiple name="%s" size="%s">' % (self ._name , height )]
1266+ l = ['<select multiple name="%s" size="%s">' % (self ._formname , height )]
12661267 k = linkcl .labelprop (1 )
12671268
12681269 # make sure we list the current values if they're retired
0 commit comments