equal
deleted
inserted
replaced
15 |
15 |
16 __docformat__ = "restructuredtext" |
16 __docformat__ = "restructuredtext" |
17 |
17 |
18 # import standard packages |
18 # import standard packages |
19 import pytz |
19 import pytz |
20 from datetime import date |
20 from datetime import datetime |
21 |
21 |
22 # import Zope3 interfaces |
22 # import Zope3 interfaces |
23 from zope.interface.common.idatetime import ITZInfo |
23 from zope.interface.common.idatetime import ITZInfo |
24 from zope.publisher.interfaces.browser import IBrowserRequest |
24 from zope.publisher.interfaces.browser import IBrowserRequest |
25 |
25 |
47 |
47 |
48 |
48 |
49 def tztime(value): |
49 def tztime(value): |
50 if not value: |
50 if not value: |
51 return None |
51 return None |
52 if isinstance(value, date): |
52 if not isinstance(value, datetime): |
53 return value |
53 return value |
54 if not value.tzinfo: |
54 if not value.tzinfo: |
55 value = GMT.localize(value) |
55 value = GMT.localize(value) |
56 return value.astimezone(tzinfo()) |
56 return value.astimezone(tzinfo()) |
57 |
57 |
58 |
58 |
59 def gmtime(value): |
59 def gmtime(value): |
60 if not value: |
60 if not value: |
61 return None |
61 return None |
62 if isinstance(value, date): |
62 if not isinstance(value, datetime): |
63 return value |
63 return value |
64 if not value.tzinfo: |
64 if not value.tzinfo: |
65 value = GMT.localize(value) |
65 value = GMT.localize(value) |
66 return value.astimezone(GMT) |
66 return value.astimezone(GMT) |