diff --git a/models/survey_survey.py b/models/survey_survey.py index 30e24ff3b07f325e7c1f5264410b091e9360580d..b64b214a1f84ab9c0d1b126e686495f7b34ad998 100644 --- a/models/survey_survey.py +++ b/models/survey_survey.py @@ -1,10 +1,34 @@ # © 2020 Le Filament (<https://www.le-filament.com>) # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -from odoo import fields, models +from odoo import fields, models, api class Survey(models.Model): _inherit = "survey.survey" background_image = fields.Binary('Image de fond') + + +class SurveyUserInput(models.Model): + _inherit = "survey.user_input" + + @api.multi + def action_reopen_survey(self): + """ Passer le sondage à state=skip """ + if self.state == 'done': + self.update({'state': 'skip'}) + + @api.multi + def action_access_survey(self): + """ Permet d'accéder au sondage """ + if not self.state == 'done': + if self.state == 'skip': + url_tag = "fill" + else: + url_tag = 'start' + return { + 'type': 'ir.actions.act_url', + 'target': 'new', + 'url': '/survey/%s/%s/%s' % (url_tag, self.survey_id.id, self.token) + } diff --git a/views/survey_views.xml b/views/survey_views.xml index 64f8f79b2aeb5a983b65969dcd3bb5238b2a61fa..706ecda73cf2ffb96426c679722896ae102135b9 100644 --- a/views/survey_views.xml +++ b/views/survey_views.xml @@ -17,4 +17,26 @@ </field> </record> + <record model="ir.ui.view" id="ethikis_survey_user_input_form"> + <field name="name">ethikis_survey_user_input_form_view</field> + <field name="model">survey.user_input</field> + <field name="inherit_id" ref="survey.survey_user_input_form"/> + <field name="arch" type="xml"> + + <xpath expr="//header" position="inside"> + <button name="action_reopen_survey" string="Réouvrir le sondage" type="object" attrs="{'invisible': [('state','!=','done')]}"/> + <button name="action_access_survey" string="Accéder au sondage" type="object" attrs="{'invisible': [('state','=','done')]}"/> + </xpath> + + <xpath expr="//field[@name='partner_id']" position="attributes"> + <attribute name="readonly">False</attribute> + </xpath> + + <xpath expr="//field[@name='email']" position="attributes"> + <attribute name="readonly">False</attribute> + </xpath> + + </field> + </record> + </odoo> \ No newline at end of file