Browse Source

[ADD] Initial Commit

pull/72/head
Sreejith P 7 years ago
parent
commit
906b588d6e
  1. 25
      hr_leave_request_aliasing/README.md
  2. 25
      hr_leave_request_aliasing/__init__.py
  3. 45
      hr_leave_request_aliasing/__manifest__.py
  4. 81
      hr_leave_request_aliasing/data/web_planner_data.xml
  5. 6
      hr_leave_request_aliasing/doc/RELEASE_NOTES.md
  6. 27
      hr_leave_request_aliasing/models/__init__.py
  7. BIN
      hr_leave_request_aliasing/models/__init__.pyc
  8. BIN
      hr_leave_request_aliasing/models/__pycache__/__init__.cpython-35.pyc
  9. BIN
      hr_leave_request_aliasing/models/__pycache__/leave_request_alias.cpython-35.pyc
  10. BIN
      hr_leave_request_aliasing/models/__pycache__/res_config.cpython-35.pyc
  11. BIN
      hr_leave_request_aliasing/models/__pycache__/web_planner.cpython-35.pyc
  12. 73
      hr_leave_request_aliasing/models/leave_request_alias.py
  13. BIN
      hr_leave_request_aliasing/models/leave_request_alias.pyc
  14. 48
      hr_leave_request_aliasing/models/res_config.py
  15. BIN
      hr_leave_request_aliasing/models/res_config.pyc
  16. 44
      hr_leave_request_aliasing/models/web_planner.py
  17. BIN
      hr_leave_request_aliasing/models/web_planner.pyc
  18. BIN
      hr_leave_request_aliasing/static/description/HRMS-BUTTON.png
  19. BIN
      hr_leave_request_aliasing/static/description/banner.jpg
  20. BIN
      hr_leave_request_aliasing/static/description/cybro-service.png
  21. BIN
      hr_leave_request_aliasing/static/description/cybro_logo.png
  22. BIN
      hr_leave_request_aliasing/static/description/icon.png
  23. 102
      hr_leave_request_aliasing/static/description/index.html
  24. BIN
      hr_leave_request_aliasing/static/description/mail_aliasing.png
  25. 6
      hr_leave_request_aliasing/static/src/js/web_planner_hr_leave.js
  26. 11
      hr_leave_request_aliasing/views/hr_leave_template.xml
  27. 9
      hr_leave_request_aliasing/views/leave_request_alias_view.xml
  28. 54
      hr_leave_request_aliasing/views/res_config_views.xml

25
hr_leave_request_aliasing/README.md

@ -0,0 +1,25 @@
Open HRMS Leave Request Aliasing
--------------------------------
Supporting Addon for Open HRMS, Allows You To Create Leave Request Automatically From Incoming Emails.
Connect with experts
--------------------
If you have any question/queries/additional works on OpenHRMS or this module, You can drop an email directly to Cybrosys.
Technical Notes
---------------
Here you need to send leave request through email with the following rules.
* You must send leave request through your registered email id.
* Mail subject must be start with 'LEAVE REQUEST '
* Mail body must contain date as per given format (%d/%m/%Y)
Contacts
--------
info - info@cybrosys.com
Jesni Banu - jesni@cybrosys.in
Website:
https://www.openhrms.com
https://www.cybrosys.com

25
hr_leave_request_aliasing/__init__.py

@ -0,0 +1,25 @@
# -*- coding: utf-8 -*-
###################################################################################
# A part of OpenHRMS Project <https://www.openhrms.com>
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2018-TODAY Cybrosys Technologies (<https://www.cybrosys.com>).
# Author: Jesni Banu (<https://www.cybrosys.com>)
#
# This program is free software: you can modify
# it under the terms of the GNU Affero General Public License (AGPL) as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
###################################################################################
from . import models

45
hr_leave_request_aliasing/__manifest__.py

@ -0,0 +1,45 @@
# -*- coding: utf-8 -*-
###################################################################################
# A part of Open HRMS Project <https://www.openhrms.com>
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2018-TODAY Cybrosys Technologies (<https://www.cybrosys.com>).
# Author: Jesni Banu (<https://www.cybrosys.com>)
#
# This program is free software: you can modify
# it under the terms of the GNU Affero General Public License (AGPL) as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
###################################################################################
{
'name': 'Open HRMS Leave Request Aliasing',
'version': '11.0.1.0.0',
'summary': """Allows You To Create Leave Request Automatically From Incoming Mails""",
'description': 'This module allows you to create leave request directly from incoming mails.',
'category': 'Generic Modules/Human Resources',
'author': 'Cybrosys Techno Solutions',
'company': 'Cybrosys Techno Solutions',
'website': "https://www.openhrms.com",
'depends': ['base_setup', 'hr_holidays'],
'data': [
'data/web_planner_data.xml',
'views/hr_leave_template.xml',
'views/leave_request_alias_view.xml',
'views/res_config_views.xml',
],
'demo': [],
'images': ['static/description/banner.jpg'],
'license': 'AGPL-3',
'installable': True,
'auto_install': False,
'application': False,
}

81
hr_leave_request_aliasing/data/web_planner_data.xml

@ -0,0 +1,81 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="hr_leave_planner">
<t t-call="web_planner.pages">
<t t-call="web_planner.category">
<t t-set="menu_categorytitle">Setup</t>
<t t-set="menu_categoryclasses" t-value="'fa-magic'"/>
<t t-call="web_planner.page">
<t t-set="page_title">Get Mobile</t>
<t t-if="not (alias_name and alias_domain)">
<div class="alert alert-warning" role="alert">
<strong>Your email gateway is not configured.</strong> Please configure your email
gateway from the Settings app, menu <i>General Settings</i>.
</div>
<p>
Once your email gateway is configured, come back to this screen
to setup the next steps.
</p>
</t>
<t t-if="alias_name and alias_domain">
<p>
To create leave request by email, send leave request by email with the following
information:
</p>
<dl class="dl-horizontal">
<dt>From: Your Email</dt>
<dd>Your Email Address</dd>
<dt>To:</dt>
<dd><t t-esc="alias_name"/>@<t t-esc="alias_domain"/></dd>
<dt>Subject: </dt>
<dd><strong class="text-info">LEAVE REQUEST</strong> Free Description with Date From: and Date To:<strong class="text-primary"></strong></dd>
</dl>
<hr class="mb32"/>
<p>
The <strong class="text-info">LEAVE REQUEST</strong> is mandatory and should be in the
subject of your email. This
will root the leave request automatically on your
Odoo.
</p><p>
Also you need to set <strong class="text-primary">Date From: and Date To:</strong>
at the end of the body of your email.
</p>
<div class="alert alert-info" role="alert">
<b>Note:</b> Set the same email address on your employee form(working email) than
the one you use are your "From:". Otherwise, your
leave request will not be accepted by email.
</div>
</t>
</t>
</t>
<t t-call="web_planner.page">
<t t-set="page_title">End</t>
<t t-set="hide_title" t-value="True"/>
<t t-set="hide_from_menu" t-value="True"/>
<t t-set="hide_mark_as_done" t-value="True"/>
<h1 class="text-center o_planner_trophy" data-icon="&#xe006;" />
<div class="text-center">
<h1>Congratulations, you're done!</h1>
<h3>We hope this feature helped you manage your leave request efficiently.</h3>
<h4>Don't hesitate to <a href="mailto:info@cybrosys.com" target="_blank">send us an email</a> to describe<br/> your experience or to suggest improvements!</h4>
<p>Have a wonderful day,<br/>- Cybrosys</p>
<img src="/hr_leave_request_aliasing/static/description/cybro_logo.png"/>
</div>
</t>
</t>
</template>
<record id="planner_hr_leave" model="web.planner">
<field name="name">Leave strategy planner</field>
<field name="view_id" ref="hr_leave_planner"/>
<field name="menu_id" ref="hr_holidays.menu_hr_holidays_root"/>
<field name="planner_application">planner_hr_leave</field>
<field name="tooltip_planner"><![CDATA[
Send receipts by email to create leave request efficiently.
]]>
</field>
</record>
</odoo>

6
hr_leave_request_aliasing/doc/RELEASE_NOTES.md

@ -0,0 +1,6 @@
## Module <hr_leave_request_aliasing>
#### 24.03.2018
#### Version 11.0.1.0.0
##### ADD
- Initial commit for Open HRMS Project

27
hr_leave_request_aliasing/models/__init__.py

@ -0,0 +1,27 @@
# -*- coding: utf-8 -*-
###################################################################################
# A part of OpenHRMS Project <https://www.openhrms.com>
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2018-TODAY Cybrosys Technologies (<https://www.cybrosys.com>).
# Author: Jesni Banu (<https://www.cybrosys.com>)
#
# This program is free software: you can modify
# it under the terms of the GNU Affero General Public License (AGPL) as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
###################################################################################
from . import leave_request_alias
from . import res_config
from . import web_planner

BIN
hr_leave_request_aliasing/models/__init__.pyc

Binary file not shown.

BIN
hr_leave_request_aliasing/models/__pycache__/__init__.cpython-35.pyc

Binary file not shown.

BIN
hr_leave_request_aliasing/models/__pycache__/leave_request_alias.cpython-35.pyc

Binary file not shown.

BIN
hr_leave_request_aliasing/models/__pycache__/res_config.cpython-35.pyc

Binary file not shown.

BIN
hr_leave_request_aliasing/models/__pycache__/web_planner.cpython-35.pyc

Binary file not shown.

73
hr_leave_request_aliasing/models/leave_request_alias.py

@ -0,0 +1,73 @@
# -*- coding: utf-8 -*-
###################################################################################
# A part of OpenHRMS Project <https://www.openhrms.com>
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2018-TODAY Cybrosys Technologies (<https://www.cybrosys.com>).
# Author: Jesni Banu (<https://www.cybrosys.com>)
#
# This program is free software: you can modify
# it under the terms of the GNU Affero General Public License (AGPL) as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
###################################################################################
import re
from datetime import datetime, timedelta
from odoo import models, api
from odoo.tools import email_split
class HrLeaveAlias(models.Model):
_inherit = 'hr.holidays'
@api.model
def message_new(self, msg_dict, custom_values=None):
"""This function extracts required fields of hr.holidays from incoming mail then creating records"""
try:
if custom_values is None:
custom_values = {}
msg_subject = msg_dict.get('subject', '')
subject = re.search('LEAVE REQUEST', msg_subject)
if subject is not None:
email_address = email_split(msg_dict.get('email_from', False))[0]
employee = self.env['hr.employee'].sudo().search([
'|',
('work_email', 'ilike', email_address),
('user_id.email', 'ilike', email_address)
], limit=1)
msg_body = msg_dict.get('body', '')
cleaner = re.compile('<.*?>')
clean_msg_body = re.sub(cleaner, '', msg_body)
date_list = re.findall(r'\d{2}/\d{2}/\d{4}', clean_msg_body)
if len(date_list) > 0:
date_from = date_list[0]
if len(date_list) > 1:
start_date = datetime.strptime(date_list[1], '%d/%m/%Y')
date_to = start_date + timedelta(days=0)
else:
start_date = datetime.strptime(date_list[0], '%d/%m/%Y')
date_to = start_date + timedelta(days=1)
no_of_days_temp = (datetime.strptime(str(date_to), "%Y-%m-%d %H:%M:%S") -
datetime.strptime(date_from, '%d/%m/%Y')).days
custom_values.update({
'name': msg_subject.strip(),
'employee_id': employee.id,
'holiday_status_id': 1,
'date_from': date_from,
'date_to': date_to,
'no_of_days_temp': no_of_days_temp
})
return super(HrLeaveAlias, self).message_new(msg_dict, custom_values)
except:
pass

BIN
hr_leave_request_aliasing/models/leave_request_alias.pyc

Binary file not shown.

48
hr_leave_request_aliasing/models/res_config.py

@ -0,0 +1,48 @@
# -*- coding: utf-8 -*-
###################################################################################
# A part of OpenHRMS Project <https://www.openhrms.com>
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2018-TODAY Cybrosys Technologies (<https://www.cybrosys.com>).
# Author: Jesni Banu (<https://www.cybrosys.com>)
#
# This program is free software: you can modify
# it under the terms of the GNU Affero General Public License (AGPL) as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
###################################################################################
from odoo import api, fields, models
class HrLeaveConfigSettings(models.TransientModel):
_inherit = 'res.config.settings'
alias_prefix = fields.Char(string='Default Alias Name for Leave', help='Default Alias Name for Leave')
alias_domain = fields.Char(string='Alias Domain', help='Default Alias Domain for Leave',
default=lambda self: self.env["ir.config_parameter"].get_param("mail.catchall.domain"))
def set_values(self):
super(HrLeaveConfigSettings, self).set_values()
set_param = self.env['ir.config_parameter'].set_param
set_param('alias_prefix', self.alias_prefix)
set_param('alias_domain', self.alias_domain )
@api.model
def get_values(self):
res = super(HrLeaveConfigSettings, self).get_values()
get_param = self.env['ir.config_parameter'].sudo().get_param
res.update(
alias_prefix=get_param('alias_prefix', default=''),
alias_domain=get_param('alias_domain', default=''),
)
return res

BIN
hr_leave_request_aliasing/models/res_config.pyc

Binary file not shown.

44
hr_leave_request_aliasing/models/web_planner.py

@ -0,0 +1,44 @@
# -*- coding: utf-8 -*-
###################################################################################
# A part of OpenHRMS Project <https://www.openhrms.com>
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2018-TODAY Cybrosys Technologies (<https://www.cybrosys.com>).
# Author: Jesni Banu (<https://www.cybrosys.com>)
#
# This program is free software: you can modify
# it under the terms of the GNU Affero General Public License (AGPL) as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
###################################################################################
from odoo import api, models
class PlannerHrLeave(models.Model):
"""This class is used to activate web.planner feature in 'hr_leave_request_aliasing' module"""
_inherit = 'web.planner'
@api.model
def _get_planner_application(self):
planner = super(PlannerHrLeave, self)._get_planner_application()
planner.append(['planner_hr_leave', 'Leave Planner'])
return planner
@api.model
def _prepare_planner_hr_leave_data(self):
alias_record = self.env.ref('hr_leave_request_aliasing.mail_alias_leave')
return {
'alias_domain': alias_record.alias_domain,
'alias_name': alias_record.alias_name,
}

BIN
hr_leave_request_aliasing/models/web_planner.pyc

Binary file not shown.

BIN
hr_leave_request_aliasing/static/description/HRMS-BUTTON.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

BIN
hr_leave_request_aliasing/static/description/banner.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 120 KiB

BIN
hr_leave_request_aliasing/static/description/cybro-service.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 221 KiB

BIN
hr_leave_request_aliasing/static/description/cybro_logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

BIN
hr_leave_request_aliasing/static/description/icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

102
hr_leave_request_aliasing/static/description/index.html

@ -0,0 +1,102 @@
<section class="oe_container">
<div class="oe_row">
<h2 class="oe_slogan"><a href="https://www.openhrms.com">Open HRMS</a></h2>
<h3 class="oe_slogan">Most advanced open source HR management software</h3>
</div>
</section>
<section class="oe_container oe_dark">
<div class="oe_row oe_spaced oe_mt32">
<div class="oe_span">
<div class="oe_demo oe_picture oe_screenshot">
<a href="https://www.openhrms.com/#request-demo">
<img src="HRMS-BUTTON.png">
</a>
</div>
</div>
</div>
</section>
<section class="oe_container">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan">Open HRMS Leave Request Aliasing</h2>
<h3 class="oe_slogan">Creating Leave Request, Automatically From Incoming Emails</h3>
<h4 class="oe_slogan"><a href="https://www.cybrosys.com">Cybrosys Technologies</a> </h4>
</div>
<div class="oe_row oe_spaced" style="padding-left:65px;">
<h4>Features:</h4>
<div>
<span style="color:green;"> &#9745; </span> Automation on Leaves Request Mails.<br/>
<span style="color:green;"> &#9745; </span> Option to Set Aliasing Domain Separately for Leave Request.<br/>
</div>
</div>
</section>
<section class="oe_container oe_dark">
<div class="oe_row oe_spaced">
<div class="oe_picture">
<h3 class="oe_slogan">Overview</h3>
<p class="oe_mt32 text-justify" style="text-align: center;">
Email aliasing is a default feature in Odoo which allows the user to fetch contents to ERP records directly from incoming emails.
The feature is a type of automation. Since we can configure the E-mails to fetch contents directly.
So here we are providing one of the new module to create leave request automatically from incoming email.
</p>
</div>
</div>
</section>
<section class="oe_container">
<div class="oe_row oe_spaced">
<div class="oe_span12" style="text-align: center;">
<div class="oe_demo oe_picture oe_screenshot">
<img style="border:8px solid white;" src="mail_aliasing.png">
</div>
<span>
<i>Here we can send leave request through our registered email id. Then it will create leave
request in Odoo. We must ensure that our mail subject must start with 'LEAVE REQUEST ' and date
format must be as '%d/%m/%Y'.</i>
</span>
</div>
</div>
</section>
<div class="row section-content">
<div class="col-md-6 img-content">
<h3>Our Odoo Services</h3>
</div>
<div class="bc-span col-md-12">
<div class="inner-span">
<a target="_blank" href="https://www.openhrms.com">
<img class="img-border img-responsive thumbnail" src="cybro-service.png">
</a>
</div>
</div>
</div>
<section class="oe_container oe_dark">
<h2 class="oe_slogan" style="margin-top:20px;" >Need Any Help?</h2>
<div class="oe_slogan" style="margin-top:10px !important;">
<div>
<a
class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;"
href="https://www.cybrosys.com/contact/" target="_blank"><i
class="fa fa-phone"></i> Contact Us </a>
<a
class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;"
href="https://www.odoo.com/apps/modules/browse?search=open+hrms" target="_blank"><i
class="fa fa-suitcase"></i> Other Open HRMS Addons </a>
<a
class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;"
href="https://www.cybrosys.com/odoo-customization-and-installation/" target="_blank"><i
class="fa fa-wrench"></i> Request Customization </a>
</div>
<br>
<a href="https://www.cybrosys.com/" target="_blank">
<img src="cybro_logo.png" style="width: 190px; margin-bottom: 20px;" class="center-block">
</a>
</div>
</section>

BIN
hr_leave_request_aliasing/static/description/mail_aliasing.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

6
hr_leave_request_aliasing/static/src/js/web_planner_hr_leave.js

@ -0,0 +1,6 @@
odoo.define('planner_hr_leave.planner', function (require) {
"use strict";
var planner = require('web.planner.common');
});

11
hr_leave_request_aliasing/views/hr_leave_template.xml

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data>
<template id="assets_backend_expense" name="hr_leave assets" inherit_id="web.assets_backend">
<xpath expr="." position="inside">
<script type="text/javascript" src="/hr_leave_request_aliasing/static/src/js/web_planner_hr_leave.js"></script>
</xpath>
</template>
</data>
</odoo>

9
hr_leave_request_aliasing/views/leave_request_alias_view.xml

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="mail_alias_leave" model="mail.alias">
<field name="alias_name">leave</field>
<field name="alias_model_id" ref="model_hr_holidays"/>
<field name="alias_user_id" ref="base.user_root"/>
<field name="alias_contact">employees</field>
</record>
</odoo>

54
hr_leave_request_aliasing/views/res_config_views.xml

@ -0,0 +1,54 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data>
<record id="view_hr_leave_configuration" model="ir.ui.view">
<field name="name">Configure Leave</field>
<field name="model">res.config.settings</field>
<field name="priority" eval="50"/>
<field name="inherit_id" ref="base.res_config_settings_view_form" />
<field name="arch" type="xml">
<xpath expr="//div[hasclass('settings')]" position="inside">
<div class="app_settings_block" data-string="Leaves" data-key="hr_leave_request_aliasing" groups="hr_holidays.group_hr_holidays_manager">
<h2>Leaves</h2>
<div class="row mt16 o_settings_container" name="config_leave">
<div class="col-xs-12 col-md-6 o_setting_box" name="config_leave_alias">
<div class="o_setting_right_pane">
<label string="Leave Email Alias"/>
<div class="text-muted">
You can setup a generic email alias to create
incoming leave request easily. Write an email with the desired
format to create leave request in one click.
Format:- Start subject with 'LEAVE REQUEST'. After your mail content mention
'Date From:' and 'Date To:'.
</div>
<div class="content-group">
<div class="row mt16">
<label string="Prefix" class="col-md-3"/>
<field name="alias_prefix"/>
</div>
<div class="row mt16">
<label string="Domain" class="col-md-3"/>
<field name="alias_domain"/>
</div>
</div>
</div>
</div>
</div>
</div>
</xpath>
</field>
</record>
<record id="action_hr_general_config" model="ir.actions.act_window">
<field name="name">Leaves Config</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">res.config.settings</field>
<field name="view_mode">form</field>
<field name="target">inline</field>
<field name="context">{'module' : 'hr_leave_request_aliasing'}</field>
</record>
<menuitem id="menu_hr_leave_global_settings" name="Leaves Config"
parent="hr_holidays.menu_hr_holidays_root" sequence="96" action="action_hr_general_config" groups="base.group_system"/>
</data>
</odoo>
Loading…
Cancel
Save