diff --git a/__manifest__.py b/__manifest__.py index 16c99be9dcc150993eea7c6f401e52bd2682bfb8..3f7d8bf54c6d53e29dd00351acc36cd67a75b865 100644 --- a/__manifest__.py +++ b/__manifest__.py @@ -12,6 +12,7 @@ "website", "payment_payzen" ], "data": [ - "views/payzen_views.xml" + # 'security/ir.model.access.csv', + "views/payzen_views.xml", ] } diff --git a/models/__init__.py b/models/__init__.py index 05e9e999e0d50c80c56dd5c7388ca58d647c8144..e67015a63e3fb73b4c4946523cf20ef5405479f5 100644 --- a/models/__init__.py +++ b/models/__init__.py @@ -1,4 +1,5 @@ # © 2019 Le Filament (<http://www.le-filament.com>) # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -from . import vracoop_res_config \ No newline at end of file +from . import vracoop_res_config +from . import website \ No newline at end of file diff --git a/models/vracoop_res_config.py b/models/vracoop_res_config.py index df6e1368592a812c4c24dbfe9e3b725ba966a238..1a8c3aa85c345d91d1c31f10b189950cd1cfd814 100644 --- a/models/vracoop_res_config.py +++ b/models/vracoop_res_config.py @@ -9,23 +9,19 @@ class ResConfigSettings(models.TransientModel): _inherit = 'res.config.settings' payzen_site_id = fields.Char( - string=_('Identifiant boutique'), - help=_('The identifier provided by PayZen.'), - default=constants.PAYZEN_PARAMS.get('SITE_ID'), - required=True) + string='Identifiant boutique', + related='website_id.payzen_site_id', + readonly=False) payzen_key_test = fields.Char( - string=_('Clé en mode test'), - help=_('Clé fournie par PayZen pour le mode test (disponible dans le Back Office PayZen).'), - default=constants.PAYZEN_PARAMS.get('KEY_TEST'), - readonly=constants.PAYZEN_PLUGIN_FEATURES.get('qualif'), - required=True) + string='Clé en mode test', + related='website_id.payzen_key_test', + readonly=False) payzen_key_prod = fields.Char( - string=_('Clé en mode production'), - help=_('Clé fournie par PayZen (disponible dans le Back Office PayZen après activation du mode de production).'), - default=constants.PAYZEN_PARAMS.get('KEY_PROD'), - required=True) + string='Clé en mode production', + related='website_id.payzen_key_prod', + readonly=False) @api.multi def execute_payzen(self): self.ensure_one() - return self.execute() + return self.execute \ No newline at end of file diff --git a/models/website.py b/models/website.py new file mode 100644 index 0000000000000000000000000000000000000000..09423a035da6ac2bb9fd012fdc2fa7f2e4bd554e --- /dev/null +++ b/models/website.py @@ -0,0 +1,23 @@ +# © 2019 Le Filament (<http://www.le-filament.com>) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from odoo import api, fields, models, _ +from ..helpers import constants + + +class VracWebsite(models.Model): + _inherit = "website" + + payzen_site_id = fields.Char( + string=_('Identifiant boutique'), + help=_('The identifier provided by PayZen.'), + default=constants.PAYZEN_PARAMS.get('SITE_ID')) + payzen_key_test = fields.Char( + string=_('Clé en mode test'), + help=_('Clé fournie par PayZen pour le mode test (disponible dans le Back Office PayZen).'), + default=constants.PAYZEN_PARAMS.get('KEY_TEST'), + readonly=constants.PAYZEN_PLUGIN_FEATURES.get('qualif')) + payzen_key_prod = fields.Char( + string=_('Clé en mode production'), + help=_('Clé fournie par PayZen (disponible dans le Back Office PayZen après activation du mode de production).'), + default=constants.PAYZEN_PARAMS.get('KEY_PROD')) diff --git a/views/payzen_views.xml b/views/payzen_views.xml index 4f2d800276d1efa5d2445b7191a6b8768df15187..ee288c7ec7506784de2562104ff9fb030e658827 100644 --- a/views/payzen_views.xml +++ b/views/payzen_views.xml @@ -2,24 +2,38 @@ <odoo> <data> - <record id="vracoop_res_config_settings" model="ir.ui.view"> - <field name="name">vracoop.res.config.settings</field> + <record id="vracoop_payzen_config_form" model="ir.ui.view"> + <field name="name">vracoop.payzen.config.form</field> <field name="model">res.config.settings</field> <field name="arch" type="xml"> - <form string="Configuration des Temps"> - <sheet> + <form string="Settings" class="oe_form_configuration o_base_settings" js_class="base_settings"> + <div class="o_control_panel"> <header> <button string="Save" type="object" name="execute_payzen" class="oe_highlight" /> <button string="Discard" type="object" name="cancel" special="cancel" /> </header> - <group> - <group string="Accès à la plateforme"> - <field name="payzen_site_id" autocomplete="off" /> - <field name="payzen_key_test" autocomplete="off" /> - <field name="payzen_key_prod" autocomplete="off" /> - </group> - </group> - </sheet> + </div> + <div class="o_setting_container"> + <div class="settings_tab"/> + <div class="settings"> + <div class="app_settings_block" data-string="Payzen" string="Payzen" data-key="website" groups="website.group_website_designer"> + <div class="row mt16 o_settings_container" id="website_selection_settings2" groups="website.group_multi_website"> + <div class="col-xs-12 col-md-6 o_setting_box" id="payzen"> + <div class="o_setting_right_pane"> + <label for="website_id" invisible="1" /> + <field name="website_id" widget="selection" invisible="1"/> + <label for="payzen_site_id" /> + <field name="payzen_site_id" autocomplete="off" /> + <label for="payzen_key_test" /> + <field name="payzen_key_test" autocomplete="off" /> + <label for="payzen_key_prod" /> + <field name="payzen_key_prod" autocomplete="off" /> + </div> + </div> + </div> + </div> + </div> + </div> </form> </field> </record> @@ -30,15 +44,17 @@ <field name="res_model">res.config.settings</field> <field name="view_mode">form</field> <field name="target">inline</field> + <field name="view_id" ref="vracoop_payzen_config_form"/> + <field name="context">{'module' : 'website'}</field> </record> - <menuitem id="menu_conf_delivery" + <menuitem id="menu_conf_payment" name="Paiement" sequence="60" parent="website.menu_website_configuration" - groups="website.group_website_designer"/> + groups="website.group_website_publisher"/> - <menuitem id="menu_payzen" parent="menu_conf_delivery" name="Payzen" action="action_payzen_view" sequence="10"/> + <menuitem id="menu_payzen" parent="menu_conf_payment" name="Payzen" action="action_payzen_view" sequence="10"/> </data> </odoo> \ No newline at end of file