Yann Leboulanger pushed to branch xep-0319 at gajim / gajim
Commits:
4aa03778 by Yann Leboulanger at 2017-07-30T22:39:59+02:00
Revert "fix missing return"
This reverts commit 10a50064cdae247f65fe7779b9d85522640e0e48.
- - - - -
8aa331e6 by Yann Leboulanger at 2017-07-30T22:40:10+02:00
Revert "fix parsing since attribute"
This reverts commit ff8c17c38473b7369c6872673a8539164d395b55.
- - - - -
8bf16d30 by Yann Leboulanger at 2017-07-30T22:54:43+02:00
show idle time in local time
- - - - -
2 changed files:
- gajim/common/connection_handlers_events.py
- gajim/tooltips.py
Changes:
=====================================
gajim/common/connection_handlers_events.py
=====================================
--- a/gajim/common/connection_handlers_events.py
+++ b/gajim/common/connection_handlers_events.py
@@ -125,31 +125,6 @@ class HelperEvent:
self.chatstate = child.getName()
break
- def get_datetime(self, time_str):
- """
- Parse datetime according to XEP-0082
- Returns a datetime object or None
- """
- if time_str[-1:] == 'Z':
- # Remove the trailing 'Z'
- time_str = time_str[:-1]
- elif time_str[-6:] == "+00:00":
- # Remove the trailing "+00:00"
- time_str = time_str[:-6]
- else:
- log.info("Wrong timezone defintion: %s" % time_str)
- return None
- try:
- t = datetime.datetime.strptime(time_str, '%Y-%m-%dT%H:%M:%S')
- except ValueError:
- try:
- t = datetime.datetime.strptime(time_str,
- '%Y-%m-%dT%H:%M:%S.%f')
- except ValueError as e:
- log.info('Wrong time format: %s' % str(e))
- return None
- return t
-
class HttpAuthReceivedEvent(nec.NetworkIncomingEvent):
name = 'http-auth-received'
base_network_events = []
@@ -234,9 +209,24 @@ class TimeResultReceivedEvent(nec.NetworkIncomingEvent,
HelperEvent):
def dst(self, dt):
return ZERO
- t = self.get_datetime(utc_time)
- if not t:
+ if utc_time[-1:] == 'Z':
+ # Remove the trailing 'Z'
+ utc_time = utc_time[:-1]
+ elif utc_time[-6:] == "+00:00":
+ # Remove the trailing "+00:00"
+ utc_time = utc_time[:-6]
+ else:
+ log.info("Wrong timezone defintion: %s" % utc_time)
return
+ try:
+ t = datetime.datetime.strptime(utc_time, '%Y-%m-%dT%H:%M:%S')
+ except ValueError:
+ try:
+ t = datetime.datetime.strptime(utc_time,
+ '%Y-%m-%dT%H:%M:%S.%f')
+ except ValueError as e:
+ log.info('Wrong time format: %s' % str(e))
+ return
t = t.replace(tzinfo=UTC())
self.time_info = t.astimezone(contact_tz()).strftime('%c')
@@ -811,8 +801,9 @@ PresenceHelperEvent):
self.idle_time = None
idle_tag = self.stanza.getTag('idle', namespace=nbxmpp.NS_IDLE)
if idle_tag:
- idle_time = idle_tag.getAttr('since')
- self.idle_time = self.get_datetime(idle_time)
+ time_str = idle_tag.getAttr('since')
+ tim = helpers.datetime_tuple(time_str)
+ self.idle_time = timegm(tim)
xtags = self.stanza.getTags('x')
for x in xtags:
namespace = x.getNamespace()
=====================================
gajim/tooltips.py
=====================================
--- a/gajim/tooltips.py
+++ b/gajim/tooltips.py
@@ -715,6 +715,8 @@ class RosterTooltip(Gtk.Window, StatusTable):
if contact.idle_time:
idle_color = gajim.config.get('tooltip_idle_color')
idle_time = contact.idle_time
+ idle_time = time.localtime(contact.idle_time)
+ idle_time = datetime(*(idle_time[:6]))
current = datetime.now()
if idle_time.date() == current.date():
formatted = idle_time.strftime("%X")
View it on GitLab:
https://dev.gajim.org/gajim/gajim/compare/10a50064cdae247f65fe7779b9d85522640e0e48...8bf16d305d2455c39fd27029de4561caad17e66e
_______________________________________________
Commits mailing list
[email protected]
https://lists.gajim.org/cgi-bin/listinfo/commits