def _fire_score_changed_for_block(course_id, student, block, module_state_key):
 if (block and block.has_score):
  max_score = block.max_score()
  if (max_score is not None):
   PROBLEM_RAW_SCORE_CHANGED.send(sender=None, raw_earned=0, raw_possible=max_score, weight=getattr(block, 'weight', None), user_id=student.id, course_id=unicode(course_id), usage_id=unicode(module_state_key), score_deleted=True, only_if_higher=False, modified=datetime.now().replace(tzinfo=pytz.UTC), score_db_table=ScoreDatabaseTableEnum.courseware_student_module)

def _fire_score_changed_for_block ( course_id , student , block , module_state_key ) : if ( block and block . has_score ) : max_score = block . max_score ( ) if ( max_score is not None ) : PROBLEM_RAW_SCORE_CHANGED . send ( sender = None , raw_earned = 0 , raw_possible = max_score , weight = getattr ( block , 'weight' , None ) , user_id = student . id , course_id = unicode ( course_id ) , usage_id = unicode ( module_state_key ) , score_deleted = True , only_if_higher = False , modified = datetime . now ( ) . replace ( tzinfo = pytz . UTC ) , score_db_table = ScoreDatabaseTableEnum . courseware_student_module )
fires a problem_raw_score_changed event for the given module .