iw/static/js/store/Activities.js

42 lines
1007 B
JavaScript

Ext.define('IW.store.Activities', {
extend: 'Ext.data.Store',
model: 'IW.model.Activity',
autoLoad: false,
proxy: {
type: 'rest',
url: '/api/activities/',
reader: {
type: 'json',
successProperty: 'success'
}
},
sorters: [{
property: 'Timestamp',
direction: 'DESC'
}],
constructor: function() {
this.callParent(arguments);
// Start automatic refresh
var runner = new Ext.util.TaskRunner();
var me = this;
this.refreshtask = runner.start({
run: function() {
if (me.getCount()>0) {
if (sessionStorage.iw_csrf_token) {
me.reload();
}
}
},
interval: 300000 // Once per 5 minutes should do
});
},
destroy: function() {
this.refreshtask.destroy();
this.callParent(arguments);
}
});