Name
sn_oe_sfs.VACommonTableAdapter
Description
No description available
Script
var VACommonTableAdapter = Class.create();
VACommonTableAdapter.prototype = {
initialize: function(adapter, inputBuilder) {
this.adapter = adapter;
this.inputBuilder = inputBuilder;
this.logger = new sn_oe_sfs.VACommonLogger(this.inputBuilder.getChannelLogger(), 'VACommonTableAdapter');
this.logger.debug("VACommonTableAdapter channel: " + JSON.stringify(this.adapter) + " \n inputs: " + JSON.stringify(inputBuilder));
},
transform: function() {
try {
var richControl = this.inputBuilder.getRichControl();
var data = this.inputBuilder.getData();
var payload = this.inputBuilder.getPayload();
var headers = richControl.headers || [];
var label = richControl.label;
var paginationBreak = Number(richControl.paginationBreak);
var totalRows = Number(richControl.totalSearchResultsCount);
var appInboundId = this.adapter.getAppInboundId(payload);
var providerUserId = this.adapter.getUserId(payload);
var isShowMoreSelected = this.adapter.isShowMoreSelected(payload);
var startRowNum = 0;
if (isShowMoreSelected) {
var nextIndex = this.adapter.getNextIndexFromUserContext(appInboundId, providerUserId);
startRowNum = nextIndex ? Number(nextIndex) : 0;
}
var endRowNum = startRowNum + paginationBreak;
data = data.slice(startRowNum, endRowNum);
var response = this.adapter.addTable(headers, label, data, startRowNum);
if (endRowNum >= totalRows) {
response = this.adapter.addButtons(response);
} else {
this.adapter.setNextIndexInUserContext(endRowNum, appInboundId, providerUserId);
var remainingRowCount = totalRows - endRowNum;
var numOfRowsDisplay = remainingRowCount > paginationBreak ? paginationBreak : remainingRowCount;
response = this.adapter.addButtons(response, numOfRowsDisplay);
}
return this.adapter.getTableResult(response, payload);
} catch (e) {
this.logger.error("Error in default table outbound transformer : " + e.message);
throw e;
}
},
type: 'VACommonTableAdapter'
};
Sys ID
f681da87eb03011095b3378ab5522831