from .. import controller from odoo import http from odoo.http import request from odoo.tools.config import config class Cart(controller.Controller): prefix = '/api/v1/' @http.route(prefix + 'login', auth='public', methods=['POST'], csrf=False) def login(self, **kw): if not self.authenticate(): return self.response(code=401, description='Unauthorized') email = kw.get('email') password = kw.get('password') if not email or not password: return self.response(code=400, description='email and password is required') try: uid = request.session.authenticate(config.get('db_name'), email, password) user = request.env['res.users'].browse(uid) return self.response({ 'is_auth': True, 'user': { 'id': user.id, 'name': user.name, 'email': user.login } }) except: return self.response({'is_auth': False})