The CreatorCon Call for Content is officially open! Get started here.

My surveys in menu header only showing surveys in ready state

emvhodgson
Kilo Contributor

Hi All

in the menu header on my portal i have added in My surveys, however it is only showing surveys that are in the ready state, i want to show those that are also in progress. i think there are two places i need to amend my script, but i can't get it to work (i've not done any scripting courses) I'm sure it's simple, but i don't know how, looking for any suggestions please.

Existing script is;

// maximum number of entries in this Menu
var max = 30;

var t = data; // shortcut
t.items = [];

var u = gs.getUser().getID();

// use record watchers to tell header when to update dropdown counts
t.record_watchers = [];
t.record_watchers.push({'table':'asmt_assessment_instance','filter':'state=ready'});


var z = new GlideRecord('asmt_assessment_instance');
z.addActiveQuery();
z.addQuery('user', gs.getUserID());
z.addQuery('state', 'ready');
z.orderByDesc('sys_updated_on');
z.setLimit(max);
z.query();


while (z.next()) {
/*var a = {};
$sp.getRecordValues(a, z, 'sys_id,instance_id,metric_type,state');
a.__table = z.getTableName();
a.type = 'record';
a.__page = 'take_survey';
a.short_description = z.metric_type.name + " " + z.task_id.number;
a.sortOrder = z.sys_updated_on.getGlideObject().getNumericValue();*/
var a = {title: z.metric_type.name + " " + z.task_id.number, type:
'link', href: '?id=take_survey&instance_id=' + z.sys_id, items: []};
a.sortOrder = z.sys_updated_on.getGlideObject().getNumericValue();
t.items.push(a);
}


t.items.sort(function(a, b) {
return b.sortOrder - a.sortOrder;
});
t.items = t.items.slice(0, max); // only want first 30
t.count = t.items.length;

 

Thanks

5 REPLIES 5

stevebogart
Tera Expert

To get both Ready to Take and In Progress Surveys I made the following changes:

 

t.record_watchers.push({'table':'asmt_assessment_instance','filter':'state=ready^ORstate=wip'});

 

 

//z.addQuery('state', 'ready');

var queryString = "state=ready^ORstate=wip";
z.addEncodedQuery(queryString);