def migrate_question(self, old_question, position): question = SurveyQuestion() question.position = position question.title = _sanitize(old_question.questionValue) question.description = _sanitize(old_question.description) if old_question.help: help_text = _sanitize(old_question.help) question.description += "\n\nHelp: {}".format(help_text) if question.description else help_text question.is_required = old_question.required question.field_data = {} class_name = old_question.__class__.__name__ if class_name == 'Textbox': question.field_type = 'text' elif class_name == 'Textarea': question.field_type = 'text' question.field_data['multiline'] = True elif class_name == 'Password': question.field_type = 'text' elif class_name in ('Checkbox', 'Radio', 'Select'): question.field_data['options'] = [] question.field_type = 'single_choice' if class_name in ('Radio', 'Select') else 'multiselect' if question.field_type == 'single_choice': question.field_data['display_type'] = class_name.lower() if class_name == 'Radio': question.field_data['radio_display_type'] = 'vertical' for option in old_question.choiceItems: question.field_data['options'].append({'option': option, 'id': unicode(uuid4())}) self.print_success(" - Question: {}".format(question.title)) return question
def migrate_question(self, old_question, position): question = SurveyQuestion() question.position = position question.title = _sanitize(old_question.questionValue) question.description = _sanitize(old_question.description) if old_question.help: help_text = _sanitize(old_question.help) question.description += "\n\nHelp: {}".format( help_text) if question.description else help_text question.is_required = old_question.required question.field_data = {} class_name = old_question.__class__.__name__ if class_name == 'Textbox': question.field_type = 'text' elif class_name == 'Textarea': question.field_type = 'text' question.field_data['multiline'] = True elif class_name == 'Password': question.field_type = 'text' elif class_name in ('Checkbox', 'Radio', 'Select'): question.field_data['options'] = [] question.field_type = 'single_choice' if class_name in ( 'Radio', 'Select') else 'multiselect' if question.field_type == 'single_choice': question.field_data['display_type'] = class_name.lower() if class_name == 'Radio': question.field_data['radio_display_type'] = 'vertical' for option in old_question.choiceItems: question.field_data['options'].append({ 'option': option, 'id': unicode(uuid4()) }) self.print_success(" - Question: {}".format(question.title)) return question
def migrate_question(self, old_question, position): question = SurveyQuestion() question.position = position question.title = _sanitize(old_question.questionValue) question.description = _sanitize(old_question.description) if old_question.help: help_text = _sanitize(old_question.help) question.description += "\n\nHelp: {}".format(help_text) if question.description else help_text question.is_required = old_question.required question.field_data = {} class_name = old_question.__class__.__name__ if class_name == "Textbox": question.field_type = "text" elif class_name == "Textarea": question.field_type = "text" question.field_data["multiline"] = True elif class_name == "Password": question.field_type = "text" elif class_name in ("Checkbox", "Radio", "Select"): question.field_data["options"] = [] question.field_type = "single_choice" if class_name in ("Radio", "Select") else "multiselect" if question.field_type == "single_choice": question.field_data["display_type"] = class_name.lower() if class_name == "Radio": question.field_data["radio_display_type"] = "vertical" for option in old_question.choiceItems: question.field_data["options"].append({"option": option, "id": unicode(uuid4())}) self.print_success(" - Question: {}".format(question.title)) return question