def _create_loop_from_dict(self, d): d_copy = d.copy() d_copy.pop(u"children", "") d_copy.pop(u"columns", "") result = GroupedSection(**d_copy) # columns is a left over from when this was # create_table_from_dict, I will need to clean this up for loop_item in d[u"columns"]: kwargs = { Section.NAME: loop_item.get(Section.NAME, u""), Section.LABEL: loop_item.get(Section.LABEL, u""), } # if this is a none option for a select all that apply # question then we should skip adding it to the result if kwargs[Section.NAME] == "none": continue column = GroupedSection(**kwargs) for child in d[SurveyElement.CHILDREN]: question_dict = self._create_question_dict_from_template_and_info( child, loop_item) question = self.create_survey_element_from_dict(question_dict) column.add_child(question) result.add_child(column) if result.get_name() != u"": return result return result.get_children()
def _create_loop_from_dict(self, d): """ Takes a json_dict of "loop" type Returns a GroupedSection """ d_copy = d.copy() children = d_copy.pop(u"children", []) columns = d_copy.pop(u"columns", []) result = GroupedSection(**d_copy) # columns is a left over from when this was # create_table_from_dict, I will need to clean this up for column_dict in columns: # If this is a none option for a select all that apply # question then we should skip adding it to the result if column_dict[u"name"] == "none": continue column = GroupedSection(**column_dict) for child in children: question_dict = self._name_and_label_substitutions( child, column_dict) question = self.create_survey_element_from_dict(question_dict) column.add_child(question) result.add_child(column) if result.name != u"": return result # TODO: Verify that nothing breaks if this returns a list return result.children
def _create_loop_from_dict(self, d): d_copy = d.copy() d_copy.pop(u"children", "") d_copy.pop(u"columns", "") result = GroupedSection(**d_copy) # columns is a left over from when this was # create_table_from_dict, I will need to clean this up for loop_item in d[u"columns"]: kwargs = { Section.NAME: loop_item.get(Section.NAME, u""), Section.LABEL: loop_item.get(Section.LABEL, u""), } # if this is a none option for a select all that apply # question then we should skip adding it to the result if kwargs[Section.NAME]=="none": continue column = GroupedSection(**kwargs) for child in d[SurveyElement.CHILDREN]: question_dict = self._create_question_dict_from_template_and_info(child, loop_item) question = self.create_survey_element_from_dict(question_dict) column.add_child(question) result.add_child(column) if result.get_name()!=u"": return result return result.get_children()
def _create_loop_from_dict(self, d, group_each_iteration=True): """ Takes a json_dict of "loop" type Returns a GroupedSection """ d_copy = d.copy() children = d_copy.pop(u"children", []) columns = d_copy.pop(u"columns", []) result = GroupedSection(**d_copy) # columns is a left over from when this was # create_table_from_dict, I will need to clean this up for column_dict in columns: # If this is a none option for a select all that apply # question then we should skip adding it to the result if column_dict[u"name"] == "none": continue column = GroupedSection(**column_dict) for child in children: question_dict = self._name_and_label_substitutions(child, column_dict) question = self.create_survey_element_from_dict(question_dict) column.add_child(question) result.add_child(column) if result.name != u"": return result return result.children #TODO: Verify that nothing breaks if this returns a list