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()
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))