diff -r 70de02fd0cd1 -r 49e8f3cef75a src/pyams_content/shared/site/zmi/link.py --- a/src/pyams_content/shared/site/zmi/link.py Tue Nov 28 17:26:34 2017 +0100 +++ b/src/pyams_content/shared/site/zmi/link.py Tue Nov 28 17:27:24 2017 +0100 @@ -11,7 +11,8 @@ # from pyramid.location import lineage -from pyams_content.shared.site.zmi.container import SiteContainerTreeTable, SiteContainerTreeNameColumn +from pyams_content.shared.site.zmi.container import SiteContainerTreeTable, SiteContainerTreeNameColumn, \ + SiteContainerTreeOidColumn from pyams_utils.interfaces import VIEW_SYSTEM_PERMISSION __docformat__ = 'restructuredtext' @@ -127,7 +128,7 @@ target = self.context.get_target() if target is not None: title = get_object_name(target, self.request, self.view) - return '{title}'.format( + return '{title}'.format( title=title or '--') @@ -151,8 +152,8 @@ def get_ajax_output(self, changes): output = super(ContentLinkPropertiesAJAXEditForm, self).get_ajax_output(changes) + intids = get_utility(IIntIds) if 'alt_title' in changes.get(IContentLink, ()): - intids = get_utility(IIntIds) adapter = ContentLinkTableElementName(self.context, self.request, None) column = SiteContainerTreeNameColumn(self.context, self.request, None) output.setdefault('events', []).append({ @@ -164,4 +165,15 @@ 'cell': column.renderCell(self.context, name=adapter.name) } }) + if 'reference' in changes.get(IContentLink, ()): + column = SiteContainerTreeOidColumn(self.context, self.request, None) + output.setdefault('events', []).append({ + 'event': 'myams.refresh', + 'options': { + 'handler': 'MyAMS.skin.refreshRowCell', + 'object_id': '{0}::{1}'.format(SiteContainerTreeTable.id, intids.queryId(self.context)), + 'col_name': 'oid', + 'cell': column.renderCell(self.context) + } + }) return output