def build(self):
f = tempfile.NamedTemporaryFile(prefix='depot-', suffix='.zip', mode='wb', delete=False)
+ book_count = self.books.all().count()
with zipfile.ZipFile(f, 'w') as z:
- for book in self.books.all():
+ for i, book in enumerate(self.books.all()):
+ print(f'{i}/{book_count} {book.slug}')
self.build_for(book, z)
f.close()
with open(f.name, 'rb') as ff:
output = EpubBuilder(
cover=cover,
base_url=base_url,
-# fundraising=[]
+ fundraising=item.get('fundraising', []),
).build(wldoc2)
elif item['type'] == 'mobi':
output = MobiBuilder(
cover=cover,
base_url=base_url,
+ fundraising=item.get('fundraising', []),
).build(wldoc2)
- fname = f'{slug}/{slug}.{ext}'
+ fname = f'{slug}/{slug}.'
+ if 'slug' in item:
+ fname += item['slug'] + '.'
+ fname += ext
z.writestr(
fname,
from librarian.parser import WLDocument
from librarian.document import WLDocument as WLDocument2
- provider = RedakcjaDocProvider(publishable=publishable),
+ provider = RedakcjaDocProvider(publishable=publishable)
xml = self.materialize(publishable=publishable, changes=changes).encode('utf-8')
if librarian2:
{% trans "book" %}
</th>
<th>{% trans "characters" %}</th>
- <th>{% trans "words" %}</th>
<th>{% trans "characters (with footnotes)" %}</th>
+ <th>{% trans "words" %}</th>
<th>{% trans "words (with footnotes)" %}</th>
</tr>
</thead>
<tr>
<td style="padding-left: {{ depth}}.75em;">{{ book.book_info.title|default:"???" }}</td>
- <td>{{ stats.self.chars|default_if_none:"?" }}</td>
- <td>{{ stats.self.words|default_if_none:"?" }}</td>
<td>{{ stats.self.chars_with_fn|default_if_none:"?" }}</td>
+ <td>{{ stats.self.chars|default_if_none:"?" }}</td>
<td>{{ stats.self.words_with_fn|default_if_none:"?" }}</td>
+ <td>{{ stats.self.words|default_if_none:"?" }}</td>
</tr>
{% if stats.parts %}
{% for part, partstats in stats.parts %}
{% include 'documents/book_stats.html' with book=part stats=partstats depth=depth|add:1 %}
{% endfor %}
<tr>
- <td>Σ</td>
- <td>{{ stats.total.chars }}</td>
- <td>{{ stats.total.words }}</td>
+ <td style="padding-left: {{ depth}}.75em;">Σ</td>
<td>{{ stats.total.chars_with_fn }}</td>
+ <td>{{ stats.total.chars }}</td>
<td>{{ stats.total.words_with_fn }}</td>
+ <td>{{ stats.total.words }}</td>
</tr>
{% endif %}