3 @author: Sudheer K. <scifi1947 at gmail.com>
\r
4 @license: GNU General Public License
\r
7 function getDatabase() {
\r
8 logMessage("Opening MarketsToday database..");
\r
9 return openDatabaseSync("MarketsToday", "1.0", "StorageDatabase", 100);
\r
12 function logMessage(strMessage){
\r
14 logUtility.logMessage(strMessage);
\r
17 console.log(strMessage);
\r
21 // Initialize tables
\r
22 function initialize() {
\r
23 var db = getDatabase();
\r
26 // Create the settings table if it doesn't already exist
\r
27 // If the table exists, this is skipped
\r
28 tx.executeSql('CREATE TABLE IF NOT EXISTS settings(setting TEXT UNIQUE, value TEXT)');
\r
29 tx.executeSql('CREATE TABLE IF NOT EXISTS tickers(symbol TEXT UNIQUE)');
\r
32 logMessage("Error ["+error.code +"] - " + error.DOMString+" occurred.");
\r
36 function getSetting(setting) {
\r
37 var db = getDatabase();
\r
41 var rs = tx.executeSql('SELECT value FROM settings WHERE setting=?;', [setting]);
\r
42 if (rs.rows.length > 0) {
\r
43 res = rs.rows.item(0).value;
\r
44 logMessage(setting+" is "+res);
\r
50 logMessage("Error ["+error.code +"] - " + error.DOMString+" occurred.");
\r
57 function setSetting(setting, value) {
\r
58 var db = getDatabase();
\r
62 var rs = tx.executeSql('INSERT OR REPLACE INTO settings VALUES (?,?);', [setting,value]);
\r
63 if (rs.rowsAffected > 0) {
\r
65 logMessage("Updated "+setting+" to "+value);
\r
71 logMessage("Error ["+error.code +"] - " + error.DOMString+" occurred.");
\r
77 function addSymbol(symbol){
\r
78 logMessage('SQL> INSERT OR REPLACE INTO tickers VALUES ('+[symbol]+')');
\r
79 var db = getDatabase();
\r
81 logMessage("Opened MarketsToday database..");
\r
83 db.transaction(function(tx) {
\r
84 var rs = tx.executeSql('INSERT OR REPLACE INTO tickers VALUES (?);', [symbol]);
\r
85 logMessage("Inserted/replaced "+rs.rowsAffected+" rows");
\r
86 if (rs.rowsAffected > 0) {
\r
93 logMessage("Error ["+error.code +"] - " + error.DOMString+" occurred.");
\r
99 function removeSymbol(symbol){
\r
100 logMessage('SQL> DELETE FROM tickers WHERE symbol = '+[symbol]);
\r
101 var db = getDatabase();
\r
103 db.transaction(function(tx) {
\r
104 var rs = tx.executeSql('DELETE FROM tickers WHERE symbol = ?;', [symbol]);
\r
105 logMessage("Deleted "+rs.rowsAffected+" rows");
\r
106 if (rs.rowsAffected > 0) {
\r
113 logMessage("Error ["+error.code +"] - " + error.DOMString+" occurred.");
\r
119 function getAllSymbols(){
\r
120 var db = getDatabase();
\r
121 var symbolsArray = new Array();
\r
122 db.transaction(function(tx) {
\r
123 var rs = tx.executeSql('SELECT symbol FROM tickers');
\r
124 logMessage("Fetched "+rs.rows.length+" rows");
\r
126 for (i = 0; i < rs.rows.length; i++){
\r
127 symbolsArray[i] = rs.rows.item(i).symbol;
\r
131 logMessage("Error ["+error.code +"] - " + error.DOMString+" occurred.");
\r
134 return symbolsArray;
\r