|
@@ -1,305 +1,82 @@
|
|
|
{% load humanize %}
|
|
|
{% load naturalduration %}
|
|
|
-<div>
|
|
|
- <p>Today <b>{{counts.today}}</b> | This Week <b>{{counts.week}}</b> | This Month <b>{{counts.month}}</b> | This Year <b>{{counts.year}}</b> | All Time <b>{{counts.alltime}}</b></p>
|
|
|
+<div class="row">
|
|
|
+ <div>
|
|
|
+ <p>Today <b>{{counts.today}}</b> | This Week <b>{{counts.week}}</b> | This Month <b>{{counts.month}}</b> | This Year <b>{{counts.year}}</b> | All Time <b>{{counts.alltime}}</b></p>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
<div class="row">
|
|
|
-
|
|
|
+ <div class="col-md">
|
|
|
{% if Track %}
|
|
|
- <div class="ab-pane fade show active" id="latest-listened" role="tabpanel"
|
|
|
- aria-labelledby="latest-listened-tab">
|
|
|
- <div class="table-responsive">
|
|
|
- <table class="table table-striped table-sm">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- <th scope="col">Time</th>
|
|
|
- <th scope="col">Album</th>
|
|
|
- <th scope="col">Track</th>
|
|
|
- <th scope="col">Artist</th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody>
|
|
|
- {{Track|length}}
|
|
|
- {% for scrobble in Track %}
|
|
|
- <tr>
|
|
|
- <td>{% if scrobble.in_progress %}{{scrobble.media_obj.strings.verb}} now | <a class="right" href="{% url "scrobbles:finish" scrobble.uuid %}">Finish</a>{% else %}{{scrobble.timestamp|naturaltime}}{% endif %}</td>
|
|
|
- {% if scrobble.track.album.cover_image %}
|
|
|
- <td><a href="{{scrobble.track.album.get_absolute_url}}"><img src="{{scrobble.track.album.cover_image_small.url}}" width=25 height=25 style="border:1px solid black;" /></aa></td>
|
|
|
- {% else %}
|
|
|
- <td><a href="{{scrobble.track.album.get_absolute_url}}">{{scrobble.track.album.name}}</a></td>
|
|
|
- {% endif %}
|
|
|
- <td><a href="{{scrobble.track.get_absolute_url }}">{{scrobble.track.title}}</a></td>
|
|
|
- <td><a href="{{scrobble.track.artist.get_absolute_url }}">{{scrobble.track.artist.name}}</aa></td>
|
|
|
- </tr>
|
|
|
- {% endfor %}
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+ <h2>Music</h2>
|
|
|
+ {% with scrobbles=Track %}
|
|
|
+ {% include "scrobbles/_scrobble_table.html" %}
|
|
|
+ {% endwith %}
|
|
|
+ {% endif %}
|
|
|
+ </div>
|
|
|
+ <div class="col-md">
|
|
|
+
|
|
|
+ {% if Task %}
|
|
|
+ <h2>Latest tasks</h2>
|
|
|
+ {% with scrobbles=Task %}
|
|
|
+ {% include "scrobbles/_scrobble_table.html" %}
|
|
|
+ {% endwith %}
|
|
|
{% endif %}
|
|
|
|
|
|
{% if Video %}
|
|
|
- <div class="tab-pane fade show" id="latest-watched" role="tabpanel"
|
|
|
- aria-labelledby="latest-watched-tab">
|
|
|
- <div class="table-responsive">
|
|
|
- <table class="table table-striped table-sm">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- <th scope="col">Time</th>
|
|
|
- <th scope="col">Cover</th>
|
|
|
- <th scope="col">Title</th>
|
|
|
- <th scope="col">Series</th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody>
|
|
|
- {% for scrobble in Video %}
|
|
|
- <tr>
|
|
|
- <td>{% if scrobble.in_progress %}{{scrobble.media_obj.strings.verb}} now | <a class="right" href="{% url "scrobbles:finish" scrobble.uuid %}">Finish</a>{% else %}{{scrobble.timestamp|naturaltime}}{% endif %}</td>
|
|
|
- {% if scrobble.video.cover_image %}
|
|
|
- <td><img src="{{scrobble.media_obj.cover_image_medium.url}}" width=25 height=25 style="border:1px solid black;" /></td>
|
|
|
- {% else %}
|
|
|
- <td></td>
|
|
|
- {% endif %}
|
|
|
- <td><a href="{{scrobble.video.get_absolute_url }}">{% if scrobble.video.tv_series%}S{{scrobble.video.season_number}}E{{scrobble.video.episode_number}} -{%endif %} {{scrobble.video.title}}</a></td>
|
|
|
- <td><a href="{{scrobble.video.tv_series.get_absolute_url }}">{% if scrobble.video.tv_series %}{{scrobble.video.tv_series}}</a>{% endif %}
|
|
|
- </td>
|
|
|
- </tr>
|
|
|
- {% endfor %}
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+ <h2>Videos</h2>
|
|
|
+ {% with scrobbles=Video %}
|
|
|
+ {% include "scrobbles/_scrobble_table.html" %}
|
|
|
+ {% endwith %}
|
|
|
+ {% endif %}
|
|
|
+
|
|
|
+ {% if WebPage %}
|
|
|
+ <h4>Web pages</h4>
|
|
|
+ {% with scrobbles=WebPage %}
|
|
|
+ {% include "scrobbles/_scrobble_table.html" %}
|
|
|
+ {% endwith %}
|
|
|
{% endif %}
|
|
|
|
|
|
{% if SportEvent %}
|
|
|
- <div class="tab-pane fade show" id="latest-sports" role="tabpanel" aria-labelledby="latest-sports-tab">
|
|
|
- <h2>Latest Sports</h2>
|
|
|
- <div class="table-responsive">
|
|
|
- <table class="table table-striped table-sm">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- <th scope="col">Date</th>
|
|
|
- <th scope="col">Title</th>
|
|
|
- <th scope="col">Round</th>
|
|
|
- <th scope="col">League</th>
|
|
|
- <th scope="col">Time watched</th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody>
|
|
|
- {% for scrobble in SportEvent %}
|
|
|
- <tr>
|
|
|
- <td>{% if scrobble.in_progress %}{{scrobble.media_obj.strings.verb}} now | <a class="right" href="{% url "scrobbles:finish" scrobble.uuid %}">Finish</a>{% else %}{{scrobble.timestamp|naturaltime}}{% endif %}</td>
|
|
|
- <td>{{scrobble.sport_event.title}}</td>
|
|
|
- <td>{{scrobble.sport_event.round.name}}</td>
|
|
|
- <td>{{scrobble.sport_event.round.season.league}}</td>
|
|
|
- <td>{{scrobble.elapsed_time|natural_duration}}</td>
|
|
|
- </tr>
|
|
|
- {% endfor %}
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+ <h2>Sports</h2>
|
|
|
+ {% with scrobbles=SportEvent %}
|
|
|
+ {% include "scrobbles/_scrobble_table.html" %}
|
|
|
+ {% endwith %}
|
|
|
{% endif %}
|
|
|
|
|
|
{% if PodcastEpisode %}
|
|
|
- <div class="tab-pane fade show" id="latest-podcasted" role="tabpanel"
|
|
|
- aria-labelledby="latest-podcasted-tab">
|
|
|
- <div class="table-responsive">
|
|
|
- <table class="table table-striped table-sm">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- <th scope="col">Date</th>
|
|
|
- <th scope="col">Title</th>
|
|
|
- <th scope="col">Podcast</th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody>
|
|
|
- {% for scrobble in PodcastEpisode %}
|
|
|
- <tr>
|
|
|
- <td>{% if scrobble.in_progress %}{{scrobble.media_obj.strings.verb}} now | <a class="right" href="{% url "scrobbles:finish" scrobble.uuid %}">Finish</a>{% else %}{{scrobble.timestamp|naturaltime}}{% endif %}</td>
|
|
|
- <td>{{scrobble.timestamp|naturaltime}}</td>
|
|
|
- <td>{{scrobble.podcast_episode.title}}</td>
|
|
|
- <td>{{scrobble.podcast_episode.podcast}}</td>
|
|
|
- </tr>
|
|
|
- {% endfor %}
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+ <h2>Latest podcasts</h2>
|
|
|
+ {% with scrobbles=PodcastEpisode %}
|
|
|
+ {% include "scrobbles/_scrobble_table.html" %}
|
|
|
+ {% endwith %}
|
|
|
{% endif %}
|
|
|
|
|
|
{% if VideoGame %}
|
|
|
<h4>Video games</h4>
|
|
|
- <div class="tab-pane fade show" id="latest-videogames" role="tabpanel"
|
|
|
- aria-labelledby="latest-videogames-tab">
|
|
|
- <div class="table-responsive">
|
|
|
- <table class="table table-striped table-sm">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- <th scope="col">Date</th>
|
|
|
- <th scope="col">Cover</th>
|
|
|
- <th scope="col">Title</th>
|
|
|
- <th scope="col">Time played</th>
|
|
|
- <th scope="col">Percent complete</th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody>
|
|
|
- {% for scrobble in VideoGame %}
|
|
|
- <tr>
|
|
|
- <td>{% if scrobble.in_progress %}{{scrobble.media_obj.strings.verb}} now | <a class="right" href="{% url "scrobbles:finish" scrobble.uuid %}">Finish</a>{% else %}{{scrobble.timestamp|naturaltime}}{% endif %}</td>
|
|
|
- {% if scrobble.media_obj.hltb_cover %}
|
|
|
- <td><img src="{{scrobble.media_obj.hltb_cover_medium.url}}" width=25 height=25 style="border:1px solid black;" /></td>
|
|
|
- {% endif %}
|
|
|
- <td><a href="{{scrobble.media_obj.get_absolute_url}}">{{scrobble.media_obj.title}}</a></td>
|
|
|
- <td>{{scrobble.elapsed_time|natural_duration}}</td>
|
|
|
- <td>{{scrobble.percent_played}}</td>
|
|
|
- </tr>
|
|
|
- {% endfor %}
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+ {% with scrobbles=VideoGame %}
|
|
|
+ {% include "scrobbles/_scrobble_table.html" %}
|
|
|
+ {% endwith %}
|
|
|
{% endif %}
|
|
|
|
|
|
-
|
|
|
{% if BoardGame %}
|
|
|
<h4>Board games</h4>
|
|
|
- <div class="tab-pane fade show" id="latest-boardgames" role="tabpanel"
|
|
|
- aria-labelledby="latest-boardgames-tab">
|
|
|
- <div class="table-responsive">
|
|
|
- <table class="table table-striped table-sm">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- <th scope="col">Date</th>
|
|
|
- <th scope="col">Cover</th>
|
|
|
- <th scope="col">Title</th>
|
|
|
- <th scope="col">Time played</th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody>
|
|
|
- {% for scrobble in BoardGame %}
|
|
|
- <tr>
|
|
|
- <td>{% if scrobble.in_progress %}{{scrobble.media_obj.strings.verb}} now | <a class="right" href="{% url "scrobbles:finish" scrobble.uuid %}">Finish</a>{% else %}{{scrobble.timestamp|naturaltime}}{% endif %}</td>
|
|
|
- <td><img src="{{scrobble.media_obj.cover_medium.url}}" width=25 height=25 style="border:1px solid black;" /></td>
|
|
|
- <td><a href="{{scrobble.media_obj.get_absolute_url}}">{{scrobble.media_obj.title}}</a></td>
|
|
|
- <td>{{scrobble.elapsed_time|natural_duration}}</td>
|
|
|
- </tr>
|
|
|
- {% endfor %}
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- {% endif %}
|
|
|
-
|
|
|
- {% if WebPage %}
|
|
|
- <h4>Web pages</h4>
|
|
|
- <div class="tab-pane fade show" id="latest-webpages" role="tabpanel"
|
|
|
- aria-labelledby="latest-webpages-tab">
|
|
|
- <div class="table-responsive">
|
|
|
- <table class="table table-striped table-sm">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- <th scope="col">Date</th>
|
|
|
- <th scope="col">Title</th>
|
|
|
- <th scope="col">Time browsing</th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody>
|
|
|
- {% for scrobble in WebPage %}
|
|
|
- <tr>
|
|
|
- <td>{% if scrobble.in_progress %}{{scrobble.media_obj.strings.verb}} now | <a class="right" href="{% url "scrobbles:finish" scrobble.uuid %}">Finish</a>{% else %}{{scrobble.timestamp|naturaltime}}{% endif %}</td>
|
|
|
- <td><a href="{{scrobble.media_obj.get_absolute_url}}">{{scrobble.media_obj.title}}</a></td>
|
|
|
- <td>{{scrobble.elapsed_time|natural_duration}}</td>
|
|
|
- </tr>
|
|
|
- {% endfor %}
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+ {% with scrobbles=BoardGame %}
|
|
|
+ {% include "scrobbles/_scrobble_table.html" %}
|
|
|
+ {% endwith %}
|
|
|
{% endif %}
|
|
|
|
|
|
{% if Beer %}
|
|
|
<h4>Beers</h4>
|
|
|
- <div class="tab-pane fade show" id="latest-beers" role="tabpanel"
|
|
|
- aria-labelledby="latest-beers-tab">
|
|
|
- <div class="table-responsive">
|
|
|
- <table class="table table-striped table-sm">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- <th scope="col">Date</th>
|
|
|
- <th scope="col">Cover</th>
|
|
|
- <th scope="col">Title</th>
|
|
|
- <th scope="col">Time drinking</th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody>
|
|
|
- {% for scrobble in Beer %}
|
|
|
- <tr>
|
|
|
- <td>{% if scrobble.in_progress %}{{scrobble.media_obj.strings.verb}} now | <a class="right" href="{% url "scrobbles:finish" scrobble.uuid %}">Finish</a>{% else %}{{scrobble.timestamp|naturaltime}}{% endif %}</td>
|
|
|
- <td><img src="{{scrobble.media_obj.cover_medium.url}}" width=25 height=25 style="border:1px solid black;" /></td>
|
|
|
- <td><a href="{{scrobble.media_obj.get_absolute_url}}">{{scrobble.media_obj.title}}</a></td>
|
|
|
- <td>{{scrobble.elapsed_time|natural_duration}}</td>
|
|
|
- </tr>
|
|
|
- {% endfor %}
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+ {% with scrobbles=Beer %}
|
|
|
+ {% include "scrobbles/_scrobble_table.html" %}
|
|
|
+ {% endwith %}
|
|
|
{% endif %}
|
|
|
|
|
|
{% if Book %}
|
|
|
<h4>Books</h4>
|
|
|
- <div class="tab-pane fade show" id="latest-books" role="tabpanel"
|
|
|
- aria-labelledby="latest-books-tab">
|
|
|
- <div class="table-responsive">
|
|
|
- <table class="table table-striped table-sm">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- <th scope="col">Date</th>
|
|
|
- <th scope="col">Cover</th>
|
|
|
- <th scope="col">Title</th>
|
|
|
- <th scope="col">Time reading</th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody>
|
|
|
- {% for scrobble in Book %}
|
|
|
- <tr>
|
|
|
- <td>{% if scrobble.in_progress %}{{scrobble.media_obj.strings.verb}} now | <a class="right" href="{% url "scrobbles:finish" scrobble.uuid %}">Finish</a>{% else %}{{scrobble.timestamp|naturaltime}}{% endif %}</td>
|
|
|
- <td><img src="{scrobble.media_obj.cover_medium.url}}" width=25 height=25 style="border:1px solid black;" /></td>
|
|
|
- <td><a href="{{scrobble.media_obj.get_absolute_url}}">{{scrobble.media_obj.title}}</a></td>
|
|
|
- <td>{{scrobble.elapsed_time|natural_duration}}</td>
|
|
|
- </tr>
|
|
|
- {% endfor %}
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- {% endif %}
|
|
|
-
|
|
|
- {% if Task %}
|
|
|
- <div class="tab-pane fade show" id="latest-tasks" role="tabpanel"
|
|
|
- aria-labelledby="latest-tasks-tab">
|
|
|
- <div class="table-responsive">
|
|
|
- <table class="table table-striped table-sm">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- <th scope="col">Date</th>
|
|
|
- <th scope="col">Title</th>
|
|
|
- <th scope="col">Time doing</th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody>
|
|
|
- {% for scrobble in Task %}
|
|
|
- <tr>
|
|
|
- <td>{% if scrobble.in_progress %}{{scrobble.media_obj.strings.verb}} now | <a class="right" href="{% url "scrobbles:finish" scrobble.uuid %}">Finish</a>{% else %}{{scrobble.timestamp|naturaltime}}{% endif %}</td>
|
|
|
- <td><a href="{{scrobble.media_obj.get_absolute_url}}">{{scrobble.media_obj.title}}</a></td>
|
|
|
- <td>{{scrobble.elapsed_time|natural_duration}}</td>
|
|
|
- </tr>
|
|
|
- {% endfor %}
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+ {% with scrobbles=Book %}
|
|
|
+ {% include "scrobbles/_scrobble_table.html" %}
|
|
|
+ {% endwith %}
|
|
|
{% endif %}
|
|
|
|
|
|
</div>
|