+ if (e.readyState == 4) { /* 4: request finished and response is ready */
+ if(e.status != 200) {
+ alert("Error loading page\n\n"+e.responseText);
+ return;
+ }
+ // Get the RDF service
+ var RDF =
+ Components
+ .classes['@mozilla.org/rdf/rdf-service;1']
+ .getService(Components.interfaces.nsIRDFService);
+ // Get the datasources and refresh them
+ RDF.GetDataSource('raw.rdf').Refresh('non-blocking');
+ RDF.GetDataSource('tag.rdf').Refresh('non-blocking');
+ }
+}
+
+function push_data(url) {
+ /* https://developer.mozilla.org/en/using_xmlhttprequest */
+ xmlDoc = new XMLHttpRequest();
+ xmlDoc.open('GET', url, true);
+ xmlDoc.onreadystatechange = function() { reload_rdf(xmlDoc); };
+ xmlDoc.send(null);
+}
+
+function new_tag(tag) {
+ push_data('/new_tag?tag='+escape(tag.join('/')));