Name
sn_cs_builder.TopicList
Description
No description available
Script
var TopicList = Class.create();
TopicList.prototype = {
initialize: function() {
},
getTopics : function getTopics() {
var topics = [];
var topicGR = new GlideRecordSecure("sys_cb_topic");
topicGR.query();
while (topicGR.next())
topics.push(this._getTopicObject(topicGR));
return topics;
},
getTopic : function getTopic(/*String sys_id */ topic_id) {
var topic = {};
var topicGR = new GlideRecordSecure("sys_cb_topic");
topicGR.addQuery("sys_id", topic_id);
topicGR.query();
if (topicGR.next())
topic = this._getTopicObject(topicGR);
return topic;
},
_getTopicObject : function _getTopicObject(/* GlideRecord topic */ topicGR) {
return {
name : topicGR.getValue("name"),
title : topicGR.getValue("name"),
key_phrases : topicGR.getValue("key_phrases"),
sys_id : topicGR.getValue("sys_id"),
variables : this.getVariablesForTopic(topicGR.getValue("sys_id")),
goals : this._getGoalIdsForTopic(topicGR.getValue("sys_id"))
};
},
getVariablesForTopic : function getVariablesForTopic(/* String */ topic) {
return new VariableList().getVariablesForTopic(topic);
},
_getGoalIdsForTopic : function _getGoalIdsForTopic(topic) {
var goals = [];
if (!topic)
return goals;
var goalGR = new GlideRecordSecure("sys_cb_goal");
goalGR.addQuery("topic", topic);
goalGR.query();
while (goalGR.next())
goals.push(goalGR.getValue("sys_id"));
return goals;
},
type: 'TopicList'
};
Sys ID
6d6ad06cb3233200f7d1a13816a8dc8e