How to display the VIP icon beside field "Requested for" on ritm form

VIKAS MISHRA
Tera Contributor

My instance already have one on change client script for incident table in order to display the VIP icon beside field "Caller" howvever when i am trying to utilize the same script for the sc_req_item table as on load client script then that does not work, 

Please suggest the script that i can use for RITM form.

2 REPLIES 2

Tushar
Kilo Sage
Kilo Sage

Hi @VIKAS MISHRA 

 

I think the "onChange" event is used for the Incident form, but for the RITM form, you should use the "onLoad" event.

 

can you please share the script?

 


Please, don't forget to mark my answer as correct if it solves your issue or mark it as helpful if it is relevant for you!

Regards,
Tushar

 

Below is the client script that i am using 

function onLoad() {
	//Type appropriate comment here, and begin script below

	var callerLabel = $('label.sc_req_item.request.requested_for');
	var callerField = $('sys_display.sc_req_item.request.requested_for');
	if (!callerLabel || !callerField)
		return;


	var number = g_form.getValue('number');

	var ga = new GlideAjax("isVIP");
	ga.addParam("sysparm_name", "vip");
	ga.addParam("sysparm_numnber", number);
	ga.getXML(vipCallBack);

}


function vipCallBack(response) {

	var answer = response.responseXML.documentElement.getAttribute("answer");
	var callerLabel = $('label.sc_req_item.request.requested_for').down('label');
	var callerField = $('sys_display..sc_req_item.request.requested_for');
	if (!callerLabel || !callerField)
		return;


	//check for VIP status
	if (answer == 'true') {
		var bgPosition = "95% 55%";
		if (document.documentElement.getAttribute('data-doctype') == 'true')
			bgPosition = "5% 45%";

		callerLabel.setStyle({backgroundImage: "url(images/icons/vip.gif)", backgroundRepeat: "no-repeat", backgroundPosition: bgPosition, paddingLeft: '30px' });
		//set callerField color
		callerField.setStyle({color: "red"});
	} else {
		callerLabel.setStyle({backgroundImage: ""});
		callerField.setStyle({color: ""});
	}

}

 

 

Below is the script include i am using

 

var isVIP = Class.create();
isVIP.prototype = Object.extendsObject(AbstractAjaxProcessor, {

	
	vip: function(){
		gs.addInfoMessage('test1');
			var number = this.getParameter('sysparm_numnber');
		var gr = new GlideRecord("sc_req_item");
		gr.addQuery("number", number);
		gr.query();
		if (gr.next()) {
			gs.addInfoMessage(number);
			gs.addInfoMessage(gr.request.requested_for.vip);
			return gr.request.requested_for.vip;
			
		}
		gs.addInfoMessage('test2');
	},
	
    type: 'isVIP'
});