D. Berge
15242de2d9
Add configuration settings tab to project navigation bar.
...
Only for admin users.
2024-05-01 10:40:04 +02:00
D. Berge
b4aed52976
Add project settings cloning component.
...
Asks for the new ID, name and root file path.
2024-05-01 10:40:04 +02:00
D. Berge
1b85b5cd4b
Remove cloning control stub.
...
Cloning takes place from the project list, we don't really need
to duplicate that functionality here for the time being.
2024-05-01 10:40:04 +02:00
D. Berge
f157f49312
Use project list from Vuex
2024-05-01 10:40:04 +02:00
D. Berge
3d42ce6fbc
Add context menu with ‘Edit project settings’ option
2024-05-01 10:40:04 +02:00
D. Berge
4595dddc24
Add ProjectSettings view
2024-05-01 10:40:04 +02:00
D. Berge
642f5a7585
Add project configuration components.
...
The configuration settings are quite complex so we divide the
GUI into modular components.
2024-05-01 10:40:04 +02:00
D. Berge
e7c29ba14c
Add file browsing components.
...
Essentially, these are a file selection dialog.
2024-05-01 10:40:04 +02:00
D. Berge
d919fb12db
Add control to filter out archived projects in ProjectList
2024-05-01 10:40:04 +02:00
D. Berge
c21f9c239e
Merge branch '304-refresh-authentication-status-for-connected-users' into 'devel'
...
Resolve "Refresh authentication status for connected users"
Closes #304
See merge request wgp/dougal/software!56
2024-05-01 08:23:14 +00:00
D. Berge
2fb1c5fdcc
Process incoming JWT WebSocket messages
2024-05-01 10:20:09 +02:00
D. Berge
c6b99563d9
Send a request for new credentials at regular intervals.
...
Every five minutes, a message is sent via WebSocket to ask the
server for a refreshed JWT token.
2024-05-01 10:19:00 +02:00
D. Berge
76a90df768
Send "Authorization: Bearer …" on API requests.
...
We need this because we might have more recent credentials than
those in the cookie store.
2024-05-01 10:15:26 +02:00
D. Berge
ea8ea12429
Add JWT Vuex getter
2024-05-01 10:14:55 +02:00
D. Berge
7bd2319cd7
Allow setting credentials directly via the Vuex store.
...
Until now, credentials were set indirectly by reading the browser's
cookie store. This change allows us to receive credentials via other
mechanisms, notably WebSockets.
2024-05-01 10:13:14 +02:00
D. Berge
a9270157ea
Process JWT messages over WebSockets
2024-05-01 10:06:35 +02:00
D. Berge
d2f94dbb88
Refactor JWT token verification
2024-05-01 10:05:48 +02:00
D. Berge
1056122fff
Fix missing parenthesis
2024-04-28 18:37:30 +02:00
D. Berge
9bd0aca18f
Add debugging statements to ETag middleware
2023-11-04 10:45:50 +01:00
D. Berge
60932300c1
Ensure that project is defined.
...
Which would not be in the case of the `project` event unless we
look at the `new` and `old` properties.
2023-11-04 10:45:50 +01:00
D. Berge
12307b7ae6
Refactor ETag watcher to use path-to-regexp.
...
Simplifies the code and makes it easier to look at.
2023-11-04 10:45:50 +01:00
D. Berge
ceeaa4a8f3
Add path-to-regexp depedency.
2023-11-04 10:45:50 +01:00
D. Berge
3da54f9334
Always request a fresh response from the config endpoint
2023-11-04 10:36:58 +01:00
D. Berge
4c612ffe0a
Take etc/www/config.json out of revision control.
...
This file contains site-specific configuration. Instead, an
example.config.json is now provided.
2023-11-03 21:30:22 +01:00
D. Berge
7076b51a25
Add auth.access.role(roles) higher order middleware
2023-11-03 21:22:02 +01:00
D. Berge
fe5ca06060
Return a JSON response for all 404s.
...
When an endpoint did not exist, the default expressjs response
was being returned, which is text/html.
2023-11-03 18:52:31 +01:00
D. Berge
71467dddf9
Report also request body size, if applicable
2023-11-03 18:51:43 +01:00
D. Berge
246f01efbe
Report requested URLs and user data in debug mode
2023-11-02 23:52:15 +01:00
D. Berge
68bf853594
Add comments
2023-11-02 23:51:53 +01:00
D. Berge
4a18cb8a81
Remove useless code
2023-11-02 23:51:05 +01:00
D. Berge
c615727acf
Don't require authentication for the /version endpoint.
...
It will still hide the `db` and `os` values from non-admins though.
2023-11-02 23:48:46 +01:00
D. Berge
2e21526fca
Simplify versions handling
2023-11-02 23:47:13 +01:00
D. Berge
3709070985
Add a start script to package.json.
...
So that `npm start` will run.
2023-11-02 23:40:41 +01:00
D. Berge
2ac963aa4f
Update redoc-cli version
2023-11-02 20:23:04 +01:00
D. Berge
db7b385d66
Don't show logo on graph toolbar
2023-11-02 20:05:18 +01:00
D. Berge
d91a1b1302
Do show a legend for shots with final data.
...
Fixup for commit e4607a095b .
2023-11-02 20:03:57 +01:00
D. Berge
fa031d5fc9
Update API specification
2023-11-02 19:59:02 +01:00
D. Berge
620d5ccf47
Add /version API endpoint
2023-11-02 19:48:30 +01:00
D. Berge
f0fa2b75d5
Add more details to version() return value
2023-11-02 19:46:44 +01:00
D. Berge
46bb207dfb
Remove debugging artefact
2023-11-02 15:32:48 +01:00
D. Berge
f7a386d179
Merge branch '287-the-project_summary-view-is-too-slow' into 'devel'
...
Resolve "The `project_summary` view is too slow"
Closes #287
See merge request wgp/dougal/software!55
2023-11-02 14:29:35 +00:00
D. Berge
e4607a095b
Don't show a legend for points without gun data
2023-11-02 15:27:06 +01:00
D. Berge
4b0d42390f
Show a message if plotting a c-o with no final data
2023-11-02 15:26:37 +01:00
D. Berge
114e41557f
Don't show graph if there is no data
2023-11-02 15:25:45 +01:00
D. Berge
e605320503
Refresh shotlog on sequence change
2023-11-02 15:24:45 +01:00
D. Berge
6606c7a6c1
Do not show c-o for raw sequences
2023-11-02 15:24:28 +01:00
D. Berge
e3bf671a49
Also monitor raw_shots events
2023-11-02 15:23:45 +01:00
D. Berge
3e08dfd45b
Ignore shots without source data
2023-11-02 13:51:07 +01:00
D. Berge
f968cf3b3c
Bump the required database schema version
2023-11-02 13:25:34 +01:00
D. Berge
b148ed2368
Add refresh-project-summary periodic task.
...
It listens for events that might indicate that the project_summary
materialised view needs to be refreshed and schedules a refresh.
Refreshes are throttled to a maximum of one every throttlePeriod
milliseconds so that things don't get too crazy for instance when
importing a lot of data.
2023-11-02 13:25:34 +01:00