1.1 --- a/WebStack/Webware.py Fri Aug 27 23:53:03 2004 +0000
1.2 +++ b/WebStack/Webware.py Sat Aug 28 16:51:53 2004 +0000
1.3 @@ -8,7 +8,7 @@
1.4 from cgi import parse_qs
1.5 import StringIO
1.6 from Helpers import Environment
1.7 -from Helpers.Request import Cookie
1.8 +from Helpers.Request import Cookie, get_body_field
1.9 from Helpers.Response import ConvertingStream
1.10
1.11 class Transaction(Generic.Transaction):
1.12 @@ -174,28 +174,18 @@
1.13 Returns a dictionary mapping field names to lists of values (even if a
1.14 single value is associated with any given field name). Each value is
1.15 either a Unicode object (representing a simple form field, for example)
1.16 - or a file-like object (representing a file upload form field, for
1.17 - example).
1.18 + or a plain string (representing a file upload form field, for example).
1.19 """
1.20
1.21 encoding = self.get_content_type().charset or encoding or "iso-8859-1"
1.22 -
1.23 - # Fix the non-list results.
1.24 -
1.25 fields = {}
1.26 for field_name, field_values in self.trans.request().fields().items():
1.27 if type(field_values) == type([]):
1.28 fields[field_name] = []
1.29 - for field_value in field_values:
1.30 - if hasattr(field_value, "file"):
1.31 - fields[field_name].append(field_value.file)
1.32 - else:
1.33 - fields[field_name].append(unicode(field_value, encoding))
1.34 + for field_str in field_values:
1.35 + fields[field_name].append(get_body_field(field_str, encoding))
1.36 else:
1.37 - if hasattr(field_values, "file"):
1.38 - fields[field_name] = [field_values.file]
1.39 - else:
1.40 - fields[field_name] = [unicode(field_values, encoding)]
1.41 + fields[field_name] = [get_body_field(field_values, encoding)]
1.42 return fields
1.43
1.44 def get_user(self):