summaryrefslogtreecommitdiff
path: root/js
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2018-08-23 09:56:34 +0300
committerAndrew Dolgov <[email protected]>2018-08-23 09:56:34 +0300
commita3e2f1a9c3b7fa5688f908bd0aa9ed4c6c539953 (patch)
treedee65ed57833371139cb62b97cae0de43aa5979a /js
parent54727f9534f8b17b57d87577ed1ec0e8be8be0f3 (diff)
define custom dojo modules with define() instead of require(), update startup module dependencies
Diffstat (limited to 'js')
-rw-r--r--js/FeedStoreModel.js98
-rwxr-xr-xjs/FeedTree.js99
-rw-r--r--js/PrefFeedStore.js20
-rw-r--r--js/PrefFeedTree.js21
-rw-r--r--js/PrefFilterStore.js22
-rw-r--r--js/PrefFilterTree.js23
-rw-r--r--js/PrefLabelTree.js2
-rwxr-xr-xjs/prefs.js4
-rw-r--r--js/tt-rss.js1
9 files changed, 149 insertions, 141 deletions
diff --git a/js/FeedStoreModel.js b/js/FeedStoreModel.js
new file mode 100644
index 000000000..49641a732
--- /dev/null
+++ b/js/FeedStoreModel.js
@@ -0,0 +1,98 @@
+define(["dojo/_base/declare", "dijit/tree/ForestStoreModel"], function (declare) {
+
+ return declare("fox.FeedStoreModel", dijit.tree.ForestStoreModel, {
+ getItemsInCategory: function (id) {
+ if (!this.store._itemsByIdentity) return undefined;
+
+ cat = this.store._itemsByIdentity['CAT:' + id];
+
+ if (cat && cat.items)
+ return cat.items;
+ else
+ return undefined;
+
+ },
+ getItemById: function (id) {
+ return this.store._itemsByIdentity[id];
+ },
+ getFeedValue: function (feed, is_cat, key) {
+ if (!this.store._itemsByIdentity) return undefined;
+
+ if (is_cat)
+ treeItem = this.store._itemsByIdentity['CAT:' + feed];
+ else
+ treeItem = this.store._itemsByIdentity['FEED:' + feed];
+
+ if (treeItem)
+ return this.store.getValue(treeItem, key);
+ },
+ getFeedName: function (feed, is_cat) {
+ return this.getFeedValue(feed, is_cat, 'name');
+ },
+ getFeedUnread: function (feed, is_cat) {
+ var unread = parseInt(this.getFeedValue(feed, is_cat, 'unread'));
+ return (isNaN(unread)) ? 0 : unread;
+ },
+ setFeedUnread: function (feed, is_cat, unread) {
+ return this.setFeedValue(feed, is_cat, 'unread', parseInt(unread));
+ },
+ setFeedValue: function (feed, is_cat, key, value) {
+ if (!value) value = '';
+ if (!this.store._itemsByIdentity) return undefined;
+
+ if (is_cat)
+ treeItem = this.store._itemsByIdentity['CAT:' + feed];
+ else
+ treeItem = this.store._itemsByIdentity['FEED:' + feed];
+
+ if (treeItem)
+ return this.store.setValue(treeItem, key, value);
+ },
+ getNextUnreadFeed: function (feed, is_cat) {
+ if (!this.store._itemsByIdentity)
+ return null;
+
+ if (is_cat) {
+ treeItem = this.store._itemsByIdentity['CAT:' + feed];
+ } else {
+ treeItem = this.store._itemsByIdentity['FEED:' + feed];
+ }
+
+ items = this.store._arrayOfAllItems;
+
+ for (var i = 0; i < items.length; i++) {
+ if (items[i] == treeItem) {
+
+ for (var j = i + 1; j < items.length; j++) {
+ var unread = this.store.getValue(items[j], 'unread');
+ var id = this.store.getValue(items[j], 'id');
+
+ if (unread > 0 && ((is_cat && id.match("CAT:")) || (!is_cat && id.match("FEED:")))) {
+ if (!is_cat || !(this.store.hasAttribute(items[j], 'parent_id') && this.store.getValue(items[j], 'parent_id') == feed)) return items[j];
+ }
+ }
+
+ for (var j = 0; j < i; j++) {
+ var unread = this.store.getValue(items[j], 'unread');
+ var id = this.store.getValue(items[j], 'id');
+
+ if (unread > 0 && ((is_cat && id.match("CAT:")) || (!is_cat && id.match("FEED:")))) {
+ if (!is_cat || !(this.store.hasAttribute(items[j], 'parent_id') && this.store.getValue(items[j], 'parent_id') == feed)) return items[j];
+ }
+ }
+ }
+ }
+
+ return null;
+ },
+ hasCats: function () {
+ if (this.store && this.store._itemsByIdentity)
+ return this.store._itemsByIdentity['CAT:-1'] != undefined;
+ else
+ return false;
+ },
+
+ });
+});
+
+
diff --git a/js/FeedTree.js b/js/FeedTree.js
index aff481e2c..636abed6e 100755
--- a/js/FeedTree.js
+++ b/js/FeedTree.js
@@ -1,101 +1,4 @@
-require(["dojo/_base/declare", "dijit/tree/ForestStoreModel"], function (declare) {
-
- return declare("fox.FeedStoreModel", dijit.tree.ForestStoreModel, {
- getItemsInCategory: function (id) {
- if (!this.store._itemsByIdentity) return undefined;
-
- cat = this.store._itemsByIdentity['CAT:' + id];
-
- if (cat && cat.items)
- return cat.items;
- else
- return undefined;
-
- },
- getItemById: function (id) {
- return this.store._itemsByIdentity[id];
- },
- getFeedValue: function (feed, is_cat, key) {
- if (!this.store._itemsByIdentity) return undefined;
-
- if (is_cat)
- treeItem = this.store._itemsByIdentity['CAT:' + feed];
- else
- treeItem = this.store._itemsByIdentity['FEED:' + feed];
-
- if (treeItem)
- return this.store.getValue(treeItem, key);
- },
- getFeedName: function (feed, is_cat) {
- return this.getFeedValue(feed, is_cat, 'name');
- },
- getFeedUnread: function (feed, is_cat) {
- var unread = parseInt(this.getFeedValue(feed, is_cat, 'unread'));
- return (isNaN(unread)) ? 0 : unread;
- },
- setFeedUnread: function (feed, is_cat, unread) {
- return this.setFeedValue(feed, is_cat, 'unread', parseInt(unread));
- },
- setFeedValue: function (feed, is_cat, key, value) {
- if (!value) value = '';
- if (!this.store._itemsByIdentity) return undefined;
-
- if (is_cat)
- treeItem = this.store._itemsByIdentity['CAT:' + feed];
- else
- treeItem = this.store._itemsByIdentity['FEED:' + feed];
-
- if (treeItem)
- return this.store.setValue(treeItem, key, value);
- },
- getNextUnreadFeed: function (feed, is_cat) {
- if (!this.store._itemsByIdentity)
- return null;
-
- if (is_cat) {
- treeItem = this.store._itemsByIdentity['CAT:' + feed];
- } else {
- treeItem = this.store._itemsByIdentity['FEED:' + feed];
- }
-
- items = this.store._arrayOfAllItems;
-
- for (var i = 0; i < items.length; i++) {
- if (items[i] == treeItem) {
-
- for (var j = i + 1; j < items.length; j++) {
- var unread = this.store.getValue(items[j], 'unread');
- var id = this.store.getValue(items[j], 'id');
-
- if (unread > 0 && ((is_cat && id.match("CAT:")) || (!is_cat && id.match("FEED:")))) {
- if (!is_cat || !(this.store.hasAttribute(items[j], 'parent_id') && this.store.getValue(items[j], 'parent_id') == feed)) return items[j];
- }
- }
-
- for (var j = 0; j < i; j++) {
- var unread = this.store.getValue(items[j], 'unread');
- var id = this.store.getValue(items[j], 'id');
-
- if (unread > 0 && ((is_cat && id.match("CAT:")) || (!is_cat && id.match("FEED:")))) {
- if (!is_cat || !(this.store.hasAttribute(items[j], 'parent_id') && this.store.getValue(items[j], 'parent_id') == feed)) return items[j];
- }
- }
- }
- }
-
- return null;
- },
- hasCats: function () {
- if (this.store && this.store._itemsByIdentity)
- return this.store._itemsByIdentity['CAT:-1'] != undefined;
- else
- return false;
- },
-
- });
-});
-
-require(["dojo/_base/declare", "dojo/dom-construct", "dijit/Tree", "dijit/Menu"], function (declare, domConstruct) {
+define(["dojo/_base/declare", "dojo/dom-construct", "dijit/Tree", "dijit/Menu"], function (declare, domConstruct) {
return declare("fox.FeedTree", dijit.Tree, {
_onKeyPress: function(/* Event */ e) {
diff --git a/js/PrefFeedStore.js b/js/PrefFeedStore.js
new file mode 100644
index 000000000..152ebba44
--- /dev/null
+++ b/js/PrefFeedStore.js
@@ -0,0 +1,20 @@
+define(["dojo/_base/declare", "dojo/data/ItemFileWriteStore"], function (declare) {
+
+ return declare("fox.PrefFeedStore", dojo.data.ItemFileWriteStore, {
+
+ _saveEverything: function(saveCompleteCallback, saveFailedCallback,
+ newFileContentString) {
+
+ dojo.xhrPost({
+ url: "backend.php",
+ content: {op: "pref-feeds", method: "savefeedorder",
+ payload: newFileContentString},
+ error: saveFailedCallback,
+ load: saveCompleteCallback});
+ },
+
+ });
+
+});
+
+
diff --git a/js/PrefFeedTree.js b/js/PrefFeedTree.js
index 0079f0b1b..b3ea0c425 100644
--- a/js/PrefFeedTree.js
+++ b/js/PrefFeedTree.js
@@ -1,23 +1,4 @@
-require(["dojo/_base/declare", "dojo/data/ItemFileWriteStore"], function (declare) {
-
- return declare("fox.PrefFeedStore", dojo.data.ItemFileWriteStore, {
-
- _saveEverything: function(saveCompleteCallback, saveFailedCallback,
- newFileContentString) {
-
- dojo.xhrPost({
- url: "backend.php",
- content: {op: "pref-feeds", method: "savefeedorder",
- payload: newFileContentString},
- error: saveFailedCallback,
- load: saveCompleteCallback});
- },
-
- });
-
-});
-
-require(["dojo/_base/declare", "dojo/dom-construct", "lib/CheckBoxTree"], function (declare, domConstruct) {
+define(["dojo/_base/declare", "dojo/dom-construct", "lib/CheckBoxTree"], function (declare, domConstruct) {
return declare("fox.PrefFeedTree", lib.CheckBoxTree, {
_createTreeNode: function(args) {
diff --git a/js/PrefFilterStore.js b/js/PrefFilterStore.js
new file mode 100644
index 000000000..cccec6479
--- /dev/null
+++ b/js/PrefFilterStore.js
@@ -0,0 +1,22 @@
+define(["dojo/_base/declare", "dojo/data/ItemFileWriteStore"], function (declare) {
+
+ return declare("fox.PrefFilterStore", dojo.data.ItemFileWriteStore, {
+
+ _saveEverything: function (saveCompleteCallback, saveFailedCallback,
+ newFileContentString) {
+
+ dojo.xhrPost({
+ url: "backend.php",
+ content: {
+ op: "pref-filters", method: "savefilterorder",
+ payload: newFileContentString
+ },
+ error: saveFailedCallback,
+ load: saveCompleteCallback
+ });
+ },
+
+ });
+});
+
+
diff --git a/js/PrefFilterTree.js b/js/PrefFilterTree.js
index 5c854cbd8..3249fbc26 100644
--- a/js/PrefFilterTree.js
+++ b/js/PrefFilterTree.js
@@ -1,25 +1,4 @@
-require(["dojo/_base/declare", "dojo/data/ItemFileWriteStore"], function (declare) {
-
- return declare("fox.PrefFilterStore", dojo.data.ItemFileWriteStore, {
-
- _saveEverything: function (saveCompleteCallback, saveFailedCallback,
- newFileContentString) {
-
- dojo.xhrPost({
- url: "backend.php",
- content: {
- op: "pref-filters", method: "savefilterorder",
- payload: newFileContentString
- },
- error: saveFailedCallback,
- load: saveCompleteCallback
- });
- },
-
- });
-});
-
-require(["dojo/_base/declare", "dojo/dom-construct", "lib/CheckBoxTree"], function (declare, domConstruct) {
+define(["dojo/_base/declare", "dojo/dom-construct", "lib/CheckBoxTree"], function (declare, domConstruct) {
return declare("fox.PrefFilterTree", lib.CheckBoxTree, {
_createTreeNode: function(args) {
diff --git a/js/PrefLabelTree.js b/js/PrefLabelTree.js
index 9c43346b3..2215dcdb0 100644
--- a/js/PrefLabelTree.js
+++ b/js/PrefLabelTree.js
@@ -1,4 +1,4 @@
-require(["dojo/_base/declare", "dojo/dom-construct", "lib/CheckBoxTree", "dijit/form/DropDownButton"], function (declare, domConstruct) {
+define(["dojo/_base/declare", "dojo/dom-construct", "lib/CheckBoxTree", "dijit/form/DropDownButton"], function (declare, domConstruct) {
return declare("fox.PrefLabelTree", lib.CheckBoxTree, {
setNameById: function (id, name) {
diff --git a/js/prefs.js b/js/prefs.js
index 79ad15cec..c2190280c 100755
--- a/js/prefs.js
+++ b/js/prefs.js
@@ -832,6 +832,10 @@ function init() {
"dijit/Tree",
"dijit/tree/dndSource",
"dojo/data/ItemFileWriteStore",
+ "lib/CheckBoxStoreModel",
+ "lib/CheckBoxTree",
+ "fox/PrefFeedStore",
+ "fox/PrefFilterStore",
"fox/PrefFeedTree",
"fox/PrefFilterTree",
"fox/PrefLabelTree"], function (dojo, ready, parser) {
diff --git a/js/tt-rss.js b/js/tt-rss.js
index 284df9746..3f65a2cea 100644
--- a/js/tt-rss.js
+++ b/js/tt-rss.js
@@ -245,6 +245,7 @@ function init() {
"dijit/tree/dndSource",
"dijit/tree/ForestStoreModel",
"dojo/data/ItemFileWriteStore",
+ "fox/FeedStoreModel",
"fox/FeedTree" ], function (dojo, ready, parser) {
ready(function() {