Esempio n. 1
0
 public function get_thumbnail_url($id)
 {
     // Get our settings
     $client_id = isset($this) && isset($this->options['client_id']) && $this->options['client_id'] != '' ? $this->options['client_id'] : false;
     $client_secret = isset($this) && isset($this->options['client_secret']) && $this->options['client_secret'] != '' ? $this->options['client_secret'] : false;
     $access_token = isset($this) && isset($this->options['access_token']) && $this->options['access_token'] != '' ? $this->options['access_token'] : false;
     $access_token_secret = isset($this) && isset($this->options['access_token_secret']) && $this->options['access_token_secret'] != '' ? $this->options['access_token_secret'] : false;
     // If API credentials are entered, use the API
     if ($client_id && $client_secret && $access_token && $access_token_secret) {
         $vimeo = new phpVimeo($this->options['client_id'], $this->options['client_secret']);
         $vimeo->setToken($this->options['access_token'], $this->options['access_token_secret']);
         $response = $vimeo->call('vimeo.videos.getThumbnailUrls', array('video_id' => $id));
         $result = $response->thumbnails->thumbnail[count($response->thumbnails->thumbnail) - 1]->_content;
     } else {
         $request = "http://vimeo.com/api/oembed.json?url=http%3A//vimeo.com/{$id}";
         $response = wp_remote_get($request, array('sslverify' => false));
         if (is_wp_error($response)) {
             $result = $this->construct_info_retrieval_error($request, $response);
         } elseif ($response['response']['code'] == 404) {
             $result = new WP_Error('vimeo_info_retrieval', __('The Vimeo endpoint located at <a href="' . $request . '">' . $request . '</a> returned a 404 error.<br />Details: ' . $response['response']['message'], 'video-thumbnails'));
         } elseif ($response['response']['code'] == 403) {
             $result = new WP_Error('vimeo_info_retrieval', __('The Vimeo endpoint located at <a href="' . $request . '">' . $request . '</a> returned a 403 error.<br />This can occur when a video has embedding disabled or restricted to certain domains. Try entering API credentials in the provider settings.', 'video-thumbnails'));
         } else {
             $result = json_decode($response['body']);
             $result = $result->thumbnail_url;
         }
     }
     return $result;
 }
 public function verify()
 {
     $vo_vimeo = new phpVimeo($this->opo_config->get('consumer_key'), $this->opo_config->get('consumer_secret'));
     if (file_exists(__CA_APP_DIR__ . '/tmp/vimeo.token')) {
         $va_token = unserialize(file_get_contents(__CA_APP_DIR__ . '/tmp/vimeo.token'));
         // exchange request token for access token by verifying with the code from vimeo
         if ($va_token['type'] == 'request') {
             $vo_vimeo->setToken($va_token['oauth_token'], $va_token['oauth_token_secret']);
             $vs_verify_code = $this->request->getParameter('verify_code', pString);
             $va_token = $vo_vimeo->getAccessToken($vs_verify_code);
             $va_token['type'] = 'access';
             file_put_contents(__CA_APP_DIR__ . '/tmp/vimeo.token', serialize($va_token));
         }
     }
     $this->render('verify.php');
 }
 public function vimeologinAction()
 {
     $session = new Container('vimeo');
     $vimeo = new \phpVimeo('e19e9bce5bb95d7b8e0fc5ef61feb6582d3c9e19', 'cb64548284bd805d4a5286b9fa731d3c124d98dc');
     $vimeo->setToken($session->oauth_request_token, $session->oauth_request_token_secret);
     $token = $vimeo->getAccessToken($_REQUEST['oauth_verifier']);
     $session->oauth_access_token = $token['oauth_token'];
     $session->oauth_access_token_secret = $token['oauth_token_secret'];
     $vimeo = new \phpVimeo('e19e9bce5bb95d7b8e0fc5ef61feb6582d3c9e19', 'cb64548284bd805d4a5286b9fa731d3c124d98dc', $session->oauth_access_token, $session->oauth_access_token_secret);
     $video_id = $vimeo->upload('uploads/bunny.mp4');
     var_dump($video_id);
     exit;
 }
Esempio n. 4
0
// Clear session
if ($_GET['clear'] == 'all') {
    session_destroy();
    session_start();
}
// Set up variables
$state = $_SESSION['vimeo_state'];
$request_token = $_SESSION['oauth_request_token'];
$access_token = $_SESSION['oauth_access_token'];
// Coming back
if ($_REQUEST['oauth_token'] != NULL && $_SESSION['vimeo_state'] === 'start') {
    $_SESSION['vimeo_state'] = $state = 'returned';
}
// If we have an access token, set it
if ($_SESSION['oauth_access_token'] != null) {
    $vimeo->setToken($_SESSION['oauth_access_token'], $_SESSION['oauth_access_token_secret']);
}
switch ($_SESSION['vimeo_state']) {
    default:
        // Get a new request token
        $token = $vimeo->getRequestToken();
        // Store it in the session
        $_SESSION['oauth_request_token'] = $token['oauth_token'];
        $_SESSION['oauth_request_token_secret'] = $token['oauth_token_secret'];
        $_SESSION['vimeo_state'] = 'start';
        // Build authorize link
        $authorize_link = $vimeo->getAuthorizeUrl($token['oauth_token'], 'write');
        break;
    case 'returned':
        // Store it
        if ($_SESSION['oauth_access_token'] === NULL && $_SESSION['oauth_access_token_secret'] === NULL) {
Esempio n. 5
0
 public function vimeoAction()
 {
     //print "<pre>";
     $config = $this->getServiceLocator()->get('Config');
     $vimeo = new \phpVimeo($config['Vimeo']['clientId'], $config['Vimeo']['clientSecrate']);
     // we shall manage token in session lets do that//
     $session = new Container('vimeo');
     //$session->accessToken = "hellow";
     //$session->accessSecret = "world";
     $request = new Request();
     // if request for all new request
     if ($request->getQuery()->clear == 'All') {
         $session->offsetUnset('accessToken');
         $session->offsetUnset('accessSecret');
     }
     // Set up variables
     $state = $session->vimeo_state;
     $request_token = $session->oauth_request_token;
     $access_token = $session->oauth_access_token;
     // Coming back
     if ($request->getQuery()->oauth_token != NULL && $request->getQuery()->vimeo_state === 'start') {
         $request->getQuery()->vimeo_state = $state = 'returned';
     }
     // If we have an access token, set it
     if ($session->oauth_access_token != null) {
         $vimeo->setToken($session->oauth_access_token, $session->oauth_access_token_secret);
     }
     switch ($session->vimeo_state) {
         default:
             // Get a new request token
             $token = $vimeo->getRequestToken();
             // Store it in the session
             $session->oauth_request_token = $token['oauth_token'];
             $session->oauth_request_token_secret = $token['oauth_token_secret'];
             $session->vimeo_state = 'start';
             // Build authorize link
             $authorize_link = $vimeo->getAuthorizeUrl($token['oauth_token'], 'write');
             break;
         case 'returned':
             // Store it
             if ($session->oauth_access_token === NULL && $session->oauth_access_token_secret === NULL) {
                 // Exchange for an access token
                 $vimeo->setToken($session->oauth_request_token, $session->oauth_request_token_secret);
                 $token = $vimeo->getAccessToken($_REQUEST['oauth_verifier']);
                 // Store
                 $session->oauth_access_token = $token['oauth_token'];
                 $session->oauth_access_token_secret = $token['oauth_token_secret'];
                 $session->vimeo_state = 'done';
                 // Set the token
                 $vimeo->setToken($session->oauth_access_token, $session->oauth_access_token_secret);
             }
             $videos = $vimeo->call('vimeo.videos.getUploaded', array('user_id' => '27579548'));
             // Do an authenticated call
             try {
                 $videos = $vimeo->call('vimeo.videos.getUploaded', array('user_id' => '27579548'));
             } catch (VimeoAPIException $e) {
                 echo "Encountered an API error -- code {$e->getCode()} - {$e->getMessage()}";
             }
             break;
     }
     //print_r($vimeo);
     //exit;
     $data = array();
     $data['session'] = $session;
     $data['authorize_link'] = $authorize_link;
     if (isset($videos)) {
         $data['videos'] = $videos;
     }
     return new ViewModel($data);
 }
Esempio n. 6
0
 public function vimeologinAction()
 {
     $session = new Container('vimeo');
     // Getting session values
     if ($_REQUEST['clear'] == 'all') {
         $session->offsetUnset('file');
         $session->offsetUnset('mode');
         $session->offsetUnset('media_id');
         $session->offsetUnset('returnUrl');
         $session->offsetUnset('old_video');
         $session->offsetUnset('vimeo_state');
         $session->offsetUnset('oauth_access_token');
         $session->offsetUnset('oauth_access_token_secret');
         echo 'cleared';
         exit;
     }
     if (isset($session->returnUrl) && $session->returnUrl != "") {
         $config = $this->getServiceLocator()->get('Config');
         $vimeo = new \phpVimeo($config['Vimeo']['clientId'], $config['Vimeo']['clientSecrate']);
         //$vimeo->enableCache(\phpVimeo::CACHE_FILE, 'cache', 300);
         if (!isset($session->oauth_access_token) || !isset($session->oauth_access_token_secret)) {
             if (isset($session->vimeo_state) && $session->vimeo_state == 'start') {
                 $session->vimeo_state = 'returned';
             } else {
                 $session->vimeo_state = 'start';
             }
             if ($session->vimeo_state == 'start') {
                 // Get a new request token
                 $token = $vimeo->getRequestToken();
                 // Store it in the session
                 $session->oauth_request_token = $token['oauth_token'];
                 $session->oauth_request_token_secret = $token['oauth_token_secret'];
                 $session->vimeo_state = 'start';
                 $mode = isset($session->old_video) && $session->old_video != "" ? 'delete' : $session->mode;
                 // setting request mode
                 header('Location: ' . $vimeo->getAuthorizeUrl($token['oauth_token'], $mode));
                 exit;
             } else {
                 if ($session->vimeo_state == 'returned') {
                     $vimeo->setToken($session->oauth_request_token, $session->oauth_request_token_secret);
                     $token = $vimeo->getAccessToken($_REQUEST['oauth_verifier']);
                     // storing oath tokens
                     $session->oauth_access_token = $token['oauth_token'];
                     $session->oauth_access_token_secret = $token['oauth_token_secret'];
                     $vimeo->setToken($session->oauth_access_token, $session->oauth_access_token_secret);
                 }
             }
         }
         if (isset($session->mode) && $session->mode == 'write') {
             $vimeo = new \phpVimeo($config['Vimeo']['clientId'], $config['Vimeo']['clientSecrate'], $session->oauth_access_token, $session->oauth_access_token_secret);
             if (isset($session->file) && file_exists($session->file)) {
                 $video_id = $vimeo->upload($session->file);
                 // uploading file on vimeo
                 if ($video_id != false) {
                     @unlink($session->file);
                     // Deleting file from our server
                     if (isset($session->old_video) && $session->old_video != '' && ($info = $vimeo->call('vimeo.videos.getInfo', array('video_id' => $session->old_video)))) {
                         $vimeo->call('vimeo.videos.delete', array('video_id' => $session->old_video));
                         // deleting previous video
                     }
                     /* Updating database records */
                     $this->getMediaTable()->updateMedia('media_url', $video_id, $session->media_id);
                     isset($session->old_video) && $session->old_video != "" ? $this->flashMessenger()->addSuccessMessage('Media updated successfully..!!') : $this->flashMessenger()->addSuccessMessage('Media added successfully..!!');
                     /* Clearing session variables */
                     $session->offsetUnset('msg');
                     $session->offsetUnset('mode');
                     $session->offsetUnset('file');
                     $session->offsetUnset('old_video');
                     $session->offsetUnset('oauth_access_token');
                     $session->offsetUnset('oauth_access_token_secret');
                 } else {
                     isset($session->msg) && $session->msg != "" ? $this->flashMessenger()->addErrorMessage($session->msg) : $this->flashMessenger()->addErrorMessage('Video not uploaded..!!');
                 }
             } else {
                 if (isset($session->files) && count($session->files) > 0) {
                     foreach ($session->files as $media_id => $file) {
                         if (file_exists($file)) {
                             $video_id = $vimeo->upload($file);
                             // uploading file on vimeo
                             if ($video_id != false) {
                                 @unlink($file);
                                 // Deleting file from our server
                                 /* Updating database records */
                                 $this->getMediaTable()->updateMedia('media_url', $video_id, $media_id);
                                 $this->getMediaTable()->changeStatus($media_id, '9');
                                 $this->flashMessenger()->addSuccessMessage('Status changed successfully..!!');
                             } else {
                                 isset($session->msg) && $session->msg != "" ? $this->flashMessenger()->addErrorMessage($session->msg) : $this->flashMessenger()->addErrorMessage('Video not uploaded..!!');
                             }
                         } else {
                             $this->flashMessenger()->addErrorMessage('File not found to upload..!!');
                         }
                     }
                 } else {
                     $this->flashMessenger()->addErrorMessage('File not found to upload..!!');
                 }
             }
             /* Clearing session variables */
             $session->offsetUnset('msg');
             $session->offsetUnset('mode');
             $session->offsetUnset('files');
             $session->offsetUnset('old_video');
             $session->offsetUnset('oauth_access_token');
             $session->offsetUnset('oauth_access_token_secret');
             // Redirect to list of media
             return $this->redirect()->toUrl($session->returnUrl);
         } else {
             if (isset($session->mode) && $session->mode == 'delete') {
                 $vimeo = new \phpVimeo($config['Vimeo']['clientId'], $config['Vimeo']['clientSecrate'], $session->oauth_access_token, $session->oauth_access_token_secret);
                 foreach ($session->files as $file) {
                     if ($info = $vimeo->call('vimeo.videos.getInfo', array('video_id' => $file))) {
                         $vimeo->call('vimeo.videos.delete', array('video_id' => $file));
                         $session->offsetUnset('msg');
                         $this->flashMessenger()->addSuccessMessage('Media deleted successfully..!!');
                     } else {
                         isset($session->msg) && $session->msg != "" ? $this->flashMessenger()->addErrorMessage($session->msg) : $this->flashMessenger()->addErrorMessage('Video not found..!!');
                     }
                 }
                 /* Clearing session variables */
                 $session->offsetUnset('mode');
                 $session->offsetUnset('old_video');
                 $session->offsetUnset('files');
                 $session->offsetUnset('oauth_access_token');
                 $session->offsetUnset('oauth_access_token_secret');
                 // Redirect to list of media
                 return $this->redirect()->toUrl($session->returnUrl);
             }
         }
     } else {
         // Redirect to list of media
         return $this->redirect()->toRoute('admin/media');
     }
     exit;
 }
Esempio n. 7
0
 public function getVideoFromVimeo($Vimeo_Id)
 {
     global $OutId, $Title, $OutHost, $Title, $Likes, $Desc, $CreateDate, $Tags, $TagList, $CastList, $Duration, $Brand, $ImgSmall, $Img, $Width, $Height, $MainUserLocation, $Year;
     $vimeo = new phpVimeo(CONSUMER_KEY, CONSUMER_SECRET);
     $vimeo->setToken(TOKEN, TOKEN_SECRET);
     //ВНИМАНИЕ Если API не найдет Video по ID, то скрипт остановится здесь. Как исправить ХЗ?
     $result = $vimeo->call('vimeo.videos.getInfo', array('video_id' => $Vimeo_Id));
     //На случай исправления предыдущего пункта, проверка связи с vimeo
     if ($result->stat != 'ok') {
         echo 'Нет подключения к vimeo, статус (' . $result->stat . ')<br />';
     }
     //В API возможно работать с категориями и тегами видео.
     /*
     Стоит обратить внимание на
     https://developer.vimeo.com/apis/advanced/methods/vimeo.categories.getRelatedTags // Get a list of related tags for a category.
     vimeo.videos.getCollections // Get all the Albums, Channels and Groups a video is a member of.
     */
     //Назначаем переменные
     $OutId = $result->video[0]->id;
     $OutHost = "vimeo";
     //указываем флаг vimeo, для будущего расширения хостов с видео
     $Title = $result->video[0]->title;
     $Likes = $result->video[0]->number_of_likes;
     $Desc = $result->video[0]->description;
     $CreateDate = $result->video[0]->upload_date;
     preg_match("/\\d{4}/", $CreateDate, $Year);
     $Year = $Year[0];
     $Tags = $result->video[0]->tags->tag;
     foreach ($Tags as $key => $value) {
         $Tag = $Tags[$key]->_content;
         $Tag = preg_replace("/[^\\s\\w\\А-яЁе-]/u", "", $Tag);
         // фильтруем теги, только латинские и -
         $TagList .= '<span class="tagInsertTags" data-num="' . $key . '">' . $Tag . '</span>, ';
     }
     $Cast = $result->video[0]->cast->member;
     // [display_name]
     if (!empty($Cast[display_name])) {
         $CastList = $Cast[display_name];
         $UserId = $Cast[id];
     } else {
         foreach ($Cast as $key => $value) {
             $CastList .= $Cast[$key]->display_name . ', ';
             $UserId = $Cast[0]->id;
             //назначаем id первого участника
         }
     }
     //убираем хвосты запятых
     if (preg_match("/, \$/", $TagList)) {
         //$TagList = preg_replace("/, $/", "", $TagList);
         $TagList = chop($TagList, ', \\n');
     }
     if (preg_match("/, \$/", $CastList)) {
         //$CastList = preg_replace("/, $/", "", $CastList);
         $CastList = chop($CastList, ', \\n');
     }
     $Duration = $result->video[0]->duration;
     //в секундах
     $Brand = $result->video[0]->owner->display_name;
     $ImgSmall = $result->video[0]->thumbnails->thumbnail[1]->_content;
     $Img = $result->video[0]->thumbnails->thumbnail[2]->_content;
     $Width = $result->video[0]->width;
     $Height = $result->video[0]->height;
     //Сбор информаци о первом авторе
     $result_user_info = $vimeo->call('vimeo.people.getInfo', array('user_id' => $UserId));
     //определение локации
     $MainUserLocation = $result_user_info->person->location;
 }