tweak interface

master
Bastian Greshake Tzovaras 2020-06-17 12:27:39 +02:00
parent 223668faa0
commit b6afd43b32
1 changed files with 15 additions and 18 deletions

View File

@ -10,28 +10,25 @@
var domRecords = document.getElementById("records"); var domRecords = document.getElementById("records");
function saveRecord(record,name) { function saveRecord(record,name) {
var csv = `${record.map(rec=>[rec.time, rec.bpm, rec.confidence].join(",")).join("\n")}`; var csv = `${record.map(rec=>[rec.start_time, rec.end_time].join(",")).join("\n")}`;
Util.saveCSV(name, csv); Util.saveCSV(name, csv);
} }
function recordLineToObject(l, hasRecordNbr) { function recordLineToObject(l) {
var t = l.trim().split(","); var t = l.trim().split(",");
var n = hasRecordNbr?1:0;
var o = { var o = {
start_time: parseFloat(t[n+0]), start_time: parseFloat(t[0]),
end_time: parseFloat(t[n+1]), end_time: parseFloat(t[1]),
}; };
if (hasRecordNbr)
o.number = t[0];
return o; return o;
} }
function downloadRecord(recordNbr, callback) { function downloadRecord(callback) {
Util.showModal("Downloading one-button tracker data..."); Util.showModal("Downloading one-button tracker data...");
Util.readStorageFile(`one_button_presses.csv`,data=>{ Util.readStorageFile(`one_button_presses.csv`,data=>{
Util.hideModal(); Util.hideModal();
var record = data.trim().split("\n").map(l=>recordLineToObject(l,false)); var record = data.trim().split("\n").map(l=>recordLineToObject(l));
callback(record); callback(record);
}); });
} }
@ -47,17 +44,17 @@ function getRecordList() {
var html = `<div class="container"> var html = `<div class="container">
<div class="columns">\n`; <div class="columns">\n`;
recordLines.forEach(l => { recordLines.forEach(l => {
var record = recordLineToObject(l, true /*has record number*/); var record = recordLineToObject(l);
html += ` html += `
<div class="column col-12"> <div class="column col-12">
<div class="card-header"> <div class="card-header">
<div class="card-title h5">Heart Rate Record ${record.number}</div> <div class="card-title h5">One-Button Presses</div>
<div class="card-subtitle text-gray">${(new Date(record.time*1000)).toString().substr(0,24)}</div> <div class="card-subtitle text-gray">${(new Date(record.start_time*1000)).toString().substr(0,24)}</div>
</div> </div>
<div class="card-body"></div> <div class="card-body"></div>
<div class="card-footer"> <div class="card-footer">
<button class="btn btn-primary" recordNbr="${record.number}" task="download">Download</button> <button class="btn btn-primary" task="download">Download</button>
<button class="btn btn-default" recordNbr="${record.number}" task="delete">Delete</button> <button class="btn btn-default" task="delete">Delete</button>
</div> </div>
</div> </div>
`; `;
@ -85,13 +82,13 @@ function getRecordList() {
var task = button.getAttribute("task"); var task = button.getAttribute("task");
if (task=="delete") { if (task=="delete") {
Util.showModal("Deleting record..."); Util.showModal("Deleting record...");
Util.eraseStorageFile(`.heart${recordNbr.toString(36)}`,()=>{ Util.eraseStorageFile(`one_button_presses.csv`,()=>{
Util.hideModal(); Util.hideModal();
getRecordList(); getRecordList();
}); });
} }
if (task=="download") { if (task=="download") {
downloadRecord(recordNbr, record => saveRecord(record, `HeartRateRecord${recordNbr}`)); downloadRecord(record => saveRecord(record, `one_button_presses`));
} }
}); });
} }