Ext.ensible.cal.EventStore = Ext.extend(Ext.data.Store, {
constructor: function(config){
// By default autoLoad will cause the store to load itself during the
// constructor, before the owning calendar view has a chance to set up
// the initial date params to use during loading. We replace autoLoad
// with a deferLoad property that the view can check for and use to set
// up default params as needed, then call the load itself.
this.deferLoad = config.autoLoad;
config.autoLoad = false;
//this._dateCache = [];
Ext.ensible.cal.EventStore.superclass.constructor.apply(this, arguments);
},
load : function(o){
Ext.ensible.log('store load');
// if params are passed delete the one-time defaults
if(o.params){
delete this.initialParams;
}
// this.initialParams will only be set if the store is being loaded manually
// for the first time (autoLoad = false) so the owning calendar view set
// the initial start and end date params to use. Every load after that will
// have these params set automatically during normal UI navigation.
if(this.initialParams){
o = Ext.isObject(o) ? o : {};
o.params = o.params || {};
Ext.apply(o.params, this.initialParams);
delete this.initialParams;
}
Ext.ensible.cal.EventStore.superclass.load.call(this, o);
}
// execute : function(action, rs, options, /* private */ batch) {
// if(action=='read'){
// var i = 0,
// dc = this._dateCache,
// len = dc.length,
// range,
// p = options.params,
// start = p.start,
// end = p.end;
//
// //options.add = true;
// for(i; i