summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2013-05-07 16:28:49 +0400
committerAndrew Dolgov <[email protected]>2013-05-07 16:28:49 +0400
commit8d4b5b466ad12acb063799efaf97600940f401f0 (patch)
treec67cc4b6e5253df88958777d44bd2708211a868f
parent69970d5b886c11309ea28d69e3939df8f520f7d2 (diff)
fix counters not being updated
-rw-r--r--js/FeedTree.js27
-rw-r--r--tt-rss.css19
2 files changed, 45 insertions, 1 deletions
diff --git a/js/FeedTree.js b/js/FeedTree.js
index a3761ad2e..6c7e565ba 100644
--- a/js/FeedTree.js
+++ b/js/FeedTree.js
@@ -186,13 +186,38 @@ dojo.declare("fox.FeedTree", dijit.Tree, {
ctr = dojo.doc.createElement('span');
ctr.className = 'counterNode';
- ctr.innerHTML = '0';
+ ctr.innerHTML = args.item.unread;
+
+ args.item.unread > 0 ? ctr.addClassName("unread") : ctr.removeClassName("unread");
+
dojo.place(ctr, tnode.labelNode, 'after');
tnode.counterNode = ctr;
//tnode.labelNode.innerHTML = args.label;
return tnode;
},
+ postCreate: function() {
+ this.connect(this.model, "onChange", "updateCounter");
+
+ this.inherited(arguments);
+ },
+ updateCounter: function (item) {
+ var tree = this;
+
+ //console.log("updateCounter: " + item.id[0] + " " + item.unread + " " + tree);
+
+ var node = tree._itemNodesMap[item.id];
+
+ if (node) {
+ node = node[0];
+
+ if (node.counterNode) {
+ node.counterNode.innerHTML = item.unread;
+ item.unread > 0 ? node.counterNode.addClassName("unread") : node.counterNode.removeClassName("unread");
+ }
+ }
+
+ },
getTooltip: function (item) {
if (item.updated)
return item.updated;
diff --git a/tt-rss.css b/tt-rss.css
index 09a3505af..00db7d0e4 100644
--- a/tt-rss.css
+++ b/tt-rss.css
@@ -1032,3 +1032,22 @@ div.hl.active a.title {
height : 100%;
overflow-x : hidden;
}
+
+#feedTree span.counterNode {
+ display : none;
+}
+
+#feedTree span.counterNode.unread {
+ font-weight : bold;
+ display : inline-block;
+ font-size : 9px;
+ text-align : center;
+ border : 1px solid #88b0f0;
+ color : white;
+ background : #88b0f0;
+ border-radius : 4px;
+ padding : 0px 4px 0px 4px;
+ vertical-align : middle;
+}
+
+