diff --git a/chrome/chromeFiles/content/scholar/scholar.js b/chrome/chromeFiles/content/scholar/scholar.js index d21300a1c..5b52b138a 100644 --- a/chrome/chromeFiles/content/scholar/scholar.js +++ b/chrome/chromeFiles/content/scholar/scholar.js @@ -1,7 +1,9 @@ const SCHOLAR_CONFIG = { - DB_FILE : 'scholar.sdb', - DB_VERSION : 1, - DEBUG_LOGGING : true + GUID: 'scholar@chnm', + DB_FILE: 'scholar.sqlite', + DB_VERSION: 2, + DB_REBUILD: false, // erase DB and recreate from schema + DEBUG_LOGGING: true }; /* @@ -12,9 +14,10 @@ var Scholar = { * Initialize the extension */ init: function() { - scholarDB.updateSchema(); + Scholar_DB.updateSchema(); }, + /* * Debug logging function * @@ -47,7 +50,160 @@ var Scholar = { dump('scholar(' + level + '): ' + message); } return true; - } + }, + + + /** + * PHP var_dump equivalent for JS + * + * Adapted from http://binnyva.blogspot.com/2005/10/dump-function-javascript-equivalent-of.html + */ + varDump: function(arr,level) { + var dumped_text = ""; + if (!level){ + level = 0; + } + + // The padding given at the beginning of the line. + var level_padding = ""; + for (var j=0;j function(...){...} \n"; + } + else { + dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n"; + } + } + } + } + else { // Stings/Chars/Numbers etc. + dumped_text = "===>"+arr+"<===("+typeof(arr)+")"; + } + return dumped_text; + }, + + + /* + * Flattens mixed arrays/values in a passed _arguments_ object and returns + * an array of values -- allows for functions to accept both arrays of + * values and/or an arbitrary number of individual values + */ + flattenArguments: function(args){ + var returns = new Array(); + + for (var i=0; i