Name

global.CSMReferenceQualifierServiceSNC

Description

A utility to get the reference qualifier on columns conditionally

Script

var CSMReferenceQualifierServiceSNC = Class.create();
CSMReferenceQualifierServiceSNC.prototype = {
  initialize: function() {
  	this.pluginMgr = new GlidePluginManager();
  },
  
  getConsumerRefQualOnCase: function() {
  	var refQualPrefix = 'javascript:';
  	var refQuals = [];
  	if(this.pluginMgr.isActive('com.snc.household')) {
  		refQuals.push('new sn_csm_household.HouseHoldUtils().getConsumersAvailableForHousehold(current.household)');
  	}
  	if(this.pluginMgr.isActive('com.sn_csm_b2b_consumers')) {
  		refQuals.push('new sn_acct_consumer.AccountConsumerUtil().getConsumerRefFromAccount(current.account)');
  	}
  	if(refQuals.length > 0)
  		return refQualPrefix + refQuals.join("+'^'+");
  },
  
  getAccountRefQualOnCase: function() {
  	var refQualPrefix = 'javascript:';
  	var refQuals = [];
  	var refQualSuffix = "+'^customer=true'";
  	if(this.pluginMgr.isActive('com.sn_csm_b2b_consumers')) {
  		refQuals.push('new sn_acct_consumer.AccountConsumerUtil().getAccountRefFromConsumer(current.consumer)');
  	}
  	if(refQuals.length > 0)
  		return refQualPrefix + refQuals.join("+'^'+") + refQualSuffix;
  },
  
  getContactRefQualOnCase: function() {
  	var refQualPrefix = "javascript:new global.CSManagementUtils().getCaseContacts(current.account)+'^'+";
  	var refQuals = [];
  	if(this.pluginMgr.isActive('com.sn_csm_b2b_consumers')) {
  		refQuals.push('new sn_acct_consumer.AccountConsumerUtil().getContactRefFromConsumer(current.consumer)');
  	}
  	if(refQuals.length > 0)
  		return refQualPrefix + refQuals.join("+'^'+");
  },
  	
  getAccountRefQualOnInstallBaseItem: function() {
  	var refQualPrefix = 'javascript:';
  	var refQuals = [];
  	if(this.pluginMgr.isActive('com.sn_csm_b2b_consumers')) {
  		refQuals.push('new sn_acct_consumer.AccountConsumerUtil().getAccountRefFromConsumer(current.consumer)');
  	}
  	if(refQuals.length > 0)
  		return refQualPrefix + refQuals.join("+'^'+");
  },
  
  getConsumerRefQualOnInstallBaseItem: function() {
  	var refQualPrefix = 'javascript:';
  	var refQuals = [];
  	if(this.pluginMgr.isActive('com.sn_csm_b2b_consumers')) {
  		refQuals.push('new sn_acct_consumer.AccountConsumerUtil().getConsumerRefFromAccount(current.account)');
  	}
  	if(refQuals.length > 0)
  		return refQualPrefix + refQuals.join("+'^'+");
  },
  
  getAccountRefQualOnSoldProduct: function() {
  	var refQualPrefix = 'javascript:';
  	var refQuals = [];
  	if(this.pluginMgr.isActive('com.sn_csm_b2b_consumers')) {
  		refQuals.push('new sn_acct_consumer.AccountConsumerUtil().getAccountRefFromConsumer(current.consumer)');
  	}
  	if(refQuals.length > 0)
  		return refQualPrefix + refQuals.join("+'^'+");
  },
  getConsumerRefQualOnInteraction: function() {
  	var refQualPrefix = 'javascript:';
  	var refQuals = [];
  	if(this.pluginMgr.isActive('com.sn_csm_b2b_consumers')) {
  		refQuals.push('new sn_acct_consumer.AccountConsumerUtil().getConsumerRefFromAccount(current.account)');
  	}
  	if(refQuals.length > 0)
  		return refQualPrefix + refQuals.join("+'^'+");
  },
  getAccountRefQualOnInteraction: function() {
  	var refQualPrefix = 'javascript:';
  	var refQuals = [];
  	if(this.pluginMgr.isActive('com.sn_csm_b2b_consumers')) {
  		refQuals.push('new sn_acct_consumer.AccountConsumerUtil().getAccountRefFromConsumer(current.consumer)');
  	}
  	if(refQuals.length > 0)
  		return refQualPrefix + refQuals.join("+'^'+");
  },
  getContactRefQualOnInteraction: function() {
  	var refQualPrefix = "javascript:new global.CSManagementUtils().getCaseContacts(current.account)+'^'+";
  	var refQuals = [];
  	if(this.pluginMgr.isActive('com.sn_csm_b2b_consumers')) {
  		refQuals.push('new sn_acct_consumer.AccountConsumerUtil().getContactRefFromConsumer(current.consumer)');
  	}
  	if(refQuals.length > 0)
  		return refQualPrefix + refQuals.join("+'^'+");
  },
  

  type: 'CSMReferenceQualifierServiceSNC'
};

Sys ID

3d36da5169af2010f877b009a0916d13

Offical Documentation

Official Docs: