The purpose of this task is to improve the setting of the timesheet module. In this commit, we improve the following: - Rename the label, description and align the field with the name and description of the feature - Add an 'OK' button in the 'download our app' modal - Render the frequency field properly in the employee/manager reminders setting on mobile view - In configure your services link: change the name of the action to "Services" - Display the following options in the community, with the usual 'Enterprise' tag: Round Timesheet, Employee/Manager reminder, Invoicing Policy closes odoo/odoo#74967 Task-id: 2531338 Related: odoo/enterprise#20182 Related: odoo/upgrade#2771 Signed-off-by: LTU-Odoo <IT-Ideas@users.noreply.github.com>
39 lines
2.1 KiB
Python
39 lines
2.1 KiB
Python
# -*- coding: utf-8 -*-
|
|
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
|
|
|
from odoo import api, fields, models
|
|
|
|
|
|
class ResConfigSettings(models.TransientModel):
|
|
_inherit = 'res.config.settings'
|
|
|
|
module_project_timesheet_synchro = fields.Boolean("Awesome Timesheet",
|
|
compute="_compute_timesheet_modules", store=True, readonly=False)
|
|
module_project_timesheet_holidays = fields.Boolean("Time Off",
|
|
compute="_compute_timesheet_modules", store=True, readonly=False)
|
|
reminder_user_allow = fields.Boolean(string="Employee Reminder", help="If checked, send an email to all users who have not recorded their timesheet")
|
|
reminder_manager_allow = fields.Boolean(string="Manager Reminder", help="If checked, send an email to all manager")
|
|
project_time_mode_id = fields.Many2one(
|
|
'uom.uom', related='company_id.project_time_mode_id', string='Project Time Unit', readonly=False,
|
|
help="This will set the unit of measure used in projects and tasks.\n"
|
|
"If you use the timesheet linked to projects, don't "
|
|
"forget to setup the right unit of measure in your employees.")
|
|
timesheet_encode_uom_id = fields.Many2one('uom.uom', string="Encoding Unit",
|
|
related='company_id.timesheet_encode_uom_id', readonly=False,
|
|
help="""This will set the unit of measure used to encode timesheet. This will simply provide tools
|
|
and widgets to help the encoding. All reporting will still be expressed in hours (default value).""")
|
|
is_encode_uom_days = fields.Boolean(compute='_compute_is_encode_uom_days')
|
|
|
|
@api.depends('timesheet_encode_uom_id')
|
|
def _compute_is_encode_uom_days(self):
|
|
product_uom_day = self.env.ref('uom.product_uom_day')
|
|
for settings in self:
|
|
settings.is_encode_uom_days = settings.timesheet_encode_uom_id == product_uom_day
|
|
|
|
@api.depends('module_hr_timesheet')
|
|
def _compute_timesheet_modules(self):
|
|
self.filtered(lambda config: not config.module_hr_timesheet).update({
|
|
'module_project_timesheet_synchro': False,
|
|
'module_project_timesheet_holidays': False,
|
|
})
|