equal
deleted
inserted
replaced
24 # import Zope3 packages |
24 # import Zope3 packages |
25 from zope.datetime import parseDatetimetz |
25 from zope.datetime import parseDatetimetz |
26 from zope.i18n import translate |
26 from zope.i18n import translate |
27 |
27 |
28 # import local packages |
28 # import local packages |
29 from timezone import gmtime |
29 from ztfy.utils.request import queryRequest |
|
30 from ztfy.utils.timezone import gmtime, tztime |
30 |
31 |
31 from ztfy.utils import _ |
32 from ztfy.utils import _ |
32 |
33 |
33 |
34 |
34 def unidate(value): |
35 def unidate(value): |
71 @rtype: datetime |
72 @rtype: datetime |
72 """ |
73 """ |
73 if type(value) is datetime: |
74 if type(value) is datetime: |
74 return value |
75 return value |
75 return datetime(value.year, value.month, value.day) |
76 return datetime(value.year, value.month, value.day) |
|
77 |
|
78 |
|
79 EXT_DATE_FORMAT = _("on %d/%m/%Y") |
|
80 EXT_DATETIME_FORMAT = _("on %d/%m/%Y at %H:%M") |
|
81 |
|
82 def formatDate(value, format=EXT_DATE_FORMAT, request=None): |
|
83 if request is None: |
|
84 request = queryRequest() |
|
85 return datetime.strftime(tztime(value), translate(format, context=request).encode('utf-8')).decode('utf-8') |
|
86 |
|
87 def formatDatetime(value, format=EXT_DATETIME_FORMAT, request=None): |
|
88 return formatDate(value, format, request) |
76 |
89 |
77 |
90 |
78 def getAge(value): |
91 def getAge(value): |
79 """Get age of a given datetime (including timezone) compared to current datetime (in UTC) |
92 """Get age of a given datetime (including timezone) compared to current datetime (in UTC) |
80 |
93 |