From 013c815abfa4fd0391b79b2653d989588b170e86 Mon Sep 17 00:00:00 2001
From: Aaron LI
Date: Sun, 13 Nov 2016 17:18:51 +0800
Subject: webui: Show a modal box indicating there are invalid configs
---
fg21sim/webui/static/js/configs.js | 9 +++------
fg21sim/webui/static/js/websocket.js | 1 +
fg21sim/webui/templates/base.html | 2 ++
fg21sim/webui/templates/console.html | 4 ++++
4 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/fg21sim/webui/static/js/configs.js b/fg21sim/webui/static/js/configs.js
index 4e635ae..6ded8c4 100644
--- a/fg21sim/webui/static/js/configs.js
+++ b/fg21sim/webui/static/js/configs.js
@@ -136,7 +136,7 @@ var getFormConfigSingle = function (name) {
value = target.filter(":checked").val();
} else if (target.is(":checkbox") && target.data("type") === "boolean") {
// Convert the checkbox value into boolean
- value = target.is(":checked") ? true : false;
+ value = target.prop("checked");
} else if (target.is(":checkbox")) {
// Get values of checked checkboxes into array
// Credit: https://stackoverflow.com/a/16171146/4856091
@@ -211,13 +211,10 @@ var setFormConfigSingle = function (name, value) {
// Convert the checkbox value into boolean
target.prop("checked", value);
} else if (target.is(":checkbox")) {
- // Convert value (key of a single option) to an Array
- if (! Array.isArray(value)) {
- value = [value];
- }
+ // The received value is already an Array
target.val(value);
} else if (target.is(":text") && target.data("type") == "array") {
- // The received value is already an Array
+ // Convert array of values into a string
value = value.join(", ");
target.val(value);
} else {
diff --git a/fg21sim/webui/static/js/websocket.js b/fg21sim/webui/static/js/websocket.js
index 26d7fce..0fcf98e 100644
--- a/fg21sim/webui/static/js/websocket.js
+++ b/fg21sim/webui/static/js/websocket.js
@@ -232,6 +232,7 @@ $(document).ready(function () {
startServerTask(g_ws);
getServerTaskStatus(g_ws);
} else {
+ $("#console-invalid-configs").modal();
console.error("Exist invalid configuration values!");
}
});
diff --git a/fg21sim/webui/templates/base.html b/fg21sim/webui/templates/base.html
index 35b55dd..c8a4f17 100644
--- a/fg21sim/webui/templates/base.html
+++ b/fg21sim/webui/templates/base.html
@@ -16,6 +16,7 @@
+
{% block extra_css %}{% end %}
{% end %}
@@ -41,6 +42,7 @@
{% block script %}
+
{% block extra_script %}{% end %}
{% end %}
diff --git a/fg21sim/webui/templates/console.html b/fg21sim/webui/templates/console.html
index ca082cc..54a6744 100644
--- a/fg21sim/webui/templates/console.html
+++ b/fg21sim/webui/templates/console.html
@@ -16,6 +16,10 @@
Not started
+
+
There exist some invalid configuration values!
+
Please correct the configurations before starting the simulations
+
--
cgit v1.2.2