fnp
/
redakcja.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
update librarian
[redakcja.git]
/
apps
/
catalogue
/
views.py
diff --git
a/apps/catalogue/views.py
b/apps/catalogue/views.py
index
1f3130a
..
77548f8
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
@@
-29,6
+30,11
@@
from catalogue.forms import TagMultipleForm, TagSingleForm
from catalogue.helpers import active_tab
from catalogue.models import Category
from librarian import BuildError
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
@@
-115,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
@@
-164,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:
@@
-220,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
@@
-236,6
+242,7
@@
def book_pdf(request, pk, rev_pk):
ctx = Context(
files_path='http://%s/media/dynamic/uploads/%s/' % (request.get_host(), pk),
source_url='http://%s%s' % (request.get_host(), reverse('catalogue_html', args=[doc.pk])),
ctx = Context(
files_path='http://%s/media/dynamic/uploads/%s/' % (request.get_host(), pk),
source_url='http://%s%s' % (request.get_host(), reverse('catalogue_html', args=[doc.pk])),
+ organization=doc.owner_organization.name,
)
if doc.owner_organization is not None and doc.owner_organization.logo:
ctx.cover_logo = 'http://%s%s' % (request.get_host(), doc.owner_organization.logo.url)
)
if doc.owner_organization is not None and doc.owner_organization.logo:
ctx.cover_logo = 'http://%s%s' % (request.get_host(), doc.owner_organization.logo.url)
@@
-250,10
+257,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
@@
-280,10
+283,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)