From 25d993538216482ac4e043c5f2857e2b0748b1f6 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 4 Feb 2009 13:36:06 +0300 Subject: move more stuff to offline.js --- offline.js | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) (limited to 'offline.js') diff --git a/offline.js b/offline.js index a46702144..04262bfba 100644 --- a/offline.js +++ b/offline.js @@ -1,3 +1,8 @@ +var offline_mode = false; +var store = false; +var localServer = false; +var db = false; + function view_offline(id, feed_id) { try { @@ -547,4 +552,48 @@ function get_local_feed_unread(id) { } } +function init_gears() { + try { + + if (window.google && google.gears) { + localServer = google.gears.factory.create("beta.localserver"); + store = localServer.createManagedStore("tt-rss"); + db = google.gears.factory.create('beta.database'); + db.open('tt-rss'); + + db.execute("CREATE TABLE IF NOT EXISTS version (schema_version text)"); + + var rs = db.execute("SELECT schema_version FROM version"); + + var version = ""; + + if (rs.isValidRow()) { + version = rs.field(0); + } + + if (version != SCHEMA_VERSION) { + db.execute("DROP TABLE cache"); + db.execute("DROP TABLE feeds"); + db.execute("DROP TABLE articles"); + db.execute("INSERT INTO version (schema_version) VALUES (?)", + [SCHEMA_VERSION]); + } + + db.execute("CREATE TABLE IF NOT EXISTS cache (id text, article text, param text, added text)"); + + db.execute("CREATE TABLE if not exists feeds (id integer, title text, has_icon integer)"); + + db.execute("CREATE TABLE if not exists articles (id integer, feed_id integer, title text, link text, guid text, updated text, content text, tags text, unread text, marked text, added text)"); + + window.setTimeout("update_offline_data(0)", 100); + + } + + cache_expire(); + + } catch (e) { + exception_error("init_gears", e); + } +} + -- cgit v1.2.3