2015-08-02 11:59:11 -07:00
|
|
|
{% extends "layout.html" %}
|
|
|
|
{% block body %}
|
|
|
|
<div class="discover load-more">
|
|
|
|
<h2>{{title}}</h2>
|
2020-10-16 10:41:48 -07:00
|
|
|
<div class="row display-flex">
|
2015-08-02 11:59:11 -07:00
|
|
|
{% for entry in entries %}
|
|
|
|
<div class="col-sm-3 col-lg-2 col-xs-6 book">
|
|
|
|
<div class="cover">
|
|
|
|
{% if entry.has_cover is defined %}
|
2019-07-13 11:45:48 -07:00
|
|
|
<a href="{{ url_for('web.show_book', book_id=entry.id) }}" data-toggle="modal" data-target="#bookDetailsModal" data-remote="false">
|
2021-09-25 05:01:17 -07:00
|
|
|
<span class="img" title="{{entry.title}}">
|
|
|
|
<img src="{{ url_for('web.get_cover', book_id=entry.id) }}" alt="{{ entry.title }}" />
|
2020-10-17 07:49:57 -07:00
|
|
|
{% if entry.id in read_book_ids %}<span class="badge read glyphicon glyphicon-ok"></span>{% endif %}
|
|
|
|
</span>
|
2015-08-02 11:59:11 -07:00
|
|
|
</a>
|
|
|
|
{% endif %}
|
|
|
|
</div>
|
|
|
|
<div class="meta">
|
2019-07-13 11:45:48 -07:00
|
|
|
<a href="{{ url_for('web.show_book', book_id=entry.id) }}" data-toggle="modal" data-target="#bookDetailsModal" data-remote="false">
|
2021-07-12 05:17:28 -07:00
|
|
|
<p title="{{ entry.title }}" class="title">{{entry.title|shortentitle}}</p>
|
2018-10-09 04:52:16 -07:00
|
|
|
</a>
|
2018-02-03 22:37:40 -08:00
|
|
|
<p class="author">
|
|
|
|
{% for author in entry.authors %}
|
2019-03-10 11:26:39 -07:00
|
|
|
{% if loop.index > g.config_authors_max and g.config_authors_max != 0 %}
|
2019-02-25 10:27:59 -08:00
|
|
|
{% if not loop.first %}
|
|
|
|
<span class="author-hidden-divider">&</span>
|
|
|
|
{% endif %}
|
2020-07-11 03:09:34 -07:00
|
|
|
<a class="author-name author-hidden" href="{{url_for('web.books_list', data='author', sort_param='new', book_id=author.id) }}">{{author.name.replace('|',',')|shortentitle(30)}}</a>
|
2019-02-25 10:27:59 -08:00
|
|
|
{% if loop.last %}
|
2019-03-10 11:26:39 -07:00
|
|
|
<a href="#" class="author-expand" data-authors-max="{{g.config_authors_max}}" data-collapse-caption="({{_('reduce')}})">(...)</a>
|
2019-02-25 10:27:59 -08:00
|
|
|
{% endif %}
|
|
|
|
{% else %}
|
|
|
|
{% if not loop.first %}
|
|
|
|
<span>&</span>
|
|
|
|
{% endif %}
|
2020-07-11 03:09:34 -07:00
|
|
|
<a class="author-name" href="{{url_for('web.books_list', data='author', sort_param='new', book_id=author.id) }}">{{author.name.replace('|',',')|shortentitle(30)}}</a>
|
2018-02-03 22:37:40 -08:00
|
|
|
{% endif %}
|
|
|
|
{% endfor %}
|
|
|
|
</p>
|
2020-05-27 21:57:59 -07:00
|
|
|
{% if entry.series.__len__() > 0 %}
|
|
|
|
<p class="series">
|
2020-10-10 03:47:49 -07:00
|
|
|
<a href="{{url_for('web.books_list', data='series', sort_param='new', book_id=entry.series[0].id )}}">
|
2020-05-27 21:57:59 -07:00
|
|
|
{{entry.series[0].name}}
|
2020-10-10 03:47:49 -07:00
|
|
|
</a>
|
2020-06-29 23:34:26 -07:00
|
|
|
({{entry.series_index|formatseriesindex}})
|
2020-05-27 21:57:59 -07:00
|
|
|
</p>
|
|
|
|
{% endif %}
|
2015-08-02 11:59:11 -07:00
|
|
|
{% if entry.ratings.__len__() > 0 %}
|
|
|
|
<div class="rating">
|
|
|
|
{% for number in range((entry.ratings[0].rating/2)|int(2)) %}
|
|
|
|
<span class="glyphicon glyphicon-star good"></span>
|
|
|
|
{% if loop.last and loop.index < 5 %}
|
|
|
|
{% for numer in range(5 - loop.index) %}
|
2020-06-03 11:14:07 -07:00
|
|
|
<span class="glyphicon glyphicon-star-empty"></span>
|
2015-08-02 11:59:11 -07:00
|
|
|
{% endfor %}
|
|
|
|
{% endif %}
|
|
|
|
{% endfor %}
|
|
|
|
</div>
|
|
|
|
{% endif %}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{% endfor %}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{% endblock %}
|