protected function _login() { list($request_token, $url) = FriendFeed_Helper::getAuthentication(); $this->session->set("request_token", $request_token); header("Location: {$url}"); die; }
public function onLoad() { $member = $this->session->get("member"); if (is_array($member)) { $ff = FriendFeed_Helper::getInstance(); $member["logged"] = true; $member["picture"] = $ff->fetch_picture($member["username"], array("size" => "medium")); $member["link"] = sprintf("http://friendfeed.com/%s", $member["username"]); } else { $member["logged"] = false; } $this->assign("member", $member); }
public function onLoad() { $site_root = $this->config->application->get("application/site_root"); $action = $this->request->getAction(); $data = $this->session->get("member"); $actionType = substr($action->parameters["type"], 0, -1); $listName = $action->parameters["id"]; if (is_array($data)) { $subscriptions = array(); foreach ($data["subscriptions"] as $subscribe) { if ($actionType == $subscribe->type) { $subscriptions[$subscribe->id] = $subscribe; } } // Get List Subscriptions $list_subscriptions = $this->session->get($listName); if (!is_object($list_subscriptions)) { $access_token = $this->session->get("access_token"); $ff = FriendFeed_Helper::getInstance($access_token); // Fetch List Subcsribers.. $list_subscriptions = $ff->fetch_feed_info($listName); $this->session->set($listName, $list_subscriptions); } $feeds = array(); foreach ($list_subscriptions->feeds as $feed) { if ($actionType == $feed->type) { $feeds[$feed->id] = $feed; unset($subscriptions[$feed->id]); } } $lists = array(); foreach ($data["lists"] as $list) { $list["class"] = $action->parameters["id"] == $list["id"] ? "current" : "no"; $list["link"] = "{$site_root}/{$list["id"]}/{$action->parameters["type"]}"; $lists[] = $list; } $this->assign("feeds", (array) $feeds); $this->assign("subscriptions", (array) $subscriptions); $this->assign("lists", (array) $lists); } else { $this->assign("feeds", array()); $this->assign("subscriptions", array()); $this->assign("lists", array()); } $this->assign("listType", $actionType); $this->assign("listId", $action->parameters["id"]); }
protected function _update() { $succeed = false; $message = "Not OK, Please re-login site."; $access_token = $this->session->get("access_token"); if (is_array($access_token)) { try { $method = $_REQUEST["method"] == "add" ? "subscribe" : "unsubscribe"; $lists = $this->session->get($_REQUEST["id"]); $type = $_REQUEST["type"]; $ff = FriendFeed_Helper::getInstance($access_token); for ($i = 0; $i < count($_REQUEST["values"]); $i++) { $id = $_REQUEST["values"][$i]; $name = $_REQUEST["texts"][$i]; $ff->{$method}($id, array("list" => $_REQUEST["id"])); if ($method == "subscribe") { $lists->feeds[] = (object) array("id" => $id, "name" => $name, "type" => $type); } else { foreach ($lists->feeds as $key => $feed) { if ($feed->id == $id) { unset($lists->feeds[$key]); } } } } $this->session->set($_REQUEST["id"], $lists); $message = "OK"; $succeed = true; } catch (Exception $ex) { $message = "Not OK: {$ex->getMessage()}"; } } header("Content-type: text/plain"); $result = array("succeed" => $succeed, "message" => $message); printf("result = %s", json_encode($result)); die; }