BangleApps/apps/phystrax/interface.html

65 lines
1.8 KiB
HTML

<html>
<head>
<link rel="stylesheet" href="../../css/spectre.min.css">
</head>
<body>
<div id="data"></div>
<button class="btn btn-default" id="btnSave">Save</button>
<button class="btn btn-default" id="btnDelete">Delete</button>
<script src="../../core/lib/interface.js"></script>
<script>
var dataElement = document.getElementById("data");
var csvData = "";
function getData() {
// Show loading window
Util.showModal("Loading...");
// Get the data
dataElement.innerHTML = "";
Util.readStorageFile(`heart_rate_data.csv`, data => {
csvData = data.trim();
// Remove loading window
Util.hideModal();
// If no data, report it and exit
if (data.length == 0) {
dataElement.innerHTML = "<b>No data found</b>";
return;
}
// Otherwise parse the data and output it as a table
dataElement.innerHTML = `<table>
<tr>
<th>Timestamp</th>
<th>Heart Rate</th>
</tr>` + data.trim().split("\n").map(l => {
l = l.split(",");
return `<tr>
<td>${l[0]}</td>
<td>${l[1]}</td>
</tr>`
}).join("\n") + "</table>";
});
}
// Call a utility function to save the data
document.getElementById("btnSave").addEventListener("click", function() {
Util.saveCSV("heart_rate_data", csvData);
});
// Delete the file
document.getElementById("btnDelete").addEventListener("click", function() {
Util.showModal("Deleting...");
Util.eraseStorageFile("heart_rate_data.csv", function() {
Util.hideModal();
getData();
});
});
// Called when the app starts
function onInit() {
getData();
}
</script>
</body>
</html>