Merge branch '15.0' into 15.0-yaltik

This commit is contained in:
Fabien BOURGEOIS 2022-07-21 14:47:47 +02:00
commit 6a7cfec7d0
21 changed files with 176 additions and 35 deletions

View File

@ -22,14 +22,14 @@ Available addons
addon | version | maintainers | summary addon | version | maintainers | summary
--- | --- | --- | --- --- | --- | --- | ---
[base_search_mail_content](base_search_mail_content/) | 15.0.1.0.1 | | Base Search Mail Content [base_search_mail_content](base_search_mail_content/) | 15.0.1.0.1 | | Base Search Mail Content
[mail_activity_board](mail_activity_board/) | 15.0.1.0.0 | | Add Activity Boards [mail_activity_board](mail_activity_board/) | 15.0.1.1.0 | | Add Activity Boards
[mail_activity_creator](mail_activity_creator/) | 15.0.1.0.0 | | Show activities creator [mail_activity_creator](mail_activity_creator/) | 15.0.1.0.0 | | Show activities creator
[mail_activity_done](mail_activity_done/) | 15.0.1.0.0 | | Mail Activity Done [mail_activity_done](mail_activity_done/) | 15.0.1.0.0 | | Mail Activity Done
[mail_activity_partner](mail_activity_partner/) | 15.0.1.0.0 | | Add Partner to Activities [mail_activity_partner](mail_activity_partner/) | 15.0.1.0.0 | | Add Partner to Activities
[mail_activity_team](mail_activity_team/) | 15.0.1.2.0 | | Add Teams to Activities [mail_activity_team](mail_activity_team/) | 15.0.1.2.0 | | Add Teams to Activities
[mail_attach_existing_attachment](mail_attach_existing_attachment/) | 15.0.1.0.0 | | Adding attachment on the object by sending this one [mail_attach_existing_attachment](mail_attach_existing_attachment/) | 15.0.1.0.0 | | Adding attachment on the object by sending this one
[mail_autosubscribe](mail_autosubscribe/) | 15.0.1.0.1 | | Automatically subscribe partners to its company's business documents [mail_autosubscribe](mail_autosubscribe/) | 15.0.1.0.3 | | Automatically subscribe partners to its company's business documents
[mail_debrand](mail_debrand/) | 15.0.1.2.1 | [![pedrobaeza](https://github.com/pedrobaeza.png?size=30px)](https://github.com/pedrobaeza) [![joao-p-marques](https://github.com/joao-p-marques.png?size=30px)](https://github.com/joao-p-marques) | Remove Odoo branding in sent emails Removes anchor <a href odoo.com togheder with it's parent ( for powerd by) form all the templates removes any 'odoo' that are in tempalte texts > 20characters [mail_debrand](mail_debrand/) | 15.0.1.2.2 | [![pedrobaeza](https://github.com/pedrobaeza.png?size=30px)](https://github.com/pedrobaeza) [![joao-p-marques](https://github.com/joao-p-marques.png?size=30px)](https://github.com/joao-p-marques) | Remove Odoo branding in sent emails Removes anchor <a href odoo.com togheder with it's parent ( for powerd by) form all the templates removes any 'odoo' that are in tempalte texts > 20characters
[mail_optional_follower_notification](mail_optional_follower_notification/) | 15.0.1.0.1 | | Choose to notify followers on mail.compose.message [mail_optional_follower_notification](mail_optional_follower_notification/) | 15.0.1.0.1 | | Choose to notify followers on mail.compose.message
[mail_outbound_static](mail_outbound_static/) | 15.0.1.0.0 | | Allows you to configure the from header for a mail server. [mail_outbound_static](mail_outbound_static/) | 15.0.1.0.0 | | Allows you to configure the from header for a mail server.
[mail_preview_base](mail_preview_base/) | 15.0.1.0.0 | | Base to add more previewing options [mail_preview_base](mail_preview_base/) | 15.0.1.0.0 | | Base to add more previewing options

View File

@ -64,6 +64,7 @@ Authors
* SDi * SDi
* David Juaneda * David Juaneda
* Sodexis * Sodexis
* ACSONE SA/NV
Contributors Contributors
~~~~~~~~~~~~ ~~~~~~~~~~~~
@ -80,6 +81,10 @@ Contributors
* Pedro Gonzalez (pedro.gonzalez@pesol.es) * Pedro Gonzalez (pedro.gonzalez@pesol.es)
* `ACSONE SA/NV <https://www.acsone.eu>`_
* Laurent Mignon <laurent.mignon@acsone.eu>
Maintainers Maintainers
~~~~~~~~~~~ ~~~~~~~~~~~

View File

@ -4,11 +4,11 @@
{ {
"name": "Mail Activity Board", "name": "Mail Activity Board",
"summary": "Add Activity Boards", "summary": "Add Activity Boards",
"version": "15.0.1.0.0", "version": "15.0.1.1.0",
"development_status": "Beta", "development_status": "Beta",
"category": "Social Network", "category": "Social Network",
"website": "https://github.com/OCA/social", "website": "https://github.com/OCA/social",
"author": "SDi, David Juaneda, Sodexis, Odoo Community Association (OCA)", "author": "SDi, David Juaneda, Sodexis, ACSONE SA/NV, Odoo Community Association (OCA)",
"license": "AGPL-3", "license": "AGPL-3",
"installable": True, "installable": True,
"depends": ["calendar", "board"], "depends": ["calendar", "board"],

View File

@ -16,6 +16,16 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 3.10\n" "X-Generator: Weblate 3.10\n"
#. module: mail_activity_board
#: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_kanban
msgid "<i title=\"date\" class=\"fa fa-clock-o\"/>"
msgstr ""
#. module: mail_activity_board
#: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_kanban
msgid "<span><i title=\"date\" class=\"fa fa-clock-o\"/></span>"
msgstr ""
#. module: mail_activity_board #. module: mail_activity_board
#: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_search #: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_search
msgid "Act. next 6 months" msgid "Act. next 6 months"
@ -28,7 +38,7 @@ msgstr "Act. próximo mes"
#. module: mail_activity_board #. module: mail_activity_board
#. openerp-web #. openerp-web
#: code:addons/mail_activity_board/static/src/xml/inherit_chatter.xml:0 #: code:addons/mail_activity_board/static/src/components/chatter_topbar/chatter_topbar.xml:0
#: model:ir.actions.act_window,name:mail_activity_board.open_boards_activities #: model:ir.actions.act_window,name:mail_activity_board.open_boards_activities
#: model:ir.ui.menu,name:mail_activity_board.board_menu_activities #: model:ir.ui.menu,name:mail_activity_board.board_menu_activities
#, python-format #, python-format
@ -56,6 +66,11 @@ msgstr ""
msgid "Attendees" msgid "Attendees"
msgstr "Asistentes" msgstr "Asistentes"
#. module: mail_activity_board
#: model:ir.model.fields,field_description:mail_activity_board.field_mail_activity__related_model_instance
msgid "Document"
msgstr ""
#. module: mail_activity_board #. module: mail_activity_board
#: model:ir.model.fields,field_description:mail_activity_board.field_mail_activity__duration #: model:ir.model.fields,field_description:mail_activity_board.field_mail_activity__duration
msgid "Duration" msgid "Duration"
@ -72,13 +87,6 @@ msgstr "Registrar una nota..."
msgid "Origin" msgid "Origin"
msgstr "Origen" msgstr "Origen"
#. module: mail_activity_board
#. openerp-web
#: code:addons/mail_activity_board/static/src/xml/inherit_chatter.xml:0
#, python-format
msgid "See activities list"
msgstr "Ver lista de actividades"
#. module: mail_activity_board #. module: mail_activity_board
#: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_search #: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_search
msgid "Show activities scheduled for next 6 months." msgid "Show activities scheduled for next 6 months."
@ -97,7 +105,8 @@ msgstr "Inicio"
#. module: mail_activity_board #. module: mail_activity_board
#: model:ir.model.fields,help:mail_activity_board.field_mail_activity__calendar_event_id_start #: model:ir.model.fields,help:mail_activity_board.field_mail_activity__calendar_event_id_start
msgid "Start date of an event, without time for full days events" msgid "Start date of an event, without time for full days events"
msgstr "Fecha de inicio de un evento, sin tiempo para eventos de días completos" msgstr ""
"Fecha de inicio de un evento, sin tiempo para eventos de días completos"
#. module: mail_activity_board #. module: mail_activity_board
#: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_form_board #: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_form_board
@ -113,3 +122,6 @@ msgstr "Usuario"
#: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_form_board #: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_form_board
msgid "e.g. Discuss proposal" msgid "e.g. Discuss proposal"
msgstr "Ej. Discutir propuesta" msgstr "Ej. Discutir propuesta"
#~ msgid "See activities list"
#~ msgstr "Ver lista de actividades"

View File

@ -64,6 +64,11 @@ msgstr ""
msgid "Attendees" msgid "Attendees"
msgstr "" msgstr ""
#. module: mail_activity_board
#: model:ir.model.fields,field_description:mail_activity_board.field_mail_activity__related_model_instance
msgid "Document"
msgstr ""
#. module: mail_activity_board #. module: mail_activity_board
#: model:ir.model.fields,field_description:mail_activity_board.field_mail_activity__duration #: model:ir.model.fields,field_description:mail_activity_board.field_mail_activity__duration
msgid "Duration" msgid "Duration"

View File

@ -16,6 +16,16 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n > 1;\n" "Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 3.10\n" "X-Generator: Weblate 3.10\n"
#. module: mail_activity_board
#: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_kanban
msgid "<i title=\"date\" class=\"fa fa-clock-o\"/>"
msgstr ""
#. module: mail_activity_board
#: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_kanban
msgid "<span><i title=\"date\" class=\"fa fa-clock-o\"/></span>"
msgstr ""
#. module: mail_activity_board #. module: mail_activity_board
#: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_search #: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_search
msgid "Act. next 6 months" msgid "Act. next 6 months"
@ -28,7 +38,7 @@ msgstr "Act. le mois prochain"
#. module: mail_activity_board #. module: mail_activity_board
#. openerp-web #. openerp-web
#: code:addons/mail_activity_board/static/src/xml/inherit_chatter.xml:0 #: code:addons/mail_activity_board/static/src/components/chatter_topbar/chatter_topbar.xml:0
#: model:ir.actions.act_window,name:mail_activity_board.open_boards_activities #: model:ir.actions.act_window,name:mail_activity_board.open_boards_activities
#: model:ir.ui.menu,name:mail_activity_board.board_menu_activities #: model:ir.ui.menu,name:mail_activity_board.board_menu_activities
#, python-format #, python-format
@ -56,6 +66,11 @@ msgstr "Combinaison d'activités"
msgid "Attendees" msgid "Attendees"
msgstr "Participants" msgstr "Participants"
#. module: mail_activity_board
#: model:ir.model.fields,field_description:mail_activity_board.field_mail_activity__related_model_instance
msgid "Document"
msgstr ""
#. module: mail_activity_board #. module: mail_activity_board
#: model:ir.model.fields,field_description:mail_activity_board.field_mail_activity__duration #: model:ir.model.fields,field_description:mail_activity_board.field_mail_activity__duration
msgid "Duration" msgid "Duration"
@ -72,13 +87,6 @@ msgstr "Enregistrer une note ..."
msgid "Origin" msgid "Origin"
msgstr "Origine" msgstr "Origine"
#. module: mail_activity_board
#. openerp-web
#: code:addons/mail_activity_board/static/src/xml/inherit_chatter.xml:0
#, python-format
msgid "See activities list"
msgstr "Voir la liste des activités"
#. module: mail_activity_board #. module: mail_activity_board
#: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_search #: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_search
msgid "Show activities scheduled for next 6 months." msgid "Show activities scheduled for next 6 months."
@ -115,3 +123,6 @@ msgstr "Utilisateur"
#: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_form_board #: model_terms:ir.ui.view,arch_db:mail_activity_board.mail_activity_view_form_board
msgid "e.g. Discuss proposal" msgid "e.g. Discuss proposal"
msgstr "Par exemple. Discuter de la proposition" msgstr "Par exemple. Discuter de la proposition"
#~ msgid "See activities list"
#~ msgstr "Voir la liste des activités"

View File

@ -63,6 +63,11 @@ msgstr ""
msgid "Attendees" msgid "Attendees"
msgstr "" msgstr ""
#. module: mail_activity_board
#: model:ir.model.fields,field_description:mail_activity_board.field_mail_activity__related_model_instance
msgid "Document"
msgstr ""
#. module: mail_activity_board #. module: mail_activity_board
#: model:ir.model.fields,field_description:mail_activity_board.field_mail_activity__duration #: model:ir.model.fields,field_description:mail_activity_board.field_mail_activity__duration
msgid "Duration" msgid "Duration"

View File

@ -17,6 +17,24 @@ class MailActivity(models.Model):
calendar_event_id_partner_ids = fields.Many2many( calendar_event_id_partner_ids = fields.Many2many(
related="calendar_event_id.partner_ids", readonly=True related="calendar_event_id.partner_ids", readonly=True
) )
related_model_instance = fields.Reference(
selection="_selection_related_model_instance",
compute="_compute_related_model_instance",
string="Document",
)
@api.depends("res_id", "res_model")
def _compute_related_model_instance(self):
for record in self:
ref = False
if record.res_id:
ref = "{},{}".format(record.res_model, record.res_id)
record.related_model_instance = ref
@api.model
def _selection_related_model_instance(self):
models = self.env["ir.model"].search([("is_mail_activity", "=", True)])
return [(model.model, model.name) for model in models]
def open_origin(self): def open_origin(self):
self.ensure_one() self.ensure_one()

View File

@ -9,3 +9,7 @@
* `Pesol <https://www.pesol.es>`_: * `Pesol <https://www.pesol.es>`_:
* Pedro Gonzalez (pedro.gonzalez@pesol.es) * Pedro Gonzalez (pedro.gonzalez@pesol.es)
* `ACSONE SA/NV <https://www.acsone.eu>`_
* Laurent Mignon <laurent.mignon@acsone.eu>

View File

@ -409,6 +409,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
<li>SDi</li> <li>SDi</li>
<li>David Juaneda</li> <li>David Juaneda</li>
<li>Sodexis</li> <li>Sodexis</li>
<li>ACSONE SA/NV</li>
</ul> </ul>
</div> </div>
<div class="section" id="contributors"> <div class="section" id="contributors">
@ -426,6 +427,10 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
<li>Pedro Gonzalez (<a class="reference external" href="mailto:pedro.gonzalez&#64;pesol.es">pedro.gonzalez&#64;pesol.es</a>)</li> <li>Pedro Gonzalez (<a class="reference external" href="mailto:pedro.gonzalez&#64;pesol.es">pedro.gonzalez&#64;pesol.es</a>)</li>
</ul> </ul>
</li> </li>
<li><a class="reference external" href="https://www.acsone.eu">ACSONE SA/NV</a><ul>
<li>Laurent Mignon &lt;<a class="reference external" href="mailto:laurent.mignon&#64;acsone.eu">laurent.mignon&#64;acsone.eu</a>&gt;</li>
</ul>
</li>
</ul> </ul>
</div> </div>
<div class="section" id="maintainers"> <div class="section" id="maintainers">

View File

@ -202,3 +202,11 @@ class TestMailActivityBoardMethods(TransactionCase):
for act in acts: for act in acts:
self.assertIn(act, self.partner_client.activity_ids.ids) self.assertIn(act, self.partner_client.activity_ids.ids)
def test_related_model_instance(self):
"""This test case checks the direct access from the activity to the
linked model instance
"""
self.assertEqual(self.act3.related_model_instance, self.partner_client)
self.act3.write({"res_id": False, "res_model": False})
self.assertFalse(self.act3.related_model_instance)

View File

@ -4,6 +4,45 @@
VIEWS VIEWS
--> -->
<!-- FORM POP
Add a link to the related model instance to ease navigation
-->
<record id="mail_activity_view_form_popup" model="ir.ui.view">
<field
name="name"
>mail.activity.view.form.popup (in mail_activity_board)</field>
<field name="model">mail.activity</field>
<field name="inherit_id" ref="mail.mail_activity_view_form_popup" />
<field name="arch" type="xml">
<field name="activity_type_id" position="before">
<field
name="related_model_instance"
attrs="{'invisible': [('related_model_instance','=', False)]}"
/>
</field>
</field>
</record>
<!-- CALENDAR VIEW
Add a link to the related model instance to ease navigation
-->
<record id="mail_activity_view_calendar" model="ir.ui.view">
<field
name="name"
>mail.activity.view.form.calendar (in mail_activity_board)</field>
<field name="model">mail.activity</field>
<field name="inherit_id" ref="mail.mail_activity_view_calendar" />
<field name="arch" type="xml">
<field name="res_name" position="before">
<field name="related_model_instance" />
</field>
<field name="res_name" position="attributes">
<attribute name="invisible">1</attribute>
</field>
</field>
</record>
<!-- FORM VIEW --> <!-- FORM VIEW -->
<record id="mail_activity_view_form_board" model="ir.ui.view"> <record id="mail_activity_view_form_board" model="ir.ui.view">
<field name="name">mail.activity.boards.view.form</field> <field name="name">mail.activity.boards.view.form</field>
@ -18,7 +57,8 @@
class="centre oe_link" class="centre oe_link"
nolabel="1" nolabel="1"
> >
<h1><field name="res_name" /></h1> <field name="res_name" invisible="1" />
<h1><field name="related_model_instance" /></h1>
</button> </button>
<field name="activity_category" invisible="1" /> <field name="activity_category" invisible="1" />
<field name="res_model" invisible="1" /> <field name="res_model" invisible="1" />
@ -88,7 +128,12 @@
name="decoration-success" name="decoration-success"
>(date_deadline &gt; current_date)</attribute> >(date_deadline &gt; current_date)</attribute>
</xpath> </xpath>
<field name="res_name" position="before">
<field name="related_model_instance" />
</field>
<field name="res_name" position="attributes">
<attribute name="invisible">1</attribute>
</field>
</field> </field>
</record> </record>

View File

@ -80,6 +80,10 @@ Contributors
* Iván Todorovich <ivan.todorovich@gmail.com> * Iván Todorovich <ivan.todorovich@gmail.com>
* `Moduon <https://www.moduon.team/>`__
* Jairo Llopis
Maintainers Maintainers
~~~~~~~~~~~ ~~~~~~~~~~~

View File

@ -5,11 +5,14 @@
{ {
"name": "Mail Autosubscribe", "name": "Mail Autosubscribe",
"summary": "Automatically subscribe partners to its company's business documents", "summary": "Automatically subscribe partners to its company's business documents",
"version": "15.0.1.0.1", "version": "15.0.1.0.3",
"author": "Camptocamp SA, Odoo Community Association (OCA)", "author": "Camptocamp SA, Odoo Community Association (OCA)",
"license": "AGPL-3", "license": "AGPL-3",
"category": "Marketing", "category": "Marketing",
"depends": ["mail"], "depends": ["mail"],
"external_dependencies": {
"python": ["odoo_test_helper"],
},
"website": "https://github.com/OCA/social", "website": "https://github.com/OCA/social",
"data": [ "data": [
"security/ir.model.access.csv", "security/ir.model.access.csv",

View File

@ -19,7 +19,10 @@ class MailThread(models.AbstractModel):
for follower in followers for follower in followers
if follower not in partners and follower not in self.message_partner_ids if follower not in partners and follower not in self.message_partner_ids
] ]
partner_ids += follower_ids if isinstance(partner_ids, tuple):
partner_ids += tuple(follower_ids)
else:
partner_ids += follower_ids
return super().message_subscribe( return super().message_subscribe(
partner_ids=partner_ids, partner_ids=partner_ids,
subtype_ids=subtype_ids, subtype_ids=subtype_ids,

View File

@ -1,3 +1,7 @@
* `Camptocamp <https://www.camptocamp.com>`_ * `Camptocamp <https://www.camptocamp.com>`_
* Iván Todorovich <ivan.todorovich@gmail.com> * Iván Todorovich <ivan.todorovich@gmail.com>
* `Moduon <https://www.moduon.team/>`__
* Jairo Llopis

View File

@ -429,6 +429,13 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
</ul> </ul>
</blockquote> </blockquote>
</li> </li>
<li><p class="first"><a class="reference external" href="https://www.moduon.team/">Moduon</a></p>
<blockquote>
<ul class="simple">
<li>Jairo Llopis</li>
</ul>
</blockquote>
</li>
</ul> </ul>
</div> </div>
<div class="section" id="maintainers"> <div class="section" id="maintainers">

View File

@ -28,8 +28,8 @@ class TestMailAutosubscribe(TransactionCase):
{ {
"model_id": cls.fake_order_model.id, "model_id": cls.fake_order_model.id,
"name": "Fake Order: Send by Mail", "name": "Fake Order: Send by Mail",
"subject": "Fake Order: ${object.partner_id.name}", "subject": "Fake Order: {{object.partner_id.name}}",
"partner_to": "${object.partner_id.id}", "partner_to": "{{object.partner_id.id}}",
"body_html": "Hello, this is a fake order", "body_html": "Hello, this is a fake order",
} }
) )
@ -111,7 +111,7 @@ class TestMailAutosubscribe(TransactionCase):
default_composition_mode="comment", default_composition_mode="comment",
) )
) )
composer.save().send_mail() composer.save().action_send_mail()
message = self.order.message_ids[0] message = self.order.message_ids[0]
self.assertEqual(message.partner_ids, self.partner_2 | self.partner_3) self.assertEqual(message.partner_ids, self.partner_2 | self.partner_3)
@ -127,6 +127,6 @@ class TestMailAutosubscribe(TransactionCase):
default_composition_mode="comment", default_composition_mode="comment",
) )
) )
composer.save().send_mail() composer.save().action_send_mail()
message = self.order.message_ids[0] message = self.order.message_ids[0]
self.assertEqual(message.partner_ids, self.partner_2) self.assertEqual(message.partner_ids, self.partner_2)

View File

@ -12,7 +12,7 @@
( for powerd by) form all the templates ( for powerd by) form all the templates
removes any 'odoo' that are in tempalte texts > 20characters removes any 'odoo' that are in tempalte texts > 20characters
""", """,
"version": "15.0.1.2.1", "version": "15.0.1.2.2",
"category": "Social Network", "category": "Social Network",
"website": "https://github.com/OCA/social", "website": "https://github.com/OCA/social",
"author": """Tecnativa, ForgeFlow, Onestein, Sodexis, Nexterp Romania, "author": """Tecnativa, ForgeFlow, Onestein, Sodexis, Nexterp Romania,

View File

@ -38,7 +38,7 @@ class TestMailDebrandDigest(common.TransactionCase):
"digest.digest_mail_main", "digest.digest_mail_main",
"digest.digest", "digest.digest",
self.mail_digest_id.ids, self.mail_digest_id.ids,
engine="qweb", engine="qweb_view",
add_context={ add_context={
"title": self.mail_digest_id.name, "title": self.mail_digest_id.name,
"top_button_label": _("Connect"), "top_button_label": _("Connect"),
@ -48,13 +48,13 @@ class TestMailDebrandDigest(common.TransactionCase):
"tips_count": 1, "tips_count": 1,
"formatted_date": datetime.today().strftime("%B %d, %Y"), "formatted_date": datetime.today().strftime("%B %d, %Y"),
"display_mobile_banner": True, "display_mobile_banner": True,
"kpi_data": self.mail_digest_id.compute_kpis( "kpi_data": self.mail_digest_id._compute_kpis(
self.env.user.company_id, self.env.user self.env.user.company_id, self.env.user
), ),
"tips": self.mail_digest_id.compute_tips( "tips": self.mail_digest_id._compute_tips(
self.env.user.company_id, self.env.user, tips_count=1, consumed=True self.env.user.company_id, self.env.user, tips_count=1, consumed=True
), ),
"preferences": self.mail_digest_id.compute_preferences( "preferences": self.mail_digest_id._compute_preferences(
self.env.user.company_id, self.env.user self.env.user.company_id, self.env.user
), ),
}, },

2
requirements.txt Normal file
View File

@ -0,0 +1,2 @@
# generated from manifests external_dependencies
odoo_test_helper