Fixes
[wolnelektury.git] / src / catalogue / templates / catalogue / book_text.html
1 {% extends "catalogue/viewer_base.html" %}
2 {% load i18n l10n %}
3 {% load catalogue_tags %}
4 {% load chunks %}
5 {% load thumbnail %}
6 {% load annoy_banners from annoy %}
7
8
9 {% block title %}{{ book.pretty_title }}{% endblock %}
10
11
12 {% block extrahead %}
13    <link rel="stylesheet" href="https://unpkg.com/leaflet@1.7.1/dist/leaflet.css"
14    integrity="sha512-xodZBNTC5n17Xt2atTPuE1HxjVMSvLVW9ocqUKLsCC5CXdbqCmblAshOMAS6/keqq/sMZMZ19scR4PsZChSR7A=="
15          crossorigin=""/>
16     <script src="https://unpkg.com/leaflet@1.7.1/dist/leaflet.js"
17    integrity="sha512-XQoYMqMTK8LvdxXYG3nZ448hOEQiglfqkJs1NOQV44cWnUrBc8PkAOcXy20w0vlaXaVUearIOBhiXZ5V3ynxwA=="
18    crossorigin=""></script>
19 {% endblock %}
20
21 {% block menu %}
22   <li>
23     <a href="{{ book.get_absolute_url }}" id="menu-book" data-box="book-short">
24       <span class="label">{% trans "Click to download" %}:</span>
25       <img src="{% if book.cover_thumb %}{% thumbnail book.cover_thumb '240x332' as thumb %}{{ thumb.url }}{% empty %}{{ book.cover_thumb.url }}{% endthumbnail %}{% endif %}"
26            width="120" height="166"
27            alt="{{ book.pretty_title }}"
28            title="{{ book.pretty_title }}">
29     </a>
30   </li>
31
32   {% if book.other_versions.exists %}
33     <li id="menu-other">
34       <a href="#" data-box="other">
35         <span class="label">{% trans "Other versions" %}</span>
36       </a>
37     </li>
38   {% endif %}
39
40   <li id="menu-toc">
41     <a href="#" data-box="wltoc">
42       <span class="label">{% trans "Table of contents" %}</span>
43     </a>
44   </li>
45
46   <li id="menu-themes">
47     <a href="#" data-box="themes">
48       <span class="label">{% trans "Themes" %}</span>
49     </a>
50   </li>
51
52   <li id="menu-nota_red">
53     <a href="#" data-box="nota_red">
54       <span class="label">{% trans "Edit. note" %}</span>
55     </a>
56   </li>
57
58   <li id="menu-info">
59     <a href="#info" data-box="info">
60       <span class="label">{% trans "Infobox" %}</span>
61     </a>
62   </li>
63
64   <a href="#" class="settings-switch" id="settings-line-numbers"
65      data-setting="always-hide-line-numbers"><span>{% trans "Numbering" %}</span></a>
66   <a href="#" class="settings-switch" id="settings-themes"
67      data-setting="always-hide-themes"><span>{% trans "Themes" %}</span></a>
68   <a href="#" class="settings-switch" id="settings-annotations"
69      data-setting="no-annotations"><span>{% trans "Footnotes" %}</span></a>
70   <a href="#" class="settings-switch" id="settings-references"
71      data-setting="no-references"><span>{% trans "References" %}</span></a>
72
73 {% endblock menu %}
74
75
76 {% block big-pane %}
77
78   <article id="main-text">
79     {% with next=book.get_next_text prev=book.get_prev_text %}
80       {% if next %}
81         <a style="float:right; padding: 1em;" href="{% url 'book_text' next.slug %}">{{ next.title }}&nbsp;&rarr;</a>
82       {% endif %}
83       {% if prev %}
84         <a style="display:inline-block;padding: 1em;" href="{% url 'book_text' prev.slug %}">&larr;&nbsp;{{ prev.title }}</a>
85       {% endif %}
86       <div style="text-align:center; margin-top:1em;">
87       {% content_warning book %}
88       </div>
89       <div style="clear:both;"></div>
90       {{ book_text|safe }}
91     {% endwith %}
92   </article>
93
94
95
96   <article id="other-text">
97     <a class="other-text-close" href="#">{% trans "Close" %}</a>
98     <div id="other-text-waiter">{% trans "Please wait..." %}</div>
99     <div id="other-text-body" style="display: none;"></div>
100   </article>
101
102   <div id="reference-box">
103     <div id="reference-map"></div>
104     <a id="reference-close" href="#">x</a>
105     <div id="reference-images">
106     </div>
107     <a id="reference-link" target="_blank"></a>
108   </div>
109
110
111
112 {% endblock big-pane %}
113
114 {% block footer %}
115   <div id="wltoc" class="box">
116     {% if book.parent %}
117       {% for b in book.ancestor.all %}
118         {% if forloop.counter > 1 %}
119           <li>
120         {% endif %}
121         <a href="{% if b.html_file %}{% url 'book_text' b.slug %}{% else %}{{ b.get_absolute_url }}{% endif %}">{{ b.title }}</a>
122         <ol>
123       {% endfor %}
124         {% for b in book.get_siblings %}
125           <li>
126             {% if b == book %}
127               <strong>{{ b.title }}</strong>
128               <div id="heretoc"></div>
129             {% else %}
130               <a href="{% url 'book_text' b.get_first_text.slug %}">{{ b.title }}</a>
131             {% endif %}
132           </li>
133         {% endfor %}
134
135         {% for b in book.ancestor.all %}
136         </ol>
137         {% if not forloop.counter.last %}
138           </li>
139         {% endif %}
140         {% endfor %}
141     {% else %}
142       <strong>{{ book.title }}</strong>
143       <div id="heretoc"></div>
144       <ol>
145         {% for c in book.get_children %}
146           <li><a href="{% url 'book_text' c.get_first_text.slug %}">{{ c.title }}</a></li>
147         {% endfor %}
148       </ol>
149     {% endif %}
150   </div>
151
152   <div id="info" class="box">
153       {% book_info book %}
154   </div>
155
156   {% if book.other_versions.exists %}
157     <div class="box" id="other">
158       <h2>{% trans "Other versions of the book" %}</h2>
159       <a class="other-text-close" href="#">{% trans "Close the other version" %}</a>
160       <ul>
161         {% spaceless %}
162           {% for other_version in book.other_versions %}
163             <li>
164               <a class="display-other"
165                  data-other="{{ other_version.html_url }}"
166                  href="{% url 'book_text' other_version.slug %}">
167                 {{ other_version.mini_box_nolink }}
168               </a>
169             </li>
170           {% endfor %}
171         {% endspaceless %}
172       </ul>
173     </div>
174   {% endif %}
175
176   <div class="box" id="book-short">
177     {% include 'catalogue/book_short.html' %}
178   </div>
179
180   <div id="annoy-stubs">
181     {% annoy_banners 'book-text-intermission' %}
182
183     {% for insert in inserts %}
184       {% include 'annoy/dynamic_insert.html' %}
185     {% endfor %}
186   </div>
187
188   {% localize off %}
189   <script type="application/json" id="interesting-references">
190    {
191        {% for ref in book.references %}
192        {% if ref.entity.is_interesting %}
193        "{{ ref.entity.uri }}": {
194            {% if ref.entity.lat and ref.entity.lon %}
195            "location": [{{ ref.entity.lat }}, {{ ref.entity.lon }}],
196            {% endif %}
197            "images": {{ ref.entity.images|safe }},
198            "label": "{{ ref.entity.label }}",
199            "description": "{{ ref.entity.description }}",
200            "wikipedia_link": "{{ ref.entity.wikipedia_link }}"
201        }{% if not forloop.last %},{% endif %}
202        {% endif %}
203        {% endfor %}
204   }
205   </script>
206   {% endlocalize %}
207 {% endblock footer %}