Michael Mayer
db5edb8e4d
Add flag for 360° panoramas #352
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-15 20:59:33 +02:00
Michael Mayer
be94ff624c
Edit photo type and sort by recently edited #394
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-14 12:42:31 +02:00
Michael Mayer
8989c987a2
Unstack all types, except primary and sidecar files #394
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-14 11:00:49 +02:00
Michael Mayer
5648c9616e
Backend: Refactor location data tables and entities
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-12 08:27:05 +02:00
Michael Mayer
00e334657a
Photo: Set defaults for PlaceID, GeoID, CameraID and LensID
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-12 04:48:17 +02:00
Michael Mayer
e1c45c4d5f
Rename "location" to "geo" to have a short, common prefix for geo data
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-11 23:43:29 +02:00
Michael Mayer
99eaae0816
Backend: Import JSON metadata from Google Photos
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-11 16:46:29 +02:00
Michael Mayer
2c6552ff73
Backend: Remove log in Photo.Create()
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-11 09:41:35 +02:00
Michael Mayer
174e6d53c9
Backend: Use FirstOrCreate() instead of Create() when adding new photos
...
Not perfect as metadata should rather be merged. Ideally some kind of mutex avoids database conflicts / locks / errors in the future. Right now, we're (intentionally) using the database as "mutex" so that the application code needs less complexity. This is especially problematic on powerful servers with many CPUs and index workers. See also issue #392 .
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-10 17:09:39 +02:00
Michael Mayer
3f9454876d
Concurrency fix for photo details #357
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-09 17:45:56 +02:00
Michael Mayer
e2845981c1
Concurrency fixes for cameras, lenss, folders, keywords, and labels #357
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-07 20:44:33 +02:00
Michael Mayer
6273e77867
Try saving photo a second time after deadlocks #357
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-07 12:59:47 +02:00
Michael Mayer
3fec93ee4e
Load existing photo if uid was found in YAML sidecar file #357
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-07 12:20:38 +02:00
Michael Mayer
d1db3d04f7
Logs: Improve event log and messages in i18n package
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-07 10:51:55 +02:00
Michael Mayer
8f74fdb8a0
Backend: Fix Photo.GetDetails()
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-06 20:20:03 +02:00
Michael Mayer
eeef16f07e
Backend: Refactor photo details entity #379 #357
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-06 19:15:57 +02:00
Michael Mayer
4ddf241a6c
UX: Rename "analog" to "scan"
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-06 14:35:25 +02:00
Michael Mayer
1284091b77
Backend: Improve FileTitle() function
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-06 11:31:03 +02:00
Michael Mayer
3b8f3ebd23
Improve date input parsing #274 #358
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-06 10:32:37 +02:00
Michael Mayer
ca154f3bb3
Replace date picker with day, month & year inputs #274 #358
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-06 07:41:33 +02:00
Michael Mayer
581404648c
Add search filter for content that has no album #377
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-05 14:48:49 +02:00
Michael Mayer
4721f9d044
Backend: Improve metadata logs
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-02 08:16:27 +02:00
Michael Mayer
1c72f88e8c
Backend: Improve logging #369
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-29 13:16:55 +02:00
Michael Mayer
bfd73932e5
Improve UX and title generation from file names
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-29 11:10:24 +02:00
Michael Mayer
cfd23666a9
Sharing: Link expiration, view counter and permissions #18
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-26 12:16:13 +02:00
Michael Mayer
43abf0bd83
Photos: Rename maintained_at to checked_at
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-24 08:34:23 +02:00
Michael Mayer
12cfe6efec
Backend: Prefer file title over image classification #361
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-23 11:12:24 +02:00
Michael Mayer
722d7dd421
Improve link sharing dialog and api #18
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-22 15:16:26 +02:00
Michael Mayer
961fda3b11
Add photos from other albums (clone)
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-14 11:39:53 +02:00
Michael Mayer
d5e4aec8ea
Frontend: Add fields to advanced tab (edit dialog)
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-10 18:26:05 +02:00
Michael Mayer
f2738c1f65
Backend: Update size limit for (U)UIDs to 42 bytes
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-09 19:40:32 +02:00
Michael Mayer
d72480200e
Add approve button to photo card view
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-09 09:20:20 +02:00
Michael Mayer
a91206a509
Universal sidecar configuration, indexing with multiple roots #268 #348
...
Slowly getting to the point where only very few people are able to maintain this codebase :)
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-07 10:09:35 +02:00
Michael Mayer
5a06433a1c
Fix restore photo data from YAML files
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-05 10:17:00 +02:00
Michael Mayer
5b1c0f2afe
Refactor Photo.LoadLocation and LoadPlace
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-04 22:26:00 +02:00
Michael Mayer
f16169c259
Refactor Photo.PlaceLoaded and LocationLoaded
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-04 22:05:24 +02:00
Michael Mayer
6564e7a548
NewPhoto should only set default IDs, not entities
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-04 21:55:00 +02:00
Michael Mayer
c0a3ab5ac5
Favorites: Don't count private photos #334
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-04 17:33:00 +02:00
Michael Mayer
916e3a570c
Backend: Don't index sidecar files if main file failed
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-04 17:06:42 +02:00
Michael Mayer
ca8a8466d4
Indexing bug fixes and UX improvements
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-04 14:56:27 +02:00
Michael Mayer
15113afaa6
Backend: Fix handling of deleted labels
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-02 17:57:12 +02:00
Theresa Gresch
ad9167360d
Feature/246 ( #345 )
...
* Import: Implement "add to album" in backend #246
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
* Import: Implement "add to album" in frontend #246
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
* Add OriginalName to photo search result
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
* Add json tags to PhotoName and PhotoPath
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
* Photo: Use EstimateCountry() in UpdateLocation()
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
* Photo: Set OriginalName earlier while indexing
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
* Ignore whitespace when stripping sequence from filename #335
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
* Fix labels count for SQLite
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
* Import: Show name of new albums #246
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
* Frontend: Add acceptance test files
Co-authored-by: Michael Mayer <michael@liquidbytes.net>
2020-06-01 09:45:24 +02:00
Michael Mayer
68c758a686
Backend: Improve location list for estimates #260
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-31 17:45:58 +02:00
Michael Mayer
14c89022d3
Improve browsing by original file and folder name #260
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-31 14:42:41 +02:00
Michael Mayer
9a5d4fa719
Backend: Indexing improvements #154
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-29 18:04:30 +02:00
Michael Mayer
f6c929528e
Locations and places: Revert key renaming
...
Code reads better this way.
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-29 12:56:24 +02:00
Michael Mayer
a77b2431d3
Backend: Improve labels, keywords and caching
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-28 21:20:42 +02:00
Michael Mayer
02800e796e
Guess title, location and date from file and path name #154
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-28 15:12:18 +02:00
Michael Mayer
f510ac994c
XMP: Group files based on DocumentID and Instance ID #335
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-27 13:40:21 +02:00
Michael Mayer
301e510b2d
Photos: Generate title based on estimated place #154
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-26 21:51:34 +02:00