def processForm(self, data=1, metadata=0, REQUEST=None, values=None): pdf, start, end = [self.REQUEST.get(x, None) for x in \ ['pdf_file', 'pageStart', 'pageEnd']] if all((pdf, start != 0, end)): new_file_upload = cutPDF(pdf, start, end) new_file_upload.filename = pdf.filename self.REQUEST.set('pdf_file', new_file_upload) self.REQUEST.form['pdf_file'] = new_file_upload return super(BaseReview, self).processForm(data, metadata, REQUEST, \ values)
def __call__(self, sure = None): if sure: self.context.blob = cutPDF(self.context.pdf.blob.open(), \ self.start_page, self.end_page) IStatusMessage(self.request).addStatusMessage(\ 'PDF File has been cut', type='info') notify(ObjectModifiedEvent(self.context)) return self.request.response.redirect(self.context.absolute_url()) return self.index()
if hasattr(self.excel_converter, 'header_error'): self.header_error = self.excel_converter.header_error log.exception(str(e)) self.errors.append(str(e)) transaction.doom() raise FrontendException() finally: self.warnings = self.excel_converter.warnings pdf_name = pdf.filename for result in results: start, end = [ int(result.pop('pdfPage' + x) or 0) for x in 'Start', 'End'] module, class_ = result.pop('portal_type') portal_type = self.type_getter(module, class_) result['pdf'] = cutPDF(pdf, start, end) result_item = addOneItem(self.context, portal_type, result) self.results.append( {'name' : result_item.title, 'url' : result_item.absolute_url()}) if self.errors: raise FrontendException() def addZIPContent(self, zipfile): try: xls, docs = self.zip_extractor(zipfile) results = [x for x in self.excel_converter.convert_zip(xls)] except Exception, e: if isinstance(e, ConflictError): raise log.exception(str(e))