def home(request): logger.info("Loading home page") access_token = request.GET.get('access_token') userid = request.GET.get('userid') res = {} res['valid'] = False #Update the access token for the user in the database try: user = fetch_fb_user(userid) except IndexError: #New user, add user to database try: content = fetch_user_info_from_fb(userid, access_token) except: logger.debug("Error fetching user info from facebook for userid "+str(userid)+"\n"); return render(request, 'polls/error.html', {"message": "Something went wrong. Please logout and login again!"}) #confirm userid is equal to id returned from graph api if 'id' not in content or userid != content['id']: return render(request, 'polls/error.html', {"message": "Something went wrong. Please logout and login again!"}) content['access_token'] = access_token logger.debug("Trying to save user") try: res = save_fb_user(content) logger.debug("Saved user info succesfully"+str(res)) except: logger.exception("Unexpected error while saving user: "******"application/json") if res['valid']: user = fetch_fb_user(userid) logger.debug('Got user '+str(user)+' for userid '+str(userid)+str(access_token)) if user: user.access_token = access_token user.save() return render(request, 'polls/home.html')
def retrieve_tagged_places(request): userid = request.POST['user'] access_token = request.POST['access_token'] res = {} res['valid'] = False try: user = fetch_fb_user(userid) except: res['valid'] = False res['msg'] = 'Exception while retrieving user '+str(sys.exc_info()[0]) logger.exception("Unexpected error while user: "******"application/json") try: res = store_tagged_places(user) except: res['valid'] = False res['msg'] = 'Exception while retrieving user data '+str(sys.exc_info()[0]) logger.exception("Unexpected error while user's tagged places: ", sys.exc_info()[0]) return HttpResponse(json.dumps(res), content_type="application/json") return HttpResponse(json.dumps(res), content_type="application/json")