summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plugins/day_change.py31
-rw-r--r--plugins/translate.py1
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(),))