예제 #1
0
파일: std.py 프로젝트: khchine5/voga
def excerpt_types():

    etype = Instantiator('excerpts.ExcerptType').build
    # email_template='Default.eml.html').build

    yield etype(
        build_method='appypdf',
        template='Confirmation.odt',
        backward_compat=True,
        content_type=ContentType.objects.get_for_model(
            rt.models.courses.Enrolment),
        **dd.str2kw('name', _("Confirmation")))

    yield etype(
        build_method='appypdf',
        template='Certificate.odt',
        backward_compat=True,
        content_type=ContentType.objects.get_for_model(
            rt.models.courses.Enrolment),
        **dd.str2kw('name', _("Certificate")))

    yield etype(
        build_method='appypdf',
        template='Default.odt',
        body_template='payment_list.body.html',
        certifying=True,
        content_type=ContentType.objects.get_for_model(
            rt.models.courses.Course),
        **dd.str2kw('name', _("Payment list")))
예제 #2
0
파일: std.py 프로젝트: lino-framework/voga
def objects():

    yield lib_objects()

    GuestRole = rt.models.cal.GuestRole

    yield GuestRole(**dd.str2kw('name', _("Participant")))
    yield GuestRole(**dd.str2kw('name', _("Guide")))
    yield GuestRole(**dd.str2kw('name', _("Teacher")))

    EventType = rt.models.cal.EventType
    RecurrentEvent = rt.models.cal.RecurrentEvent
    Recurrencies = rt.models.cal.Recurrencies
    DEMO_START_YEAR = rt.models.cal.DEMO_START_YEAR

    holidays = EventType.objects.get(
        **dd.str2kw('name', _("Holidays")))
    yield RecurrentEvent(
        event_type=holidays,
        every_unit=Recurrencies.yearly,
        monday=True, tuesday=True, wednesday=True, thursday=True,
        friday=True, saturday=True, sunday=True,
        every=1,
        start_date=datetime.date(
            year=DEMO_START_YEAR,
            month=7, day=1),
        end_date=datetime.date(
            year=DEMO_START_YEAR,
            month=8, day=31),
        **dd.str2kw('name', _("Summer holidays")))
예제 #3
0
파일: std.py 프로젝트: einarfelix/xl
def objects():

    PaperType = rt.models.sales.PaperType
    bm = rt.models.printing.BuildMethods.get_system_default()
    yield PaperType(template="DefaultLetter" + bm.template_ext,
                    **dd.str2kw('name', _("Letter paper")))
    yield PaperType(template="DefaultBlank" + bm.template_ext,
                    **dd.str2kw('name', _("Blank paper")))
예제 #4
0
def objects():

    Account = rt.modules.accounts.Account
    JournalGroups = rt.modules.ledger.JournalGroups
    BankStatement = rt.modules.finan.BankStatement
    PaymentOrder = rt.modules.finan.PaymentOrder
    DisbursementOrdersByJournal = rt.modules.finan.DisbursementOrdersByJournal
    InvoicesByJournal = rt.modules.vatless.InvoicesByJournal
    ProjectInvoicesByJournal = rt.modules.vatless.ProjectInvoicesByJournal
    MatchRule = rt.modules.ledger.MatchRule
    a4400 = Account.objects.get(ref="4400")
    a4450 = Account.objects.get(ref="4450")
    a5800 = Account.objects.get(ref="5800")

    kw = dict(journal_group=JournalGroups.reg)
    kw.update(trade_type='purchases', ref="REG")
    kw.update(dd.str2kw('name', _("Incoming invoices")))
    kw.update(dc=CREDIT)
    yield ProjectInvoicesByJournal.create_journal(**kw)

    kw.update(ref="SREG")
    kw.update(dd.str2kw('name', _("Collective purchase invoices")))
    yield InvoicesByJournal.create_journal(**kw)

    kw.update(dd.str2kw('name', _("Disbursement orders")))
    kw.update(account='4450', ref="AAW")
    kw.update(journal_group=JournalGroups.anw)
    # kw.update(dc=CREDIT)
    # kw.update(invert_due_dc=False)
    jnl = DisbursementOrdersByJournal.create_journal(**kw)
    yield jnl
    yield MatchRule(journal=jnl, account=a4400)

    if dd.is_installed('client_vouchers'):
        ClientVoucher = rt.modules.client_vouchers.ClientVoucher
        kw = dict(journal_group=JournalGroups.aids)
        kw.update(trade_type='aids', ref="AIDS")
        kw.update(dd.str2kw('name', _("Aid allocations")))
        jnl = ClientVoucher.create_journal(**kw)
        yield jnl
        yield MatchRule(journal=jnl, account=a4400)

    kw = dict()
    # kw.update(journal_group=JournalGroups.tre)
    # kw.update(dd.str2kw('name', _("KBC")))
    # kw.update(account='5500', ref="KBC")
    # jnl = BankStatement.create_journal(**kw)
    # yield jnl
    # yield MatchRule(journal=jnl, account=a4450)
    # yield MatchRule(journal=jnl, account=a5800)

    kw.update(journal_group=JournalGroups.zau)
    kw.update(dd.str2kw('name', _("KBC Payment Orders")))
    kw.update(account='5800', ref="ZKBC")
    kw.update(dc=CREDIT)
    jnl = PaymentOrder.create_journal(**kw)
    yield jnl
    yield MatchRule(journal=jnl, account=a4450)
예제 #5
0
def objects():

    Language = Instantiator('languages.Language', "id").build

    yield Language('ger', **dd.str2kw('name', _("German")))
    yield Language('fre', **dd.str2kw('name', _("French")))
    yield Language('eng', **dd.str2kw('name', _("English")))
    yield Language('dut', **dd.str2kw('name', _("Dutch")))
    yield Language('est', **dd.str2kw('name', _("Estonian")))
예제 #6
0
파일: std.py 프로젝트: einarfelix/xl
 def choiceset(name, *choices):
     namekw = dd.str2kw('name', name)
     cs = polls.ChoiceSet(**namekw)
     cs.save()
     for choice in choices:
         namekw = dd.str2kw('name', choice)
         obj = polls.Choice(choiceset=cs, **namekw)
         obj.full_clean()
         obj.save()
     return cs
예제 #7
0
파일: std.py 프로젝트: lino-framework/xl
def objects():

    PaperType = rt.models.sales.PaperType
    bm = rt.models.printing.BuildMethods.get_system_default()
    yield PaperType(
        template="DefaultLetter" + bm.template_ext,
        **dd.str2kw('name', _("Letter paper")))
    yield PaperType(
        template="DefaultBlank" + bm.template_ext,
        **dd.str2kw('name', _("Blank paper")))
예제 #8
0
파일: demo.py 프로젝트: lino-framework/xl
def objects():
    ListType = rt.models.lists.ListType
    List = rt.models.lists.List

    mailing = babeld(ListType, _("Mailing list"))
    yield mailing

    discuss = babeld(ListType, _("Discussion group"))
    yield discuss

    flags = ListType(**dd.str2kw('designation', _("Flags")))
    yield flags

    yield List(list_type=mailing, **dd.str2kw('designation', _("Announcements")))
    yield List(list_type=mailing, **dd.str2kw('designation', _("Weekly newsletter")))

    yield List(list_type=discuss, **dd.str2kw('designation', _("General discussion")))
    yield List(list_type=discuss, **dd.str2kw('designation', _("Beginners forum")))
    yield List(list_type=discuss, **dd.str2kw('designation', _("Developers forum")))

    yield List(list_type=flags,
               **dd.str2kw('designation', _("PyCon 2014")))
    yield List(list_type=flags,
               **dd.str2kw('designation', _("Free Software Day 2014")))
    yield List(list_type=flags, **dd.str2kw('designation', _("Schools")))
예제 #9
0
파일: demo.py 프로젝트: forexblog/xl
def objects():
    ListType = rt.models.lists.ListType
    List = rt.models.lists.List

    mailing = babeld(ListType, _("Mailing list"))
    yield mailing

    discuss = babeld(ListType, _("Discussion group"))
    yield discuss

    flags = ListType(**dd.str2kw('designation', _("Flags")))
    yield flags

    yield List(list_type=mailing, **dd.str2kw('designation', _("Announcements")))
    yield List(list_type=mailing, **dd.str2kw('designation', _("Weekly newsletter")))

    yield List(list_type=discuss, **dd.str2kw('designation', _("General discussion")))
    yield List(list_type=discuss, **dd.str2kw('designation', _("Beginners forum")))
    yield List(list_type=discuss, **dd.str2kw('designation', _("Developers forum")))

    yield List(list_type=flags,
               **dd.str2kw('designation', _("PyCon 2014")))
    yield List(list_type=flags,
               **dd.str2kw('designation', _("Free Software Day 2014")))
    yield List(list_type=flags, **dd.str2kw('designation', _("Schools")))
예제 #10
0
파일: std.py 프로젝트: zhuangyan/lino
def objects():

    add = Instantiator('cal.Priority', 'ref').build
    yield add('1', **dd.babel_values('name', en=u"very urgent", de=u"sehr dringend",   fr=u"très urgent", et=u"väga kiire"))
    yield add('3', **dd.babel_values('name', en=u"urgent", de=u"dringend",   fr=u"urgent", et="kiire"))
    yield add('5', **dd.babel_values('name', en=u"normal", de=u"normal",   fr=u"normal", et="keskmine"))
    yield add('9', **dd.babel_values('name', en=u"not urgent", de=u"nicht dringend",   fr=u"pas urgent", et="mitte kiire"))

    calendar = Instantiator('cal.Calendar').build
    general = calendar(**dd.str2kw('name', _("General")))
                                    # de="Allgemein",
                                    # fr="Général",
    yield general
    settings.SITE.site_config.site_calendar = general
    yield settings.SITE.site_config

    event_type = Instantiator('cal.EventType').build
    holidays = event_type(
        is_appointment=False,
        all_rooms=True, **dd.str2kw('name', _("Holidays")))
    yield holidays
    yield event_type(**dd.str2kw('name', _("Meeting")))

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

    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))
    yield holiday(1, 1, "New Year's Day", "Neujahr", "Jour de l'an", "Uusaasta")
    yield holiday(5, 1, "International Workers' Day", "Tag der Arbeit", "Premier Mai", "kevadpüha")
    yield holiday(7, 21, "National Day", "Nationalfeiertag", "Fête nationale", "Belgia riigipüha")
    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", "Esimene Jõulupüha")

    summer = holiday(07, 01, "Summer holidays", "Sommerferien", "Vacances d'été", "Suvevaheaeg")
    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)
예제 #11
0
 def create_object(self, **kwargs):
     kwargs.update(dd.str2kw('designation', self.text))
     kwargs.update(dc=self.dc)
     kwargs.update(common_item=self)
     kwargs.update(sheet_type=self.sheet_type)
     kwargs.update(mirror_ref=self.mirror_ref)
     return rt.models.sheets.Item(ref=self.value, **kwargs)
예제 #12
0
파일: demo.py 프로젝트: TonisPiip/xl
def objects():
    User = rt.modules.users.User
    Note = rt.modules.notes.Note
    NoteType = rt.modules.notes.NoteType

    USERS = Cycler(User.objects.all())
    if settings.SITE.project_model is not None:
        Project = settings.SITE.project_model
        qs = Project.objects.all()
        if qs.count() > 10:
            qs = qs[:10]
        PROJECTS = Cycler(qs)
    NTYPES = Cycler(NoteType.objects.all())

    notetype = Instantiator('notes.NoteType').build
    tel = notetype(name="phone report")
    yield tel
    yield notetype(name="todo")

    for i in range(100):
        kw = dict(
            user=USERS.pop(),
            date=settings.SITE.demo_date(days=i - 400),
            subject=SUBJECTS.pop(),  # "Important note %d" % i,
            type=NTYPES.pop())
        if settings.SITE.project_model is not None:
            kw.update(project=PROJECTS.pop())
        yield Note(**kw)

    EventType = rt.models.notes.EventType
    system_note = EventType(**dd.str2kw('name', _("System note")))
    yield system_note
    settings.SITE.site_config.system_note_type = system_note
    yield settings.SITE.site_config
예제 #13
0
파일: demo.py 프로젝트: lino-framework/xl
def objects():
    User = rt.models.users.User
    Note = rt.models.notes.Note
    NoteType = rt.models.notes.NoteType

    USERS = Cycler(User.objects.all())
    if settings.SITE.project_model is not None:
        Project = settings.SITE.project_model
        qs = Project.objects.all()
        if qs.count() > 10:
            qs = qs[:10]
        PROJECTS = Cycler(qs)
    NTYPES = Cycler(NoteType.objects.all())

    notetype = Instantiator('notes.NoteType').build
    tel = notetype(name="phone report")
    yield tel
    yield notetype(name="todo")

    for i in range(100):
        kw = dict(user=USERS.pop(),
                  date=settings.SITE.demo_date(days=i-400),
                  subject=SUBJECTS.pop(),  # "Important note %d" % i,
                  type=NTYPES.pop())
        if settings.SITE.project_model is not None:
            kw.update(project=PROJECTS.pop())
        yield Note(**kw)

    EventType = rt.models.notes.EventType
    system_note = EventType(**dd.str2kw('name', _("System note")))
    yield system_note
    # print("20180502 notes.fixtures.demo calls update")
    settings.SITE.site_config.update(system_note_type=system_note)
예제 #14
0
def objects():

    ContentType = rt.models.contenttypes.ContentType
    ExcerptType = rt.models.excerpts.ExcerptType
    RoleType = rt.models.contacts.RoleType

    yield ExcerptType(build_method='weasy2pdf',
                      template='final_report.weasy.html',
                      certifying=True,
                      primary=True,
                      content_type=ContentType.objects.get_for_model(
                          rt.models.avanti.Client),
                      **dd.str2kw('name', _("Final report")))

    yield RoleType(**dd.str2kw('name', _("Integration assistant")))
    yield RoleType(**dd.str2kw('name', _("Social assistant")))
예제 #15
0
파일: std.py 프로젝트: khchine5/welfare
 def group(ref, type, name):
     global current_group
     current_group = Group(
         ref=ref,
         account_type=AccountTypes.get_by_name(type),
         **dd.str2kw('name', name))
     return current_group
예제 #16
0
파일: std.py 프로젝트: khchine5/welfare
def objects():
    TT = rt.modules.immersion.ContractType
    Goal = rt.modules.immersion.Goal

    def str2obj(model, name, **kwargs):
        kwargs.update(dd.str2kw('name', name))
        return model(**kwargs)

    yield str2obj(Goal, _("Discover a job"))
    yield str2obj(Goal, _("Confirm a professional project"))
    yield str2obj(Goal, _("Gain work experience"))
    yield str2obj(Goal, _("Show competences"))

    yield str2obj(TT, _("Internal engagement"), template="Default.odt")
    yield str2obj(TT, _("Immersion training"), template="StageForem.odt")
    yield str2obj(TT, _("MISIP"), template="Default.odt")

    kw = dict(
        email_template='Default.eml.html',
        body_template='immersion.body.html',
        primary=True, certifying=True,
        #template='Default.odt',
        **dd.str2kw('name', _("Immersion training")))
    yield rt.modules.excerpts.ExcerptType.update_for_model(
        'immersion.Contract', **kw)
예제 #17
0
 def create_object(self, **kwargs):
     kwargs.update(dd.str2kw('designation', self.text))
     kwargs.update(dc=self.dc)
     kwargs.update(common_item=self)
     kwargs.update(sheet_type=self.sheet_type)
     kwargs.update(mirror_ref=self.mirror_ref)
     return rt.models.sheets.Item(ref=self.value, **kwargs)
예제 #18
0
파일: std.py 프로젝트: lino-framework/xl
def objects():
    ExcerptType = rt.models.excerpts.ExcerptType
    for cls in rt.models_by_base(Certifiable):
        kw = dd.str2kw('name', cls._meta.verbose_name)
        kw.update(primary=True, certifying=True)
        yield ExcerptType(
            content_type=ContentType.objects.get_for_model(cls),
            **kw)
예제 #19
0
파일: choicelists.py 프로젝트: khchine5/xl
 def create_object(self, **kwargs):
     kwargs.update(dd.str2kw('name', self.text))
     kwargs.update(clearable=self.clearable)
     kwargs.update(needs_partner=self.needs_partner)
     kwargs.update(common_account=self)
     kwargs.update(type=self.account_type)
     return rt.models.accounts.Account(
         ref=self.value, **kwargs)
예제 #20
0
파일: std.py 프로젝트: khchine5/welfare
def objects():
    Recurrencies = rt.modules.cal.Recurrencies
    UploadType = rt.modules.uploads.UploadType

    kw = dict(
        warn_expiry_unit=Recurrencies.monthly,
        warn_expiry_value=2)
    kw.update(max_number=1, wanted=True)
    kw.update(dd.str2kw('name', _("Residence permit")))
    # 'name', de=u"Aufenthaltserlaubnis",
    # fr=u"Permis de séjour", en="Residence permit"))
    yield UploadType(id=UPLOADTYPE_RESIDENCE_PERMIT, **kw)

    kw.update(dd.str2kw('name', _("Work permit")))
        # 'name', de=u"Arbeitserlaubnis",
        # fr=u"Permis de travail", en="Work permit"))
    yield UploadType(id=UPLOADTYPE_WORK_PERMIT, **kw)

    kw.update(warn_expiry_value=1)

    kw.update(dd.str2kw('name', _("Driving licence")))
    yield UploadType(id=UPLOADTYPE_DRIVING_LICENSE, **kw)

    kw.update(dd.str2kw('name', _("Identifying document")))
    yield UploadType(shortcut=Shortcuts.id_document, **kw)

    kw.update(max_number=-1, wanted=False)
    kw.update(warn_expiry_unit='')

    kw.update(dd.str2kw('name', _("Contract")))
    yield UploadType(**kw)

    kw.update(dd.str2kw('name', _("Medical certificate")))
    # de="Ärztliche Bescheinigung",
    # fr="Certificat médical",
    yield UploadType(**kw)

    kw.update(dd.str2kw('name', _("Handicap certificate")))
    # de="Behindertenausweis",
    # fr="Certificat de handicap",
    yield UploadType(**kw)

    kw.update(wanted=True)
    kw.update(dd.str2kw('name', _("Diploma")))
    yield UploadType(**kw)

    kw.update(wanted=False)
    kw.update(dd.str2kw('name', _("Identity card")))
    # fr=u"Carte d'identité", en="Identity card"))
    yield UploadType(**kw)
예제 #21
0
파일: std.py 프로젝트: khchine5/voga
def objects():

    ContentType = rt.modules.contenttypes.ContentType
    ExcerptType = rt.modules.excerpts.ExcerptType
    Course = rt.models.courses.Course

    yield ExcerptType(
        template='presence_sheet.wk.html',
        primary=True,
        build_method='wkhtmltopdf',
        content_type=ContentType.objects.get_for_model(Course),
        **dd.str2kw('name', _("Presence sheet")))

    yield ExcerptType(
        template='overview.wk.html',
        build_method='wkhtmltopdf',
        content_type=ContentType.objects.get_for_model(Course),
        **dd.str2kw('name', _("Overview")))
예제 #22
0
def objects():
    ExcerptType = rt.models.excerpts.ExcerptType
    ContentType = rt.models.contenttypes.ContentType
    for cls in rt.models_by_base(Certifiable):
        ct = ContentType.objects.get_for_model(cls)
        kw = dict(content_type=ct, primary=True, certifying=True)
        if ExcerptType.objects.filter(**kw).count() == 0:
            kw.update(dd.str2kw('name', cls._meta.verbose_name))
            yield ExcerptType(**kw)
예제 #23
0
파일: std.py 프로젝트: forexblog/xl
def objects():
    ExcerptType = rt.models.excerpts.ExcerptType

    kw = dict(template="default.weasy.html",
              primary=True,
              certifying=True,
              build_method='weasy2pdf',
              **dd.str2kw('name', _("VAT declaration")))
    yield ExcerptType.update_for_model(rt.models.bevats.Declaration, **kw)
예제 #24
0
파일: std.py 프로젝트: lino-framework/xl
def unused_objects():
    Milestone = dd.plugins.tickets.milestone_model
    ExcerptType = rt.models.excerpts.ExcerptType

    kw = dict(
        body_template='default.body.html',
        print_recipient=False,
        primary=True, certifying=True)
    kw.update(dd.str2kw('name', Milestone._meta.verbose_name))
    yield ExcerptType.update_for_model(Milestone, **kw)
예제 #25
0
def unused_objects():
    Milestone = dd.plugins.tickets.milestone_model
    ExcerptType = rt.models.excerpts.ExcerptType

    kw = dict(body_template='default.body.html',
              print_recipient=False,
              primary=True,
              certifying=True)
    kw.update(dd.str2kw('name', Milestone._meta.verbose_name))
    yield ExcerptType.update_for_model(Milestone, **kw)
예제 #26
0
파일: choicelists.py 프로젝트: forexblog/xl
 def create_object(self, **kwargs):
     kwargs.update(dd.str2kw('name', self.text))
     kwargs.update(clearable=self.clearable)
     kwargs.update(needs_partner=self.needs_partner)
     kwargs.update(common_account=self)
     # if dd.is_installed('sheets'):
     #     kwargs.update(sheet_item=self.sheet_item.get_object())
     # else:
     #     kwargs.pop('sheet_item', None)
     return rt.models.ledger.Account(ref=self.value, **kwargs)
예제 #27
0
 def create_object(self, **kwargs):
     kwargs.update(dd.str2kw('name', self.text))
     kwargs.update(clearable=self.clearable)
     kwargs.update(needs_partner=self.needs_partner)
     kwargs.update(common_account=self)
     # if dd.is_installed('sheets'):
     #     kwargs.update(sheet_item=self.sheet_item.get_object())
     # else:
     #     kwargs.pop('sheet_item', None)
     return rt.models.ledger.Account(
         ref=self.value, **kwargs)
예제 #28
0
파일: std.py 프로젝트: lino-framework/xl
def objects():
    ExcerptType = rt.models.excerpts.ExcerptType
    ContentType = rt.models.contenttypes.ContentType

    yield ExcerptType(
        template="default.weasy.html",
        primary=True, certifying=True,
        build_method='weasy2pdf',
        content_type=ContentType.objects.get_for_model(
            dd.resolve_model('bevats.Declaration')),
        **dd.str2kw('name', _("VAT declaration")))
예제 #29
0
파일: std.py 프로젝트: khchine5/welfare
def objects():

    from lino_welfare.modlib.debts.fixtures.minimal import objects
    yield objects()

    ExcerptType = rt.modules.excerpts.ExcerptType
    kw = dict(
        # template='Default.odt',
        certifying=True)
    kw.update(dd.str2kw('name', _("Financial situation")))
    yield ExcerptType.update_for_model('debts.Budget', **kw)
예제 #30
0
파일: std.py 프로젝트: khchine5/welfare
def objects():

    ExcerptType = rt.modules.excerpts.ExcerptType
    Enrolment = rt.models.courses.Enrolment
    # ContentType = rt.modules.contenttypes.ContentType
    kw = dict(
        # template='Default.odt',
        body_template='enrolment.body.html',
        print_recipient=False, certifying=True)
    kw.update(dd.str2kw('name', _("Enrolment")))
    yield ExcerptType.update_for_model(Enrolment, **kw)
예제 #31
0
파일: demo.py 프로젝트: khchine5/voga
def objects():

    yield lib_objects()

    SECTIONS = Cycler(rt.models.courses.Sections.objects())

    for obj in rt.models.courses.Pupil.objects.order_by('id'):
        if obj.id % 5 == 0:
            obj.is_lfv = True
        if obj.id % 6 == 0:
            obj.is_ckk = True
        if obj.id % 4 == 0:
            obj.section = SECTIONS.pop()
        elif obj.id % 10 != 0:
            obj.member_until = dd.demo_date().replace(month=12, day=31)
        yield obj

    fee_account = rt.models.accounts.Account(
        ref=dd.plugins.courses.membership_fee_account,
        type=rt.models.accounts.AccountTypes.incomes,
        default_amount=15,
        **dd.str2kw('name', _("Membership fee")))
    yield fee_account

    Journal = rt.models.ledger.Journal
    USERS = Cycler(rt.models.users.User.objects.all())
    MEMBERS = Cycler(rt.models.courses.Pupil.objects.all())

    jnl = Journal.objects.get(ref='CSH')
    membership_payments = [
        (1, 3),
        (2, 1),
        (10, 2),
        (11, 4),
        (12, 5),
    ]
    REQUEST = rt.login()

    for month, number in membership_payments:
        date = dd.demo_date().replace(month=month)
        voucher = jnl.create_voucher(
            user=USERS.pop(),
            voucher_date=date)
        yield voucher
        for i in range(number):
            M = jnl.voucher_type.get_items_model()
            kw = dict(voucher=voucher)
            kw.update(partner=MEMBERS.pop(), date=date, account=fee_account)
            kw.update(
                amount=fee_account.default_amount, dc=fee_account.type.dc)
            yield M(**kw)
        voucher.register(REQUEST)
        voucher.save()
예제 #32
0
def objects():
    JournalGroups = rt.models.ledger.JournalGroups
    Company = rt.models.contacts.Company

    # JOURNALS

    kw = dict(journal_group=JournalGroups.sales)
    MODEL = sales.VatProductInvoice
    kw.update(trade_type='sales')
    kw.update(ref="OFF", dc=DC.credit)
    kw.update(printed_name=_("Offer"))
    kw.update(dd.str2kw('name', _("Offers")))
    yield MODEL.create_journal(**kw)

    kw = dict(journal_group=JournalGroups.sales)
    MODEL = sales.VatProductInvoice
    kw.update(trade_type='sales')
    kw.update(ref="CMP", dc=DC.credit)
    kw.update(printed_name=_("Component sheet"))
    kw.update(dd.str2kw('name', _("Component sheets")))
    yield MODEL.create_journal(**kw)
예제 #33
0
파일: std.py 프로젝트: khchine5/xl
def objects():
    ExcerptType = rt.models.excerpts.ExcerptType
    ContentType = rt.models.contenttypes.ContentType
    Partner = rt.models.contacts.Partner

    yield ExcerptType(
        template="payment_reminder.weasy.html",
        build_method='weasy2pdf',
        content_type=ContentType.objects.get_for_model(Partner),
        **dd.str2kw('name', _("Payment reminder")))

    yield payment_terms()
예제 #34
0
def objects():
    ExcerptType = rt.modules.excerpts.ExcerptType
    for cls in rt.models_by_base(Certifiable):
        kw = dd.str2kw('name', cls._meta.verbose_name)
        if False:
            kw.update(backward_compat=True)
        yield ExcerptType(
            #template='Default.odt',
            primary=True,
            certifying=True,
            content_type=ContentType.objects.get_for_model(cls),
            **kw)
예제 #35
0
def objects():
    yield parent_objects()

    ServiceReport = rt.modules.clocking.ServiceReport
    ExcerptType = rt.modules.excerpts.ExcerptType
    kw = dict(
        build_method='weasy2html',
        # template='service_report.weasy.html',
        # body_template='default.body.html',
        # print_recipient=False,
        primary=True, certifying=True)
    kw.update(dd.str2kw('name', ServiceReport._meta.verbose_name))
    yield ExcerptType.update_for_model(ServiceReport, **kw)
예제 #36
0
파일: std.py 프로젝트: khchine5/noi
def objects():
    yield parent_objects()

    ServiceReport = rt.modules.clocking.ServiceReport
    ExcerptType = rt.modules.excerpts.ExcerptType
    kw = dict(
        build_method='weasy2html',
        # template='service_report.weasy.html',
        # body_template='default.body.html',
        # print_recipient=False,
        primary=True, certifying=True)
    kw.update(dd.str2kw('name', ServiceReport._meta.verbose_name))
    yield ExcerptType.update_for_model(ServiceReport, **kw)
예제 #37
0
파일: spzloader.py 프로젝트: khchine5/xl
    def objects(self):

        Team = rt.models.teams.Team
        Country = rt.models.countries.Country
        self.eupen = create(Team, name="Eupen")
        yield self.eupen
        self.stvith = create(Team, name="St. Vith")
        yield self.stvith
        
        yield Country(isocode='LU', **dd.str2kw('name', _("Luxemburg")))
        yield Country(isocode='PL', **dd.str2kw('name', _("Poland")))
        yield Country(isocode='AU', **dd.str2kw('name', _("Austria")))
        yield Country(isocode='US', short_code='USA',
                      **dd.str2kw('name', _("United States")))
        yield self.load_dbf('USR')
        
        yield super(TimLoader, self).objects()

        yield self.load_dbf('PLP')

        if False:
            yield self.load_dbf('DLS')
예제 #38
0
def objects():

    def country(isocode, **kw):
        try:
            return Country.objects.get(isocode=isocode)
        except Country.DoesNotExist:
            return Country(isocode=isocode, **kw)

    yield country('EE', **dd.str2kw('name', _("Estonia")))
    yield country('BE', **dd.str2kw('name', _("Belgium")))
    yield country('DE', **dd.str2kw('name', _("Germany")))
    yield country('FR', **dd.str2kw('name', _("France")))
    yield country('NL', **dd.str2kw('name', _("Netherlands")))
    yield country('MA', **dd.str2kw('name', _("Maroc")))
    yield country('RU', **dd.str2kw('name', _("Russia")))
    yield country('CD', **dd.str2kw('name', _("Congo (Democratic Republic)")))
예제 #39
0
    def objects(self):

        Team = rt.models.teams.Team
        Country = rt.models.countries.Country
        self.eupen = create(Team, name="Eupen")
        yield self.eupen
        self.stvith = create(Team, name="St. Vith")
        yield self.stvith

        yield Country(isocode='LU', **dd.str2kw('name', _("Luxemburg")))
        yield Country(isocode='PL', **dd.str2kw('name', _("Poland")))
        yield Country(isocode='AU', **dd.str2kw('name', _("Austria")))
        yield Country(isocode='US',
                      short_code='USA',
                      **dd.str2kw('name', _("United States")))
        yield self.load_dbf('USR')

        yield super(TimLoader, self).objects()

        yield self.load_dbf('PLP')

        if False:
            yield self.load_dbf('DLS')
예제 #40
0
파일: demo.py 프로젝트: khchine5/book
def objects():
    # three methods for specifying content of babelfields in fixtures:
    yield Foo(
        designation="First", designation_de="Erster", designation_fr="Premier",
        last_visit=dt(2016, 7, 2, 23, 55, 12))
    yield Foo(
        last_visit=dt(2016, 7, 3, 0, 10, 23),
        **dd.str2kw('designation', _("January")))
    yield Foo(
        # last_visit=dt(2016, 10, 30, 4, 34, 0),
        last_visit=dt(2017, 10, 29, 3, 16, 6),
        # last_visit=dt(2012, 10, 28, 4, 34, 0),
        **dd.babelkw('designation', en="Three", de="Drei",
                     fr="Trois", et="Kolm"))
예제 #41
0
파일: demo.py 프로젝트: forexblog/xl
def objects():

    PaymentTerm = rt.models.ledger.PaymentTerm
    Worker = dd.plugins.ledger.worker_model
    if Worker is not None:
        kwargs = {}
        kwargs['worker'] = Worker.objects.get(first_name="Robin")
        kwargs['ref'] = "robin"
        kwargs = dd.str2kw('name', _("Cash Robin"), **kwargs)
        yield PaymentTerm(**kwargs)

    PAYMENT_TERMS = Cycler(PaymentTerm.objects.all())

    for obj in rt.models.contacts.Partner.objects.all():
        obj.payment_term = PAYMENT_TERMS.pop()
        yield obj
예제 #42
0
def objects():
    ExcerptType = rt.modules.excerpts.ExcerptType
    ContentType = rt.modules.contenttypes.ContentType

    # yield ExcerptType(
    #     body_template="payment_reminder.body.html",
    #     content_type=ContentType.objects.get_for_model(
    #         dd.resolve_model('contacts.Partner')),
    #     **dd.str2kw('name', _("Payment reminder")))

    yield ExcerptType(template="payment_reminder.weasy.html",
                      build_method='weasy2pdf',
                      content_type=ContentType.objects.get_for_model(
                          dd.resolve_model('contacts.Partner')),
                      **dd.str2kw('name', _("Payment reminder")))

    yield payment_terms()
예제 #43
0
def objects():
    # three methods for specifying content of babelfields in fixtures:
    yield Foo(designation="First",
              designation_de="Erster",
              designation_fr="Premier",
              last_visit=dt(2016, 7, 2, 23, 55, 12))
    yield Foo(last_visit=dt(2016, 7, 3, 0, 10, 23),
              **dd.str2kw('designation', _("January")))
    yield Foo(
        # last_visit=dt(2016, 10, 30, 4, 34, 0),
        last_visit=dt(2017, 10, 29, 3, 16, 6),
        # last_visit=dt(2012, 10, 28, 4, 34, 0),
        **dd.babelkw('designation',
                     en="Three",
                     de="Drei",
                     fr="Trois",
                     et="Kolm"))
예제 #44
0
파일: std.py 프로젝트: forexblog/xl
def objects():

    Partner = rt.models.contacts.Partner
    Person = rt.models.contacts.Person

    for ct in COMPANY_TYPES:
        yield companyType(**ct)

    # qs = rt.models.contacts.RoleType.objects.filter(rt.lookup_filter('name', "CEO"))
    # if qs.count():
    #     raise Exception("Oops, there is already a CEO in {}".format(qs))
    # dd.logger.info("Creating the CEO function")
    yield roletype(**dd.str2kw('name', _("CEO"), can_sign=True))
    yield roletype(**dd.str2kw('name', _("Director"), can_sign=True))
    yield roletype(**dd.str2kw('name', _("Secretary")))
    yield roletype(**dd.str2kw('name', _("IT manager")))
    yield roletype(**dd.str2kw('name', _("President"), can_sign=True))
    # yield roletype(**babel_values('name', en="Manager", fr='Gérant', de="Geschäftsführer", et="Tegevjuht"))
    # yield roletype(**babel_values('name', en="Director", fr='Directeur', de="Direktor", et="Direktor"))
    # yield roletype(**babel_values('name', en="Secretary", fr='Secrétaire', de="Sekretär", et="Sekretär"))
    # yield roletype(**babel_values('name', en="IT Manager", fr='Gérant informatique', de="EDV-Manager", et="IT manager"))
    # yield roletype(**babel_values('name', en="President", fr='Président', de="Präsident", et="President"))

    if dd.is_installed('excerpts') and dd.is_installed('appypod'):
        ExcerptType = rt.models.excerpts.ExcerptType
        ContentType = rt.models.contenttypes.ContentType
        yield ExcerptType(
            build_method='appypdf',
            template="TermsConditions.odt",
            content_type=ContentType.objects.get_for_model(Person),
            **dd.str2kw('name', _("Terms & conditions")))

    if dd.is_installed('contenttypes'):
        # TODO: remove this because the feature isn't used. But afterwards adapt
        # the doctests!
        ContentType = rt.models.contenttypes.ContentType
        I = Instantiator('gfks.HelpText', 'content_type field help_text').build
        t = ContentType.objects.get_for_model(Person)

        #~ yield I(t,'birth_date',u"""\
        #~ Unkomplette Geburtsdaten sind erlaubt, z.B.
        #~ <ul>
        #~ <li>00.00.1980 : irgendwann in 1980</li>
        #~ <li>00.07.1980 : im Juli 1980</li>
        #~ <li>23.07.0000 : Geburtstag am 23. Juli, Alter unbekannt</li>
        #~ </ul>
        #~ """)

        ct = ContentType.objects.get_for_model(Partner)
        yield I(
            ct, 'language', u"""\
    Die Sprache, in der Dokumente ausgestellt werden sollen.
    """)
예제 #45
0
파일: std.py 프로젝트: khchine5/cosi
def objects():
    ExcerptType = rt.modules.excerpts.ExcerptType
    ContentType = rt.modules.contenttypes.ContentType

    # yield ExcerptType(
    #     body_template="payment_reminder.body.html",
    #     content_type=ContentType.objects.get_for_model(
    #         dd.resolve_model('contacts.Partner')),
    #     **dd.str2kw('name', _("Payment reminder")))

    yield ExcerptType(
        template="payment_reminder.weasy.html",
        build_method='weasy2pdf',
        content_type=ContentType.objects.get_for_model(
            dd.resolve_model('contacts.Partner')),
        **dd.str2kw('name', _("Payment reminder")))

    yield payment_terms()
예제 #46
0
파일: std.py 프로젝트: zyrobin/lino
def objects():

    if not dd.is_installed('excerpts'):
        return
    if not dd.is_installed('appypod'):
        return

    ContentType = rt.models.contenttypes.ContentType
    ExcerptType = rt.models.excerpts.ExcerptType

    yield ExcerptType(
        build_method='appyodt',
        #template='Default.odt',
        body_template='welcome.body.html',
        # certifying=True,
        primary=True,
        content_type=ContentType.objects.get_for_model(rt.models.users.User),
        **dd.str2kw('name', _("Welcome letter")))
예제 #47
0
def objects():

    Partner = rt.models.contacts.Partner
    Person = rt.models.contacts.Person
    
    for ct in COMPANY_TYPES:
        yield companyType(**ct)

    yield roletype(**babel_values('name', en="Manager", fr='Gérant', de="Geschäftsführer", et="Tegevjuht"))
    yield roletype(**babel_values('name', en="Director", fr='Directeur', de="Direktor", et="Direktor"))
    yield roletype(**babel_values('name', en="Secretary", fr='Secrétaire', de="Sekretär", et="Sekretär"))
    yield roletype(**babel_values('name', en="IT Manager", fr='Gérant informatique', de="EDV-Manager", et="IT manager"))
    yield roletype(**babel_values('name', en="President", fr='Président', de="Präsident", et="President"))

    
    if dd.is_installed('excerpts') and dd.is_installed('appypod'):
        ExcerptType = rt.models.excerpts.ExcerptType
        ContentType = rt.models.contenttypes.ContentType
        yield ExcerptType(
            build_method='appypdf',
            template="TermsConditions.odt",
            content_type=ContentType.objects.get_for_model(Person),
            **dd.str2kw('name', _("Terms & conditions")))

    if dd.is_installed('contenttypes'):
        ContentType = rt.models.contenttypes.ContentType
        I = Instantiator('gfks.HelpText',
                         'content_type field help_text').build
        t = ContentType.objects.get_for_model(Person)

        #~ yield I(t,'birth_date',u"""\
    #~ Unkomplette Geburtsdaten sind erlaubt, z.B.
    #~ <ul>
    #~ <li>00.00.1980 : irgendwann in 1980</li>
    #~ <li>00.07.1980 : im Juli 1980</li>
    #~ <li>23.07.0000 : Geburtstag am 23. Juli, Alter unbekannt</li>
    #~ </ul>
    #~ """)

        t = ContentType.objects.get_for_model(Partner)
        yield I(t, 'language', u"""\
    Die Sprache, in der Dokumente ausgestellt werden sollen.
    """)
예제 #48
0
파일: std.py 프로젝트: forexblog/xl
def objects():
    Type = rt.models.households.Type

    yield Type(**dd.str2kw('name', _("Married couple")))
    # Verheiratet / Marié

    yield Type(**dd.str2kw('name', _("Divorced couple")))
    # Geschieden / Divorcé

    yield Type(**dd.str2kw('name', _("Factual household")))
    # Faktischer Haushalt / Ménage de fait

    yield Type(**dd.str2kw('name', _("Legal cohabitation")))
    # Legale Wohngemeinschaft / Cohabitation légale

    yield Type(**dd.str2kw('name', _("Isolated")))
    yield Type(**dd.str2kw('name', _("Other")))
예제 #49
0
def objects():

    polls = rt.models.polls

    agree = polls.ChoiceSet.objects.get(
        **dd.str2kw('name', _("Agree-Disagree")))
        
    USERS = Cycler(settings.SITE.user_model.objects.all())

    def poll(choiceset, title, details, questions):
        return polls.Poll(
            user=USERS.pop(),
            title=title.strip(),
            details=details.strip(),
            state=polls.PollStates.active,
            questions_to_add=questions,
            default_choiceset=choiceset)

    yield poll(
        agree,
        "Political compass",
        "First two pages of [url https://www.politicalcompass.org/test]",
        QUESTIONS)
예제 #50
0
파일: std.py 프로젝트: forexblog/xl
 def relative_holiday(offset, name):
     return add(
         every_unit=Recurrencies.easter, every=1,
         start_date=easter1+relativedelta(days=offset),
         **dd.str2kw('name', name))
예제 #51
0
파일: demo.py 프로젝트: forexblog/book
def objects():

    Line = rt.models.courses.Line
    Teacher = dd.plugins.courses.teacher_model
    Course = rt.models.courses.Course
    Topic = rt.models.courses.Topic
    Enrolment = rt.models.courses.Enrolment
    CourseStates = rt.models.courses.CourseStates
    User = rt.models.users.User
    EventType = rt.models.cal.EventType
    Guest = rt.models.cal.Guest
    GuestRole = rt.models.cal.GuestRole
    GuestStates = rt.models.cal.GuestStates
    EntryStates = rt.models.cal.EntryStates
    Event = rt.models.cal.Event
    Person = rt.models.contacts.Person
    CommentType = rt.models.comments.CommentType
    TrendStage = rt.models.trends.TrendStage
    TrendArea = rt.models.trends.TrendArea

    for area, stages in trends_config:
        ta = named(TrendArea, area)
        yield ta
        for stage in stages:
            kw = dict(trend_area=ta)
            if stage[0] == "!":
                stage = stage[1:]
                kw.update(subject_column=True)
            yield named(TrendStage, stage, **kw)

    yield EventType(**dd.str2kw('name', _("First contact")))

    kw = dd.str2kw('name', _("Lesson"))
    kw.update(dd.str2kw('event_label', _("Lesson")))
    event_type = EventType(**kw)
    yield event_type

    pupil = named(GuestRole, _("Pupil"))
    yield pupil
    yield named(GuestRole, _("Assistant"))

    topic_citizen = named(Topic, _("Citizen course"))
    yield topic_citizen

    topic_lang = named(Topic, _("Language courses"))
    yield topic_lang

    kw.update(topic=topic_citizen)
    kw = dict(event_type=event_type, guest_role=pupil)
    yield named(Line, _("Citizen course"), **kw)

    kw.update(topic=topic_lang)
    alpha = named(Line, _("Alphabetisation"), **kw)
    yield alpha
    yield named(Line, _("German for beginners"), **kw)
    yield named(Line, _("German A1+"), **kw)
    yield named(Line, _("German A2"), **kw)
    yield named(Line, _("German A2 (women)"), **kw)

    yield named(CommentType, _("Phone call"))
    yield named(CommentType, _("Visit"))
    yield named(CommentType, _("Individual consultation"))
    yield named(CommentType, _("Internal meeting"))
    yield named(CommentType, _("Meeting with partners"))

    laura = Teacher(first_name="Laura", last_name="Lieblig")
    yield laura
    yield User(username="******", user_type=UserTypes.teacher, partner=laura)

    yield User(username="******", user_type=UserTypes.user)
    yield User(username="******", user_type=UserTypes.user)
    yield User(username="******", user_type=UserTypes.auditor)
    yield User(username="******", user_type=UserTypes.coordinator)
    yield User(username="******", user_type=UserTypes.secretary)

    USERS = Cycler(
        User.objects.exclude(user_type__in=(UserTypes.auditor,
                                            UserTypes.admin)))

    kw = dict(monday=True, tuesday=True, thursday=True, friday=True)
    kw.update(line=alpha,
              start_date=dd.demo_date(-30),
              start_time="9:00",
              end_time="12:00",
              max_date=dd.demo_date(10),
              state=CourseStates.active,
              every_unit=Recurrencies.daily,
              user=USERS.pop(),
              teacher=laura,
              max_places=5)

    yield Course(**kw)

    kw.update(start_time="14:00",
              end_time="17:00",
              user=USERS.pop(),
              max_places=15)
    yield Course(**kw)

    kw.update(start_time="18:00",
              end_time="20:00",
              user=USERS.pop(),
              max_places=15)
    yield Course(**kw)

    PUPILS = Cycler(dd.plugins.courses.pupil_model.objects.all())
    # print(20170302, dd.plugins.courses.pupil_model.objects.all())
    COURSES = Cycler(Course.objects.all())
    STATES = Cycler(EnrolmentStates.objects())

    def fits(course, pupil):
        if course.max_places and course.get_free_places() == 0:
            return False
        if Enrolment.objects.filter(course=course, pupil=pupil).count():
            return False
        return True

    def enrol(pupil):
        course = COURSES.pop()
        if fits(course, pupil):
            kw = dict(user=USERS.pop(), course=course, pupil=pupil)
            kw.update(request_date=dd.demo_date(-i))
            kw.update(state=STATES.pop())
            return Enrolment(**kw)

    for i, p in enumerate(
            dd.plugins.courses.pupil_model.objects.order_by('id')):

        yield enrol(p)
        if i % 2 == 0:
            yield enrol(p)
        if i % 3 == 0:
            yield enrol(p)

    ar = rt.login('robin')
    for obj in Course.objects.all():
        obj.update_auto_events(ar)

    # Suggested calendar entries older than 7 days should be marked as
    # either took_place or cancelled.
    qs = Event.objects.filter(start_date__lte=dd.demo_date(-7),
                              state=EntryStates.suggested)
    for i, obj in enumerate(qs):
        if i % 9:
            obj.state = EntryStates.took_place
        else:
            obj.state = EntryStates.cancelled
        obj.full_clean()
        obj.save()

    # participants of events which took place should be marked as
    # either absent or present or excused:
    qs = Guest.objects.filter(
        event__start_date__lte=dd.demo_date(-7),
        event__state=EntryStates.took_place).order_by('id')
    STATES = Cycler(GuestStates.get_list_items())
    for i, obj in enumerate(qs):
        obj.state = STATES.pop()
        # if i % 8:
        #     obj.state = GuestStates.present
        # elif i % 3:
        #     obj.state = GuestStates.missing
        # else:
        #     obj.state = GuestStates.excused
        obj.full_clean()
        obj.save()
예제 #52
0
파일: std.py 프로젝트: TonisPiip/xl
def objects():
    """
    Education levels in Belgium:
      http://www.guide-enseignement.be/infos_pages/diplomes.html

    Certificat d'études de base (CEB)
    Certificat d'enseignement secondaire du deuxième degré (C.E.S.D.D.)
    Certificat d'études de sixième année de l'enseignement secondaire professionnel (C.E.6.P.)
    Certificat de qualification (C.Q.)
    Certificat d'enseignement secondaire supérieur (C.E.S.S.)
    Certificat relatif aux connaissances de gestion de base
    Brevet d’enseignement secondaire complémentaire – section "soins infirmiers(E.P.S.C.)" 
    """

    eduLevel = Instantiator('cv.EducationLevel').build
    yield eduLevel(
        **dd.babel_values('name', de="Primär", fr="Primaire", en="Primary"))
    yield eduLevel(**dd.babel_values(
        'name', de="Sekundär", fr="Secondaire", en="Secondary"))
    yield eduLevel(**dd.babel_values(
        'name', de="Hochschule", fr="Supérieur", en="Higher"))
    yield eduLevel(
        **dd.babel_values('name', de="Bachelor", fr="Bachelor", en="Bachelor"))
    yield eduLevel(
        **dd.babel_values('name', de="Master", fr="Master", en="Master"))

    studyType = Instantiator('cv.StudyType').build
    yield studyType(**dd.babel_values(
        'name',
        de=u"Schule",
        fr=u"École",
        en=u"School",
    ))
    yield studyType(**dd.babel_values(
        'name',
        de=u"Sonderschule",
        fr=u"École spéciale",
        en=u"Special school",
    ))
    yield studyType(**dd.babel_values(
        'name',
        de=u"Ausbildung",
        fr=u"Formation",
        en=u"Training",
    ))
    yield studyType(**dd.babel_values(
        'name',
        de=u"Lehre",
        fr=u"Apprentissage",
        en=u"Apprenticeship",
    ))
    yield studyType(**dd.babel_values(
        'name',
        de=u"Hochschule",
        fr=u"École supérieure",
        en=u"Highschool",
    ))
    yield studyType(**dd.babel_values(
        'name',
        de=u"Universität",
        fr=u"Université",
        en=u"University",
    ))
    yield studyType(**dd.babel_values(
        'name',
        de=u"Teilzeitunterricht",
        fr=u"Cours à temps partiel",
        en=u"Part-time study",
    ))
    yield studyType(**dd.babel_values(
        'name',
        de=u"Fernkurs",
        fr=u"Cours à distance",
        en=u"Remote study",
    ))

    M = Instantiator('cv.StudyType', is_training=True, is_study=False).build
    yield M(**dd.str2kw('name', _("Prequalifying")))
    yield M(**dd.str2kw('name', _("Qualifying")))
    yield M(**dd.str2kw('name', _("Alpha")))

    M = Instantiator('cv.Duration').build
    yield M(**dd.str2kw('name', _("Unlimited duration")))
    yield M(**dd.str2kw('name', _("Limited duration")))
    yield M(**dd.str2kw('name', _("Clearly defined job")))
    yield M(**dd.str2kw('name', _("Replacement")))
    yield M(**dd.str2kw('name', _("Interim")))
    """
    Contrat de travail à durée indéterminée
    - Arbeidsovereenkomst voor onbepaalde tijd
    Contrat de travail à durée déterminée
    - Arbeidsovereenkomst voor bepaalde tijd
    Contrat pour un travail nettement défini
    - Arbeidsovereenkomst voor een duidelijk omschreven werk
    Contrat de remplacement
    - Vervangingsovereenkomst
    Contrat d’intérim
    Convention de premier emploi
    Contrat de travail à temps partiel
    """

    status = Instantiator('cv.Status').build
    yield status(**dd.str2kw('name', _("Worker")))
    yield status(**dd.str2kw('name', _("Employee")))
    yield status(**dd.str2kw('name', _("Freelancer")))
    yield status(**dd.str2kw('name', _("Voluntary")))
    yield status(**dd.str2kw('name', _("Student")))
    yield status(**dd.str2kw('name', _("Laboratory")))  # fr=Stage,
    # de=Praktikum
    yield status(**dd.str2kw('name', _("Interim")))

    regime = Instantiator('cv.Regime').build
    yield regime(**dd.str2kw('name', _("Full-time")))
    yield regime(**dd.str2kw('name', _("Part-time")))
    yield regime(**dd.str2kw('name', _("Other")))
예제 #53
0
파일: demo.py 프로젝트: forexblog/xl
def DEP(name, **kwargs):
    kwargs = dd.str2kw('designation', name, **kwargs)
    # kwargs.update(designation=name)
    return rt.models.invoicing.Area(**kwargs)
예제 #54
0
파일: std.py 프로젝트: forexblog/xl
def objects():
    cal = rt.models.cal
    PlannerColumns = cal.PlannerColumns
    # add = Instantiator('cal.Priority', 'ref').build
    # yield add('1', **dd.babel_values('name', en=u"very urgent", de=u"sehr dringend",   fr=u"très urgent", et=u"väga kiire"))
    # yield add('3', **dd.babel_values('name', en=u"urgent", de=u"dringend",   fr=u"urgent", et="kiire"))
    # yield add('5', **dd.babel_values('name', en=u"normal", de=u"normal",   fr=u"normal", et="keskmine"))
    # yield add('9', **dd.babel_values('name', en=u"not urgent", de=u"nicht dringend",   fr=u"pas urgent", et="mitte kiire"))

    calendar = Instantiator('cal.Calendar').build
    general = calendar(**dd.str2kw('name', _("General")))
    yield general
    # settings.SITE.site_config.site_calendar = general
    d = dd.demo_date()
    if d.month > 4:
        d = d.replace(month=1, day=1)
    else:
        d = d.replace(month=1, day=1, year=d.year-1)
    settings.SITE.site_config.update(
        site_calendar=general, hide_events_before=d)

    # yield settings.SITE.site_config

    event_type = Instantiator('cal.EventType').build

    yield event_type(
        planner_column=PlannerColumns.external,
        is_appointment=True,
        fill_presences=True,
        max_days=0,
        **dd.str2kw('name', _("Absences")))

    holidays = event_type(
        planner_column=PlannerColumns.external,
        is_appointment=False,
        fill_presences=False,
        max_days=0,
        all_rooms=True, **dd.str2kw('name', _("Holidays")))
    yield holidays
    meeting = event_type(
        is_appointment=True,
        fill_presences=True,
        planner_column=PlannerColumns.external,
        default_duration="1:00", **dd.str2kw('name', _("Meeting")))
    yield meeting
    yield event_type(
        planner_column=PlannerColumns.internal,
        is_appointment=False,
        fill_presences=True,
        transparent=True,
        default_duration="0:30",
        **dd.str2kw('name', _("Internal")))

    RecurrentEvent = rt.models.cal.RecurrentEvent
    add = Instantiator(RecurrentEvent, event_type=holidays).build

    def holiday(month, day, en, de, fr, et=None):
        if et is None:
            et = en
        return add(
            every_unit=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))
    yield holiday(1, 1, "New Year's Day", "Neujahr", "Jour de l'an", "Uusaasta")
    yield holiday(5, 1, "International Workers' Day", "Tag der Arbeit", "Premier Mai", "kevadpüha")
    yield holiday(7, 21, "National Day", "Nationalfeiertag", "Fête nationale", "Belgia riigipüha")
    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", "Esimene Jõulupüha")

    easter1 = easter(cal.DEMO_START_YEAR)

    def relative_holiday(offset, name):
        return add(
            every_unit=Recurrencies.easter, every=1,
            start_date=easter1+relativedelta(days=offset),
            **dd.str2kw('name', name))

    yield relative_holiday(0, _("Easter sunday"))
    yield relative_holiday(1, _("Easter monday"))
    yield relative_holiday(39, _("Ascension of Jesus"))
    yield relative_holiday(50, _("Pentecost"))
    yield relative_holiday(-2, _("Good Friday"))
    yield relative_holiday(-46, _("Ash Wednesday"))
    yield relative_holiday(-48, _("Rosenmontag"))

    ar = settings.SITE.login()
    for obj in RecurrentEvent.objects.all():
        if not obj.update_reminders(ar):
            raise Exception("Oops, %s generated no events" % obj)

    # event policies

    kw = dict()
    for wd in WORKDAYS:
        kw[wd.name] = True
    kw.update(event_type=meeting)
    exam_policy = Instantiator(
        'cal.EventPolicy', 'every',
        every_unit=DurationUnits.months, **kw).build
    yield exam_policy(
        1, start_time="9:00",
        **dd.str2kw('name', _("Every month")))
    yield exam_policy(
        2, start_time="9:00",
        **dd.str2kw('name', _("Every 2 months")))
    yield exam_policy(
        3, **dd.str2kw('name', _("Every 3 months")))

    exam_policy = Instantiator(
        'cal.EventPolicy', 'every',
        every_unit=DurationUnits.weeks, **kw).build
    yield exam_policy(
        2, start_time="9:00",
        **dd.str2kw('name', _("Every 2 weeks")))

    exam_policy = Instantiator(
        'cal.EventPolicy', 'every',
        every_unit=DurationUnits.days, **kw).build
    yield exam_policy(
        10, max_events=1, start_time="9:00",
        **dd.str2kw('name', _("Once after 10 days")))

    exam_policy = Instantiator('cal.EventPolicy').build
    yield exam_policy(**dd.str2kw('name', _("Other")))
예제 #55
0
 def PT(name, ref, **kwargs):
     kwargs['ref'] = ref
     kwargs = dd.str2kw('name', name, **kwargs)
     return rt.modules.ledger.PaymentTerm(**kwargs)