"use strict"; /** * Licensed Materials - Property of IBM * IBM Cognos Products: Cognos Analytics * Copyright IBM Corp. 2015, 2017 * US Government Users Restricted Rights - Use, duplication or disclosure * restricted by GSA ADP Schedule Contract with IBM Corp. */ define(['bi/commons/ui/core/Class'], function (Class) { 'use strict'; //NOSONAR: meant to be strict var ContextMenuController = Class.extend({ _getItemId: function _getItemId(context) { var itemId = context.target.itemId; itemId = itemId.substring(itemId.lastIndexOf('.') + 1); return itemId; }, /** * Called by glass for each menu item to know if it's visible or not */ isItemVisible: function isItemVisible(context) { var itemId = this._getItemId(context); var o = context.target.activeObject; if (o.handler && o.handler['isContextMenuItemVisible']) { return o.handler['isContextMenuItemVisible'](itemId, o.data, o.parentView); } return true; }, /** * Called when the menu item is pressed */ onSelectItem: function onSelectItem(context) { var itemId = this._getItemId(context); var o = context.target.activeObject; if (o.handler && o.handler['onContextMenu']) { o.handler['onContextMenu'](itemId, o.data, o.parentView); } } }); return ContextMenuController; });