summaryrefslogtreecommitdiff
path: root/addons/mail_client_extension/models
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/mail_client_extension/models
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/mail_client_extension/models')
-rw-r--r--addons/mail_client_extension/models/__init__.py3
-rw-r--r--addons/mail_client_extension/models/crm_lead.py18
-rw-r--r--addons/mail_client_extension/models/ir_http.py26
-rw-r--r--addons/mail_client_extension/models/res_partner.py8
4 files changed, 55 insertions, 0 deletions
diff --git a/addons/mail_client_extension/models/__init__.py b/addons/mail_client_extension/models/__init__.py
new file mode 100644
index 00000000..47f7bea7
--- /dev/null
+++ b/addons/mail_client_extension/models/__init__.py
@@ -0,0 +1,3 @@
+from . import crm_lead
+from . import res_partner
+from . import ir_http \ No newline at end of file
diff --git a/addons/mail_client_extension/models/crm_lead.py b/addons/mail_client_extension/models/crm_lead.py
new file mode 100644
index 00000000..1bc5c8f0
--- /dev/null
+++ b/addons/mail_client_extension/models/crm_lead.py
@@ -0,0 +1,18 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from odoo import api, models
+
+class Lead(models.Model):
+ _inherit = 'crm.lead'
+
+ @api.model
+ def _form_view_auto_fill(self):
+ return {
+ 'type': 'ir.actions.act_window',
+ 'view_mode': 'form',
+ 'res_model': 'crm.lead',
+ 'context': {
+ 'default_partner_id': self.env.context.get('params', {}).get('partner_id'),
+ }
+ }
diff --git a/addons/mail_client_extension/models/ir_http.py b/addons/mail_client_extension/models/ir_http.py
new file mode 100644
index 00000000..e69a1232
--- /dev/null
+++ b/addons/mail_client_extension/models/ir_http.py
@@ -0,0 +1,26 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from werkzeug.exceptions import BadRequest
+
+from odoo import models
+from odoo.http import request
+
+class IrHttp(models.AbstractModel):
+ _inherit = 'ir.http'
+
+ @classmethod
+ def _auth_method_outlook(cls):
+ access_token = request.httprequest.headers.get('Authorization')
+ if not access_token:
+ raise BadRequest('Access token missing')
+
+ if access_token.startswith('Bearer '):
+ access_token = access_token[7:]
+
+ user_id = request.env["res.users.apikeys"]._check_credentials(scope='odoo.plugin.outlook', key=access_token)
+ if not user_id:
+ raise BadRequest('Access token invalid')
+
+ # take the identity of the API key user
+ request.uid = user_id \ No newline at end of file
diff --git a/addons/mail_client_extension/models/res_partner.py b/addons/mail_client_extension/models/res_partner.py
new file mode 100644
index 00000000..466e7202
--- /dev/null
+++ b/addons/mail_client_extension/models/res_partner.py
@@ -0,0 +1,8 @@
+# -*- coding: utf-8 -*-
+from odoo import fields, models
+
+
+class ResPartner(models.Model):
+ _inherit = 'res.partner'
+
+ iap_enrich_info = fields.Text('IAP Enrich Info', help='Stores additional info retrieved from IAP in JSON')