From 34c661111b74145c334ce0cb456a18adccc4a4de Mon Sep 17 00:00:00 2001 From: Raphael Collet Date: Mon, 28 Nov 2016 12:28:39 +0100 Subject: [PATCH] [IMP] base, *: tighten `ir.model.access` access rights In `website_crm_partner_assign`, remove duplicate ACLs and reorganize files. --- addons/point_of_sale/models/pos_session.py | 2 +- .../__manifest__.py | 4 +-- .../data/portal_data.xml | 30 ------------------- .../security/ir.model.access.csv | 4 +-- .../security/ir_rule.xml | 10 +++++++ odoo/addons/base/security/ir.model.access.csv | 1 - 6 files changed, 14 insertions(+), 37 deletions(-) delete mode 100644 addons/website_crm_partner_assign/data/portal_data.xml create mode 100644 addons/website_crm_partner_assign/security/ir_rule.xml diff --git a/addons/point_of_sale/models/pos_session.py b/addons/point_of_sale/models/pos_session.py index ee00e112ba6..a21712347b8 100644 --- a/addons/point_of_sale/models/pos_session.py +++ b/addons/point_of_sale/models/pos_session.py @@ -249,7 +249,7 @@ class PosSession(models.Model): for st in session.statement_ids: if abs(st.difference) > st.journal_id.amount_authorized_diff: # The pos manager can close statements with maximums. - if not self.env['ir.model.access'].check_groups("point_of_sale.group_pos_manager"): + if not self.user_has_groups("point_of_sale.group_pos_manager"): raise UserError(_("Your ending balance is too different from the theoretical cash closing (%.2f), the maximum allowed is: %.2f. You can contact your manager to force it.") % (st.difference, st.journal_id.amount_authorized_diff)) if (st.journal_id.type not in ['bank', 'cash']): raise UserError(_("The type of the journal for your payment method should be bank or cash ")) diff --git a/addons/website_crm_partner_assign/__manifest__.py b/addons/website_crm_partner_assign/__manifest__.py index 3a682a2d48e..09b802183bc 100644 --- a/addons/website_crm_partner_assign/__manifest__.py +++ b/addons/website_crm_partner_assign/__manifest__.py @@ -14,9 +14,9 @@ Publish and Assign Partner 'depends': ['base_geolocalize', 'crm', 'account', 'portal', 'website_partner', 'website_google_map', 'website_portal'], 'data': [ - 'data/portal_data.xml', - 'data/crm_partner_assign_data.xml', 'security/ir.model.access.csv', + 'security/ir_rule.xml', + 'data/crm_partner_assign_data.xml', 'wizard/crm_forward_to_partner_view.xml', 'views/res_partner_views.xml', 'views/crm_lead_views.xml', diff --git a/addons/website_crm_partner_assign/data/portal_data.xml b/addons/website_crm_partner_assign/data/portal_data.xml deleted file mode 100644 index 63fccf0f735..00000000000 --- a/addons/website_crm_partner_assign/data/portal_data.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - - - odoo.portal.res.partner.grade - - - - - - - - - - - odoo.portal.crm.lead - - - [('partner_assigned_id','child_of',user.commercial_partner_id.id)] - - - odoo.portal.crm.lead - - - - - - - - diff --git a/addons/website_crm_partner_assign/security/ir.model.access.csv b/addons/website_crm_partner_assign/security/ir.model.access.csv index fd1b860ebc5..57a8da57da3 100644 --- a/addons/website_crm_partner_assign/security/ir.model.access.csv +++ b/addons/website_crm_partner_assign/security/ir.model.access.csv @@ -11,6 +11,4 @@ access_res_partner_activation_user,res.partner.activation.user,model_res_partner access_partner_activation_manager,res.partner.activation.manager,model_res_partner_activation,base.group_partner_manager,1,1,1,1 partner_access_crm_lead,crm.lead,crm.model_crm_lead,base.group_portal,1,1,0,0 access_res_partner_grade_invoicing_payment,res.partner.grade,model_res_partner_grade,account.group_account_invoice,1,0,0,0 -access_res_partner_grade_portal,res.partner.grade,model_res_partner_grade,base.group_portal,1,0,0,0 -crm_lead_portal_access,crm.lead.portal,crm.model_crm_lead,base.group_portal,1,1,0,0 -mail_message_subtype_portal_access,mail.message.subtype.portal,mail.model_mail_message_subtype,base.group_portal,1,1,1,0 \ No newline at end of file +mail_message_subtype_portal_access,mail.message.subtype.portal,mail.model_mail_message_subtype,base.group_portal,1,1,1,0 diff --git a/addons/website_crm_partner_assign/security/ir_rule.xml b/addons/website_crm_partner_assign/security/ir_rule.xml new file mode 100644 index 00000000000..2084cc5a8f4 --- /dev/null +++ b/addons/website_crm_partner_assign/security/ir_rule.xml @@ -0,0 +1,10 @@ + + + + + odoo.portal.crm.lead + + + [('partner_assigned_id','child_of',user.commercial_partner_id.id)] + + diff --git a/odoo/addons/base/security/ir.model.access.csv b/odoo/addons/base/security/ir.model.access.csv index 455a965c027..3bfbd759444 100644 --- a/odoo/addons/base/security/ir.model.access.csv +++ b/odoo/addons/base/security/ir.model.access.csv @@ -10,7 +10,6 @@ "access_ir_model_access_group_erp_manager","ir_model_access_group_erp_manager","model_ir_model_access","group_erp_manager",1,1,1,1 "access_ir_model_data_group_erp_manager","ir_model_data group_erp_manager","model_ir_model_data","group_erp_manager",1,1,1,1 "access_ir_model_fields_group_erp_manager","ir_model_fields group_erp_manager","model_ir_model_fields","group_erp_manager",1,1,1,1 -"access_ir_model_access_all","ir_model_access_all","model_ir_model_access",,1,0,0,0 "access_ir_model_data_all","ir_model_data all","model_ir_model_data",,1,0,0,0 "access_ir_model_data_user","ir_model_data user","model_ir_model_data",base.group_user,1,0,1,0 "access_ir_module_category_group_user","ir_module_category group_user","model_ir_module_category","group_erp_manager",1,0,0,0