# -*- coding: utf-8 -*-

from odoo import models, api, fields
from odoo.tools.float_utils import float_round
from odoo.tools.translate import _


class HolidaysAllocation(models.Model):
    _inherit = "hr.leave.allocation"

    type_request_unit = fields.Selection(
        selection_add=[
            ("c_day", "Calendar Days"),
        ]
    )

    @api.depends("number_of_hours_display", "number_of_days_display")
    def _compute_duration_display(self):
        for allocation in self:
            amount = (
                float_round(allocation.number_of_hours_display, precision_digits=2)
                if allocation.type_request_unit == "hour"
                else float_round(allocation.number_of_days_display, precision_digits=2)
            )
            if allocation.type_request_unit == "c_day":
                units = _("calendar day(s)")
            elif allocation.type_request_unit == "hour":
                units = _("hour(s)")
            else:
                units = _("working day(s)")
            allocation.duration_display = "%g %s" % (amount, units)