From 6f15127798bcf19fe4707b125b7e4f2365e05638 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 20 Aug 2007 06:44:05 +0100 Subject: [PATCH] allow to edit labels from main interface --- functions.js | 28 ++++++++++++++++++++++++++++ prefs.js | 27 --------------------------- tt-rss.js | 49 ++++++++++++++++++++++++++++++++++++++++++++----- 3 files changed, 72 insertions(+), 32 deletions(-) diff --git a/functions.js b/functions.js index e9c14b63..9e21e0d4 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 = "

Loading, please wait...

"; + + 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 0debf270..b1739bc9 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 = "

Loading, please wait...

"; - - 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 e7a21a73..0e47069f 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); + } + +} -- 2.39.5