diff --git a/resource/web/properties_config.tmpl b/resource/web/properties_config.tmpl
new file mode 100644
index 00000000..6283b599
--- /dev/null
+++ b/resource/web/properties_config.tmpl
@@ -0,0 +1,24 @@
+
+
+
\ No newline at end of file
diff --git a/src/se/hal/HalContext.java b/src/se/hal/HalContext.java
index db25ece7..717d70e0 100755
--- a/src/se/hal/HalContext.java
+++ b/src/se/hal/HalContext.java
@@ -10,11 +10,8 @@ import zutil.log.LogUtil;
import java.io.File;
import java.io.FileReader;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-import java.util.Properties;
+import java.sql.*;
+import java.util.*;
import java.util.logging.Logger;
public class HalContext {
@@ -171,6 +168,14 @@ public class HalContext {
}
+
+ public static HashMap getProperties() {
+ HashMap map = new HashMap();
+ map.putAll(fileConf);
+ map.putAll(dbConf);
+ return map;
+
+ }
public static String getStringProperty(String key){
String value = null;
if (fileConf != null)
diff --git a/src/se/hal/page/EventConfigHttpPage.java b/src/se/hal/page/EventConfigHttpPage.java
index 0dd4337f..15764928 100755
--- a/src/se/hal/page/EventConfigHttpPage.java
+++ b/src/se/hal/page/EventConfigHttpPage.java
@@ -28,7 +28,7 @@ public class EventConfigHttpPage extends HalHttpPage {
public EventConfigHttpPage() {
super("event_config");
- super.getRootNav().createSubNav("Events").createSubNav(this.getId(), "Configuration").setWeight(100);
+ super.getRootNav().createSubNav("Settings").createSubNav(this.getId(), "Event Settings").setWeight(100);
eventConfigurations = new ArrayList<>();
for(Class c : ControllerManager.getInstance().getAvailableEvents())
diff --git a/src/se/hal/page/PropertySettingsPage.java b/src/se/hal/page/PropertySettingsPage.java
new file mode 100644
index 00000000..53ac2a28
--- /dev/null
+++ b/src/se/hal/page/PropertySettingsPage.java
@@ -0,0 +1,46 @@
+package se.hal.page;
+
+import se.hal.ControllerManager;
+import se.hal.HalContext;
+import se.hal.intf.HalHttpPage;
+import se.hal.struct.Event;
+import se.hal.struct.devicedata.SwitchEventData;
+import se.hal.util.DeviceNameComparator;
+import se.hal.util.HistoryDataListSqlResult;
+import se.hal.util.HistoryDataListSqlResult.HistoryData;
+import zutil.ObjectUtil;
+import zutil.db.DBConnection;
+import zutil.io.file.FileUtil;
+import zutil.log.LogUtil;
+import zutil.parser.Templator;
+
+import java.sql.PreparedStatement;
+import java.util.*;
+import java.util.logging.Logger;
+
+public class PropertySettingsPage extends HalHttpPage {
+ private static final String TEMPLATE = "resource/web/properties_config.tmpl";
+
+
+ public PropertySettingsPage(){
+ super("properties");
+ super.getRootNav().createSubNav("Settings").setWeight(100).createSubNav(this.getId(), "Properties");
+ }
+
+ @Override
+ public Templator httpRespond(
+ Map session,
+ Map cookie,
+ Map request)
+ throws Exception{
+
+ DBConnection db = HalContext.getDB();
+
+ HashMap properties = HalContext.getProperties();
+
+ Templator tmpl = new Templator(FileUtil.find(TEMPLATE));
+ tmpl.set("properties", properties.entrySet());
+ return tmpl;
+
+ }
+}
diff --git a/src/se/hal/page/SensorConfigHttpPage.java b/src/se/hal/page/SensorConfigHttpPage.java
index aec8f8e1..147eb1df 100755
--- a/src/se/hal/page/SensorConfigHttpPage.java
+++ b/src/se/hal/page/SensorConfigHttpPage.java
@@ -28,7 +28,7 @@ public class SensorConfigHttpPage extends HalHttpPage {
public SensorConfigHttpPage() {
super("sensor_config");
- super.getRootNav().createSubNav("Sensors").createSubNav(this.getId(), "Configuration").setWeight(100);
+ super.getRootNav().createSubNav("Settings").createSubNav(this.getId(), "Sensor Settings").setWeight(100);
sensorConfigurations = new ArrayList<>();
for(Class c : ControllerManager.getInstance().getAvailableSensors())
diff --git a/src/se/hal/plugin.json b/src/se/hal/plugin.json
index c893c565..662ff29f 100755
--- a/src/se/hal/plugin.json
+++ b/src/se/hal/plugin.json
@@ -17,6 +17,7 @@
{"se.hal.intf.HalHttpPage": "se.hal.page.EventConfigHttpPage"},
{"se.hal.intf.HalHttpPage": "se.hal.page.TriggerHttpPage"},
{"se.hal.intf.HalHttpPage": "se.hal.page.UserConfigHttpPage"},
+ {"se.hal.intf.HalHttpPage": "se.hal.page.PropertySettingsPage"},
{"se.hal.intf.HalTrigger": "se.hal.trigger.DateTimeTrigger"},