snappymail/dev/Stores/User/Template.js

50 lines
1,000 B
JavaScript
Raw Normal View History

(function () {
'use strict';
var
_ = require('_'),
ko = require('ko')
// Remote = require('Storage/User/Remote')
;
/**
* @constructor
*/
function TemplateUserStore()
{
this.templates = ko.observableArray([]);
this.templates.loading = ko.observable(false).extend({'throttle': 100});
this.templatesNames = ko.observableArray([]).extend({'throttle': 1000});
this.templatesNames.skipFirst = true;
2015-02-19 03:52:52 +08:00
this.subscribers();
}
TemplateUserStore.prototype.subscribers = function ()
{
this.templates.subscribe(function (aList) {
this.templatesNames(_.compact(_.map(aList, function (oItem) {
return oItem ? oItem.name : null;
})));
}, this);
// this.templatesNames.subscribe(function (aList) {
// if (this.templatesNames.skipFirst)
// {
// this.templatesNames.skipFirst = false;
// }
// else if (aList && 1 < aList.length)
// {
// Remote.templatesSortOrder(null, aList);
// }
// }, this);
2015-02-19 03:52:52 +08:00
};
module.exports = new TemplateUserStore();
}());