Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions news/178.bugfix
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Fix datetime settings in fc-properties view

- used via ajax call in folder_content view
- use the IPublication Adapter for settings correct datetime
- respect the portal timezone settings
- remove unused imports
[1letter]
18 changes: 10 additions & 8 deletions plone/app/content/browser/contents/properties.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
from DateTime import DateTime
from datetime import datetime
from plone.app.content.browser.contents import ContentsBaseAction
from plone.app.content.interfaces import IStructureAction
from plone.app.dexterity.behaviors.metadata import ICategorization
from plone.app.dexterity.behaviors.metadata import IPublication
from plone.app.widgets.utils import get_datetime_options
from plone.base import PloneMessageFactory as _
from plone.base.defaultpage import check_default_page_via_view
from plone.dexterity.interfaces import IDexterityContent
from Products.CMFCore.interfaces._content import IFolderish
from Products.CMFCore.utils import getToolByName
from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile
from zope.component import getUtility
from zope.component.hooks import getSite
Expand Down Expand Up @@ -102,11 +101,14 @@ def action(self, obj, bypass_recurse=False):
if recurse and IFolderish.providedBy(obj):
for sub in obj.values():
self.action(sub)

if self.effectiveDate and hasattr(obj, "effective_date"):
obj.effective_date = DateTime(self.effectiveDate)
if self.expirationDate and hasattr(obj, "expiration_date"):
obj.expiration_date = DateTime(self.expirationDate)

publication = IPublication(obj, None)
if publication:
if self.effectiveDate:
publication.effective = datetime.strptime(self.effectiveDate, "%Y-%m-%dT%H:%M")
if self.expirationDate:
publication.expiration = datetime.strptime(self.expirationDate, "%Y-%m-%dT%H:%M")

if self.copyright and hasattr(obj, "rights"):
obj.rights = self.copyright
if self.contributors and hasattr(obj, "contributors"):
Expand Down