diff --git a/app/controllers/videos_controller.rb b/app/controllers/videos_controller.rb index ece3373..f211484 100644 --- a/app/controllers/videos_controller.rb +++ b/app/controllers/videos_controller.rb @@ -34,24 +34,10 @@ class VideosController < ApplicationController result = JSON.parse(result) vc = [] - result.each do |video_channel| - nextPageToken = result['nextPageToken'] rescue "" - while !nextPageToken.nil? - vc << { - "title" => result['items'].first['snippet']['title'], - "description" => result['items'].first['snippet']['description'] , - "publish_date" => result['items'].first['snippet']['publishedAt'], - "img1_src" => result['items'].first['snippet']['thumbnails']['default']['url'], - "img2_src" => result['items'].first['snippet']['thumbnails']['medium']['url'], - "img3_src" => result['items'].first['snippet']['thumbnails']['high']['url'] , - "channel_title" => result['items'].first['snippet']['channelTitle'] - - } - uri = URI('https://www.googleapis.com/youtube/v3/search?part=snippet&channelId=' + channel_id + '&key=AIzaSyCTFdyLgb7GJfrr1JOI3gvVslZFw7td2zQ&pageToken=' + nextPageToken) - result = Net::HTTP.get(uri) # => String - result = JSON.parse(result) - nextPageToken = result['nextPageToken'] rescue "" - end + + nextPageToken = result['nextPageToken'] rescue "" + while !nextPageToken.nil? + url = result['items'].first["id"]["videoId"].present? ? "https://www.youtube.com/embed/#{result['items'].first["id"]["videoId"]}" : "#" vc << { "title" => result['items'].first['snippet']['title'], "description" => result['items'].first['snippet']['description'] , @@ -59,10 +45,27 @@ class VideosController < ApplicationController "img1_src" => result['items'].first['snippet']['thumbnails']['default']['url'], "img2_src" => result['items'].first['snippet']['thumbnails']['medium']['url'], "img3_src" => result['items'].first['snippet']['thumbnails']['high']['url'] , + "video_url" => url, "channel_title" => result['items'].first['snippet']['channelTitle'] - } + uri = URI('https://www.googleapis.com/youtube/v3/search?part=snippet&channelId=' + channel_id + '&key=AIzaSyCTFdyLgb7GJfrr1JOI3gvVslZFw7td2zQ&pageToken=' + nextPageToken) + result = Net::HTTP.get(uri) # => String + result = JSON.parse(result) + nextPageToken = result['nextPageToken'] rescue "" end + url = result['items'].first["id"]["videoId"].present? ? "https://www.youtube.com/embed/#{result['items'].first["id"]["videoId"]}" : "#" + vc << { + "title" => result['items'].first['snippet']['title'], + "description" => result['items'].first['snippet']['description'] , + "publish_date" => result['items'].first['snippet']['publishedAt'], + "img1_src" => result['items'].first['snippet']['thumbnails']['default']['url'], + "img2_src" => result['items'].first['snippet']['thumbnails']['medium']['url'], + "img3_src" => result['items'].first['snippet']['thumbnails']['high']['url'] , + "video_url" => url, + "channel_title" => result['items'].first['snippet']['channelTitle'] + + } + { "video_channels" => vc , "extras" => {