Bugfix for feeds
- removed categories related and up
- load new books now working
- category random now working
login page is free of non accessible elements
boolean custom column is vivible in UI
books with only with certain languages can be shown
book shelfs can be deleted from UI
Anonymous user view is more resticted
Added browse of series in sidebar
Dependencys in vendor folder are updated to newer versions (licencs files are now present)
Bugfix editing Authors names
Made upload on windows working
39 lines
1.2 KiB
Python
39 lines
1.2 KiB
Python
import textwrap
|
|
from contextlib import contextmanager
|
|
|
|
|
|
class TextWrapper(textwrap.TextWrapper):
|
|
|
|
def _handle_long_word(self, reversed_chunks, cur_line, cur_len, width):
|
|
space_left = max(width - cur_len, 1)
|
|
|
|
if self.break_long_words:
|
|
last = reversed_chunks[-1]
|
|
cut = last[:space_left]
|
|
res = last[space_left:]
|
|
cur_line.append(cut)
|
|
reversed_chunks[-1] = res
|
|
elif not cur_line:
|
|
cur_line.append(reversed_chunks.pop())
|
|
|
|
@contextmanager
|
|
def extra_indent(self, indent):
|
|
old_initial_indent = self.initial_indent
|
|
old_subsequent_indent = self.subsequent_indent
|
|
self.initial_indent += indent
|
|
self.subsequent_indent += indent
|
|
try:
|
|
yield
|
|
finally:
|
|
self.initial_indent = old_initial_indent
|
|
self.subsequent_indent = old_subsequent_indent
|
|
|
|
def indent_only(self, text):
|
|
rv = []
|
|
for idx, line in enumerate(text.splitlines()):
|
|
indent = self.initial_indent
|
|
if idx > 0:
|
|
indent = self.subsequent_indent
|
|
rv.append(indent + line)
|
|
return '\n'.join(rv)
|