Tests
Tag amount Usage Statistics
var xy= [];
var taggingService = Components.classes["@mozilla.org/browser/tagging-service;1"].getService(Components.interfaces.nsITaggingService);
var historyService = Components.classes["@mozilla.org/browser/nav-history-service;1"].getService(Components.interfaces.nsINavHistoryService);
var ioService = Components.classes["@mozilla.org/network/io-service;1"].getService(Components.interfaces.nsIIOService);
var options = historyService.getNewQueryOptions();
options.queryType=1;
var query = historyService.getNewQuery();
var result = historyService.executeQuery(query, options);
var rootNode = result.root;
rootNode.containerOpen = true;
for (var i = 0; i < rootNode.childCount; i ++) {
var node = rootNode.getChild(i);
var aURI = ioService.newURI(node.uri, null, null);
var tagCount = { value : 0 };
taggingService.getTagsForURI(aURI, tagCount);
xy[tagCount.value] = (xy[tagCount.value] != null) ? (xy[tagCount.value] + 1) : 1;
}
xy;
var pC = Components.classes["@mozilla.org/browser/nav-history-service;1"].getService(Components.interfaces.nsPIPlacesDatabase).DBConnection;
var stmt = pC.createStatement("SELECT dateAdded FROM moz_bookmarks WHERE parent=4 and type=2 ORDER BY dateAdded ASC");
var oldFirstOfMonth = 0;
var xy = [];
var i = -1;
while (stmt.step()) {
var dateAdded = stmt.getInt64(0);
var dateAddedDate = new Date(dateAdded / 1000);
var firstOfMonth = new Date(dateAddedDate.getFullYear(), dateAddedDate.getMonth() + 1, dateAddedDate.getDate()).getTime();
var diff = firstOfMonth - oldFirstOfMonth;
if (diff > 0) {
xy[i + 1] = (xy[i] != null) ? xy[i] + 1 : 1;
i++;
oldFirstOfMonth = firstOfMonth;
} else {
xy[i] = (xy[i] != null) ? (xy[i] + 1) : 1;
}
}
xy;