asynchronous feed updating
This commit is contained in:
parent
b82af8c382
commit
525116d484
10
backend.php
10
backend.php
|
@ -17,11 +17,13 @@
|
||||||
|
|
||||||
$subop = $_GET["subop"];
|
$subop = $_GET["subop"];
|
||||||
|
|
||||||
if ($subop == "forceUpdateAll") {
|
if ($subop == "forceUpdateAllFeeds") {
|
||||||
|
print "[rpc] forceUpdateAll";
|
||||||
update_all_feeds($link, true);
|
update_all_feeds($link, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($subop == "updateAll") {
|
if ($subop == "updateAllFeeds") {
|
||||||
|
print "[rpc] updateAll";
|
||||||
update_all_feeds($link, false);
|
update_all_feeds($link, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -49,7 +51,7 @@
|
||||||
pg_query("UPDATE ttrss_entries SET last_read = NOW(),unread = false");
|
pg_query("UPDATE ttrss_entries SET last_read = NOW(),unread = false");
|
||||||
}
|
}
|
||||||
|
|
||||||
update_all_feeds($link, $fetch);
|
// update_all_feeds($link, $fetch);
|
||||||
|
|
||||||
$result = pg_query("SELECT *,
|
$result = pg_query("SELECT *,
|
||||||
(SELECT count(id) FROM ttrss_entries
|
(SELECT count(id) FROM ttrss_entries
|
||||||
|
@ -101,7 +103,7 @@
|
||||||
|
|
||||||
print "<p align=\"center\">All feeds:
|
print "<p align=\"center\">All feeds:
|
||||||
<a class=\"button\"
|
<a class=\"button\"
|
||||||
href=\"javascript:updateFeedList(false,true)\">Update</a>";
|
href=\"javascript:scheduleFeedUpdate()\">Update</a>";
|
||||||
|
|
||||||
print " <a class=\"button\"
|
print " <a class=\"button\"
|
||||||
href=\"javascript:catchupAllFeeds()\">Mark as read</a></p>";
|
href=\"javascript:catchupAllFeeds()\">Mark as read</a></p>";
|
||||||
|
|
40
tt-rss.js
40
tt-rss.js
|
@ -4,8 +4,10 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
var xmlhttp = false;
|
var xmlhttp = false;
|
||||||
|
var xmlhttp_rpc = false;
|
||||||
|
|
||||||
var total_unread = 0;
|
var total_unread = 0;
|
||||||
|
var first_run = true;
|
||||||
|
|
||||||
/*@cc_on @*/
|
/*@cc_on @*/
|
||||||
/*@if (@_jscript_version >= 5)
|
/*@if (@_jscript_version >= 5)
|
||||||
|
@ -24,6 +26,8 @@ try {
|
||||||
|
|
||||||
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
|
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
|
||||||
xmlhttp = new XMLHttpRequest();
|
xmlhttp = new XMLHttpRequest();
|
||||||
|
xmlhttp_rpc = new XMLHttpRequest();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function printLockingError() {
|
function printLockingError() {
|
||||||
|
@ -49,7 +53,12 @@ function feedlist_callback() {
|
||||||
update_title();
|
update_title();
|
||||||
}
|
}
|
||||||
|
|
||||||
notify("");
|
if (first_run) {
|
||||||
|
scheduleFeedUpdate();
|
||||||
|
first_run = false;
|
||||||
|
} else {
|
||||||
|
notify("");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -92,12 +101,33 @@ function view_callback() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function refetch_callback() {
|
||||||
|
if (xmlhttp_rpc.readyState == 4) {
|
||||||
|
// feeds are updated in background
|
||||||
|
updateFeedList(false, false);
|
||||||
|
// notify("All feeds updated");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function updateFeedList(called_from_timer, fetch) {
|
function scheduleFeedUpdate() {
|
||||||
|
|
||||||
if (called_from_timer != true) {
|
notify("Updating feeds in background...");
|
||||||
//document.getElementById("feeds").innerHTML = "Loading feeds, please wait...";
|
|
||||||
notify("Updating feeds...");
|
var query_str = "backend.php?op=rpc&subop=forceUpdateAllFeeds";
|
||||||
|
|
||||||
|
if (xmlhttp_rpc.readyState == 4 || xmlhttp_rpc.readyState == 0) {
|
||||||
|
xmlhttp_rpc.open("GET", query_str, true);
|
||||||
|
xmlhttp_rpc.onreadystatechange=refetch_callback;
|
||||||
|
xmlhttp_rpc.send(null);
|
||||||
|
} else {
|
||||||
|
printLockingError();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function updateFeedList(silent, fetch) {
|
||||||
|
|
||||||
|
if (silent != true) {
|
||||||
|
notify("Updating feed list...");
|
||||||
}
|
}
|
||||||
|
|
||||||
var query_str = "backend.php?op=feeds";
|
var query_str = "backend.php?op=feeds";
|
||||||
|
|
Loading…
Reference in New Issue