app/soc/views/helper/surveys.py
changeset 2527 ce657149b90a
parent 2526 8f29bfb9eb52
child 2530 d7a0ab3f1965
equal deleted inserted replaced
2526:8f29bfb9eb52 2527:ce657149b90a
    85     params:
    85     params:
    86       survey_content: a SuveryContent entity.
    86       survey_content: a SuveryContent entity.
    87       survey_logic: instance of SurveyLogic.
    87       survey_logic: instance of SurveyLogic.
    88       survey_record: a SurveyRecord entity.
    88       survey_record: a SurveyRecord entity.
    89       read_only: controls whether the survey taking UI allows data entry.
    89       read_only: controls whether the survey taking UI allows data entry.
       
    90       data: dictionary mapping fields to data for validation.
    90     """
    91     """
    91 
    92 
    92     self.kwargs = kwargs
    93     self.kwargs = kwargs
    93 
    94 
    94     self.survey_content = self.kwargs.pop('survey_content', None)
    95     self.survey_content = self.kwargs.pop('survey_content', None)
    95     self.survey_logic = self.kwargs.pop('survey_logic', None)
    96     self.survey_logic = self.kwargs.pop('survey_logic', None)
    96     self.survey_record = self.kwargs.pop('survey_record', None)
    97     self.survey_record = self.kwargs.pop('survey_record', None)
    97     self.read_only = self.kwargs.pop('read_only', None)
    98     self.read_only = self.kwargs.pop('read_only', None)
       
    99     data = self.kwargs.pop('data', {})
    98 
   100 
    99     self.fields_map = dict(
   101     self.fields_map = dict(
   100         long_answer=self.addLongField,
   102         long_answer=self.addLongField,
   101         short_answer=self.addShortField,
   103         short_answer=self.addShortField,
   102         selection=self.addSingleField,
   104         selection=self.addSingleField,
   103         pick_multi=self.addMultiField,
   105         pick_multi=self.addMultiField,
   104         pick_quant=self.addQuantField,
   106         pick_quant=self.addQuantField,
   105         )
   107         )
   106 
   108 
   107     self.kwargs['data'] = {}
   109     self.kwargs['data'] = data
   108     super(SurveyTakeForm, self).__init__(*args, **self.kwargs)
   110     super(SurveyTakeForm, self).__init__(*args, **self.kwargs)
   109 
   111 
   110   def getFields(self, post_dict=None):
   112   def getFields(self, post_dict=None):
   111     """Build the SurveyContent (questions) form fields.
   113     """Build the SurveyContent (questions) form fields.
   112 
   114