Пример #1
0
    def start_pdf_conversion(self):
        """Starts the pdf conversion for the current context."""

        pdfier = IPdf(self.context)
        pdfier.convert_to_pdf()

        return pdfier.storage.token
Пример #2
0
    def test_has_current_pdf_is_true_when_conversion_is_ok_and_checksum_is_not_changed(self):
        pdfadapter = IPdf(self.file)

        storage = IPdfStorage(self.file)
        storage.status = STATE_OK

        self.assertTrue(pdfadapter.has_current_pdf())
Пример #3
0
    def test_pass_when_pdf_is_already_present(self):
        pdf = IPdf(self.file)
        pdf.convert_to_pdf()
        pdf.store_pdf('__PDF DATA__')

        self.assertEquals(1, len(testing.TESTING_CONVERSION_JOB_QUEUE))

        IPdf(self.file).convert_to_pdf()

        self.assertEquals(1, len(testing.TESTING_CONVERSION_JOB_QUEUE))
Пример #4
0
def handle_pdf_conversion(context, event):
    pdf = IPdf(context)
    if not pdf.has_current_pdf():
        pdf.storage.checksum = pdf.current_hash
        pdf.storage.status = STATE_CONVERTING
        url = pdf.generate_url()
        uuid = IUUID(pdf.context)
        filename = pdf.primary_value.filename
        content_type = pdf.primary_value.content_type

        transaction.get().addAfterCommitHook(queue_pdf_conversion, args=(url,
            uuid, filename, content_type))
Пример #5
0
    def pdf_link(self):
        context = aq_inner(self.context)
        pdf = IPdf(context)

        utool = getToolByName(context, 'portal_url')
        mtr = getToolByName(context, 'mimetypes_registry')
        pdf_mti = mtr.lookup('application/pdf')[0]
        pdf_icon = '%s/%s' % (utool(), pdf_mti.icon_path)
        if isinstance(pdf_icon, unicode):
            pdf_icon = pdf_icon.encode('utf8')

        return '<a href="%s/pdf_download"><img src="%s" />&nbsp;%s</a>' % (
            context.absolute_url(), pdf_icon, pdf.pdf_filename())