Example #1
0
 def holiday(month, day, en, de, fr, et=None):
     if et is None:
         et = en
     return add(
         every_unit=cal.Recurrencies.yearly,
         monday=True, tuesday=True, wednesday=True, thursday=True,
         friday=True, saturday=True, sunday=True,
         every=1,
         start_date=datetime.date(
             year=cal.DEMO_START_YEAR,
             month=month, day=day),
         **dd.babelkw('name', en=en, de=de, fr=fr, et=et))
Example #2
0
File: std.py Project: raffas/lino
def objects():

    # ~ add = Instantiator('cal.EventStatus','ref').build
    # ~ yield add('0',**babel_values('name',en=u"tentative",de=u"Vorschlag",   fr=u"proposition"))
    # ~ yield add('1',**babel_values('name',en=u"confirmed",de=u"bestätigt",   fr=u"confirmé"))
    # ~ yield add('2',**babel_values('name',en=u"cancelled",de=u"storniert",   fr=u"annulé"))
    # ~ yield add('3',**babel_values('name',en=u"rescheduled",de=u"verschoben",   fr=u"reporté"))
    # ~ yield add('4',**babel_values('name',en=u"absent",de=u"abwesend",   fr=u"absent"))

    # ~ add = Instantiator('cal.TaskStatus','ref').build
    # ~ yield add('0',**babel_values('name',en=u"needs action",de=u"zu erledigen",   fr=u"à traîter"))
    # ~ yield add('1',**babel_values('name',en=u"in process",de=u"begonnen",   fr=u"commencée"))
    # ~ yield add('2',**babel_values('name',en=u"completed",de=u"erledigt",   fr=u"complétée"))
    # ~ yield add('3',**babel_values('name',en=u"cancelled",de=u"storniert",   fr=u"annulée"))
    # ~ add = Instantiator('cal.AccessClass','ref').build
    # ~ yield add('0',**babel_values('name',en=u"Public",de=u"Öffentlich",   fr=u"Public"))
    # ~ yield add('1',**babel_values('name',en=u"Private",de=u"Privat",   fr=u"Privé"))
    # ~ yield add('2',**babel_values('name',en=u"Confidential",de=u"Vertraulich",   fr=u"Confidentiel"))
    add = Instantiator("cal.Priority", "ref").build
    yield add("1", **babel_values("name", en="very urgent", de="sehr dringend", fr="très urgent"))
    yield add("2", **babel_values("name", en="quite urgent", de="recht dringend", fr="relativement urgent"))
    yield add("3", **babel_values("name", en="relatively urgent", de="ziemlich dringend", fr="relativement urgent"))
    yield add("4", **babel_values("name", en="relatively urgent", de="ziemlich dringend", fr="relativement urgent"))
    yield add("5", **babel_values("name", en="normal", de="normal", fr="normal"))
    yield add("6", **babel_values("name", en="not very urgent", de="nicht sehr niedrig", fr="pas très urgent"))
    yield add("7", **babel_values("name", en="not urgent", de="nicht dringend", fr="pas urgent"))
    yield add("8", **babel_values("name", en="not urgent", de="nicht dringend", fr="pas urgent"))
    yield add(
        "9", **babel_values("name", en="not urgent at all", de="überhaupt nicht dringend", fr="pas urgent du tout")
    )

    calendar = Instantiator("cal.Calendar").build
    general = calendar(**dd.babelkw("name", de="Allgemein", fr="Général", en="General"))
    yield general
    settings.SITE.site_config.site_calendar = general
    # ~ settings.SITE.site_config.holiday_event_type = holidays
    yield settings.SITE.site_config

    event_type = Instantiator("cal.EventType").build
    holidays = event_type(all_rooms=True, **dd.babelkw("name", de="Feiertage", fr="Jours fériés", en="Holidays"))
    yield holidays

    RecurrentEvent = dd.resolve_model("cal.RecurrentEvent")
    add = Instantiator(RecurrentEvent, event_type=holidays).build

    def holiday(month, day, en, de, fr):
        return add(
            every_unit=cal.Recurrencies.yearly,
            monday=True,
            tuesday=True,
            wednesday=True,
            thursday=True,
            friday=True,
            saturday=True,
            sunday=True,
            every=1,
            start_date=datetime.date(year=cal.DEMO_START_YEAR, month=month, day=day),
            **dd.babelkw("name", en=en, de=de, fr=fr)
        )

    yield holiday(1, 1, "New Year's Day", "Neujahr", "Jour de l'an")
    yield holiday(5, 1, "International Workers' Day", "Tag der Arbeit", "Premier Mai")
    yield holiday(7, 21, "National Day", "Nationalfeiertag", "Fête nationale")
    yield holiday(8, 15, "Assumption of Mary", "Mariä Himmelfahrt", "Assomption de Marie")
    yield holiday(10, 31, "All Souls' Day", "Allerseelen", "Commémoration des fidèles défunts")
    yield holiday(11, 1, "All Saints' Day", "Allerheiligen", "Toussaint")
    yield holiday(11, 11, "Armistice with Germany", "Waffenstillstand", "Armistice")
    yield holiday(12, 25, "Christmas", "Weihnachten", "Noël")

    summer = holiday(07, 01, "Summer holidays", "Sommerferien", "Vacances d'été")
    summer.end_date = summer.start_date.replace(month=8, day=31)
    yield summer

    ar = settings.SITE.login()
    for obj in RecurrentEvent.objects.all():
        if not obj.update_reminders(ar):
            raise Exception("Oops, %s generated no events" % obj)
Example #3
0
 def holiday(month,day,en,de,fr):
     return add(
         every_unit=cal.Recurrencies.yearly,
         every=1,
         start_date=settings.SITE.demo_date().replace(month=month,day=day),
         **dd.babelkw('name',en=en,de=de,fr=fr))