-{% extends "base/base.html" %}
+{% extends 'base.html' %}
{% load i18n %}
-{% load common_tags catalogue_tags %}
-{% load ssify %}
-{% load build_absolute_uri from fnp_common %}
-{% load cache %}
-
-{% block titleextra %}{{ book.pretty_title }}{% endblock %}
-{% block ogimage %}{% if book.cover %}{{ book.cover.url|build_absolute_uri:request }}{% endif %}{% endblock %}
-
-{% block metadescription %}{% book_title book %}. {{ block.super }}{% endblock %}
-
-{% block bodyid %}book-detail{% endblock %}
-
-{% block body %}
- {% get_current_language as LANGUAGE_CODE %}
- {% cache 86400 book_wide book.pk book|status:user LANGUAGE_CODE %}
- {% include 'catalogue/book_wide.html' %}
- {% endcache %}
-
- {% work_list book_children %}
-
- {% spaceless %}
- {% if book.other_versions %}
- <section class="see-also">
- <h1>{% trans "Other versions" %}:</h1>
- {% for rel in book.other_versions %}
- {% cache 86400 book_mini_box rel.pk %}
- {% include 'catalogue/book_mini_box.html' with book=rel %}
- {% endcache %}
- {#% ssi_include 'catalogue_book_mini' pk=rel.pk %#}
+{% load chunks %}
+{% load static %}
+{% load choose_cites from social_tags %}
+{% load catalogue_tags %}
+{% load likes_book from social_tags %}
+
+
+{% block global-content %}
+ <div class="l-container">
+ <div class="l-breadcrumb">
+ <a href="/"><span>{% trans "Strona główna" %}</span></a>
+ <a href="/katalog/lektury/"><span>{% trans "Literatura" %}</span></a>
+ {% for ancestor in book.ancestors %}
+ <a href="{{ ancestor.get_absolute_url }}">{{ ancestor.title }}</a>
{% endfor %}
+ </div>
+ </div>
+
+
+ <main class="l-main page-book">
+ <section class="l-section lay-s-col-rev">
+ {% with first_text=book.get_first_text %}
+ <aside class="l-aside">
+ <figure class="only-l">
+ {% if accessible and first_text %}
+ <a href="{% url 'book_text' first_text.slug %}">
+ {% endif %}
+ <img src="{% if book.cover_clean %}{{ book.cover_clean.url }}{% endif %}" alt="{{ book.pretty_title }}" width="240">
+ {% if accessible and first_text %}
+ </a>
+ {% endif %}
+ </figure>
+
+ {% if book.parent or book.get_children %}
+ <ul class="l-aside__zbiory">
+ {% if book.parent %}
+ {% for b in book.ancestors %}
+ <li>
+ <a href="{{ b.get_absolute_url }}">{{ b.title }}</a>
+ <ul>
+ {% endfor %}
+ {% for b in book.get_siblings %}
+ <li>
+ {% if b == book %}
+ <strong>{{ b.title }}</strong>
+ <ul>
+ {% for c in book.get_children %}
+ <li>
+ <a href="{{ c.get_absolute_url }}">{{ c.title }}</a>
+ </li>
+ {% endfor %}
+ </ul>
+ {% else %}
+ <a href="{{ b.get_absolute_url }}">{{ b.title }}</a>
+ {% endif %}
+ </li>
+ {% endfor %}
+
+ {% for b in book.ancestor.all %}
+ </ul>
+ </li>
+ {% endfor %}
+ {% else %}
+ <li>
+ <strong>{{ book.title }}</strong>
+ <ul>
+ {% for c in book.get_children %}
+ <li>
+ <a href="{{ c.get_absolute_url }}">{{ c.title }}</a>
+ </li>
+ {% endfor %}
+ </ul>
+ </li>
+ {% endif %}
+ </ul>
+ {% endif %}
+
+ <ul class="l-aside__info">
+ <li><span>{% trans "Epoka" %}:</span> {% for tag in book.epochs %}<a href="{{ tag.get_absolute_url }}">{{ tag.name }}</a> {% endfor %}</li>
+ <li><span>{% trans "Rodzaj" %}:</span> {% for tag in book.kinds %}<a href="{{ tag.get_absolute_url }}">{{ tag.name }}</a> {% endfor %}</li>
+ <li><span>{% trans "Gatunek" %}:</span> {% for tag in book.genres %}<a href="{{ tag.get_absolute_url }}">{{ tag.name }}</a> {% endfor %}</li>
+
+ </ul>
+ </aside>
+ <div class="l-content">
+ <header class="l-header">
+ <div class="l-header__content">
+ <p>{% for author in book.authors %}<a href="{{ author.get_absolute_url }}">{{ author.name }}</a>{% if not forloop.last %}, {% endif %}{% endfor %}
+ </p>
+ <h1><a href="{{ book.get_absolute_url }}">{{ book.title }}</a></h1>
+ {% if book.translators.exists %}
+ <p class="l-header__translators">
+ {% for translator in book.translators.all %}
+ {% if forloop.first and translator.name != 'tłumacz nieznany' %}
+ {% trans "tłum." %}
+ {% endif %}
+ <a href="{{ translator.get_absolute_url }}">
+ {{ translator }}</a>{% if not forloop.last %}, {% endif %}
+ {% endfor %}
+ </p>
+ {% endif %}
+ </div>
+
+
+
+ {% likes_book book as likes %}
+ <div class="l-header__actions only-l">
+ {% if likes %}
+ <form method='post' action='{% url 'social_unlike_book' book.slug %}'>
+ {% csrf_token %}
+ <button class="l-button l-button--fav">
+ <img src="{% static '2022/images/faved.svg' %}" alt="{% trans 'Usuń z ulubionych' %}">
+ </button>
+ </form>
+ {% else %}
+ <form method='post' action='{% url 'social_like_book' book.slug %}'>
+ {% csrf_token %}
+ <button class="l-button l-button--fav">
+ <img src="{% static '2022/images/fav.svg' %}" alt="{% trans 'Dodaj do ulubionych' %}">
+ </button>
+ </form>
+ {% endif %}
+ </div>
+ </header>
+ <article class="l-article">
+
+
+
+
+
+ {% if accessible %}
+ <div class="c-media">
+ <div class="lay-row lay-l-block lay-spread">
+ <figure class="only-s book-cover-small">
+ {% if accessible and first_text %}
+ <a href="{% url 'book_text' first_text.slug %}">
+ {% endif %}
+ <img src="{% if book.cover_clean %}{{ book.cover_clean.url }}{% endif %}" alt="{{ book.pretty_title }}">
+ {% if accessible and first_text %}
+ </a>
+ {% endif %}
+ </figure>
+ <div class="lay-col lay-spread lay-grow">
+ <div class="l-header__actions only-s">
+ {% if likes %}
+ <form method='post' action='{% url 'social_unlike_book' book.slug %}'>
+ {% csrf_token %}
+ <button class="l-button l-button--fav">
+ <img src="{% static '2022/images/faved.svg' %}" alt="{% trans 'Usuń z ulubionych' %}">
+ </button>
+ </form>
+ {% else %}
+ <form method='post' action='{% url 'social_like_book' book.slug %}'>
+ {% csrf_token %}
+ <button class="l-button l-button--fav">
+ <img src="{% static '2022/images/fav.svg' %}" alt="{% trans 'Dodaj do ulubionych' %}">
+ </button>
+ </form>
+ {% endif %}
+ </div>
+ <div class="c-media__actions lay-col lay-l-row">
+ <div class="c-media__btn">
+ {% if book.has_mp3_file %}
+ <button class="l-button l-button--media" id="audiobook"><i class="icon icon-audio"></i> {% trans "pobierz audiobook" %}</button>
+ {% endif %}
+ </div>
+ <div class="c-media__btn">
+ <button class="l-button l-button--media" id="ebook"><i class="icon icon-book"></i> {% trans "pobierz książkę" %}</button>
+ </div>
+ <div class="c-media__btn">
+ {% if first_text %}
+ <a href="{% url 'book_text' first_text.slug %}" class="l-button l-button--media l-button--media--full"><i class="icon icon-eye"></i> {% trans "czytaj online" %}</a>
+ {% endif %}
+ </div>
+ </div>
+ </div>
+ </div>
+
+
+
+ {% if book.has_mp3_file %}
+ {% include 'catalogue/snippets/jplayer.html' %}
+ {% else %}
+ {% with ch=book.get_child_audiobook %}
+ {% if ch %}
+ {% include 'catalogue/snippets/jplayer_link.html' with book=ch %}
+ {% endif %}
+ {% endwith %}
+
+ {% endif %}
+
+
+
+
+ <div class="c-media__popup" data-popup="ebook">
+ <div class="c-media__popup__box">
+ <div class="c-media__popup__box__lead">
+ <h2>{% trans "Pobieranie e-booka" %}</h2>
+ <p>{% trans "Wybierz wersję dla siebie" %}:</p>
+ </div>
+ <div class="c-media__popup__box__items">
+ {% if book.pdf_file %}
+ <div class="c-media__popup__box__item">
+ <div>
+ <h3>.pdf</h3>
+ <p>{% trans "Jeśli planujesz wydruk albo lekturę na urządzeniu mobilnym bez dodatkowych aplikacji." %}</p>
+ </div>
+ <div>
+ <a href="{{ book.pdf_url }}" class="l-button l-button--media l-button--media--full">.pdf</a>
+ </div>
+ </div>
+ {% endif %}
+ {% if book.epub_file %}
+ <div class="c-media__popup__box__item">
+ <div>
+ <h3>.epub</h3>
+ <p>{% trans "Uniwersalny format e-booków, obsługiwany przez większość czytników sprzętowych i aplikacji na urządzenia mobilne." %}</p>
+ </div>
+ <div>
+ <a href="{{ book.epub_url }}" class="l-button l-button--media l-button--media--full">.epub</a>
+ </div>
+ </div>
+ {% endif %}
+ {% if book.mobi_file %}
+ <div class="c-media__popup__box__item">
+ <div>
+ <h3>.mobi</h3>
+ <p>{% trans "Natywny format dla czytnika Amazon Kindle." %}</p>
+ </div>
+ <div>
+ <a href="{{ book.mobi_url }}" class="l-button l-button--media l-button--media--full">.mobi</a>
+ </div>
+ </div>
+ {% endif %}
+ {% if book.synchro_file %}
+ <div class="c-media__popup__box__item">
+ <div>
+ <h3>synchrobook (epub3)</h3>
+ <p>{% trans "Książka elektroniczna i audiobook w jednym. Wymaga aplikacji obsługującej format." %}</p>
+ </div>
+ <div>
+ <a href="{{ book.synchro_file }}" class="l-button l-button--media l-button--media--full">synchrobook</a>
+ </div>
+ </div>
+ {% endif %}
+ {% if book.txt_file or book.fb2_file %}
+ <div class="c-media__popup__box__item">
+ <div>
+ <h3>{% trans "inne formaty" %}</h3>
+ <ul>
+ <li><a href="{% url 'custom_pdf_form' book.slug %}">{% trans "Stwórz własny PDF" %}</a></li>
+ {% if book.txt_file %}<li><a href="{{ book.txt_url }}">{% trans "plik tekstowy" %} (.txt)</a></li>{% endif %}
+ {% if book.fb2_file %}<li><a href="{{ book.fb2_url }}">{% trans "FictionBook" %}</a></li>{% endif %}
+ </ul>
+ </div>
+ </div>
+ {% endif %}
+ </div>
+ <button class="c-media__popup__close">
+ <img src="{% static '2022/images/close.svg' %}" alt="{% trans 'Zamknij' %}">
+ </button>
+ </div>
+ </div>
+ {% if book.has_mp3_file %}
+ <div class="c-media__popup" data-popup="audiobook">
+ <div class="c-media__popup__box">
+ <div class="c-media__popup__box__lead">
+ <h2>{% trans "Pobieranie audiobooka" %}</h2>
+ <p>{% trans "Wybierz wersję dla siebie" %}:</p>
+ </div>
+ <div class="c-media__popup__box__items">
+ <div class="c-media__popup__box__item">
+ <div>
+ <h3>.mp3</h3>
+ <p>{% trans "Uniwersalny format, obsługiwany przez wszystkie urządzenia." %}</p>
+ </div>
+ <div>
+ <a href="{% url 'download_zip_mp3' book.slug %}" class="l-button l-button--media l-button--media--full">.mp3</a>
+ </div>
+ </div>
+ {% if book.has_ogg_file %}
+ <div class="c-media__popup__box__item">
+ <div>
+ <h3>OggVorbis</h3>
+ <p>{% trans "Otwarty format plików audio, oferujący wysokiej jakości nagranie." %}</p>
+ </div>
+ <div>
+ <a href="{% url 'download_zip_ogg' book.slug %}" class="l-button l-button--media l-button--media--full">.ogg</a>
+ </div>
+ </div>
+ {% endif %}
+ {% if book.has_daisy_file %}
+ <div class="c-media__popup__box__item">
+ <div>
+ <h3>DAISY</h3>
+ <p>{% translate "Format dla osób z dysfunkcjami czytania." %}</p>
+ </div>
+ <div>
+ {% for dsy in book.media_daisy %}
+ <a href="{{ dsy.file.url }}" class="l-button l-button--media l-button--media--full">DAISY</a>
+ {% endfor %}
+ </div>
+ </div>
+ {% endif %}
+ {% if book.has_audio_epub_file %}
+ <div class="c-media__popup__box__item">
+ <div>
+ <h3>EPUB + audiobook</h3>
+ <p>{% trans "Książka elektroniczna i audiobook w jednym. Wymaga aplikacji obsługującej format." %}</p>
+ </div>
+ <div>
+ {% for epub in book.media_audio_epub %}
+ <a href="{{ epub.file.url }}" class="l-button l-button--media l-button--media--full">EPUB+audio</a>
+ {% endfor %}
+ </div>
+ </div>
+ {% endif %}
+ </div>
+ <button class="c-media__popup__close">
+ <img src="{% static '2022/images/close.svg' %}" alt="{% trans 'Zamknij' %}">
+ </button>
+ </div>
+ </div>
+ {% endif %}
+ </div>
+ {% else %}
+ <div style="margin-bottom: 1.5rem; font-size: 15px; like-height: 150%; color: #808080;">
+ {% chunk 'book-preview-warn' %}
+ </div>
+
+ <div class="l-checkout__box">
+ {% include 'club/donation_step1_form.html' with form=donation_form %}
+ </div>
+ {% endif %}
+
+ <div class="l-article__overlay" data-max-height="327">
+ {% content_warning book %}
+ {{ book.abstract|safe }}
+
+ {% if book.toc %}
+ <div class="toc">
+ <h4>{% trans "Spis treści" %}:</h4>
+ {{ book.toc|safe }}
+ </div>
+ {% endif %}
+ </div>
+ <button class="l-article__read-more" aria-label="{% trans 'Kliknij aby rozwinąć' %}" data-label="{% trans 'Czytaj więcej' %}" data-action="{% trans 'Zwiń tekst' %}">{% trans 'Czytaj więcej' %}</button>
+ </article>
+ {% if accessible %}
+ <div class="c-support">
+ <div>
+ <h2>
+ {% blocktrans trimmed %}
+ Ta książka jest dostępna dla tysięcy dzieciaków dzięki
+ <span>darowiznom</span> od osób takich jak <span>Ty</span>!
+ {% endblocktrans %}
+ </h2>
+ <a href="{% url 'club_join' %}?pk_campaign=layout">{% trans "Dorzuć się!" %}</a>
+ </div>
+ <div class="bg">
+ <!-- img src="{% static '2022/images/dziecko.jpeg' %}" alt="Dorzuć się!" -->
+ </div>
+ </div>
+ {% endif %}
+ </div>
+ {% endwith %}
</section>
- {% endif %}
- <section class="see-also">
- <h2>{% trans "See also" %}:</h2>
- {% related_books book taken=book.other_versions|length %}
- </section>
- {% endspaceless %}
-
- {% with book.related_themes as themes %}
- {% if themes %}
- <h2>{% trans "Themes" %}</h2>
- {% plain_list themes book=book %}
- {% endif %}
- {% endwith %}
-
-
- <h2>{% trans "Information about the work" %}</h2>
- {% for author in book.authors %}
- <div class="white-box">
- <a style="display:block" href="{{ author.get_absolute_url }}">
- {% ssi_include 'catalogue_tag_box' pk=author.pk %}
- </a>
- </div>
- {% endfor %}
+ {% for tag in book.authors %}
+ <section class="l-section">
+ <div class="l-author">
+ {% include 'catalogue/author_box.html' %}
+ {% if forloop.first %}
+ {% choose_cites 3 book=book as cites %}
+ {% if cites %}
+ <div class="row">
+ <div class="l-author__quotes">
+ <div class="l-author__quotes__slider">
+ {% for fragment in cites %}
+ {% include "catalogue/fragment_slider_box.html" %}
+ {% endfor %}
+ </div>
+ </div>
+ </div>
+ {% endif %}
+ {% endif %}
+ </div>
+ </section>
+ {% endfor %}
+
+ <section class="l-section">
+ <div class="l-themes__wrapper">
+ {% with book.related_themes as themes %}
+ {% if themes %}
+ <h2>
+ {% trans "Motywy występujące w tym utworze" %}
+ <a href="/katalog/motyw/"><span>{% trans "Wszystkie motywy" %}</span> <i class="icon icon-arrow-right"></i></a></h2>
+ <div class="l-themes l-article__overlay" data-max-height="80">
+ <ul>
+ {% for item in themes %}
+ <li><a href="{% url 'book_fragments' book.slug item.slug %}">{{ item }} ({{ item.count}})</a></li>
+ {% endfor %}
+ </ul>
+ </div>
+ <button class="l-article__read-more" aria-label="{% trans 'Kliknij aby rozwinąć' %}" data-label="{% trans 'Zobacz więcej' %}" data-action="{% trans 'Zwiń tekst' %}">{% trans 'Zobacz więcej' %}</button>
+
+ {% endif %}
+ {% endwith %}
+ <ul class="links">
+ {% if book.wiki_link %}
+ <li><a href="{{ book.wiki_link }}">{% trans "strona utworu w Wikipedii" %}</a></li>
+ {% endif %}
+ {% if accessible %}
+ <li>
+ <a href="{{ book.xml_url }}">{% trans "źródłowy plik XML" %}</a>
+ </li>
+ <li>
+ <a target="_blank" href="{% url 'poem_from_book' book.slug %}">{% trans "miksuj treść utworu" %}</a>
+ </li>
+ <li>
+ <a target="_blank" href="{{ book.get_extra_info_json.about }}">{% trans "utwór na Platformie Redakcyjnej" %}</a>
+ </li>
+ {% endif %}
+ </ul>
+ </div>
+ </section>
+ </main>
+
+
+
+
+
+ <section class="l-section">
+ <div class="l-books__wrapper">
+ <div class="l-container">
+ <h2>{% trans "Czytaj także" %}</h2>
+ <div class="l-books">
+ {% if book.other_versions %}
+ {% for rel in book.other_versions %}
+ <article class="l-books__item">
+ <figure class="l-books__item__img">
+ <a href="{{ rel.get_absolute_url }}">
+ <img src="{% if rel.cover_clean %}{{ rel.cover_clean.url }}{% endif %}" alt="{{ rel.pretty_title }}">
+ </a>
+ </figure>
+ <h3>
+ {% for author in rel.authors %}
+ <a href="{{ author.get_absolute_url }}">{{ author }}</a>
+ {% endfor %}
+ </h3>
+ <h2><a href="{{ rel.get_absolute_url }}">{{ rel.title }}</a></h2>
+ </article>
+ {% endfor %}
+ {% endif %}
+
+
+ {% related_books_2022 book taken=book.other_versions|length as related_books %}
+ {% for rel in related_books %}
+ <article class="l-books__item">
+ <figure class="l-books__item__img">
+ <a href="{{ rel.get_absolute_url }}">
+ <img src="{% if rel.cover_clean %}{{ rel.cover_clean.url }}{% endif %}" alt="{{ rel.pretty_title }}">
+ </a>
+ </figure>
+ <h3>
+ {% for author in rel.authors %}
+ <a href="{{ author.get_absolute_url }}">{{ author|upper }}</a>
+ {% endfor %}
+ </h3>
+ <h2><a href="{{ rel.get_absolute_url }}">{{ rel.title }}</a></h2>
+ </article>
+ {% endfor %}
+
+ <article class="l-books__item l-books__item--link">
+ <a href="/katalog/kolekcje/">{% trans "i wiele innych książek, wierszy, obrazów, audiobooków…" %}</a>
+ <a href="/katalog/kolekcje/" class="icon-link"><i class="icon icon-all"></i></a>
+ </article>
+
+ </div>
+ </div>
+ </div>
+ </section>
- {% if extra_info.source_url %}
- <div class="white-box">
- <a href="{{ extra_info.source_url }}">{% trans "Source" %}</a> {% trans "of the book" %}
- {% trans "in" %} {% source_name extra_info.source_url %}
- </div>
- {% endif %}
- {% if book|status:user != 'closed' %}
- <div class="white-box"><a href="{{ book.xml_url }}">{% trans "Source XML file" %}</a></div>
- {% endif %}
- {% if extra_info.about and not hide_about %}
- <div class="white-box">
- {% trans "Book on" %} <a href="{{ extra_info.about }}">{% trans "Editor's Platform" %}</a>
- </div>
- {% endif %}
- {% if book.wiki_link %}
- <div class="white-box">
- <a href="{{ book.wiki_link }}">{% trans "Book description on Wikipedia" %}</a>
- </div>
- {% endif %}
- <div class="white-box">
- <a href="{% url 'poem_from_book' book.slug %}">{% trans "Mix this book" %}</a>
- </div>
{% endblock %}