Name
global.PlannedTaskCustomConsole
Description
Decorator on Planned task custom console
Script
var PlannedTaskCustomConsole = Class.create();
PlannedTaskCustomConsole.prototype = {
initialize: function(id) {
if ( JSUtil.nil(id) )
this.gr = new GlideRecord('planned_task_custom_console');
else {
this.gr = new GlideRecord('planned_task_custom_console');
this.gr.get(id);
}
},
table: function() {
return this.gr.getValue('table');
},
filter: function() {
return this.gr.getValue('filter');
},
name: function() {
return this.gr.getValue('name');
},
recordLimit: function() {
if ( JSUtil.nil(this.gr.getValue('record_limit')) )
return 50;
else
return this.gr.getValue('record_limit');
},
tableInstanceOf: function(table) {
if(JSUtil.nil(this.table()))
return false;
var gr = new GlideRecord(this.table());
return gr.instanceOf(table);
},
matchingRecordIds: function() {
var ids = [];
var gr = new GlideRecord(this.table());
gr.addQuery("sys_class_name", this.table());
if ( JSUtil.notNil(this.filter()) )
gr.addEncodedQuery(this.filter());
gr.setLimit(this.recordLimit());
gr.query();
while ( gr.next() ){
if(gr.canRead())
ids.push({sys_id: gr.getValue('sys_id'), parent: gr.getValue('parent')});
}
return ids;
},
id: function() {
return this.gr.getValue('sys_id');
},
members: function() {
var members = new GlideRecord('planned_task_custom_console_member');
members.addQuery('console', this.id());
members.query();
return members;
},
owner: function() {
return this.gr.getValue('owner');
},
addMember: function(userId) {
var member = new GlideRecord('planned_task_custom_console_member');
member.initialize();
member.setValue('console', this.id());
member.setValue('user', userId);
return member.insert();
},
removeMember: function(userId) {
var member = new GlideRecord('planned_task_custom_console_member');
member.addQuery('user', userId);
member.addQuery('console', this.id());
member.query();
if ( member.next() )
return member.deleteRecord();
else
return false;
},
memberExists: function(memberId) {
gs.info("memberExists -> " + memberId);
if(JSUtil.notNil(memberId)) {
var members = new GlideRecord('planned_task_custom_console_member');
members.addQuery('console', this.id());
members.addQuery("user", memberId);
members.query();
gs.info("memberExists query -> " + members.getRowCount() + " | " + members.getEncodedQuery());
if(members.next())
return true;
}
return false;
},
isValid: function() {
return this.gr.isValidRecord();
},
type: 'PlannedTaskCustomConsole'
};
Sys ID
eb11354037330200455726877e41f1bd