[REF] Add public_user into module server/addons/base (removed from addons/website...
authorjke-openerp <jke@openerp.com>
Tue, 28 Jan 2014 14:55:10 +0000 (15:55 +0100)
committerjke-openerp <jke@openerp.com>
Tue, 28 Jan 2014 14:55:10 +0000 (15:55 +0100)
[REF]Add _auth_method_public  into server/addons/base/ir/ir_http (removed from website/ir_http)

Related commit for Addons : Committed revision 10689.

bzr revid: jke@openerp.com-20140128145510-3byhdmwftloeod6s

openerp/addons/base/base_data.xml
openerp/addons/base/ir/ir_http.py

index df6aaee..ee0d3fa 100644 (file)
@@ -129,6 +129,19 @@ Administrator</field>
             <field name="path">/dev/null</field>
             <field name="mode">all</field>
         </record>
+        
+        <record id="public_user" model="res.users">
+            <field name="name">Anonymous</field>
+            <field name="login">public</field>
+            <field name="password"></field>
+            <!-- Avoid auto-including this demo user in any default group -->
+            <field name="groups_id" eval="[(5,)]"/>
+            <field name="image" type="base64" file="base/static/img/public_user-image.png"/>
+            <field name="active" eval="False"/>
+        </record>
+        <record id="base.group_public" model="res.groups">
+            <field name="users" eval="[(4, ref('base.public_user'))]"/>
+        </record>
 
     </data>
 </openerp>
index 704bf8b..5a96bbb 100644 (file)
@@ -70,6 +70,12 @@ class ir_http(osv.AbstractModel):
         request.disable_db = True
         request.uid = None
 
+    def _auth_method_public(self):
+        if not request.session.uid:
+            dummy, request.uid = self.pool['ir.model.data'].get_object_reference(request.cr, openerp.SUPERUSER_ID, 'base', 'public_user')
+        else:
+            request.uid = request.session.uid
+
     def _authenticate(self, auth_method='user'):
         if request.session.uid:
             try: