diff odfcast/convert.py @ 73:02efda1f6919

issue5117: service for checking a pdf for merging readiness added.
author Bernhard Reiter <bernhard@intevation.de>
date Fri, 06 Mar 2015 14:56:26 +0100
parents 5d1e486140ae
children 3492c79d83c8
line wrap: on
line diff
--- a/odfcast/convert.py	Fri Mar 06 14:07:24 2015 +0100
+++ b/odfcast/convert.py	Fri Mar 06 14:56:26 2015 +0100
@@ -232,6 +232,34 @@
         return request.args.get("ignore_file_errors", False) or \
             request.form.get("ignore_file_errors", False)
 
+class CheckView(MethodView):
+
+    def get(self):
+        return render_template("check.html")
+
+    def post(self):
+        log.debug("Checking a PDF document's readiness for merging")
+
+        merger = PdfFileMerger()
+
+        ffile = request.files['file']
+        if not ffile.filename:
+            return ErrorResponse(
+                "Upload file missing", error_code=101,
+                details="Please upload a file for conversion",
+                html_error_code=400)
+
+        try:
+            merger.append(ffile)
+        except Exception, e:
+            log.exception("Error merging file %s" % ffile)
+            return MergeErrorResponse(details=str(e))
+
+        merger.close()
+
+        log.debug("PDF document %s checked." % ffile)
+        return Response("Okay.")
+
 
 class TemplateView(MethodView):
 
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)