def post(self): try: fileinfo = self.request.files['filearg'][0] fname = fileinfo['filename'] extn = os.path.splitext(fname)[1] cname = str(uuid.uuid4()) + extn fname = __UPLOADS__ + cname fh = open(fname, 'wb') fh.write(fileinfo['body']) doc = OdtData(fname) if doc.err: s = 'Error de lectura del fitxer\n' else: s = odt_compare(ref, doc) except KeyError: s = "No s'ha triat cap fitxer." s += '<br><hr><button type="button" onclick="javascript:history.back()">Back</button>' self.finish(s)
import tornado import tornado.ioloop import tornado.web import os, uuid __UPLOADS__ = "uploads/" from odt_parse import OdtData from odt_diff import odt_compare ref_name = './docs/libro_predefinidos.odt' ref = OdtData(ref_name) class Userform(tornado.web.RequestHandler): def get(self): self.render("Predefinidos.html") class UploadAndCheck(tornado.web.RequestHandler): def post(self): try: fileinfo = self.request.files['filearg'][0] fname = fileinfo['filename'] extn = os.path.splitext(fname)[1] cname = str(uuid.uuid4()) + extn fname = __UPLOADS__ + cname fh = open(fname, 'wb') fh.write(fileinfo['body']) doc = OdtData(fname) if doc.err:
import tornado.ioloop import tornado.web import os, uuid __UPLOADS__ = "uploads/" import sys sys.path.append('..') from odt_parse import OdtData from odt_diff import find_style_by_name ref_name = '../libro_personalizados.odt' par_prop = ['backgroundcolor', 'textalign', 'marginleft', 'marginright', 'margintop', 'marginbottom', 'breakbefore'] text_prop = ['fontsize', 'fontstyle', 'language'] ref = OdtData(ref_name, par_prop, text_prop) sp_dict = {'Heading':'Título', 'Heading_1':'Título_1', 'breakbefore':'salto de página antes', 'backgroundcolor':'color de fondo', 'textalign':'alineación', 'Quotations':'Cita', 'fontsize':'tamaño de letra', 'fontstyle':'efecto tipográfico', 'marginleft':'sangría izquierda', 'marginright':'sangría derecha', 'margintop':'espacio superior', 'marginbottom':'espacio inferior', 'justify':'justificada', 'end':'derecha', 'start':'izquierda'} def sp_trans(s): try: t = sp_dict[s] except KeyError: t = s return t