def logged_in(self): cookie = cherrypy.request.cookie service = UserService() if 'user' in cookie and service.gett_user(cookie['user'].value): user = service.get_user_by_id(cookie['user'].value) user['isLoggedIn'] = True return user else: return {'isLoggedIn': False}
def logged_in(self): cookie = cherrypy.request.cookie service = UserService() if 'user' in cookie and service.gett_user(cookie['user'].value): user = service.get_user_by_id(cookie['user'].value) user['isLoggedIn'] = True return user else: return { 'isLoggedIn': False }
def add_user_to_account(account_guid, **kwargs): """ This api adds users to account :param account_guid: :return: """ try: new_user = UserService.get_user_by_email(email=request.json['email'])[0] current_user = kwargs['current_user'] try: permission = AccountsService.get_user_permission_on_account(user=current_user, account_guid=account_guid) if permission == AccountPermissions.MEMBER: HttpResponse.forbidden('User doesn\'t have permission to perform this operation') except Exception as e: if e.message == '[Services] user doesn\'t have permission on account': return HttpResponse.forbidden(e.message) if not new_user: return HttpResponse.bad_request('This user is unknown to archaea') else: AccountsService.add_user_to_account( account_guid=account_guid, user=new_user ) return HttpResponse.accepted('User has been added successfully') except Exception as e: HttpResponse.internal_server_error(e.message)
def validate_jwt_token_and_get_user(token): jwt_token_decoded = TokenService.decode_jwt_token(token) # TODO complete the jwt validation (Exp and User Existence etc) # TODO Also we can check for user permissions on the API user = UserService.get_user_by_guid( user_guid=jwt_token_decoded['_identity']) return user
def login(self): user = cherrypy.request.json cookie = cherrypy.response.cookie username = user['name'] service = UserService() if not service.does_username_exist(username): service.add_user(username) user = service.get_user_by_username(username) user['isLoggedIn'] = True cookie['user'] = user['_id'] cookie['user']['path'] = '/' cookie['user']['max-age'] = 3600 return user
def create_user(): try: try: email = request.json['email'] password = request.json['password'] first_name = request.json['first_name'] last_name = request.json['last_name'] company = request.json['company'] except Exception: return HttpResponse.bad_request('One or parameters are missing') user_by_email = UserService.get_user_by_email(email=email) if len(user_by_email) > 0: return HttpResponse.bad_request('An user account with this email already exists') UserService.create_user_and_add_to_niche( email=email, password=password, first_name=first_name, last_name=last_name, company=company) return HttpResponse.accepted('User created and added to niche account successfully') except Exception as e: return HttpResponse.internal_server_error(e.message)
def get_user_list(request): if request.method == 'GET': current_user = request.user page_number = int(request.GET.get('page', 1)) page_size = 10 total_page_count, json_data = UserService(current_user).get_user_list( page_size, page_number) context = { 'results': json.loads(json_data), 'total_pages': total_page_count, 'current_page': page_number } return JsonResponse(context)
def authenticate(): email = request.json['email'] password = request.json['password'] try: user = UserService.get_user_by_email(email=email)[0] except Exception as e: return HttpResponse.internal_server_error(e.message) if user: if user.password == password: claims_token = TokenService.create_jwt_token( user_guid=user.user_guid) response = {'claims_token': claims_token} return HttpResponse.success(response) return HttpResponse.unauthorized('Incorrect username or password')
def authenticate(): email = request.json['email'] password = request.json['password'] try: user = UserService.get_user_by_email(email=email)[0] except Exception as e: return HttpResponse.internal_server_error(e.message) if user: if user.password == password: claims_token = TokenService.create_jwt_token(user_guid=user.user_guid) response = { 'claims_token': claims_token } return HttpResponse.success(response) return HttpResponse.unauthorized('Incorrect username or password')
def validate_jwt_token_and_get_user(token): jwt_token_decoded = TokenService.decode_jwt_token(token) # TODO complete the jwt validation (Exp and User Existence etc) # TODO Also we can check for user permissions on the API user = UserService.get_user_by_guid(user_guid=jwt_token_decoded['_identity']) return user
def get_user_profile(request, id): if request.method == 'GET': current_user = request.user json_data = UserService(current_user).get_user_profile(user_id=id) context = {'results': json.loads(json_data)} return JsonResponse(context)