Commit Graph

458 Commits

Author SHA1 Message Date
Thomas Basler
7d1cdb0536 Fix #322: German umlauts create mistakes when using them in passwords
See https://stackoverflow.com/questions/3626183/javascript-base64-encoding-utf8-string-fails-in-webkit-safari
2022-11-09 19:42:47 +01:00
Thomas Basler
e0b069ff3d Password protection for limit/power settings API 2022-11-08 18:34:00 +01:00
Thomas Basler
0a6965c015 webapp: Implemented logged-out event 2022-11-07 23:34:54 +01:00
Thomas Basler
107330c70c webapp: Fix location of Logout button 2022-11-07 20:51:09 +01:00
Thomas Basler
233efe3a50 Password protection for firmware update API 2022-11-07 19:02:07 +01:00
Thomas Basler
c2de7dbdb8 webapp: Send X-Requested-With header for all requests
This prevents browser password dialogs in all cases
2022-11-07 18:49:36 +01:00
Thomas Basler
fe8b68d2be Password protection for config settings API 2022-11-07 18:48:02 +01:00
Thomas Basler
7798854b2b webapp: Change authHeader to return Headers object instead of Record<string, string> 2022-11-04 00:01:34 +01:00
Thomas Basler
a646eae51a Password protection for inverter settings API 2022-11-03 21:44:01 +01:00
Thomas Basler
902e632f51 Password protection for mqtt settings API 2022-11-03 21:31:50 +01:00
Thomas Basler
3a2f73a2b3 Password protection for ntp settings API 2022-11-03 21:20:12 +01:00
Thomas Basler
e605e42c3e Password protection for network settings API 2022-11-03 21:13:42 +01:00
Thomas Basler
b9d2978bf9 Password protection for dtu settings 2022-11-03 21:05:51 +01:00
Thomas Basler
8d14dbd367 Password protection for security settings API
Also implemented the base functionallity to protect further API endpoints.
2022-11-03 21:00:13 +01:00
Thomas Basler
af4b47beeb webapp: Use scss instead of css
Enables easier theming in future
2022-11-02 20:39:18 +01:00
Thomas Basler
c85d71abfd webapp: Added icon to navbar 2022-11-01 17:37:19 +01:00
Thomas Basler
ed6e9dd9cd webapp: Use correct Complimentary colours 2022-11-01 16:54:13 +01:00
Thomas Basler
438ce36bab Added sum values of all inverters to web UI 2022-11-01 16:33:20 +01:00
Thomas Basler
69b675bc64 BREAKING CHANGE: Structure WebAPI /api/livedata/status changed
The different inverter data are now in a subobject called "inverters".
This is required to extend the API by other data then the inverter values
2022-11-01 15:04:05 +01:00
Thomas Basler
860710c47a Changed minimal limit from 10% to 2% 2022-10-31 15:23:09 +01:00
Thomas Basler
3612dd3d52 Apply correct unit of measure format
See https://en.wikipedia.org/wiki/Space_(punctuation)#Unit_symbols_and_numbers
2022-10-31 15:12:32 +01:00
Thomas Basler
20e856ecfc Use correct locale for number formatting
Also moved numberFormat method so separate file
2022-10-31 15:08:56 +01:00
Thomas Basler
dfd553090e webapp: Round to relevant digits in live status 2022-10-31 11:51:15 +01:00
Thomas Basler
57a63f690e webapp: Added additional reboot message after OTA firmware upgrade 2022-10-31 00:45:01 +01:00
Thomas Basler
9c7dc681b1 Fix #268: Allow12 digit dtu serial numbers
They will also be generated by OpenDTU itself
2022-10-25 22:53:46 +02:00
Thomas Basler
c2c57e33c3 webapp: Only allow max_power in input field if available 2022-10-19 22:16:35 +02:00
Thomas Basler
f9221606c6 webapp: create interface for LimitConfig 2022-10-19 22:16:33 +02:00
Thomas Basler
03f73796d2 webapp: create interface for LimitStatus 2022-10-19 22:16:32 +02:00
Thomas Basler
f32b561627 Show detected max power in dev info dialogue 2022-10-19 22:16:30 +02:00
Thomas Basler
31849ec159 webapp: Use BasePage for HomeView 2022-10-18 18:44:35 +02:00
Thomas Basler
4fee366926 webapp: Fixed line break on ipads 2022-10-18 18:30:05 +02:00
Thomas Basler
03066af1c4 webapp: Implement BasePage component for default views 2022-10-18 18:29:58 +02:00
Thomas Basler
93512e2e0c webapp: create interface for LiveDataStatus 2022-10-17 23:31:20 +02:00
Thomas Basler
e3d732770f webapp: created interface for EventlogStatus 2022-10-17 21:26:44 +02:00
Thomas Basler
cae6ddccb7 webapp: add utils method timestampToString 2022-10-17 21:13:18 +02:00
Thomas Basler
4775f34f5b webapp: create interface for DevInfoStatus 2022-10-17 20:56:52 +02:00
Thomas Basler
2682ca8dec webapp: create interface for MqttStatus 2022-10-17 20:46:35 +02:00
Thomas Basler
2aad0cbe70 webapp: create interface for NetworkStatus 2022-10-17 20:43:27 +02:00
Thomas Basler
19ee117a53 webapp: create interface for NtpStatus 2022-10-17 20:36:02 +02:00
Thomas Basler
386b6b73bd webapp: ceate interface for SystemStatus 2022-10-17 20:32:14 +02:00
Thomas Basler
61924a2768 webapp: create interface for SecurityConfig 2022-10-17 20:07:48 +02:00
Thomas Basler
05eb741833 webapp: create interface for NtpConfig 2022-10-17 20:04:20 +02:00
Thomas Basler
c52f1eeaa2 webapp: create interface for NetworkConfig 2022-10-17 20:02:05 +02:00
Thomas Basler
a9a6a40eb8 webapp: create interface for MqttConfig 2022-10-17 19:59:11 +02:00
Thomas Basler
c735fb8c3c webapp: create interface for DtuConfig 2022-10-17 19:53:43 +02:00
Thomas Basler
d798963df5 webapp: Migrated from vue-cli to vite 2022-10-17 19:26:04 +02:00
Thomas Basler
f1e30a743a webapp: Migrate BootstrapAlert to Typescript 2022-10-17 19:26:04 +02:00
Thomas Basler
8ed48db193 webapp: Fix some lint errors 2022-10-17 19:26:04 +02:00
Thomas Basler
d86983b8d0 webapp: Split createApp into multiple lines
Better readability
2022-10-17 19:26:04 +02:00
Thomas Basler
9bc833e904 webapp: Implement App.vue as Typescript 2022-10-17 19:26:04 +02:00
Thomas Basler
2b28f69d15 webapp: Add missing field to mqtt info view 2022-10-17 19:26:04 +02:00
Thomas Basler
7e53160162 webapp: Implement Navbar as typescript 2022-10-17 19:26:04 +02:00
Thomas Basler
66d296a97b webapp: Reorganize .vue files 2022-10-17 19:26:04 +02:00
Thomas Basler
f193e0cafc Show inverter tabs only if >1 inverter is available 2022-10-17 19:26:04 +02:00
Thomas Basler
be807286cc Nicer view of invert live data headings 2022-10-15 14:06:54 +02:00
Thomas Basler
9f03d31e7c webapp: only show absolute limit if available 2022-10-15 01:43:10 +02:00
Thomas Basler
024e16ee85 webapp: Only include required icons to reduce file size 2022-10-15 01:22:53 +02:00
Thomas Basler
d37543fd95 Show current limit in header of live view 2022-10-14 19:16:37 +02:00
Thomas Basler
8d6cbc617b webapp: Added interface to set AP password 2022-10-13 19:54:27 +02:00
Thomas Basler
d2feac7a00 Migrate config from binary blob to json 2022-10-12 19:46:21 +02:00
Thomas Basler
07eb6472b5 webapp: Show limit only with 1 digit 2022-10-12 18:29:16 +02:00
Thomas Basler
e762abd18f Show RF chip type in SystemInfoView 2022-10-12 00:17:40 +02:00
Thomas Basler
9d1678c406 Remove days from eventlog display 2022-10-11 23:04:43 +02:00
Thomas Basler
283eae295b Show absolute limit in limit dialogue 2022-10-10 19:20:19 +02:00
Thomas Basler
88ad6495d1 Implemented inverter restart via web ui 2022-10-09 13:48:35 +02:00
Thomas Basler
8e54497c95 Take hours >23 into account
Count days in this case
2022-10-07 18:33:24 +02:00
Thomas Basler
20b799b630 webapp: Show NRF24 connection status 2022-10-06 23:29:17 +02:00
Thomas Basler
c33c73fe01 webapi: Rename limit to limit_relative 2022-10-06 23:29:14 +02:00
Thomas Basler
9b68eb6beb webapp: Show model name 2022-10-06 18:35:04 +02:00
Thomas Basler
b756912fd6 webapp: Added information about firmware updates 2022-10-05 22:01:32 +02:00
Thomas Basler
7ff0f111af Rename firmware_version to config_version 2022-10-05 18:23:04 +02:00
Thomas Basler
2eafd69276 Show only valid device info data in webapp 2022-10-04 22:15:50 +02:00
Thomas Basler
f6a416bf8f webapp: Added turnon/turnoff dialogue 2022-10-04 19:38:35 +02:00
Thomas Basler
bd17ca5199 webapp: Add "Not Producing" indicator 2022-10-01 12:20:31 +02:00
Thomas Basler
00b1ff84be Rename age_critical to rechable in web api
Also use new method to determine whether the inverter is reachable
2022-10-01 10:48:17 +02:00
Thomas Basler
557a301c09 webapp: Show status of last limit set command 2022-10-01 00:43:11 +02:00
Thomas Basler
5964b91d49 webapp: Implemented first dialogue to set the inverter limit 2022-09-30 18:34:30 +02:00
Thomas Basler
e5f73771d3 webapp: Extended NTP admin to sync time manually 2022-09-20 19:52:16 +02:00
Thomas Basler
b0b8a2c088 webapp: implemented config management frontend 2022-09-17 11:37:25 +02:00
Thomas Basler
f5f38af25f webapp: added link to github discussions 2022-09-12 23:07:24 +02:00
Thomas Basler
c5eb449f21 webapp: Extended AboutView with additional links and information 2022-09-12 22:59:00 +02:00
Thomas Basler
9674e32c0c Return only the eventlog of one inverter
- Fix #131
- Prevent large responses in case of many inverters + many log entries
2022-09-12 18:48:18 +02:00
Thomas Basler
72b77a22db webapp: Show current inverter limit 2022-09-09 20:18:00 +02:00
Thomas Basler
27bb924f4a webapp: add hint regarding hostname 2022-09-06 19:05:24 +02:00
Thomas Basler
86f01e5cc4 webapp: Show complete generated hostname in network info view 2022-09-06 18:45:32 +02:00
battifreund
b4137d4da9 Option for expire_after 2022-08-31 23:35:28 +02:00
Thomas Basler
f23a83eb79 webapp: Remove unused variable 2022-08-29 22:47:08 +02:00
Ingo Theiss
8b89acd039 Make MQTT input a password field 2022-08-27 11:42:22 +02:00
Thomas Basler
217fddf405 Added small dialog to show inverter info (firmware version etc.) 2022-08-11 16:42:50 +02:00
Thomas Basler
35a72acf34 Fix #71: Extend mqtt hostname from 31 characters to 128 characters 2022-08-10 18:59:30 +02:00
Thomas Basler
c5b29567e1 webapp: show dialogue before deleting inverter 2022-08-09 21:32:25 +02:00
Thomas Basler
7e9a06d89e webapp: Mark delete inverter icon in red 2022-08-09 21:04:54 +02:00
helgeerbe
4435fbcdad Add support for MQTT TLS
To support TLS its necessary to use another MQTT library.
The new lib is a drop-in replacement for the async-mqtt-client.
2022-08-06 00:14:44 +02:00
Thomas Basler
bfb93b6b9b webapp: added additional hints regarding Irradiation calculation 2022-07-21 22:28:40 +02:00
Thomas Basler
68c7e204e5 webapp: Added hint showing the additional inverter parameters 2022-07-21 20:53:22 +02:00
Thomas Basler
946ee659b6 Show link to current commit in system overview 2022-07-20 22:31:15 +02:00
Thomas Basler
bc56477c0e Enhance live view
* Load initial data immediatly
* Count data age on client side (sync with server)
2022-07-20 20:55:58 +02:00
Thomas Basler
608912e9f3 Show network status (WiFi/Ethernet) in network info view 2022-07-20 19:21:31 +02:00
Thomas Basler
1124a9aaa1 Implemented first version of Home Assistant Auto Discovery 2022-07-18 22:28:03 +02:00
Axel Hinrichs
7809a8e9cd [webapp] close navbar when item is clicked 2022-07-15 17:44:24 +02:00
Thomas Basler
608456b14d webapp: Added loading animation for ntp admin 2022-07-13 18:46:58 +02:00
Thomas Basler
1893f4de3d webapp: apply number format based on locale in live view 2022-07-12 21:07:46 +02:00
Thomas Basler
c0ed5f3e14 webapp: Added loading animations to several views 2022-07-12 20:56:30 +02:00
Thomas Basler
06529f7187 Show eventlog in live view 2022-07-09 12:44:13 +02:00
Thomas Basler
363dfc167e Different color for phase in live view 2022-07-08 18:03:37 +02:00
Axel Hinrichs
f2c8b1bb45 [webapp] Layout HomeView 2022-07-08 15:43:05 +02:00
Axel Hinrichs
11456ad621 [webapp] HardwareInfo.vue fix prop types 2022-07-06 22:03:31 +02:00
Thomas Basler
1b5e723e85 Fix #18: Allow max 64 characters for password
64 characters are already supported by the backend
2022-07-06 19:26:39 +02:00
Axel Hinrichs
43202e1e81 [webapp] align live view table header with data 2022-07-05 10:12:28 +02:00
Axel Hinrichs
88d29a9b43 [webapp] HomeView more responsive
* change <div v-for> into <template v-for> to avoid empty divs for
  nonexisting channels

* cleanup bootstrap grid / flex classes
2022-07-05 00:41:23 +02:00
Axel Hinrichs
c155bf3d01 [webapp] main as container-xxl 2022-07-05 00:38:50 +02:00
Axel Hinrichs
6a8af8fdc0 [webapp] fix HomeView component nesting
* move content template after page-header
2022-07-04 20:57:06 +02:00
Axel Hinrichs
9c56b97405 [webapp] reduce api requests on info pages 2022-07-04 16:29:48 +02:00
pangamut
139e116a3a
Update MqttInfoView.vue
Typo: Tnterval -> Interval
2022-07-03 09:27:03 +02:00
Axel Hinrichs
04cb1b2654 Fix websocket proto 2022-06-30 11:54:20 +02:00
Thomas Basler
d17d7f7082 Enhance inverter edit
* Edit procedure was replaced by a modal window
* Allows setting of max power of the 4 strings
2022-06-24 23:08:04 +02:00
Thomas Basler
9913ab7ddf webapp: Rename channel names 2022-06-22 21:38:12 +02:00
Thomas Basler
a53f98882c webapp: Upgraded firmware upgrade to typescript 2022-06-22 20:31:20 +02:00
Thomas Basler
e6c36dd0db webapp: migrated first part form javascript to typescript 2022-06-22 00:06:35 +02:00
Thomas Basler
5100c44c23 webapp: Use volar formatter 2022-06-21 20:32:43 +02:00
Thomas Basler
cd35261570 webapp: Added defineComponent to all components 2022-06-21 20:27:03 +02:00
Thomas Basler
c8075d533f webapp: Upgrade from Javascript to TypeScript 2022-06-21 20:16:37 +02:00
Thomas Basler
3b9d117b4d Show current git hash in web gui 2022-06-20 20:56:50 +02:00
Thomas Basler
9542cd9be3 webapp: fixed uptime display 2022-06-20 20:36:34 +02:00
Thomas Basler
b4aad4b3c7 webapp: select first inverter when loaded 2022-06-18 05:20:01 +02:00
Thomas Basler
670c2d6762 Show detected inverter type in webapp 2022-06-18 01:51:18 +02:00
Thomas Basler
df45541ae8 webapp: Optimized websocket handling
* auto reconnect
* Url generation
* Disconnect on component change
2022-06-18 01:37:47 +02:00
Thomas Basler
17cc2a475d Rename websocket from ws to livedata
Allows devServer to proxy websockets as well...
2022-06-18 01:14:31 +02:00
Thomas Basler
f1566eaab7 webapp: Fix websocket url 2022-06-16 15:50:59 +02:00
Thomas Basler
d5e8f75ab0 webapp: added data age to live view 2022-06-16 15:32:32 +02:00
Thomas Basler
9265bc0add webapp: added publish interval parameter 2022-06-16 15:03:30 +02:00
Thomas Basler
81159fba4e webapp: Added live view 2022-06-16 13:52:07 +02:00
Thomas Basler
9ba1eb6d7f Webapp: Added some text to About view 2022-06-16 01:45:09 +02:00
Thomas Basler
6849bd8f6d Webapp: Beautify different views 2022-06-16 00:01:17 +02:00
Thomas Basler
ce828196e5 webapp: Added DtuAdminView 2022-05-27 01:15:11 +02:00
Thomas Basler
938ed75d36 webapp: fix mqtt lwt topic view 2022-05-27 01:00:39 +02:00
Thomas Basler
c4bd3c196f webapp: implemented firmware upgrade UI 2022-05-23 23:25:53 +02:00
Thomas Basler
34e86437d2 webapp: Added gui to manage inverters 2022-05-04 21:55:18 +02:00
Thomas Basler
a07c1bc231 webapp: show uptime in days as well 2022-04-28 23:17:00 +02:00
Thomas Basler
2748e2e97d Show uptime in webgui 2022-04-28 21:56:11 +02:00
Thomas Basler
e6bbca05bd webapp: added lwt config 2022-04-22 20:59:38 +02:00
Thomas Basler
3ca829de1a webapp: beautify dhcp checkbox 2022-04-21 23:28:31 +02:00
Thomas Basler
d247d01603 webapp: Show additional mqtt parameters 2022-04-21 23:24:03 +02:00
Thomas Basler
699939b908 webapp: added first version of mqtt info page 2022-04-20 23:19:32 +02:00
Thomas Basler
fa236fc180 webapp: added settings view for mqtt configuration 2022-04-20 23:10:16 +02:00
Thomas Basler
c4d0bb3d3e webapp: Added timezone selector based on location 2022-04-18 01:43:49 +02:00
Thomas Basler
b4cd4faa7c webapp: Added timezone description to ntp status page 2022-04-18 01:43:06 +02:00
Thomas Basler
62768395aa webapp: code cleanup 2022-04-18 00:20:25 +02:00
Thomas Basler
6d0ed5ef44 webapp: Added ntp settings screen 2022-04-18 00:20:13 +02:00
Thomas Basler
855ee19cde webapp: added info page to show current time settings 2022-04-17 23:53:11 +02:00
Thomas Basler
e6c954456e webapp: finally show alert 2022-04-17 14:26:55 +02:00
Thomas Basler
e30c43a66a webapp: first try of post implementation (not working) 2022-04-17 04:03:54 +02:00
Thomas Basler
9e5906e5aa webapp: Implemented first part of the network settings 2022-04-15 14:23:25 +02:00
Thomas Basler
37288b0996 webapp: added system overview 2022-04-14 13:22:40 +02:00
Thomas Basler
0c7078febd webapp: Code cleanup 2022-04-13 22:59:24 +02:00
Thomas Basler
fbedd75e0e webapp: Added network info screen 2022-04-13 22:43:26 +02:00
Thomas Basler
917a091bf2 webapp: Added first simple navigation with two subpages 2022-04-12 23:31:47 +02:00
Thomas Basler
9679251b16 webapp: Added initial vue app 2022-04-11 21:48:12 +02:00