diff --git a/data/index.html b/data/index.html
index 06002ff..5f29818 100644
--- a/data/index.html
+++ b/data/index.html
@@ -63,6 +63,10 @@
diff --git a/data/style.css b/data/style.css
index 9f9f0ef..b2d9717 100644
--- a/data/style.css
+++ b/data/style.css
@@ -656,3 +656,22 @@ input:checked + .slider:before {
.communication-error-bar p {
text-align: center;
}
+
+.param-success-bar {
+ display: none;
+ padding: 15px;
+ background-color: #4caf50;
+ color: white;
+ z-index: 100;
+ margin: 0 auto;
+ position: relative;
+ width: 30%;
+ top: 0px;
+ clear: left;
+ height: 20px;
+ border-radius: 0px 0px 20px 20px;
+}
+
+.param-success-bar p {
+ text-align: center;
+}
diff --git a/data/ui.js b/data/ui.js
index 34a31ab..96bcdd8 100644
--- a/data/ui.js
+++ b/data/ui.js
@@ -134,6 +134,21 @@ var ui = {
}
});
+ // Pause auto-refresh while the user is editing a parameter field, resume when done
+ var paramsTable = document.getElementById('params');
+ paramsTable.addEventListener('focusin', function(event) {
+ if (event.target.tagName === 'INPUT' || event.target.tagName === 'SELECT') {
+ clearInterval(ui.autoRefreshHandle);
+ }
+ });
+ paramsTable.addEventListener('focusout', function(event) {
+ if (event.target.tagName === 'INPUT' || event.target.tagName === 'SELECT') {
+ if (document.getElementById('auto-reload-checkbox').checked) {
+ ui.autoRefreshHandle = setInterval(ui.refresh, 2000);
+ }
+ }
+ });
+
ui.updateTables();
plot.generateChart();
ui.parameterDatabaseCheckForUpdates();
@@ -142,6 +157,7 @@ var ui = {
settings.populateSettingsTab();
ui.populateFileList();
ui.refreshStatusBox();
+ ui.refreshMessagesBox();
ui.getNodeId();
ui.setAutoReload(true);
},
@@ -151,6 +167,7 @@ var ui = {
{
ui.updateTables();
ui.refreshStatusBox();
+ ui.refreshMessagesBox();
},
getNodeId: function() {
@@ -173,6 +190,9 @@ var ui = {
{
document.getElementById("nodeid").value = this.responseText.split(',')[0];
document.getElementById("canspeed").value = this.responseText.split(',')[1];
+ inverter.getParamList(function() {
+ inverter.canMapping(ui.populateExistingCanMappingTable);
+ });
}
xmlhttp.open("GET", "/nodeid?id=" + document.getElementById("nodeid").value + "&canspeed=" + document.getElementById("canspeed").value, true);
@@ -257,7 +277,7 @@ var ui = {
if (param.enums[param.value])
{
- valInput = '