def get(self): request_key = self.request.get("oauth_token") cookie_val = parse_cookie(self.request.cookies.get("FF_API_REQ")) if not cookie_val: logging.warning("Missing request token cookie") self.redirect("/") return cookie_key, cookie_secret = cookie_val.split("|") if cookie_key != request_key: logging.warning("Request token does not match cookie") self.redirect("/") return req_token = dict(key=cookie_key, secret=cookie_secret) try: access_token = friendfeed.fetch_oauth_access_token( FRIENDFEED_API_TOKEN, req_token) except: logging.warning("Could not fetch access token for %r", request_key) self.redirect("/") return data = "|".join(access_token[k] for k in ["key", "secret", "username"]) set_cookie(self.response, "FF_API_AUTH", data, expires=time.time() + 30 * 86400) self.redirect("/")
def get(self): request_key = self.request.get("oauth_token") key = self.SessionObj.request_token secret = self.SessionObj.token_secret username = "" if key != request_key: logging.warning("Request token does not match known token") self.redirect("/") return req_token = dict(key=key, secret = secret) try: oauth_key = model.OAuthKeys.Get("friendfeed") consumer = dict( key = oauth_key.consumer_key, secret = oauth_key.consumer_secret ) access_token = friendfeed.fetch_oauth_access_token( consumer, req_token) self.SessionObj.access_token = simplejson.dumps(access_token) self.SessionObj.token_secret = access_token["secret"] # Get the profile image username = access_token["username"] current_user = model.User.Get(username) #if current_user is None: # current_user = model.User.CreateDefault(username) t = Task(url = '/queue/searchme', params= {"username" : username }, countdown = 240 ) t.add('ffme-scan') t = Task(url = '/queue/searchmetype', params= {"username" : username, "type": "comments" }, countdown = 240 ) t.add('fftype-scan') t = Task(url = '/queue/searchmetype', params= {"username" : username, "type": "likes" }, countdown = 240 ) t.add('fftype-scan') queueProfileFollow(username) current_user.name = username; current_user.profile_img = "http://friendfeed-api.com/v2/picture/%s" % username current_user.access_token = self.SessionObj.access_token current_user.token_secret = self.SessionObj.token_secret current_user.put() self.SessionObj.user = current_user self.SessionObj.put() except: logging.warning("Could not fetch access token for %r, %s %s" % (request_key, sys.exc_type, sys.exc_value)) self.redirect("/") return self.redirect("/user/%s" % username )