diff --git a/create_report.html b/create_report.html
index 4042b76..ac3c7ca 100644
--- a/create_report.html
+++ b/create_report.html
@@ -226,6 +226,7 @@
write_sample_description(sample);
get_result_main(sample_chooser.value);
get_result_nema(sample_chooser.value);
+ get_result_bact(sample_chooser.value);
}
}
@@ -251,6 +252,7 @@
write_sample_description(sample);
get_result_main(this.value);
get_result_nema(this.value);
+ get_result_bact(this.value);
};
@@ -390,7 +392,7 @@
Math.pow((item.width*Number(microscope_setup.FoV_Width)),2.0)*Math.PI/4.0;
break
case "Actinobacteria":
- total.Actinobacteria += item.length*Number(microscope_setup.FoV_Width);
+ total.Actinobacteria += item.length*Number(microscope_setup.FoV_Width)*Math.PI/4.0;
break
case "Flagelate":
total.Flagelate +=1;
@@ -571,5 +573,189 @@
newRow.insertCell(2).innerHTML = count * multiplication_factor_nema_scan;
}
+// bacteria
+function get_result_bact(sampleID){
+ const transaction = db.transaction('bacterial_scan');
+ const objStore = transaction.objectStore('bacterial_scan')
+ const index = objStore.index("sampleID");
+ const get_request = index.get(sampleID);
+ get_request.onsuccess = () => {
+ bact_scan_result = get_request.result;
+
+ get_prep_protocol_bact(get_request.result);
+ get_microscope_setup_bact(get_request.result);
+ }
+
+ get_request.onerror = (err)=> {
+ console.error(`Error to get all setups: ${err}`)
+ }
+}
+function get_prep_protocol_bact(result_obj){
+ const request = db.transaction('prep_protocol')
+ .objectStore('prep_protocol')
+ .get(Number(result_obj.prepID));
+
+ request.onsuccess = () => {
+ prep_protocol_bact = request.result;
+ if (microscope_setup_bact && prep_protocol_bact && bact_scan_result){
+ write_bact_scan_description(bact_scan_result, prep_protocol_bact, microscope_setup_bact);
+ render_bact_scan_table(bact_scan_result);
+
+ }
+
+ }
+
+ request.onerror = (err)=> {
+ console.error(`Error to get all setups: ${err}`)
+ }
+}
+
+function get_microscope_setup_bact(result_obj){
+ const request = db.transaction('microscope_setup')
+ .objectStore('microscope_setup')
+ .get(Number(result_obj.setupID));
+
+ request.onsuccess = () => {
+ microscope_setup_bact = request.result;
+ if (microscope_setup_bact && prep_protocol_bact && bact_scan_result){
+ write_bact_scan_description(bact_scan_result, prep_protocol_bact, microscope_setup_bact);
+ render_bact_scan_table(bact_scan_result.result);
+ }
+
+ }
+
+ request.onerror = (err)=> {
+ console.error(`Error to get all setups: ${err}`)
+ }
+}
+function write_bact_scan_description(result, protocol, setup){
+ console.log('hi from writer')
+ // observed height in um -> sample size [uL] * 10^9 / coverslip Area [mm²] * 10^6
+ // -> yields 1000 * samplesize[uL] / coverslipArea[mm²]
+ let observed_height_bact = 1000 * Number(protocol.Sample_Size) /
+ (Number(setup.Slip_Height) * Number(setup.Slip_Width));
+ // observed Volume in uL -> height [um] * FoV [um²] = um³ -- 1 um³ = 1* 10^-9 uL
+ let observed_volume_bact = observed_height_bact *
+ Number(setup.FoV_Width)*Number(setup.FoV_Height)*Math.pow(10, -9);
+
+ multiplication_factor_bact_scan = result.dilution / observed_volume_bact;
+
+ document.querySelector("#bact_scan_datetime").textContent = result.datetime;
+ document.querySelector("#prep_protocol_name_bact").textContent = protocol.name;
+ document.querySelector("#cam_setup_name_bact").textContent = setup.name;
+ document.querySelector("#coverslip_height_bact").textContent = setup.Slip_Height;
+ document.querySelector("#coverslip_width_bact").textContent = setup.Slip_Width;
+ document.querySelector("#sample_volume_bact").textContent = prep_protocol.Sample_Size;
+ document.querySelector("#observed_height_bact").textContent = observed_height_bact.toFixed(2);
+ document.querySelector("#FoV_height_bact").textContent = microscope_setup.FoV_Height;
+ document.querySelector("#FoV_width_bact").textContent = microscope_setup.FoV_Width;
+
+ document.querySelector("#observed_volume_bact").textContent = observed_volume_bact.toExponential(2);
+ document.querySelector("#dilution_factor_bact").textContent = result.dilution;
+
+ document.querySelector("#factor_bact").textContent = multiplication_factor_bact_scan;
+
+
+
+}
+var bact_table = document.querySelector("#bact_scan_table");
+
+function render_bact_scan_table(result){
+ let counts = [];
+ if (result[0][0].length == 0){
+ for (let i=0; i