diff --git a/ehr/resources/web/ehr/panel/SnapshotPanel.js b/ehr/resources/web/ehr/panel/SnapshotPanel.js index 10719b30e..9f435158f 100644 --- a/ehr/resources/web/ehr/panel/SnapshotPanel.js +++ b/ehr/resources/web/ehr/panel/SnapshotPanel.js @@ -39,24 +39,6 @@ Ext4.define('EHR.panel.SnapshotPanel', { this.setLoading(true); this.loadData(); } - - this.on('afterrender', function() { - - var displayField = this.down('#flags'); - if (displayField && displayField.getEl()) { - - var anchor = displayField.getEl('flagsLink'); - - if (anchor) { - Ext4.get(anchor).on('click', function(e) { - e.preventDefault(); - if (anmId) { - EHR.Utils.showFlagPopup(anmId, this); - } - }); - } - } - }, this); }, getBaseItems: function(){ @@ -145,7 +127,23 @@ Ext4.define('EHR.panel.SnapshotPanel', { xtype: 'displayfield', fieldLabel: 'Flags', name: 'flags', - itemId: 'flags' + itemId: 'flags', + listeners: { + change: function(field, newValue, oldValue){ + let anchor = field.getEl('flagsLink'); + if (this?.up('panel')?.up('panel')) { + let anmId = this.up('panel').up('panel').subjectId; + if (anchor) { + Ext4.get(anchor).on('click', function(e) { + e.preventDefault(); + if (anmId) { + EHR.Utils.showFlagPopup(anmId, this); + } + }); + } + } + } + } },{ xtype: 'displayfield', fieldLabel: 'Last TB Date', @@ -723,7 +721,7 @@ Ext4.define('EHR.panel.SnapshotPanel', { } } - toSet['flags'] = values.length ? '' + values.join('
') + '' : null; + toSet['flags'] = values.length ? '
' + values.join('
') + '' : null; }, getFlagDisplayValue: function(row) {