function celsiusToFahrenheit(degree) { return degree * 1.8 + 32; } function renderThermostats() { $.ajax({ url: jsconfig.baseurl + "/api/status/" }).then(function(data) { $("#thermostats").empty(); for (var key in data) { // Title of thermostat var titleh = $("
").text(data[key].alias); var titlediv = $("").addClass("row").append(titleh); // Thermostat status var rowdiv = $(""); rowdiv.addClass("row"); // Display temperature if (jsconfig.fahrenheit) { var temp = celsiusToFahrenheit(parseFloat(data[key].temp)).toFixed(1) + "°F"; } else { var temp = parseFloat(data[key].temp).toFixed(1) + "°C"; } var temph = $("").text(temp); var tempdiv = $("").addClass("two columns").append(temph); rowdiv.append(tempdiv); // Display status if (data[key].cooling) { var statustext = "Cooling" } else if (data[key].heating) { var statustext = "Heating" } else { var statustext = "Idle" } var statusp = $("").html(statustext); var statusdiv = $("").addClass("three columns").append(statusp); rowdiv.append(statusdiv); // Display config $.ajax({ url: jsconfig.baseurl + "/api/config/" + data[key].alias }).then(function(configData){ if (jsconfig.fahrenheit) { var hightemp = celsiusToFahrenheit(parseFloat(configData.hightemp)).toFixed(1) + "°F"; var lowtemp = celsiusToFahrenheit(parseFloat(configData.lowtemp)).toFixed(1) + "°F"; } else { var hightemp = parseFloat(configData.hightemp).toFixed(1) + "°C"; var lowtemp = parseFloat(configData.lowtemp).toFixed(1) + "°C"; } configText = "Chills for " + configData.coolminutes + " minutes when > " + hightemp + ".