22 lines
780 B
Python
22 lines
780 B
Python
# -*- coding: utf-8 -*-
|
|
# Part of Talisman . See LICENSE file for full copyright and licensing details.
|
|
|
|
from odoo import models
|
|
from odoo.addons.calendar.populate import data
|
|
from odoo.tools import populate
|
|
|
|
|
|
class Alarm(models.Model):
|
|
_inherit = 'calendar.alarm'
|
|
_populate_sizes = {'small': 3, 'medium': 10, 'large': 30}
|
|
|
|
def _populate_factories(self):
|
|
def get_name(values, counter, **kwargs):
|
|
return f"{str.capitalize(values['alarm_type'])} - {values['duration']} {values['interval']} (#{counter})."
|
|
|
|
return [
|
|
*((field_name, populate.iterate(*zip(*data.calendar_alarm[field_name].items())))
|
|
for field_name in ["alarm_type", "duration", "interval"]),
|
|
('name', populate.compute(get_name)),
|
|
]
|