]> git.wh0rd.org - tt-rss.git/blobdiff - prefs.js
code cleanup; remove unnecessary callbacks; rework subscribtion dialog
[tt-rss.git] / prefs.js
index 20277a462793638ed21ad264e89067fd3445500a..bf2574445cabbb5860dc45687987d6da457191f8 100644 (file)
--- a/prefs.js
+++ b/prefs.js
@@ -12,33 +12,6 @@ var color_picker_active = false;
 var selection_disabled = false;
 var mouse_is_down = false;
 
-function replace_pubkey_callback(transport) {
-       try {   
-               var link = $("pubGenAddress");
-
-               if (transport.responseXML) {
-
-                       var new_link = transport.responseXML.getElementsByTagName("link")[0];
-
-                       if (new_link) {
-                               link.href = new_link.firstChild.nodeValue;
-                               //link.innerHTML = new_link.firstChild.nodeValue;
-
-                               new Effect.Highlight(link);
-
-                               notify_info("Published feed URL changed.");
-                       } else {
-                               notify_error("Could not change feed URL.");
-                       }
-
-               } else {
-                       notify_error("Could not change feed URL.");
-               }
-       } catch (e) {
-               exception_error("replace_pubkey_callback", e);
-       }
-}
-
 function feedlist_callback2(transport) {
 
        try {   
@@ -66,12 +39,6 @@ function feedlist_callback2(transport) {
        }
 }
 
-/* stub for subscription dialog */
-
-function dlg_frefresh_callback(transport) {
-       return feedlist_callback2(transport);
-}
-
 function filterlist_callback2(transport) {
        var container = $('prefContent');
        container.innerHTML=transport.responseText;
@@ -154,34 +121,6 @@ function notify_callback2(transport) {
        notify_info(transport.responseText);     
 }
 
-function prefs_reset_callback2(transport) {
-       try {
-               notify_info(transport.responseText);
-               selectTab();
-       } catch (e) {
-               exception_error("prefs_reset_callback2", e);
-       }
-}
-
-
-function changepass_callback2(transport) {
-       try {
-       
-                       if (transport.responseText.indexOf("ERROR: ") == 0) {
-                               notify_error(transport.responseText.replace("ERROR: ", ""));
-                       } else {
-                               notify_info(transport.responseText);
-                               var warn = $("default_pass_warning");
-                               if (warn) warn.style.display = "none";
-                       }
-       
-                       document.forms['change_pass_form'].reset();
-
-       } catch (e) {
-               exception_error("changepass_callback2", e);
-       }
-}
-
 function init_cat_inline_editor() {
        try {
 
@@ -710,13 +649,6 @@ function removeSelectedFeedCats() {
 
 function feedEditCancel() {
 
-       try {
-               $("subscribe_to_feed_btn").disabled = false;
-               $("top25_feeds_btn").disabled = false;
-       } catch (e) {
-               // this button is not always available, no-op if not found
-       }
-
        closeInfoBox();
 
        selectPrefRows('feed', false); // cleanup feed selection
@@ -760,7 +692,6 @@ function userEditCancel() {
 function filterEditCancel() {
 
        try {
-               $("create_filter_btn").disabled = false;
                selectPrefRows('filter', false); // cleanup feed selection
        } catch (e) { }
 
@@ -810,8 +741,6 @@ function filterEditSave() {
                var query = "?" + Form.serialize("filter_edit_form");
        
                closeInfoBox();
-       
-               $("create_filter_btn").disabled = false;
 
                new Ajax.Request("backend.php", {
                                parameters: query,
@@ -946,8 +875,7 @@ function editSelectedFeed() {
        }
 
        if (rows.length > 1) {
-               alert(__("Please select one feed."));
-               return;
+               return editSelectedFeeds();
        }
 
        notify("");
@@ -1259,34 +1187,6 @@ function init() {
        }
 }
 
-function categorizeSelectedFeeds() {
-
-       var sel_rows = getSelectedFeeds();
-
-       var cat_sel = $("sfeed_set_fcat");
-       var cat_id = cat_sel[cat_sel.selectedIndex].value;
-
-       if (sel_rows.length > 0) {
-
-               notify_progress("Changing category of selected feeds...");
-
-               var query = "?op=pref-feeds&subop=categorize&ids="+
-                       param_escape(sel_rows.toString()) + "&cat_id=" + param_escape(cat_id);
-
-               new Ajax.Request("backend.php", {
-                       parameters: query,
-                       onComplete: function(transport) { 
-                               feedlist_callback2(transport); 
-                       } });
-
-       } else {
-
-               alert(__("No feeds are selected."));
-
-       }
-
-}
-
 function validatePrefsReset() {
        try {
                var ok = confirm(__("Reset to defaults?"));
@@ -1300,7 +1200,8 @@ function validatePrefsReset() {
                        new Ajax.Request("backend.php", {
                                parameters: query,
                                onComplete: function(transport) { 
-                                       prefs_reset_callback2(transport);
+                                       notify_info(transport.responseText);
+                                       selectTab();
                                } });
 
                }
@@ -1318,11 +1219,15 @@ function feedBrowserSubscribe() {
 
                var selected = getSelectedFeedsFromBrowser();
 
+               var mode = document.forms['feed_browser'].mode;
+
+               mode = mode[mode.selectedIndex].value;
+
                if (selected.length > 0) {
                        closeInfoBox();
 
                        var query = "?op=pref-feeds&subop=massSubscribe&ids="+
-                               param_escape(selected.toString());
+                               param_escape(selected.toString()) + "&mode=" + param_escape(mode);
 
                        new Ajax.Request("backend.php", {
                                parameters: query,
@@ -1626,14 +1531,6 @@ function pref_hotkey_handler(e) {
 
 function editFeedCats() {
        try {
-               $("subscribe_to_feed_btn").disabled = true;
-       
-               try {
-                       $("top25_feeds_btn").disabled = true;
-               } catch (e) {
-                       // this button is not always available, no-op if not found
-               }
-       
                var query = "?op=pref-feeds&subop=editCats";
 
                new Ajax.Request("backend.php", {
@@ -1686,12 +1583,20 @@ function changeUserPassword() {
 
                var query = Form.serialize("change_pass_form");
        
-               notify_progress("Trying to change password...");
+               notify_progress("Changing password...");
 
                new Ajax.Request("backend.php", {
                        parameters: query,
                        onComplete: function(transport) { 
-                               changepass_callback2(transport); 
+                               if (transport.responseText.indexOf("ERROR: ") == 0) {
+                                       notify_error(transport.responseText.replace("ERROR: ", ""));
+                               } else {
+                                       notify_info(transport.responseText);
+                                       var warn = $("default_pass_warning");
+                                       if (warn) warn.style.display = "none";
+                               }
+               
+                               document.forms['change_pass_form'].reset();
                        } });
 
 
@@ -1731,22 +1636,38 @@ function feedlistToggleSLAT() {
 
 function pubRegenKey() {
 
-       var ok = confirm(__("Replace current publishing address with a new one?"));
-
-       if (ok) {
-
-               notify_progress("Trying to change address...");
-
-               var query = "?op=rpc&subop=regenPubKey";
+       try {
+               var ok = confirm(__("Replace current publishing address with a new one?"));
+       
+               if (ok) {
+       
+                       notify_progress("Trying to change address...", true);
+       
+                       var query = "?op=rpc&subop=regenPubKey";
+       
+                       new Ajax.Request("backend.php", {
+                               parameters: query,
+                               onComplete: function(transport) {
+                                               var new_link = transport.responseXML.getElementsByTagName("link")[0];
+       
+                                               var e = $('pub_feed_url');
+       
+                                               if (new_link) {
+                                                       e.href = new_link.firstChild.nodeValue;
+                                                       e.innerHTML = new_link.firstChild.nodeValue;
+       
+                                                       new Effect.Highlight(e);
 
-               new Ajax.Request("backend.php", {
-                       parameters: query,
-                       onComplete: function(transport) {
-                                       replace_pubkey_callback(transport);
+                                                       notify('');
+       
+                                               } else {
+                                                       notify_error("Could not change feed URL.");
+                                               }
                                } });
-
+               }
+       } catch (e) {
+               exception_error("pubRegenKey", e);
        }
-
        return false;
 }
 
@@ -2180,3 +2101,6 @@ function mouse_up_handler(e) {
        }
 }
 
+function inPreferences() {
+       return true;
+}