Fixed Twitch.tv embeds

VOD embeds were broken due to a new URL scheme (legacy support maintained)
Clip embed support has been added
This commit is contained in:
WastedMeerkat 2021-10-19 04:54:20 -05:00 committed by GitHub
parent e6c1f5502b
commit c8c95a3cf0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -422,12 +422,15 @@ Embedding =
text: (_) -> _.title
,
key: 'TwitchTV'
regExp: /^\w+:\/\/(?:www\.|secure\.)?twitch\.tv\/(\w[^#\&\?]*)/
regExp: /^\w+:\/\/(?:www\.|secure\.|clips\.)?twitch\.tv\/(\w[^#\&\?]*)/
el: (a) ->
m = a.dataset.uid.match /(\w+)(?:\/v\/(\d+))?/
url = "//player.twitch.tv/?#{if m[2] then "video=v#{m[2]}" else "channel=#{m[1]}"}&autoplay=false&parent=#{location.hostname}"
if (time = a.dataset.href.match /\bt=(\w+)/)
url += "&time=#{time[1]}"
if a.dataset.href.match(/^\w+:\/\/(www\.|secure\.|clips\.)?twitch\.tv/)[1] is 'clips.'
url = "//clips.twitch.tv/embed?clip=#{a.dataset.uid}&parent=#{location.hostname}"
else
m = a.dataset.uid.match /(\w+)(?:\/(?:v\/)?(\d+))?/
url = "//player.twitch.tv/?#{if m[2] then "video=v#{m[2]}" else "channel=#{m[1]}"}&autoplay=false&parent=#{location.hostname}"
if (time = a.dataset.href.match /\bt=(\w+)/)
url += "&time=#{time[1]}"
el = $.el 'iframe',
src: url
el.setAttribute "allowfullscreen", "true"