diff options
author | Todd Eisenberger <todd@teisen.be> | 2011-09-27 10:15:15 -0700 |
---|---|---|
committer | Todd Eisenberger <todd@teisen.be> | 2011-09-27 10:15:15 -0700 |
commit | 5dea3dcf800d2588732d0d217429e1d7402208fc (patch) | |
tree | 8fb7412fe7d194ff68e689d43f3dde03477c6836 /plugins | |
parent | 7b8a860de95f2af6855b1ba270e677a0eb4c044c (diff) | |
download | poezio-5dea3dcf800d2588732d0d217429e1d7402208fc.tar.gz poezio-5dea3dcf800d2588732d0d217429e1d7402208fc.tar.bz2 poezio-5dea3dcf800d2588732d0d217429e1d7402208fc.tar.xz poezio-5dea3dcf800d2588732d0d217429e1d7402208fc.zip |
Add day_change plugin, make translate update right away
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/day_change.py | 31 | ||||
-rw-r--r-- | plugins/translate.py | 1 |
2 files changed, 32 insertions, 0 deletions
diff --git a/plugins/day_change.py b/plugins/day_change.py new file mode 100644 index 00000000..cac69a75 --- /dev/null +++ b/plugins/day_change.py @@ -0,0 +1,31 @@ +from gettext import gettext as _ +from plugin import BasePlugin +import datetime +import tabs +import timed_events + +class Plugin(BasePlugin): + def init(self): + self.schedule_event() + + def cleanup(self): + self.core.remove_timed_event(self.next_event) + + def schedule_event(self): + day_change = datetime.datetime.combine(datetime.date.today(), datetime.time()) + day_change += datetime.timedelta(1) + self.next_event = timed_events.TimedEvent(day_change, self.day_change) + self.core.add_timed_event(self.next_event) + + def day_change(self): + msg = datetime.date.today().strftime(_("Day changed to %x")) + + for tab in self.core.tabs: + if (isinstance(tab, tabs.MucTab) or + isinstance(tab, tabs.PrivateTab) or + isinstance(tab, tabs.ConversationTab)): + room = tab.get_room() + room.add_message(msg) + + self.core.refresh_window() + self.schedule_event() diff --git a/plugins/translate.py b/plugins/translate.py index 625d78e7..880c8af1 100644 --- a/plugins/translate.py +++ b/plugins/translate.py @@ -28,6 +28,7 @@ class Plugin(BasePlugin): text, lang = translate(body) if lang != TARGET_LANG: room.add_message(text, nickname=nick_from) + self.core.refresh_window() except Exception as e: import traceback self.core.information("Exception in translator! %s" % (traceback.format_exc(),)) |