This commit is contained in:
2024-05-03 18:30:28 -05:00
parent 66670bd21e
commit 485efba3b4

View File

@@ -27,8 +27,8 @@
</head>
<body>
<div class="alarm-container">
<div id="alarms-container">
<p>Loading alarms...</p>
<div id="alarms-container-KBIS">
<p>Loading KBIS alarms...</p>
</div>
</div>
@@ -36,53 +36,54 @@
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$(document).ready(function() {
// Function to fetch the radar station alarms
function fetchAlarms(stationId, elementId) {
var apiUrl = "https://api.weather.gov/radar/stations/KMBX/alarms";
var alarmsElement = $("#" + elementId);
// Function to fetch the radar station alarms for KBIS
function fetchAlarms_KBIS() {
var apiUrl = "https://api.weather.gov/radar/stations/KBIS/alarms";
var alarmsElement = $("#alarms-container-KBIS");
$.getJSON(apiUrl, function(data) {
alarmsElement.empty();
$.getJSON(apiUrl, function(data) {
alarmsElement.empty();
if (data["@graph"] && data["@graph"].length > 0) {
data["@graph"].forEach(function(alarm) {
var alarmStatus = alarm.status;
var alarmMessage = alarm.message;
var alarmTimestamp = new Date(alarm.timestamp).toLocaleString();
if (data["@graph"] && data["@graph"].length > 0) {
data["@graph"].forEach(function(alarm) {
var alarmStatus = alarm.status;
var alarmMessage = alarm.message;
var alarmTimestamp = new Date(alarm.timestamp).toLocaleString();
var alarmItem = $("<div class='alarm-item'></div>").text(alarmMessage);
var alarmTimestampElement = $("<div class='alarm-timestamp'></div>").text(alarmTimestamp);
var alarmItem = $("<div class='alarm-item'></div>").text(alarmMessage);
var alarmTimestampElement = $("<div class='alarm-timestamp'></div>").text(alarmTimestamp);
// Set the status color based on its value
if (alarmStatus === "cleared") {
alarmItem.addClass("status-cleared");
} else if (alarmStatus === "required") {
alarmItem.addClass("status-required");
} else if (alarmStatus === "mandatory") {
alarmItem.addClass("status-mandatory");
} else if (alarmStatus === "inoperative") {
alarmItem.addClass("status-inoperative");
} else if (alarmStatus === "secondary") {
alarmItem.addClass("status-secondary");
}
// Set the status color based on its value
if (alarmStatus === "cleared") {
alarmItem.addClass("status-cleared");
} else if (alarmStatus === "required") {
alarmItem.addClass("status-required");
} else if (alarmStatus === "mandatory") {
alarmItem.addClass("status-mandatory");
} else if (alarmStatus === "inoperative") {
alarmItem.addClass("status-inoperative");
} else if (alarmStatus === "secondary") {
alarmItem.addClass("status-secondary");
}
alarmItem.append(alarmTimestampElement);
alarmsElement.append(alarmItem);
});
} else {
alarmsElement.text("No alarms found.");
}
}).fail(function() {
alarmsElement.text("Failed to fetch alarms.");
});
}
alarmItem.append(alarmTimestampElement);
alarmsElement.append(alarmItem);
});
} else {
alarmsElement.text("No alarms found.");
}
}).fail(function() {
alarmsElement.text("Failed to fetch alarms.");
});
}
// Call the fetchAlarms function initially and then every minute
fetchAlarms("KMBX", "alarms-container");
// Call the fetchAlarms_KBIS function initially and then every minute for KBIS
fetchAlarms_KBIS();
setInterval(function() {
fetchAlarms("KMBX", "alarms-container");
fetchAlarms_KBIS();
}, 60000); // 60000 milliseconds = 1 minute
// You can create a similar function for fetching alarms for KBIS if needed
});
</script>
</body>