Name
sn_hr_core.hr_license
Description
No description available
Script
var hr_license = Class.create();
hr_license.prototype = {
initialize: function(){
},
hasHrAccess:function(table) {
return gs.getProperty('sn_hr_core.inactive_tables',"").split(',').map(function(inactive_table) {
return inactive_table.trim();
}).indexOf(table) === -1;
},
configureCOE: function(active_Coe, deactive_Coe){
var changeMade = false;
var HR_CORE = 'sn_hr_core';
var HR_SP = 'sn_hr_sp';
var HR_LE = 'sn_hr_le';
var HR_INTEGRATIONS = 'sn_hr_integrations';
var disableWorkflow = true;
var enq = "id!=hr_case^ORapp_id=com.sn_hr_core^ORapp_id=com.sn_hr_lifecycle_events";
var gr = new GlideRecord('ua_entitlement');
gr.addEncodedQuery(enq);
gr.query();
while (gr.next()) {
if (active_Coe.indexOf(gr.id.toString()) > -1 && gr.active.toString() == "false") {
changeMade = true;
if(GlidePluginManager.isActive('com.sn_hr_core'))
sn_lef.GlideEntitlement.enableEntitlement(gr.id.toString(), HR_CORE, disableWorkflow);
if(GlidePluginManager.isActive('com.sn_hr_integrations'))
sn_lef.GlideEntitlement.enableEntitlement(gr.id.toString(), HR_INTEGRATIONS, disableWorkflow);
if(GlidePluginManager.isActive('com.sn_hr_service_portal'))
sn_lef.GlideEntitlement.enableEntitlement(gr.id.toString(), HR_SP, disableWorkflow);
if(GlidePluginManager.isActive('com.sn_hr_lifecycle_events'))
sn_lef.GlideEntitlement.enableEntitlement(gr.id.toString(), HR_LE, disableWorkflow);
} else if (deactive_Coe.indexOf(gr.id.toString()) > -1 && gr.active.toString() == "true") {
changeMade = true;
if(GlidePluginManager.isActive('com.sn_hr_core'))
sn_lef.GlideEntitlement.disableEntitlement(gr.id.toString(), HR_CORE, disableWorkflow);
if(GlidePluginManager.isActive('com.sn_hr_integrations'))
sn_lef.GlideEntitlement.disableEntitlement(gr.id.toString(), HR_INTEGRATIONS, disableWorkflow);
if(GlidePluginManager.isActive('com.sn_hr_service_portal'))
sn_lef.GlideEntitlement.disableEntitlement(gr.id.toString(), HR_SP, disableWorkflow);
if(GlidePluginManager.isActive('com.sn_hr_lifecycle_events'))
sn_lef.GlideEntitlement.disableEntitlement(gr.id.toString(), HR_LE, disableWorkflow);
}
}
if(changeMade == false)
return "there is no change made";
return this.resetCOEConfig();
},
resetCOEConfig: function(){
var allInactiveTables = [];
var allActiveTables = [];
var enq = "id!=hr_lifecycle_events^ORid=NULL^id!=hr_case^ORid=NULL^app_id=com.sn_hr_core";
var gr = new GlideRecord('ua_entitlement');
gr.addEncodedQuery(enq);
gr.query();
while (gr.next()) {
if (gr.active.toString() == "false")
allInactiveTables.push(gr.getValue('table_names').toString());
else
allActiveTables.push(gr.getValue('table_names').toString());
}
//setting the properties
gs.setProperty('sn_hr_core.inactive_tables',allInactiveTables.join(","));
return "success";
},
type: 'hr_license'
};
Sys ID
329f007f0b1222004f526f3ef6673ae3