andrewcrumrine
05/26/2017, 2:33 PM/**
* @NApiVersion 2.x
* @NScriptType Suitelet
* @NModuleScope SameAccount
*
* URL Parameters:
* custparam_itemid : Item Internal ID
* custparam_checkval : pass code to use public suitelet
* custparam_includeimages : 'T'
*/
define([
'N/search',
],
function(search_mod) {
/**
* Definition of the Suitelet script trigger point.
*
* @param {Object} context
* @param {ServerRequest} context.request - Encapsulation of the incoming request
* @param {ServerResponse} context.response - Encapsulation of the Suitelet response
* @Since 2015.2
*/
function onRequest(context) {
var PASS_CODE = 'Norpak1234';
if (context.request.parameters.custparam_checkval != PASS_CODE) {
var invalid_message = 'Pass code is invalid.';
return context.response.write(invalid_message);
}
var item_field_map = get_item_field_map();
// TODO: Parse map.
}
function get_item_field_map() {
var ITEM_FIELD_RECORD = 'customrecord_wis_itemsharedfield';
var item_field_map = {};
// Create and run item field search
// Get all available fields, excluding inactive fields
search_mod.create({
type : ITEM_FIELD_RECORD,
filters : [
['isinactive', <http://search_mod.Operator.IS|search_mod.Operator.IS>, false],
],
columns : [
'custrecord_wis_fieldlabel',
'custrecord_wis_fieldid',
]
}).run().each(function(result) {
var field_label = result.getValue({
name : 'custrecord_wis_fieldlabel',
});
var field_id = result.getValue({
name : 'custrecord_wis_fieldid',
});
item_field_map[field_label] = field_id;
return true;
});
return item_field_map;
}
return {
onRequest: onRequest
};
});