Class FieldStorage: add two new methods, getfirst() and getlist(),
that provide a somewhat more uniform interface to getting values.
This is from SF patch #453691.
diff --git a/Lib/cgi.py b/Lib/cgi.py
index 55ed3d1..19304af 100755
--- a/Lib/cgi.py
+++ b/Lib/cgi.py
@@ -564,6 +564,28 @@
else:
return default
+ def getfirst(self, key, default=None):
+ """ Return the first value received."""
+ if self.has_key(key):
+ value = self[key]
+ if type(value) is type([]):
+ return value[0].value
+ else:
+ return value.value
+ else:
+ return default
+
+ def getlist(self, key):
+ """ Return list of received values."""
+ if self.has_key(key):
+ value = self[key]
+ if type(value) is type([]):
+ return map(lambda v: v.value, value)
+ else:
+ return [value.value]
+ else:
+ return []
+
def keys(self):
"""Dictionary style keys() method."""
if self.list is None: