From 81b605d9beeab1d2ed376e7ab600641048f5986f Mon Sep 17 00:00:00 2001 From: Ziver Koc Date: Sat, 12 Dec 2015 01:34:55 +0100 Subject: [PATCH] create modify delete external users are working on the web Former-commit-id: dd1ac3cd8b3f54b1be1aab9f452b12dce006b7cd --- src/se/koc/hal/page/PCConfigureHttpPage.java | 28 +++++++++-- src/se/koc/hal/struct/User.java | 4 +- web-resource/configure.tmpl | 52 +++++++++++--------- 3 files changed, 55 insertions(+), 29 deletions(-) diff --git a/src/se/koc/hal/page/PCConfigureHttpPage.java b/src/se/koc/hal/page/PCConfigureHttpPage.java index ad806949..9726267b 100755 --- a/src/se/koc/hal/page/PCConfigureHttpPage.java +++ b/src/se/koc/hal/page/PCConfigureHttpPage.java @@ -28,6 +28,8 @@ public class PCConfigureHttpPage extends HalHttpPage { // Save new input if(request.containsKey("action")){ String action = request.get("action"); + Sensor sensor; + User user; switch(action) { case "modify_local_user": localUser.setUserName(request.get("username")); @@ -39,12 +41,30 @@ public class PCConfigureHttpPage extends HalHttpPage { case "modify_local_sensor": break; case "remove_local_sensor": break; - case "create_external_user": break; - case "modify_external_user": break; - case "remove_external_user": break; + case "create_external_user": + user = new User(); + user.setHostname(request.get("hostname")); + user.setPort(Integer.parseInt(request.get("port"))); + user.setExternal(true); + user.save(db); + break; + case "modify_external_user": + user = User.getUser(db, Integer.parseInt(request.get("id"))); + if(user != null){ + user.setHostname(request.get("hostname")); + user.setPort(Integer.parseInt(request.get("port"))); + user.save(db); + } + break; + case "remove_external_user": + user = User.getUser(db, Integer.parseInt(request.get("id"))); + if(user != null){ + user.delete(db); + } + break; case "modify_external_sensor": - Sensor sensor = Sensor.getSensor(db, Integer.parseInt(request.get("id"))); + sensor = Sensor.getSensor(db, Integer.parseInt(request.get("id"))); if(sensor != null){ sensor.setSynced(Boolean.parseBoolean(request.get("sync"))); sensor.save(db); diff --git a/src/se/koc/hal/struct/User.java b/src/se/koc/hal/struct/User.java index 156306d9..c9f120cc 100755 --- a/src/se/koc/hal/struct/User.java +++ b/src/se/koc/hal/struct/User.java @@ -34,7 +34,9 @@ public class User extends DBBean{ return DBConnection.exec(stmt, DBBeanSQLResultHandler.create(User.class, db) ); } - + public static User getUser(DBConnection db, int id) throws SQLException { + return DBBean.load(db, User.class, id); + } diff --git a/web-resource/configure.tmpl b/web-resource/configure.tmpl index 28dcbc3a..8b6b3d07 100755 --- a/web-resource/configure.tmpl +++ b/web-resource/configure.tmpl @@ -88,20 +88,24 @@ {{.hostname}} {{.port}} -
- - -
+
+ + + +
+ + + +
+
{{/extUsers}} @@ -129,8 +133,8 @@ {{.type}} {{.config}} -
-
+ +
{{^.sync}} @@ -145,8 +149,8 @@ {{/.sync}} - -
+
+ {{/extSensor}} @@ -163,7 +167,7 @@ var button = $(event.relatedTarget); var modal = $(this); if(button.data("id") >= 0){ // edit - modal.find("#action").val(button.data("edit_external_user")); + modal.find("#action").val("modify_external_user"); modal.find("#id").val(button.data("id")); modal.find("#hostname").val(button.data("hostname")); modal.find("#port").val(button.data("port")); @@ -182,26 +186,26 @@