Commit Graph

251 Commits

Author SHA1 Message Date
D. Berge
b77ffa5d0f Ensure line statuses are visible on mobile 2020-10-02 00:42:19 +02:00
D. Berge
f30f108e08 React to preplot_lines notifications 2020-10-02 00:41:16 +02:00
D. Berge
381e3773c6 Allow editing of remarks in preplot lines list 2020-10-01 18:28:59 +02:00
D. Berge
3a87f8959a Add slot for empty line status 2020-10-01 15:31:24 +02:00
D. Berge
79a751393c Highlight active row in preplot lines list 2020-09-30 20:12:15 +02:00
D. Berge
60000eeaf1 Make preplot lines list searchable 2020-09-30 20:04:35 +02:00
D. Berge
d2c65b480b Add status information to preplot lines list 2020-09-30 19:44:15 +02:00
D. Berge
589fe07ad6 Add <dougal-line-status/> component.
It shows a graphical representation of the
acquisition status of a preplot line, as
stacked bars where each bar represents the
acquisition extent of a sequence. This is
complemented by colour denoting the raw/final/
ntbp status of the sequence and by a tooltip
with the same information. Sequence bars may be
made clickable by providing a function to the
"sequence-href" property; this function should
take a sequence object and return a URL.
2020-09-30 19:41:09 +02:00
D. Berge
2733223037 Refresh the log more aggressively.
On the backend, the events endpoint caches responses
by ETag in order to reduce the load on the database
and response times. That cache is supposed to be
invalidated with the middleware receives a notification
that the underlying data has changed. However, that
change might arrive just *after* the HTTP request,
meaning that if we let the browser do its thing we
will probably be returning stale data.

So what we do is we explicitly request a non-cached
response when we know that something has changed
because we changed it ourselves.

What we do not do is bypass the cache if we receive
a change event notification, as we assume that the
HTTP roundtrip will be more than sufficient for
the server to have invalidated (and perhaps even
refreshed) its response.
2020-09-29 00:30:40 +02:00
D. Berge
bf313dd8e5 Allow editing of remarks in sequence list 2020-09-27 19:25:45 +02:00
D. Berge
371030e61e Add optional callback to Vuex API action.
The callback has the signature (err, res) where
res is the result object from the fetch() request
and err is non-null if an error occurred and fetch()
threw.

The callback is called before res.json() has had a
chance to run it is really not recommended to
consume the body from this callback as this will cause
an error in the API action itself.
2020-09-27 19:23:04 +02:00
D. Berge
be242e109a Request map events from server as GeoJSON 2020-09-26 18:06:22 +02:00
D. Berge
ae8a25f240 Avoid making unnecessary map requests 2020-09-26 01:34:14 +02:00
D. Berge
39b425b392 Add comment 2020-09-26 01:24:12 +02:00
D. Berge
f2024a7b99 Abort pending requests on successive map refreshes 2020-09-26 01:18:12 +02:00
D. Berge
b383f4e4c0 Slightly increase size of event markers 2020-09-26 01:17:34 +02:00
D. Berge
1d8036b429 Protect against events without payload.
These will eventually arrive when we stop ignoring
events > 8 KiB.
2020-09-26 01:16:25 +02:00
D. Berge
358eb44de3 Don't report error if a fetch was aborted 2020-09-26 01:15:32 +02:00
D. Berge
6badff2f76 Switch event map layers to ‘push’ style update.
Still no updating on new / deleted events though.
2020-09-25 22:42:33 +02:00
D. Berge
949f42c1dc Show events on map.
Partial implementation. Notably, it does not yet update
when events are added/modified/deleted.

Related to #48.
2020-09-25 18:33:55 +02:00
D. Berge
ab2cf81327 Broadcast an already parsed JSON payload 2020-09-25 18:26:04 +02:00
D. Berge
72e06c9f2a Give more info to the user in disconnection icon 2020-09-23 22:23:42 +02:00
D. Berge
c25f350c7a Show online indicator.
Closes #37.
2020-09-23 22:18:51 +02:00
D. Berge
46b9978d3f Allow searching sequence list by line.
Closes #40.
2020-09-23 21:13:55 +02:00
D. Berge
808fa71c5f Change colour of highlighted row in sequence list.
The default pink colour in night mode wasn't overly popular.

Related to #36.
2020-09-23 21:05:08 +02:00
D. Berge
7898cc907d Set, retrieve and process QC labels on frontend 2020-09-20 18:12:48 +02:00
D. Berge
92f15d00de Check for Notifications in the window object 2020-09-19 14:48:03 +02:00
D. Berge
b58dfc847a Adapt footer to small viewports 2020-09-15 03:06:31 +02:00
D. Berge
6c582e6b4b Notifications control: cancel waiting state if switched off 2020-09-15 03:02:12 +02:00
D. Berge
47166b65e0 Adapt footer to small viewports 2020-09-15 02:54:48 +02:00
D. Berge
f32066695e Add notifications control.
Experimental. Pushes updates of interest (currently
new / changed log entries) via the Notifications API.
Can be enabled or disabled by the user at any time.
2020-09-15 02:41:05 +02:00
D. Berge
3d091eec53 Adapt to small viewports 2020-09-15 02:40:19 +02:00
D. Berge
00e00a2ae6 Change page title 2020-09-15 00:39:46 +02:00
D. Berge
0bbe29febc Make QC tab more mobile friendly.
Closes #38.
2020-09-14 23:58:26 +02:00
D. Berge
d93c70b9eb Make log reactive.
Automatically reloads when events have been changed.
2020-09-14 23:56:30 +02:00
D. Berge
946e05c283 Add project schema to Vuex state 2020-09-14 23:55:46 +02:00
D. Berge
5980b7d231 Implementation of QC qualification UI (non-functional).
This commit implements a possible interface for QC
qualifications, with a mechanism to override QC results.

As of this commit, no changes are saved to the backend.
2020-09-14 20:48:27 +02:00
D. Berge
ffcc3ef8cb Remove dead code 2020-09-14 20:46:56 +02:00
D. Berge
4b3a254119 Ensure labels are unique 2020-09-14 14:06:49 +02:00
D. Berge
5a96701e46 Use labels from preset remarks 2020-09-14 13:46:46 +02:00
D. Berge
165640599c Highlight clicked row in sequence list.
Clicking again unhighlights.

Closes #36.
2020-09-14 11:36:37 +02:00
D. Berge
7b0bcb5256 Report timestamp when QCs were last run 2020-09-12 19:53:20 +02:00
D. Berge
ea34bbc7bb Let the user know if there are no QCs 2020-09-12 19:16:41 +02:00
D. Berge
b28224475e Make style scoped 2020-09-12 19:16:18 +02:00
D. Berge
c82caa1d1f Add QC view to web interface.
This commit implements most of what is required
by #23, with the exception of labels processing
as stated in https://gitlab.com/wgp/dougal/software/-/issues/23/designs/20200908_101516.jpg#note_408968681
2020-09-10 23:27:53 +02:00
D. Berge
08656a0b5e Fix reversed actions in calendar 2020-09-10 02:19:46 +02:00
D. Berge
5fdd84fadf Change style of raw data columns in sequence list 2020-09-10 02:19:07 +02:00
D. Berge
3c4ed6665c Reorder columns in sequence list 2020-09-08 17:46:25 +02:00
D. Berge
c0592cb72f Show correct sequence status.
Fixes #24.
2020-09-08 16:11:06 +02:00
D. Berge
0a547666e3 Fix filtering of events log.
Closes #22.
2020-09-07 17:23:00 +02:00