def render_GET(self, request): try: location = request.args["location"][0] except KeyError: return 'Location must be specified.' token = authentication.get_token(request) if not token: request.redirect('http://imbored.davidstrauss.net/connect') return "" url = 'https://graph.facebook.com/me/friends?fields=name,location,birthday&access_token={0}'.format(token) deferred = http_request.run(url) def cbResponse(response, request, location): data = json.loads(response.body) log.msg('Matching against {0}.'.format(location)) local = [] for friend in data["data"]: try: log.msg('Friend at location {0}.'.format(friend['location']['id'])) if str(friend['location']['id']) == str(location): local.append(friend) except KeyError: pass item = random.randrange(0, len(local)) friend = local[item] request.write(json.dumps(friend, sort_keys=True, indent=4)) request.finish() def cbErrResponse(error, request): log.msg(error) request.write("Error") request.finish() deferred.addCallback(cbResponse, request, location) deferred.addErrback(cbErrResponse, request) return NOT_DONE_YET
def render_GET(self, request): token = authentication.get_token(request) if not token: return '"Not authenticated. Connect first."' url = 'https://graph.facebook.com/me?access_token={0}'.format(token) deferred = http_request.run(url) def cbResponse(response, request): data = json.loads(response.body) request.write(json.dumps(data, sort_keys=True, indent=4)) request.finish() def cbErrResponse(error, request): log.msg(error) request.write("Error") request.finish() deferred.addCallback(cbResponse, request) deferred.addErrback(cbErrResponse, request) return NOT_DONE_YET
def render_GET(self, request): rt_api_key = configuration.get_configuration()['rt'] url = 'http://api.rottentomatoes.com/api/public/v1.0/lists/movies/in_theaters.json?apikey={0}'.format(rt_api_key) deferred = http_request.run(url) def cbResponse(response, request): log.msg('Finding movies.') movies = json.loads(response.body)["movies"] item = random.randrange(0, len(movies)) movie = movies[item] request.write(json.dumps(movie, sort_keys=True, indent=4)) request.finish() def cbErrResponse(error, request): log.msg(error) request.write("Error") request.finish() deferred.addCallback(cbResponse, request) deferred.addErrback(cbErrResponse, request) return NOT_DONE_YET