Name

sn_customerservice.CSPortalUtilClientCallable

Description

Helper functions for Customer Service portal that are client callable.

Script

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

  getMyCasesURL: function() {
      var url = "sn_customerservice_case_list.do?";
      url += "sysparm_nameofstack=cs_my_cases";
      url += "&sysparm_clear_stack=yes";
  	//add view
      if (gs.hasRole('admin'))
          url += "&sysparm_view=";
      else if (gs.hasRole('sn_customerservice.partner_admin') || gs.hasRole('sn_customerservice.partner'))
          url += "&sysparm_view=csp_partner";
      else
          url += "&sysparm_view=csp";
      return url;
  },
  
  getManageUserURL: function() {
  	var value = gs.getSession().getClientData("cs_portal_manage_user_url");
  	if (value == 'NIL')
  		return null;
  	if (gs.nil(value)) {
  		value = 'NIL';
  		var url = "customer_contact_list.do?";
  		url += "sysparm_nameofstack=cs_manage_users"; 
  		url += "&sysparm_clear_stack=yes";
  		var isAdmin = new global.CSManagementUtils().hasUserAdminAccess();
  		if (isAdmin == true) {
  			url += "&sysparm_view=csp_partner";
  			url += "&sysparm_query=accountIN" + this.getAccessibleAccounts(gs.getUser().getCompanyID(), false, true, true);
  		} else if (gs.hasRole('sn_customerservice.customer_admin')) {
  			url += "&sysparm_view=csp";
  			url += "&sysparm_query=accountIN" + gs.getUser().getCompanyID();
  		} else {
  			url += "&sysparm_view=csp";
  			url += "&sysparm_query=sys_idIN" + gs.getUserID();
  		}
  		value = url;
  		gs.getSession().putClientData("cs_portal_manage_user_url", value);
  	}
  	return value;
  },
  
  type: 'CSPortalUtilClientCallable'
});

Sys ID

2e0178e9871113005c7f7d3d87cb0b50

Offical Documentation

Official Docs: