diff --git a/addons/survey/models/survey_question.py b/addons/survey/models/survey_question.py index a23576b3db9..6e13b07c4cf 100644 --- a/addons/survey/models/survey_question.py +++ b/addons/survey/models/survey_question.py @@ -386,6 +386,16 @@ class SurveyQuestion(models.Model): # CRUD # ------------------------------------------------------------ + @api.returns('self', lambda value: value.id) + def copy(self, default=None): + self.ensure_one() + clone = super().copy(default) + if self.is_conditional: + clone.is_conditional = True + clone.triggering_question_id = self.triggering_question_id.id + clone.triggering_answer_id = self.triggering_answer_id.id + return clone + def unlink(self): """ Makes sure no question is left depending on the question we're deleting.""" depending_questions = self.env['survey.question'].search([('triggering_question_id', 'in', self.ids)]) diff --git a/addons/survey/static/src/question_page/question_page_list_renderer.js b/addons/survey/static/src/question_page/question_page_list_renderer.js index d460946cf5f..72932d54d85 100644 --- a/addons/survey/static/src/question_page/question_page_list_renderer.js +++ b/addons/survey/static/src/question_page/question_page_list_renderer.js @@ -50,6 +50,14 @@ export class QuestionPageListRenderer extends ListRenderer { return classNames.join(" "); } + getCellClass(column, record) { + const classNames = super.getCellClass(column, record); + if (column.type === "button_group") { + return `${classNames} text-end`; + } + return classNames; + } + getSectionColumns(columns) { const sectionColumns = []; diff --git a/addons/survey/static/src/views/widgets/survey_question_trigger/survey_question_trigger.js b/addons/survey/static/src/views/widgets/survey_question_trigger/survey_question_trigger.js index 7a2202a3bdd..1ff39fa569a 100644 --- a/addons/survey/static/src/views/widgets/survey_question_trigger/survey_question_trigger.js +++ b/addons/survey/static/src/views/widgets/survey_question_trigger/survey_question_trigger.js @@ -73,12 +73,7 @@ export class SurveyQuestionTriggerWidget extends Component { return ""; } const triggerId = record.data.triggering_question_id[0]; - let triggerRecord; - if (this.props.isSurveyForm) { // embedded list - triggerRecord = record.model.root.data.question_and_page_ids.records.find(rec => rec.data.id === triggerId); - } else { - triggerRecord = record.model.root.records.find(rec => rec.resId === triggerId); - } + let triggerRecord = record.model.root.data.question_and_page_ids.records.find(rec => rec.data.id === triggerId); if (!triggerRecord) { return "MISSING_TRIGGER_ERROR"; @@ -97,17 +92,6 @@ export class SurveyQuestionTriggerWidget extends Component { SurveyQuestionTriggerWidget.template = "survey.surveyQuestionTrigger"; SurveyQuestionTriggerWidget.props = { ...standardWidgetProps, - isSurveyForm: { type: Boolean, optional: true }, -}; - -SurveyQuestionTriggerWidget.defaultProps = { - isSurveyForm: false -}; - -SurveyQuestionTriggerWidget.extractProps = ({ attrs }) => { - return { - isSurveyForm: attrs.options.isSurveyForm - }; }; SurveyQuestionTriggerWidget.displayName = 'Trigger'; diff --git a/addons/survey/static/tests/components/survey_question_trigger_widget_tests.js b/addons/survey/static/tests/components/survey_question_trigger_widget_tests.js index 0aab60ea4eb..8ef2f584378 100644 --- a/addons/survey/static/tests/components/survey_question_trigger_widget_tests.js +++ b/addons/survey/static/tests/components/survey_question_trigger_widget_tests.js @@ -77,7 +77,6 @@ QUnit.module("SurveyQuestionTriggerWidget", (hooks) => { - `, @@ -101,7 +100,7 @@ QUnit.module("SurveyQuestionTriggerWidget", (hooks) => { - + diff --git a/addons/survey/views/survey_question_views.xml b/addons/survey/views/survey_question_views.xml index 51be3b49b6b..82df7bf7e4a 100644 --- a/addons/survey/views/survey_question_views.xml +++ b/addons/survey/views/survey_question_views.xml @@ -267,13 +267,10 @@ survey.question - - - - + diff --git a/addons/survey/views/survey_survey_views.xml b/addons/survey/views/survey_survey_views.xml index 8e4aa4dce44..08c233d6710 100644 --- a/addons/survey/views/survey_survey_views.xml +++ b/addons/survey/views/survey_survey_views.xml @@ -71,6 +71,7 @@ + @@ -83,7 +84,8 @@ - + +