2015-08-02 20:59:11 +02:00
|
|
|
{% extends "layout.html" %}
|
|
|
|
{% block body %}
|
2017-01-28 20:16:40 +01:00
|
|
|
{% if g.user.show_detail_random() %}
|
2019-01-08 21:58:57 +01:00
|
|
|
<div class="discover random-books">
|
2018-12-27 10:53:19 +01:00
|
|
|
<h2 class="random-books">{{_('Discover (Random Books)')}}</h2>
|
2015-08-02 20:59:11 +02:00
|
|
|
<div class="row">
|
2019-03-10 08:31:10 +01:00
|
|
|
web. {% for entry in random %}
|
2017-10-08 10:41:43 +02:00
|
|
|
<div class="col-sm-3 col-lg-2 col-xs-6 book" id="books_rand">
|
2015-08-02 20:59:11 +02:00
|
|
|
<div class="cover">
|
2019-02-06 21:52:24 +01:00
|
|
|
<a href="{{ url_for('web.show_book', book_id=entry.id) }}" data-toggle="modal" data-target="#bookDetailsModal" data-remote="false">
|
2017-01-21 17:04:36 +01:00
|
|
|
{% if entry.has_cover %}
|
2019-02-06 21:52:24 +01:00
|
|
|
<img src="{{ url_for('web.get_cover', book_id=entry.id) }}" alt="{{ entry.title }}" />
|
2017-01-21 17:04:36 +01:00
|
|
|
{% else %}
|
2017-07-29 05:01:31 +02:00
|
|
|
<img src="{{ url_for('static', filename='generic_cover.jpg') }}" alt="{{ entry.title }}" />
|
2017-01-21 17:04:36 +01:00
|
|
|
{% endif %}
|
2015-08-02 20:59:11 +02:00
|
|
|
</a>
|
|
|
|
</div>
|
|
|
|
<div class="meta">
|
2019-02-06 21:52:24 +01:00
|
|
|
<a href="{{ url_for('web.show_book', book_id=entry.id) }}" data-toggle="modal" data-target="#bookDetailsModal" data-remote="false">
|
2018-10-09 13:52:16 +02:00
|
|
|
<p class="title">{{entry.title|shortentitle}}</p>
|
|
|
|
</a>
|
2018-09-02 11:48:58 +02:00
|
|
|
<p class="author">
|
|
|
|
{% for author in entry.authors %}
|
2019-03-10 19:10:24 +01:00
|
|
|
{% if loop.index > g.config_authors_max and g.config_authors_max != 0 %}
|
2019-02-25 19:27:59 +01:00
|
|
|
{% if not loop.first %}
|
|
|
|
<span class="author-hidden-divider">&</span>
|
|
|
|
{% endif %}
|
2019-03-16 21:14:01 +01:00
|
|
|
<a class="author-name author-hidden" href="{{url_for('web.books_list', data='author', sort='new', book_id=author.id) }}">{{author.name.replace('|',',')|shortentitle(30)}}</a>
|
2019-02-25 19:27:59 +01:00
|
|
|
{% if loop.last %}
|
2019-03-10 19:10:24 +01:00
|
|
|
<a href="#" class="author-expand" data-authors-max="{{g.config_authors_max}}" data-collapse-caption="({{_('reduce')}})">(...)</a>
|
2019-02-25 19:27:59 +01:00
|
|
|
{% endif %}
|
|
|
|
{% else %}
|
|
|
|
{% if not loop.first %}
|
|
|
|
<span>&</span>
|
|
|
|
{% endif %}
|
2019-03-16 21:14:01 +01:00
|
|
|
<a class="author-name" href="{{url_for('web.books_list', data='author', sort='new', book_id=author.id) }}">{{author.name.replace('|',',')|shortentitle(30)}}</a>
|
2018-09-02 11:48:58 +02:00
|
|
|
{% endif %}
|
|
|
|
{% endfor %}
|
|
|
|
</p>
|
2015-08-02 20:59:11 +02: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) %}
|
|
|
|
<span class="glyphicon glyphicon-star"></span>
|
|
|
|
{% endfor %}
|
|
|
|
{% endif %}
|
|
|
|
{% endfor %}
|
|
|
|
</div>
|
|
|
|
{% endif %}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{% endfor %}
|
|
|
|
</div>
|
|
|
|
</div>
|
2016-03-26 16:12:29 +01:00
|
|
|
{% endif %}
|
2015-08-02 20:59:11 +02:00
|
|
|
<div class="discover load-more">
|
2019-01-11 08:36:28 +01:00
|
|
|
<h2 class="{{title}}">{{_(title)}}</h2>
|
2019-03-08 16:29:12 +01:00
|
|
|
<div class="filterheader hidden-xs hidden-sm">
|
2019-03-16 15:48:09 +01:00
|
|
|
<a id="new" class="btn btn-primary" href="{{url_for('web.books_list', data=page, sort='new')}}"><span class="glyphicon glyphicon-sort-by-order"></span></a>
|
|
|
|
<a id="old" class="btn btn-primary" href="{{url_for('web.books_list', data=page, sort='old')}}"><span class="glyphicon glyphicon-sort-by-order-alt"></span></a>
|
|
|
|
<a id="asc" class="btn btn-primary" href="{{url_for('web.books_list', data=page, sort='abc')}}"><span class="glyphicon glyphicon-font"></span><span class="glyphicon glyphicon-sort-by-alphabet"></span></a>
|
|
|
|
<a id="desc" class="btn btn-primary" href="{{url_for('web.books_list', data=page, sort='zyx')}}"><span class="glyphicon glyphicon-font"></span><span class="glyphicon glyphicon-sort-by-alphabet-alt"></span></a>
|
|
|
|
<a id="pub_new" class="btn btn-primary" href="{{url_for('web.books_list', data=page, sort='pubnew')}}"><span class="glyphicon glyphicon-calendar"></span><span class="glyphicon glyphicon-sort-by-order"></span></a>
|
|
|
|
<a id="pub_old" class="btn btn-primary" href="{{url_for('web.books_list', data=page, sort='pubold')}}"><span class="glyphicon glyphicon-calendar"></span><span class="glyphicon glyphicon-sort-by-order-alt"></span></a>
|
2019-03-08 16:29:12 +01:00
|
|
|
<div class="btn-group character" role="group">
|
2019-03-16 15:48:09 +01:00
|
|
|
<a id="no_shelf" class="btn btn-primary" href="{{url_for('web.books_list', data=page, sort='pubold')}}"><span class="glyphicon glyphicon-list"></span><b>?</b></a>
|
2019-03-08 16:29:12 +01:00
|
|
|
<div id="all" class="btn btn-primary">{{_('All')}}</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
2015-08-02 20:59:11 +02:00
|
|
|
<div class="row">
|
2017-03-07 19:10:17 +01:00
|
|
|
{% if entries[0] %}
|
2015-08-02 20:59:11 +02:00
|
|
|
{% for entry in entries %}
|
2017-10-08 10:41:43 +02:00
|
|
|
<div class="col-sm-3 col-lg-2 col-xs-6 book" id="books">
|
2015-08-02 20:59:11 +02:00
|
|
|
<div class="cover">
|
2019-02-06 21:52:24 +01:00
|
|
|
<a href="{{ url_for('web.show_book', book_id=entry.id) }}" data-toggle="modal" data-target="#bookDetailsModal" data-remote="false">
|
2017-01-21 17:04:36 +01:00
|
|
|
{% if entry.has_cover %}
|
2019-02-06 21:52:24 +01:00
|
|
|
<img src="{{ url_for('web.get_cover', book_id=entry.id) }}" alt="{{ entry.title }}"/>
|
2017-01-21 17:04:36 +01:00
|
|
|
{% else %}
|
2017-07-29 05:01:31 +02:00
|
|
|
<img src="{{ url_for('static', filename='generic_cover.jpg') }}" alt="{{ entry.title }}" />
|
2017-01-21 17:04:36 +01:00
|
|
|
{% endif %}
|
2015-08-02 20:59:11 +02:00
|
|
|
</a>
|
|
|
|
</div>
|
|
|
|
<div class="meta">
|
2019-02-06 21:52:24 +01:00
|
|
|
<a href="{{ url_for('web.show_book', book_id=entry.id) }}" data-toggle="modal" data-target="#bookDetailsModal" data-remote="false">
|
2018-10-09 13:52:16 +02:00
|
|
|
<p class="title">{{entry.title|shortentitle}}</p>
|
|
|
|
</a>
|
2016-04-15 23:35:18 +02:00
|
|
|
<p class="author">
|
|
|
|
{% for author in entry.authors %}
|
2019-03-10 19:10:24 +01:00
|
|
|
{% if loop.index > g.config_authors_max and g.config_authors_max != 0 %}
|
2019-02-25 19:27:59 +01:00
|
|
|
{% if not loop.first %}
|
|
|
|
<span class="author-hidden-divider">&</span>
|
|
|
|
{% endif %}
|
2019-03-16 21:14:01 +01:00
|
|
|
<a class="author-name author-hidden" href="{{url_for('web.books_list', data='author', book_id=author.id, sort='new') }}">{{author.name.replace('|',',')|shortentitle(30)}}</a>
|
2019-02-25 19:27:59 +01:00
|
|
|
{% if loop.last %}
|
2019-03-10 19:10:24 +01:00
|
|
|
<a href="#" class="author-expand" data-authors-max="{{g.config_authors_max}}" data-collapse-caption="({{_('reduce')}})">(...)</a>
|
2019-02-25 19:27:59 +01:00
|
|
|
{% endif %}
|
|
|
|
{% else %}
|
|
|
|
{% if not loop.first %}
|
|
|
|
<span>&</span>
|
|
|
|
{% endif %}
|
2019-03-16 21:14:01 +01:00
|
|
|
<a class="author-name" href="{{url_for('web.books_list', data='author', book_id=author.id, sort='new') }}">{{author.name.replace('|',',')|shortentitle(30)}}</a>
|
2016-04-15 23:35:18 +02:00
|
|
|
{% endif %}
|
|
|
|
{% endfor %}
|
2019-01-27 11:14:38 +01:00
|
|
|
{% for format in entry.data %}
|
|
|
|
{% if format.format|lower == 'mp3' %}
|
|
|
|
<span class="glyphicon glyphicon-music"></span>
|
|
|
|
{% endif %}
|
|
|
|
{%endfor%}
|
2016-04-15 23:35:18 +02:00
|
|
|
</p>
|
2015-08-02 20:59:11 +02: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) %}
|
|
|
|
<span class="glyphicon glyphicon-star"></span>
|
|
|
|
{% endfor %}
|
|
|
|
{% endif %}
|
|
|
|
{% endfor %}
|
|
|
|
</div>
|
|
|
|
{% endif %}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{% endfor %}
|
2017-03-07 19:10:17 +01:00
|
|
|
{% endif %}
|
2015-08-02 20:59:11 +02:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{% endblock %}
|