offline: add progress indicator; tweak download intervals and amount of articles
This commit is contained in:
parent
acac8448a4
commit
048701937d
3 changed files with 22 additions and 7 deletions
BIN
images/offline-sync.gif
Executable file
BIN
images/offline-sync.gif
Executable file
Binary file not shown.
After Width: | Height: | Size: 847 B |
|
@ -516,14 +516,14 @@
|
|||
|
||||
if ($subop == "download") {
|
||||
$stage = (int) $_REQUEST["stage"];
|
||||
$cidt = db_escape_string($_REQUEST["cidt"]);
|
||||
$cidb = db_escape_string($_REQUEST["cidb"]);
|
||||
$cidt = (int)db_escape_string($_REQUEST["cidt"]);
|
||||
$cidb = (int)db_escape_string($_REQUEST["cidb"]);
|
||||
$sync = db_escape_string($_REQUEST["sync"]);
|
||||
//$amount = (int) $_REQUEST["amount"];
|
||||
//$unread_only = db_escape_string($_REQUEST["unread_only"]);
|
||||
//if (!$amount) $amount = 50;
|
||||
|
||||
$amount = 100;
|
||||
$amount = 2000;
|
||||
$unread_only = true;
|
||||
|
||||
print "<rpc-reply>";
|
||||
|
@ -653,7 +653,7 @@
|
|||
if ($stage > 0) {
|
||||
print "<articles>";
|
||||
|
||||
$limit = 50;
|
||||
$limit = 200;
|
||||
$skip = $limit*($stage-1);
|
||||
|
||||
print "<limit value=\"$limit\"/>";
|
||||
|
@ -669,7 +669,7 @@
|
|||
}
|
||||
|
||||
if ($cidt && $cidb) {
|
||||
$cid_qpart = "(id > $cidt OR id < $cidb) AND ";
|
||||
$cid_qpart = "(ttrss_entries.id > $cidt OR ttrss_entries.id < $cidb) AND ";
|
||||
}
|
||||
|
||||
if (DB_TYPE == "pgsql") {
|
||||
|
|
19
offline.js
19
offline.js
|
@ -679,7 +679,7 @@ function offline_download_parse(stage, transport) {
|
|||
[id, caption, fg_color, bg_color]);
|
||||
}
|
||||
|
||||
window.setTimeout("update_offline_data("+(stage+1)+")", 10*1000);
|
||||
window.setTimeout("update_offline_data("+(stage+1)+")", 5*1000);
|
||||
} else {
|
||||
|
||||
var articles = transport.responseXML.getElementsByTagName("article");
|
||||
|
@ -723,13 +723,20 @@ function offline_download_parse(stage, transport) {
|
|||
var has_sync_data = has_local_sync_data();
|
||||
|
||||
if (articles_found >= limit || has_sync_data) {
|
||||
window.setTimeout("update_offline_data("+(stage+1)+")", 10*1000);
|
||||
window.setTimeout("update_offline_data("+(stage+1)+")", 5*1000);
|
||||
debug("<b>update_offline_data: done " + stage + " HSD: " +
|
||||
has_sync_data + "</b>");
|
||||
} else {
|
||||
window.setTimeout("update_offline_data(0)", 180*1000);
|
||||
debug("update_offline_data: finished");
|
||||
|
||||
var pic = $("restartOfflinePic");
|
||||
|
||||
if (pic) {
|
||||
pic.src = "images/offline.png";
|
||||
pic.title = __("Restart in offline mode");
|
||||
}
|
||||
|
||||
db.execute("DELETE FROM articles WHERE "+
|
||||
"updated < DATETIME('NOW', 'localtime', '-31 days')");
|
||||
|
||||
|
@ -737,6 +744,7 @@ function offline_download_parse(stage, transport) {
|
|||
}
|
||||
|
||||
update_local_sync_data();
|
||||
|
||||
|
||||
// notify('');
|
||||
|
||||
|
@ -778,6 +786,13 @@ function update_offline_data(stage) {
|
|||
|
||||
debug(query + "/" + to_sync);
|
||||
|
||||
var pic = $("restartOfflinePic");
|
||||
|
||||
if (pic) {
|
||||
pic.src = "images/offline-sync.gif";
|
||||
pic.title = __("Synchronizing offline data...");
|
||||
}
|
||||
|
||||
new Ajax.Request(query, {
|
||||
parameters: to_sync,
|
||||
onComplete: function(transport) {
|
||||
|
|
Loading…
Reference in a new issue