mirror of
				https://github.com/iv-org/invidious.git
				synced 2025-11-04 06:31:57 +00:00 
			
		
		
		
	Lazy load (some) images
This commit is contained in:
		@@ -329,7 +329,7 @@ def template_youtube_comments(comments, locale, thin_mode, is_replies = false)
 | 
			
		||||
      html << <<-END_HTML
 | 
			
		||||
      <div class="pure-g" style="width:100%">
 | 
			
		||||
        <div class="channel-profile pure-u-4-24 pure-u-md-2-24">
 | 
			
		||||
          <img style="margin-right:1em;margin-top:1em;width:90%" src="#{author_thumbnail}">
 | 
			
		||||
          <img loading="lazy" style="margin-right:1em;margin-top:1em;width:90%" src="#{author_thumbnail}">
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="pure-u-20-24 pure-u-md-22-24">
 | 
			
		||||
          <p>
 | 
			
		||||
@@ -349,7 +349,7 @@ def template_youtube_comments(comments, locale, thin_mode, is_replies = false)
 | 
			
		||||
          html << <<-END_HTML
 | 
			
		||||
          <div class="pure-g">
 | 
			
		||||
            <div class="pure-u-1 pure-u-md-1-2">
 | 
			
		||||
              <img style="width:100%" src="/ggpht#{URI.parse(attachment["url"].as_s).request_target}">
 | 
			
		||||
              <img loading="lazy" style="width:100%" src="/ggpht#{URI.parse(attachment["url"].as_s).request_target}">
 | 
			
		||||
            </div>
 | 
			
		||||
          </div>
 | 
			
		||||
          END_HTML
 | 
			
		||||
@@ -410,7 +410,7 @@ def template_youtube_comments(comments, locale, thin_mode, is_replies = false)
 | 
			
		||||
        html << <<-END_HTML
 | 
			
		||||
          <span class="creator-heart-container" title="#{translate(locale, "`x` marked it with a ❤", child["creatorHeart"]["creatorName"].as_s)}">
 | 
			
		||||
              <div class="creator-heart">
 | 
			
		||||
                  <img class="creator-heart-background-hearted" src="#{creator_thumbnail}"></img>
 | 
			
		||||
                  <img loading="lazy" class="creator-heart-background-hearted" src="#{creator_thumbnail}"></img>
 | 
			
		||||
                  <div class="creator-heart-small-hearted">
 | 
			
		||||
                      <div class="icon ion-ios-heart creator-heart-small-container"></div>
 | 
			
		||||
                  </div>
 | 
			
		||||
 
 | 
			
		||||
@@ -97,7 +97,7 @@ def template_mix(mix)
 | 
			
		||||
      <li class="pure-menu-item">
 | 
			
		||||
        <a href="/watch?v=#{video["videoId"]}&list=#{mix["mixId"]}">
 | 
			
		||||
          <div class="thumbnail">
 | 
			
		||||
              <img class="thumbnail" src="/vi/#{video["videoId"]}/mqdefault.jpg">
 | 
			
		||||
              <img loading="lazy" class="thumbnail" src="/vi/#{video["videoId"]}/mqdefault.jpg">
 | 
			
		||||
              <p class="length">#{recode_length_seconds(video["lengthSeconds"].as_i)}</p>
 | 
			
		||||
          </div>
 | 
			
		||||
          <p style="width:100%">#{video["title"]}</p>
 | 
			
		||||
 
 | 
			
		||||
@@ -535,7 +535,7 @@ def template_playlist(playlist)
 | 
			
		||||
      <li class="pure-menu-item" id="#{video["videoId"]}">
 | 
			
		||||
        <a href="/watch?v=#{video["videoId"]}&list=#{playlist["playlistId"]}&index=#{video["index"]}">
 | 
			
		||||
          <div class="thumbnail">
 | 
			
		||||
              <img class="thumbnail" src="/vi/#{video["videoId"]}/mqdefault.jpg">
 | 
			
		||||
              <img loading="lazy" class="thumbnail" src="/vi/#{video["videoId"]}/mqdefault.jpg">
 | 
			
		||||
              <p class="length">#{recode_length_seconds(video["lengthSeconds"].as_i)}</p>
 | 
			
		||||
          </div>
 | 
			
		||||
          <p style="width:100%">#{video["title"]}</p>
 | 
			
		||||
 
 | 
			
		||||
@@ -5,7 +5,7 @@
 | 
			
		||||
            <a href="/channel/<%= item.ucid %>">
 | 
			
		||||
                <% if !env.get("preferences").as(Preferences).thin_mode %>
 | 
			
		||||
                    <center>
 | 
			
		||||
                        <img style="width:56.25%" src="/ggpht<%= URI.parse(item.author_thumbnail).request_target.gsub(/=s\d+/, "=s176") %>"/>
 | 
			
		||||
                        <img loading="lazy" style="width:56.25%" src="/ggpht<%= URI.parse(item.author_thumbnail).request_target.gsub(/=s\d+/, "=s176") %>"/>
 | 
			
		||||
                    </center>
 | 
			
		||||
                <% end %>
 | 
			
		||||
                <p dir="auto"><%= HTML.escape(item.author) %></p>
 | 
			
		||||
@@ -23,7 +23,7 @@
 | 
			
		||||
            <a style="width:100%" href="<%= url %>">
 | 
			
		||||
                <% if !env.get("preferences").as(Preferences).thin_mode %>
 | 
			
		||||
                    <div class="thumbnail">
 | 
			
		||||
                        <img class="thumbnail" src="<%= URI.parse(item.thumbnail || "/").request_target %>"/>
 | 
			
		||||
                        <img loading="lazy" class="thumbnail" src="<%= URI.parse(item.thumbnail || "/").request_target %>"/>
 | 
			
		||||
                        <p class="length"><%= number_with_separator(item.video_count) %> videos</p>
 | 
			
		||||
                    </div>
 | 
			
		||||
                <% end %>
 | 
			
		||||
@@ -36,7 +36,7 @@
 | 
			
		||||
            <a href="/watch?v=<%= item.id %>&list=<%= item.rdid %>">
 | 
			
		||||
                <% if !env.get("preferences").as(Preferences).thin_mode %>
 | 
			
		||||
                    <div class="thumbnail">
 | 
			
		||||
                        <img class="thumbnail" src="/vi/<%= item.id %>/mqdefault.jpg"/>
 | 
			
		||||
                        <img loading="lazy" class="thumbnail" src="/vi/<%= item.id %>/mqdefault.jpg"/>
 | 
			
		||||
                        <% if item.length_seconds != 0 %>
 | 
			
		||||
                            <p class="length"><%= recode_length_seconds(item.length_seconds) %></p>
 | 
			
		||||
                        <% end %>
 | 
			
		||||
@@ -51,7 +51,7 @@
 | 
			
		||||
            <a style="width:100%" href="/watch?v=<%= item.id %>&list=<%= item.plid %>&index=<%= item.index %>">
 | 
			
		||||
                <% if !env.get("preferences").as(Preferences).thin_mode %>
 | 
			
		||||
                    <div class="thumbnail">
 | 
			
		||||
                        <img class="thumbnail" src="/vi/<%= item.id %>/mqdefault.jpg"/>
 | 
			
		||||
                        <img loading="lazy" class="thumbnail" src="/vi/<%= item.id %>/mqdefault.jpg"/>
 | 
			
		||||
                        <% if plid = env.get?("remove_playlist_items") %>
 | 
			
		||||
                            <form data-onsubmit="return_false" action="/playlist_ajax?action_remove_video=1&set_video_id=<%= item.index %>&playlist_id=<%= plid %>&referer=<%= env.get("current_page") %>" method="post">
 | 
			
		||||
                                <input type="hidden" name="csrf_token" value="<%= URI.encode_www_form(env.get?("csrf_token").try &.as(String) || "") %>">
 | 
			
		||||
@@ -114,7 +114,7 @@
 | 
			
		||||
            <a style="width:100%" href="/watch?v=<%= item.id %>">
 | 
			
		||||
                <% if !env.get("preferences").as(Preferences).thin_mode %>
 | 
			
		||||
                    <div class="thumbnail">
 | 
			
		||||
                        <img class="thumbnail" src="/vi/<%= item.id %>/mqdefault.jpg"/>
 | 
			
		||||
                        <img loading="lazy" class="thumbnail" src="/vi/<%= item.id %>/mqdefault.jpg"/>
 | 
			
		||||
                        <% if env.get? "show_watched" %>
 | 
			
		||||
                            <form data-onsubmit="return_false" action="/watch_ajax?action_mark_watched=1&id=<%= item.id %>&referer=<%= env.get("current_page") %>" method="post">
 | 
			
		||||
                                <input type="hidden" name="csrf_token" value="<%= URI.encode_www_form(env.get?("csrf_token").try &.as(String) || "") %>">
 | 
			
		||||
 
 | 
			
		||||
@@ -303,7 +303,7 @@ we're going to need to do it here in order to allow for translations.
 | 
			
		||||
                            <a href="/watch?v=<%= rv["id"] %>">
 | 
			
		||||
                                <% if !env.get("preferences").as(Preferences).thin_mode %>
 | 
			
		||||
                                    <div class="thumbnail">
 | 
			
		||||
                                        <img class="thumbnail" src="/vi/<%= rv["id"] %>/mqdefault.jpg">
 | 
			
		||||
                                        <img loading="lazy" class="thumbnail" src="/vi/<%= rv["id"] %>/mqdefault.jpg">
 | 
			
		||||
                                        <p class="length"><%= recode_length_seconds(rv["length_seconds"]?.try &.to_i? || 0) %></p>
 | 
			
		||||
                                    </div>
 | 
			
		||||
                                <% end %>
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user