mirror of
https://github.com/OCA/knowledge.git
synced 2025-07-14 01:41:26 -06:00
26 lines
807 B
Python
26 lines
807 B
Python
from odoo import api, fields, models
|
|
|
|
|
|
class DocumentPage(models.Model):
|
|
_inherit = "document.page"
|
|
|
|
is_printable = fields.Boolean(
|
|
compute="_compute_is_printable",
|
|
store=True,
|
|
help="Indicates if the document can be printed based on its tags",
|
|
)
|
|
|
|
@api.depends("tag_ids", "tag_ids.is_printable")
|
|
def _compute_is_printable(self):
|
|
for record in self:
|
|
if not record.tag_ids:
|
|
record.is_printable = True
|
|
else:
|
|
record.is_printable = all(tag.is_printable for tag in record.tag_ids)
|
|
|
|
def action_print_document_page(self):
|
|
for record in self:
|
|
if not record.is_printable:
|
|
return None
|
|
return self.env.ref("document_page.report_document_page").report_action(self)
|