コード例 #1
0
 public function indexAction($user_data = null)
 {
     $this->noLayout(true);
     if ($user_data) {
         $connect = new Model_Instagram_Login();
         $info = $connect->getDataByUserId($user_data['user_id']);
         if ($info) {
             $this->view->profile = $info['username'];
         }
     }
 }
コード例 #2
0
 public function connectAction()
 {
     $request = $this->getRequest();
     $this->noLayout(true);
     $this->view->close_box = false;
     if (JO_Session::get('user[user_id]')) {
         $instagramoauth = null;
         $this->initInstagram($instagramoauth);
         $user_data = $this->user_data;
         $connectObject = new Model_Instagram_Login();
         $user_info = $connectObject->getDataByUserId(JO_Session::get('user[user_id]'));
         if ($user_data) {
             $connectObjectCheck = new Model_Instagram_Login($user_data['id']);
             if ($connectObjectCheck->row) {
                 if ($connectObjectCheck->row['user_id'] == JO_Session::get('user[user_id]')) {
                     $enable_action = true;
                 } else {
                     $is_user = new Model_Users_User($connectObjectCheck->row['user_id']);
                     if (!$is_user->count()) {
                         $enable_action = true;
                         $connectObject->deleteDataByUserId($connectObjectCheck->row['user_id']);
                     } else {
                         $enable_action = $this->translate('There is another profile that is associated with your instagram account');
                     }
                 }
             } else {
                 $enable_action = true;
             }
             if ($enable_action === true) {
                 if ($user_info) {
                     if ($connectObject->deleteDataByUserId(JO_Session::get('user[user_id]'))) {
                         $this->view->close_box = true;
                     } else {
                         $this->view->close_box = true;
                     }
                 } else {
                     $res = $connectObject->insert(array('username' => $user_data['username'], 'user_id' => JO_Session::get('user[user_id]'), 'oauth_uid' => $user_data['id'], 'access_token' => JO_Session::get('InstagramAccessToken')));
                     if ($res) {
                         $this->view->close_box = true;
                     } else {
                         $this->view->close_box = true;
                     }
                 }
             } else {
                 JO_Session::set('connect_error', $enable_action);
                 $this->view->close_box = true;
             }
         } else {
             $instagramoauth->openAuthorizationUrl();
         }
     }
     $this->view->close_box = true;
 }
コード例 #3
0
 public function cronfirstAction()
 {
     set_time_limit(0);
     ignore_user_abort(true);
     $max_id = $this->getRequest()->getParam('max_id');
     $ud = new Model_Users_User($this->getRequest()->getParam('user'));
     if (!$ud->count()) {
         exit;
     }
     JO_Session::set('user', $ud->toArray());
     $connectObject = new Model_Instagram_Login();
     $user_info = $connectObject->getDataByUserId(JO_Session::get('user[user_id]'));
     $InstagramAccessToken = $user_info['access_token'];
     $user_id = $ud['user_id'];
     $instagram_id = $user_info['oauth_uid'];
     // 		$this->initInstagram();
     $params = array('access_token' => $InstagramAccessToken, 'count' => 60, 'max_id' => $max_id ? $max_id : '');
     $result = $this->getMediaData($instagram_id, 300, $params);
     if (isset($result['meta']['code']) && $result['meta']['code'] == 200) {
         $return = (array) $result['data'];
         if ($return) {
             foreach ($return as $img) {
                 list($instagram_media_id, $instagram_profile_id) = explode('_', $img['id']);
                 Model_Instagram_Media::addMedia(array('user_id' => $user_id, 'instagram_media_id' => $instagram_media_id, 'width' => $img['images']['standard_resolution']['width'], 'from' => $img['link'], 'height' => $img['images']['standard_resolution']['height'], 'media' => $img['images']['standard_resolution']['url'], 'instagram_profile_id' => $instagram_profile_id, 'md5key' => md5($img['id']), 'title' => (string) (isset($img['caption']['text']) ? $img['caption']['text'] : $img['user']['username']), 'pin_id' => $this->checkDisabled($img['images']['standard_resolution']['url']) ? '0' : '-1'));
             }
             if (array_key_exists('next_url', $result['pagination'])) {
                 $curl = new JO_Http();
                 $curl->initialize(array('target' => WM_Router::create($this->getRequest()->getBaseUrl() . '?controller=modules_instagram_media&action=cronfirst&user='******'&user_id=' . $user_id . '&max_id=' . $result['pagination']['next_max_id']), 'method' => 'GET', 'timeout' => 10));
                 $curl->useCurl(true);
                 $curl->execute();
             }
         }
     }
     exit;
 }