コード例 #1
0
ファイル: FeedHandler.php プロジェクト: tubepress/tubepress
 private function _urlBuildingPageSearch(tubepress_api_url_UrlInterface $url, tubepress_api_url_QueryInterface $query, $requestedMode)
 {
     $url->addPath(tubepress_youtube3_impl_ApiUtility::PATH_SEARCH);
     switch ($requestedMode) {
         case tubepress_youtube3_api_Constants::GALLERYSOURCE_YOUTUBE_RELATED:
             $videoId = $this->_context->get(tubepress_youtube3_api_Constants::OPTION_YOUTUBE_RELATED_VALUE);
             $query->set(tubepress_youtube3_impl_ApiUtility::QUERY_SEARCH_RELATED, $videoId);
             break;
         case tubepress_youtube3_api_Constants::GALLERYSOURCE_YOUTUBE_SEARCH:
             $tags = $this->_context->get(tubepress_youtube3_api_Constants::OPTION_YOUTUBE_TAG_VALUE);
             $tags = str_replace(array('&#8216', '&#8217', '′', '&#34', '“', '”', '″'), '"', $tags);
             $query->set(tubepress_youtube3_impl_ApiUtility::QUERY_SEARCH_Q, $tags);
             break;
         default:
             break;
     }
     $query->set(tubepress_youtube3_impl_ApiUtility::QUERY_SEARCH_TYPE, 'video')->set(tubepress_youtube3_impl_ApiUtility::QUERY_SEARCH_SYNDICATED, 'true');
     if ($this->_context->get(tubepress_youtube3_api_Constants::OPTION_EMBEDDABLE_ONLY)) {
         $query->set(tubepress_youtube3_impl_ApiUtility::QUERY_SEARCH_EMBEDDABLE, 'true');
     }
     $restrictToUser = $this->_context->get(tubepress_api_options_Names::SEARCH_ONLY_USER);
     if ($restrictToUser) {
         $userChannelId = $this->_urlBuildingConvertUserOrChannelToChannelId($restrictToUser);
         $query->set(tubepress_youtube3_impl_ApiUtility::QUERY_SEARCH_CHANNEL_ID, $userChannelId);
     }
     switch ($this->_context->get(tubepress_youtube3_api_Constants::OPTION_FILTER)) {
         case tubepress_youtube3_api_Constants::SAFESEARCH_STRICT:
             $query->set(tubepress_youtube3_impl_ApiUtility::QUERY_SEARCH_SAFESEARCH, 'strict');
             break;
         case tubepress_youtube3_api_Constants::SAFESEARCH_MODERATE:
             $query->set(tubepress_youtube3_impl_ApiUtility::QUERY_SEARCH_SAFESEARCH, 'moderate');
             break;
         default:
             $query->set(tubepress_youtube3_impl_ApiUtility::QUERY_SEARCH_SAFESEARCH, 'none');
     }
     $this->_urlBuildingPageSearchOrderBy($url);
 }
コード例 #2
0
ファイル: FeedHandler.php プロジェクト: tubepress/tubepress
 private function _startGalleryUrl($mode, tubepress_api_url_UrlInterface $url)
 {
     switch ($mode) {
         case tubepress_dailymotion_api_Constants::GALLERY_SOURCE_USER:
             $userValue = $this->_context->get(tubepress_dailymotion_api_Constants::OPTION_USER_VALUE);
             $url->addPath('user')->addPath($userValue)->addPath('videos');
             return;
         case tubepress_dailymotion_api_Constants::GALLERY_SOURCE_PLAYLIST:
             $playlistValue = $this->_context->get(tubepress_dailymotion_api_Constants::OPTION_PLAYLIST_VALUE);
             $url->addPath('playlist')->addPath($playlistValue)->addPath('videos');
             return;
         case tubepress_dailymotion_api_Constants::GALLERY_SOURCE_LIST:
             $ids = $this->_context->get(tubepress_dailymotion_api_Constants::OPTION_LIST_VALUE);
             $ids = $this->_implodeCsv($ids);
             $url->addPath('videos')->getQuery()->set('ids', $ids);
             return;
         case tubepress_dailymotion_api_Constants::GALLERY_SOURCE_FAVORITES:
             $favoritesValue = $this->_context->get(tubepress_dailymotion_api_Constants::OPTION_FAVORITES_VALUE);
             $url->addPath('user')->addPath($favoritesValue)->addPath('favorites');
             return;
         case tubepress_dailymotion_api_Constants::GALLERY_SOURCE_FEATURED:
             $featureValue = $this->_context->get(tubepress_dailymotion_api_Constants::OPTION_FEATURED_VALUE);
             $url->addPath('user')->addPath($featureValue)->addPath('features');
             return;
         case tubepress_dailymotion_api_Constants::GALLERY_SOURCE_SEARCH:
             $searchValue = $this->_context->get(tubepress_dailymotion_api_Constants::OPTION_SEARCH_VALUE);
             $url->addPath('videos')->getQuery()->set('search', $searchValue);
             return;
         case tubepress_dailymotion_api_Constants::GALLERY_SOURCE_RELATED:
             $relatedValue = $this->_context->get(tubepress_dailymotion_api_Constants::OPTION_RELATED_VALUE);
             $url->addPath('video')->addPath($relatedValue)->addPath('related');
             return;
         case tubepress_dailymotion_api_Constants::GALLERY_SOURCE_TAG:
             $tagValue = $this->_context->get(tubepress_dailymotion_api_Constants::OPTION_TAG_VALUE);
             $tagValue = $this->_implodeCsv($tagValue);
             $url->addPath('videos')->getQuery()->set('tags', $tagValue);
             return;
         case tubepress_dailymotion_api_Constants::GALLERY_SOURCE_SUBSCRIPTIONS:
             $subValue = $this->_context->get(tubepress_dailymotion_api_Constants::OPTION_SUBSCRIPTIONS_VALUE);
             $url->addPath('user')->addPath($subValue)->addPath('subscriptions');
             return;
     }
     throw new InvalidArgumentException(sprintf('Unknown Dailymotion gallery source: %s', $mode));
 }
コード例 #3
0
ファイル: FeedHandler.php プロジェクト: tubepress/tubepress
 private function _startGalleryUrl($mode, tubepress_api_url_UrlInterface $url)
 {
     switch ($mode) {
         case tubepress_vimeo3_api_Constants::GALLERYSOURCE_VIMEO_ALBUM:
             $albumId = $this->_context->get(tubepress_vimeo3_api_Constants::OPTION_VIMEO_ALBUM_VALUE);
             $url->addPath('albums')->addPath($albumId)->addPath(self::$_PATH_SEGMENT_VIDEOS);
             return;
         case tubepress_vimeo3_api_Constants::GALLERYSOURCE_VIMEO_APPEARS_IN:
             $userId = $this->_context->get(tubepress_vimeo3_api_Constants::OPTION_VIMEO_APPEARS_IN_VALUE);
             $url->addPath(self::$_PATH_SEGMENT_USERS)->addPath($userId)->addPath('appearances');
             return;
         case tubepress_vimeo3_api_Constants::GALLERYSOURCE_VIMEO_CATEGORY:
             $categoryId = $this->_context->get(tubepress_vimeo3_api_Constants::OPTION_VIMEO_CATEGORY_VALUE);
             $url->addPath('categories')->addPath($categoryId)->addPath(self::$_PATH_SEGMENT_VIDEOS);
             return;
         case tubepress_vimeo3_api_Constants::GALLERYSOURCE_VIMEO_CHANNEL:
             $channelId = $this->_context->get(tubepress_vimeo3_api_Constants::OPTION_VIMEO_CHANNEL_VALUE);
             $url->addPath('channels')->addPath($channelId)->addPath(self::$_PATH_SEGMENT_VIDEOS);
             return;
         case tubepress_vimeo3_api_Constants::GALLERYSOURCE_VIMEO_GROUP:
             $groupId = $this->_context->get(tubepress_vimeo3_api_Constants::OPTION_VIMEO_GROUP_VALUE);
             $url->addPath('groups')->addPath($groupId)->addPath(self::$_PATH_SEGMENT_VIDEOS);
             return;
         case tubepress_vimeo3_api_Constants::GALLERYSOURCE_VIMEO_SEARCH:
             $filter = $this->_context->get(tubepress_api_options_Names::SEARCH_ONLY_USER);
             $query = $this->_context->get(tubepress_vimeo3_api_Constants::OPTION_VIMEO_SEARCH_VALUE);
             if ($filter) {
                 $newMode = tubepress_vimeo3_api_Constants::GALLERYSOURCE_VIMEO_UPLOADEDBY;
                 $this->_context->setEphemeralOption(tubepress_api_options_Names::GALLERY_SOURCE, $newMode);
                 $this->_context->setEphemeralOption(tubepress_vimeo3_api_Constants::OPTION_VIMEO_UPLOADEDBY_VALUE, $filter);
                 $this->_startGalleryUrl($newMode, $url);
             } else {
                 $url->addPath(self::$_PATH_SEGMENT_VIDEOS);
             }
             $url->getQuery()->set('query', $query);
             return;
         case tubepress_vimeo3_api_Constants::GALLERYSOURCE_VIMEO_TAG:
             $tag = $this->_context->get(tubepress_vimeo3_api_Constants::OPTION_VIMEO_TAG_VALUE);
             $url->addPath('tags')->addPath($tag)->addPath(self::$_PATH_SEGMENT_VIDEOS);
             return;
         case tubepress_vimeo3_api_Constants::GALLERYSOURCE_VIMEO_LIKES:
             $userId = $this->_context->get(tubepress_vimeo3_api_Constants::OPTION_VIMEO_LIKES_VALUE);
             $url->addPath(self::$_PATH_SEGMENT_USERS)->addPath($userId)->addPath('likes');
             return;
         case tubepress_vimeo3_api_Constants::GALLERYSOURCE_VIMEO_UPLOADEDBY:
             $userId = $this->_context->get(tubepress_vimeo3_api_Constants::OPTION_VIMEO_UPLOADEDBY_VALUE);
             $url->addPath(self::$_PATH_SEGMENT_USERS)->addPath($userId)->addPath(self::$_PATH_SEGMENT_VIDEOS);
             return;
     }
     throw new InvalidArgumentException(sprintf('Unknown Vimeo gallery source: %s', $mode));
 }