From: Radek Czajka <rczajka@rczajka.pl> Date: Fri, 26 Nov 2021 14:09:44 +0000 (+0100) Subject: Connect date in 2021 template. X-Git-Url: https://git.mdrn.pl/wolnelektury.git/commitdiff_plain/c4e9b9e65d8950259e37be9aa87d6be0304263b6 Connect date in 2021 template. --- diff --git a/src/catalogue/models/book.py b/src/catalogue/models/book.py index eb87f10e7..9f0576c5d 100644 --- a/src/catalogue/models/book.py +++ b/src/catalogue/models/book.py @@ -407,6 +407,10 @@ class Book(models.Model): has_daisy_file.short_description = 'DAISY' has_daisy_file.boolean = True + @property + def media_daisy(self): + return self.get_media('daisy') + def get_audiobooks(self): ogg_files = {} for m in self.media.filter(type='ogg').order_by().iterator(): diff --git a/src/catalogue/templates/catalogue/2021/book_detail.html b/src/catalogue/templates/catalogue/2021/book_detail.html index 65a837a8c..2e4f44181 100644 --- a/src/catalogue/templates/catalogue/2021/book_detail.html +++ b/src/catalogue/templates/catalogue/2021/book_detail.html @@ -147,36 +147,43 @@ <div class="c-media"> <div class="c-media__actions"> <div class="c-media__btn"> - <button class="l-button l-button--media" id="audiobook">pobierz audiobook</button> - <ul> - <li>mp3</li> - <li>ogg</li> - <li>DAISY</li> - </ul> + {% if book.has_mp3_file %} + <button class="l-button l-button--media" id="audiobook">pobierz audiobook</button> + <ul> + <li><a href="{% url 'download_zip_mp3' book.slug %}">mp3</a></li> + {% if book.has_ogg_file %} + <li><a href="{% url 'download_zip_ogg' book.slug %}">ogg</a></li> + {% endif %} + {% for dsy in book.media_daisy %} + <li><a href="{{ dsy.file.url }}">DAISY</a></li> + {% endfor %} + </ul> + {% endif %} </div> <div class="c-media__btn"> <button class="l-button l-button--media" id="ebook">pobierz ksiÄ Å¼kÄ</button> <ul> - <li>PDF</li> - <li>epub</li> - <li>mobi</li> + {% if book.pdf_file %}<li><a href="{{ book.pdf_url }}">PDF</a</li>{% endif %} + {% if book.epub_file %}<li><a href="{{ book.epub_url }}">epub</a></li>{% endif %} + {% if book.mobi_file %}<li><a href="{{ book.mobi_url }}">mobi</a></li>{% endif %} </ul> </div> <div class="c-media__btn"> - {#% if book.get_first_text %#} - <a href="{#% url 'book_text' book.get_first_text.slug %#}"> - <div class="l-button l-button--media l-button--media--full"> - czytaj - </div> - </a> - <!-- ul> - <li>PDF</li> - <li>epub</li> - <li>mobi</li> - </ul--> - {#% endif %#} + {% if book.get_first_text %} + <a href="{% url 'book_text' book.get_first_text.slug %}"> + <div class="l-button l-button--media l-button--media--full"> + czytaj + </div> + </a> + <!-- ul> + <li>PDF</li> + <li>epub</li> + <li>mobi</li> + </ul--> + {% endif %} </div> </div> + {% if book.has_mp3_file %} <div class="c-media__player"> <h2>sÅuchaj audiobooka w naszym serwisie</h2> <div class="c-player"> @@ -189,6 +196,7 @@ </div> </div> </div> + {% endif %} <div class="c-media__popup" data-popup="ebook"> <div class="c-media__popup__box"> <div class="c-media__popup__box__lead"> @@ -196,48 +204,56 @@ <p>Wybierz wersjÄ dla siebie:</p> </div> <div class="c-media__popup__box__items"> - <div class="c-media__popup__box__item"> - <div> - <h3>.pdf</h3> - <p>JeÅli planujesz wydruk albo lekturÄ na urzÄ dzeniu mobilnym bez dodatkowych aplikacji.</p> + {% if book.pdf_file %} + <div class="c-media__popup__box__item"> + <div> + <h3>.pdf</h3> + <p>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> - <div> - <a href="#" class="l-button l-button--media l-button--media--full">.pdf</a> - </div> - </div> - <div class="c-media__popup__box__item"> - <div> - <h3>.epub</h3> - <p>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="#" class="l-button l-button--media l-button--media--full">.epub</a> - </div> - </div> - <div class="c-media__popup__box__item"> - <div> - <h3>.mobi</h3> - <p>Natywny format dla czytnika Amazon Kindle.</p> - </div> - <div> - <a href="#" class="l-button l-button--media l-button--media--full">.mobi</a> + {% endif %} + {% if book.epub_file %} + <div class="c-media__popup__box__item"> + <div> + <h3>.epub</h3> + <p>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> - </div> - <div class="c-media__popup__box__item"> - <div> - <h3>synchrobook (epub3)</h3> - <p>KsiÄ Å¼ka elektroniczna i audiobook w jednym. Wymaga aplikacji obsÅugujÄ cej format (np. ..., ..., ...).</p> + {% endif %} + {% if book.mobi_file %} + <div class="c-media__popup__box__item"> + <div> + <h3>.mobi</h3> + <p>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> - <div> - <a href="#" class="l-button l-button--media l-button--media--full">synchrobook</a> + {% endif %} + {% if book.synchrobook_file %} + <div class="c-media__popup__box__item"> + <div> + <h3>synchrobook (epub3)</h3> + <p>KsiÄ Å¼ka elektroniczna i audiobook w jednym. Wymaga aplikacji obsÅugujÄ cej format (np. ..., ..., ...).</p> + </div> + <div> + <a href="{{ book.synchrobook_url }}" class="l-button l-button--media l-button--media--full">synchrobook</a> + </div> </div> - </div> + {% endif %} <div class="c-media__popup__box__item"> <div> <h3>inne formaty</h3> <ul> - <li><a href="#">plik tekstowy (.txt)</a></li> - <li><a href="#">FictionBook</a></li> + <li><a href="{{ book.txt_url }}">plik tekstowy (.txt)</a></li> + <li><a href="{{ book.fb2_url }}">FictionBook</a></li> </ul> </div> </div> @@ -247,55 +263,65 @@ </button> </div> </div> - <div class="c-media__popup" data-popup="audiobook"> - <div class="c-media__popup__box"> - <div class="c-media__popup__box__lead"> - <h2>Pobieranie audiobooka</h2> - <p>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>Uniwersalny format, obsÅugiwany przez wszystkie urzÄ dzenia.</p> - </div> - <div> - <a href="#" class="l-button l-button--media l-button--media--full">.mp3</a> - </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>Pobieranie audiobooka</h2> + <p>Wybierz wersjÄ dla siebie:</p> </div> - <div class="c-media__popup__box__item"> - <div> - <h3>OggVorbis</h3> - <p>Otwarty format plików audio, oferujÄ cy nagranie w najwyższej jakoÅci dźwiÄkowej.</p> + <div class="c-media__popup__box__items"> + <div class="c-media__popup__box__item"> + <div> + <h3>.mp3</h3> + <p>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> - <div> - <a href="#" class="l-button l-button--media l-button--media--full">.ogg</a> + {% if book.has_ogg_file %} + <div class="c-media__popup__box__item"> + <div> + <h3>OggVorbis</h3> + <p>Otwarty format plików audio, oferujÄ cy nagranie w najwyższej jakoÅci dźwiÄkowej.</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> - </div> - <div class="c-media__popup__box__item"> - <div> - <h3>DAISY</h3> - <p>Format dla osób z dysfunkcjami czytania.</p> + {% endif %} + {% if book.has_daisy_file %} + <div class="c-media__popup__box__item"> + <div> + <h3>DAISY</h3> + <p>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> - <div> - <a href="#" class="l-button l-button--media l-button--media--full">DAISY</a> - </div> - </div> - <div class="c-media__popup__box__item"> - <div> - <h3>synchrobook</h3> - <p>KsiÄ Å¼ka elektroniczna i audiobook w jednym. Wymaga aplikacji obsÅugujÄ cej format.</p> - </div> - <div> - <a href="#" class="l-button l-button--media l-button--media--full">synchrobook</a> + {% endif %} + {% if book.synchrobook_file %} + <div class="c-media__popup__box__item"> + <div> + <h3>synchrobook</h3> + <p>KsiÄ Å¼ka elektroniczna i audiobook w jednym. Wymaga aplikacji obsÅugujÄ cej format.</p> + </div> + <div> + <a href="{{ book.synchrobook_url }}" class="l-button l-button--media l-button--media--full">synchrobook</a> + </div> </div> + {% endif %} </div> + <button class="c-media__popup__close"> + <img src="{% static '2021/images/close.svg' %}" alt="Zamknij"> + </button> </div> - <button class="c-media__popup__close"> - <img src="{% static '2021/images/close.svg' %}" alt="Zamknij"> - </button> </div> - </div> + {% endif %} </div> {{ book.abstract|safe }}