Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MERGE] survey, website_slides: implement YAB2B #36557

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 45 additions & 0 deletions addons/survey/data/survey.user_input_line.csv
Original file line number Diff line number Diff line change
Expand Up @@ -36,3 +36,48 @@ survey_answer_3_p2_q2_3,survey_answer_3,survey_feedback_p2_q2,False,suggestion,,
survey_answer_3_p2_q2_4,survey_answer_3,survey_feedback_p2_q2,False,suggestion,,,,,survey_feedback_p2_q2_col3,survey_feedback_p2_q2_row4
survey_answer_3_p2_q2_5,survey_answer_3,survey_feedback_p2_q2,False,suggestion,,,,,survey_feedback_p2_q2_col1,survey_feedback_p2_q2_row5
survey_answer_3_p2_q3,survey_answer_3,survey_feedback_p2_q3,False,free_text,,,,The customizable desk received is not the one I ordered on your website and the quality is very poor ! Really disappointed.,,
survey_vendor_certification_answer_1_p1_q1,survey_vendor_certification_answer_1,vendor_certification_page_1_question_1,False,suggestion,,,,,vendor_certification_page_1_question_1_choice_2,
survey_vendor_certification_answer_1_p1_q2_1,survey_vendor_certification_answer_1,vendor_certification_page_1_question_2,False,suggestion,,,,,vendor_certification_page_1_question_2_choice_1,
survey_vendor_certification_answer_1_p1_q2_2,survey_vendor_certification_answer_1,vendor_certification_page_1_question_2,False,suggestion,,,,,vendor_certification_page_1_question_2_choice_3,
survey_vendor_certification_answer_1_p1_q2_3,survey_vendor_certification_answer_1,vendor_certification_page_1_question_2,False,suggestion,,,,,vendor_certification_page_1_question_2_choice_4,
survey_vendor_certification_answer_1_p1_q3_1,survey_vendor_certification_answer_1,vendor_certification_page_1_question_3,False,suggestion,,,,,vendor_certification_page_1_question_3_choice_1,
survey_vendor_certification_answer_1_p1_q3_2,survey_vendor_certification_answer_1,vendor_certification_page_1_question_3,False,suggestion,,,,,vendor_certification_page_1_question_3_choice_3,
survey_vendor_certification_answer_1_p1_q3_3,survey_vendor_certification_answer_1,vendor_certification_page_1_question_3,False,suggestion,,,,,vendor_certification_page_1_question_3_choice_4,
survey_vendor_certification_answer_1_p1_q4,survey_vendor_certification_answer_1,vendor_certification_page_1_question_4,False,suggestion,,,,,vendor_certification_page_1_question_4_choice_2,
survey_vendor_certification_answer_1_p1_q5,survey_vendor_certification_answer_1,vendor_certification_page_1_question_5,False,free_text,,,,I think it misses a product but I don't know what,,
survey_vendor_certification_answer_1_p2_q1,survey_vendor_certification_answer_1,vendor_certification_page_2_question_1,False,suggestion,,,,,vendor_certification_page_2_question_1_choice_4,
survey_vendor_certification_answer_1_p2_q2_1,survey_vendor_certification_answer_1,vendor_certification_page_2_question_2,False,suggestion,,,,,vendor_certification_page_2_question_2_choice_1,
survey_vendor_certification_answer_1_p2_q2_2,survey_vendor_certification_answer_1,vendor_certification_page_2_question_2,False,suggestion,,,,,vendor_certification_page_2_question_2_choice_2,
survey_vendor_certification_answer_1_p2_q2_3,survey_vendor_certification_answer_1,vendor_certification_page_2_question_2,False,suggestion,,,,,vendor_certification_page_2_question_2_choice_4,
survey_vendor_certification_answer_1_p2_q3,survey_vendor_certification_answer_1,vendor_certification_page_2_question_3,False,suggestion,,,,,vendor_certification_page_2_question_3_choice_3,
survey_vendor_certification_answer_2_p1_q1,survey_vendor_certification_answer_2,vendor_certification_page_1_question_1,False,suggestion,,,,,vendor_certification_page_1_question_1_choice_2,
survey_vendor_certification_answer_2_p1_q2_1,survey_vendor_certification_answer_2,vendor_certification_page_1_question_2,False,suggestion,,,,,vendor_certification_page_1_question_2_choice_1,
survey_vendor_certification_answer_2_p1_q2_2,survey_vendor_certification_answer_2,vendor_certification_page_1_question_2,False,suggestion,,,,,vendor_certification_page_1_question_2_choice_3,
survey_vendor_certification_answer_2_p1_q3_1,survey_vendor_certification_answer_2,vendor_certification_page_1_question_3,False,suggestion,,,,,vendor_certification_page_1_question_3_choice_1,
survey_vendor_certification_answer_2_p1_q3_2,survey_vendor_certification_answer_2,vendor_certification_page_1_question_3,False,suggestion,,,,,vendor_certification_page_1_question_3_choice_3,
survey_vendor_certification_answer_2_p1_q4,survey_vendor_certification_answer_2,vendor_certification_page_1_question_4,False,suggestion,,,,,vendor_certification_page_1_question_4_choice_2,
survey_vendor_certification_answer_2_p1_q5,survey_vendor_certification_answer_2,vendor_certification_page_1_question_5,True,,,,,,,
survey_vendor_certification_answer_2_p2_q1,survey_vendor_certification_answer_2,vendor_certification_page_2_question_1,False,suggestion,,,,,vendor_certification_page_2_question_1_choice_4,
survey_vendor_certification_answer_2_p2_q2_1,survey_vendor_certification_answer_2,vendor_certification_page_2_question_2,False,suggestion,,,,,vendor_certification_page_2_question_2_choice_1,
survey_vendor_certification_answer_2_p2_q2_2,survey_vendor_certification_answer_2,vendor_certification_page_2_question_2,False,suggestion,,,,,vendor_certification_page_2_question_2_choice_2,
survey_vendor_certification_answer_2_p2_q2_3,survey_vendor_certification_answer_2,vendor_certification_page_1_question_2,False,suggestion,,,,,vendor_certification_page_1_question_2_choice_4,
survey_vendor_certification_answer_2_p2_q3,survey_vendor_certification_answer_2,vendor_certification_page_2_question_3,False,suggestion,,,,,vendor_certification_page_2_question_3_choice_4,
survey_vendor_certification_answer_3_p1_q1,survey_vendor_certification_answer_3,vendor_certification_page_1_question_1,False,suggestion,,,,,vendor_certification_page_1_question_1_choice_2,
survey_vendor_certification_answer_3_p1_q2_1,survey_vendor_certification_answer_3,vendor_certification_page_1_question_2,False,suggestion,,,,,vendor_certification_page_1_question_2_choice_1,
survey_vendor_certification_answer_3_p1_q2_2,survey_vendor_certification_answer_3,vendor_certification_page_1_question_2,False,suggestion,,,,,vendor_certification_page_1_question_2_choice_4,
survey_vendor_certification_answer_3_p1_q3_1,survey_vendor_certification_answer_3,vendor_certification_page_1_question_3,False,suggestion,,,,,vendor_certification_page_1_question_3_choice_1,
survey_vendor_certification_answer_3_p1_q3_2,survey_vendor_certification_answer_3,vendor_certification_page_1_question_3,False,suggestion,,,,,vendor_certification_page_1_question_3_choice_4,
survey_vendor_certification_answer_3_p1_q4,survey_vendor_certification_answer_3,vendor_certification_page_1_question_4,False,suggestion,,,,,vendor_certification_page_1_question_4_choice_2,
survey_vendor_certification_answer_3_p1_q5,survey_vendor_certification_answer_3,vendor_certification_page_1_question_5,True,,,,,,,
survey_vendor_certification_answer_3_p2_q1,survey_vendor_certification_answer_3,vendor_certification_page_2_question_1,False,suggestion,,,,,vendor_certification_page_2_question_1_choice_4,
survey_vendor_certification_answer_3_p2_q2_2,survey_vendor_certification_answer_3,vendor_certification_page_2_question_2,False,suggestion,,,,,vendor_certification_page_2_question_2_choice_1,
survey_vendor_certification_answer_3_p1_q2_3,survey_vendor_certification_answer_3,vendor_certification_page_1_question_2,False,suggestion,,,,,vendor_certification_page_1_question_2_choice_4,
survey_vendor_certification_answer_3_p2_q3,survey_vendor_certification_answer_3,vendor_certification_page_2_question_3,False,suggestion,,,,,vendor_certification_page_2_question_3_choice_2,
survey_vendor_certification_answer_4_p1_q1,survey_vendor_certification_answer_4,vendor_certification_page_1_question_1,False,suggestion,,,,,vendor_certification_page_1_question_1_choice_1,
survey_vendor_certification_answer_4_p1_q2,survey_vendor_certification_answer_4,vendor_certification_page_1_question_2,False,suggestion,,,,,vendor_certification_page_1_question_2_choice_3,
survey_vendor_certification_answer_4_p1_q3,survey_vendor_certification_answer_4,vendor_certification_page_1_question_3,False,suggestion,,,,,vendor_certification_page_1_question_3_choice_2,
survey_vendor_certification_answer_4_p1_q4,survey_vendor_certification_answer_4,vendor_certification_page_1_question_4,False,suggestion,,,,,vendor_certification_page_1_question_4_choice_4,
survey_vendor_certification_answer_4_p1_q5,survey_vendor_certification_answer_4,vendor_certification_page_1_question_5,True,,,,,,,
survey_vendor_certification_answer_4_p2_q1,survey_vendor_certification_answer_4,vendor_certification_page_2_question_1,False,suggestion,,,,,vendor_certification_page_2_question_1_choice_2,
survey_vendor_certification_answer_4_p2_q2,survey_vendor_certification_answer_4,vendor_certification_page_2_question_2,False,suggestion,,,,,vendor_certification_page_2_question_2_choice_4,
survey_vendor_certification_answer_4_p2_q3,survey_vendor_certification_answer_4,vendor_certification_page_2_question_3,False,suggestion,,,,,vendor_certification_page_2_question_3_choice_5,
69 changes: 69 additions & 0 deletions addons/survey/data/survey_demo_certification.xml
Original file line number Diff line number Diff line change
Expand Up @@ -300,5 +300,74 @@
<field name="sequence">5</field>
<field name="value">A lot overpriced</field>
</record>

<record model="survey.user_input" id="survey_vendor_certification_answer_1">
<field name="survey_id" ref="survey.vendor_certification" />
<field name="input_type">manually</field>
<field name="partner_id" ref="base.res_partner_address_3"/>
<field name="email">douglas.fletcher51@example.com</field>
<field name="state">done</field>
<field name="question_ids" eval="[
ref('vendor_certification_page_1_question_1'),
ref('vendor_certification_page_1_question_2'),
ref('vendor_certification_page_1_question_3'),
ref('vendor_certification_page_1_question_4'),
ref('vendor_certification_page_1_question_5'),
ref('vendor_certification_page_2_question_1'),
ref('vendor_certification_page_2_question_2'),
ref('vendor_certification_page_2_question_3'),
]"/>
</record>
<record model="survey.user_input" id="survey_vendor_certification_answer_2">
<field name="survey_id" ref="survey.vendor_certification" />
<field name="input_type">manually</field>
<field name="partner_id" ref="base.res_partner_address_7"/>
<field name="email">billy.fox45@example.com</field>
<field name="state">done</field>
<field name="question_ids" eval="[
ref('vendor_certification_page_1_question_1'),
ref('vendor_certification_page_1_question_2'),
ref('vendor_certification_page_1_question_3'),
ref('vendor_certification_page_1_question_4'),
ref('vendor_certification_page_1_question_5'),
ref('vendor_certification_page_2_question_1'),
ref('vendor_certification_page_2_question_2'),
ref('vendor_certification_page_2_question_3'),
]"/>
</record>
<record model="survey.user_input" id="survey_vendor_certification_answer_3">
<field name="survey_id" ref="survey.vendor_certification" />
<field name="input_type">manually</field>
<field name="partner_id" ref="base.res_partner_address_15"/>
<field name="email">brandon.freeman55@example.com</field>
<field name="state">done</field>
<field name="question_ids" eval="[
ref('vendor_certification_page_1_question_1'),
ref('vendor_certification_page_1_question_2'),
ref('vendor_certification_page_1_question_3'),
ref('vendor_certification_page_1_question_4'),
ref('vendor_certification_page_1_question_5'),
ref('vendor_certification_page_2_question_1'),
ref('vendor_certification_page_2_question_2'),
ref('vendor_certification_page_2_question_3'),
]"/>
</record>
<record model="survey.user_input" id="survey_vendor_certification_answer_4">
<field name="survey_id" ref="survey.vendor_certification" />
<field name="input_type">manually</field>
<field name="partner_id" ref="base.res_partner_address_25"/>
<field name="email">oscar.morgan11@example.com</field>
<field name="state">done</field>
<field name="question_ids" eval="[
ref('vendor_certification_page_1_question_1'),
ref('vendor_certification_page_1_question_2'),
ref('vendor_certification_page_1_question_3'),
ref('vendor_certification_page_1_question_4'),
ref('vendor_certification_page_1_question_5'),
ref('vendor_certification_page_2_question_1'),
ref('vendor_certification_page_2_question_2'),
ref('vendor_certification_page_2_question_3'),
]"/>
</record>
</data>
</odoo>
9 changes: 2 additions & 7 deletions addons/survey/models/survey_user.py
Original file line number Diff line number Diff line change
Expand Up @@ -253,23 +253,18 @@ def _check_answer_type(self):
if not fields_type.get(uil.answer_type, True):
raise ValidationError(_('The answer must be in the right type'))

def _get_mark(self, value_suggested):
label = self.env['survey.label'].browse(int(value_suggested))
mark = label.answer_score if label.exists() else 0.0
return mark

@api.model_create_multi
def create(self, vals_list):
for vals in vals_list:
value_suggested = vals.get('value_suggested')
if value_suggested:
vals.update({'answer_score': self._get_mark(value_suggested)})
vals.update({'answer_score': self.env['survey.label'].browse(int(value_suggested)).answer_score})
return super(SurveyUserInputLine, self).create(vals_list)

def write(self, vals):
value_suggested = vals.get('value_suggested')
if value_suggested:
vals.update({'answer_score': self._get_mark(value_suggested)})
vals.update({'answer_score': self.env['survey.label'].browse(int(value_suggested)).answer_score})
return super(SurveyUserInputLine, self).write(vals)

@api.model
Expand Down
16 changes: 14 additions & 2 deletions addons/survey/views/survey_menus.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,21 @@
<odoo>
<data>
<!-- Main menu -->
<menuitem name="Surveys" id="menu_surveys" sequence="70" groups="group_survey_user" web_icon="survey,static/description/icon.png"/>
<menuitem name="Surveys"
id="menu_surveys"
sequence="70"
groups="group_survey_user"
web_icon="survey,static/description/icon.png"/>

<!-- Parent menus -->
<menuitem name="Configuration" id="menu_surveys_configuration" parent="menu_surveys" groups="base.group_no_one" sequence="100"/>
<menuitem name="Questions"
id="survey_menu_questions"
parent="menu_surveys"
groups="base.group_no_one"
sequence="80"/>
<menuitem name="Participations"
id="survey_menu_user_inputs"
parent="menu_surveys"
sequence="90"/>
</data>
</odoo>
14 changes: 11 additions & 3 deletions addons/survey/views/survey_question_views.xml
Original file line number Diff line number Diff line change
Expand Up @@ -228,7 +228,7 @@
</record>

<record model="ir.actions.act_window" id="action_survey_label_form">
<field name="name">Labels</field>
<field name="name">Suggested Values</field>
<field name="res_model">survey.label</field>
<field name="view_mode">tree,form</field>
<field name="search_view_id" ref="survey_label_search"/>
Expand All @@ -240,7 +240,15 @@
</field>
</record>

<menuitem name="Questions" id="menu_survey_question_form1" action="action_survey_question_form" parent="menu_surveys_configuration" sequence="2"/>
<menuitem name="Labels" id="menu_survey_label_form1" action="action_survey_label_form" parent="menu_surveys_configuration" sequence="3"/>
<menuitem name="Questions"
id="menu_survey_question_form1"
action="action_survey_question_form"
parent="survey_menu_questions"
sequence="2"/>
<menuitem name="Suggested Values"
id="menu_survey_label_form1"
action="action_survey_label_form"
parent="survey_menu_questions"
sequence="3"/>
</data>
</odoo>
19 changes: 14 additions & 5 deletions addons/survey/views/survey_user_views.xml
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@
</record>

<record model="ir.actions.act_window" id="action_survey_user_input">
<field name="name">Answers</field>
<field name="name">Participations</field>
<field name="res_model">survey.user_input</field>
<field name="view_mode">tree,kanban,form</field>
<field name="view_id" ref="survey_user_input_view_tree"></field>
Expand All @@ -150,7 +150,7 @@
</field>
</record>
<record model="ir.actions.act_window" id="action_survey_user_input_notest">
<field name="name">Answers</field>
<field name="name">Participations</field>
<field name="res_model">survey.user_input</field>
<field name="view_mode">tree,kanban,form</field>
<field name="view_id" ref="survey_user_input_view_tree"></field>
Expand Down Expand Up @@ -223,7 +223,7 @@
</record>

<record model="ir.actions.act_window" id="action_survey_user_input_line">
<field name="name">Survey User Input lines</field>
<field name="name">Detailled Answers</field>
<field name="res_model">survey.user_input_line</field>
<field name="view_mode">tree,form</field>
<field name="search_view_id" ref="survey_response_line_search"/>
Expand All @@ -235,7 +235,16 @@
</field>
</record>

<menuitem name="Answers" id="menu_survey_type_form1" action="action_survey_user_input" parent="menu_surveys" sequence="1"/>
<menuitem name="User Input Lines" id="menu_survey_response_line_form" action="action_survey_user_input_line" parent="menu_surveys_configuration" sequence="4"/>
<menuitem name="Participations"
id="menu_survey_type_form1"
action="action_survey_user_input"
parent="survey_menu_user_inputs"
sequence="1"/>
<menuitem name="Detailed Answers"
id="menu_survey_response_line_form"
action="action_survey_user_input_line"
parent="survey_menu_user_inputs"
sequence="4"
groups="base.group_no_one"/>
</data>
</odoo>
4 changes: 2 additions & 2 deletions addons/website_slides/models/slide_question.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@
class SlideQuestion(models.Model):
_name = "slide.question"
_rec_name = "question"
_description = "Slide Quiz Question"
_description = "Content Quiz Question"

sequence = fields.Integer("Sequence", default=10)
question = fields.Char("Question Name", required=True, translate=True)
slide_id = fields.Many2one('slide.slide', string="Slide", required=True)
slide_id = fields.Many2one('slide.slide', string="Content", required=True)
answer_ids = fields.One2many('slide.answer', 'question_id', string="Answer")
# statistics
attempts_count = fields.Integer(compute='_compute_statistics', groups='website.group_website_publisher')
Expand Down
2 changes: 1 addition & 1 deletion addons/website_slides/models/slide_slide.py
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ class Slide(models.Model):
sequence = fields.Integer('Sequence', default=0)
user_id = fields.Many2one('res.users', string='Uploaded by', default=lambda self: self.env.uid)
description = fields.Text('Description', translate=True)
channel_id = fields.Many2one('slide.channel', string="Channel", required=True)
channel_id = fields.Many2one('slide.channel', string="Course", required=True)
tag_ids = fields.Many2many('slide.tag', 'rel_slide_tag', 'slide_id', 'tag_id', string='Tags')
is_preview = fields.Boolean('Allow Preview', default=False, help="The course is accessible by anyone : the users don't need to join the channel to access the content of the course.")
completion_time = fields.Float('Duration', digits=(10, 4), help="The estimated completion time for this slide")
Expand Down
Loading