Name

global.CSUIActionsConditionEvaluator

Description

Script include to capture excess conditions in UI Actions

Script

var CSUIActionsConditionEvaluator = Class.create();
CSUIActionsConditionEvaluator.prototype = {
  initialize: function() {
  },
  
  addCaseUIAction : function(RP, parent, current) {
  	var RP_check = false;
      RP_check = (RP.isRelatedList() &&  (RP.getListControl().getControlID() == "168962b73b630300b5c42479b3efc445" || RP.getListControl().getControlID() == "b78c22470f320010035531ef68767e01" || RP.getListControl().getControlID() == "72c5ccd70fb20010035531ef68767e4c"));
      if(!(RP_check)){
  		return false;
  	} 
      var role_access_check =  (new global.CSUIActionsImpl().isVisible('674375393b63130037556b4ee3efc429', parent.sys_class_name) &&  
                               (parent.major_case_state != 'accepted'||  gs.hasRole('sn_majorissue_mgt.major_issue_manager')));

      if(role_access_check && current.canWrite()) {	
          return true;
      }
      return false;
  },
  
  addDeclarativeAction : function(parent) {
  	var whiteListedTables = ['sn_customerservice_case', 'sn_complaint_case', 'sn_onboarding_case'];
  	var role_access_check = (parent.major_case_state != 'accepted' ||  gs.hasRole('sn_majorissue_mgt.major_issue_manager'));
  	if(whiteListedTables.indexOf(''+ parent.sys_class_name) !== -1 && role_access_check){			
  		return true;
  	}
  	return false;
  },
  

  type: 'CSUIActionsConditionEvaluator' 
};

Sys ID

25d5b726530c001031cdddeeff7b121a

Offical Documentation

Official Docs: