Fixed Event config page

This commit is contained in:
Ziver Koc 2019-11-11 17:56:13 +01:00 committed by Ziver Koc
parent cff5685a61
commit 9de2ee1e3c
2 changed files with 22 additions and 9 deletions

View file

@ -13,7 +13,8 @@
<th>Configuration</th> <th>Configuration</th>
<th> <th>
<button class="btn btn-default btn-xs pull-right" data-toggle="modal" <button class="btn btn-default btn-xs pull-right" data-toggle="modal"
data-target="#eventModal"> data-target="#eventModal"
data-action="create_local_event">
<span class="glyphicon glyphicon-plus"></span> <span class="glyphicon glyphicon-plus"></span>
</button> </button>
</th> </th>
@ -112,7 +113,7 @@
</div> </div>
<form method="POST"> <form method="POST">
<div class="modal-body"> <div class="modal-body">
<input type="hidden" id="action" name="action" value=""> <input type="hidden" id="action" name="action">
<input type="hidden" id="id" name="id"> <input type="hidden" id="id" name="id">
<div class="form-group"> <div class="form-group">
<label class="control-label">Name:</label> <label class="control-label">Name:</label>

View file

@ -12,12 +12,15 @@ import se.hal.struct.User;
import zutil.ObjectUtil; import zutil.ObjectUtil;
import zutil.db.DBConnection; import zutil.db.DBConnection;
import zutil.io.file.FileUtil; import zutil.io.file.FileUtil;
import zutil.log.LogUtil;
import zutil.parser.Templator; import zutil.parser.Templator;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Map; import java.util.Map;
import java.util.logging.Logger;
public class EventConfigHttpPage extends HalHttpPage { public class EventConfigHttpPage extends HalHttpPage {
private static final Logger logger = LogUtil.getLogger();
private static final String TEMPLATE = "resource/web/event_config.tmpl"; private static final String TEMPLATE = "resource/web/event_config.tmpl";
private ArrayList<ClassConfigurationData> eventConfigurations; private ArrayList<ClassConfigurationData> eventConfigurations;
@ -44,7 +47,7 @@ public class EventConfigHttpPage extends HalHttpPage {
// Save new input // Save new input
if(request.containsKey("action")){ if(request.containsKey("action")){
int id = (!ObjectUtil.isEmpty(request.get("id")) ? Integer.parseInt(request.get("id")) : -1); int id = (ObjectUtil.isEmpty(request.get("id")) ? -1 : Integer.parseInt(request.get("id")));
Event event; Event event;
switch(request.get("action")) { switch(request.get("action")) {
@ -57,32 +60,42 @@ public class EventConfigHttpPage extends HalHttpPage {
event.getDeviceConfigurator().setValues(request).applyConfiguration(); event.getDeviceConfigurator().setValues(request).applyConfiguration();
event.save(db); event.save(db);
ControllerManager.getInstance().register(event); ControllerManager.getInstance().register(event);
logger.info("Event created: " + event.getName());
HalAlertManager.getInstance().addAlert(new HalAlert( HalAlertManager.getInstance().addAlert(new HalAlert(
AlertLevel.SUCCESS, "Successfully created new event: "+event.getName(), AlertTTL.ONE_VIEW)); AlertLevel.SUCCESS, "Successfully created new event: " + event.getName(), AlertTTL.ONE_VIEW));
break; break;
case "modify_local_event": case "modify_local_event":
event = Event.getEvent(db, id); event = Event.getEvent(db, id);
if(event != null){ if (event != null){
event.setName(request.get("name")); event.setName(request.get("name"));
event.setType(request.get("type")); event.setType(request.get("type"));
event.setUser(localUser); event.setUser(localUser);
event.getDeviceConfigurator().setValues(request).applyConfiguration(); event.getDeviceConfigurator().setValues(request).applyConfiguration();
event.save(db); event.save(db);
logger.info("Event modified: " + event.getName());
HalAlertManager.getInstance().addAlert(new HalAlert( HalAlertManager.getInstance().addAlert(new HalAlert(
AlertLevel.SUCCESS, "Successfully saved event: "+event.getName(), AlertTTL.ONE_VIEW)); AlertLevel.SUCCESS, "Successfully saved event: "+event.getName(), AlertTTL.ONE_VIEW));
} else { } else {
logger.warning("Unknown event id: " + id);
HalAlertManager.getInstance().addAlert(new HalAlert( HalAlertManager.getInstance().addAlert(new HalAlert(
AlertLevel.ERROR, "Unknown event id: "+id, AlertTTL.ONE_VIEW)); AlertLevel.ERROR, "Unknown event id: " + id, AlertTTL.ONE_VIEW));
} }
break; break;
case "remove_local_event": case "remove_local_event":
event = Event.getEvent(db, id); event = Event.getEvent(db, id);
if(event != null) { if (event != null) {
ControllerManager.getInstance().deregister(event); ControllerManager.getInstance().deregister(event);
event.delete(db); event.delete(db);
logger.info("Event deleted: " + event.getName());
HalAlertManager.getInstance().addAlert(new HalAlert( HalAlertManager.getInstance().addAlert(new HalAlert(
AlertLevel.SUCCESS, "Successfully deleted event: "+event.getName(), AlertTTL.ONE_VIEW)); AlertLevel.SUCCESS, "Successfully deleted event: "+event.getName(), AlertTTL.ONE_VIEW));
}else { } else {
logger.warning("Unknown event id: " + id);
HalAlertManager.getInstance().addAlert(new HalAlert( HalAlertManager.getInstance().addAlert(new HalAlert(
AlertLevel.ERROR, "Unknown event id: "+id, AlertTTL.ONE_VIEW)); AlertLevel.ERROR, "Unknown event id: "+id, AlertTTL.ONE_VIEW));
} }
@ -100,7 +113,6 @@ public class EventConfigHttpPage extends HalHttpPage {
tmpl.set("localEvents", Event.getLocalEvents(db)); tmpl.set("localEvents", Event.getLocalEvents(db));
tmpl.set("localEventConf", eventConfigurations); tmpl.set("localEventConf", eventConfigurations);
tmpl.set("detectedEvents", ControllerManager.getInstance().getDetectedEvents()); tmpl.set("detectedEvents", ControllerManager.getInstance().getDetectedEvents());
tmpl.set("availableEvents", ControllerManager.getInstance().getAvailableEvents()); tmpl.set("availableEvents", ControllerManager.getInstance().getAvailableEvents());
return tmpl; return tmpl;