MCUT_Supervisor/bs_demo/advanced/scripts/collections/folders.js
2025-03-26 10:38:33 +08:00

45 lines
1.1 KiB
JavaScript

/*global define*/
define([
'baja!',
'underscore',
'backbone',
'models/model'
], function (baja, _, Backbone, Folder) {
'use strict';
var FolderCollection = Backbone.Collection.extend({
// reference to the collection's model
model: Folder,
sync: function(method, model, options) {
options || (options = {});
if(method==='read') {
console.log('retrieve folders from jace...');
var result = [];
baja.Ord.make(options.ord)
.get()
.then(function(folder){
folder.getSlots().is('baja:Folder').eachValue(function(sf){
var model = new Folder()
model.set({ id:sf.getHandle(), name:sf.getName() });
result.push(model);
});
if(result) {
options.success && options.success(result);
}
else if(options.error) {
options.error('could not fetch data from jace');
}
})
}
else
return Backbone.sync.apply(this, arguments);
}
});
return FolderCollection;
});