def parseEvent(user, additional): event = None if not additional: event = Event.getNextEvent() if not event: return u'Es konnte kein in Zukunft stattfindendes Event gefunden werden. Ein Administrator muss erst eines anlegen.' else: additional = additional.lower() if not event: if additional in Event.DAY_DICT.keys(): nextDay = getDateByDay(additional) event = Event.getByDate(nextDay) if not event: return u'Es konnte kein Event am nächsten ' + additional.title( ) + u' (' + nextDay.strftime( "%d.%m.%Y") + u') gefunden werden.' if not event: try: date = datetime.strptime(additional, "%d.%m.%Y").date() event = Event.getByDate(date) if not event: return u'Es konnte kein Event am ' + additional + ' gefunden werden.' except ValueError: pass if event: return event return additional + u' ist keine gültige Eingabe. Möglich sind: \n\tKeine Angabe -> Nächstes event\n\tWochentag -> Event an diesem Tag\n\tDatum(TT.MM.JJJJ) -> Event an diesem Datum'
def createSingleEvent(name, place, date): event = Event.getByDate(date) if event: return u'Am gegebenen Datum existiert bereits ein Event: \n' + event.toString( ) event = Event.create(name, place, date) return u'Event erstellt: \n' + event.toString()
def parseEvent(user, additional): event = None if not additional: event = Event.getNextEvent() if not event: return u'Es konnte kein in Zukunft stattfindendes Event gefunden werden. Ein Administrator muss erst eines anlegen.' else: additional = additional.lower() if not event: if additional in Event.DAY_DICT.keys(): nextDay = getDateByDay(additional) event = Event.getByDate(nextDay) if not event: return u'Es konnte kein Event am nächsten ' + additional.title() + u' (' + nextDay.strftime("%d.%m.%Y") + u') gefunden werden.' if not event: try: date = datetime.strptime(additional, "%d.%m.%Y").date() event = Event.getByDate(date) if not event: return u'Es konnte kein Event am ' + additional + ' gefunden werden.' except ValueError: pass if event: return event return additional + u' ist keine gültige Eingabe. Möglich sind: \n\tKeine Angabe -> Nächstes event\n\tWochentag -> Event an diesem Tag\n\tDatum(TT.MM.JJJJ) -> Event an diesem Datum'
def infoForEvent(user, additional): if additional: try: amount = int(additional) events = Event.getNext(amount) answer = '' if not events: return u'Es konnte kein in Zukunft stattfindendes Event gefunden werden. Ein Administrator muss erst eines anlegen.' if len(events) < amount: answer += u'Es wurden nur ' + str( len(events)) + u' zukünftige Events gefunden. ' answer += u'Die nächsten ' + str(len(events)) + ' Events: \n\n' for e in events: answer += e.toString() answer += u'\n\n' return answer except ValueError: pass result = Responder.parseEvent(user, additional) if isinstance(result, Event.Event): answer = result.toString() answer = answer + list_registered_cancelled(result) return answer if isinstance(result, basestring): return result
def updateRepeating(user, additional): rep = RepeatingEvent.get(int(additional.split()[0])) events = Event.getByRepeating(rep.key) i = 0 for event in events: event.date = event.date + timedelta(minutes=int(additional.split()[1])) event.put() i = i +1 return str(i) + ' events updated'
def updateRepeating(user, additional): rep = RepeatingEvent.get(int(additional.split()[0])) events = Event.getByRepeating(rep.key) i = 0 for event in events: event.date = event.date + timedelta(minutes=int(additional.split()[1])) event.put() i = i + 1 return str(i) + ' events updated'
def delete(user, dateString): if not dateString: return u'Um einen Fahrteneintrag zu löschen muss das Datum des Spiels (TT.MM.JJJJ) angegeben werden.' date = None try: date = datetime.strptime(dateString, "%d.%m.%Y").date() except ValueError as err: return u'Die Datumsangabe ' + dateString + u' hat das falsche Format (HH:MM).' event = Event.getByDate(date) if not event: return u'Es konnte kein Event am ' + dateString + u' gefunden werden.' driverEntry = Drivers.getByEventAndUser(event, user) if driverEntry: driverEntry.delete() return u'Eintrag vom ' + dateString + u' gelöscht.' return u'Fehler'
def create(user, dateString): if not dateString: return u'Um eine Fahrt anzugeben muss das Datum des Spiels (TT.MM.JJJJ) angegeben werden.' date = None try: date = datetime.strptime(dateString, "%d.%m.%Y").date() except ValueError as err: return u'Die Datumsangabe ' + dateString + u' hat das falsche Format (HH:MM).' event = Event.getByDate(date) if not event: return u'Es konnte kein Event am ' + dateString + u' gefunden werden.' driverEntry = Drivers.getByEventAndUser(event, user) if driverEntry: return u'Am ' + dateString + u' existiert bereits ein Eintrag für ' + user.firstName driverEntry = Drivers.create(event, user) if driverEntry: return u'Fahrteneintrag für ' + user.firstName + ' erstellt. Event:\n' + event.toString() return 'Fehler'
def create(user, dateString): if not dateString: return u'Um eine Fahrt anzugeben muss das Datum des Spiels (TT.MM.JJJJ) angegeben werden.' date = None try: date = datetime.strptime(dateString, "%d.%m.%Y").date() except ValueError as err: return u'Die Datumsangabe ' + dateString + u' hat das falsche Format (HH:MM).' event = Event.getByDate(date) if not event: return u'Es konnte kein Event am ' + dateString + u' gefunden werden.' driverEntry = Drivers.getByEventAndUser(event, user) if driverEntry: return u'Am ' + dateString + u' existiert bereits ein Eintrag für ' + user.firstName driverEntry = Drivers.create(event, user) if driverEntry: return u'Fahrteneintrag für ' + user.firstName + ' erstellt. Event:\n' + event.toString( ) return 'Fehler'
def createSingleEvent(name, place, date): event = Event.getByDate(date) if event: return u'Am gegebenen Datum existiert bereits ein Event: \n' + event.toString() event = Event.create(name, place, date) return u'Event erstellt: \n' + event.toString()