Extjs solution:
How it works in extjs
Ext.define('app.model.Folder', {
extend: 'Ext.data.Model',
proxy: {
type: 'rest',
url: 'rooms/{roomId}/documents/folder',
api: {
create: 'rooms/{roomId}/documents/folder/{parentNodeId}',
read: 'rooms/{roomId}/documents/folder/{parentNodeId}',
update: 'rooms/{roomId}/documents/folder/{parentNodeId}',
destroy: 'rooms/{roomId}/documents/folder/{parentNodeId}',
}
}
});
Our solution:
Ext.define('app.model.Folder', {
extend: 'Ext.data.Model',
proxy: {
type: 'phrest',
url: 'rooms/{roomId}/documents/folder',
actionMethods: {
'flagThisFolder': 'PUT'
},
api: {
flagThisFolder: 'rooms/{roomId}/documents/folder/{nodeId}/markThisFolder'
}
},
markFolder: function (callback) {
var options = {};
options.customAction = 'flagThisFolder';
options.callback = callback;
this.doPost(options);
}
});