def callback(request): # Make the token request result = get_token_from_code(request) # Get the user's profile user = get_user(result['access_token']) # Store user store_user(request, user) return HttpResponseRedirect(reverse('home'))
def callback(request): expected_state = request.session.pop('auth_state', '') token = get_token_from_code(request.get_full_path(), expected_state) user = get_user(token) store_token(request, token) store_user(request, user) return HttpResponseRedirect(reverse('home'))
def callback(request): """ Signin Callback Response """ expected_state = request.session.pop("auth_state", "") token = get_token_from_code(request.get_full_path(), expected_state) user = get_user(token) store_token(request, token) store_user(request, user) return HttpResponseRedirect(reverse("home"))
def callback_p(request): # Get the state saved in session expected_state = request.session.pop('auth_state', '') # Make the token request token = get_token_from_code(request.get_full_path(), expected_state) # Temporary! Save the response in an error so it's displayed request.session['flash_error'] = { 'message': 'Token retrieved', 'debug': format(token) } return HttpResponseRedirect(reverse('home'))
def callback(request): # Get the state saved in session expected_state = request.session.pop('auth_state', '') # Make the token request token = get_token_from_code(request.get_full_path(), expected_state) # Get the user's profile user = get_user(token) # #Get nylas code api_client = APIClient(app_id="57j65z6aezdxuocajwwegvkyx", app_secret="du2z08iomhm6remzvzyhk8bz9") response_body = { "client_id": api_client.app_id, "name": user['givenName'], "email_address": user['mail'], "provider": "office365", "settings": { "microsoft_client_id": settings['app_id'], "microsoft_client_secret": settings['app_secret'], "microsoft_refresh_token": token['refresh_token'], "redirect_uri": settings['redirect'], }, "scopes": "email.read_only,calendar" } nylas_authorize_resp = requests.post( "https://api.nylas.com/connect/authorize", json=response_body) nylas_code = nylas_authorize_resp.json()["code"] # Get nylas access_token nylas_token_data = { "client_id": api_client.app_id, "client_secret": api_client.app_secret, "code": nylas_code, } nylas_token_resp = requests.post("https://api.nylas.com/connect/token", json=nylas_token_data) if not nylas_token_resp.ok: message = nylas_token_resp.json()["message"] return requests.Response('Bad Request') nylas_access_token = nylas_token_resp.json()["access_token"] print(nylas_access_token) # Save token and user store_token(request, token) store_user(request, user) return HttpResponseRedirect(reverse('home'))
def callback(request): # Get the state saved in session expected_state = request.session.pop('auth_state', '') # Make the token request token = get_token_from_code(request.get_full_path(), expected_state) # Get the user's profile user = get_user(token) # Save token and user store_token(request, token) store_user(request, user) return HttpResponseRedirect(reverse('home'))
def callback(request): # Get the state saved in session expected_state = request.session.pop('auth_state', '') # Make the token request token = get_token_from_code(request.get_full_path(), expected_state) # Get the user's profile user = get_user(token) try: print("Found", Junta.objects.get(user__email=user['mail'])) except: print(Junta.objects.get(user__email='*****@*****.**')) # Save token and user store_token(request, token) store_user(request, user) return HttpResponseRedirect(reverse('home'))
def callback(request): # Get the state saved in session expected_state = request.session.pop('auth_state', '') # Make the token request token = get_token_from_code(request.get_full_path(), expected_state) # Get the user's profile user = get_user(token) # Get user info # user attribute like displayName,surname,mail etc. are defined by the # institute incase you are using single-tenant. You can get these # attribute by exploring Microsoft graph-explorer. fullname = user['displayName'] split_name = fullname.split(' ') first_name = split_name[2] last_name = split_name[0] first_name = first_name.lower().title() last_name = last_name.lower().title() username = user['displayName'] password = user['surname'] email = user['mail'] try: # if use already exist user = User.objects.get(username=username) except User.DoesNotExist: # if user does not exist then create a new user user = User.objects.create_user(username, email, password) user.first_name = first_name user.last_name = last_name user.save() user = authenticate(username=username, password=password) if user is not None: login(request, user) messages.success(request, "Success: You were successfully logged in.") return redirect('home') return redirect('home')