From 0e9563343e48333c79bdcedf1295decd027d2bd9 Mon Sep 17 00:00:00 2001 From: Holger Brunn Date: Mon, 9 Jan 2017 21:48:17 +0100 Subject: [PATCH 01/42] report_qweb_pdf_watermark (#86) --- report_qweb_pdf_watermark/README.rst | 62 +++++++++++++ report_qweb_pdf_watermark/__init__.py | 4 + report_qweb_pdf_watermark/__openerp__.py | 18 ++++ report_qweb_pdf_watermark/demo/report.xml | 30 ++++++ report_qweb_pdf_watermark/models/__init__.py | 5 + .../models/ir_actions_report_xml.py | 14 +++ report_qweb_pdf_watermark/models/report.py | 87 ++++++++++++++++++ .../static/description/icon.png | Bin 0 -> 9455 bytes report_qweb_pdf_watermark/tests/__init__.py | 4 + .../tests/test_report_qweb_pdf_watermark.py | 32 +++++++ .../views/ir_actions_report_xml.xml | 15 +++ 11 files changed, 271 insertions(+) create mode 100644 report_qweb_pdf_watermark/README.rst create mode 100644 report_qweb_pdf_watermark/__init__.py create mode 100644 report_qweb_pdf_watermark/__openerp__.py create mode 100644 report_qweb_pdf_watermark/demo/report.xml create mode 100644 report_qweb_pdf_watermark/models/__init__.py create mode 100644 report_qweb_pdf_watermark/models/ir_actions_report_xml.py create mode 100644 report_qweb_pdf_watermark/models/report.py create mode 100644 report_qweb_pdf_watermark/static/description/icon.png create mode 100644 report_qweb_pdf_watermark/tests/__init__.py create mode 100644 report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py create mode 100644 report_qweb_pdf_watermark/views/ir_actions_report_xml.xml diff --git a/report_qweb_pdf_watermark/README.rst b/report_qweb_pdf_watermark/README.rst new file mode 100644 index 0000000000..35c63a0504 --- /dev/null +++ b/report_qweb_pdf_watermark/README.rst @@ -0,0 +1,62 @@ +.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 + +============= +Pdf watermark +============= + +This module was written to add watermarks (backgrounds) to PDF reports. + +This is necessary because of the way wkhtmltopdf handles headers and footers, in the current versions if quite impossible to have a background for the complete page. + +Usage +===== + +To use this module, you need to: + +#. go to your report +#. select a PDF or image to use as watermark. Note that resolutions and size must match, otherwise you'll have funny results +#. advanced users (members of group technical settings) can also fill in an expression that returns the data (base64 encoded) to be used as watermark + +.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas + :alt: Try me on Runbot + :target: https://runbot.odoo-community.org/runbot/143/8.0 + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues +`_. In case of trouble, please +check there if your issue has already been reported. If you spotted it first, +help us smashing it by providing a detailed and welcomed feedback. + +Credits +======= + +Images +------ + +* Odoo Community Association: `Icon `_. + +Contributors +------------ + +* Holger Brunn + +Do not contact contributors directly about help with questions or problems concerning this addon, but use the `community mailing list `_ or the `appropriate specialized mailinglist `_ for help, and the bug tracker linked in `Bug Tracker`_ above for technical issues. + +Maintainer +---------- + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +This module is maintained by the OCA. + +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. + +To contribute to this module, please visit https://odoo-community.org. diff --git a/report_qweb_pdf_watermark/__init__.py b/report_qweb_pdf_watermark/__init__.py new file mode 100644 index 0000000000..7eda98a232 --- /dev/null +++ b/report_qweb_pdf_watermark/__init__.py @@ -0,0 +1,4 @@ +# -*- coding: utf-8 -*- +# © 2016 Therp BV +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). +from . import models diff --git a/report_qweb_pdf_watermark/__openerp__.py b/report_qweb_pdf_watermark/__openerp__.py new file mode 100644 index 0000000000..74ccecf95e --- /dev/null +++ b/report_qweb_pdf_watermark/__openerp__.py @@ -0,0 +1,18 @@ +# -*- coding: utf-8 -*- +# © 2016 Therp BV +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). +{ + "name": "Pdf watermark", + "version": "9.0.1.0.0", + "author": "Therp BV,Odoo Community Association (OCA)", + "license": "AGPL-3", + "category": "Reporting", + "summary": "Add watermarks to your QWEB PDF reports", + "depends": [ + 'report', + ], + "data": [ + "demo/report.xml", + "views/ir_actions_report_xml.xml", + ], +} diff --git a/report_qweb_pdf_watermark/demo/report.xml b/report_qweb_pdf_watermark/demo/report.xml new file mode 100644 index 0000000000..c25210ba5f --- /dev/null +++ b/report_qweb_pdf_watermark/demo/report.xml @@ -0,0 +1,30 @@ + + + + + + docs[:1].company_id.logo + + + + diff --git a/report_qweb_pdf_watermark/models/__init__.py b/report_qweb_pdf_watermark/models/__init__.py new file mode 100644 index 0000000000..e9e37ae5e0 --- /dev/null +++ b/report_qweb_pdf_watermark/models/__init__.py @@ -0,0 +1,5 @@ +# -*- coding: utf-8 -*- +# © 2016 Therp BV +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). +from . import ir_actions_report_xml +from . import report diff --git a/report_qweb_pdf_watermark/models/ir_actions_report_xml.py b/report_qweb_pdf_watermark/models/ir_actions_report_xml.py new file mode 100644 index 0000000000..d703c02804 --- /dev/null +++ b/report_qweb_pdf_watermark/models/ir_actions_report_xml.py @@ -0,0 +1,14 @@ +# -*- coding: utf-8 -*- +# © 2016 Therp BV +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). +from openerp import fields, models + + +class IrActionsReportXml(models.Model): + _inherit = 'ir.actions.report.xml' + + pdf_watermark = fields.Binary('Watermark') + pdf_watermark_expression = fields.Char( + 'Watermark expression', help='An expression yielding the base64 ' + 'encoded data to be used as watermark. \n' + 'You have access to variables `env` and `docs`') diff --git a/report_qweb_pdf_watermark/models/report.py b/report_qweb_pdf_watermark/models/report.py new file mode 100644 index 0000000000..acb9aff60e --- /dev/null +++ b/report_qweb_pdf_watermark/models/report.py @@ -0,0 +1,87 @@ +# -*- coding: utf-8 -*- +# © 2016 Therp BV +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). +from base64 import b64decode +from logging import getLogger +from pyPdf import PdfFileWriter, PdfFileReader +from pyPdf.utils import PdfReadError +from PIL import Image +from StringIO import StringIO +from openerp import api, models, tools +logger = getLogger(__name__) + + +class Report(models.Model): + _inherit = 'report' + + @api.v7 + def get_pdf( + self, cr, uid, ids, report_name, html=None, data=None, context=None + ): + # pylint: disable=R8110 + # this override cannot be done in v8 api + result = super(Report, self).get_pdf( + cr, uid, ids, report_name, html=html, data=data, + context=context + ) + report = self._get_report_from_name(cr, uid, report_name) + watermark = None + if report.pdf_watermark: + watermark = b64decode(report.pdf_watermark) + else: + env = api.Environment(cr, uid, context) + watermark = tools.safe_eval( + report.pdf_watermark_expression or 'None', + dict(env=env, docs=env[report.model].browse(ids)), + ) + if watermark: + watermark = b64decode(watermark) + + if not watermark: + return result + + pdf = PdfFileWriter() + pdf_watermark = None + try: + pdf_watermark = PdfFileReader(StringIO(watermark)) + except PdfReadError: + # let's see if we can convert this with pillow + try: + image = Image.open(StringIO(watermark)) + pdf_buffer = StringIO() + if image.mode != 'RGB': + image = image.convert('RGB') + resolution = image.info.get( + 'dpi', report.paperformat_id.dpi or 90 + ) + if isinstance(resolution, tuple): + resolution = resolution[0] + image.save(pdf_buffer, 'pdf', resolution=resolution) + pdf_watermark = PdfFileReader(pdf_buffer) + except: + logger.exception('Failed to load watermark') + + if not pdf_watermark: + logger.error( + 'No usable watermark found, got %s...', watermark[:100] + ) + return result + + if pdf_watermark.numPages < 1: + logger.error('Your watermark pdf does not contain any pages') + return result + if pdf_watermark.numPages > 1: + logger.debug('Your watermark pdf contains more than one page, ' + 'all but the first one will be ignored') + + for page in PdfFileReader(StringIO(result)).pages: + watermark_page = pdf.addBlankPage( + page.mediaBox.getWidth(), page.mediaBox.getHeight() + ) + watermark_page.mergePage(pdf_watermark.getPage(0)) + watermark_page.mergePage(page) + + pdf_content = StringIO() + pdf.write(pdf_content) + + return pdf_content.getvalue() diff --git a/report_qweb_pdf_watermark/static/description/icon.png b/report_qweb_pdf_watermark/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d GIT binary patch literal 9455 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 z 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 Xviia!U7SGha1wx#SCgwmn*{w2TRX*I literal 0 HcmV?d00001 diff --git a/report_qweb_pdf_watermark/tests/__init__.py b/report_qweb_pdf_watermark/tests/__init__.py new file mode 100644 index 0000000000..e4637a6417 --- /dev/null +++ b/report_qweb_pdf_watermark/tests/__init__.py @@ -0,0 +1,4 @@ +# -*- coding: utf-8 -*- +# © 2016 Therp BV +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). +from . import test_report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py b/report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py new file mode 100644 index 0000000000..7525a95a31 --- /dev/null +++ b/report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py @@ -0,0 +1,32 @@ +# -*- coding: utf-8 -*- +# © 2016 Therp BV +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). +from openerp.tests.common import TransactionCase + + +class TestReportQwebPdfWatermark(TransactionCase): + def test_report_qweb_pdf_watermark(self): + # with our image, we have three + self._test_report_images(3) + + self.env.ref('report_qweb_pdf_watermark.demo_report').write({ + 'pdf_watermark_expression': False, + }) + # without, we have two + self._test_report_images(2) + + self.env.ref('report_qweb_pdf_watermark.demo_report').write({ + 'pdf_watermark': self.env.user.company_id.logo, + }) + # and now we should have three again + self._test_report_images(3) + + def _test_report_images(self, number): + pdf = self.registry['report'].get_pdf( + self.cr, + self.uid, + self.env['res.users'].search([]).ids, + 'report_qweb_pdf_watermark.demo_report_view', + context={} + ) + self.assertEqual(pdf.count('/Subtype /Image'), number) diff --git a/report_qweb_pdf_watermark/views/ir_actions_report_xml.xml b/report_qweb_pdf_watermark/views/ir_actions_report_xml.xml new file mode 100644 index 0000000000..a9b59502f8 --- /dev/null +++ b/report_qweb_pdf_watermark/views/ir_actions_report_xml.xml @@ -0,0 +1,15 @@ + + + + + ir.actions.report.xml + + + + + + + + + + From e835161d65ec97652e87bc8b0ac7769e1726dd3d Mon Sep 17 00:00:00 2001 From: OCA Transbot Date: Sat, 14 Jan 2017 00:38:46 -0500 Subject: [PATCH 02/42] OCA Transbot updated translations from Transifex --- report_qweb_pdf_watermark/i18n/ca.po | 51 +++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/da.po | 51 +++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/de.po | 54 +++++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/el_GR.po | 51 +++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/es.po | 54 +++++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/es_CO.po | 51 +++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/fr.po | 52 ++++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/gl.po | 51 +++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/hr.po | 51 +++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/it.po | 52 ++++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/nb_NO.po | 51 +++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/pl.po | 51 +++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/pt.po | 51 +++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/pt_BR.po | 51 +++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/pt_PT.po | 52 ++++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/sl.po | 51 +++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/tr.po | 51 +++++++++++++++++++++++ report_qweb_pdf_watermark/i18n/tr_TR.po | 51 +++++++++++++++++++++++ 18 files changed, 927 insertions(+) create mode 100644 report_qweb_pdf_watermark/i18n/ca.po create mode 100644 report_qweb_pdf_watermark/i18n/da.po create mode 100644 report_qweb_pdf_watermark/i18n/de.po create mode 100644 report_qweb_pdf_watermark/i18n/el_GR.po create mode 100644 report_qweb_pdf_watermark/i18n/es.po create mode 100644 report_qweb_pdf_watermark/i18n/es_CO.po create mode 100644 report_qweb_pdf_watermark/i18n/fr.po create mode 100644 report_qweb_pdf_watermark/i18n/gl.po create mode 100644 report_qweb_pdf_watermark/i18n/hr.po create mode 100644 report_qweb_pdf_watermark/i18n/it.po create mode 100644 report_qweb_pdf_watermark/i18n/nb_NO.po create mode 100644 report_qweb_pdf_watermark/i18n/pl.po create mode 100644 report_qweb_pdf_watermark/i18n/pt.po create mode 100644 report_qweb_pdf_watermark/i18n/pt_BR.po create mode 100644 report_qweb_pdf_watermark/i18n/pt_PT.po create mode 100644 report_qweb_pdf_watermark/i18n/sl.po create mode 100644 report_qweb_pdf_watermark/i18n/tr.po create mode 100644 report_qweb_pdf_watermark/i18n/tr_TR.po diff --git a/report_qweb_pdf_watermark/i18n/ca.po b/report_qweb_pdf_watermark/i18n/ca.po new file mode 100644 index 0000000000..922605a139 --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/ca.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# Carles Antoli , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: Carles Antoli , 2017\n" +"Language-Team: Catalan (https://www.transifex.com/oca/teams/23907/ca/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: ca\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Informe" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "" diff --git a/report_qweb_pdf_watermark/i18n/da.po b/report_qweb_pdf_watermark/i18n/da.po new file mode 100644 index 0000000000..d4abe9a775 --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/da.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# Hans Henrik Gabelgaard , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: Hans Henrik Gabelgaard , 2017\n" +"Language-Team: Danish (https://www.transifex.com/oca/teams/23907/da/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: da\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Rapport" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "" diff --git a/report_qweb_pdf_watermark/i18n/de.po b/report_qweb_pdf_watermark/i18n/de.po new file mode 100644 index 0000000000..07eaf28f16 --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/de.po @@ -0,0 +1,54 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# OCA Transbot , 2017 +# Rudolf Schnapka , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-03-04 05:58+0000\n" +"PO-Revision-Date: 2017-03-04 05:58+0000\n" +"Last-Translator: Rudolf Schnapka , 2017\n" +"Language-Team: German (https://www.transifex.com/oca/teams/23907/de/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" +"Ein Ausdruck der base64-geschlüsselte Daten, zur Verwendung als Wasserzeichen, liefert.\n" +"Sie haben die Variablen 'env' und 'docs' zur Verfügung" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "Beispielbericht" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Bericht" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "Wasserzeichen" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "Wasserzeichnen-Ausdruck" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "ir.actions.report.xml" diff --git a/report_qweb_pdf_watermark/i18n/el_GR.po b/report_qweb_pdf_watermark/i18n/el_GR.po new file mode 100644 index 0000000000..5e375d30b4 --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/el_GR.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# Kostas Goutoudis , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: Kostas Goutoudis , 2017\n" +"Language-Team: Greek (Greece) (https://www.transifex.com/oca/teams/23907/el_GR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: el_GR\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Αναφορά" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "" diff --git a/report_qweb_pdf_watermark/i18n/es.po b/report_qweb_pdf_watermark/i18n/es.po new file mode 100644 index 0000000000..8e2d25cfda --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/es.po @@ -0,0 +1,54 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# Pedro M. Baeza , 2017 +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Spanish (https://www.transifex.com/oca/teams/23907/es/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: es\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" +"Una expresión que obtenga los datos codificados en base64 a ser usada como marca de agua.\n" +"Tiene acceso a las variables `env` y `docs`." + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "Informe demo" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Informe" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "Marca de agua" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "Expresión para la marca de agua" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "ir.actions.report.xml" diff --git a/report_qweb_pdf_watermark/i18n/es_CO.po b/report_qweb_pdf_watermark/i18n/es_CO.po new file mode 100644 index 0000000000..02428bcf50 --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/es_CO.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# John Toro , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: John Toro , 2017\n" +"Language-Team: Spanish (Colombia) (https://www.transifex.com/oca/teams/23907/es_CO/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: es_CO\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Iforme" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "" diff --git a/report_qweb_pdf_watermark/i18n/fr.po b/report_qweb_pdf_watermark/i18n/fr.po new file mode 100644 index 0000000000..7119bbd017 --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/fr.po @@ -0,0 +1,52 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# Yannick Vaucher , 2017 +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: French (https://www.transifex.com/oca/teams/23907/fr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: fr\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Rapport" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "ir.actions.report.xml" diff --git a/report_qweb_pdf_watermark/i18n/gl.po b/report_qweb_pdf_watermark/i18n/gl.po new file mode 100644 index 0000000000..a1a41315f5 --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/gl.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# Alejandro Santana , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: Alejandro Santana , 2017\n" +"Language-Team: Galician (https://www.transifex.com/oca/teams/23907/gl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: gl\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Informe" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "" diff --git a/report_qweb_pdf_watermark/i18n/hr.po b/report_qweb_pdf_watermark/i18n/hr.po new file mode 100644 index 0000000000..1fba7351b9 --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/hr.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# Bole , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: Bole , 2017\n" +"Language-Team: Croatian (https://www.transifex.com/oca/teams/23907/hr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: hr\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "ir.actions.report.xml" diff --git a/report_qweb_pdf_watermark/i18n/it.po b/report_qweb_pdf_watermark/i18n/it.po new file mode 100644 index 0000000000..76fe59701a --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/it.po @@ -0,0 +1,52 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# Paolo Valier , 2017 +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Italian (https://www.transifex.com/oca/teams/23907/it/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: it\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Report" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "ir.actions.report.xml" diff --git a/report_qweb_pdf_watermark/i18n/nb_NO.po b/report_qweb_pdf_watermark/i18n/nb_NO.po new file mode 100644 index 0000000000..9ef3189b0d --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/nb_NO.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# Imre Kristoffer Eilertsen , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: Imre Kristoffer Eilertsen , 2017\n" +"Language-Team: Norwegian Bokmål (Norway) (https://www.transifex.com/oca/teams/23907/nb_NO/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: nb_NO\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Rapport" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "" diff --git a/report_qweb_pdf_watermark/i18n/pl.po b/report_qweb_pdf_watermark/i18n/pl.po new file mode 100644 index 0000000000..57f39208da --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/pl.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Polish (https://www.transifex.com/oca/teams/23907/pl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pl\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Raport" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "" diff --git a/report_qweb_pdf_watermark/i18n/pt.po b/report_qweb_pdf_watermark/i18n/pt.po new file mode 100644 index 0000000000..b4eee93e02 --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/pt.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Portuguese (https://www.transifex.com/oca/teams/23907/pt/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pt\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Relatório" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "" diff --git a/report_qweb_pdf_watermark/i18n/pt_BR.po b/report_qweb_pdf_watermark/i18n/pt_BR.po new file mode 100644 index 0000000000..6002005fba --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/pt_BR.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# Armando Vulcano Junior , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: Armando Vulcano Junior , 2017\n" +"Language-Team: Portuguese (Brazil) (https://www.transifex.com/oca/teams/23907/pt_BR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pt_BR\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Relatório" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "" diff --git a/report_qweb_pdf_watermark/i18n/pt_PT.po b/report_qweb_pdf_watermark/i18n/pt_PT.po new file mode 100644 index 0000000000..9be87c18a2 --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/pt_PT.po @@ -0,0 +1,52 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# OCA Transbot , 2017 +# Carla Berjano , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-14 06:07+0000\n" +"PO-Revision-Date: 2017-01-14 06:07+0000\n" +"Last-Translator: Carla Berjano , 2017\n" +"Language-Team: Portuguese (Portugal) (https://www.transifex.com/oca/teams/23907/pt_PT/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pt_PT\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Relatório" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "ir.actions.report.xml" diff --git a/report_qweb_pdf_watermark/i18n/sl.po b/report_qweb_pdf_watermark/i18n/sl.po new file mode 100644 index 0000000000..b75fa34950 --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/sl.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# Matjaž Mozetič , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: Matjaž Mozetič , 2017\n" +"Language-Team: Slovenian (https://www.transifex.com/oca/teams/23907/sl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: sl\n" +"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Poročilo" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "" diff --git a/report_qweb_pdf_watermark/i18n/tr.po b/report_qweb_pdf_watermark/i18n/tr.po new file mode 100644 index 0000000000..d721393f1c --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/tr.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# Ahmet Altinisik , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: Ahmet Altinisik , 2017\n" +"Language-Team: Turkish (https://www.transifex.com/oca/teams/23907/tr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: tr\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "ir.actions.report.xml" diff --git a/report_qweb_pdf_watermark/i18n/tr_TR.po b/report_qweb_pdf_watermark/i18n/tr_TR.po new file mode 100644 index 0000000000..3ed8bbdb42 --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/tr_TR.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# Ozge Altinisik , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-10 03:40+0000\n" +"PO-Revision-Date: 2017-01-10 03:40+0000\n" +"Last-Translator: Ozge Altinisik , 2017\n" +"Language-Team: Turkish (Turkey) (https://www.transifex.com/oca/teams/23907/tr_TR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: tr_TR\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Rapor" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "" From 4141e2520b5ae3972a90355483e95f49a297c5e7 Mon Sep 17 00:00:00 2001 From: Stefan Rijnhart Date: Sat, 22 Apr 2017 14:39:22 +0200 Subject: [PATCH 03/42] [MIG] report_qweb_pdf_watermark --- report_qweb_pdf_watermark/README.rst | 7 ++- .../{__openerp__.py => __manifest__.py} | 2 +- report_qweb_pdf_watermark/demo/report.xml | 52 +++++++++---------- .../models/ir_actions_report_xml.py | 2 +- report_qweb_pdf_watermark/models/report.py | 19 +++---- .../tests/test_report_qweb_pdf_watermark.py | 5 +- .../views/ir_actions_report_xml.xml | 24 ++++----- 7 files changed, 48 insertions(+), 63 deletions(-) rename report_qweb_pdf_watermark/{__openerp__.py => __manifest__.py} (94%) diff --git a/report_qweb_pdf_watermark/README.rst b/report_qweb_pdf_watermark/README.rst index 35c63a0504..a15b380e46 100644 --- a/report_qweb_pdf_watermark/README.rst +++ b/report_qweb_pdf_watermark/README.rst @@ -6,9 +6,7 @@ Pdf watermark ============= -This module was written to add watermarks (backgrounds) to PDF reports. - -This is necessary because of the way wkhtmltopdf handles headers and footers, in the current versions if quite impossible to have a background for the complete page. +This module was written to add watermarks (backgrounds) to PDF reports. Because of the way wkhtmltopdf handles headers and footers in the current versions, it is quite impossible to have a background for the complete page using HTML and CSS. That is why this module inserts the image at the PDF level. Usage ===== @@ -17,7 +15,7 @@ To use this module, you need to: #. go to your report #. select a PDF or image to use as watermark. Note that resolutions and size must match, otherwise you'll have funny results -#. advanced users (members of group technical settings) can also fill in an expression that returns the data (base64 encoded) to be used as watermark +#. You can also fill in an expression that returns the data (base64 encoded) to be used as watermark .. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas :alt: Try me on Runbot @@ -43,6 +41,7 @@ Contributors ------------ * Holger Brunn +* Stefan Rijnhart Do not contact contributors directly about help with questions or problems concerning this addon, but use the `community mailing list `_ or the `appropriate specialized mailinglist `_ for help, and the bug tracker linked in `Bug Tracker`_ above for technical issues. diff --git a/report_qweb_pdf_watermark/__openerp__.py b/report_qweb_pdf_watermark/__manifest__.py similarity index 94% rename from report_qweb_pdf_watermark/__openerp__.py rename to report_qweb_pdf_watermark/__manifest__.py index 74ccecf95e..ef02ede82a 100644 --- a/report_qweb_pdf_watermark/__openerp__.py +++ b/report_qweb_pdf_watermark/__manifest__.py @@ -3,7 +3,7 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). { "name": "Pdf watermark", - "version": "9.0.1.0.0", + "version": "10.0.1.0.0", "author": "Therp BV,Odoo Community Association (OCA)", "license": "AGPL-3", "category": "Reporting", diff --git a/report_qweb_pdf_watermark/demo/report.xml b/report_qweb_pdf_watermark/demo/report.xml index c25210ba5f..7528dbf9db 100644 --- a/report_qweb_pdf_watermark/demo/report.xml +++ b/report_qweb_pdf_watermark/demo/report.xml @@ -1,30 +1,28 @@ - - - + - - docs[:1].company_id.logo - - + diff --git a/report_qweb_pdf_watermark/models/ir_actions_report_xml.py b/report_qweb_pdf_watermark/models/ir_actions_report_xml.py index d703c02804..ff2116198b 100644 --- a/report_qweb_pdf_watermark/models/ir_actions_report_xml.py +++ b/report_qweb_pdf_watermark/models/ir_actions_report_xml.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # © 2016 Therp BV # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -from openerp import fields, models +from odoo import fields, models class IrActionsReportXml(models.Model): diff --git a/report_qweb_pdf_watermark/models/report.py b/report_qweb_pdf_watermark/models/report.py index acb9aff60e..5125cd3c19 100644 --- a/report_qweb_pdf_watermark/models/report.py +++ b/report_qweb_pdf_watermark/models/report.py @@ -7,32 +7,25 @@ from pyPdf.utils import PdfReadError from PIL import Image from StringIO import StringIO -from openerp import api, models, tools +from odoo import api, models, tools logger = getLogger(__name__) class Report(models.Model): _inherit = 'report' - @api.v7 - def get_pdf( - self, cr, uid, ids, report_name, html=None, data=None, context=None - ): - # pylint: disable=R8110 - # this override cannot be done in v8 api + @api.model + def get_pdf(self, docids, report_name, html=None, data=None): result = super(Report, self).get_pdf( - cr, uid, ids, report_name, html=html, data=data, - context=context - ) - report = self._get_report_from_name(cr, uid, report_name) + docids, report_name, html=html, data=data) + report = self._get_report_from_name(report_name) watermark = None if report.pdf_watermark: watermark = b64decode(report.pdf_watermark) else: - env = api.Environment(cr, uid, context) watermark = tools.safe_eval( report.pdf_watermark_expression or 'None', - dict(env=env, docs=env[report.model].browse(ids)), + dict(env=self.env, docs=self.env[report.model].browse(docids)), ) if watermark: watermark = b64decode(watermark) diff --git a/report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py b/report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py index 7525a95a31..c39e8cdd9b 100644 --- a/report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py +++ b/report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py @@ -22,11 +22,8 @@ def test_report_qweb_pdf_watermark(self): self._test_report_images(3) def _test_report_images(self, number): - pdf = self.registry['report'].get_pdf( - self.cr, - self.uid, + pdf = self.env['report'].get_pdf( self.env['res.users'].search([]).ids, 'report_qweb_pdf_watermark.demo_report_view', - context={} ) self.assertEqual(pdf.count('/Subtype /Image'), number) diff --git a/report_qweb_pdf_watermark/views/ir_actions_report_xml.xml b/report_qweb_pdf_watermark/views/ir_actions_report_xml.xml index a9b59502f8..3668c4fc75 100644 --- a/report_qweb_pdf_watermark/views/ir_actions_report_xml.xml +++ b/report_qweb_pdf_watermark/views/ir_actions_report_xml.xml @@ -1,15 +1,13 @@ - - - - ir.actions.report.xml - - - - - - + + + ir.actions.report.xml + + + + + - - - + + + From ab19d7e0bd87f28469a91bfb6d93dfcadf366f89 Mon Sep 17 00:00:00 2001 From: Stefan Rijnhart Date: Mon, 24 Apr 2017 19:36:34 +0200 Subject: [PATCH 04/42] [ADD] Prioritize background transparency --- report_qweb_pdf_watermark/README.rst | 4 ++++ report_qweb_pdf_watermark/__manifest__.py | 1 + .../static/src/css/report_qweb_pdf_watermark.css | 3 +++ report_qweb_pdf_watermark/views/layout_templates.xml | 10 ++++++++++ 4 files changed, 18 insertions(+) create mode 100644 report_qweb_pdf_watermark/static/src/css/report_qweb_pdf_watermark.css create mode 100644 report_qweb_pdf_watermark/views/layout_templates.xml diff --git a/report_qweb_pdf_watermark/README.rst b/report_qweb_pdf_watermark/README.rst index a15b380e46..cac6f76481 100644 --- a/report_qweb_pdf_watermark/README.rst +++ b/report_qweb_pdf_watermark/README.rst @@ -21,6 +21,10 @@ To use this module, you need to: :alt: Try me on Runbot :target: https://runbot.odoo-community.org/runbot/143/8.0 +Known Issues +============ +This module depends on support for transparent backgrounds in Wkhtmltopdf, which has been flaky in the past. This module has been reported to work with Wkhtmltopdf 0.12.4. + Bug Tracker =========== diff --git a/report_qweb_pdf_watermark/__manifest__.py b/report_qweb_pdf_watermark/__manifest__.py index ef02ede82a..e6e779d453 100644 --- a/report_qweb_pdf_watermark/__manifest__.py +++ b/report_qweb_pdf_watermark/__manifest__.py @@ -14,5 +14,6 @@ "data": [ "demo/report.xml", "views/ir_actions_report_xml.xml", + "views/layout_templates.xml", ], } diff --git a/report_qweb_pdf_watermark/static/src/css/report_qweb_pdf_watermark.css b/report_qweb_pdf_watermark/static/src/css/report_qweb_pdf_watermark.css new file mode 100644 index 0000000000..83cc2eb021 --- /dev/null +++ b/report_qweb_pdf_watermark/static/src/css/report_qweb_pdf_watermark.css @@ -0,0 +1,3 @@ +body { + background: transparent !important; +} diff --git a/report_qweb_pdf_watermark/views/layout_templates.xml b/report_qweb_pdf_watermark/views/layout_templates.xml new file mode 100644 index 0000000000..fee74c753c --- /dev/null +++ b/report_qweb_pdf_watermark/views/layout_templates.xml @@ -0,0 +1,10 @@ + + + + + From e38a65b359af6cf2a43f76e40ef151f2df06c356 Mon Sep 17 00:00:00 2001 From: OCA Transbot Date: Sat, 3 Jun 2017 08:34:25 +0200 Subject: [PATCH 05/42] OCA Transbot updated translations from Transifex --- report_qweb_pdf_watermark/i18n/hr_HR.po | 51 +++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 report_qweb_pdf_watermark/i18n/hr_HR.po diff --git a/report_qweb_pdf_watermark/i18n/hr_HR.po b/report_qweb_pdf_watermark/i18n/hr_HR.po new file mode 100644 index 0000000000..8682c48f6d --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/hr_HR.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# Bole , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-05-31 03:52+0000\n" +"PO-Revision-Date: 2017-05-31 03:52+0000\n" +"Last-Translator: Bole , 2017\n" +"Language-Team: Croatian (Croatia) (https://www.transifex.com/oca/teams/23907/hr_HR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: hr_HR\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "ir.actions.report.xml" From af06f38cbf1174ce47b99107f6b40d7f50fd56d0 Mon Sep 17 00:00:00 2001 From: etobella Date: Tue, 20 Jun 2017 11:23:36 +0200 Subject: [PATCH 06/42] [FIX] Fix Watermark from PNG --- report_qweb_pdf_watermark/__manifest__.py | 3 ++- report_qweb_pdf_watermark/models/report.py | 7 +++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/report_qweb_pdf_watermark/__manifest__.py b/report_qweb_pdf_watermark/__manifest__.py index e6e779d453..95b4c53618 100644 --- a/report_qweb_pdf_watermark/__manifest__.py +++ b/report_qweb_pdf_watermark/__manifest__.py @@ -4,7 +4,8 @@ { "name": "Pdf watermark", "version": "10.0.1.0.0", - "author": "Therp BV,Odoo Community Association (OCA)", + "author": "Therp BV, " + "Odoo Community Association (OCA)", "license": "AGPL-3", "category": "Reporting", "summary": "Add watermarks to your QWEB PDF reports", diff --git a/report_qweb_pdf_watermark/models/report.py b/report_qweb_pdf_watermark/models/report.py index 5125cd3c19..82d0d311aa 100644 --- a/report_qweb_pdf_watermark/models/report.py +++ b/report_qweb_pdf_watermark/models/report.py @@ -8,6 +8,12 @@ from PIL import Image from StringIO import StringIO from odoo import api, models, tools +from PIL import PdfImagePlugin # flake8: noqa + +# PdfImagePlugin must be loaded in order to work PNG to PDF transformation +# This issue is related to Pillow creation, as can be seen in its source code: +# https://github.com/python-pillow/Pillow/blob/master/PIL/PdfImagePlugin.py + logger = getLogger(__name__) @@ -40,6 +46,7 @@ def get_pdf(self, docids, report_name, html=None, data=None): except PdfReadError: # let's see if we can convert this with pillow try: + Image.init() image = Image.open(StringIO(watermark)) pdf_buffer = StringIO() if image.mode != 'RGB': From 73f9cb0c66866cf1846adc27fe2d86951ab08993 Mon Sep 17 00:00:00 2001 From: OCA Transbot Date: Sat, 1 Jul 2017 09:19:08 +0200 Subject: [PATCH 07/42] OCA Transbot updated translations from Transifex --- report_qweb_pdf_watermark/i18n/hr_HR.po | 14 ++++--- report_qweb_pdf_watermark/i18n/nl_NL.po | 51 +++++++++++++++++++++++++ 2 files changed, 59 insertions(+), 6 deletions(-) create mode 100644 report_qweb_pdf_watermark/i18n/nl_NL.po diff --git a/report_qweb_pdf_watermark/i18n/hr_HR.po b/report_qweb_pdf_watermark/i18n/hr_HR.po index 8682c48f6d..cd44a13096 100644 --- a/report_qweb_pdf_watermark/i18n/hr_HR.po +++ b/report_qweb_pdf_watermark/i18n/hr_HR.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 10.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-05-31 03:52+0000\n" -"PO-Revision-Date: 2017-05-31 03:52+0000\n" +"POT-Creation-Date: 2017-07-13 02:42+0000\n" +"PO-Revision-Date: 2017-07-13 02:42+0000\n" "Last-Translator: Bole , 2017\n" "Language-Team: Croatian (Croatia) (https://www.transifex.com/oca/teams/23907/hr_HR/)\n" "MIME-Version: 1.0\n" @@ -24,26 +24,28 @@ msgid "" "An expression yielding the base64 encoded data to be used as watermark. \n" "You have access to variables `env` and `docs`" msgstr "" +"Izraz koji polučuje base46 kodirane podatke koji se koriste kao vodeni žig.\n" +"Imate pristup varijablama 'env' i 'docs'" #. module: report_qweb_pdf_watermark #: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report msgid "Demo report" -msgstr "" +msgstr "Demo izvještaj" #. module: report_qweb_pdf_watermark #: model:ir.model,name:report_qweb_pdf_watermark.model_report msgid "Report" -msgstr "" +msgstr "Izvještaj" #. module: report_qweb_pdf_watermark #: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark msgid "Watermark" -msgstr "" +msgstr "Vodeni žig" #. module: report_qweb_pdf_watermark #: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression msgid "Watermark expression" -msgstr "" +msgstr "Izraz vodenog žiga" #. module: report_qweb_pdf_watermark #: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml diff --git a/report_qweb_pdf_watermark/i18n/nl_NL.po b/report_qweb_pdf_watermark/i18n/nl_NL.po new file mode 100644 index 0000000000..384ca4ac01 --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/nl_NL.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +# Translators: +# Peter Hageman , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-23 00:28+0000\n" +"PO-Revision-Date: 2017-06-23 00:28+0000\n" +"Last-Translator: Peter Hageman , 2017\n" +"Language-Team: Dutch (Netherlands) (https://www.transifex.com/oca/teams/23907/nl_NL/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: nl_NL\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "" +"An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "Rapport" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "ir.actions.report.xml" From df96999c87c77b6595476416f0abe9dc93fc10bf Mon Sep 17 00:00:00 2001 From: Holger Brunn Date: Thu, 8 Jun 2017 17:01:05 +0200 Subject: [PATCH 08/42] [IMP] use PyPDF2 if possible --- report_qweb_pdf_watermark/README.rst | 5 +++++ report_qweb_pdf_watermark/__manifest__.py | 2 +- report_qweb_pdf_watermark/models/report.py | 20 +++++++++++++------- 3 files changed, 19 insertions(+), 8 deletions(-) diff --git a/report_qweb_pdf_watermark/README.rst b/report_qweb_pdf_watermark/README.rst index cac6f76481..07f681b185 100644 --- a/report_qweb_pdf_watermark/README.rst +++ b/report_qweb_pdf_watermark/README.rst @@ -8,6 +8,11 @@ Pdf watermark This module was written to add watermarks (backgrounds) to PDF reports. Because of the way wkhtmltopdf handles headers and footers in the current versions, it is quite impossible to have a background for the complete page using HTML and CSS. That is why this module inserts the image at the PDF level. +Installation +============ + +This module works out of the box, but is faster if you install the python library PyPDF2. + Usage ===== diff --git a/report_qweb_pdf_watermark/__manifest__.py b/report_qweb_pdf_watermark/__manifest__.py index 95b4c53618..d11b849342 100644 --- a/report_qweb_pdf_watermark/__manifest__.py +++ b/report_qweb_pdf_watermark/__manifest__.py @@ -3,7 +3,7 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). { "name": "Pdf watermark", - "version": "10.0.1.0.0", + "version": "10.0.1.0.1", "author": "Therp BV, " "Odoo Community Association (OCA)", "license": "AGPL-3", diff --git a/report_qweb_pdf_watermark/models/report.py b/report_qweb_pdf_watermark/models/report.py index 82d0d311aa..cc89490b9a 100644 --- a/report_qweb_pdf_watermark/models/report.py +++ b/report_qweb_pdf_watermark/models/report.py @@ -3,16 +3,22 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). from base64 import b64decode from logging import getLogger -from pyPdf import PdfFileWriter, PdfFileReader -from pyPdf.utils import PdfReadError from PIL import Image from StringIO import StringIO -from odoo import api, models, tools -from PIL import PdfImagePlugin # flake8: noqa -# PdfImagePlugin must be loaded in order to work PNG to PDF transformation -# This issue is related to Pillow creation, as can be seen in its source code: -# https://github.com/python-pillow/Pillow/blob/master/PIL/PdfImagePlugin.py +from pyPdf import PdfFileWriter, PdfFileReader +from pyPdf.utils import PdfReadError +try: + from PyPDF2 import PdfFileWriter, PdfFileReader # pylint: disable=W0404 + from PyPDF2.utils import PdfReadError # pylint: disable=W0404 +except ImportError: + pass +try: + # we need this to be sure PIL has loaded PDF support + from PIL import PdfImagePlugin # noqa: F401 +except ImportError: + pass +from odoo import api, models, tools logger = getLogger(__name__) From 929c0e425f0f8d0288956e17942b06bff0da0eff Mon Sep 17 00:00:00 2001 From: Holger Brunn Date: Tue, 18 Jul 2017 09:38:56 +0200 Subject: [PATCH 09/42] [UPD] build environment --- .../tests/test_report_qweb_pdf_watermark.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py b/report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py index c39e8cdd9b..9397d4d84e 100644 --- a/report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py +++ b/report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py @@ -1,11 +1,13 @@ # -*- coding: utf-8 -*- # © 2016 Therp BV # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -from openerp.tests.common import TransactionCase +from PIL import Image +from openerp.tests.common import HttpCase -class TestReportQwebPdfWatermark(TransactionCase): +class TestReportQwebPdfWatermark(HttpCase): def test_report_qweb_pdf_watermark(self): + Image.init() # with our image, we have three self._test_report_images(3) From 352a7259172e7df26f808ab25f08603bbbb39f7a Mon Sep 17 00:00:00 2001 From: Jordi Ballester Date: Thu, 14 Sep 2017 13:35:59 +0200 Subject: [PATCH 10/42] fix test_report_qweb_signer - tests were causing travis to stall --- .../tests/test_report_qweb_pdf_watermark.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py b/report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py index 9397d4d84e..19d5196140 100644 --- a/report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py +++ b/report_qweb_pdf_watermark/tests/test_report_qweb_pdf_watermark.py @@ -2,7 +2,7 @@ # © 2016 Therp BV # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). from PIL import Image -from openerp.tests.common import HttpCase +from odoo.tests.common import HttpCase class TestReportQwebPdfWatermark(HttpCase): From 2f01de6fac9f593b893df0c4809786eb0331e764 Mon Sep 17 00:00:00 2001 From: OCA Transbot Date: Sat, 3 Mar 2018 11:38:00 +0100 Subject: [PATCH 11/42] OCA Transbot updated translations from Transifex --- report_qweb_pdf_watermark/i18n/hr.po | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/report_qweb_pdf_watermark/i18n/hr.po b/report_qweb_pdf_watermark/i18n/hr.po index 1fba7351b9..bf2d355651 100644 --- a/report_qweb_pdf_watermark/i18n/hr.po +++ b/report_qweb_pdf_watermark/i18n/hr.po @@ -3,14 +3,15 @@ # * report_qweb_pdf_watermark # # Translators: -# Bole , 2017 +# OCA Transbot , 2017 +# Bole , 2018 msgid "" msgstr "" -"Project-Id-Version: Odoo Server 9.0c\n" +"Project-Id-Version: Odoo Server 10.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-01-10 03:40+0000\n" -"PO-Revision-Date: 2017-01-10 03:40+0000\n" -"Last-Translator: Bole , 2017\n" +"POT-Creation-Date: 2018-02-16 01:44+0000\n" +"PO-Revision-Date: 2018-02-16 01:44+0000\n" +"Last-Translator: Bole , 2018\n" "Language-Team: Croatian (https://www.transifex.com/oca/teams/23907/hr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -24,26 +25,28 @@ msgid "" "An expression yielding the base64 encoded data to be used as watermark. \n" "You have access to variables `env` and `docs`" msgstr "" +"Izraz koji polučuje base46 kodirane podatke koji se koriste kao vodeni žig.\n" +"Imate pristup varijablama 'env' i 'docs'" #. module: report_qweb_pdf_watermark #: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report msgid "Demo report" -msgstr "" +msgstr "Demo izvještaj" #. module: report_qweb_pdf_watermark #: model:ir.model,name:report_qweb_pdf_watermark.model_report msgid "Report" -msgstr "" +msgstr "Izvještaj" #. module: report_qweb_pdf_watermark #: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark msgid "Watermark" -msgstr "" +msgstr "Vodeni žig" #. module: report_qweb_pdf_watermark #: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression msgid "Watermark expression" -msgstr "" +msgstr "Izraz vodenog žiga" #. module: report_qweb_pdf_watermark #: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml From a26efbf12e60982011695fa159e5d99faa6d2d1c Mon Sep 17 00:00:00 2001 From: Stefan Rijnhart Date: Wed, 28 Feb 2018 15:40:35 +0100 Subject: [PATCH 12/42] [FIX] Don't break printing some upstream reports with invalid models When no background configuration is present on the report definition, don't try to browse the report model especially because this breaks some upstream reports (see https://github.com/odoo/odoo/pull/23389) --- report_qweb_pdf_watermark/__manifest__.py | 2 +- report_qweb_pdf_watermark/models/report.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/report_qweb_pdf_watermark/__manifest__.py b/report_qweb_pdf_watermark/__manifest__.py index d11b849342..f4ca0611c8 100644 --- a/report_qweb_pdf_watermark/__manifest__.py +++ b/report_qweb_pdf_watermark/__manifest__.py @@ -3,7 +3,7 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). { "name": "Pdf watermark", - "version": "10.0.1.0.1", + "version": "10.0.1.0.2", "author": "Therp BV, " "Odoo Community Association (OCA)", "license": "AGPL-3", diff --git a/report_qweb_pdf_watermark/models/report.py b/report_qweb_pdf_watermark/models/report.py index cc89490b9a..f77ed7592a 100644 --- a/report_qweb_pdf_watermark/models/report.py +++ b/report_qweb_pdf_watermark/models/report.py @@ -34,9 +34,9 @@ def get_pdf(self, docids, report_name, html=None, data=None): watermark = None if report.pdf_watermark: watermark = b64decode(report.pdf_watermark) - else: + elif report.pdf_watermark_expression: watermark = tools.safe_eval( - report.pdf_watermark_expression or 'None', + report.pdf_watermark_expression, dict(env=self.env, docs=self.env[report.model].browse(docids)), ) if watermark: From 6438c673964d4dea02be176f53b07370a1b38af8 Mon Sep 17 00:00:00 2001 From: oca-travis Date: Sat, 23 Jun 2018 20:06:13 +0000 Subject: [PATCH 13/42] [UPD] Update report_qweb_pdf_watermark.pot --- report_qweb_pdf_watermark/i18n/ca.po | 4 +- report_qweb_pdf_watermark/i18n/da.po | 4 +- report_qweb_pdf_watermark/i18n/de.po | 7 +-- report_qweb_pdf_watermark/i18n/el_GR.po | 7 +-- report_qweb_pdf_watermark/i18n/es.po | 7 +-- report_qweb_pdf_watermark/i18n/es_CO.po | 7 +-- report_qweb_pdf_watermark/i18n/fr.po | 4 +- report_qweb_pdf_watermark/i18n/gl.po | 4 +- report_qweb_pdf_watermark/i18n/hr.po | 7 +-- report_qweb_pdf_watermark/i18n/hr_HR.po | 10 ++-- report_qweb_pdf_watermark/i18n/it.po | 4 +- report_qweb_pdf_watermark/i18n/nb_NO.po | 7 +-- report_qweb_pdf_watermark/i18n/nl_NL.po | 7 +-- report_qweb_pdf_watermark/i18n/pl.po | 7 +-- report_qweb_pdf_watermark/i18n/pt.po | 4 +- report_qweb_pdf_watermark/i18n/pt_BR.po | 7 +-- report_qweb_pdf_watermark/i18n/pt_PT.po | 7 +-- .../i18n/report_qweb_pdf_watermark.pot | 46 +++++++++++++++++++ report_qweb_pdf_watermark/i18n/sl.po | 7 +-- report_qweb_pdf_watermark/i18n/tr.po | 4 +- report_qweb_pdf_watermark/i18n/tr_TR.po | 7 +-- 21 files changed, 114 insertions(+), 54 deletions(-) create mode 100644 report_qweb_pdf_watermark/i18n/report_qweb_pdf_watermark.pot diff --git a/report_qweb_pdf_watermark/i18n/ca.po b/report_qweb_pdf_watermark/i18n/ca.po index 922605a139..b4e6971225 100644 --- a/report_qweb_pdf_watermark/i18n/ca.po +++ b/report_qweb_pdf_watermark/i18n/ca.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # Carles Antoli , 2017 msgid "" @@ -12,10 +12,10 @@ msgstr "" "PO-Revision-Date: 2017-01-10 03:40+0000\n" "Last-Translator: Carles Antoli , 2017\n" "Language-Team: Catalan (https://www.transifex.com/oca/teams/23907/ca/)\n" +"Language: ca\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: ca\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. module: report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/i18n/da.po b/report_qweb_pdf_watermark/i18n/da.po index d4abe9a775..addddf408e 100644 --- a/report_qweb_pdf_watermark/i18n/da.po +++ b/report_qweb_pdf_watermark/i18n/da.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # Hans Henrik Gabelgaard , 2017 msgid "" @@ -12,10 +12,10 @@ msgstr "" "PO-Revision-Date: 2017-01-10 03:40+0000\n" "Last-Translator: Hans Henrik Gabelgaard , 2017\n" "Language-Team: Danish (https://www.transifex.com/oca/teams/23907/da/)\n" +"Language: da\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: da\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. module: report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/i18n/de.po b/report_qweb_pdf_watermark/i18n/de.po index 07eaf28f16..dfce4fd350 100644 --- a/report_qweb_pdf_watermark/i18n/de.po +++ b/report_qweb_pdf_watermark/i18n/de.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # OCA Transbot , 2017 # Rudolf Schnapka , 2017 @@ -13,10 +13,10 @@ msgstr "" "PO-Revision-Date: 2017-03-04 05:58+0000\n" "Last-Translator: Rudolf Schnapka , 2017\n" "Language-Team: German (https://www.transifex.com/oca/teams/23907/de/)\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. module: report_qweb_pdf_watermark @@ -25,7 +25,8 @@ msgid "" "An expression yielding the base64 encoded data to be used as watermark. \n" "You have access to variables `env` and `docs`" msgstr "" -"Ein Ausdruck der base64-geschlüsselte Daten, zur Verwendung als Wasserzeichen, liefert.\n" +"Ein Ausdruck der base64-geschlüsselte Daten, zur Verwendung als " +"Wasserzeichen, liefert.\n" "Sie haben die Variablen 'env' und 'docs' zur Verfügung" #. module: report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/i18n/el_GR.po b/report_qweb_pdf_watermark/i18n/el_GR.po index 5e375d30b4..7c18715b0a 100644 --- a/report_qweb_pdf_watermark/i18n/el_GR.po +++ b/report_qweb_pdf_watermark/i18n/el_GR.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # Kostas Goutoudis , 2017 msgid "" @@ -11,11 +11,12 @@ msgstr "" "POT-Creation-Date: 2017-01-10 03:40+0000\n" "PO-Revision-Date: 2017-01-10 03:40+0000\n" "Last-Translator: Kostas Goutoudis , 2017\n" -"Language-Team: Greek (Greece) (https://www.transifex.com/oca/teams/23907/el_GR/)\n" +"Language-Team: Greek (Greece) (https://www.transifex.com/oca/teams/23907/" +"el_GR/)\n" +"Language: el_GR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: el_GR\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. module: report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/i18n/es.po b/report_qweb_pdf_watermark/i18n/es.po index 8e2d25cfda..dc33655cd6 100644 --- a/report_qweb_pdf_watermark/i18n/es.po +++ b/report_qweb_pdf_watermark/i18n/es.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # Pedro M. Baeza , 2017 # OCA Transbot , 2017 @@ -13,10 +13,10 @@ msgstr "" "PO-Revision-Date: 2017-01-10 03:40+0000\n" "Last-Translator: OCA Transbot , 2017\n" "Language-Team: Spanish (https://www.transifex.com/oca/teams/23907/es/)\n" +"Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: es\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. module: report_qweb_pdf_watermark @@ -25,7 +25,8 @@ msgid "" "An expression yielding the base64 encoded data to be used as watermark. \n" "You have access to variables `env` and `docs`" msgstr "" -"Una expresión que obtenga los datos codificados en base64 a ser usada como marca de agua.\n" +"Una expresión que obtenga los datos codificados en base64 a ser usada como " +"marca de agua.\n" "Tiene acceso a las variables `env` y `docs`." #. module: report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/i18n/es_CO.po b/report_qweb_pdf_watermark/i18n/es_CO.po index 02428bcf50..9df7ededdb 100644 --- a/report_qweb_pdf_watermark/i18n/es_CO.po +++ b/report_qweb_pdf_watermark/i18n/es_CO.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # John Toro , 2017 msgid "" @@ -11,11 +11,12 @@ msgstr "" "POT-Creation-Date: 2017-01-10 03:40+0000\n" "PO-Revision-Date: 2017-01-10 03:40+0000\n" "Last-Translator: John Toro , 2017\n" -"Language-Team: Spanish (Colombia) (https://www.transifex.com/oca/teams/23907/es_CO/)\n" +"Language-Team: Spanish (Colombia) (https://www.transifex.com/oca/teams/23907/" +"es_CO/)\n" +"Language: es_CO\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: es_CO\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. module: report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/i18n/fr.po b/report_qweb_pdf_watermark/i18n/fr.po index 7119bbd017..5f26afaf24 100644 --- a/report_qweb_pdf_watermark/i18n/fr.po +++ b/report_qweb_pdf_watermark/i18n/fr.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # Yannick Vaucher , 2017 # OCA Transbot , 2017 @@ -13,10 +13,10 @@ msgstr "" "PO-Revision-Date: 2017-01-10 03:40+0000\n" "Last-Translator: OCA Transbot , 2017\n" "Language-Team: French (https://www.transifex.com/oca/teams/23907/fr/)\n" +"Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: fr\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #. module: report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/i18n/gl.po b/report_qweb_pdf_watermark/i18n/gl.po index a1a41315f5..002e1e7b9c 100644 --- a/report_qweb_pdf_watermark/i18n/gl.po +++ b/report_qweb_pdf_watermark/i18n/gl.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # Alejandro Santana , 2017 msgid "" @@ -12,10 +12,10 @@ msgstr "" "PO-Revision-Date: 2017-01-10 03:40+0000\n" "Last-Translator: Alejandro Santana , 2017\n" "Language-Team: Galician (https://www.transifex.com/oca/teams/23907/gl/)\n" +"Language: gl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: gl\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. module: report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/i18n/hr.po b/report_qweb_pdf_watermark/i18n/hr.po index bf2d355651..656191092d 100644 --- a/report_qweb_pdf_watermark/i18n/hr.po +++ b/report_qweb_pdf_watermark/i18n/hr.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # OCA Transbot , 2017 # Bole , 2018 @@ -13,11 +13,12 @@ msgstr "" "PO-Revision-Date: 2018-02-16 01:44+0000\n" "Last-Translator: Bole , 2018\n" "Language-Team: Croatian (https://www.transifex.com/oca/teams/23907/hr/)\n" +"Language: hr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: hr\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" #. module: report_qweb_pdf_watermark #: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression diff --git a/report_qweb_pdf_watermark/i18n/hr_HR.po b/report_qweb_pdf_watermark/i18n/hr_HR.po index cd44a13096..a959f743ab 100644 --- a/report_qweb_pdf_watermark/i18n/hr_HR.po +++ b/report_qweb_pdf_watermark/i18n/hr_HR.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # Bole , 2017 msgid "" @@ -11,12 +11,14 @@ msgstr "" "POT-Creation-Date: 2017-07-13 02:42+0000\n" "PO-Revision-Date: 2017-07-13 02:42+0000\n" "Last-Translator: Bole , 2017\n" -"Language-Team: Croatian (Croatia) (https://www.transifex.com/oca/teams/23907/hr_HR/)\n" +"Language-Team: Croatian (Croatia) (https://www.transifex.com/oca/teams/23907/" +"hr_HR/)\n" +"Language: hr_HR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: hr_HR\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" #. module: report_qweb_pdf_watermark #: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression diff --git a/report_qweb_pdf_watermark/i18n/it.po b/report_qweb_pdf_watermark/i18n/it.po index 76fe59701a..6051ac2ca2 100644 --- a/report_qweb_pdf_watermark/i18n/it.po +++ b/report_qweb_pdf_watermark/i18n/it.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # Paolo Valier , 2017 # OCA Transbot , 2017 @@ -13,10 +13,10 @@ msgstr "" "PO-Revision-Date: 2017-01-10 03:40+0000\n" "Last-Translator: OCA Transbot , 2017\n" "Language-Team: Italian (https://www.transifex.com/oca/teams/23907/it/)\n" +"Language: it\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: it\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. module: report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/i18n/nb_NO.po b/report_qweb_pdf_watermark/i18n/nb_NO.po index 9ef3189b0d..438e944e96 100644 --- a/report_qweb_pdf_watermark/i18n/nb_NO.po +++ b/report_qweb_pdf_watermark/i18n/nb_NO.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # Imre Kristoffer Eilertsen , 2017 msgid "" @@ -11,11 +11,12 @@ msgstr "" "POT-Creation-Date: 2017-01-10 03:40+0000\n" "PO-Revision-Date: 2017-01-10 03:40+0000\n" "Last-Translator: Imre Kristoffer Eilertsen , 2017\n" -"Language-Team: Norwegian Bokmål (Norway) (https://www.transifex.com/oca/teams/23907/nb_NO/)\n" +"Language-Team: Norwegian Bokmål (Norway) (https://www.transifex.com/oca/" +"teams/23907/nb_NO/)\n" +"Language: nb_NO\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: nb_NO\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. module: report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/i18n/nl_NL.po b/report_qweb_pdf_watermark/i18n/nl_NL.po index 384ca4ac01..bed64c883a 100644 --- a/report_qweb_pdf_watermark/i18n/nl_NL.po +++ b/report_qweb_pdf_watermark/i18n/nl_NL.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # Peter Hageman , 2017 msgid "" @@ -11,11 +11,12 @@ msgstr "" "POT-Creation-Date: 2017-06-23 00:28+0000\n" "PO-Revision-Date: 2017-06-23 00:28+0000\n" "Last-Translator: Peter Hageman , 2017\n" -"Language-Team: Dutch (Netherlands) (https://www.transifex.com/oca/teams/23907/nl_NL/)\n" +"Language-Team: Dutch (Netherlands) (https://www.transifex.com/oca/" +"teams/23907/nl_NL/)\n" +"Language: nl_NL\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: nl_NL\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. module: report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/i18n/pl.po b/report_qweb_pdf_watermark/i18n/pl.po index 57f39208da..fdfd31778c 100644 --- a/report_qweb_pdf_watermark/i18n/pl.po +++ b/report_qweb_pdf_watermark/i18n/pl.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # OCA Transbot , 2017 msgid "" @@ -12,11 +12,12 @@ msgstr "" "PO-Revision-Date: 2017-01-10 03:40+0000\n" "Last-Translator: OCA Transbot , 2017\n" "Language-Team: Polish (https://www.transifex.com/oca/teams/23907/pl/)\n" +"Language: pl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: pl\n" -"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " +"|| n%100>=20) ? 1 : 2);\n" #. module: report_qweb_pdf_watermark #: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression diff --git a/report_qweb_pdf_watermark/i18n/pt.po b/report_qweb_pdf_watermark/i18n/pt.po index b4eee93e02..6a0a6a120f 100644 --- a/report_qweb_pdf_watermark/i18n/pt.po +++ b/report_qweb_pdf_watermark/i18n/pt.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # OCA Transbot , 2017 msgid "" @@ -12,10 +12,10 @@ msgstr "" "PO-Revision-Date: 2017-01-10 03:40+0000\n" "Last-Translator: OCA Transbot , 2017\n" "Language-Team: Portuguese (https://www.transifex.com/oca/teams/23907/pt/)\n" +"Language: pt\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: pt\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. module: report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/i18n/pt_BR.po b/report_qweb_pdf_watermark/i18n/pt_BR.po index 6002005fba..34f4b3f0d0 100644 --- a/report_qweb_pdf_watermark/i18n/pt_BR.po +++ b/report_qweb_pdf_watermark/i18n/pt_BR.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # Armando Vulcano Junior , 2017 msgid "" @@ -11,11 +11,12 @@ msgstr "" "POT-Creation-Date: 2017-01-10 03:40+0000\n" "PO-Revision-Date: 2017-01-10 03:40+0000\n" "Last-Translator: Armando Vulcano Junior , 2017\n" -"Language-Team: Portuguese (Brazil) (https://www.transifex.com/oca/teams/23907/pt_BR/)\n" +"Language-Team: Portuguese (Brazil) (https://www.transifex.com/oca/" +"teams/23907/pt_BR/)\n" +"Language: pt_BR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: pt_BR\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #. module: report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/i18n/pt_PT.po b/report_qweb_pdf_watermark/i18n/pt_PT.po index 9be87c18a2..356b37b89d 100644 --- a/report_qweb_pdf_watermark/i18n/pt_PT.po +++ b/report_qweb_pdf_watermark/i18n/pt_PT.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # OCA Transbot , 2017 # Carla Berjano , 2017 @@ -12,11 +12,12 @@ msgstr "" "POT-Creation-Date: 2017-01-14 06:07+0000\n" "PO-Revision-Date: 2017-01-14 06:07+0000\n" "Last-Translator: Carla Berjano , 2017\n" -"Language-Team: Portuguese (Portugal) (https://www.transifex.com/oca/teams/23907/pt_PT/)\n" +"Language-Team: Portuguese (Portugal) (https://www.transifex.com/oca/" +"teams/23907/pt_PT/)\n" +"Language: pt_PT\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: pt_PT\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. module: report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/i18n/report_qweb_pdf_watermark.pot b/report_qweb_pdf_watermark/i18n/report_qweb_pdf_watermark.pot new file mode 100644 index 0000000000..f1e83ac4f9 --- /dev/null +++ b/report_qweb_pdf_watermark/i18n/report_qweb_pdf_watermark.pot @@ -0,0 +1,46 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * report_qweb_pdf_watermark +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: <>\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "An expression yielding the base64 encoded data to be used as watermark. \n" +"You have access to variables `env` and `docs`" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.actions.report.xml,name:report_qweb_pdf_watermark.demo_report +msgid "Demo report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_report +msgid "Report" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark +msgid "Watermark" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model.fields,field_description:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression +msgid "Watermark expression" +msgstr "" + +#. module: report_qweb_pdf_watermark +#: model:ir.model,name:report_qweb_pdf_watermark.model_ir_actions_report_xml +msgid "ir.actions.report.xml" +msgstr "" + diff --git a/report_qweb_pdf_watermark/i18n/sl.po b/report_qweb_pdf_watermark/i18n/sl.po index b75fa34950..fc2204a651 100644 --- a/report_qweb_pdf_watermark/i18n/sl.po +++ b/report_qweb_pdf_watermark/i18n/sl.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # Matjaž Mozetič , 2017 msgid "" @@ -12,11 +12,12 @@ msgstr "" "PO-Revision-Date: 2017-01-10 03:40+0000\n" "Last-Translator: Matjaž Mozetič , 2017\n" "Language-Team: Slovenian (https://www.transifex.com/oca/teams/23907/sl/)\n" +"Language: sl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: sl\n" -"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" +"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n" +"%100==4 ? 2 : 3);\n" #. module: report_qweb_pdf_watermark #: model:ir.model.fields,help:report_qweb_pdf_watermark.field_ir_act_report_xml_pdf_watermark_expression diff --git a/report_qweb_pdf_watermark/i18n/tr.po b/report_qweb_pdf_watermark/i18n/tr.po index d721393f1c..fbf622e6e7 100644 --- a/report_qweb_pdf_watermark/i18n/tr.po +++ b/report_qweb_pdf_watermark/i18n/tr.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # Ahmet Altinisik , 2017 msgid "" @@ -12,10 +12,10 @@ msgstr "" "PO-Revision-Date: 2017-01-10 03:40+0000\n" "Last-Translator: Ahmet Altinisik , 2017\n" "Language-Team: Turkish (https://www.transifex.com/oca/teams/23907/tr/)\n" +"Language: tr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: tr\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #. module: report_qweb_pdf_watermark diff --git a/report_qweb_pdf_watermark/i18n/tr_TR.po b/report_qweb_pdf_watermark/i18n/tr_TR.po index 3ed8bbdb42..732297c1ec 100644 --- a/report_qweb_pdf_watermark/i18n/tr_TR.po +++ b/report_qweb_pdf_watermark/i18n/tr_TR.po @@ -1,7 +1,7 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: # * report_qweb_pdf_watermark -# +# # Translators: # Ozge Altinisik , 2017 msgid "" @@ -11,11 +11,12 @@ msgstr "" "POT-Creation-Date: 2017-01-10 03:40+0000\n" "PO-Revision-Date: 2017-01-10 03:40+0000\n" "Last-Translator: Ozge Altinisik , 2017\n" -"Language-Team: Turkish (Turkey) (https://www.transifex.com/oca/teams/23907/tr_TR/)\n" +"Language-Team: Turkish (Turkey) (https://www.transifex.com/oca/teams/23907/" +"tr_TR/)\n" +"Language: tr_TR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Language: tr_TR\n" "Plural-Forms: nplurals=1; plural=0;\n" #. module: report_qweb_pdf_watermark From 0f98e2b21b3899a38b8cdd3bf9ed42d99e5e71fa Mon Sep 17 00:00:00 2001 From: Rod Schouteden Date: Thu, 16 Aug 2018 17:55:26 +0200 Subject: [PATCH 14/42] [MIG] report_qweb_pdf_watermark: Migration to 11.0 --- report_qweb_pdf_watermark/README.rst | 5 +- report_qweb_pdf_watermark/__init__.py | 2 +- report_qweb_pdf_watermark/__manifest__.py | 17 +++-- report_qweb_pdf_watermark/demo/report.xml | 8 +-- report_qweb_pdf_watermark/i18n/ca.po | 10 +-- report_qweb_pdf_watermark/i18n/da.po | 10 +-- report_qweb_pdf_watermark/i18n/de.po | 15 ++-- report_qweb_pdf_watermark/i18n/el_GR.po | 13 ++-- report_qweb_pdf_watermark/i18n/es.po | 15 ++-- report_qweb_pdf_watermark/i18n/es_CO.po | 13 ++-- report_qweb_pdf_watermark/i18n/fr.po | 12 ++-- report_qweb_pdf_watermark/i18n/gl.po | 10 +-- report_qweb_pdf_watermark/i18n/hr.po | 36 +++++----- report_qweb_pdf_watermark/i18n/hr_HR.po | 18 +++-- report_qweb_pdf_watermark/i18n/it.po | 12 ++-- report_qweb_pdf_watermark/i18n/nb_NO.po | 13 ++-- report_qweb_pdf_watermark/i18n/nl_NL.po | 15 ++-- report_qweb_pdf_watermark/i18n/pl.po | 13 ++-- report_qweb_pdf_watermark/i18n/pt.po | 10 +-- report_qweb_pdf_watermark/i18n/pt_BR.po | 13 ++-- report_qweb_pdf_watermark/i18n/pt_PT.po | 15 ++-- report_qweb_pdf_watermark/i18n/sl.po | 13 ++-- report_qweb_pdf_watermark/i18n/tr.po | 12 ++-- report_qweb_pdf_watermark/i18n/tr_TR.po | 13 ++-- report_qweb_pdf_watermark/models/__init__.py | 2 - .../models/ir_actions_report_xml.py | 14 ---- report_qweb_pdf_watermark/models/report.py | 69 ++++++++++++------- report_qweb_pdf_watermark/tests/__init__.py | 1 - .../tests/test_report_qweb_pdf_watermark.py | 11 ++- .../views/ir_actions_report_xml.xml | 2 +- .../views/layout_templates.xml | 2 +- 31 files changed, 204 insertions(+), 210 deletions(-) delete mode 100644 report_qweb_pdf_watermark/models/ir_actions_report_xml.py diff --git a/report_qweb_pdf_watermark/README.rst b/report_qweb_pdf_watermark/README.rst index 07f681b185..16c8a95d53 100644 --- a/report_qweb_pdf_watermark/README.rst +++ b/report_qweb_pdf_watermark/README.rst @@ -11,7 +11,9 @@ This module was written to add watermarks (backgrounds) to PDF reports. Because Installation ============ -This module works out of the box, but is faster if you install the python library PyPDF2. +As PyPDF is not supported in python3, you need to install PyPDF2:: + +$ pip install pypdf2 Usage ===== @@ -51,6 +53,7 @@ Contributors * Holger Brunn * Stefan Rijnhart +* Rod Schouteden Do not contact contributors directly about help with questions or problems concerning this addon, but use the `community mailing list `_ or the `appropriate specialized mailinglist `_ for help, and the bug tracker linked in `Bug Tracker`_ above for technical issues. diff --git a/report_qweb_pdf_watermark/__init__.py b/report_qweb_pdf_watermark/__init__.py index 7eda98a232..5c170507d8 100644 --- a/report_qweb_pdf_watermark/__init__.py +++ b/report_qweb_pdf_watermark/__init__.py @@ -1,4 +1,4 @@ -# -*- coding: utf-8 -*- # © 2016 Therp BV # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + from . import models diff --git a/report_qweb_pdf_watermark/__manifest__.py b/report_qweb_pdf_watermark/__manifest__.py index f4ca0611c8..74b5ad7883 100644 --- a/report_qweb_pdf_watermark/__manifest__.py +++ b/report_qweb_pdf_watermark/__manifest__.py @@ -1,20 +1,29 @@ -# -*- coding: utf-8 -*- # © 2016 Therp BV # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). { "name": "Pdf watermark", - "version": "10.0.1.0.2", + "version": "11.0.1.0.0", "author": "Therp BV, " "Odoo Community Association (OCA)", "license": "AGPL-3", - "category": "Reporting", + "category": "Technical Settings", "summary": "Add watermarks to your QWEB PDF reports", + "website": "https://github.com/oca/reporting-engine", "depends": [ - 'report', + 'web', ], "data": [ "demo/report.xml", "views/ir_actions_report_xml.xml", "views/layout_templates.xml", ], + "demo": [ + "demo/report.xml" + ], + "intallable": True, + 'external_dependencies': { + 'python': [ + 'PyPDF2', + ], + }, } diff --git a/report_qweb_pdf_watermark/demo/report.xml b/report_qweb_pdf_watermark/demo/report.xml index 7528dbf9db..1e07ba613e 100644 --- a/report_qweb_pdf_watermark/demo/report.xml +++ b/report_qweb_pdf_watermark/demo/report.xml @@ -7,14 +7,14 @@ report_type="qweb-pdf" name="report_qweb_pdf_watermark.demo_report_view" file="report_qweb_pdf_watermark.demo_report_view" - paperformat="report.paperformat_euro" + paperformat="base.paperformat_euro" /> - + docs[:1].company_id.logo