Sometimes you need minutes which could not be divided by 5 which
Plone doesn’t select you by default. You don’t
need to rewrite core components in Archetypes DateTimeWidget to change
this.
Prerequisites
You need your own BrowserLayer (a skin or theme product) or a
contenttype with at least one marker interface to customize on.
Howto
Create a file called datecomponents.py in your browser directory
with following content:
from plone.app.form.widgets import datecomponents
class DateComponents(datecomponents.DateComponents):
def result(self, date=None, use_ampm=False, starting_year=None,
ending_year=None, future_years=None, minute_step=5):
# Change minute steps to 1
return super(DateComponents, self).result(date, use_ampm,
starting_year, ending_year,
future_years, 1)
… and register it for you browserlayer (replace IThemeSpecific by
your layer interface) or for a type you want to customize its widget
(replace for='*' with your types interface), thats it.
<!-- customize datecomponents -->
<include package="plone.app.form" />
<browser:page
name="date_components_support"
for="*"
permission="zope2.View"
class=".datecomponents.DateComponents"
allowed_interface="plone.app.form.widgets.interfaces.IDateComponents"
layer=".interfaces.IThemeSpecific"
/>