from odoo import models, fields


class EncoachTopic(models.Model):
    _name = 'encoach.topic'
    _description = 'Taxonomy Topic'
    _order = 'sequence, name'

    name = fields.Char(required=True, index=True)
    domain_id = fields.Many2one('encoach.domain', required=True, ondelete='cascade', index=True)
    description = fields.Text()
    sequence = fields.Integer(default=10)
    active = fields.Boolean(default=True)
    learning_objective_ids = fields.One2many('encoach.learning.objective', 'topic_id', string='Learning Objectives')

    def to_api_dict(self):
        self.ensure_one()
        return {
            'id': self.id,
            'name': self.name,
            'domain_id': self.domain_id.id,
            'domain_name': self.domain_id.name,
            'description': self.description or '',
            'active': self.active,
        }
