Пример #1
0
    def forwards(self, orm):
        """find all FlaggedItems and the corresponding Activity
        transfer content object to Activity
        add moderators and admins to the activity recipients
        and set the denormalized value of question to the origin post
        of the flagged item
        """
        api = API(orm)
        moderators = api.get_moderators_and_admins()
        for flag in orm.FlaggedItem.objects.all():
            activity_items = api.get_activity_items_for_object(flag)
            if len(activity_items) == 0:  #fix a glitch
                activity = orm.Activity()
            elif len(activity_items) == 1:
                activity = activity_items[0]
            else:
                raise ValueError('cannot have >1 flagged items per activity')

            activity.user = flag.user
            activity.active_at = flag.flagged_at
            activity.activity_type = OFFENSIVE
            activity.content_type = flag.content_type
            activity.object_id = flag.object_id
            activity.question = api.get_origin_post_from_content_object(flag)

            activity.save()
            api.add_recipients_to_activity(moderators, activity)
            flag.delete()
    def forwards(self, orm):
        """find all FlaggedItems and the corresponding Activity
        transfer content object to Activity
        add moderators and admins to the activity recipients
        and set the denormalized value of question to the origin post
        of the flagged item
        """
        api = API(orm)
        moderators = api.get_moderators_and_admins()
        for flag in orm.FlaggedItem.objects.all():
            activity_items = api.get_activity_items_for_object(flag)
            if len(activity_items) == 0:#fix a glitch
                activity = orm.Activity()
            elif len(activity_items) == 1:
                activity = activity_items[0]
            else:
                raise ValueError('cannot have >1 flagged items per activity')

            activity.user = flag.user
            activity.active_at = flag.flagged_at
            activity.activity_type = OFFENSIVE
            activity.content_type = flag.content_type
            activity.object_id = flag.object_id
            activity.question = api.get_origin_post_from_content_object(flag)

            activity.save()
            api.add_recipients_to_activity(moderators, activity)
            flag.delete()
Пример #3
0
    def forwards(self, orm):
        api = API(orm)
        #1) fill in audit status values
        activities = orm.Activity.objects.exclude(receiving_users=None)

        have_problems = False
        errors = set()
        bad_ids = list()
        for act in activities:
            users = act.receiving_users.all()
            for user in users:
                orm.ActivityAuditStatus(user=user, activity=act).save()

        #2) save question value into the activity
        for act in orm.Activity.objects.all():
            if act.activity_type in APPROPRIATE_ACTIVITIES:
                try:
                    act.question = api.get_origin_post_from_content_object(act)
                    act.save()
                except Exception, e:
                    have_problems = True
                    errors.add(unicode(e))
                    bad_ids.append(str(act.id))
    def forwards(self, orm):
        api = API(orm)
        #1) fill in audit status values
        activities = orm.Activity.objects.exclude(receiving_users=None)

        have_problems = False
        errors = set()
        bad_ids = list()
        for act in activities:
            users = act.receiving_users.all()
            for user in users:
                orm.ActivityAuditStatus(user = user, activity = act).save()

        #2) save question value into the activity 
        for act in orm.Activity.objects.all():
            if act.activity_type in APPROPRIATE_ACTIVITIES:
                try:
                    act.question = api.get_origin_post_from_content_object(act)
                    act.save()
                except Exception, e:
                    have_problems = True
                    errors.add(unicode(e))
                    bad_ids.append(str(act.id))