microsoft-teamsdiscordmessengercustom-servicesmacoslinuxwindowsinboxwhatsappicloudtweetdeckhipchattelegramhangoutsslackgmailskypefacebook-workplaceoutlookemail
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
876 B
31 lines
876 B
/** |
|
* JSON Simlet. |
|
*/ |
|
Ext.define('Ext.ux.ajax.JsonSimlet', { |
|
extend: 'Ext.ux.ajax.DataSimlet', |
|
alias: 'simlet.json', |
|
|
|
doGet: function (ctx) { |
|
var me = this, |
|
data = me.getData(ctx), |
|
page = me.getPage(ctx, data), |
|
reader = ctx.xhr.options.proxy && ctx.xhr.options.proxy.getReader(), |
|
root = reader && reader.getRootProperty(), |
|
ret = me.callParent(arguments), // pick up status/statusText |
|
response = {}; |
|
|
|
if (root && Ext.isArray(page)) { |
|
response[root] = page; |
|
response[reader.getTotalProperty()] = data.length; |
|
} else { |
|
response = page; |
|
} |
|
|
|
if (ctx.groupSpec) { |
|
response.summaryData = me.getSummary(ctx, data, page); |
|
} |
|
|
|
ret.responseText = Ext.encode(response); |
|
return ret; |
|
} |
|
});
|
|
|