]> git.wh0rd.org - tt-rss.git/blobdiff - js/tt-rss.js
handle_rpc_json: fix netalert button never appearing on JSON parse error
[tt-rss.git] / js / tt-rss.js
index e5e7a848f51d0da21afbcf82558d312c00b3c527..4ed89d4b2e848229f8c36702ee4662bb5f945b2d 100644 (file)
@@ -55,6 +55,8 @@ function updateFeedList() {
 //                     __("Loading, please wait...") + "</div>";
 
                Element.show("feedlistLoading");
+               
+               resetCounterCache();
 
                if (dijit.byId("feedTree")) {
                        dijit.byId("feedTree").destroyRecursive();
@@ -84,6 +86,7 @@ function updateFeedList() {
                },
                openOnClick: false,
                showRoot: false,
+               persist: true,
                id: "feedTree",
                }, "feedTree");
 
@@ -158,7 +161,7 @@ function viewCurrentFeed(method) {
 function timeout() {
        if (getInitParam("bw_limit") != "1") {
                request_counters();
-               setTimeout("timeout()", 60*1000);
+               setTimeout(timeout, 60*1000);
        }
 }
 
@@ -218,10 +221,11 @@ function init() {
        try {
                //dojo.registerModulePath("fox", "../../js/");
 
-               require(['dojo/_base/kernel',
-                               'dojo/ready',
-                               'dojo/parser',
-                               'dojo/_base/loader',
+               require(["dojo/_base/kernel",
+                               "dojo/ready",
+                               "dojo/parser",
+                               "dojo/_base/loader",
+                               "dojo/_base/html",
                                "dijit/ProgressBar",
                                "dijit/ColorPalette",
                                "dijit/Dialog",
@@ -248,13 +252,12 @@ function init() {
                                "dijit/Tree",
                                "dijit/tree/dndSource",
                                "dijit/tree/ForestStoreModel",
-                               "dojo/data/ItemFileWriteStore" ], function (dojo, ready, parser) {
+                               "dojo/data/ItemFileWriteStore",
+                               "fox/FeedTree" ], function (dojo, ready, parser) {
 
                                ready(function() {
 
-                                       dojo.require("fox.FeedTree");
-
-                                       dojo.parser.parse();
+                                       parser.parse();
 
                                        if (!genericSanityCheck())
                                                return false;
@@ -653,7 +656,7 @@ function init_second_stage() {
 
                if (getInitParam("simple_update")) {
                        console.log("scheduling simple feed updater...");
-                       window.setTimeout("update_random_feed()", 30*1000);
+                       window.setTimeout(update_random_feed, 30*1000);
                }
 
        } catch (e) {
@@ -822,14 +825,11 @@ function parse_runtime_info(data) {
 
 function collapse_feedlist() {
        try {
+               Element.toggle("feeds-holder");
 
-               if (!Element.visible('feeds-holder')) {
-                       Element.show('feeds-holder');
-                       $("collapse_feeds_btn").innerHTML = "&lt;&lt;";
-               } else {
-                       Element.hide('feeds-holder');
-                       $("collapse_feeds_btn").innerHTML = "&gt;&gt;";
-               }
+               var splitter = $("feeds-holder_splitter");
+
+               Element.visible("feeds-holder") ? splitter.show() : splitter.hide();
 
                dijit.byId("main").resize();
 
@@ -994,14 +994,14 @@ function reverseHeadlineOrder() {
 }
 
 function handle_rpc_json(transport, scheduled_call) {
-       try {
-               var reply = JSON.parse(transport.responseText);
 
-               var netalert_dijit = dijit.byId("net-alert");
-               var netalert = false;
+       var netalert_dijit = dijit.byId("net-alert");
+       var netalert = false;
+
+       if (netalert_dijit) netalert = netalert_dijit.domNode;
 
-               if (netalert_dijit)
-                       netalert = netalert_dijit.domNode;
+       try {
+               var reply = JSON.parse(transport.responseText);
 
                if (reply) {
 
@@ -1049,18 +1049,18 @@ function handle_rpc_json(transport, scheduled_call) {
                        if (runtime_info)
                                parse_runtime_info(runtime_info);
 
-                       if (netalert) Element.hide(netalert);
+                       if (netalert) netalert.hide();
 
                } else {
                        if (netalert)
-                               Element.show(netalert);
+                               netalert.show();
                        else
                                notify_error("Communication problem with server.");
                }
 
        } catch (e) {
                if (netalert)
-                       Element.show(netalert);
+                       netalert.show();
                else
                        notify_error("Communication problem with server.");
 
@@ -1135,7 +1135,7 @@ function update_random_feed() {
                        parameters: "op=rpc&method=updateRandomFeed",
                        onComplete: function(transport) {
                                handle_rpc_json(transport, true);
-                               window.setTimeout("update_random_feed()", 30*1000);
+                               window.setTimeout(update_random_feed, 30*1000);
                        } });
 
        } catch (e) {