From: Andrew Dolgov Date: Wed, 11 Feb 2009 10:35:24 +0000 (+0300) Subject: offline: add progress indicator; tweak download intervals and amount of articles X-Git-Tag: 1.3.1~42 X-Git-Url: https://git.wh0rd.org/?a=commitdiff_plain;h=048701937d52423fc4218652597d321153acd72c;p=tt-rss.git offline: add progress indicator; tweak download intervals and amount of articles --- diff --git a/images/offline-sync.gif b/images/offline-sync.gif new file mode 100755 index 00000000..71932f96 Binary files /dev/null and b/images/offline-sync.gif differ diff --git a/modules/backend-rpc.php b/modules/backend-rpc.php index 6bae380a..3a63c609 100644 --- a/modules/backend-rpc.php +++ b/modules/backend-rpc.php @@ -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 ""; @@ -653,7 +653,7 @@ if ($stage > 0) { print ""; - $limit = 50; + $limit = 200; $skip = $limit*($stage-1); print ""; @@ -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") { diff --git a/offline.js b/offline.js index cced4094..4b211456 100644 --- a/offline.js +++ b/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("update_offline_data: done " + stage + " HSD: " + has_sync_data + ""); } 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) {