TenantsActionHandler.js 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. "use strict";
  2. /**
  3. * Licensed Materials - Property of IBM
  4. * IBM Cognos Products: Cognos Analytics
  5. * Copyright IBM Corp. 2017, 2018
  6. * US Government Users Restricted Rights - Use, duplication or disclosure
  7. * restricted by GSA ADP Schedule Contract with IBM Corp.
  8. */
  9. define(['bi/commons/ui/core/Class'], function (Class) {
  10. 'use strict'; //NOSONAR: meant to be strict
  11. var TenantsActionHandler = Class.extend({
  12. tenantTabModules: {
  13. 'tenant_members': "bi/admin/multitenancy/views/MembersTab",
  14. 'tenant_customize': 'bi/admin/multitenancy/views/CustomizationTab'
  15. },
  16. isContextMenuItemVisible: function isContextMenuItemVisible(itemId, data) {
  17. return !(data && (data.disabled === true && itemId === 'tenant_disable' || itemId === 'tenant_enable' && data.disabled === false));
  18. },
  19. onContextMenu: function onContextMenu(id, data, parentView) {
  20. switch (id) {
  21. case 'tenant_delete':
  22. parentView.doDelete(data, false);
  23. break;
  24. case 'tenant_delete_user_profile':
  25. parentView.doDelete(data, true);
  26. break;
  27. case 'tenant_members':
  28. case 'tenant_customize':
  29. case 'property':
  30. parentView.doSetProperties(data, this.tenantTabModules[id]);
  31. break;
  32. case 'tenant_killsessions':
  33. parentView.doKillTenantSessions(data);
  34. break;
  35. case 'tenant_enable':
  36. case 'tenant_disable':
  37. parentView.doDisableTenant(data);
  38. break;
  39. default:
  40. this.logger.error("Unexpected context menu id for tenant list pane: " + id);
  41. }
  42. }
  43. });
  44. return TenantsActionHandler;
  45. });