summaryrefslogtreecommitdiff
path: root/prefs.js
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2007-08-20 16:04:37 +0100
committerAndrew Dolgov <[email protected]>2007-08-20 16:04:37 +0100
commit6016d5408e0586b169007e3789fa315376758ece (patch)
tree7a6dc1573c4a6293373abae4339d52454cb68400 /prefs.js
parent85bd574bb0910f5c68b159f8bc28b885439394bd (diff)
add (disabled) dialog to recategorize feeds via draganddrop
Diffstat (limited to 'prefs.js')
-rw-r--r--prefs.js76
1 files changed, 76 insertions, 0 deletions
diff --git a/prefs.js b/prefs.js
index 80a00db1b..c52ad4466 100644
--- a/prefs.js
+++ b/prefs.js
@@ -241,6 +241,63 @@ function infobox_feed_cat_callback() {
}
}
+function recat_onChange(elem) {
+ debug(elem);
+
+}
+
+function recat_onUpdate(ctr) {
+ debug(ctr);
+
+}
+
+function infobox_recategorize_callback() {
+ if (xmlhttp.readyState == 4) {
+ try {
+
+ infobox_callback();
+
+ var ctr = document.getElementById("prefFeedCatList2");
+
+ if (ctr) {
+ var elems = ctr.getElementsByTagName("SPAN");
+
+ for (var i = 0; i < elems.length; i++) {
+ if (elems[i].id && elems[i].id.match("FCATT-")) {
+ var cat_id = elems[i].id.replace("FCATT-", "");
+
+ new Ajax.InPlaceEditor(elems[i],
+ 'backend.php?op=pref-feeds&subop=editCats&action=save&cid=' + cat_id);
+ }
+ }
+
+ elems = ctr.getElementsByTagName("UL");
+
+ ctrs = new Array();
+ ctr_ids = new Array();
+
+ for (var i = 0; i < elems.length; i++) {
+ if (elems[i].id.match("FCNTR-")) {
+ ctrs.push(elems[i]);
+ ctr_ids.push(elems[i].id);
+ }
+ }
+
+ Position.includeScrollOffsets = true;
+
+ for (var i = 0; i < ctrs.length; i++) {
+ Sortable.create(elems[i], { scroll: ctr, ghosting: false,
+ containment: ctrs, dropOnEmpty: true, onChange: recat_onChange, onUpdate: recat_onUpdate });
+ }
+
+ }
+
+ } catch (e) {
+ exception_error("infobox_recategorize_callback", e);
+ }
+ }
+}
+
function updateFeedList(sort_key) {
if (!xmlhttp_ready(xmlhttp)) {
@@ -1673,6 +1730,25 @@ function editFeedCats() {
xmlhttp.send(null);
}
+function recategorizeFeeds() {
+ if (!xmlhttp_ready(xmlhttp)) {
+ printLockingError();
+ return
+ }
+
+ document.getElementById("subscribe_to_feed_btn").disabled = true;
+
+ try {
+ document.getElementById("top25_feeds_btn").disabled = true;
+ } catch (e) {
+ // this button is not always available, no-op if not found
+ }
+
+ xmlhttp.open("GET", "backend.php?op=pref-feeds&subop=categorizeDlg", true);
+ xmlhttp.onreadystatechange=infobox_recategorize_callback;
+ xmlhttp.send(null);
+}
+
function showFeedsWithErrors() {
displayDlg('feedUpdateErrors');
}