'Return True/False to indicate whether to show the "Save" button.'

def should_show_save_button(self):

    if self.force_save_button:
        return (not self.closed())
    else:
        is_survey_question = (self.max_attempts == 0)
        needs_reset = (self.is_submitted() and (self.rerandomize == RANDOMIZATION.ALWAYS))
        if ((self.max_attempts is None) and (self.rerandomize != RANDOMIZATION.ALWAYS)):
            return False
        elif ((self.closed() and (not is_survey_question)) or needs_reset):
            return False
        else:
            return True
