Beispiel #1
0
def fill_user_initial_data(vosae_user, language_code):
    """
    This task creates inital data when a new :class:`~core.models.VosaeUser` is created
    """

    from organizer.models import VosaeCalendar, CalendarList, CalendarAclRule, VosaeEvent, EventDateTime

    with respect_language(language_code):
        # Creates a personal Calendar and an associated CalendarList
        calendar = VosaeCalendar(tenant=vosae_user.tenant, summary=_('My calendar'))
        calendar.acl.rules.append(CalendarAclRule(principal=vosae_user, role=u'OWNER'))
        calendar.save()
        CalendarList(
            tenant=vosae_user.tenant,
            vosae_user=vosae_user,
            calendar=calendar,
            selected=True
        ).save()

        # Creates an Event
        VosaeEvent(
            tenant=vosae_user.tenant,
            calendar=calendar,
            summary=_('I joined %(tenant)s on Vosae') % {'tenant': vosae_user.tenant},
            description=_('This is the most amazing day of my life, I joined %(tenant)s on Vosae') % {'tenant': vosae_user.tenant.name},
            creator=vosae_user,
            organizer=vosae_user,
            start=EventDateTime(date=date.today()),
            end=EventDateTime(date=date.today())
        ).save()
Beispiel #2
0
    def setUpClass(cls):
        from organizer.models import VosaeCalendar, CalendarAclRule

        super(CalendarListResourceTest, cls).setUpClass()

        # Create a calendar which will be referenced
        new_calendar = VosaeCalendar(tenant=settings.TENANT, summary=u"My Calendar", timezone=u"Europe/Paris")
        new_calendar.acl.rules.append(CalendarAclRule(principal=settings.VOSAE_USER, role="OWNER"))
        new_calendar.save()
        cls.vosae_calendar = new_calendar

        cls.created_documents = [new_calendar]
Beispiel #3
0
    def setUpClass(cls):
        from organizer.models import VosaeCalendar, CalendarAclRule
        super(CalendarListResourceTest, cls).setUpClass()

        # Create a calendar which will be referenced
        new_calendar = VosaeCalendar(tenant=settings.TENANT,
                                     summary=u'My Calendar',
                                     timezone=u'Europe/Paris')
        new_calendar.acl.rules.append(
            CalendarAclRule(principal=settings.VOSAE_USER, role='OWNER'))
        new_calendar.save()
        cls.vosae_calendar = new_calendar

        cls.created_documents = [new_calendar]
Beispiel #4
0
    def forwards(self, orm):
        # VosaeCalendar
        for vosae_calendar in VosaeCalendar.objects():
            vosae_calendar._changed_fields = ['tenant']
            vosae_calendar.acl._changed_fields = [
                'read_list', 'write_list', 'negate_list'
            ]
            for idx, rule in enumerate(vosae_calendar.acl.rules):
                vosae_calendar.acl.rules[idx]._changed_fields = ['principal']
            vosae_calendar.save()

        # CalendarList
        for calendar_list in CalendarList.objects():
            calendar_list._changed_fields = [
                'tenant', 'vosae_user', 'calendar'
            ]
            calendar_list.save()

        # VosaeEvent
        for vosae_event in VosaeEvent.objects():
            vosae_event._changed_fields = [
                'tenant', 'calendar', 'creator', 'organizer'
            ]
            for idx, attendee in enumerate(vosae_event.attendees):
                vosae_event.attendees[idx]._changed_fields = ['vosae_user']
            vosae_event.save()
    def forwards(self, orm):
        # VosaeCalendar
        for vosae_calendar in VosaeCalendar.objects():
            vosae_calendar._changed_fields = ['tenant']
            vosae_calendar.acl._changed_fields = ['read_list', 'write_list', 'negate_list']
            for idx, rule in enumerate(vosae_calendar.acl.rules):
                vosae_calendar.acl.rules[idx]._changed_fields = ['principal']
            vosae_calendar.save()

        # CalendarList
        for calendar_list in CalendarList.objects():
            calendar_list._changed_fields = ['tenant', 'vosae_user', 'calendar']
            calendar_list.save()

        # VosaeEvent
        for vosae_event in VosaeEvent.objects():
            vosae_event._changed_fields = ['tenant', 'calendar', 'creator', 'organizer']
            for idx, attendee in enumerate(vosae_event.attendees):
                vosae_event.attendees[idx]._changed_fields = ['vosae_user']
            vosae_event.save()