|
@@ -125,20 +125,6 @@
|
|
</a>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
- {% if playlist.is_user_owned %}
|
|
|
|
- <div class="btn-group me-2">
|
|
|
|
- <button type="button" class="btn btn-danger">
|
|
|
|
- <i class="fas fa-dumpster-fire"></i>
|
|
|
|
- </button>
|
|
|
|
- </div>
|
|
|
|
-
|
|
|
|
- <div class="btn-group me-2">
|
|
|
|
- <button type="button" class="btn btn-primary">
|
|
|
|
- <i class="fas fa-edit"></i>
|
|
|
|
- </button>
|
|
|
|
- </div>
|
|
|
|
- {% endif %}
|
|
|
|
-
|
|
|
|
<div class="btn-group me-2">
|
|
<div class="btn-group me-2">
|
|
|
|
|
|
<button class="btn btn-warning" type="button" hx-get="{% url 'mark_playlist_as' playlist.playlist_id 'favorite' %}" hx-target="#playlist-fav">
|
|
<button class="btn btn-warning" type="button" hx-get="{% url 'mark_playlist_as' playlist.playlist_id 'favorite' %}" hx-target="#playlist-fav">
|
|
@@ -153,6 +139,12 @@
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
+ <div class="btn-group me-2">
|
|
|
|
+ <a href="{% url 'view_playlist_settings' playlist.playlist_id %}" class="btn btn-primary">
|
|
|
|
+ <i class="fas fa-cog"></i>
|
|
|
|
+ </a>
|
|
|
|
+ </div>
|
|
|
|
+
|
|
|
|
|
|
<div class="btn-group me-2">
|
|
<div class="btn-group me-2">
|
|
<button type="button" class="btn btn-light" onclick="row1_hide()">Manage</button>
|
|
<button type="button" class="btn btn-light" onclick="row1_hide()">Manage</button>
|
|
@@ -181,7 +173,7 @@
|
|
Move
|
|
Move
|
|
</button> -->
|
|
</button> -->
|
|
<button class="btn btn-success" id="move-copy-vids-btn" type="button" data-bs-toggle="collapse" data-bs-target="#moveItemsToCollapse" aria-expanded="false" aria-controls="moveItemsToCollapse">
|
|
<button class="btn btn-success" id="move-copy-vids-btn" type="button" data-bs-toggle="collapse" data-bs-target="#moveItemsToCollapse" aria-expanded="false" aria-controls="moveItemsToCollapse">
|
|
- Move/Copy Videos
|
|
|
|
|
|
+ {% if playlist.is_user_owned %}Move/{% endif %}Copy Videos
|
|
</button>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
@@ -193,11 +185,13 @@
|
|
</button>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
-->
|
|
-->
|
|
|
|
+ {% if playlist.is_user_owned %}
|
|
<div class="btn-group me-2">
|
|
<div class="btn-group me-2">
|
|
<button hx-post="{% url 'delete_videos' playlist.playlist_id 'confirm' %}" hx-include="[id='video-checkboxes']" hx-target="#delete-videos-confirm-box" type="button" id="delete-vids-btn" class="btn btn-danger" data-bs-toggle="collapse" data-bs-target="#deleteItemsCollapse" aria-expanded="false" aria-controls="deleteItemsCollapse">
|
|
<button hx-post="{% url 'delete_videos' playlist.playlist_id 'confirm' %}" hx-include="[id='video-checkboxes']" hx-target="#delete-videos-confirm-box" type="button" id="delete-vids-btn" class="btn btn-danger" data-bs-toggle="collapse" data-bs-target="#deleteItemsCollapse" aria-expanded="false" aria-controls="deleteItemsCollapse">
|
|
- Delete Selected
|
|
|
|
|
|
+ Delete Selected Videos
|
|
</button>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
|
|
+ {% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
@@ -219,13 +213,15 @@
|
|
<div class="collapse border-danger" id="moveItemsToCollapse">
|
|
<div class="collapse border-danger" id="moveItemsToCollapse">
|
|
<div class="card card-body bg-dark text-white-50">
|
|
<div class="card card-body bg-dark text-white-50">
|
|
|
|
|
|
- <h5>Move or Copy videos to another playlist!</h5>
|
|
|
|
|
|
+ <h5>{% if playlist.is_user_owned %}Move or {% endif %}Copy videos to another playlist!</h5>
|
|
|
|
|
|
<div class="d-flex justify-content-start">
|
|
<div class="d-flex justify-content-start">
|
|
- <input class="form-control w-50 bg-dark text-white border border-secondary" placeholder="Enter playlist ID here">
|
|
|
|
|
|
+ <input class="form-control w-50 bg-dark text-white border border-secondary" placeholder="Enter playlist ID or comma seperated list of playlist IDs here">
|
|
|
|
+ {% if playlist.is_user_owned %}
|
|
<div class="btn-group ms-2">
|
|
<div class="btn-group ms-2">
|
|
<button type="button" class="btn btn-info" id="select-all-btn">Move!</button>
|
|
<button type="button" class="btn btn-info" id="select-all-btn">Move!</button>
|
|
</div>
|
|
</div>
|
|
|
|
+ {% endif %}
|
|
<div class="btn-group ms-2">
|
|
<div class="btn-group ms-2">
|
|
<button type="button" class="btn btn-info" id="select-all-btn">Copy!</button>
|
|
<button type="button" class="btn btn-info" id="select-all-btn">Copy!</button>
|
|
</div>
|
|
</div>
|
|
@@ -303,22 +299,48 @@
|
|
<img src="{% if video.thumbnail_url %}{{ video.thumbnail_url }}{% else %}https://i.ytimg.com/vi/9219YrnwDXE/maxresdefault.jpg{% endif %}" class="img-fluid" alt="">
|
|
<img src="{% if video.thumbnail_url %}{{ video.thumbnail_url }}{% else %}https://i.ytimg.com/vi/9219YrnwDXE/maxresdefault.jpg{% endif %}" class="img-fluid" alt="">
|
|
</div>
|
|
</div>
|
|
<div class="ms-4">
|
|
<div class="ms-4">
|
|
- {{ video.video_position }}.
|
|
|
|
- <a class="link-dark" href="https://www.youtube.com/watch?v={{ video.video_id }}&list={{ video.playlist.playlist_id }}" target="_blank">
|
|
|
|
- {{ video.name|truncatewords:"16" }}
|
|
|
|
- </a> by {{ video.channel_name }} <br>
|
|
|
|
- <span class="badge bg-secondary">{{ video.duration }}</span>
|
|
|
|
- {% if video.has_cc %}<span class="badge bg-secondary">CC</span>{% endif %}
|
|
|
|
- {% if video.published_at %}<span class="badge bg-secondary">{{ video.published_at }}</span>{% endif %}
|
|
|
|
- {% if video.view_count %}<span class="badge bg-info">{{ video.view_count|intword|intcomma }} views</span>{% endif %}
|
|
|
|
-
|
|
|
|
- {% if video.is_duplicate %}<span class="badge bg-primary">duplicate</span>{% endif %}
|
|
|
|
- {% if video.is_unavailable_on_yt and video.was_deleted_on_yt %}<span class="badge bg-dark">UNAVAILABLE</span>{% endif %}
|
|
|
|
- {% if video.video_details_modified %}<span class="badge bg-danger">UPDATED - {% if video.was_deleted_on_yt %}WENT PRIVATE/DELETED{% else %}NEWLY ADDED{% endif %}</span>{% endif %}<br>
|
|
|
|
- <br>
|
|
|
|
|
|
+
|
|
|
|
+ {% if video.is_unavailable_on_yt and video.was_deleted_on_yt %}
|
|
|
|
+ {{ video.video_position }}.
|
|
|
|
+ <a class="link-dark" href="https://www.youtube.com/watch?v={{ video.video_id }}&list={{ video.playlist.playlist_id }}" target="_blank">
|
|
|
|
+ {{ video.name|truncatewords:"16" }}
|
|
|
|
+ </a>
|
|
|
|
+ <br>
|
|
|
|
+ <span class="badge bg-dark">VIDEO UNAVAILABLE</span>
|
|
|
|
+ {% if video.video_details_modified %}<span class="badge bg-danger">UPDATED - {% if video.was_deleted_on_yt %}WENT PRIVATE/DELETED{% else %}NEWLY ADDED{% endif %}</span>{% endif %}
|
|
|
|
+ <br><br>
|
|
|
|
+ {% else %}
|
|
|
|
+ {{ video.video_position }}.
|
|
|
|
+ <a class="link-dark" href="https://www.youtube.com/watch?v={{ video.video_id }}&list={{ video.playlist.playlist_id }}" target="_blank">
|
|
|
|
+ {{ video.name|truncatewords:"16" }}
|
|
|
|
+ </a> by {{ video.channel_name }} <br>
|
|
|
|
+ <span class="badge bg-secondary">{{ video.duration }}</span>
|
|
|
|
+ {% if video.has_cc %}<span class="badge bg-secondary">CC</span>{% endif %}
|
|
|
|
+ {% if video.published_at %}<span class="badge bg-secondary">{{ video.published_at }}</span>{% endif %}
|
|
|
|
+ {% if video.view_count %}<span class="badge bg-info">{{ video.view_count|intword|intcomma }} views</span>{% endif %}
|
|
|
|
+
|
|
|
|
+ {% if video.is_duplicate %}<span class="badge bg-primary">duplicate</span>{% endif %}
|
|
|
|
+ {% if video.video_details_modified %}<span class="badge bg-danger">UPDATED - {% if video.was_deleted_on_yt %}WENT PRIVATE/DELETED{% else %}NEWLY ADDED{% endif %}</span>{% endif %}<br>
|
|
|
|
+ <br>
|
|
|
|
+ {% endif %}
|
|
|
|
+
|
|
|
|
+
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="ms-5">
|
|
<div class="ms-5">
|
|
|
|
+ {% if video.is_unavailable_on_yt and video.was_deleted_on_yt %}
|
|
|
|
+ <button class="btn btn-sm btn-warning mb-1" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasForVideoNotes" aria-controls="offcanvasBottom" hx-get="{% url 'video_notes' playlist.playlist_id video.video_id %}" hx-trigger="click" hx-target="#video-notes">Notes</button>
|
|
|
|
+ <button class="btn btn-sm btn-dark mb-1" type="button" hx-get="{% url 'mark_video_favorite' playlist.playlist_id video.video_id %}" hx-target="#video-{{ forloop.counter }}-fav">
|
|
|
|
+ <div id="video-{{ forloop.counter }}-fav">
|
|
|
|
+ {% if video.is_favorite %}
|
|
|
|
+ <i class="fas fa-heart"></i>
|
|
|
|
+ {% else %}
|
|
|
|
+ <i class="far fa-heart"></i>
|
|
|
|
+ {% endif %}
|
|
|
|
+ </div>
|
|
|
|
+ </button>
|
|
|
|
+ {% else %}
|
|
|
|
+
|
|
<a class="btn btn-sm btn-info mb-1" type="button" href="https://www.youtube.com/watch?v={{ video.video_id }}" class="btn btn-info me-1" target="_blank"><i class="fas fa-external-link-alt" aria-hidden="true"></i></a>
|
|
<a class="btn btn-sm btn-info mb-1" type="button" href="https://www.youtube.com/watch?v={{ video.video_id }}" class="btn btn-info me-1" target="_blank"><i class="fas fa-external-link-alt" aria-hidden="true"></i></a>
|
|
<input class="form-control me-1 visually-hidden" id="video-{{ video.video_id }}" value="https://www.youtube.com/watch?v={{ video.video_id }}">
|
|
<input class="form-control me-1 visually-hidden" id="video-{{ video.video_id }}" value="https://www.youtube.com/watch?v={{ video.video_id }}">
|
|
<button class="copy-btn btn btn-sm btn-success mb-1" data-clipboard-target="#video-{{ video.video_id }}">
|
|
<button class="copy-btn btn btn-sm btn-success mb-1" data-clipboard-target="#video-{{ video.video_id }}">
|
|
@@ -342,6 +364,7 @@
|
|
</button>
|
|
</button>
|
|
|
|
|
|
{% endif %}
|
|
{% endif %}
|
|
|
|
+ {% endif %}
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
{% endif %}
|
|
|
|
|
|
@@ -349,9 +372,9 @@
|
|
|
|
|
|
{% endfor %}
|
|
{% endfor %}
|
|
|
|
|
|
- {% endif %}
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
+ {% endif %}
|
|
|
|
|
|
|
|
|
|
</div>
|
|
</div>
|