fnp
/
redakcja.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
refactor imports
[redakcja.git]
/
apps
/
catalogue
/
views.py
diff --git
a/apps/catalogue/views.py
b/apps/catalogue/views.py
index
86dc74d
..
b272774
100644
(file)
--- a/
apps/catalogue/views.py
+++ b/
apps/catalogue/views.py
@@
-8,6
+8,7
@@
import os
import shutil
import subprocess
from tempfile import NamedTemporaryFile
import shutil
import subprocess
from tempfile import NamedTemporaryFile
+from xml.sax.saxutils import escape as escape_xml
from django.conf import settings
from django.contrib import auth
from django.conf import settings
from django.contrib import auth
@@
-24,10
+25,16
@@
from django.views.decorators.http import require_POST
from unidecode import unidecode
from catalogue import forms
from unidecode import unidecode
from catalogue import forms
+from catalogue.filters import DocumentFilterSet
from catalogue.forms import TagMultipleForm, TagSingleForm
from catalogue.helpers import active_tab
from catalogue.models import Category
from librarian import BuildError
from catalogue.forms import TagMultipleForm, TagSingleForm
from catalogue.helpers import active_tab
from catalogue.models import Category
from librarian import BuildError
+from librarian.utils import Context
+from librarian.document import Document as SST
+from librarian.formats.html import HtmlFormat
+from librarian.formats.pdf import PdfFormat
+from librarian.formats.epub import EpubFormat
from redakcja.utlis import send_notify_email
from .constants import STAGES
from .models import Document, Plan
from redakcja.utlis import send_notify_email
from .constants import STAGES
from .models import Document, Plan
@@
-114,17
+121,24
@@
def create_missing(request):
else:
cover_url = ''
else:
cover_url = ''
- doc.commit(
- text='''<section xmlns="http://nowoczesnapolska.org.pl/sst#" xmlns:dc="http://purl.org/dc/elements/1.1/">
+ text = '''<section xmlns="http://nowoczesnapolska.org.pl/sst#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata>
<metadata>
- <dc:publisher>
''' + form.cleaned_data['publisher'] + '''
</dc:publisher>
- <dc:description>
''' + form.cleaned_data['description'] + '''
</dc:description>
- ''' + '\n'.join(tag_form.metadata_rows() for tag_form in tag_forms) + '''
- <dc:relation.coverImage.url>
''' + cover_url + '''
</dc:relation.coverImage.url>
+ <dc:publisher>
%s
</dc:publisher>
+ <dc:description>
%s
</dc:description>
+ %s
+ <dc:relation.coverImage.url>
%s
</dc:relation.coverImage.url>
</metadata>
</metadata>
- <header>
''' + title + '''
</header>
+ <header>
%s
</header>
<div class="p"> </div>
<div class="p"> </div>
- </section>''',
+ </section>''' % (
+ escape_xml(form.cleaned_data['publisher']),
+ escape_xml(form.cleaned_data['description']),
+ '\n'.join(tag_form.metadata_rows() for tag_form in tag_forms),
+ escape_xml(cover_url),
+ escape_xml(title))
+
+ doc.commit(
+ text=text,
author=creator
)
doc.assigned_to = request.user
author=creator
)
doc.assigned_to = request.user
@@
-163,9
+177,6
@@
def create_missing(request):
@never_cache
def book_html(request, pk, rev_pk=None, preview=False):
@never_cache
def book_html(request, pk, rev_pk=None, preview=False):
- from librarian.document import Document as SST
- from librarian.formats.html import HtmlFormat
-
doc = get_object_or_404(Document, pk=pk, deleted=False)
try:
doc = get_object_or_404(Document, pk=pk, deleted=False)
try:
@@
-219,10
+230,6
@@
def book_html(request, pk, rev_pk=None, preview=False):
@never_cache
def book_pdf(request, pk, rev_pk):
@never_cache
def book_pdf(request, pk, rev_pk):
- from librarian.utils import Context
- from librarian.document import Document as SST
- from librarian.formats.pdf import PdfFormat
-
doc = get_object_or_404(Document, pk=pk)
rev = get_object_or_404(Revision, pk=rev_pk)
# Test
doc = get_object_or_404(Document, pk=pk)
rev = get_object_or_404(Revision, pk=rev_pk)
# Test
@@
-249,10
+256,6
@@
def book_pdf(request, pk, rev_pk):
@never_cache
def book_epub(request, pk, rev_pk):
@never_cache
def book_epub(request, pk, rev_pk):
- from librarian.utils import Context
- from librarian.document import Document as SST
- from librarian.formats.epub import EpubFormat
-
doc = get_object_or_404(Document, pk=pk)
rev = get_object_or_404(Revision, pk=rev_pk)
# Test
doc = get_object_or_404(Document, pk=pk)
rev = get_object_or_404(Revision, pk=rev_pk)
# Test
@@
-279,10
+282,6
@@
def book_epub(request, pk, rev_pk):
@never_cache
def book_mobi(request, pk, rev_pk):
@never_cache
def book_mobi(request, pk, rev_pk):
- from librarian.utils import Context
- from librarian.document import Document as SST
- from librarian.formats.epub import EpubFormat
-
doc = get_object_or_404(Document, pk=pk)
rev = get_object_or_404(Revision, pk=rev_pk)
doc = get_object_or_404(Document, pk=pk)
rev = get_object_or_404(Revision, pk=rev_pk)
@@
-510,12
+509,16
@@
def fork(request, pk):
def upcoming(request):
def upcoming(request):
+ f = DocumentFilterSet(request.GET, queryset=Document.objects.filter(deleted=False).filter(publish_log=None))
return render(request, "catalogue/upcoming.html", {
return render(request, "catalogue/upcoming.html", {
- 'objects_list': Document.objects.filter(deleted=False).filter(publish_log=None),
+ 'filter_set': f,
+ 'link_url': 'catalogue_preview',
})
def finished(request):
})
def finished(request):
+ f = DocumentFilterSet(request.GET, queryset=Document.objects.filter(deleted=False).exclude(publish_log=None))
return render(request, "catalogue/finished.html", {
return render(request, "catalogue/finished.html", {
- 'objects_list': Document.objects.filter(deleted=False).exclude(publish_log=None),
+ 'filter_set': f,
+ 'link_url': 'catalogue_html',
})
})