@receiver(score_reset)
def submissions_score_reset_handler(sender, **kwargs):
 course_id = kwargs['course_id']
 usage_id = kwargs['item_id']
 user = user_by_anonymous_id(kwargs['anonymous_user_id'])
 if (user is None):
  return
 PROBLEM_WEIGHTED_SCORE_CHANGED.send(sender=None, weighted_earned=0, weighted_possible=0, user_id=user.id, anonymous_user_id=kwargs['anonymous_user_id'], course_id=course_id, usage_id=usage_id, modified=kwargs['created_at'], score_db_table=ScoreDatabaseTableEnum.submissions)

@ receiver ( score_reset ) def submissions_score_reset_handler ( sender , ** kwargs ) : course_id = kwargs [ 'course_id' ] usage_id = kwargs [ 'item_id' ] user = user_by_anonymous_id ( kwargs [ 'anonymous_user_id' ] ) if ( user is None ) : return PROBLEM_WEIGHTED_SCORE_CHANGED . send ( sender = None , weighted_earned = 0 , weighted_possible = 0 , user_id = user . id , anonymous_user_id = kwargs [ 'anonymous_user_id' ] , course_id = course_id , usage_id = usage_id , modified = kwargs [ 'created_at' ] , score_db_table = ScoreDatabaseTableEnum . submissions )
consume the score_reset signal defined in the submissions api .