var xhr = new XMLHttpRequest(); var db; var syntenic_data = {} function testWorker(){ var worker = new Worker("worker.js"); worker.postMessage({ url: 'insr.sqlite', sql: "SELECT DISTINCT gene_family_id FROM gene_family" }); worker.onmessage = function(event) { worker.terminate(); }; worker.onerror = function(e) {console.log("Worker error: ", e)}; } function setDB(db_name, callback){ xhr.open('GET', db_name, true); xhr.responseType = 'arraybuffer'; xhr.onload = function(e) { var uInt8Array = new Uint8Array(this.response); db = new SQL.Database(uInt8Array); var gene_family_id = db.exec("SELECT DISTINCT gene_family_id FROM gene_family"); var html = "" document.getElementById("families").innerHTML = html return callback() }; xhr.send(); } function get_Genes_for_family(){ syntenic_data = {}; var e = document.getElementById("gene_family"); var gene_family_id = e.options[e.selectedIndex].value; var gene_tree = db.exec("SELECT gene_family_member.protein_id, protein_alignment, transcript.gene_id, gene_json, transcript.protein_sequence FROM gene_family_member JOIN transcript ON gene_family_member.protein_id=transcript.protein_id JOIN gene ON transcript.gene_id=gene.gene_id WHERE gene_family_id= "+gene_family_id); var genes= {} var cigars= {} var sequence= {} for(var i=0; i