From 6e22893051c2918aef343a14c1830de597082730 Mon Sep 17 00:00:00 2001 From: rjwats Date: Sat, 21 Nov 2020 23:40:31 +0000 Subject: [PATCH] Fix user form * fix issue with checkbox on user form * use consistent style for const char pointers * use unique hostname by default --- factory_settings.ini | 3 ++- interface/src/security/ManageUsersForm.tsx | 8 ++------ lib/framework/FSPersistence.h | 4 ++-- lib/framework/WebSocketTxRx.h | 16 ++++++++-------- lib/framework/WiFiSettingsService.h | 2 +- 5 files changed, 15 insertions(+), 18 deletions(-) diff --git a/factory_settings.ini b/factory_settings.ini index f0887fa..4cbcf5c 100644 --- a/factory_settings.ini +++ b/factory_settings.ini @@ -3,7 +3,8 @@ build_flags = ; WiFi settings -D FACTORY_WIFI_SSID=\"\" -D FACTORY_WIFI_PASSWORD=\"\" - -D FACTORY_WIFI_HOSTNAME=\"esp-react\" + ; if unspecified the devices hardware ID will be used + ; -D FACTORY_WIFI_HOSTNAME=\"esp-react\" ; Access point settings -D FACTORY_AP_PROVISION_MODE=AP_MODE_DISCONNECTED diff --git a/interface/src/security/ManageUsersForm.tsx b/interface/src/security/ManageUsersForm.tsx index 29393a5..b8c63b7 100644 --- a/interface/src/security/ManageUsersForm.tsx +++ b/interface/src/security/ManageUsersForm.tsx @@ -13,7 +13,7 @@ import SaveIcon from '@material-ui/icons/Save'; import PersonAddIcon from '@material-ui/icons/PersonAdd'; import { withAuthenticatedContext, AuthenticatedContextProps } from '../authentication'; -import { RestFormProps, FormActions, FormButton } from '../components'; +import { RestFormProps, FormActions, FormButton, extractEventValue } from '../components'; import UserForm from './UserForm'; import { SecuritySettings, User } from './types'; @@ -93,13 +93,9 @@ class ManageUsersForm extends React.Component (event: React.ChangeEvent) => { - this.setState({ user: { ...this.state.user!, [name]: event.target.value } }); + this.setState({ user: { ...this.state.user!, [name]: extractEventValue(event) } }); }; - handleUserCheckboxChange = (name: keyof User) => (event: React.ChangeEvent) => { - this.setState({ user: { ...this.state.user!, [name]: event.target.checked } }); - } - onSubmit = () => { this.props.saveData(); this.props.authenticatedContext.refresh(); diff --git a/lib/framework/FSPersistence.h b/lib/framework/FSPersistence.h index bba8cda..9fc547b 100644 --- a/lib/framework/FSPersistence.h +++ b/lib/framework/FSPersistence.h @@ -11,7 +11,7 @@ class FSPersistence { JsonStateUpdater stateUpdater, StatefulService* statefulService, FS* fs, - char const* filePath, + const char* filePath, size_t bufferSize = DEFAULT_BUFFER_SIZE) : _stateReader(stateReader), _stateUpdater(stateUpdater), @@ -81,7 +81,7 @@ class FSPersistence { JsonStateUpdater _stateUpdater; StatefulService* _statefulService; FS* _fs; - char const* _filePath; + const char* _filePath; size_t _bufferSize; update_handler_id_t _updateHandlerId; diff --git a/lib/framework/WebSocketTxRx.h b/lib/framework/WebSocketTxRx.h index 02a1a7d..d2871ad 100644 --- a/lib/framework/WebSocketTxRx.h +++ b/lib/framework/WebSocketTxRx.h @@ -20,7 +20,7 @@ class WebSocketConnector { WebSocketConnector(StatefulService* statefulService, AsyncWebServer* server, - char const* webSocketPath, + const char* webSocketPath, SecurityManager* securityManager, AuthenticationPredicate authenticationPredicate, size_t bufferSize) : @@ -40,7 +40,7 @@ class WebSocketConnector { WebSocketConnector(StatefulService* statefulService, AsyncWebServer* server, - char const* webSocketPath, + const char* webSocketPath, size_t bufferSize) : _statefulService(statefulService), _server(server), _webSocket(webSocketPath), _bufferSize(bufferSize) { _webSocket.onEvent(std::bind(&WebSocketConnector::onWSEvent, @@ -77,7 +77,7 @@ class WebSocketTx : virtual public WebSocketConnector { WebSocketTx(JsonStateReader stateReader, StatefulService* statefulService, AsyncWebServer* server, - char const* webSocketPath, + const char* webSocketPath, SecurityManager* securityManager, AuthenticationPredicate authenticationPredicate = AuthenticationPredicates::IS_ADMIN, size_t bufferSize = DEFAULT_BUFFER_SIZE) : @@ -95,7 +95,7 @@ class WebSocketTx : virtual public WebSocketConnector { WebSocketTx(JsonStateReader stateReader, StatefulService* statefulService, AsyncWebServer* server, - char const* webSocketPath, + const char* webSocketPath, size_t bufferSize = DEFAULT_BUFFER_SIZE) : WebSocketConnector(statefulService, server, webSocketPath, bufferSize), _stateReader(stateReader) { WebSocketConnector::_statefulService->addUpdateHandler( @@ -166,7 +166,7 @@ class WebSocketRx : virtual public WebSocketConnector { WebSocketRx(JsonStateUpdater stateUpdater, StatefulService* statefulService, AsyncWebServer* server, - char const* webSocketPath, + const char* webSocketPath, SecurityManager* securityManager, AuthenticationPredicate authenticationPredicate = AuthenticationPredicates::IS_ADMIN, size_t bufferSize = DEFAULT_BUFFER_SIZE) : @@ -182,7 +182,7 @@ class WebSocketRx : virtual public WebSocketConnector { WebSocketRx(JsonStateUpdater stateUpdater, StatefulService* statefulService, AsyncWebServer* server, - char const* webSocketPath, + const char* webSocketPath, size_t bufferSize = DEFAULT_BUFFER_SIZE) : WebSocketConnector(statefulService, server, webSocketPath, bufferSize), _stateUpdater(stateUpdater) { } @@ -221,7 +221,7 @@ class WebSocketTxRx : public WebSocketTx, public WebSocketRx { JsonStateUpdater stateUpdater, StatefulService* statefulService, AsyncWebServer* server, - char const* webSocketPath, + const char* webSocketPath, SecurityManager* securityManager, AuthenticationPredicate authenticationPredicate = AuthenticationPredicates::IS_ADMIN, size_t bufferSize = DEFAULT_BUFFER_SIZE) : @@ -251,7 +251,7 @@ class WebSocketTxRx : public WebSocketTx, public WebSocketRx { JsonStateUpdater stateUpdater, StatefulService* statefulService, AsyncWebServer* server, - char const* webSocketPath, + const char* webSocketPath, size_t bufferSize = DEFAULT_BUFFER_SIZE) : WebSocketConnector(statefulService, server, webSocketPath, bufferSize), WebSocketTx(stateReader, statefulService, server, webSocketPath, bufferSize), diff --git a/lib/framework/WiFiSettingsService.h b/lib/framework/WiFiSettingsService.h index fc906ed..2b520bd 100644 --- a/lib/framework/WiFiSettingsService.h +++ b/lib/framework/WiFiSettingsService.h @@ -19,7 +19,7 @@ #endif #ifndef FACTORY_WIFI_HOSTNAME -#define FACTORY_WIFI_HOSTNAME "" +#define FACTORY_WIFI_HOSTNAME ESPUtils::defaultDeviceValue("esp-react-") #endif class WiFiSettings {