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 |