public static function instance() { if (!self::$instance) { self::$instance = new self(); } return self::$instance; }
/** * Return array of liked media to instagram * @param integer|null $id * @param array $recentOpts * @return type */ public function getLikedMedia($id = null, $requestOpts = array()) { $requestOpts = array_merge($requestOpts, array('limit' => $limit)); if (null === $id) { if (null === parent::getAuthClientId()) { return $this->get('self/media/liked', array(), $requestOpts); } return $this->get(parent::getAuthClientId() . '/media/liked', array(), $requestOpts); } return $this->get($id . '/media/liked', array(), $requestOpts); }
public function returnImagesByTagRaw($tag = "berrics") { $token = "instagram-images-by-tag-raw-" . md5($tag); if (($data = Cache::read($token, "1min")) === false) { $i = InstagramApi::berricsInstance(); $images = $i->instagram->getRecentTags($tag); $data = json_decode($images, true); Cache::write($token, $data, "1min"); } return $data; }
public function get_posts() { $photos = InstagramApi::i()->get_user_photos(self::$username, 20); // Convert from standard objects to InstagramPhoto Objects foreach ($photos as $photo) { $social_post = $photo->generate_socialpost(); if (!$social_post->exists()) { $social_post->save(); } else { } } }
public function instagram() { App::import("Vendor", "InstagramApi", array("file" => "instagram/instagram_api.php")); $token = "instagram_splash"; if (($pics = Cache::read($token, "30sec")) === false) { $pics = array(); $i = InstagramApi::berricsInstance(); $p = $i->instagram->getUserRecent(InstagramApi::$berrics_id); $p = json_decode($p); foreach ($p->data as $k => $v) { $month = date("m", $v->created_time); $day = date("d", $v->created_time); if ($month >= 6 && $day >= 7) { $pics[] = $v; } } Cache::write($token, $pics, "30sec"); } $this->set(compact("pics")); }
public function handle_instagram_callback() { App::import("Vendor", "InstagramApi", array("file" => "instagram/instagram_api.php")); $i = InstagramApi::instance(); $currentUser = $i->instagram->getCurrentUser(); $accessToken = $i->instagram->getAccessToken(); $ud = array("instagram_oauth_token" => $accessToken, "instagram_handle" => $currentUser->username, "instagram_account_num" => $currentUser->id, "instagram_profile_image" => $currentUser->profile_image); $this->User->create(); $this->User->id = $this->Session->read("Auth.User.id"); $this->User->save($ud); $user = $this->User->returnUserProfile($this->Session->read("Auth.User.id"), true); $this->Session->write("Auth.User", $user['User']); $callback = "/"; if ($this->Session->check("Instagram.login_callback")) { $callback = $this->Session->read("Instagram.login_callback"); $this->Session->delete("Instagram.login_callback"); } $this->redirect($callback); }
/** * Get very recent media from a geography subscription that you created. * Note: you can only access Geographies that were explicitly created by your OAuth client * @param integer $id geo id * @param array $params parameters * @param array $requestOpts request options * @return array results */ public function get($id, $params = array(), $requestOpts = array()) { $requestOpts = array_merge($requestOpts, array('count' => 10)); return parent::get('geographies/' . $id . '/media/recent', $params, $requestOpts); }
/** * Return data based on given tag. Defaults search with 'nofilter' tag * @param string|null $tag * @param array $requestOpts http query parameters * @return array results */ public function get($tag = 'nofilter', $params = array(), $requestOpts = array()) { return parent::get('tags/' . $tag, $params, $requestOpts); }
public function insta_test() { App::import("Vendor", "InstagramApi", array("file" => "instagram_api.php")); $i = InstagramApi::berricsInstance(); //$user = //get all usrs that have an instagram account num $this->loadModel("User"); $this->loadModel("UserProfile"); $users = $this->User->find("all", array("contain" => array(), "conditions" => array("User.instagram_account_num !=" => ""))); foreach ($users as $v) { $acc = $i->instagram->getUser($v['User']['instagram_account_num']); $data = json_decode($acc); //update the users profiles $this->UserProfile->create(); $this->UserProfile->updateAll(array("instagram_followers" => $data->data->counts->followed_by, "instagram_last_updated" => 'NOW()'), array("user_id" => $v['User']['id'])); } die("done"); }
public function instagram_comments() { App::import("Vendor", "InstagramApi", array("file" => "instagram/instagram_api.php")); $i = InstagramApi::berricsInstance(); //die(pr($i)); $feed = $i->instagram->getCurrentUser(); die(pr($feed)); }
/** * {@inheritdoc} */ public function get($id, $params = array(), $requestOpts = array()) { return parent::get('locations/' . $id, $params, $requestOpts); }
public function updateInstagramDetails($User = array(), $crontab = false) { if (!isset($User['id']) || !isset($User['instagram_handle']) || (empty($User['id']) || empty($User['instagram_handle']))) { return false; } App::import("Vendor", "InstagramApi", array("file" => "instagram/instagram_api.php")); $i = InstagramApi::berricsInstance(); $search = $i->instagram->searchUser($User['instagram_handle']); $insta = json_decode($search, true); $udata = array(); $udata['instagram_account_num'] = $insta['data'][0]['id']; $udata['instagram_profile_image'] = $insta['data'][0]['profile_picture']; //update the users profile with the instagram info $this->create(); $this->id = $User['id']; $this->save($udata); $instaData = $i->instagram->getUser($udata['instagram_account_num']); $instaData = json_decode($instaData, true); $profile = $this->ensure_user_profile($User['id']); $this->UserProfile->create(); $this->UserProfile->id = $profile['UserProfile']['id']; $this->UserProfile->save(array("instagram_followers" => $instaData['data']['counts']['followed_by'], "instagra_last_updated" => 'NOW()')); SysMsg::add(array("category" => "Instagram", "from" => "UserModel", "title" => "Update Instagram: " . $User['instagram_handle'], "crontab" => $crontab)); }
public function instagram() { App::import("Vendor", "InstagramApi", array("file" => "instagram/instagram_api.php")); $token = "instagram_splash"; if (($pics = Cache::read($token, "1min")) === false) { $pics = array(); $i = InstagramApi::berricsInstance(); $p = $i->instagram->getUserRecent(InstagramApi::$berrics_id); $p = json_decode($p); foreach ($p->data as $k => $v) { $pics[] = $v; } } $this->set(compact("pics")); }
public function attach_instagram($id = false) { $data = array("status" => false); $instagram_token = $this->Auth->user("instagram_oauth_token"); if (empty($instagram_token) || !$id) { die(json_encode($data)); } App::import("Vendor", "InstagramApi", array("file" => "instagram/instagram_api.php")); $i = InstagramApi::userInstance($instagram_token); $image = $i->instagram->getMedia($id); $image = json_decode($image, true); //get the image $f_image = file_get_contents($image['data']['images']['standard_resolution']['url']); $image_name = md5(time() . mt_rand(999, 9999)) . ".jpg"; file_put_contents(TMP . $image_name, $f_image); App::import("Vendor", "ImgServer", array("file" => "ImgServer.php")); $imgs = ImgServer::instance(); $imgs->upload_tmp_file($image_name, TMP . $image_name); $data['status'] = true; $data['image'] = $image; $data['file_name'] = $image_name; die(json_encode($data)); }