Skip to content

Commit 4ba5801

Browse files
committed
Added modules multi_alias_domain_mail and helpdesk_mgmt_multi_alias_domain_mail
1 parent d1b97c6 commit 4ba5801

32 files changed

+2145
-604
lines changed

helpdesk_mgmt_email/__manifest__.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,12 @@
88
"category": "After-Sales",
99
"author": "Onestein BV",
1010
"website": "https://www.onestein.eu",
11-
"depends": ["helpdesk_mgmt", "base_automation", "mail_layout_force"],
11+
"depends": ["helpdesk_mgmt"],
1212
"data": [
1313
"data/mail_template.xml",
14-
"data/automated_action.xml",
1514
"views/helpdesk_ticket_team_view.xml",
1615
"views/helpdesk_ticket_view.xml",
16+
"views/res_config_settings_view.xml",
1717
],
1818
"installable": True,
1919
}

helpdesk_mgmt_email/data/automated_action.xml

-16
This file was deleted.

helpdesk_mgmt_email/data/mail_template.xml

+28-187
Large diffs are not rendered by default.

helpdesk_mgmt_email/i18n/nl.po

-399
This file was deleted.
+2
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,4 @@
11
from . import helpdesk_ticket
22
from . import helpdesk_ticket_team
3+
from . import res_company
4+
from . import res_config_settings

helpdesk_mgmt_email/models/helpdesk_ticket.py

+2
Original file line numberDiff line numberDiff line change
@@ -27,3 +27,5 @@ def action_ticket_send(self):
2727
"target": "new",
2828
"context": ctx,
2929
}
30+
31+

helpdesk_mgmt_email/models/helpdesk_ticket_team.py

+9
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,12 @@ class HelpdeskTeam(models.Model):
77
email = fields.Char(
88
"Team Email", help="This would be used when sending out emails to contacts"
99
)
10+
11+
def _notify_get_reply_to(self, default=None):
12+
""" Override to set reply to email address to that of the helpdesk team if configured likewise"""
13+
team_email_to_be_used_recs = self.filtered(lambda rec: rec.email and rec.company_id and rec.company_id.helpdesk_mgmt_use_team_email_as_reply_to)
14+
res = {team.id: team.email for team in team_email_to_be_used_recs}
15+
leftover = self - team_email_to_be_used_recs
16+
if leftover:
17+
res.update(super(HelpdeskTeam, leftover)._notify_get_reply_to(default=default))
18+
return res
+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Copyright 2022 Tecnativa - Víctor Martínez
2+
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3+
4+
from odoo import fields, models
5+
6+
7+
class Company(models.Model):
8+
_inherit = "res.company"
9+
10+
helpdesk_mgmt_use_team_email_as_reply_to = fields.Boolean(
11+
string="Use Helpdesk team's email as the reply to address in mail communications through chatter"
12+
)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Copyright 2022 Tecnativa - Víctor Martínez
2+
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3+
from odoo import fields, models
4+
5+
6+
class ResConfigSettings(models.TransientModel):
7+
_inherit = "res.config.settings"
8+
9+
helpdesk_mgmt_use_team_email_as_reply_to = fields.Boolean(
10+
related="company_id.helpdesk_mgmt_use_team_email_as_reply_to",
11+
readonly=False,
12+
)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<?xml version="1.0" encoding="utf-8" ?>
2+
<odoo>
3+
<record id="res_config_settings_view_form" model="ir.ui.view">
4+
<field name="model">res.config.settings</field>
5+
<field name="inherit_id" ref="helpdesk_mgmt.res_config_settings_view_form" />
6+
<field name="arch" type="xml">
7+
<div data-key="helpdesk_mgmt" position="inside">
8+
<h2>Email</h2>
9+
<div class="row mt16 o_settings_container">
10+
<div class="col-12 col-lg-6 o_setting_box">
11+
<div class="o_setting_left_pane">
12+
<field name="helpdesk_mgmt_use_team_email_as_reply_to" />
13+
</div>
14+
<div class="o_setting_right_pane">
15+
<label for="helpdesk_mgmt_use_team_email_as_reply_to" />
16+
<div class="text-muted">By default user's email address is used as the Reply To Email Address</div>
17+
</div>
18+
</div>
19+
</div>
20+
</div>
21+
</field>
22+
</record>
23+
</odoo>

helpdesk_mgmt_multi_alias_domain_mail/__init__.py

Whitespace-only changes.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
2+
3+
{
4+
"name": "Helpdesk Management Multi Alias Domain",
5+
"summary": "Allows to add multiple domains for helpdesk team aliases",
6+
"version": "16.0.1.0.0",
7+
"license": "AGPL-3",
8+
"category": "After-Sales",
9+
"author": "Onestein BV",
10+
"website": "https://www.onestein.eu",
11+
"depends": ["helpdesk_mgmt","multi_alias_domain_mail"],
12+
"data": [
13+
"views/helpdesk_ticket_team_view.xml",
14+
],
15+
"installable": True,
16+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<?xml version="1.0" encoding="utf-8" ?>
2+
<odoo>
3+
<record id="view_helpdesk_team_form" model="ir.ui.view">
4+
<field name="name">view.helpdesk_team.form</field>
5+
<field name="model">helpdesk.ticket.team</field>
6+
<field name="inherit_id" ref="helpdesk_mgmt.view_helpdesk_team_form" />
7+
<field name="arch" type="xml">
8+
<xpath expr="//field[@name='alias_domain']" position="replace">
9+
<field name="alias_domain_id" class="oe_inline" placeholder="e.g. domain.com"
10+
options="{'no_create': True, 'no_open': True}" style="width:35% !important"/>
11+
</xpath>
12+
<xpath expr="//button[@name='%(base_setup.action_general_configuration)d']" position="attributes">
13+
<attribute name="attrs">{'invisible': [('alias_domain_id', '!=', False)]}</attribute>
14+
</xpath>
15+
</field>
16+
</record>
17+
</odoo>

multi_alias_domain_mail/__init__.py

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
from . import models
2+
from . import wizard
3+
from odoo import SUPERUSER_ID, api
4+
5+
def _mail_post_init(cr, registry):
6+
env = api.Environment(cr, SUPERUSER_ID, {})
7+
env['mail.alias.domain']._migrate_icp_to_domain()
+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
2+
3+
{
4+
"name": "Multi Alias Domain",
5+
"summary": "Allows to add multiple domains for aliases",
6+
"version": "16.0.1.0.0",
7+
"license": "AGPL-3",
8+
"category": "After-Sales",
9+
"author": "Onestein BV",
10+
"website": "https://www.onestein.eu",
11+
"depends": ["mail"],
12+
"data": [
13+
"security/ir.model.access.csv",
14+
"views/mail_alias_domain_views.xml",
15+
"views/mail_alias_views.xml",
16+
"views/res_company_views.xml",
17+
"views/res_config_settings_view.xml",
18+
"wizard/mail_compose_message_view.xml",
19+
],
20+
"installable": True,
21+
"post_init_hook": "_mail_post_init",
22+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
from . import mail_alias
2+
from . import mail_alias_domain
3+
from . import mail_mail
4+
from . import mail_message
5+
from . import mail_thread
6+
from . import models
7+
from . import res_company
8+
from . import res_config_settings

0 commit comments

Comments
 (0)