当前位置: 首页>>代码示例>>Python>>正文


Python TicketsEventMeta.get_or_create_groups方法代码示例

本文整理汇总了Python中tickets.models.TicketsEventMeta.get_or_create_groups方法的典型用法代码示例。如果您正苦于以下问题:Python TicketsEventMeta.get_or_create_groups方法的具体用法?Python TicketsEventMeta.get_or_create_groups怎么用?Python TicketsEventMeta.get_or_create_groups使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在tickets.models.TicketsEventMeta的用法示例。


在下文中一共展示了TicketsEventMeta.get_or_create_groups方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: setup_tickets

# 需要导入模块: from tickets.models import TicketsEventMeta [as 别名]
# 或者: from tickets.models.TicketsEventMeta import get_or_create_groups [as 别名]
    def setup_tickets(self):
        from tickets.models import TicketsEventMeta, LimitGroup, Product

        tickets_admin_group, = TicketsEventMeta.get_or_create_groups(self.event, ['admins'])

        defaults = dict(
            admin_group=tickets_admin_group,
            due_days=14,
            shipping_and_handling_cents=120,
            reference_number_template="2017{:05d}",
            contact_email='Kawacon -lipunmyynti <[email protected]>',
            ticket_free_text=(
                "Tämä on sähköinen lippusi Kawaconiin. Sähköinen lippu vaihdetaan rannekkeeseen\n"
                "lipunvaihtopisteessä saapuessasi tapahtumaan. Voit tulostaa tämän lipun tai näyttää sen\n"
                "älypuhelimen tai tablettitietokoneen näytöltä. Mikäli kumpikaan näistä ei ole mahdollista, ota ylös\n"
                "kunkin viivakoodin alla oleva neljästä tai viidestä sanasta koostuva Kissakoodi ja ilmoita se\n"
                "lipunvaihtopisteessä.\n\n"
                "Tervetuloa Kawaconiin!"
            ),
            front_page_text=(
                "<h2>Tervetuloa ostamaan pääsylippuja Kawacon 2017 -tapahtumaan!</h2>"
                "<p>Liput maksetaan suomalaisilla verkkopankkitunnuksilla heti tilauksen yhteydessä.</p>"
                "<p>Lue lisää tapahtumasta <a href='http://kawacon.info'>Kawaconin kotisivuilta</a>.</p>"
            ),
        )

        if self.test:
            t = now()
            defaults.update(
                ticket_sales_starts=t - timedelta(days=60),
                ticket_sales_ends=t + timedelta(days=60),
            )
        else:
            defaults.update(
                ticket_sales_starts=datetime(2017, 3, 31, 0, 0, 0, tzinfo=self.tz),
                ticket_sales_ends=datetime(2017, 6, 30, 23, 59, 59, tzinfo=self.tz),
            )

        meta, unused = TicketsEventMeta.objects.get_or_create(event=self.event, defaults=defaults)

        def limit_group(description, limit):
            limit_group, unused = LimitGroup.objects.get_or_create(
                event=self.event,
                description=description,
                defaults=dict(limit=limit),
            )

            return limit_group

        for product_info in [
            dict(
                name='Viikonloppulippu',
                description=(
                    'Viikonloppulippu Kawacon 2017 -tapahtumaan. Voimassa koko viikonlopun '
                    'ajan. Toimitetaan sähköpostitse PDF-tiedostona, jossa olevaa viivakoodia '
                    'vastaan saat rannekkeen tapahtumaan saapuessasi.'
                ),
                limit_groups=[
                    limit_group('Pääsyliput', 10000),
                ],
                price_cents=1300,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=self.get_ordering_number(),
            ),
        ]:
            name = product_info.pop('name')
            limit_groups = product_info.pop('limit_groups')

            product, unused = Product.objects.get_or_create(
                event=self.event,
                name=name,
                defaults=product_info
            )

            if not product.limit_groups.exists():
                product.limit_groups = limit_groups
                product.save()
开发者ID:Siikakala,项目名称:kompassi,代码行数:81,代码来源:setup_kawacon2017.py

示例2: setup_tickets

# 需要导入模块: from tickets.models import TicketsEventMeta [as 别名]
# 或者: from tickets.models.TicketsEventMeta import get_or_create_groups [as 别名]
    def setup_tickets(self):
        from tickets.models import TicketsEventMeta, LimitGroup, Product

        tickets_admin_group, = TicketsEventMeta.get_or_create_groups(self.event, ['admins'])

        defaults = dict(
            admin_group=tickets_admin_group,
            due_days=14,
            shipping_and_handling_cents=120,
            reference_number_template="2015{:05d}",
            contact_email='Tracon Hitpoint -lipunmyynti <[email protected]>',
            ticket_free_text="Tämä on sähköinen lippusi Tracon Hitpoint -tapahtumaan. Sähköinen lippu vaihdetaan rannekkeeseen\n"
                "lipunvaihtopisteessä saapuessasi tapahtumaan. Voit tulostaa tämän lipun tai näyttää sen\n"
                "älypuhelimen tai tablettitietokoneen näytöltä. Mikäli kumpikaan näistä ei ole mahdollista, ota ylös\n"
                "kunkin viivakoodin alla oleva neljästä tai viidestä sanasta koostuva Kissakoodi ja ilmoita se\n"
                "lipunvaihtopisteessä.\n\n"
                "Tervetuloa Tracon Hitpointiin!",
            front_page_text="<h2>Tervetuloa ostamaan pääsylippuja Tracon Hitpoint -tapahtumaan!</h2>"
                "<p>Liput maksetaan suomalaisilla verkkopankkitunnuksilla heti tilauksen yhteydessä.</p>"
                "<p>Lue lisää tapahtumasta <a href='http://2015.hitpoint.tracon.fi'>Tracon Hitpoint -tapahtuman kotisivuilta</a>.</p>"
                "<p>Huom! Tämä verkkokauppa palvelee ainoastaan asiakkaita, joilla on osoite Suomessa. Mikäli tarvitset "
                "toimituksen ulkomaille, ole hyvä ja ota sähköpostitse yhteyttä: <em>[email protected]</em>"
        )

        if self.test:
            t = now()
            defaults.update(
                ticket_sales_starts=t - timedelta(days=60),
                ticket_sales_ends=t + timedelta(days=60),
            )
        else:
            # TODO
            # defaults.update(
            #     ticket_sales_starts=datetime(2015, 3, 4, 18, 0, tzinfo=self.tz),
            #     ticket_sales_ends=datetime(2015, 6, 28, 18, 0, tzinfo=self.tz),
            # )
            pass

        meta, unused = TicketsEventMeta.objects.get_or_create(event=self.event, defaults=defaults)

        def limit_group(description, limit):
            limit_group, unused = LimitGroup.objects.get_or_create(
                event=self.event,
                description=description,
                defaults=dict(limit=limit),
            )

            return limit_group

        for product_info in [
            dict(
                name='Tracon Hitpoint -pääsylippu',
                description='Viikonloppulippu Tracon Hitpoint -tapahtumaan. Voimassa koko viikonlopun ajan la klo 12 – su klo 18. Toimitetaan sähköpostitse PDF-tiedostona, jossa olevaa viivakoodia vastaan saat rannekkeen tapahtumaan saapuessasi.',
                limit_groups=[
                    limit_group('Pääsyliput', 400),
                ],
                price_cents=1000,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=self.get_ordering_number(),
            ),
        ]:
            name = product_info.pop('name')
            limit_groups = product_info.pop('limit_groups')

            product, unused = Product.objects.get_or_create(
                event=self.event,
                name=name,
                defaults=product_info
            )

            if not product.limit_groups.exists():
                product.limit_groups = limit_groups
                product.save()
开发者ID:Siikakala,项目名称:kompassi,代码行数:77,代码来源:setup_hitpoint2015.py

示例3: setup_tickets

# 需要导入模块: from tickets.models import TicketsEventMeta [as 别名]
# 或者: from tickets.models.TicketsEventMeta import get_or_create_groups [as 别名]
    def setup_tickets(self):
        from tickets.models import TicketsEventMeta, LimitGroup, Product

        tickets_admin_group, = TicketsEventMeta.get_or_create_groups(self.event, ['admins'])

        defaults = dict(
            admin_group=tickets_admin_group,
            due_days=14,
            shipping_and_handling_cents=120,
            reference_number_template="2016{:05d}",
            contact_email='Animecon 2016 <[email protected]>',
            ticket_free_text="Tämä on sähköinen lippusi Animecon 2016 -tapahtumaan. Sähköinen lippu vaihdetaan rannekkeeseen\n"
                "lipunvaihtopisteessä saapuessasi tapahtumaan. Voit tulostaa tämän lipun tai näyttää sen\n"
                "älypuhelimen tai tablettitietokoneen näytöltä. Mikäli kumpikaan näistä ei ole mahdollista, ota ylös\n"
                "kunkin viivakoodin alla oleva neljästä tai viidestä sanasta koostuva Kissakoodi ja ilmoita se\n"
                "lipunvaihtopisteessä.\n\n"
                "Tervetuloa Animecon 2016 -tapahtumaan!",
            front_page_text="<h2>Tervetuloa ostamaan pääsylippuja Animecon 2016 -tapahtumaan!</h2>"
                "<p>Liput maksetaan suomalaisilla verkkopankkitunnuksilla heti tilauksen yhteydessä.</p>"
                "<p>Lue lisää tapahtumasta <a href='http://2016.animecon.fi'>Animecon 2016 -tapahtuman kotisivuilta</a>.</p>"
                "<p>Huom! Tämä verkkokauppa palvelee ainoastaan asiakkaita, joilla on osoite Suomessa. Mikäli tarvitset "
                "toimituksen ulkomaille, ole hyvä ja ota sähköpostitse yhteyttä: <em>[email protected]</em>"
        )

        if self.test:
            t = now()
            defaults.update(
                ticket_sales_starts=t - timedelta(days=60),
                ticket_sales_ends=t + timedelta(days=60),
            )

        meta, unused = TicketsEventMeta.objects.get_or_create(event=self.event, defaults=defaults)

        def limit_group(description, limit):
            limit_group, unused = LimitGroup.objects.get_or_create(
                event=self.event,
                description=description,
                defaults=dict(limit=limit),
            )

            return limit_group

        for product_info in [
            dict(
                name='Animecon 2016 -pääsylippu',
                description='Viikonloppuranneke Kuopiossa järjestettävään Animecon-tapahtumaan. Huom. myynnissä vain viikonloppurannekkeita. Lippu on PDF-muotoinen e-lippu, joka vaihdetaan rannekkeeseen tapahtumaan saavuttaessa.',
                limit_groups=[
                    limit_group('Pääsyliput', 3300),
                ],
                price_cents=2000,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=self.get_ordering_number(),
            ),
            dict(
                name='Lattiamajoitus Viitaniemen koululla pe-la-yöksi',
                description='Lattiamajoituspaikka 8.-9.7.2016 välisenä yönä Viitaniemen koululla. Luethan ohjeet majoittumiseen Animeconin nettisivuilta. Jos maksat muitakin henkilöitä kuin itsesi, niin ilmoitathan kaikkien majoittujien yhteystiedot (nimi, puhelinnumero, sähköposti) lisätiedoissa. Emme lähetä lattiamajoituksesta erillistä lippua.',
                limit_groups=[
                    limit_group('Majoitus Viitaniemi pe-la', 200),
                ],
                price_cents=1000,
                requires_shipping=False,
                electronic_ticket=False,
                requires_accommodation_information=True,
                available=True,
                ordering=self.get_ordering_number(),
            ),
            dict(
                name='Lattiamajoitus Viitaniemen koululla la-su-yöksi',
                description='Lattiamajoituspaikka 9.-10.7.2016 välisenä yönä Viitaniemen koululla. Luethan ohjeet majoittumiseen Animeconin nettisivuilta. Jos maksat muitakin majoittujia kuin itsesi, niin ilmoitathan kaikkien majoittujien yhteystiedot (nimi, puhelinnumero, sähköposti) lisätiedoissa. Emme lähetä lattiamajoituksesta erillistä lippua.',
                limit_groups=[
                    limit_group('Majoitus Viitaniemi la-su', 200),
                ],
                price_cents=1000,
                requires_shipping=False,
                electronic_ticket=False,
                requires_accommodation_information=True,
                available=True,
                ordering=self.get_ordering_number(),
            ),
            dict(
                name='Aamupala Viitaniemen koululla lauantaiaamuna',
                description='Aamupala Viitaniemen koululla lauantaiaamuna 9.7.2016. Ilmoitathan erityisruokavalioista ja allergioista etukäteen. Jos olet varannut aamiaisen myös muille kuin itsellesi, niin ilmoitathan henkilöiden nimet lisätiedoissa.',
                limit_groups=[
                    limit_group('Aamupala Viitaniemi la', 200),
                ],
                price_cents=350,
                requires_shipping=False,
                electronic_ticket=False,
                requires_accommodation_information=True,
                available=True,
                ordering=self.get_ordering_number(),
            ),
            dict(
                name='Aamupala Viitaniemen koululla sunnuntaiaamuna',
                description='Aamupala Viitaniemen koululla sunnuntai-aamuna 10.7.2016. Ilmoitathan erityisruokavalioista ja allergioista etukäteen. Jos olet varannut aamiaisen myös muille kuin itsellesi, niin ilmoitathan henkilöiden nimet lisätiedoissa.',
                limit_groups=[
                    limit_group('Aamupala Viitaniemi su', 200),
                ],
#.........这里部分代码省略.........
开发者ID:Siikakala,项目名称:kompassi,代码行数:103,代码来源:setup_animecon2016.py

示例4: setup_tickets

# 需要导入模块: from tickets.models import TicketsEventMeta [as 别名]
# 或者: from tickets.models.TicketsEventMeta import get_or_create_groups [as 别名]
    def setup_tickets(self):
        from tickets.models import TicketsEventMeta, LimitGroup, Product

        tickets_admin_group, = TicketsEventMeta.get_or_create_groups(self.event, ['admins'])

        defaults = dict(
            admin_group=tickets_admin_group,
            due_days=14,
            shipping_and_handling_cents=0,
            reference_number_template="2019{:06d}",
            contact_email='Matsucon <[email protected]>',
            ticket_free_text=
                "Tämä on sähköinen lippusi Matsucon 2019 -tapahtumaan. Sähköinen lippu vaihdetaan\n"
                "rannekkeeseen lipunvaihtopisteessä saapuessasi tapahtumaan. Voit tulostaa tämän lipun tai\n"
                "näyttää sen älypuhelimen tai tablettitietokoneen näytöltä. Mikäli kumpikaan näistä ei ole\n"
                "mahdollista, ota ylös kunkin viivakoodin alla oleva neljästä tai viidestä sanasta koostuva\n"
                "Kissakoodi ja ilmoita se lipunvaihtopisteessä.\n\n"
                "Tervetuloa Matsuconhin!",
            front_page_text="<h2>Tervetuloa ostamaan pääsylippuja Matsucon 2019 -tapahtumaan!</h2>"
                "<p>Liput maksetaan suomalaisilla verkkopankkitunnuksilla heti tilauksen yhteydessä.</p>"
                "<p>Lue lisää tapahtumasta <a href='http://matsucon.fi'>Matsucon 2019 -tapahtuman kotisivuilta</a>.</p>",
        )

        if self.test:
            t = now()
            defaults.update(
                ticket_sales_starts=t - timedelta(days=60),
                ticket_sales_ends=t + timedelta(days=60),
            )

        meta, unused = TicketsEventMeta.objects.get_or_create(event=self.event, defaults=defaults)

        def limit_group(description, limit):
            limit_group, unused = LimitGroup.objects.get_or_create(
                event=self.event,
                description=description,
                defaults=dict(limit=limit),
            )

            return limit_group

        def ordering():
            ordering.counter += 10
            return ordering.counter
        ordering.counter = 0

        for product_info in [
            dict(
                name='Viikonlopun lippu',
                description='Viikonloppulippu oikeuttaa sisäänpääsyyn Matsuconin kumpanakin päivänä (3.–4.8.). Sähköinen lippu vaihdetaan ovella rannekkeeseen.',
                limit_groups=[
                    limit_group('Viikonloppuliput', 460),
                ],
                price_cents=1500,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=ordering(),
            ),

            dict(
                name='Lauantain lippu',
                description='Lauantailippu oikeuttaa sisäänpääsyyn Matsuconin ensimmäisenä päivänä (3.8.). Sähköinen lippu vaihdetaan ovella rannekkeeseen.',
                limit_groups=[
                    limit_group('Lauantailiput', 125),
                ],
                price_cents=1000,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=ordering(),
            ),

            dict(
                name='Sunnuntain lippu',
                description='Sunnuntailippu oikeuttaa sisäänpääsyyn Matsuconin toisena päivänä (4.8.). Sähköinen lippu vaihdetaan ovella rannekkeeseen.',
                limit_groups=[
                    limit_group('Sunnuntailiput', 110),
                ],
                price_cents=1000,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=ordering(),
            ),

            # dict(
            #     name='Lattiamajoitus',
            #     description='Lattiamajoitus lauantain ja sunnuntain väliselle yölle tapahtumapaikalla.',
            #     limit_groups=[
            #         limit_group('Lattiamajoituspaikat', 40),
            #     ],
            #     price_cents=700,
            #     requires_shipping=False,
            #     electronic_ticket=False,
            #     requires_accommodation_information=True,
            #     available=True,
            #     ordering=ordering(),
            # ),

#.........这里部分代码省略.........
开发者ID:tracon,项目名称:kompassi,代码行数:103,代码来源:setup_matsucon2019.py

示例5: setup_tickets

# 需要导入模块: from tickets.models import TicketsEventMeta [as 别名]
# 或者: from tickets.models.TicketsEventMeta import get_or_create_groups [as 别名]
    def setup_tickets(self):
        from tickets.models import TicketsEventMeta, LimitGroup, Product

        tickets_admin_group, = TicketsEventMeta.get_or_create_groups(self.event, ['admins'])

        defaults = dict(
            admin_group=tickets_admin_group,
            due_days=14,
            shipping_and_handling_cents=0,
            reference_number_template="2016{:05d}",
            contact_email='Mimicon <[email protected]>',
            plain_contact_email='[email protected]',
            ticket_free_text=u"Tämä on sähköinen lippusi Mimicon 2016 -tapahtumaan. Sähköinen lippu vaihdetaan rannekkeeseen\n"
                u"lipunvaihtopisteessä saapuessasi tapahtumaan. Voit tulostaa tämän lipun tai näyttää sen\n"
                u"älypuhelimen tai tablettitietokoneen näytöltä. Mikäli kumpikaan näistä ei ole mahdollista, ota ylös\n"
                u"kunkin viivakoodin alla oleva neljästä tai viidestä sanasta koostuva sanakoodi ja ilmoita se\n"
                u"lipunvaihtopisteessä.\n\n"
                u"Tervetuloa Mimiconiin!",
            front_page_text=u"<h2>Tervetuloa ostamaan pääsylippuja Mimicon 2016 -tapahtumaan!</h2>"
                u"<p>Liput maksetaan suomalaisilla verkkopankkitunnuksilla heti tilauksen yhteydessä.</p>"
                u"<p>Lue lisää tapahtumasta <a href='http://www.mimicon.fi'>Mimiconin kotisivuilta</a>.</p>",
            print_logo_path = mkpath('static', 'images', 'mimicon2016_logo.png'),
            print_logo_width_mm = 30,
            print_logo_height_mm = 30,
        )

        if self.test:
            t = now()
            defaults.update(
                ticket_sales_starts=t - timedelta(days=60),
                ticket_sales_ends=t + timedelta(days=60),
            )
        else:
            defaults.update(
                ticket_sales_starts=datetime(2016, 1, 15, 16, 0, tzinfo=self.tz),
                #ticket_sales_ends=datetime(2016, 1, 11, 18, 0, tzinfo=self.tz),
            )

        meta, unused = TicketsEventMeta.objects.get_or_create(event=self.event, defaults=defaults)

        def limit_group(description, limit):
            limit_group, unused = LimitGroup.objects.get_or_create(
                event=self.event,
                description=description,
                defaults=dict(limit=limit),
            )

            return limit_group

        def ordering():
            ordering.counter += 10
            return ordering.counter
        ordering.counter = 0

        for product_info in [
            dict(
                name=u'Mimicon 2016 -pääsylippu',
                description=u'Lippu kattaa koko viikonlopun. Maksettuasi sinulle lähetetään PDF-lippu antamaasi sähköpostiin, jota vastaan saat rannekkeen tapahtuman ovelta.',
                limit_groups=[
                    limit_group('Pääsyliput', 500),
                ],
                price_cents=1600,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=ordering(),
            ),
            dict(
                name=u'Lattiamajoituspaikka',
                description=u'Lattiamajoituspaikka lauantain ja sunnuntain väliseksi yöksi. Tarvitset oman makuupussin ja -alustan. Lattiamajoituksesta ei lähetetä erillistä lippua, vaan lattiamajoitus toimii nimi listaan -periaatteella.',
                limit_groups=[
                    limit_group('Lattiamajoitus', 80),
                ],
                price_cents=500,
                requires_shipping=False,
                electronic_ticket=False,
                available=True,
                ordering=ordering(),
            ),
            # dict(
            #     name=u'Lounaslippu',
            #     description=u'Tällä lipukkeella saat herkullisen lounaan ravintola Napostellasta kumpana tahansa tapahtumapäivänä. Lounasliput toimitetaan samalla PDF-lipulla pääsylippujesi kanssa.',
            #     limit_groups=[
            #         limit_group('Lounas', 100),
            #     ],
            #     price_cents=780,
            #     requires_shipping=False,
            #     electronic_ticket=True,
            #     available=False,
            #     ordering=ordering(),
            # ),
        ]:
            name = product_info.pop('name')
            limit_groups = product_info.pop('limit_groups')

            product, unused = Product.objects.get_or_create(
                event=self.event,
                name=name,
                defaults=product_info
            )
#.........这里部分代码省略.........
开发者ID:akx,项目名称:kompassi,代码行数:103,代码来源:setup_mimicon2016.py

示例6: setup_tickets

# 需要导入模块: from tickets.models import TicketsEventMeta [as 别名]
# 或者: from tickets.models.TicketsEventMeta import get_or_create_groups [as 别名]
    def setup_tickets(self):
        from tickets.models import TicketsEventMeta, LimitGroup, Product

        tickets_admin_group, = TicketsEventMeta.get_or_create_groups(self.event, ['admins'])

        defaults = dict(
            admin_group=tickets_admin_group,
            due_days=14,
            shipping_and_handling_cents=0,
            reference_number_template="2015{:05d}",
            contact_email='Traconin lipunmyynti <[email protected]>',
            plain_contact_email='[email protected]',
            ticket_free_text=u"Tämä on sähköinen lippusi Tracon X -tapahtumaan. Sähköinen lippu vaihdetaan rannekkeeseen\n"
                u"lipunvaihtopisteessä saapuessasi tapahtumaan. Voit tulostaa tämän lipun tai näyttää sen\n"
                u"älypuhelimen tai tablettitietokoneen näytöltä. Mikäli kumpikaan näistä ei ole mahdollista, ota ylös\n"
                u"kunkin viivakoodin alla oleva neljästä tai viidestä sanasta koostuva sanakoodi ja ilmoita se\n"
                u"lipunvaihtopisteessä.\n\n"
                u"Tervetuloa Traconiin!",
            front_page_text=u"<h2>Tervetuloa ostamaan pääsylippuja Tracon X -tapahtumaan!</h2>"
                u"<p>Liput maksetaan suomalaisilla verkkopankkitunnuksilla heti tilauksen yhteydessä.</p>"
                u"<p>Lue lisää tapahtumasta <a href='http://2015.tracon.fi'>Traconin kotisivuilta</a>.</p>",
        )

        if self.test:
            t = now()
            defaults.update(
                ticket_sales_starts=t - timedelta(days=60),
                ticket_sales_ends=t + timedelta(days=60),
            )
        else:
            defaults.update(
                ticket_sales_starts=datetime(2014, 12, 1, 0, 0, tzinfo=self.tz),
                ticket_sales_ends=datetime(2015, 12, 12, 23, 59, 59, tzinfo=self.tz),
            )

        meta, unused = TicketsEventMeta.objects.get_or_create(event=self.event, defaults=defaults)

        def limit_group(description, limit):
            limit_group, unused = LimitGroup.objects.get_or_create(
                event=self.event,
                description=description,
                defaults=dict(limit=limit),
            )

            return limit_group

        def ordering():
            ordering.counter += 10
            return ordering.counter
        ordering.counter = 0

        for product_info in [
            dict(
                name=u'Joulupaketti - 2 kpl viikonloppulippu ja 1 kpl kalenteri',
                description=u'Paketti sisältää kaksi viikonloppulippua ja yhden Tracon 2015 -seinäkalenterin. Tuotteet toimitetaan antamaasi osoitteeseen postitse, ja postikulut sisältyvät hintaan.',
                internal_description=u'HUOM! Järjestelmä ei tue lippukiintiöiden kuluttamista kahdella per myyty paketti, joten lippukiintiöt täytyy korjata käsin kun joulupaketit on myyty.',
                limit_groups=[
                    # limit_group('Lauantain liput', 5000, 2),
                    # limit_group('Sunnuntain liput', 5000, 2),
                    limit_group('Joulupaketti A', 80),
                ],
                price_cents=6000,
                requires_shipping=True,
                electronic_ticket=False,
                available=False,
                ordering=ordering(),
            ),
            dict(
                name=u'Joulupaketti - 1 kpl viikonloppulippu ja 1 kpl kalenteri',
                description=u'Paketti sisältää yhden viikonloppulipun ja yhden Tracon 2015 -seinäkalenterin. Tuotteet toimitetaan antamaasi osoitteeseen postitse, ja postikulut sisältyvät hintaan.',
                limit_groups=[
                    limit_group('Lauantain liput', 3525),
                    limit_group('Sunnuntain liput', 3525),
                    limit_group('Joulupaketti B', 80),
                ],
                price_cents=3500,
                requires_shipping=True,
                electronic_ticket=False,
                available=False,
                ordering=ordering(),
            ),
            dict(
                name=u'Viikonloppulippu',
                description=u'Viikonloppulippu Tracon 2015 -tapahtumaan. Voimassa koko viikonlopun ajan la klo 10 – su klo 18. Toimitetaan sähköpostitse PDF-tiedostona, jossa olevaa viivakoodia vastaan saat rannekkeen tapahtumaan saapuessasi.',
                limit_groups=[
                    limit_group('Lauantain liput', 3525),
                    limit_group('Sunnuntain liput', 3525),
                ],
                price_cents=2500,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=ordering(),
            ),
            dict(
                name=u'Lauantailippu',
                description=u'Lauantailippu Tracon 2015 -tapahtumaan. Voimassa koko lauantaipäivän ajan la klo 10 – su klo 08. Toimitetaan sähköpostitse PDF-tiedostona, jossa olevaa viivakoodia vastaan saat rannekkeen tapahtumaan saapuessasi.',
                limit_groups=[
                    limit_group('Lauantain liput', 3525),
                ],
#.........这里部分代码省略.........
开发者ID:akx,项目名称:kompassi,代码行数:103,代码来源:setup_traconx.py

示例7: setup_tickets

# 需要导入模块: from tickets.models import TicketsEventMeta [as 别名]
# 或者: from tickets.models.TicketsEventMeta import get_or_create_groups [as 别名]
    def setup_tickets(self):
        from tickets.models import TicketsEventMeta, LimitGroup, Product

        tickets_admin_group, = TicketsEventMeta.get_or_create_groups(self.event, ['admins'])

        defaults = dict(
            admin_group=tickets_admin_group,
            due_days=14,
            shipping_and_handling_cents=0,
            reference_number_template="2015{:05d}",
            contact_email='Yukicon <[email protected]>',
            plain_contact_email='[email protected]',
            ticket_free_text=u"Tämä on sähköinen lippusi Yukicon 2.0 -tapahtumaan. Sähköinen lippu vaihdetaan rannekkeeseen\n"
                u"lipunvaihtopisteessä saapuessasi tapahtumaan. Voit tulostaa tämän lipun tai näyttää sen\n"
                u"älypuhelimen tai tablettitietokoneen näytöltä. Mikäli kumpikaan näistä ei ole mahdollista, ota ylös\n"
                u"kunkin viivakoodin alla oleva neljästä tai viidestä sanasta koostuva sanakoodi ja ilmoita se\n"
                u"lipunvaihtopisteessä.\n\n"
                u"Tervetuloa Yukiconiin!",
            front_page_text=u"<h2>Tervetuloa ostamaan pääsylippuja Yukicon 2.0 -tapahtumaan!</h2>"
                u"<p>Liput maksetaan suomalaisilla verkkopankkitunnuksilla heti tilauksen yhteydessä.</p>"
                u"<p>Lue lisää tapahtumasta <a href='http://www.yukicon.fi'>Yukiconin kotisivuilta</a>.</p>",
        )

        if self.test:
            t = now()
            defaults.update(
                ticket_sales_starts=t - timedelta(days=60),
                ticket_sales_ends=t + timedelta(days=60),
            )
        else:
            defaults.update(
                ticket_sales_starts=datetime(2014, 11, 20, 18, 0, tzinfo=self.tz),
                ticket_sales_ends=datetime(2015, 1, 11, 18, 0, tzinfo=self.tz),
            )

        meta, unused = TicketsEventMeta.objects.get_or_create(event=self.event, defaults=defaults)

        def limit_group(description, limit):
            limit_group, unused = LimitGroup.objects.get_or_create(
                event=self.event,
                description=description,
                defaults=dict(limit=limit),
            )

            return limit_group

        def ordering():
            ordering.counter += 10
            return ordering.counter
        ordering.counter = 0

        for product_info in [
            dict(
                name=u'Yukicon 2015 -pääsylippu',
                description=u'Lippu kattaa koko viikonlopun. Maksettuasi sinulle lähetetään PDF-lippu antamaasi sähköpostiin, jota vastaan saat rannekkeen tapahtuman ovelta.',
                limit_groups=[
                    limit_group('Pääsyliput', 1450),
                ],
                price_cents=1700,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=ordering(),
            ),
        ]:
            name = product_info.pop('name')
            limit_groups = product_info.pop('limit_groups')

            product, unused = Product.objects.get_or_create(
                event=self.event,
                name=name,
                defaults=product_info
            )

            if not product.limit_groups.exists():
                product.limit_groups = limit_groups
                product.save()
开发者ID:Hilzu,项目名称:kompassi,代码行数:79,代码来源:setup_yukicon2015.py

示例8: setup_tickets

# 需要导入模块: from tickets.models import TicketsEventMeta [as 别名]
# 或者: from tickets.models.TicketsEventMeta import get_or_create_groups [as 别名]
    def setup_tickets(self):
        from tickets.models import TicketsEventMeta, LimitGroup, Product

        tickets_admin_group, = TicketsEventMeta.get_or_create_groups(self.event, ['admins'])

        defaults = dict(
            admin_group=tickets_admin_group,
            due_days=14,
            shipping_and_handling_cents=0,
            reference_number_template="2017{:05d}",
            contact_email='Looking for Alice <[email protected]>',
            ticket_free_text=(
                "Tämä on sähköinen lippusi Looking for Alice -tapahtumaan. Voit tulostaa tämän lipun tai\n"
                "näyttää sen älypuhelimen tai tablettitietokoneen näytöltä. Mikäli kumpikaan näistä ei ole\n"
                "mahdollista, ota ylös kunkin viivakoodin alla oleva neljästä tai viidestä sanasta koostuva\n"
                "Kissakoodi ja ilmoita se lipunvaihtopisteessä.\n\n"

                "This is your electronic ticket to Looking for Alice. You can print it or show it from your\n"
                "smartphone or tablet. If neither of these are suitable for you, please write down the four\n"
                "to six Finnish words under the barcode – they will function as your ticket code at the\n"
                "ticket exchange point.\n\n"

                "Tervetuloa Looking for Alice -tapahtumaan! Welcome to Looking for Alice!"
            ),
            front_page_text=(
                "<h2>Tervetuloa ostamaan pääsylippuja Looking for Alice -tapahtumaan!</h2>"
                "<p>Liput maksetaan suomalaisilla verkkopankkitunnuksilla tai luottokortilla heti tilauksen yhteydessä.</p>"

                "<h2>Welcome to the Looking for Alice ticket shop!</h2>"
                "<p>We accept Finnish Internet bank payments and international credit cards.</p>"
            ),
        )

        if self.test:
            t = now()
            defaults.update(
                ticket_sales_starts=t - timedelta(days=60),
                ticket_sales_ends=t + timedelta(days=60),
            )
        else:
            defaults.update(
                ticket_sales_starts=datetime(2016, 12, 11, 18, 0, tzinfo=self.tz),
                # ticket_sales_ends=datetime(2015, 1, 11, 18, 0, tzinfo=self.tz),
            )

        meta, unused = TicketsEventMeta.objects.get_or_create(event=self.event, defaults=defaults)

        def limit_group(description, limit):
            limit_group, unused = LimitGroup.objects.get_or_create(
                event=self.event,
                description=description,
                defaults=dict(limit=limit),
            )

            return limit_group

        def ordering():
            ordering.counter += 10
            return ordering.counter
        ordering.counter = 0

        for product_info in [
            dict(
                name='The White Rabbit',
                description=(
                    'The White Rabbit -lippu johdattaa sinut seikkailuun sekä In The Wonderland -päiväosioon että Through the Looking Glass -iltaosioon.\n\n'
                    'The White Rabbit – a regular full day ticket, includes entrance to the In the Wonderland day section and Through the Looking Glass evening section.'
                ),
                limit_groups=[
                    limit_group('The White Rabbit', 130),
                ],
                price_cents=5500,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=ordering(),
            ),
            dict(
                name='The Queen of Hearts',
                description=(
                    'Kuninkaallisen menon takaa The Queen of Hearts-lippu, jolla pääset päiväosioon aikaisemmin sisälle ja saat sisäänpääsyn Through the Looking Glass -iltaosioon. Lisäksi lippu sisältää kuva-session upeiden kunniavieraidemme kanssa ihanan Sanni Siiran kuvaamana sekä pienen lahjakassin!\n\n'
                    'The Queen of Hearts – Vip full day ticket, includes early entrance to the In the Wonderland day section and entrance to the Through the looking Glass evening section. The ticket also includes a small goodie bag and a photosession with the guests of honors by Sanni Siira!'
                ),
                limit_groups=[
                    limit_group('The Queen of Hearts', 30),
                ],
                price_cents=7000,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=15,
            ),
            dict(
                name='Through the Looking Glass',
                description=(
                    'Through the Looking Glass -lipulla pääset osallistumaan Through the Looking Glass -iltaosioon.\n\n'
                    'Through the Looking Glass – evening section ticket. This ticket allows an entrance to the Through the Looking Glass evening section of the event.'
                ),
                limit_groups=[
                    limit_group('Through the Looking Glass', 100),
#.........这里部分代码省略.........
开发者ID:Siikakala,项目名称:kompassi,代码行数:103,代码来源:setup_lookingforalice.py

示例9: setup_tickets

# 需要导入模块: from tickets.models import TicketsEventMeta [as 别名]
# 或者: from tickets.models.TicketsEventMeta import get_or_create_groups [as 别名]
    def setup_tickets(self):
        from tickets.models import TicketsEventMeta, LimitGroup, Product

        tickets_admin_group, pos_access_group = TicketsEventMeta.get_or_create_groups(self.event, ['admins', 'pos'])

        defaults = dict(
            admin_group=tickets_admin_group,
            pos_access_group=pos_access_group,
            due_days=14,
            shipping_and_handling_cents=0,
            reference_number_template="2019{:06d}",
            contact_email='Traconin lipunmyynti <[email protected]>',
            ticket_free_text=(
                "Tämä on sähköinen lippusi vuoden 2019 Traconiin. Sähköinen lippu vaihdetaan rannekkeeseen\n"
                "lipunvaihtopisteessä saapuessasi tapahtumaan. Voit tulostaa tämän lipun tai näyttää sen\n"
                "älypuhelimen tai tablettitietokoneen näytöltä. Mikäli kumpikaan näistä ei ole mahdollista, ota ylös\n"
                "kunkin viivakoodin alla oleva neljästä tai viidestä sanasta koostuva sanakoodi ja ilmoita se\n"
                "lipunvaihtopisteessä.\n\n"
                "Tervetuloa Traconiin!"
            ),
            front_page_text=(
                "<h2>Tervetuloa ostamaan pääsylippuja Traconiin!</h2>"
                "<p>Liput maksetaan suomalaisilla verkkopankkitunnuksilla heti tilauksen yhteydessä.</p>"
                "<p>Lue lisää tapahtumasta <a href='http://2019.tracon.fi'>Traconin kotisivuilta</a>.</p>"
            ),
        )

        if self.test:
            t = now()
            defaults.update(
                ticket_sales_starts=t - timedelta(days=60),
                ticket_sales_ends=t + timedelta(days=60),
            )
        else:
            defaults.update(
                ticket_sales_starts=datetime(2019, 7, 1, 18, 0, 0, tzinfo=self.tz),
            )
        meta, unused = TicketsEventMeta.objects.get_or_create(event=self.event, defaults=defaults)

        def limit_group(description, limit):
            limit_group, unused = LimitGroup.objects.get_or_create(
                event=self.event,
                description=description,
                defaults=dict(limit=limit),
            )

            return limit_group

        for product_info in [
            # dict(
            #     name='Viikonloppulippu',
            #     description='Voimassa koko viikonlopun ajan la klo 10–02 ja su klo 07–18. Toimitetaan sähköpostitse PDF-tiedostona.',
            #     limit_groups=[
            #         limit_group('Lauantain liput', 4400),
            #         limit_group('Sunnuntain liput', 4400),
            #     ],
            #     price_cents=2800,
            #     requires_shipping=False,
            #     electronic_ticket=True,
            #     available=True,
            #     ordering=self.get_ordering_number(),
            # ),
            # dict(
            #     name='Lauantailippu',
            #     description='Voimassa koko lauantaipäivän ajan klo 10–02. Toimitetaan sähköpostitse PDF-tiedostona.',
            #     limit_groups=[
            #         limit_group('Lauantain liput', 4400),
            #     ],
            #     price_cents=2000,
            #     requires_shipping=False,
            #     electronic_ticket=True,
            #     available=True,
            #     ordering=self.get_ordering_number(),
            # ),
            # dict(
            #     name='Sunnuntailippu',
            #     description='Voimassa koko sunnuntaipäivän ajan klo 07–18. Toimitetaan sähköpostitse PDF-tiedostona.',
            #     limit_groups=[
            #         limit_group('Sunnuntain liput', 4400),
            #     ],
            #     price_cents=1800,
            #     requires_shipping=False,
            #     electronic_ticket=True,
            #     available=True,
            #     ordering=self.get_ordering_number(),
            # ),
            # dict(
            #     name='Iltabilelippu',
            #     description='Pääsylippu maksullisiin K18-iltabileisiin Pakkahuoneella. Toimitetaan sähköpostitse PDF-tiedostona. Huomaathan, että tänä vuonna pääsy iltabileisiin edellyttää iltabilelipun lisäksi Traconin pääsylippua (lauantai-, sunnuntai- tai viikonloppulippu tai badge).',
            #     limit_groups=[
            #         limit_group('Iltabileliput', 235),
            #     ],
            #     price_cents=500,
            #     requires_shipping=False,
            #     electronic_ticket=True,
            #     available=True,
            #     ordering=self.get_ordering_number() + 9000, # XXX
            # ),
            # dict(
            #     name='Lattiamajoitus 1 yö pe-la - Aleksanterin koulu (sis. makuualusta)',
#.........这里部分代码省略.........
开发者ID:tracon,项目名称:kompassi,代码行数:103,代码来源:setup_tracon2019.py

示例10: handle

# 需要导入模块: from tickets.models import TicketsEventMeta [as 别名]
# 或者: from tickets.models.TicketsEventMeta import get_or_create_groups [as 别名]
    def handle(*args, **options):
        if settings.DEBUG:
            print 'Setting up tracon9 in test mode'
        else:
            print 'Setting up tracon9 in production mode'

        tz = tzlocal()


        #
        # Core
        #

        venue, unused = Venue.objects.get_or_create(name='Tampere-talo')
        content_type = ContentType.objects.get_for_model(SignupExtra)
        event, unused = Event.objects.get_or_create(slug='tracon9', defaults=dict(
            name='Tracon 9',
            name_genitive='Tracon 9 -tapahtuman',
            name_illative='Tracon 9 -tapahtumaan',
            name_inessive='Tracon 9 -tapahtumassa',
            homepage_url='http://2014.tracon.fi',
            organization_name='Tracon ry',
            organization_url='http://ry.tracon.fi',
            start_time=datetime(2014, 9, 13, 10, 0, tzinfo=tz),
            end_time=datetime(2014, 9, 14, 18, 0, tzinfo=tz),
            venue=venue,
        ))

        #
        # Labour
        #

        labour_admin_group, = LabourEventMeta.get_or_create_groups(event, ['admins'])

        if settings.DEBUG:
            person, unused = Person.get_or_create_dummy()
            labour_admin_group.user_set.add(person.user)

        labour_event_meta_defaults = dict(
            signup_extra_content_type=content_type,
            work_begins=datetime(2014, 9, 12, 8, 0, tzinfo=tz),
            work_ends=datetime(2014, 9, 14, 22, 0, tzinfo=tz),
            admin_group=labour_admin_group,
        )

        if settings.DEBUG:
            t = now()
            labour_event_meta_defaults.update(
                registration_opens=t - timedelta(days=60),
                registration_closes=t + timedelta(days=60),

            )
        else:
            labour_event_meta_defaults.update(
                registration_opens=datetime(2014, 3, 1, 0, 0, tzinfo=tz),
                registration_closes=datetime(2014, 8, 1, 0, 0, tzinfo=tz),
            )

        labour_event_meta, unused = LabourEventMeta.objects.get_or_create(event=event, defaults=labour_event_meta_defaults)

        # labour v7
        if not labour_event_meta.contact_email:
            labour_event_meta.contact_email = 'Tracon 9 -työvoimatiimi <[email protected]>'
            labour_event_meta.save()

        for name, description in [
            (u'Conitea', u'Tapahtuman järjestelytoimikunnan eli conitean jäsen'),
            (u'Erikoistehtävä', u'Mikäli olet sopinut erikseen työtehtävistä ja/tai sinut on ohjeistettu täyttämään lomake, valitse tämä ja kerro tarkemmin Vapaa alue -kentässä mihin tehtävään ja kenen toimesta sinut on valittu.'),
            (u'Järjestyksenvalvoja', u'Kävijöiden turvallisuuden valvominen conipaikalla ja yömajoituksessa. Edellyttää voimassa olevaa JV-korttia ja asiakaspalveluasennetta. HUOM! Et voi valita tätä tehtävää hakemukseesi, ellet ole täyttänyt tietoihisi JV-kortin numeroa (oikealta ylhäältä oma nimesi &gt; Pätevyydet).'),
            (u'Ensiapu', 'Toimit osana tapahtuman omaa ensiapuryhmää. Vuoroja päivisin ja öisin tapahtuman aukioloaikoina. Vaaditaan vähintään voimassa oleva EA1 -kortti ja osalta myös voimassa oleva EA2 -kortti. Kerro Työkokemus -kohdassa osaamisestasi, esim. oletko toiminut EA-tehtävissä tapahtumissa tai oletko sairaanhoitaja/lähihoitaja koulutuksestaltasi.'),
            (u'Kasaus ja purku', u'Kalusteiden siirtelyä & opasteiden kiinnittämistä. Ei vaadi erikoisosaamista. Työvuoroja myös jo pe sekä su conin sulkeuduttua, kerro lisätiedoissa jos voit osallistua näihin.'),
            (u'Logistiikka', u'Autokuskina toimimista ja tavaroiden/ihmisten hakua ja noutamista. B-luokan ajokortti vaaditaan. Työvuoroja myös perjantaille.'),
            (u'Majoitusvalvoja', u'Huolehtivat lattiamajoituspaikkojen pyörittämisestä yöaikaan. Työvuoroja myös molempina öinä.'),
            (u'Myynti', u'Pääsylippujen ja Tracon-oheistuotteiden myyntiä sekä lippujen tarkastamista. Myyjiltä edellytetään täysi-ikäisyyttä, asiakaspalveluhenkeä ja huolellisuutta rahankäsittelyssä. Vuoroja myös perjantaina.'),
            (u'Narikka', u'Narikassa ja isotavara- eli asenarikassa säilytetään tapahtuman aikana kävijöiden omaisuutta. Tehtävä ei vaadi erikoisosaamista.'),
            (u'Ohjelma-avustaja', u'Lautapelien pyörittämistä, karaoken valvontaa, cosplay-kisaajien avustamista. Kerro Vapaa alue -kohdassa tarkemmin, mitä haluaisit tehdä. Huom! Puheohjelmasalien vänkäreiltä toivotaan AV-tekniikan osaamista.'),
            (u'Green room', u'Työvoiman ruokahuolto green roomissa. Hygieniapassi suositeltava.'),
            (u'Taltiointi', u'Taltioinnin keskeisiin tehtäviin kuuluvat mm. saleissa esitettävien ohjelmanumeroiden videointi tapahtumassa ja editointi tapahtuman jälkeen. Lisäksi videoidaan dokumentaarisella otteella myös yleisesti tapahtumaa. Kerro Työkokemus-kentässä aiemmasta videokuvauskokemuksestasi (esim. linkkejä videogallerioihisi) sekä mitä haluaisit taltioinnissa tehdä.'),
            (u'Tekniikka', u'Salitekniikan (AV) ja tietotekniikan (tulostimet, lähiverkot, WLAN) nopeaa MacGyver-henkistä ongelmanratkaisua.'),
            (u'Valokuvaus', u'Valokuvaus tapahtuu pääasiassa kuvaajien omilla järjestelmäkameroilla. Tehtäviä voivat olla studiokuvaus, salikuvaus sekä yleinen valokuvaus. Kerro Työkokemus-kentässä aiemmasta valokuvauskokemuksestasi (esim. linkkejä kuvagallerioihisi) sekä mitä/missä haluaisit tapahtumassa valokuvata.'),
            (u'Yleisvänkäri', u'Sekalaisia tehtäviä laidasta laitaan, jotka eivät vaadi erikoisosaamista. Voit halutessasi kirjata lisätietoihin, mitä osaat ja haluaisit tehdä.'),
            (u'Info', u'Infopisteen henkilökunta vastaa kävijöiden kysymyksiin ja ratkaisee heidän ongelmiaan tapahtuman paikana. Tehtävä edellyttää asiakaspalveluasennetta, tervettä järkeä ja ongelmanratkaisukykyä.'),
        ]:
            JobCategory.objects.get_or_create(
                event=event,
                name=name,
                defaults=dict(
                    description=description,
                    slug=slugify(name),
                )
            )

        labour_event_meta.create_groups()

        for name in [u'Conitea']:
            JobCategory.objects.filter(event=event, name=name).update(public=False)

        jvkortti = Qualification.objects.get(name='JV-kortti')
        jv = JobCategory.objects.get(
            event=event,
#.........这里部分代码省略.........
开发者ID:akx,项目名称:kompassi,代码行数:103,代码来源:setup_tracon9.py

示例11: setup_tickets

# 需要导入模块: from tickets.models import TicketsEventMeta [as 别名]
# 或者: from tickets.models.TicketsEventMeta import get_or_create_groups [as 别名]
    def setup_tickets(self):
        from tickets.models import TicketsEventMeta, LimitGroup, Product

        tickets_admin_group, = TicketsEventMeta.get_or_create_groups(self.event, ['admins'])

        defaults = dict(
            admin_group=tickets_admin_group,
            due_days=14,
            shipping_and_handling_cents=0,
            reference_number_template="2017{:05d}",
            contact_email='Yukicon <[email protected]>',
            ticket_free_text="Tämä on sähköinen lippusi. Sähköinen lippu vaihdetaan rannekkeeseen\n"
                "lipunvaihtopisteessä saapuessasi tapahtumaan. Voit tulostaa tämän lipun tai näyttää sen\n"
                "älypuhelimen tai tablettitietokoneen näytöltä. Mikäli kumpikaan näistä ei ole mahdollista, ota ylös\n"
                "kunkin viivakoodin alla oleva neljästä tai viidestä sanasta koostuva sanakoodi ja ilmoita se\n"
                "lipunvaihtopisteessä.\n\n"
                "Tervetuloa tapahtumaan!",
            front_page_text="<h2>Tervetuloa ostamaan pääsylippuja Yukicon 4.0- ja Pyrycon-tapahtumiin!</h2>"
                "<p>Liput maksetaan suomalaisilla verkkopankkitunnuksilla heti tilauksen yhteydessä.</p>"
                "<p>Lue lisää tapahtumasta <a href='http://www.yukicon.fi' target='_blank'>Yukiconin kotisivuilta</a>.</p>",
            print_logo_path=mkpath('static', 'images', 'yukicon2017_logo.jpg'),
            print_logo_width_mm=50,
            print_logo_height_mm=16
        )

        if self.test:
            t = now()
            defaults.update(
                ticket_sales_starts=t - timedelta(days=60),
                ticket_sales_ends=t + timedelta(days=60),
            )

        meta, unused = TicketsEventMeta.objects.get_or_create(event=self.event, defaults=defaults)

        if 'yukicon_436_test' in meta.print_logo_path or 'png' in meta.print_logo_path:
            meta.print_logo_path = mkpath('static', 'images', 'yukicon2017_logo.jpg')
            meta.print_logo_height_mm = 16
            meta.save()

        def limit_group(description, limit):
            limit_group, unused = LimitGroup.objects.get_or_create(
                event=self.event,
                description=description,
                defaults=dict(limit=limit),
            )

            return limit_group

        for product_info in [
            dict(
                name='Yukicon 4.0 – Early Access',
                description='Early Access -lipulla pääset Yukiconiin 18.–19.2.2017. Lippu oikeuttaa Early Access -etuuksien lunastuksen. Lippu ei oikeuta pääsyä Pyryconiin. Maksettuasi sinulle lähetetään PDF-lippu antamaasi sähköpostiin, jota vastaan saat rannekkeen tapahtuman ovelta.',
                limit_groups=[
                    limit_group('Early Access', 200),
                ],
                price_cents=2900,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=self.get_ordering_number(),
            ),
            dict(
                name='Pyryconin pääsylippu',
                description='Lipulla pääset Pyryconiin perjantaina 17. helmikuuta 2017. Lippu ei oikeuta pääsyä Yukiconiin. Maksettuasi sinulle lähetetään PDF-lippu antamaasi sähköpostiin, jota vastaan saat rannekkeen tapahtuman ovelta. Ei palautus- tai vaihto-oikeutta.',
                limit_groups=[
                    limit_group('Pyrycon', 1200),
                ],
                price_cents=600,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=self.get_ordering_number(),
            ),
        ]:
            name = product_info.pop('name')
            limit_groups = product_info.pop('limit_groups')

            product, unused = Product.objects.get_or_create(
                event=self.event,
                name=name,
                defaults=product_info
            )

            if not product.limit_groups.exists():
                product.limit_groups = limit_groups
                product.save()
开发者ID:Siikakala,项目名称:kompassi,代码行数:88,代码来源:setup_yukicon2017.py

示例12: setup_tickets

# 需要导入模块: from tickets.models import TicketsEventMeta [as 别名]
# 或者: from tickets.models.TicketsEventMeta import get_or_create_groups [as 别名]
    def setup_tickets(self):
        from tickets.models import TicketsEventMeta, LimitGroup, Product, ShirtType, ShirtSize

        tickets_admin_group, = TicketsEventMeta.get_or_create_groups(self.event, ['admins'])

        defaults = dict(
            admin_group=tickets_admin_group,
            due_days=14,
            shipping_and_handling_cents=0,
            reference_number_template="2017{:05d}",
            contact_email='Ropeconin lipunmyynti <[email protected]>',
            front_page_text=(
                "<h2>Tervetuloa ostamaan pääsylippuja Ropeconiin!</h2>"
                "<p>Liput maksetaan suomalaisilla verkkopankkitunnuksilla heti tilauksen yhteydessä. Liput lähetetään "
                "sähköpostitse e-lippuina, jotka vaihdetaan rannekkeiksi saapuessasi tapahtumaan.</p>"
                "<p>Lue lisää tapahtumasta <a href='http://ropecon.fi'>Ropeconin kotisivuilta</a>.</p>"
            ),
        )

        if self.test:
            t = now()
            defaults.update(
                ticket_sales_starts=t - timedelta(days=60),
                ticket_sales_ends=t + timedelta(days=60),
            )
        else:
            # defaults.update(
            #     ticket_sales_starts=datetime(2015, 1, 25, 18, 0, tzinfo=self.tz),
            #     # ticket_sales_ends=datetime(2015, 1, 11, 18, 0, tzinfo=self.tz),
            # )
            pass

        meta, unused = TicketsEventMeta.objects.get_or_create(event=self.event, defaults=defaults)

        def limit_group(description, limit):
            limit_group, unused = LimitGroup.objects.get_or_create(
                event=self.event,
                description=description,
                defaults=dict(limit=limit),
            )

            return limit_group

        def ordering():
            ordering.counter += 10
            return ordering.counter
        ordering.counter = 0

        for product_info in [
            dict(
                name='Ropecon 2017 viikonloppulippu pe–su (Norppa & Kultisti -kampanja)',
                description=(
                    'Ropecon 2017 -tapahtuman pääsylippu, joka oikeuttaa kolmen päivän '
                    'sisäänpääsyrannekkeeseen. Kun tilaat lippusi 28.2. mennessä, saat myös Norppa & Kultisti '
                    '-kangasmerkin!'
                ),
                limit_groups=[
                    limit_group('Pääsyliput perjantai', 10000),
                    limit_group('Pääsyliput lauantai', 10000),
                    limit_group('Pääsyliput sunnuntai', 10000),
                ],
                price_cents=3500,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=ordering(),
            ),
            dict(
                name='Ropecon 2017 viikonloppulippu pe–su',
                description=(
                    'Ropecon 2017 -tapahtuman pääsylippu, joka oikeuttaa kolmen päivän '
                    'sisäänpääsyrannekkeeseen.'
                ),
                limit_groups=[
                    limit_group('Pääsyliput perjantai', 10000),
                    limit_group('Pääsyliput lauantai', 10000),
                    limit_group('Pääsyliput sunnuntai', 10000),
                ],
                price_cents=3500,
                requires_shipping=False,
                electronic_ticket=True,
                available=False,
                ordering=ordering(),
            ),
            dict(
                name='Ropecon 2017 Conformers -paita',
                description=(
                    'T-paidat maksetaan ennakkoon ja noudetaan tapahtumasta. Paitakoot valitaan seuraavassa '
                    'vaiheessa. <a href="https://2017.ropecon.fi/spessupaita-2017/" target="_blank">Lue lisää '
                    'paitamalleista ja katso kokotaulukot</a>'
                ),
                limit_groups=[
                    limit_group('T-paidat', 10000),
                ],
                price_cents=3000,
                requires_shipping=False,
                electronic_ticket=True,
                requires_shirt_size=True,
                available=True,
                ordering=ordering(),
#.........这里部分代码省略.........
开发者ID:Siikakala,项目名称:kompassi,代码行数:103,代码来源:setup_ropecon2017.py

示例13: setup_tickets

# 需要导入模块: from tickets.models import TicketsEventMeta [as 别名]
# 或者: from tickets.models.TicketsEventMeta import get_or_create_groups [as 别名]
    def setup_tickets(self):
        from tickets.models import TicketsEventMeta, LimitGroup, Product

        tickets_admin_group, pos_access_group = TicketsEventMeta.get_or_create_groups(self.event, ['admins', 'pos'])

        defaults = dict(
            admin_group=tickets_admin_group,
            due_days=14,
            shipping_and_handling_cents=0,
            reference_number_template="2018{:05d}",
            contact_email='Ropecon 2018 -lipunmyynti <[email protected]>',
            ticket_free_text="Tämä on sähköinen lippusi Ropecon 2018 -tapahtumaan. Sähköinen lippu vaihdetaan rannekkeeseen\n"
                "lipunvaihtopisteessä saapuessasi tapahtumaan. Voit tulostaa tämän lipun tai näyttää sen\n"
                "älypuhelimen tai tablettitietokoneen näytöltä. Mikäli kumpikaan näistä ei ole mahdollista, ota ylös\n"
                "kunkin viivakoodin alla oleva neljästä tai viidestä sanasta koostuva Kissakoodi ja ilmoita se\n"
                "lipunvaihtopisteessä.\n\n"
                "Tervetuloa Ropeconiin!",
            front_page_text="<h2>Tervetuloa Ropeconin lippukauppaan!</h2>"
                "<p>Liput maksetaan tilauksen yhteydessä käyttämällä suomalaia verkkopankkipalveluja.</p>"
                "<p>Maksetut liput toimitetaan e-lippuina sähköpostitse asiakkaan antamaan osoitteeseen. E-liput vaihdetaan rannekkeiksi tapahtuman lipunmyyntipisteillä 27.–29.7.2018.</p>"
                "<p>Lisätietoja lipuista saat tapahtuman verkkosivuilta. <a href='https://2018.ropecon.fi/liput/'>Siirry takaisin tapahtuman verkkosivuille</a>.</p>"
                "<p>Huom! Tämä verkkokauppa palvelee ainoastaan asiakkaita, joilla on osoite Suomessa. Mikäli tarvitset "
                "toimituksen ulkomaille, ole hyvä ja ota sähköpostitse yhteyttä: <em>[email protected]</em>"
        )

        if self.test:
            t = now()
            defaults.update(
                ticket_sales_starts=t - timedelta(days=60),
                ticket_sales_ends=t + timedelta(days=60),
            )
        else:
            defaults.update(
                ticket_sales_starts=datetime(2018, 2, 14, 10, 0, tzinfo=self.tz),
                ticket_sales_ends=datetime(2018, 7, 2, 0, 0, tzinfo=self.tz),
            )

        meta, unused = TicketsEventMeta.objects.get_or_create(event=self.event, defaults=defaults)

        # migration 0024_ticketseventmeta_pos_access_group
        if meta.pos_access_group is None:
            meta.pos_access_group = pos_access_group
            meta.save()

        def limit_group(description, limit):
            limit_group, unused = LimitGroup.objects.get_or_create(
                event=self.event,
                description=description,
                defaults=dict(limit=limit),
            )

            return limit_group

        for product_info in [
            dict(
                name='Ropecon 2018 viikonloppulippu pe-su, aikuiset',
                description='Ropecon 2018-tapahtuman pääsylippu 27.-29.7.2018.',
                limit_groups=[
                    limit_group('Pääsyliput', 9999),
                ],
                price_cents=3800,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=self.get_ordering_number(),
            ),
            dict(
                name='Ropecon 2018 viikonloppulippu pe-su, lapset',
                description='7-12-vuotiaat lapset aikuisen seurassa.',
                limit_groups=[
                    limit_group('Pääsyliput', 9999),
                ],
                price_cents=2000,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=self.get_ordering_number(),
            ),
            dict(
                name='Ropecon 2018 -tapahtuman kannatusranneke',
                description='Sisältää pääsylipun Ropecon 2018 -tapahtumaan 27.–29.7.2018 sekä Ropecon ry:n jäsenyyden vuodelle 2018.',
                limit_groups=[
                    limit_group('Pääsyliput', 9999),
                ],
                price_cents=7000,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=self.get_ordering_number(),
            ),
        ]:
            name = product_info.pop('name')
            limit_groups = product_info.pop('limit_groups')

            product, unused = Product.objects.get_or_create(
                event=self.event,
                name=name,
                defaults=product_info
            )

#.........这里部分代码省略.........
开发者ID:tracon,项目名称:kompassi,代码行数:103,代码来源:setup_ropecon2018.py

示例14: setup_tickets

# 需要导入模块: from tickets.models import TicketsEventMeta [as 别名]
# 或者: from tickets.models.TicketsEventMeta import get_or_create_groups [as 别名]
    def setup_tickets(self):
        from tickets.models import TicketsEventMeta, LimitGroup, Product

        tickets_admin_group, = TicketsEventMeta.get_or_create_groups(self.event, ['admins'])

        defaults = dict(
            admin_group=tickets_admin_group,
            due_days=14,
            shipping_and_handling_cents=0,
            reference_number_template="2016{:05d}",
            contact_email='Ropeconin lipunmyynti <[email protected]>',
            plain_contact_email='[email protected]',
            front_page_text=u"<h2>Tervetuloa ostamaan pääsylippuja Ropeconiin!</h2>"
                u"<p>Liput maksetaan suomalaisilla verkkopankkitunnuksilla heti tilauksen yhteydessä. Liput lähetetään sähköpostitse e-lippuina, jotka vaihdetaan rannekkeiksi saapuessasi tapahtumaan.</p>"
                u"<p>Lue lisää tapahtumasta <a href='http://ropecon.fi'>Ropeconin kotisivuilta</a>.</p>",
        )

        if self.test:
            t = now()
            defaults.update(
                ticket_sales_starts=t - timedelta(days=60),
                ticket_sales_ends=t + timedelta(days=60),
            )
        else:
            # defaults.update(
            #     ticket_sales_starts=datetime(2015, 1, 25, 18, 0, tzinfo=self.tz),
            #     # ticket_sales_ends=datetime(2015, 1, 11, 18, 0, tzinfo=self.tz),
            # )
            pass

        meta, unused = TicketsEventMeta.objects.get_or_create(event=self.event, defaults=defaults)

        def limit_group(description, limit):
            limit_group, unused = LimitGroup.objects.get_or_create(
                event=self.event,
                description=description,
                defaults=dict(limit=limit),
            )

            return limit_group

        def ordering():
            ordering.counter += 10
            return ordering.counter
        ordering.counter = 0

        for product_info in [
            dict(
                name=u'Ropecon 2016 viikonloppulippu pe-su',
                description=u'Ropecon 2016 tapahtuman pääsylippu oikeuttaen kolmen päivän sisäänpääsyrannekkeeseen.',
                limit_groups=[
                    limit_group('Pääsyliput perjantai', 10000),
                    limit_group('Pääsyliput lauantai', 10000),
                    limit_group('Pääsyliput sunnuntai', 10000),
                ],
                price_cents=3200,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=ordering(),
            ),
            dict(
                name=u'Ropecon 2016 päivälippu perjantai',
                description=u'Ropecon 2016 tapahtuman pääsylippu oikeuttaen yhden päivän sisäänpääsyrannekkeeseen.',
                limit_groups=[
                    limit_group('Pääsyliput perjantai', 10000),
                ],
                price_cents=2200,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=ordering(),
            ),
            dict(
                name=u'Ropecon 2016 päivälippu lauantai',
                description=u'Ropecon 2016 tapahtuman pääsylippu oikeuttaen yhden päivän sisäänpääsyrannekkeeseen.',
                limit_groups=[
                    limit_group('Pääsyliput lauantai', 10000),
                ],
                price_cents=2200,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=ordering(),
            ),
          dict(
                name=u'Ropecon 2016 päivälippu sunnuntai',
                description=u'Ropecon 2016 tapahtuman pääsylippu oikeuttaen yhden päivän sisäänpääsyrannekkeeseen.',
                limit_groups=[
                    limit_group('Pääsyliput sunnuntai', 10000),
                ],
                price_cents=1500,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=ordering(),
            ),
        ]:
            name = product_info.pop('name')
            limit_groups = product_info.pop('limit_groups')
#.........这里部分代码省略.........
开发者ID:akx,项目名称:kompassi,代码行数:103,代码来源:setup_ropecon2016.py

示例15: setup_tickets

# 需要导入模块: from tickets.models import TicketsEventMeta [as 别名]
# 或者: from tickets.models.TicketsEventMeta import get_or_create_groups [as 别名]
    def setup_tickets(self):
        from tickets.models import TicketsEventMeta, LimitGroup, Product

        tickets_admin_group, pos_access_group = TicketsEventMeta.get_or_create_groups(self.event, ['admins', 'pos'])

        defaults = dict(
            admin_group=tickets_admin_group,
            pos_access_group=pos_access_group,
            due_days=14,
            shipping_and_handling_cents=0,
            reference_number_template="2019{:05d}",
            contact_email='Ropecon 2019 -lipunmyynti <[email protected]>',
            ticket_free_text="Tämä on sähköinen lippusi Ropecon 2019 -tapahtumaan. Sähköinen lippu vaihdetaan rannekkeeseen\n"
                "lipunvaihtopisteessä saapuessasi tapahtumaan. Voit tulostaa tämän lipun tai näyttää sen\n"
                "älypuhelimen tai tablettitietokoneen näytöltä. Mikäli kumpikaan näistä ei ole mahdollista, ota ylös\n"
                "kunkin viivakoodin alla oleva neljästä tai viidestä sanasta koostuva Kissakoodi ja ilmoita se\n"
                "lipunvaihtopisteessä.\n\n"
                "Tervetuloa Ropeconiin!",
            front_page_text="<h2>Tervetuloa Ropeconin lippukauppaan!</h2>"
                "<p>Liput maksetaan tilauksen yhteydessä käyttämällä suomalaia verkkopankkipalveluja.</p>"
                "<p>Maksetut liput toimitetaan e-lippuina sähköpostitse asiakkaan antamaan osoitteeseen. E-liput vaihdetaan rannekkeiksi tapahtuman lipunmyyntipisteillä 27.–29.7.2019.</p>"
                "<p>Lisätietoja lipuista saat tapahtuman verkkosivuilta. <a href='https://2019.ropecon.fi/liput/'>Siirry takaisin tapahtuman verkkosivuille</a>.</p>"
                "<p>Huom! Tämä verkkokauppa palvelee ainoastaan asiakkaita, joilla on osoite Suomessa. Mikäli tarvitset "
                "toimituksen ulkomaille, ole hyvä ja ota sähköpostitse yhteyttä: <em>[email protected]</em>"
        )

        if self.test:
            t = now()
            defaults.update(
                ticket_sales_starts=t - timedelta(days=60),
                ticket_sales_ends=t + timedelta(days=60),
            )
        else:
            defaults.update(
                ticket_sales_starts=datetime(2019, 2, 28, 10, 0, tzinfo=self.tz),
                ticket_sales_ends=datetime(2019, 7, 26, 0, 0, tzinfo=self.tz),
            )

        meta, unused = TicketsEventMeta.objects.get_or_create(event=self.event, defaults=defaults)

        def limit_group(description, limit):
            limit_group, unused = LimitGroup.objects.get_or_create(
                event=self.event,
                description=description,
                defaults=dict(limit=limit),
            )

            return limit_group

        for product_info in [
            dict(
                name='Ropecon 2019 Early Dragon -viikonloppulippu',
                description='Sisältää pääsyn Ropecon 2019 -tapahtumaan koko viikonlopun ajan.',
                limit_groups=[
                    limit_group('Pääsyliput', 9999),
                ],
                price_cents=4000,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=self.get_ordering_number(),
            ),
            dict(
                name='Ropecon 2019 Lasten Early Dragon -viikonloppulippu',
                description='Sisältää pääsyn lapselle (7-12 v) Ropecon 2019 -tapahtumaan koko viikonlopun ajan.',
                limit_groups=[
                    limit_group('Pääsyliput', 9999),
                ],
                price_cents=2000,
                requires_shipping=False,
                electronic_ticket=True,
                available=True,
                ordering=self.get_ordering_number(),
            ),
            dict(
                name='Ropecon 2019 Ennakkoviikonloppulippu',
                description='Sisältää pääsyn Ropecon 2019 -tapahtumaan koko viikonlopun ajan.',
                limit_groups=[
                    limit_group('Pääsyliput', 9999),
                ],
                price_cents=4500,
                requires_shipping=False,
                electronic_ticket=True,
                available=False,
                ordering=self.get_ordering_number(),
            ),
            dict(
                name='Ropecon 2019 Lasten ennakkoviikonloppulippu',
                description='Sisältää pääsyn lapselle (7-12 v) Ropecon 2019 -tapahtumaan koko viikonlopun ajan.',
                limit_groups=[
                    limit_group('Pääsyliput', 9999),
                ],
                price_cents=2500,
                requires_shipping=False,
                electronic_ticket=True,
                available=False,
                ordering=self.get_ordering_number(),
            ),
            dict(
                name='Ropecon 2019 Perheviikonloppulippupaketti',
#.........这里部分代码省略.........
开发者ID:tracon,项目名称:kompassi,代码行数:103,代码来源:setup_ropecon2019.py


注:本文中的tickets.models.TicketsEventMeta.get_or_create_groups方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。