diff options
Diffstat (limited to 'src/client/players/Youtube.hx')
| -rw-r--r-- | src/client/players/Youtube.hx | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/client/players/Youtube.hx b/src/client/players/Youtube.hx index 10064b6..e63a095 100644 --- a/src/client/players/Youtube.hx +++ b/src/client/players/Youtube.hx @@ -14,9 +14,9 @@ using StringTools; class Youtube implements IPlayer { - final matchId = ~/v=([A-z0-9_-]+)/; - final matchShort = ~/youtu.be\/([A-z0-9_-]+)/; - final matchEmbed = ~/embed\/([A-z0-9_-]+)/; + final matchId = ~/youtube\.com.*v=([A-z0-9_-]+)/; + final matchShort = ~/youtu\.be\/([A-z0-9_-]+)/; + final matchEmbed = ~/youtube\.com\/embed\/([A-z0-9_-]+)/; final matchPlaylist = ~/youtube\.com.*list=([A-z0-9_-]+)/; final videosUrl = "https://www.googleapis.com/youtube/v3/videos"; final playlistUrl = "https://www.googleapis.com/youtube/v3/playlistItems"; @@ -41,16 +41,16 @@ class Youtube implements IPlayer { } function extractVideoId(url:String):String { - if (url.contains("youtu.be/")) { - matchShort.match(url); + if (matchId.match(url)) { + return matchId.matched(1); + } + if (matchShort.match(url)) { return matchShort.matched(1); } - if (url.contains("youtube.com/embed/")) { - matchEmbed.match(url); + if (matchEmbed.match(url)) { return matchEmbed.matched(1); } - if (!matchId.match(url)) return ""; - return matchId.matched(1); + return ""; } function extractPlaylistId(url:String):String { |
