DEV: Remove lazy-yt and replace with lazy-videos (#20722)

- Refactors the old plugin to remove jquery usage
- Adds support for Vimeo videos (default on) and Tiktok (experimental and default off)
This commit is contained in:
Jan Cernik
2023-03-29 12:54:25 -03:00
committed by GitHub
parent 86f5abfa18
commit afe3e36363
41 changed files with 672 additions and 510 deletions

View File

@ -0,0 +1,31 @@
# frozen_string_literal: true
require "onebox"
class Onebox::Engine::TiktokOnebox
include Onebox::Engine
alias_method :default_onebox_to_html, :to_html
def to_html
if SiteSetting.lazy_videos_enabled && SiteSetting.lazy_tiktok_enabled &&
oembed_data.embed_product_id
thumbnail_url = oembed_data.thumbnail_url
escaped_title = ERB::Util.html_escape(oembed_data.title)
<<~HTML
<div class="tiktok-onebox lazy-video-container"
data-video-id="#{oembed_data.embed_product_id}"
data-video-title="#{escaped_title}"
data-provider-name="tiktok">
<a href="#{url}" target="_blank">
<img class="tiktok-thumbnail"
src="#{thumbnail_url}"
title="#{escaped_title}">
</a>
</div>
HTML
else
default_onebox_to_html
end
end
end