# -*- coding: utf-8 -*- from base import ModuleBase import re from datetime import date, timedelta import urllib class Module(ModuleBase): def __init__(self, manager): ModuleBase.__init__(self, manager) def commands(self): return [('!mensa [tomorrow]', 'Zeigt das aktuelle Menü der Mensa der Uni Lübeck an (oder das des nächsten Tages)')] def groupchat(self, room, nick, text, handler): if not re.match(r'!mensa(?:\W|\Z)', text): return tomorrow = re.match(r'!mensa\W+tomorrow(\W|\Z)', text) daystr = 'heute' day = date.today() if tomorrow: day += timedelta(1) daystr = 'morgen' datestr = day.strftime('%d.%m.') try: f = urllib.urlopen(self.manager.config['mensa_url'], 'r') except IOError: handler.reply('Hmm, es scheint gerade keine Daten über das Mensa-Menü zu geben.') return found = False line = f.readline() while line: if re.search(datestr, line): found = True break line = f.readline() if not found: f.close() handler.reply('%s kein Mensa-Menü... ist vielleicht Wochenende?' % daystr) return meals = [] r = re.compile(r'