[Checkins]
SVN: zc.datetimewidget/branches/gintas-dateranges/src/zc/datetimewidget/
Bugfix: the Date field in Zope 3 now (since rev 71128)
explicitly requires
Marius Gedminas
marius at pov.lt
Thu Nov 16 14:49:07 EST 2006
Log message for revision 71146:
Bugfix: the Date field in Zope 3 now (since rev 71128) explicitly requires
datetime.date() values and will no longer accept datetime.datetimes().
(Also updated the functional test to actually use the Date and Datetime widgets
for the start/end date fields.)
Changed:
U zc.datetimewidget/branches/gintas-dateranges/src/zc/datetimewidget/datetimewidget.py
U zc.datetimewidget/branches/gintas-dateranges/src/zc/datetimewidget/demo/README.txt
U zc.datetimewidget/branches/gintas-dateranges/src/zc/datetimewidget/ftesting.zcml
-=-
Modified: zc.datetimewidget/branches/gintas-dateranges/src/zc/datetimewidget/datetimewidget.py
===================================================================
--- zc.datetimewidget/branches/gintas-dateranges/src/zc/datetimewidget/datetimewidget.py 2006-11-16 19:37:42 UTC (rev 71145)
+++ zc.datetimewidget/branches/gintas-dateranges/src/zc/datetimewidget/datetimewidget.py 2006-11-16 19:49:06 UTC (rev 71146)
@@ -307,9 +307,14 @@
return self.context.missing_value
else:
try:
- return parseDatetimetz(input)
+ dt = parseDatetimetz(input)
except (DateTimeError, ValueError, IndexError), v:
return super(DatetimeBase, self)._toFieldValue(input)
+ else:
+ if self._showsTime:
+ return dt
+ else:
+ return dt.date()
def _toFormValue(self, value):
if value == self.context.missing_value:
Modified: zc.datetimewidget/branches/gintas-dateranges/src/zc/datetimewidget/demo/README.txt
===================================================================
--- zc.datetimewidget/branches/gintas-dateranges/src/zc/datetimewidget/demo/README.txt 2006-11-16 19:37:42 UTC (rev 71145)
+++ zc.datetimewidget/branches/gintas-dateranges/src/zc/datetimewidget/demo/README.txt 2006-11-16 19:49:06 UTC (rev 71146)
@@ -25,4 +25,11 @@
>>> browser.url
'http://localhost/mydemo/@@edit.html'
+We can fill in the values
+ >>> browser.getControl('Start Date').value = '2006-11-15'
+ >>> browser.getControl('End Date').value = '2006-11-16'
+ >>> browser.getControl('Start Datetime').value = '2006-11-15T07:49:31Z'
+ >>> browser.getControl('End Datetime').value = '2006-11-16T19:46:00Z'
+ >>> browser.getControl('Change').click()
+
Modified: zc.datetimewidget/branches/gintas-dateranges/src/zc/datetimewidget/ftesting.zcml
===================================================================
--- zc.datetimewidget/branches/gintas-dateranges/src/zc/datetimewidget/ftesting.zcml 2006-11-16 19:37:42 UTC (rev 71145)
+++ zc.datetimewidget/branches/gintas-dateranges/src/zc/datetimewidget/ftesting.zcml 2006-11-16 19:49:06 UTC (rev 71146)
@@ -16,6 +16,23 @@
<include package="zope.app.i18n.tests" />
-->
+ <view
+ type="zope.publisher.interfaces.browser.IBrowserRequest"
+ for="zope.schema.interfaces.IDatetime"
+ provides="zope.app.form.interfaces.IInputWidget"
+ factory="zc.datetimewidget.datetimewidget.DatetimeWidget"
+ permission="zope.Public"
+ />
+
+ <view
+ type="zope.publisher.interfaces.browser.IBrowserRequest"
+ for="zope.schema.interfaces.IDate"
+ provides="zope.app.form.interfaces.IInputWidget"
+ factory="zc.datetimewidget.datetimewidget.DateWidget"
+ permission="zope.Public"
+ />
+
+
<role id="zope.Anonymous" title="Everybody"
description="All users have this role implicitly" />
<role id="zope.Manager" title="Site Manager" />
@@ -33,4 +50,4 @@
principal="zope.manager"
/>
-</configure>
\ No newline at end of file
+</configure>
More information about the Checkins
mailing list