[Zope-Checkins] CVS: Zope2 - util.py:1.5
andreas@serenade.digicool.com
andreas@serenade.digicool.com
Mon, 11 Jun 2001 12:04:22 -0400
Update of /cvs-repository/Zope2/lib/python/Products/PluginIndexes/common
In directory serenade:/tmp/cvs-serv12046
Modified Files:
util.py
Log Message:
added additional check for DateTime objects
--- Updated File util.py in package Zope2 --
--- util.py 2001/06/01 18:53:40 1.4
+++ util.py 2001/06/11 16:04:21 1.5
@@ -88,6 +88,7 @@
import re
from types import StringType,ListType,TupleType,DictType,InstanceType
+from DateTime import DateTime
class parseIndexRequest:
"""
@@ -145,25 +146,33 @@
keys = request[iid]
if type(keys) == InstanceType:
- """ query is of type record """
- record = keys
- if hasattr(record,'query'):
- keys = record.query
- else:
- raise self.ParserException,\
- "record for '%s' *must* contain a 'query' attribute" % self.id
-
- if type(keys)== StringType:
- self.keys = [keys.strip()]
- elif type(keys) == ListType:
+ if isinstance(keys,DateTime):
+ """query is a DateTime instance"""
+
self.keys = keys
- for op in options:
- if op in ["query"]: continue
+
+ else:
+ """ query is of type record """
+ record = keys
- if hasattr(record,op):
- setattr(self,k,getattr(record,k))
+ if hasattr(record,'query'):
+ keys = record.query
+ else:
+ raise self.ParserException,\
+ "record for '%s' *must* contain a 'query' attribute" % self.id
+
+ if type(keys)== StringType:
+ self.keys = [keys.strip()]
+ elif type(keys) == ListType:
+ self.keys = keys
+
+ for op in options:
+ if op in ["query"]: continue
+
+ if hasattr(record,op):
+ setattr(self,k,getattr(record,k))
elif type(keys)==DictType: