diff --git a/document_page_approval/models/document_page.py b/document_page_approval/models/document_page.py index 57a3e02d..7cc84a09 100644 --- a/document_page_approval/models/document_page.py +++ b/document_page_approval/models/document_page.py @@ -83,6 +83,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): @@ -136,6 +141,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 323269c0..ab71926f 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. +