diff --git a/classes/pref/feeds.php b/classes/pref/feeds.php
index d8495a59c..03e8b1b81 100755
--- a/classes/pref/feeds.php
+++ b/classes/pref/feeds.php
@@ -1485,56 +1485,14 @@ class Pref_Feeds extends Handler_Protected {
ORDER BY last_article");
$sth->execute([$_SESSION['uid']]);
- print "
";
- print "
".
- "
" . __('Select')."";
- print "
";
- print "
".__('All')."
";
- print "
".__('None')."
";
- print "
";
- print "
"; #toolbar
+ $rv = [];
- print "";
-
- print "";
-
+ print json_encode($rv);
}
function feedsWithErrors() {
diff --git a/js/PrefFeedTree.js b/js/PrefFeedTree.js
index 7684c7f9d..3e3584a9a 100644
--- a/js/PrefFeedTree.js
+++ b/js/PrefFeedTree.js
@@ -1,5 +1,5 @@
/* eslint-disable prefer-rest-params */
-/* global __, lib, dijit, define, dojo, CommonDialogs, Notify, Tables, xhrPost, fox, App */
+/* global __, lib, dijit, define, dojo, CommonDialogs, Notify, Tables, xhrPost, xhrJson, fox, App */
define(["dojo/_base/declare", "dojo/dom-construct", "lib/CheckBoxTree", "dojo/_base/array", "dojo/cookie"],
function (declare, domConstruct, checkBoxTree, array, cookie) {
@@ -409,50 +409,87 @@ define(["dojo/_base/declare", "dojo/dom-construct", "lib/CheckBoxTree", "dojo/_b
dialog.show();
},
showInactiveFeeds: function() {
- const dialog = new fox.SingleUseDialog({
- id: "inactiveFeedsDlg",
- title: __("Feeds without recent updates"),
- getSelectedFeeds: function () {
- return Tables.getSelected("inactive-feeds-list");
- },
- removeSelected: function () {
- const sel_rows = this.getSelectedFeeds();
+ xhrJson("backend.php", {op: 'pref-feeds', method: 'inactivefeeds'}, function (reply) {
- if (sel_rows.length > 0) {
- if (confirm(__("Remove selected feeds?"))) {
- Notify.progress("Removing selected feeds...", true);
+ const dialog = new fox.SingleUseDialog({
+ id: "inactiveFeedsDlg",
+ title: __("Feeds without recent updates"),
+ getSelectedFeeds: function () {
+ return Tables.getSelected("inactive-feeds-list");
+ },
+ removeSelected: function () {
+ const sel_rows = this.getSelectedFeeds();
- const query = {
- op: "pref-feeds", method: "remove",
- ids: sel_rows.toString()
- };
+ if (sel_rows.length > 0) {
+ if (confirm(__("Remove selected feeds?"))) {
+ Notify.progress("Removing selected feeds...", true);
- xhrPost("backend.php", query, () => {
- Notify.close();
+ const query = {
+ op: "pref-feeds", method: "remove",
+ ids: sel_rows.toString()
+ };
- const tree = dijit.byId("feedTree");
- if (tree) tree.reload();
+ xhrPost("backend.php", query, () => {
+ Notify.close();
- dialog.hide();
- });
+ const tree = dijit.byId("feedTree");
+ if (tree) tree.reload();
+
+ dialog.hide();
+ });
+ }
+
+ } else {
+ alert(__("No feeds selected."));
}
+ },
+ content: `
+
+
+
${__('Select')}
+
+
${__('All')}
+
${__('None')}
+
+
+
+
+
+
+
+ `
+ });
+
+ dialog.show();
- } else {
- alert(__("No feeds selected."));
- }
- },
- content: __("Loading, please wait...")
});
- const tmph = dojo.connect(dialog, 'onShow', function () {
- dojo.disconnect(tmph);
-
- xhrPost("backend.php", {op: "pref-feeds", method: "inactivefeeds"}, (transport) => {
- dialog.attr('content', transport.responseText);
- })
- });
-
- dialog.show();
}
});
});