* names, constants of reusable strings, removed unneeded `if`, replaced deprecated imports
* more deprecated imports replaced
* What is this?))
* Fix a path and quote a var in Dockerfile
* Addressing review comments
---------
Co-authored-by: Konstantin Koval <kkb@ukr.net>
Once you have more than a few paths assigned to a user, it becomes
quite hard to oversee the list.
Personally, I would add my albums to Photoview one by one, so I can
manage the processing better. For example, I can review and fix the face
recognition for one new album at a time, and I don't need to deal with
too much data.
Since I started to add the albums in a random order, it's relatively
hard to find which album is added and which is not.
An easy fix is to order the photo paths by their name.
- Extended the query of the rootAlbums to order them by path
The subquery returns all potential media id's. Typically, we have a couple of faces and thousands of media files.
A join is much faster.
With about 50k images and a face that was present in 2'000 images the query was unusable slow, it took about 60s.
This is a very important performance fix, as I think many users will run into it.
Maybe there are other areas where the same improvement is possible, I didn't check.
- Album resolvers has been refactored to make it easier to test, this is
done by converting some of the resolvers to actions.
- The album tests has been rewritten (and simplified) to accommodate the changes.
if the argument is a model. This ensures that the proper gorm hooks are
called which was causing the full screen view on the Places page to
crash.
Also fixed a bug in Messages.js that caused a crash.
- Add user preferences section to settings
- Make settings page available for all users
- Move log out button to settings page
- Make it possible for each user to choose their desired language