mirror of
https://github.com/codeninjasllc/discourse.git
synced 2024-11-24 08:09:13 -05:00
29 lines
750 B
Ruby
29 lines
750 B
Ruby
# name: lazyYT
|
|
# about: Uses the lazyYT plugin to lazy load Youtube videos
|
|
# version: 0.1
|
|
# authors: Arpit Jalan
|
|
|
|
# javascript
|
|
register_asset "javascripts/lazyYT.js"
|
|
register_asset "javascripts/initializers/lazyYT.js.es6"
|
|
|
|
# stylesheet
|
|
register_asset "stylesheets/lazyYT.css"
|
|
|
|
# freedom patch YouTube Onebox
|
|
class Onebox::Engine::YoutubeOnebox
|
|
include Onebox::Engine
|
|
|
|
def to_html
|
|
if video_id
|
|
# Avoid making HTTP requests if we are able to get the video ID from the
|
|
# URL.
|
|
html = "<div class=\"lazyYT\" data-youtube-id=\"#{video_id}\" data-width=\"480\" data-height=\"270\"></div>"
|
|
else
|
|
# Fall back to making HTTP requests.
|
|
html = raw[:html] || ""
|
|
end
|
|
|
|
rewrite_agnostic(append_params(html))
|
|
end
|
|
end
|