[ADD] Added the oauth providers table and views.
bzr revid: vta@openerp.com-20120814142904-7pjt91gl9ld2vxmf
This commit is contained in:
parent
0dd635d603
commit
397c67348e
|
@ -1,2 +1,3 @@
|
||||||
import controllers
|
import controllers
|
||||||
import res_users
|
import res_users
|
||||||
|
import oauth_providers
|
||||||
|
|
|
@ -31,6 +31,9 @@
|
||||||
'depends': ['base', 'web'],
|
'depends': ['base', 'web'],
|
||||||
'data': [
|
'data': [
|
||||||
],
|
],
|
||||||
|
'update_xml': [
|
||||||
|
'oauth_providers.xml'
|
||||||
|
],
|
||||||
'js': [
|
'js': [
|
||||||
'static/src/js/auth_oauth.js',
|
'static/src/js/auth_oauth.js',
|
||||||
],
|
],
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
from openerp.osv import osv, fields
|
||||||
|
|
||||||
|
class oauth_providers(osv.osv):
|
||||||
|
|
||||||
|
"""Class defining the configuration values of an OAuth2 provider"""
|
||||||
|
|
||||||
|
_name = 'oauth.providers'
|
||||||
|
_description = 'OAuth2 provider'
|
||||||
|
_order = 'name'
|
||||||
|
|
||||||
|
_columns = {
|
||||||
|
'name' : fields.char('Provider name', required=True), # Name of the OAuth2 entity, Google, LinkedIn, etc
|
||||||
|
'client_id' : fields.char('Client ID', required=True), # Our identifier
|
||||||
|
'auth_endpoint' : fields.char('Authentication URL', required=True), # OAuth provider URL to authenticate users
|
||||||
|
'scope' : fields.char('Accessed user data'), # OAUth user data desired to access
|
||||||
|
'validation_endpoint' : fields.char('Validation URL'), # OAuth provider URL to validate tokens
|
||||||
|
'icon_url' : fields.char('Icon'), # URL of the icon's provider
|
||||||
|
'active' : fields.boolean('Active'),
|
||||||
|
'sequence' : fields.integer(),
|
||||||
|
}
|
||||||
|
|
||||||
|
_sql_constraints = [
|
||||||
|
('name', 'unique(name)', 'The name of the OAuth provider must be unique')
|
||||||
|
]
|
||||||
|
|
||||||
|
oauth_providers()
|
|
@ -0,0 +1,49 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<openerp>
|
||||||
|
<data>
|
||||||
|
<menuitem id="menu_oauth_provider" parent="base.menu_administration" name="OAuth2 Settings" action="" sequence="100" />
|
||||||
|
<record model="ir.ui.view" id="view_oauth_provider_form">
|
||||||
|
<field name="name">oauth.provider.form</field>
|
||||||
|
<field name="model">oauth.providers</field>
|
||||||
|
<field name="type">form</field>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<form string="arch" version="7.0">
|
||||||
|
<header>
|
||||||
|
|
||||||
|
</header>
|
||||||
|
<sheet>
|
||||||
|
<group name="info1" string="" col="">
|
||||||
|
<field name="name" />
|
||||||
|
<field name="client_id" />
|
||||||
|
<field name="active" />
|
||||||
|
</group>
|
||||||
|
<group name="info2" string="" col="">
|
||||||
|
<field name="auth_endpoint" />
|
||||||
|
<field name="scope" />
|
||||||
|
<field name="validation_endpoint" />
|
||||||
|
</group>
|
||||||
|
</sheet>
|
||||||
|
</form>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
<record model="ir.ui.view" id="view_oauth_provider_list">
|
||||||
|
<field name="name">oauth.provider.list</field>
|
||||||
|
<field name="model">oauth.providers</field>
|
||||||
|
<field name="type">tree</field>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<tree string="arch" version="7.0">
|
||||||
|
<field name="name" />
|
||||||
|
<field name="client_id" />
|
||||||
|
<field name="active" />
|
||||||
|
</tree>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
<record model="ir.actions.act_window" id="action_oauth_provider">
|
||||||
|
<field name="name">Providers</field>
|
||||||
|
<field name="res_model">oauth.providers</field>
|
||||||
|
<field name="view_type">form</field>
|
||||||
|
<field name="view_mode">tree,form</field>
|
||||||
|
</record>
|
||||||
|
<menuitem id="menu_oauth_providers" parent="menu_oauth_provider" name="OAuth2 Providers" action="action_oauth_provider" sequence="0" />
|
||||||
|
</data>
|
||||||
|
</openerp>
|
|
@ -55,7 +55,6 @@ class res_users(osv.Model):
|
||||||
r = (cr.dbname, login, oauth_uid)
|
r = (cr.dbname, login, oauth_uid)
|
||||||
|
|
||||||
res = self.search(cr, uid, [("oauth_uid", "=", oauth_uid)])
|
res = self.search(cr, uid, [("oauth_uid", "=", oauth_uid)])
|
||||||
_logger.exception(res)
|
|
||||||
if res:
|
if res:
|
||||||
self.write(cr, uid, res[0], {'oauth_access_token':access_token})
|
self.write(cr, uid, res[0], {'oauth_access_token':access_token})
|
||||||
else:
|
else:
|
||||||
|
@ -63,7 +62,6 @@ class res_users(osv.Model):
|
||||||
new_user = {
|
new_user = {
|
||||||
'name': name,
|
'name': name,
|
||||||
'login': login,
|
'login': login,
|
||||||
# 'password': oauth_uid,
|
|
||||||
'user_email': login,
|
'user_email': login,
|
||||||
'oauth_provider': 'Google',
|
'oauth_provider': 'Google',
|
||||||
'oauth_uid': oauth_uid,
|
'oauth_uid': oauth_uid,
|
||||||
|
|
Loading…
Reference in New Issue