[IMP] - Improved views to match document_page improvements.

[IMP] - Added notification to followers when a new version is approved.
This commit is contained in:
Glen Sojo 2015-07-24 15:59:51 -06:00 committed by Gabriela Mogollon
parent affe98c629
commit f48c2b6bf6
2 changed files with 46 additions and 7 deletions

View File

@ -20,8 +20,9 @@
##############################################################################
from datetime import datetime
from openerp.tools.translate import _
from openerp.tools import DEFAULT_SERVER_DATETIME_FORMAT
from openerp import models, fields
from openerp import models, fields, SUPERUSER_ID
class document_page_history_wkfl(models.Model):
@ -45,12 +46,27 @@ class document_page_history_wkfl(models.Model):
return True
def page_approval_approved(self, cr, uid, ids, context=None):
model_data_obj = self.pool.get('ir.model.data')
message_obj = self.pool.get('mail.message')
self.write(cr, uid, ids, {
'state': 'approved',
'approved_date': datetime.now().strftime(
DEFAULT_SERVER_DATETIME_FORMAT),
'approved_uid': uid
}, context=context)
# Notify followers a new version is available
for page_history in self.browse(cr, uid, ids, context=context):
subtype_id = model_data_obj.get_object_reference(
cr, SUPERUSER_ID, 'mail', 'mt_comment')[1]
message_obj.create(
cr, uid,
{'res_id': page_history.page_id.id,
'model': 'document.page',
'subtype_id': subtype_id,
'body': _('New version of the document %s'
' approved.') % page_history.page_id.name
}
)
return True
def _can_user_approve_page(self):

View File

@ -36,18 +36,41 @@
<field name="arch" type="xml">
<field name="display_content"
position="before">
<group class="oe_read_only"
attrs="{'invisible':[('type','!=','content')]}">
<group class="oe_read_only">
<field name="approved_date" />
<field name="approved_uid" />
</group>
</field>
</field>
</record>
<record id="view_wiki_menu_form_inherit" model="ir.ui.view">
<field name="name">document.page.form</field>
<field name="model">document.page</field>
<field name="inherit_id"
ref="document_page.view_wiki_menu_form" />
<field name="arch" type="xml">
<field name="display_content"
position="before">
<group class="oe_read_only"
attrs="{'invisible':[('type','!=','content')]}">
<field name="approved_date" />
<field name="approved_uid" />
</group>
</field>
</field>
</record>
<record id="view_category_form_inherit" model="ir.ui.view">
<field name="name">document.page.category.form</field>
<field name="model">document.page</field>
<field name="inherit_id"
ref="document_page.view_category_form" />
<field name="arch" type="xml">
<field name="parent_id" position="after">
<field name="approval_required"
attrs="{'invisible':[('type','=','content')]}"/>
<field name="approval_required"/>
<field name="approver_gid"
attrs="{'invisible':['|',('type','=','content'),
('approval_required','!=', True)], 'required':[('approval_required','=', True)]}"/>
attrs="{'invisible':[('approval_required','!=', True)], 'required':[('approval_required','=', True)]}"/>
</field>
</field>
</record>