sudara/alonetone

View on GitHub
app/views/playlists/show.html.erb

Summary

Maintainability
Test Coverage
<%= content_for :head do %>
  <%= tag(:link, rel: 'preload', href: playlist_cover_url(@playlist, variant: :greenfield), as: 'image')%>
<% end if @playlist.cover_image_present? %>

<%= content_for :open_graph do %>
  <meta property="og:url" content="<%= request.url %>" />
  <meta property="og:type" content="music.album" />
  <meta property="og:title" content="<%= @playlist.title %>" />
  <meta property="og:description" content="An album by <%= @user.name %>" />
  <meta property="music.musician" content="<%= user_home_url(@user) %>">
  <meta property="og:image" content="<%= playlist_cover_url(@playlist, variant: :playlist_cover) %>" />
<% end %>

<div class="page_container" id="playlist_and_track_content_header">
  <%= render partial: 'shared/back_to_artist' %>
</div>
<div class="page_container" id="playlist_and_track_content" data-controller="playlist"
  data-action="resize@window->playlist#resize"
  data-action="playlist-track-playback:hideCover->playlist#hideCover">
  <div class="playlist_sidebar" data-playlist-target="sidebar">
    <%= render 'playlist' %>
  </div>
  <% if @asset %>
    <%= render partial: 'shared/asset' %>
  <% else %>
    <turbo-frame id="playlist-track" target="_top" data-turbo-action="advance">
    <%= content_for(:body_class, 'cover_view') %>
    <div class="track_content" data-playlist-target="content">
      <div class="large_cover_and_credits" data-playlist-target="cover">
        <div class="large_cover">
          <%= playlist_cover(@playlist, variant: :playlist_cover) %>
        </div>
        <% if @playlist.has_any_links? %>
        <div class="playlist_options">
          <%= render partial: 'links' %>
        </div>
        <% end %>
      </div>
      <% if defined?(@old_cover_alert) and authorized?  %>
        <div class="playlist_cover_alert">
          Hey, <%= current_user.name %> this cover is from <strong><%= @playlist.pic.created_at.year %></strong> and is very blurry since we only saved a
          small 200x200px version of it.
          Go <%= link_to 'Upload a higher res one', edit_user_playlist_path(@playlist.user, @playlist),
            class: 'edit_playlist', :title => 'edit this playlist' %> if you can!</a>
        </div>
      <% end %>
      <% if @playlist.credits.present? %>
        <div class="playlist_credits" data-playlist-target="credits">
        <%= markdown(@playlist.credits) %>
      </div>
      <% end %>
    </div>
    </turbo-frame>
  <% end %>
</div>