summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2007-08-20 06:44:05 +0100
committerAndrew Dolgov <[email protected]>2007-08-20 06:44:05 +0100
commit6f15127798bcf19fe4707b125b7e4f2365e05638 (patch)
tree11fbe45157654a9fa8e6b12cd6e4acd1a443ca84
parentec6b7adab6e387dfa201ef0b481a4e33b49821e4 (diff)
allow to edit labels from main interface
-rw-r--r--functions.js28
-rw-r--r--prefs.js27
-rw-r--r--tt-rss.js49
3 files changed, 72 insertions, 32 deletions
diff --git a/functions.js b/functions.js
index e9c14b63c..9e21e0d4e 100644
--- a/functions.js
+++ b/functions.js
@@ -1921,3 +1921,31 @@ Position.Center = function(element, parent) {
element.style.left = (pw/2) - (w/2) - Position.deltaX + "px";
}
+function labeltest_callback() {
+ var container = document.getElementById('label_test_result');
+ if (xmlhttp.readyState == 4) {
+ container.innerHTML=xmlhttp.responseText;
+ notify("");
+ }
+}
+
+function labelTest() {
+
+ var container = document.getElementById('label_test_result');
+ container.style.display = "block";
+ container.innerHTML = "<p>Loading, please wait...</p>";
+
+ var form = document.forms['label_edit_form'];
+
+ var sql_exp = form.sql_exp.value;
+ var description = form.description.value;
+
+ xmlhttp.open("GET", "backend.php?op=pref-labels&subop=test&expr=" +
+ param_escape(sql_exp) + "&descr=" + param_escape(description), true);
+
+ xmlhttp.onreadystatechange=labeltest_callback;
+ xmlhttp.send(null);
+
+ return false;
+}
+
diff --git a/prefs.js b/prefs.js
index 0debf270c..b1739bc95 100644
--- a/prefs.js
+++ b/prefs.js
@@ -144,14 +144,6 @@ function labellist_callback() {
}
}
-function labeltest_callback() {
- var container = document.getElementById('label_test_result');
- if (xmlhttp.readyState == 4) {
- container.innerHTML=xmlhttp.responseText;
- notify("");
- }
-}
-
function feed_browser_callback() {
var container = document.getElementById('prefContent');
if (xmlhttp.readyState == 4) {
@@ -761,25 +753,6 @@ function feedCatEditSave() {
}
-function labelTest() {
-
- var container = document.getElementById('label_test_result');
- container.style.display = "block";
- container.innerHTML = "<p>Loading, please wait...</p>";
-
- var form = document.forms['label_edit_form'];
-
- var sql_exp = form.sql_exp.value;
- var description = form.description.value;
-
- xmlhttp.open("GET", "backend.php?op=pref-labels&subop=test&expr=" +
- param_escape(sql_exp) + "&descr=" + param_escape(description), true);
-
- xmlhttp.onreadystatechange=labeltest_callback;
- xmlhttp.send(null);
-
- return false;
-}
function displayHelpInfobox(topic_id) {
diff --git a/tt-rss.js b/tt-rss.js
index e7a21a73d..0e47069f7 100644
--- a/tt-rss.js
+++ b/tt-rss.js
@@ -673,16 +673,24 @@ function editFeedDlg(feed) {
return;
}
- if (feed <= 0 || activeFeedIsCat() || tagsAreDisplayed()) {
+ if ((feed <= 0 && feed > -10) || activeFeedIsCat() || tagsAreDisplayed()) {
alert(__("You can't edit this kind of feed."));
return;
}
if (xmlhttp_ready(xmlhttp)) {
- xmlhttp.open("GET", "backend.php?op=pref-feeds&subop=editfeed&id=" +
- param_escape(feed), true);
- xmlhttp.onreadystatechange=infobox_callback;
- xmlhttp.send(null);
+
+ if (feed > 0) {
+ xmlhttp.open("GET", "backend.php?op=pref-feeds&subop=editfeed&id=" +
+ param_escape(feed), true);
+ xmlhttp.onreadystatechange=infobox_callback;
+ xmlhttp.send(null);
+ } else {
+ xmlhttp.open("GET", "backend.php?op=pref-labels&subop=edit&id=" +
+ param_escape(-feed-11), true);
+ xmlhttp.onreadystatechange=infobox_callback;
+ xmlhttp.send(null);
+ }
} else {
printLockingError();
}
@@ -725,4 +733,35 @@ function feedEditSave() {
}
}
+function labelEditCancel() {
+ closeInfoBox();
+ return false;
+}
+
+function labelEditSave() {
+
+ try {
+
+ if (!xmlhttp_ready(xmlhttp)) {
+ printLockingError();
+ return
+ }
+
+ closeInfoBox();
+
+ notify_progress("Saving label...");
+
+ query = Form.serialize("label_edit_form");
+
+ xmlhttp.open("GET", "backend.php?" + query, true);
+ xmlhttp.onreadystatechange=dlg_frefresh_callback;
+ xmlhttp.send(null);
+
+ return false;
+
+ } catch (e) {
+ exception_error("feedEditSave (main)", e);
+ }
+
+}