Commit Graph

181 Commits

Author SHA1 Message Date
Daniel Markstedt
0589a0efad
Improve UX for file upload forms (#1299)
* Improve UX for file upload forms

* Fix styles for admin service list

* Turn tabs into spaces
2023-11-04 02:21:54 -07:00
Daniel Markstedt
7deb359886 Update tests 2023-11-04 11:59:54 +09:00
Daniel Markstedt
4eca0495a4 Refactor file upload code to make it safer 2023-11-04 11:59:54 +09:00
Daniel Markstedt
cb6174fc1d
Web UI: Remove workaround for listing English locale (#1291)
* Remove workaround for listing English locale

* Use pathlib object to construct upload path
2023-11-03 05:22:01 -07:00
Tony Kuker
776d84104c
Translation updates for 23.10 release (October, 2023) (#1243)
* Computer translated messages using Microsoft AI

---------

Co-authored-by: Tony Kuker <akuker@gmail.com>
Co-authored-by: Daniel Markstedt <markstedt@gmail.com>
2023-11-03 04:22:32 -07:00
Daniel Markstedt
e4c9b33778 Web UI: Create a system settings page 2023-11-03 19:25:19 +09:00
Daniel Markstedt
063e8ed32b
Static analysis fixes for Python codebase (#1277)
* Don't log names of internal symbols that can be used for attacks

* Add integrity check to dropzone.js library

* Better a11y of web form labels

* Safer handling of file download paths

* Don't invert boolean check

* Make backend auth check a flask abort

* Clean up indentation to remove unwanted tabs

* Run workflow either on PR events, or branch pushes, not both
2023-11-01 06:28:53 -07:00
Daniel Markstedt
029cf06c72
Web UI: Upload to tmp file name then rename if successful (#1272)
* Upload to tmp file name then rename if successful

* Move the dropzone.js operations back into web.py

* Move list_images() from file commands into piscsi commands (it was the only class method in that package that calls the protobuf interface)

* Remove now-redundant helptext
2023-10-31 14:54:04 -07:00
Daniel Markstedt
b5323d0cd3 Bump to Flask 3 / Werkzeug 3 2023-10-30 08:46:06 +09:00
dependabot[bot]
2ec44332d0
Bump postcss from 8.4.18 to 8.4.31 in /python/web (#1241)
* Bump postcss from 8.4.18 to 8.4.31 in /python/web

Bumps [postcss](https://github.com/postcss/postcss) from 8.4.18 to 8.4.31.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.18...8.4.31)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-22 19:06:48 +09:00
Daniel Markstedt
c1f6f3ffea Explicit lock of werkzeug lib version 2023-10-14 07:08:12 +09:00
Daniel Markstedt
ed2ff0ed73
Swedish translations (#1221) 2023-10-09 19:55:43 -05:00
Daniel Markstedt
65c1b194c5
Manage Samba and Netatalk with Webmin (#1217)
* Display status of Samba/Netatalk/vsftp in the footer, with links to Webmin module

* Add option to install Webmin and the netatalk2 module
2023-09-24 09:30:54 -07:00
Benjamin Krein
b514440957
Fix test failures in low-voltage PR (#1207)
* fix lint checks in web python

* fix lint checks in common python

* rework to pass tests in docker

* fix css style lint

* fix css style syntax
2023-09-04 08:08:42 -07:00
Benjamin Krein
b32027f8c0
Add web UI notification for under voltage/throttling events (#1203) 2023-08-31 23:23:12 -07:00
Daniel Markstedt
8089bb93f3
Launch python client services only after network-online target (#1197) 2023-07-31 12:12:53 -07:00
Daniel Markstedt
d3317e9702
Bump stylelint to 15.10.2 and remove deprecated module (#1189)
- Bump stylelint and stylelint-config-standard libs to the latest versions (security fixes)
- Remove deprecated stylelint-config-prettier module
- Scan the classic style sheet with stylelint and prettier in the github workflow
- Address stylelint and prettier issues in the classic stylesheet
- Bump prettier to 3.0.0
2023-07-28 22:53:12 -07:00
Daniel Markstedt
51f1e7eae7 Check for predictable network interface names in bridge check function, and always return a status message with the outcome of the check. Issue #1191 2023-07-26 18:19:22 -07:00
Daniel Markstedt
5a6d12c075
Swedish translation update 2023-07 (#1184) 2023-07-17 19:23:25 -05:00
Nemanja Lukic
c9209c3004 Spanish translation 2023-07-05 06:42:24 +02:00
dependabot[bot]
c08667a81d
Bump requests from 2.28.1 to 2.31.0 in /python/web (#1177) 2023-05-24 22:16:36 -07:00
Daniel Markstedt
1ce6fd1d55
Improve invalid path error handling, and escape single quotes in JS (#1174) 2023-05-21 15:32:19 -07:00
Daniel Markstedt
fa475d8b12
Proper handling of custom image dirs, #1170 (#1171) 2023-05-21 15:27:50 -07:00
Daniel Markstedt
b28da7001d
Always assign locale in detect_locale() (#1163)
* Always assign locale in detect_locale()

* Bump version of Debian used in CI builds from from buster to bullseye

* Update code comment

---------

Co-authored-by: nucleogenic <nr@nucleogenic.com>
2023-05-16 12:19:40 -07:00
dependabot[bot]
1c52dba979
Bump flask from 2.2.2 to 2.3.2 in /python/web (#1160) 2023-05-01 19:33:53 -07:00
Daniel Markstedt
09d0598c2f
Remove use of deprecated before_first_request decorator (#1162) 2023-05-01 19:21:17 -07:00
Tony Kuker
dafb2a6677
Updated Chinese Translations (#1140)
* updated translations

* remove obsolete translations

---------

Co-authored-by: Tony Kuker <akuker@gmail.com>
2023-04-22 19:00:27 -05:00
n4al
5caede988e
Updating the Spanish localisation (#1145) 2023-04-09 10:44:19 -07:00
Tony Kuker
e21251c228
Updates to French translation (#1141)
* updated AI translation of fr

* remove old translations

---------

Co-authored-by: Tony Kuker <akuker@gmail.com>
2023-04-07 09:53:42 -05:00
Daniel Markstedt
620f4e972e
Swedish translation update March 2023 (#1136) 2023-03-28 07:50:21 -07:00
cvictor
1c59a70b91
German language update (#1134) 2023-03-24 20:17:38 -07:00
Daniel Markstedt
ef3002dd41
Make ids unique in each subdir table (#1131) 2023-03-23 20:07:41 -07:00
Daniel Markstedt
ff017a9c1d
Web UI: Handling for non-existence of working dirs (#1130) 2023-03-23 20:07:19 -07:00
Daniel Markstedt
5414a78098
Remove git hash info (#1129) 2023-03-19 13:46:43 -07:00
Daniel Markstedt
f5ac9376b1
Allow copy and move file operations to opt-in to overwrite. (#1120)
- Allow create, copy and move file operations to opt-in to overwrite
- Use this when extracting packaged properties to avoid it getting stuck in the images dir
- Better error handling in common file operation methods
2023-03-06 09:17:28 -08:00
Daniel Markstedt
5fd0dc420b
WebUI: Traverse target dir to get subdirs to download/upload to (#1115) 2023-03-04 16:57:32 -08:00
Daniel Markstedt
ddf258db57
Fix bugs in the upload to images form (#1111)
* Fix formatting of the image subdir list for uploading

* Fix upload path
2023-02-28 22:46:52 -08:00
Daniel Markstedt
1082b6a7b4
Fix bugs in image subdir logic (#1108) 2023-02-26 14:15:13 -08:00
Daniel Markstedt
dd00547f92
Formatted image file data structure that breaks down by subdir (#1102)
- New utility method for the web app, which sorts image files into dicts where the subdir is the key
- In the web ui, display each subdir in a table nested in a details tag.
- Allow for picking destination subdir when uploading files
- Style the expandable details blocks in the images table
- Add a check for ~ paths to the is_safe_path() utility method
2023-02-24 17:28:58 -08:00
Daniel Markstedt
cfc3390b81
Noscript fallback messages; relocate js into templates (#1097) 2023-02-14 18:48:53 -08:00
Daniel Markstedt
f2b74046dd
Add noscript tag with notice when JavaScript is off (#1091) 2023-02-13 13:20:57 -08:00
Tony Kuker
7f188d3c99
Update Spanish, French and Chinese translations (#1095)
---------
Co-authored-by: Tony Kuker <akuker@gmail.com>
2023-02-08 21:40:33 -06:00
cvictor
870a332d56
German translation update (#1090) 2023-02-04 19:09:48 -08:00
Daniel Markstedt
fdb02f8829
Create venv if it is missing (#1089) 2023-02-03 22:24:21 -08:00
Daniel Markstedt
8b0a85a143
Don't show user controlled string in UI (#1087) 2023-01-31 15:08:38 -08:00
Daniel Markstedt
fc82ceae40
Update Swedish translation (Jan 2023) (#1086)
* Update translation
2023-01-29 11:12:35 -08:00
Daniel Markstedt
bf53958636
Fix handling of properties files when they're in subdirs (#1082)
- File operation class methods create parent dirs if they don't exist
- Avoid stripping path from file names in several places
- Simplify prop file matching logic: check for existence of file
- Remove list_files() method which is now unused
2023-01-28 14:36:07 -08:00
Daniel Markstedt
956195d67e
Ability to download and upload config files (#1083)
- Rename `/config/load` endpoint to `/config/action` since it has multiple functions
- Add a `send` function to above endpoint, which triggers a download of the config file, and use it with a new Download button on the index page
- Add an option to upload to the CFG_DIR
- Improve layout of the file transfer destination web form: radio buttons before labels, and better padding between options
- Add a test for config downloading
2023-01-28 14:34:34 -08:00
Daniel Markstedt
139a6ec371
New class method for creating image file with python; use python file… (#1079)
* New class method for creating image file with python; use python file operations across the board.

Also fixed several bugs:

Added check that a file exists before copying/moving/creating
Check that parent dir exists always passed
Incorrect return message token
2023-01-26 21:51:59 -08:00
Daniel Markstedt
f15baec58e
Web UI: Introduce separate endpoint for downloading files from the config dir (#1075)
Web UI: Introduce separate endpoint for downloading files from the config dir
2023-01-26 18:10:53 -08:00