create modify delete external users are working on the web
Former-commit-id: dd1ac3cd8b3f54b1be1aab9f452b12dce006b7cd
This commit is contained in:
parent
37686c2a79
commit
81b605d9be
3 changed files with 55 additions and 29 deletions
|
|
@ -28,6 +28,8 @@ public class PCConfigureHttpPage extends HalHttpPage {
|
||||||
// Save new input
|
// Save new input
|
||||||
if(request.containsKey("action")){
|
if(request.containsKey("action")){
|
||||||
String action = request.get("action");
|
String action = request.get("action");
|
||||||
|
Sensor sensor;
|
||||||
|
User user;
|
||||||
switch(action) {
|
switch(action) {
|
||||||
case "modify_local_user":
|
case "modify_local_user":
|
||||||
localUser.setUserName(request.get("username"));
|
localUser.setUserName(request.get("username"));
|
||||||
|
|
@ -39,12 +41,30 @@ public class PCConfigureHttpPage extends HalHttpPage {
|
||||||
case "modify_local_sensor": break;
|
case "modify_local_sensor": break;
|
||||||
case "remove_local_sensor": break;
|
case "remove_local_sensor": break;
|
||||||
|
|
||||||
case "create_external_user": break;
|
case "create_external_user":
|
||||||
case "modify_external_user": break;
|
user = new User();
|
||||||
case "remove_external_user": break;
|
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":
|
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){
|
if(sensor != null){
|
||||||
sensor.setSynced(Boolean.parseBoolean(request.get("sync")));
|
sensor.setSynced(Boolean.parseBoolean(request.get("sync")));
|
||||||
sensor.save(db);
|
sensor.save(db);
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,9 @@ public class User extends DBBean{
|
||||||
return DBConnection.exec(stmt, DBBeanSQLResultHandler.create(User.class, db) );
|
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);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -88,20 +88,24 @@
|
||||||
<td>{{.hostname}}</td>
|
<td>{{.hostname}}</td>
|
||||||
<td>{{.port}}</td>
|
<td>{{.port}}</td>
|
||||||
<td>
|
<td>
|
||||||
<div class="btn-toolbar pull-right">
|
<form method="POST">
|
||||||
<button class="btn btn-default btn-xs" data-toggle="modal"
|
<input type="hidden" name="action" value="remove_external_user">
|
||||||
data-target="#extUserModal"
|
<input type="hidden" name="id" value="{{.getId()}}">
|
||||||
data-id="{{.getId()}}"
|
|
||||||
data-hostname="{{.hostname}}"
|
<div class="btn-toolbar pull-right">
|
||||||
data-port="{{.port}}">
|
<button type="button" class="btn btn-default btn-xs" data-toggle="modal"
|
||||||
<span class="glyphicon glyphicon-pencil"></span>
|
data-target="#extUserModal"
|
||||||
</button>
|
data-id="{{.getId()}}"
|
||||||
<button class="btn btn-danger btn-xs" data-toggle="modal"
|
data-hostname="{{.hostname}}"
|
||||||
data-target="#deleteModal"
|
data-port="{{.port}}">
|
||||||
data-name="{{.hostname}}">
|
<span class="glyphicon glyphicon-pencil"></span>
|
||||||
<span class="glyphicon glyphicon-trash"></span>
|
</button>
|
||||||
</button>
|
|
||||||
</div>
|
<button type="submit" class="btn btn-danger btn-xs">
|
||||||
|
<span class="glyphicon glyphicon-trash"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
{{/extUsers}}
|
{{/extUsers}}
|
||||||
|
|
@ -129,8 +133,8 @@
|
||||||
<td>{{.type}}</td>
|
<td>{{.type}}</td>
|
||||||
<td>{{.config}}</td>
|
<td>{{.config}}</td>
|
||||||
<td>
|
<td>
|
||||||
<div class="btn-toolbar pull-right">
|
<form method="POST">
|
||||||
<form method="POST">
|
<div class="btn-toolbar pull-right">
|
||||||
<input type="hidden" name="action" value="modify_external_sensor">
|
<input type="hidden" name="action" value="modify_external_sensor">
|
||||||
<input type="hidden" name="id" value="{{.getId()}}">
|
<input type="hidden" name="id" value="{{.getId()}}">
|
||||||
{{^.sync}}
|
{{^.sync}}
|
||||||
|
|
@ -145,8 +149,8 @@
|
||||||
<span class="glyphicon glyphicon-remove"></span>
|
<span class="glyphicon glyphicon-remove"></span>
|
||||||
</button>
|
</button>
|
||||||
{{/.sync}}
|
{{/.sync}}
|
||||||
</form>
|
</div>
|
||||||
</div>
|
</form>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
{{/extSensor}}
|
{{/extSensor}}
|
||||||
|
|
@ -163,7 +167,7 @@
|
||||||
var button = $(event.relatedTarget);
|
var button = $(event.relatedTarget);
|
||||||
var modal = $(this);
|
var modal = $(this);
|
||||||
if(button.data("id") >= 0){ // edit
|
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("#id").val(button.data("id"));
|
||||||
modal.find("#hostname").val(button.data("hostname"));
|
modal.find("#hostname").val(button.data("hostname"));
|
||||||
modal.find("#port").val(button.data("port"));
|
modal.find("#port").val(button.data("port"));
|
||||||
|
|
@ -182,26 +186,26 @@
|
||||||
<div class="modal-dialog" role="document">
|
<div class="modal-dialog" role="document">
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
<div class="modal-header">
|
<div class="modal-header">
|
||||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
<button type="button" class="close" data-dismiss="modal">
|
||||||
<span aria-hidden="true">×</span>
|
<span aria-hidden="true">×</span>
|
||||||
</button>
|
</button>
|
||||||
<h4 class="modal-title" id="exampleModalLabel">External User</h4>
|
<h4 class="modal-title" id="exampleModalLabel">External User</h4>
|
||||||
</div>
|
</div>
|
||||||
<form method="POST">
|
<form method="POST">
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
<input type="hidden" id="action" name="action">
|
<input type="hidden" id="action" name="action" value="">
|
||||||
<input type="hidden" id="id" name="id">
|
<input type="hidden" id="id" name="id">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="hostname" class="control-label">Hostname/IP:</label>
|
<label for="hostname" class="control-label">Hostname/IP:</label>
|
||||||
<input type="text" class="form-control" id="hostname">
|
<input type="text" class="form-control" id="hostname" name="hostname">
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="port" class="control-label">Port:</label>
|
<label for="port" class="control-label">Port:</label>
|
||||||
<input type="number" class="form-control" id="port" min="1">
|
<input type="number" class="form-control" id="port" name="port" min="1">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
|
<button type="reset" class="btn btn-default" data-dismiss="modal">Cancel</button>
|
||||||
<button type="submit" class="btn btn-primary">Save</button>
|
<button type="submit" class="btn btn-primary">Save</button>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue