summaryrefslogtreecommitdiff
path: root/indoteknik_api/controllers/api_v1/user.py
diff options
context:
space:
mode:
authorIT Fixcomart <it@fixcomart.co.id>2023-01-09 10:12:20 +0000
committerIT Fixcomart <it@fixcomart.co.id>2023-01-09 10:12:20 +0000
commit9eeee43ec3cb57d02a2dcddf03768a2a8f3ea3d8 (patch)
treee57fd41c83766b49eb49f871f809ed79add5b5bc /indoteknik_api/controllers/api_v1/user.py
parent8a70abf6f05e9ffc6e74ec2e80f61db72f6f0401 (diff)
parentb1329f940ae66b60185fa097012393b0d51b9e5f (diff)
Merged in staging (pull request #16)
Staging
Diffstat (limited to 'indoteknik_api/controllers/api_v1/user.py')
-rw-r--r--indoteknik_api/controllers/api_v1/user.py19
1 files changed, 2 insertions, 17 deletions
diff --git a/indoteknik_api/controllers/api_v1/user.py b/indoteknik_api/controllers/api_v1/user.py
index 3080be7d..bf1814da 100644
--- a/indoteknik_api/controllers/api_v1/user.py
+++ b/indoteknik_api/controllers/api_v1/user.py
@@ -3,31 +3,16 @@ from odoo import http
from odoo.http import request
from odoo.tools.config import config
import random, string
-import jwt
class User(controller.Controller):
prefix = '/api/v1/'
- jwt_secret_key = "NTNv7j0TuYARvmNMmWXo6fKvM4o6nvaUi9ryX38ZHL1bkrnD1ObOQ8JAUmHCBq7Iy7otZcyAagBLHVKvvYaIpmMuxmARQ97jUVG16Jkpkp1wXOPsrF9zwew6TpczyHkHgX5EuLg2MeBuiTqJACs1J0apruOOJCggOtkjB4c"
def get_user_by_email(self, email):
return request.env['res.users'].search([
('login', '=', email),
('active', 'in', [True, False])
])
-
- def create_user_token(self, user):
- return jwt.encode({'id': user.id}, self.jwt_secret_key)
-
- def verify_user_token(self, user_id):
- try:
- token = request.httprequest.environ['HTTP_TOKEN']
- user_token = jwt.decode(token, self.jwt_secret_key, algorithms=['HS256'])
- if int(user_id) != user_token['id']:
- return False
- return True
- except:
- return False
def response_with_token(self, user):
data = request.env['res.users'].api_single_response(user)
@@ -149,13 +134,13 @@ class User(controller.Controller):
user = request.env['res.users'].search([('id', '=', id)], limit=1)
if not user:
- return self.response(code=400, description='User not found')
+ return self.response(code=404, description='User not found')
is_verify = self.verify_user_token(id)
if not is_verify:
return self.response(code=401, description='Unauthorized')
- partners = [user] + [x for x in user.child_ids]
+ partners = [user.partner_id] + [x for x in user.child_ids]
address = [request.env['res.users'].api_address_response(x) for x in partners]
return self.response(address)