[FIX] ir.rules based on login
authorAntonin Bourguignon <abo@openerp.com>
Wed, 30 May 2012 16:26:26 +0000 (18:26 +0200)
committerAntonin Bourguignon <abo@openerp.com>
Wed, 30 May 2012 16:26:26 +0000 (18:26 +0200)
use something like [('partner_id','child_of',user.partner_id.id)] instead of [('partner_id.email','=',user.login)]

bzr revid: abo@openerp.com-20120530162626-ggispeocdgaibah2

addons/portal_claim/security/portal_security.xml
addons/portal_event/security/portal_security.xml
addons/portal_issue/security/portal_security.xml
addons/portal_sale/security/portal_security.xml

index 635b408..feff94e 100644 (file)
@@ -5,7 +5,7 @@
         <record id="portal_stock_picking_user_rule" model="ir.rule">
             <field name="name">Personal Claims</field>
             <field ref="crm_claim.model_crm_claim" name="model_id"/>
-            <field name="domain_force">[('partner_id.email','=',user.login)]</field>
+            <field name="domain_force">[('partner_id','child_of',user.partner_id.id)]</field>
             <field name="groups" eval="[(4, ref('portal.group_portal_member'))]"/>
         </record>
 
index 1f38ce2..82044fb 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <openerp>
-    <data noupdate="1">
+    <data>
 
         <record id="portal_event_rule" model="ir.rule">
             <field name="name">Personal Events</field>
@@ -12,7 +12,7 @@
         <record id="portal_registration_rule" model="ir.rule">
             <field name="name">Personal Registrations</field>
             <field ref="event.model_event_registration" name="model_id"/>
-            <field name="domain_force">[('partner_id.email','=',user.login)]</field>
+            <field name="domain_force">[('partner_id','child_of',user.partner_id.id)]</field>
             <field name="groups" eval="[(4, ref('portal.group_portal_member'))]"/>
         </record>
 
index 299c647..8a7528c 100644 (file)
@@ -5,14 +5,14 @@
         <record id="portal_issue_rule" model="ir.rule">
             <field name="name">Personal Issues</field>
             <field ref="project_issue.model_project_issue" name="model_id"/>
-            <field name="domain_force">[('partner_id.email','=',user.login)]</field>
+            <field name="domain_force">[('partner_id','child_of',user.partner_id.id)]</field>
             <field name="groups" eval="[(4, ref('portal.group_portal_member'))]"/>
         </record>
 
         <record id="portal_task_rule" model="ir.rule">
             <field name="name">Personal Task</field>
             <field ref="project.model_project_task" name="model_id"/>
-            <field name="domain_force">[('partner_id.email','=',user.login)]</field>
+            <field name="domain_force">[('partner_id','child_of',user.partner_id.id)]</field>
             <field name="groups" eval="[(4, ref('portal.group_portal_member'))]"/>
         </record>
 
index 8dd98c8..2b06188 100644 (file)
@@ -1,41 +1,45 @@
 <?xml version="1.0" encoding="utf-8"?>
 <openerp>
-    <data noupdate="1">
+    <!-- 
+    TODO put it back to noupdate
+    <data noupdate="1"> 
+    -->
+    <data>
 
         <!-- Sale Portal Access Rules -->
 
         <record id="portal_sale_order_user_rule" model="ir.rule">
-            <field name="name">Personal Quotations/Sales</field>
+            <field name="name">Personal Quotations/Sales Orders</field>
             <field ref="sale.model_sale_order" name="model_id"/>
-            <field name="domain_force">[('partner_id.email','=',user.login)]</field>
+            <field name="domain_force">[('partner_id','child_of',user.partner_id.id)]</field>
             <field name="groups" eval="[(4, ref('portal.group_portal_member'))]"/>
         </record>
 
         <record id="portal_stock_picking_user_rule" model="ir.rule">
             <field name="name">Personal Delivery Orders</field>
             <field ref="stock.model_stock_picking" name="model_id"/>
-            <field name="domain_force">[('partner_id.email','=',user.login)]</field>
+            <field name="domain_force">[('partner_id','child_of',[user.partner_id.id])]</field>
             <field name="groups" eval="[(4, ref('portal.group_portal_member'))]"/>
         </record>
 
         <record id="portal_account_invoice_user_rule" model="ir.rule">
             <field name="name">Personal Account Invoices</field>
             <field ref="account.model_account_invoice" name="model_id"/>
-            <field name="domain_force">[('partner_id.email','=',user.login)]</field>
+            <field name="domain_force">[('partner_id','child_of',user.partner_id.id)]</field>
             <field name="groups" eval="[(4, ref('portal.group_portal_member'))]"/>
         </record>
 
         <record id="portal_personal_payment" model="ir.rule">
             <field name="name">Personal Payments</field>
             <field ref="account_voucher.model_account_voucher" name="model_id"/>
-            <field name="domain_force">[('partner_id.email','=',user.login)]</field>
+            <field name="domain_force">[('partner_id','child_of',user.partner_id.id)]</field>
             <field name="groups" eval="[(4, ref('portal.group_portal_member'))]"/>
         </record>
 
         <record id="portal_personal_contact" model="ir.rule">
             <field name="name">Personal Contacts</field>
             <field ref="base.model_res_partner" name="model_id"/>
-            <field name="domain_force">[('email','=',user.login)]</field>
+            <field name="domain_force">[('id','child_of',user.partner_id.id)]</field>
             <field name="groups" eval="[(4, ref('portal.group_portal_member'))]"/>
         </record>