app/views/assets/_asset.html.erb
<div class="asset_top">
<div class="asset_top_row">
<div class="drag_handle"><div class="inner"></div></div>
<div class="play_button button" data-normal-playback-target="play">
<%= link_to user_track_path(asset.user.login, asset.permalink, format: :mp3),
class: 'play_link stitches_play', title: 'play' do %>
<svg data-normal-playback-target="playButton" class="playIconSymbol" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 600 600">
<path d="M187,489.21l-.31-378.41a.77.77,0,0,1,1.15-.67l150.53,86.75L515.71,299.08a.76.76,0,0,1,0,1.31L188.14,489.87A.76.76,0,0,1,187,489.21Z" />
</svg>
<% end %>
</div>
<div class="title" data-normal-playback-target="title" data-action="click->normal-playback#toggleDetails">
<div class="title_left_column">
<div class="title_left_column_top">
<a href="<%= user_track_path(asset.user, asset.permalink) %>" class="track_link" title="<%= asset.name %>">
<%= track_name_for(asset,200) %> <span style="font-size:12px;"><%= '🔒'.html_safe unless asset.published? %></span>
</a>
</div>
<div class="title_left_column_bottom">
<span class="artist_container">
<%= link_to asset.user.name, user_home_path(asset.user), class: 'artist', title: "#{asset.user.name} on alonetone " %>
</span>
</div>
</div>
<div class="title_right_column">
<div class='counter'></div>
<time class="stitches_time" data-normal-playback-target="time" data-playlist-update-target="time"><%= asset.length %></time>
</div>
</div>
</div>
<% if defined? favorite %>
<div class="asset_favorited" data-action="click->normal-playback#toggleDetails">
<i class="icon_favorite">
<%== render file: svg_path('svg/icon_favorite.svg') %>
</i>
<span class="favorited_by">
<%= link_to favorite.user.name, user_home_path(favorite.user), class: 'artist' %>
</span><span class="favorited_when"><%= local_time_ago(favorite.created_at) %></span>
</div>
<% end %>
</div>
<div data-normal-playback-target="seekBarContainer" class="stitches_seek seekbar">
<div data-normal-playback-target="seekBarLoaded" class="loaded" style="width: 0%">
</div>
<div data-normal-playback-target="seekBarPlayed" class="played" style="width: 0%"></div>
</div>
<div class="tracks_reveal" data-normal-playback-target="details">
<% if logged_in? %>
<%= button_to toggle_favorite_path(asset_id: asset.id), class: 'add_to_favorites',
method: :put, data: {
controller: 'favorite',
action: 'favorite#toggle',
'favorite-id-value': asset.id
} do %>
<%== render file: svg_path('svg/animation_heart.svg') %>
<% end %>
<% end %>
<div class="tracks_reveal_top">
<div class='alonetoner'><%= user_image_link(asset.user, variant: :small_avatar) %></div>
<div class="description">
<div class='user_description'>
<%= awesome_truncate(strip_tags(asset.description), 250) %>
</div>
<div class="created">Uploaded <%= local_time_ago(asset.created_at) %></div>
<div class="below_description">
<%= link_to user_track_path(asset.user, asset.permalink), title: "#{asset.name} by #{asset.user.name}" do %>
<span>View Track Detail Page…</span>
<span class="narrow-column-alt">Track Details…</span>
<% end unless @single_track %>
<div class="plays"><%= asset.listens_count %> <i class="icon_plays">
<%== render file: svg_path('svg/icon_play_inverted.svg') %>
</i>
</div>
<div class="favorites"><%= asset.favorites_count %>
<i class="icon_favs">
<%== render file: svg_path('svg/icon_favorite_inverted.svg') %>
</i>
</div>
</div>
</div>
</div>
<% if can_comment_on?(asset) %>
<div class="comment_track">
<%= render partial: 'assets/comment', locals: { asset: asset }%>
</div>
<% end %>
<div class="track_links">
<%= link_to edit_user_track_path(asset.user, asset), class: 'show_to_admin_or_owner edit_in_box', title: 'edit this track' do %>
<span>edit</span>
<% end %>
<% if !asset.private? %>
<%= link_to 'mark as spam', spam_admin_asset_path(asset.id), class: 'show_to_admin_or_owner edit_in_box', data: {confirm: 'Are you sure you want to mark this as SPAM? This will make it harder for the user who posted this to post again'}, method: :put%>
<% else %>
<%= link_to 'unspam', unspam_admin_asset_path(asset.id), class: 'show_to_admin_or_owner edit_in_box', data: {confirm: 'This will publish this track!'}, method: :put%>
<% end %>
</div>
</div>