When merging WebDAV and GPS features, we forgot to update the WebDAV
feature to also upload the GPS files.
WebDAV had hardcoded knowledge of which files exist and its own FileKind
enum. Move the FileKind enum into QMDL store so that webdav can be
agnostic over which files belong to a recording, so this is less likely
to happen again.
(This refactor was AI-assisted)
* Add support for WebDAV
* Fix get_unuploaded_entries_with_age to use start_time
* Use better pattern when matching join! result
Co-authored-by: Markus Unterwaditzer <markus-github@unterwaditzer.net>
* Refactor Webdav with better string ownership
* Unformat Cargo.toml
* Add timeout config
* Use a single url config instead of host and path
* QMDL store returns single unuploaded entry at a time
* Reset Cargo.lock
---------
Co-authored-by: Markus Unterwaditzer <markus-github@unterwaditzer.net>
When there is a significant difference between the user's browser's time
and the system time, a button appears in the web UI to fix the system
time. This time will then be used to correct both data inside of PCAPs
and any metadata.
We don't actually set the system time to this value. Instead, rayhunter
adjusts any timestamps it handles by an offset. That offset defaults to
zero, and the user adjusts it by hitting the button in the web UI. The
main reason for this is device portability.
I haven't investigated whether it would actually be easy to set the real
system time. It's possible that it works the same way across all
devices.