From 7b54220529725bbf2b0303ae0dfd0fed3c4e4324 Mon Sep 17 00:00:00 2001 From: Arnaud Levy <contact@arnaudlevy.com> Date: Wed, 11 Oct 2023 10:30:04 +0200 Subject: [PATCH] done --- app/services/video/provider/youtube.rb | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/app/services/video/provider/youtube.rb b/app/services/video/provider/youtube.rb index a47933fbf..4b1d94949 100644 --- a/app/services/video/provider/youtube.rb +++ b/app/services/video/provider/youtube.rb @@ -2,8 +2,8 @@ class Video::Provider::Youtube < Video::Provider::Default DOMAINS = ['youtube.com', 'youtu.be'] def identifier - video_url.include?('youtu.be') ? video_url.split('youtu.be/').last - : video_url.split('v=').last + video_url.include?('youtu.be') ? identifier_path + : identifier_param end # https://img.youtube.com/vi/XEEUOiTgJL0/hqdefault.jpg @@ -15,4 +15,16 @@ class Video::Provider::Youtube < Video::Provider::Default def iframe_url "https://www.youtube.com/embed/#{identifier}" end + + protected + + def identifier_path + video_url.split('youtu.be/').last + end + + def identifier_param + uri = URI(video_url) + params = CGI::parse(uri.query) + params['v'].first + end end -- GitLab