[IMP] Portal: portal user has a read access on res_partner, but limited to its own...
authorThibault Delavallée <tde@openerp.com>
Wed, 12 Dec 2012 13:36:12 +0000 (14:36 +0100)
committerThibault Delavallée <tde@openerp.com>
Wed, 12 Dec 2012 13:36:12 +0000 (14:36 +0100)
bzr revid: tde@openerp.com-20121212133612-vvxs2a73tcak3k4s

addons/mail/mail_message.py
addons/portal/security/ir.model.access.csv
addons/portal/security/portal_security.xml

index da679e2..6bed14f 100644 (file)
@@ -305,8 +305,7 @@ class mail_message(osv.Model):
                 attachment_ids |= set([attachment.id for attachment in message.attachment_ids])
 
         # Filter author_ids uid can see
-        # partner_ids = self.pool.get('res.partner').search(cr, uid, [('id', 'in', partner_ids)], context=context)
-        partners = res_partner_obj.name_get(cr, uid, list(partner_ids), context=context)
+        partners = res_partner_obj.name_get(cr, SUPERUSER_ID, list(partner_ids), context=context)
         partner_tree = dict((partner[0], partner) for partner in partners)
 
         # 2. Attachments
index 88d50c7..31bd733 100644 (file)
@@ -3,6 +3,7 @@ access_mail_message_portal,mail.message.portal,mail.model_mail_message,group_por
 access_mail_mail_portal,mail.mail.portal,mail.model_mail_mail,group_portal,1,1,1,0
 access_mail_notification_portal,mail.notification.portal,mail.model_mail_notification,group_portal,1,1,1,0
 access_mail_followers_portal,mail.followers.portal,mail.model_mail_followers,group_portal,1,1,0,0
+access_res_partner,res.partner,base.model_res_partner,portal.group_portal,1,0,0,0
 access_acquirer,portal.payment.acquirer,portal.model_portal_payment_acquirer,,1,0,0,0
 access_acquirer_all,portal.payment.acquirer,portal.model_portal_payment_acquirer,base.group_system,1,1,1,1
 access_ir_attachment_group_portal,ir.attachment group_portal,base.model_ir_attachment,portal.group_portal,1,0,1,0
\ No newline at end of file
index ee0af78..2d9a89d 100644 (file)
             <field name="users" eval="[(4,ref('auth_signup.default_template_user'))]"/>
         </record>
 
+        <record id="portal_read_own_res_partner" model="ir.rule">
+            <field name="name">res_partner: read access on my partner</field>
+            <field name="model_id" ref="base.model_res_partner"/>
+            <field name="domain_force">[('user_ids', 'in', user.id)]</field>
+            <field name="groups" eval="[(4, ref('group_portal'))]"/>
+            <field name="perm_create" eval="False"/>
+            <field name="perm_unlink" eval="False"/>
+            <field name="perm_write" eval="False"/>
+        </record>
+
     </data>
 </openerp>