Moving to release candidate 1

This commit is contained in:
Admin
2017-04-04 15:54:58 -05:00
parent 50af884563
commit ff9d0a5a77
11 changed files with 37 additions and 43 deletions

View File

@@ -28,11 +28,13 @@ public class BridgeSecurity {
(byte) 0xde, (byte) 0x33, (byte) 0x10, (byte) 0x12,
};
private char[] habridgeKey;
private String execGarden;
private BridgeSecurityDescriptor securityDescriptor;
private boolean settingsChanged;
public BridgeSecurity(char[] theKey) {
public BridgeSecurity(char[] theKey, String theExecGarden) {
habridgeKey = theKey;
execGarden = theExecGarden;
securityDescriptor = null;
settingsChanged = false;
}
@@ -129,13 +131,8 @@ public class BridgeSecurity {
return error;
}
public void setExecGarden(String theGarden) {
securityDescriptor.setExecGarden(theGarden);
settingsChanged = true;
}
public String getExecGarden() {
return securityDescriptor.getExecGarden();
return execGarden;
}
public void setUseLinkButton(boolean useThis) {
securityDescriptor.setUseLinkButton(useThis);
@@ -151,7 +148,6 @@ public class BridgeSecurity {
}
public SecurityInfo getSecurityInfo() {
SecurityInfo theInfo = new SecurityInfo();
theInfo.setExecGarden(getExecGarden());
theInfo.setUseLinkButton(isUseLinkButton());
theInfo.setSecureHueApi(isSecureHueApi());
theInfo.setSecure(isSecure());

View File

@@ -38,7 +38,8 @@ public class BridgeSettings extends BackupHandler {
String theKey = System.getProperty("security.key");
if(theKey == null)
theKey = "IWantMyPasswordsToBeAbleToBeDecodedPleaseSeeTheReadme";
bridgeSecurity = new BridgeSecurity(theKey.toCharArray());
String execGarden = System.getProperty("exec.garden");
bridgeSecurity = new BridgeSecurity(theKey.toCharArray(), execGarden);
String ipV6Stack = System.getProperty("ipV6Stack");
if(ipV6Stack == null || !ipV6Stack.equalsIgnoreCase("true")) {
System.setProperty("java.net.preferIPv4Stack" , "true");

View File

@@ -2,7 +2,6 @@ package com.bwssystems.HABridge;
public class SecurityInfo {
private boolean useLinkButton;
private String execGarden;
private boolean secureHueApi;
private boolean isSecure;
@@ -12,12 +11,6 @@ public class SecurityInfo {
public void setUseLinkButton(boolean useLinkButton) {
this.useLinkButton = useLinkButton;
}
public String getExecGarden() {
return execGarden;
}
public void setExecGarden(String execGarden) {
this.execGarden = execGarden;
}
public boolean isSecureHueApi() {
return secureHueApi;
}

View File

@@ -283,8 +283,6 @@ public class SystemControl {
post(SYSTEM_CONTEXT + "/changesecurityinfo", (request, response) -> {
log.debug("changesecurityinfo....");
SecurityInfo theInfo = new Gson().fromJson(request.body(), SecurityInfo.class);
if(theInfo.getExecGarden() != null)
bridgeSettings.getBridgeSecurity().setExecGarden(theInfo.getExecGarden());
bridgeSettings.getBridgeSecurity().setUseLinkButton(theInfo.isUseLinkButton());
bridgeSettings.getBridgeSecurity().setSecureHueApi(theInfo.isSecureHueApi());
bridgeSettings.save(bridgeSettings.getBridgeSettingsDescriptor());

View File

@@ -36,8 +36,7 @@ public class CommandHome implements Home {
intermediate = DeviceDataDecode.replaceDeviceData(intermediate, device);
intermediate = TimeDecode.replaceTimeValue(intermediate);
String execGarden = theSettings.getBridgeSecurity().getExecGarden();
execGarden = execGarden.trim();
if(execGarden != null && !execGarden.isEmpty()) {
if(execGarden != null && !execGarden.trim().isEmpty()) {
if(System.getProperty("os.name").toLowerCase().indexOf("win") >= 0)
intermediate = execGarden + "\\" + intermediate;
else

View File

@@ -54,13 +54,6 @@ legend.form-label {
font-size: 8pt;
}
.password-count {
float: right;
position: relative;
bottom: 24px;
right: 10px;
}
.msg-block {
margin-top:5px;
}

View File

@@ -1306,6 +1306,17 @@ app.controller ('SystemController', function ($scope, $location, bridgeService,
};
});
app.directive('autofocus', ['$timeout', function($timeout) {
return {
restrict: 'A',
link : function($scope, $element) {
$timeout(function() {
$element[0].focus();
});
}
}
}]);
app.directive('nuCheck', [function () {
return {
require: 'ngModel',

View File

@@ -5,19 +5,19 @@
<div class="panel-body">
<div ng-if="!loggedIn" class="form-container">
<form name="loginForm" role="form">
<form name="loginForm" role="form" ng-submit="login(username, password)">
<legend class="form-label">Enter Credentials</legend>
<div class="form-group">
<label>User</label> <input id="username" name="username"
class="form-control" type="text" ng-model="username"
placeholder="someone" />
placeholder="someone" autofocus/>
</div>
<div class="form-group">
<label>Password</label> <input id="password" name="password"
class="form-control" type="password" ng-model="password" />
</div>
<div class="form-group">
<button type="button" class="btn btn-success" ng-click="login(username, password)">Submit</button>
<button type="submit" class="btn btn-success" value="Submit">Submit</button>
</div>
</form>

View File

@@ -6,19 +6,13 @@
<label>Use Link Button</label>
<input type="checkbox"
ng-model="useLinkButton" ng-true-value=true
ng-false-value=false> {{useLinkButton}}
ng-false-value=false /> {{useLinkButton}}
</div>
<div class="form-group">
<label>Use username/password for HUE Api</label>
<input type="checkbox"
ng-model="secureHueApi" ng-true-value=true
ng-false-value=false> {{secureHueApi}}
</div>
<div class="form-group">
<label>Secure Folder for scripts/executables</label>
<input id="exec-garden" class="form-control"
type="text" ng-model="execGarden"
placeholder="/home/pi/protectedscripts">
ng-false-value=false /> {{secureHueApi}}
</div>
<div class="form-group">
<button type="button" class="btn btn-primary" ng-click="setSecurityInfo()">Update</button>
@@ -27,7 +21,7 @@
<label>Add/Delete User</label>
<input id="new-user" name="new-user" class="form-control"
type="text" ng-model="newUser"
placeholder="someone" nu-check="new-user">
placeholder="someone" nu-check="new-user" />
</div>
<div class="form-group">
<button type="button" class="btn btn-danger" ng-click="delUser(newUser)">Delete</button>
@@ -50,7 +44,7 @@
</div>
</div>
<div class="form-group">
<button type="button" class="btn btn-success" ng-click="dismissDialog()">Dismiss</button>
<button type="button" class="btn btn-success" ng-click="dismissDialog()" autofocus>Dismiss</button>
</div>
</form>