add quick action to edit current feed

This commit is contained in:
Andrew Dolgov 2006-11-22 11:11:41 +01:00
parent bbb416e58b
commit 7086277caf
3 changed files with 63 additions and 0 deletions

View File

@ -176,6 +176,11 @@ function feedlist_init() {
correctPNG();
}
if (getActiveFeedId()) {
debug("some feed is open on feedlist refresh, reloading");
setTimeout("viewCurrentFeed()", 100);
}
} catch (e) {
exception_error("feedlist/init", e);
}

View File

@ -454,6 +454,10 @@ function quickMenuGo(opid) {
return;
}
if (opid == "qmcEditFeed") {
editFeedDlg(getActiveFeedId());
}
if (opid == "qmcRemoveFeed") {
var actid = getActiveFeedId();
@ -596,4 +600,57 @@ function userSwitch() {
window.location = "tt-rss.php?swu=" + user;
}
function editFeedDlg(feed) {
if (!feed) {
alert("Please select some feed first.");
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);
} else {
printLockingError();
}
}
/* this functions duplicate those of prefs.js feed editor, with
some differences because there is no feedlist */
function feedEditCancel() {
closeInfoBox();
return false;
}
function feedEditSave() {
try {
if (!xmlhttp_ready(xmlhttp)) {
printLockingError();
return
}
// FIXME: add parameter validation
var query = Form.serialize("edit_feed_form");
notify("Saving feed...");
xmlhttp.open("POST", "backend.php", true);
xmlhttp.onreadystatechange=dlg_frefresh_callback;
xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xmlhttp.send(query);
closeInfoBox();
return false;
} catch (e) {
exception_error("feedEditSave (main)", e);
}
}

View File

@ -134,6 +134,7 @@ window.onload = init;
<option disabled>--------</option>
<option style="color : #5050aa" disabled>Feed actions:</option>
<option value="qmcAddFeed">&nbsp;&nbsp;Subscribe to feed</option>
<option value="qmcEditFeed">&nbsp;&nbsp;Edit this feed</option>
<option value="qmcRemoveFeed">&nbsp;&nbsp;Unsubscribe</option>
<!-- <option>Edit this feed</option> -->
<option disabled>--------</option>