diff --git a/document_page_approval/models/document_page.py b/document_page_approval/models/document_page.py index 9b6a568b..54c6937e 100644 --- a/document_page_approval/models/document_page.py +++ b/document_page_approval/models/document_page.py @@ -66,6 +66,11 @@ class DocumentPage(models.Model): string='Has changes pending approval' ) + user_has_drafts = fields.Boolean( + compute='_compute_user_has_drafts', + string='User has drafts?', + ) + @api.multi @api.depends('approval_required', 'parent_id.is_approval_required') def _compute_is_approval_required(self): @@ -119,6 +124,15 @@ class DocumentPage(models.Model): ('state', '=', 'to approve')]) rec.has_changes_pending_approval = (changes > 0) + @api.multi + def _compute_user_has_drafts(self): + history = self.env['document.page.history'] + for rec in self: + changes = history.search_count([ + ('page_id', '=', rec.id), + ('state', '=', 'draft')]) + rec.user_has_drafts = (changes > 0) + @api.multi def _create_history(self, vals): res = super(DocumentPage, self)._create_history(vals) diff --git a/document_page_approval/views/document_page_approval.xml b/document_page_approval/views/document_page_approval.xml index 8271c0aa..b31793d2 100644 --- a/document_page_approval/views/document_page_approval.xml +++ b/document_page_approval/views/document_page_approval.xml @@ -80,15 +80,21 @@ attrs="{'invisible': [('is_approval_required','=',False)]}"> This document requires approval. If edited, you will create a new Change Request. +