$subop = $_GET["subop"];
if ($subop == "edit") {
- print "<p>[Edit feed placeholder]</p>";
+
+ $feed_id = $_GET["id"];
+
+ $result = pg_query("SELECT title,feed_url
+ FROM ttrss_feeds WHERE id = '$feed_id'");
+
+ $fedit_link = pg_fetch_result($result, 0, "feed_url");
+ $fedit_title = pg_fetch_result($result, 0, "title");
+
+ print "<table class=\"prefAddFeed\">
+ <td>Title:</td><td><input id=\"fedit_title\" value=\"$fedit_title\"></td></tr>
+ <td>Link:</td><td><input id=\"fedit_link\" value=\"$fedit_link\"></td></tr>
+ <tr><td colspan=\"2\" align=\"right\">
+ <a class=\"button\" href=\"javascript:feedEditCancel()\">Cancel</a>
+ <a class=\"button\" href=\"javascript:feedEditSave($feed_id)\">Save</a>
+ </td></tr>
+ </table>";
+
+ } else {
+
+ print "<table class=\"prefAddFeed\">
+ <td><input id=\"fadd_link\"></td>
+ <td colspan=\"4\" align=\"right\">
+ <a class=\"button\" href=\"javascript:addFeed()\">Add feed</a></td></tr>
+ </table>";
+
+ }
+
+ if ($subop == "editSave") {
+ $feed_title = pg_escape_string($_GET["t"]);
+ $feed_link = pg_escape_string($_GET["l"]);
+ $feed_id = $_GET["id"];
+
+ $result = pg_query("UPDATE ttrss_feeds SET
+ title = '$feed_title', feed_url = '$feed_link' WHERE id = '$feed_id'");
+
}
if ($subop == "remove") {
function updateFeedList() {
+ if (xmlhttp.readyState != 4 && xmlhttp.readyState != 0) {
+ printLockingError();
+ return
+ }
+
document.getElementById("feeds").innerHTML = "Loading feeds, please wait...";
xmlhttp.open("GET", "backend.php?op=pref-feeds", true);
function addFeed() {
+ if (xmlhttp.readyState != 4 && xmlhttp.readyState != 0) {
+ printLockingError();
+ return
+ }
+
var link = document.getElementById("fadd_link");
if (link.value.length == 0) {
function editFeed(feed) {
- notify("Editing feed...");
+// notify("Editing feed...");
+
+ if (xmlhttp.readyState != 4 && xmlhttp.readyState != 0) {
+ printLockingError();
+ return
+ }
xmlhttp.open("GET", "backend.php?op=pref-feeds&subop=edit&id=" +
param_escape(feed), true);
function readSelectedFeeds() {
+ if (xmlhttp.readyState != 4 && xmlhttp.readyState != 0) {
+ printLockingError();
+ return
+ }
+
var sel_rows = getSelectedFeeds();
if (sel_rows.length > 0) {
function unreadSelectedFeeds() {
+ if (xmlhttp.readyState != 4 && xmlhttp.readyState != 0) {
+ printLockingError();
+ return
+ }
+
var sel_rows = getSelectedFeeds();
if (sel_rows.length > 0) {
function removeSelectedFeeds() {
+ if (xmlhttp.readyState != 4 && xmlhttp.readyState != 0) {
+ printLockingError();
+ return
+ }
+
var sel_rows = getSelectedFeeds();
if (sel_rows.length > 0) {
}
+function feedEditCancel() {
+
+ if (xmlhttp.readyState != 4 && xmlhttp.readyState != 0) {
+ printLockingError();
+ return
+ }
+
+ notify("Operation cancelled.");
+
+ xmlhttp.open("GET", "backend.php?op=pref-feeds", true);
+ xmlhttp.onreadystatechange=feedlist_callback;
+ xmlhttp.send(null);
+
+}
+
+function feedEditSave(feed) {
+
+ if (xmlhttp.readyState != 4 && xmlhttp.readyState != 0) {
+ printLockingError();
+ return
+ }
+
+ notify("Saving feed.");
+
+ var link = document.getElementById("fedit_link").value;
+ var title = document.getElementById("fedit_title").value;
+
+ if (link.length == 0) {
+ notify("Feed link cannot be blank.");
+ return;
+ }
+
+ if (title.length == 0) {
+ notify("Feed title cannot be blank.");
+ return;
+ }
+
+ xmlhttp.open("GET", "backend.php?op=pref-feeds&subop=editSave&id=" +
+ feed + "&l=" + param_escape(link) + "&t=" + param_escape(title) ,true);
+ xmlhttp.onreadystatechange=feedlist_callback;
+ xmlhttp.send(null);
+
+}
+
+function editSelectedFeed() {
+ var rows = getSelectedFeeds();
+
+ if (rows.length == 0) {
+ notify("No feeds are selected.");
+ return;
+ }
+
+ if (rows.length > 1) {
+ notify("Please select one feed.");
+ return;
+ }
+
+ editFeed(rows[0]);
+
+}
+
+var seq = "";
+
+function hotkey_handler(e) {
+ var keycode;
+
+ if (window.event) {
+ keycode = window.event.keyCode;
+ } else if (e) {
+ keycode = e.which;
+ }
+
+ if (keycode == 13 || keycode == 27) {
+ seq = "";
+ } else {
+ seq = seq + "" + keycode;
+ }
+
+ var piggie = document.getElementById("piggie");
+
+ if (seq.match("807371717369")) {
+ piggie.style.display = "block";
+ seq = "";
+ notify("I loveded it!!!");
+ } else {
+ piggie.style.display = "none";
+ notify("");
+ }
+
+}
+
function init() {
updateFeedList();
-
+ document.onkeydown = hotkey_handler;
notify("");
}