Michael Mayer
c7753b87ff
Library: Show folder covers in Originals #1011
2021-02-07 19:04:17 +01:00
Michael Mayer
1bfb2e1774
Index: Improve save / update functions, remove orphans
2021-02-06 16:30:30 +01:00
Michael Mayer
ee555e8f6a
Upload: Add duplicates to selected album(s) as well #991
2021-02-05 21:12:40 +01:00
Michael Mayer
2a96c019f4
Metadata: Update camera model map
2021-02-05 19:48:53 +01:00
Michael Mayer
128cdf4bac
Backend: Fix typo in photo entity
2021-02-05 19:18:33 +01:00
Krassimir Valev
c27e809308
Additional photo location unit tests ( #918 )
2021-02-05 18:32:32 +01:00
Michael Mayer
63ba28426e
Navigation: Update counts when saving a photo #996
2021-02-05 18:22:52 +01:00
Michael Mayer
bf592bdf7c
Backup: Restore archive flag from yaml files #912
2021-02-05 16:32:08 +01:00
Michael Mayer
a99c6978d2
Metadata: Update camera make map
2021-02-05 09:12:13 +01:00
Michael Mayer
b55c06dca1
Metadata: Rename SetTimeZone to UpdateTimeZone #930
2021-01-27 23:39:46 +01:00
Michael Mayer
480b186b3c
Metadata: Ignore UTC time zone estimates #930
2021-01-27 23:31:13 +01:00
Michael Mayer
28e2e85d48
Metadata: Apply time zone estimate if date was not set manually #930
2021-01-27 22:47:37 +01:00
Michael Mayer
993e7466fa
Download all related files using their existing name by default #449
...
Related issues:
- Configure download name for files and albums #848
- When downloading live photos, zip all the associated files #437
2021-01-27 21:30:10 +01:00
Michael Mayer
40ccb29313
Metadata: Improve date extraction for mod time and file names #930
2021-01-27 15:21:54 +01:00
Michael Mayer
e175251783
Metadata: Remove time zone if taken date is from file name #930
2021-01-27 12:36:23 +01:00
Michael Mayer
2d0ba9c60e
Backend: Add "OLYMPUS CORPORATION" to camera.go
2021-01-27 12:00:02 +01:00
Michael Mayer
52532c4579
Metadata: Improve handling of time zones and estimates #930
2021-01-26 19:18:37 +01:00
Michael Mayer
05b417acfa
Metadata: Apply existing time zone when changing TakenAt
2021-01-26 13:00:54 +01:00
Michael Mayer
ef2f231d5b
Indexer: Improve taken date fallback when other metadata is missing #930
2021-01-25 21:41:57 +01:00
Michael Mayer
378dd0812e
Metadata: Simplify keyword indexing #920
2021-01-25 20:30:52 +01:00
Michael Mayer
274c9347f5
Purge: Hide missing files in UI and set new primary if needed #917
2021-01-24 20:40:40 +01:00
Michael Mayer
6ee2613e90
Metadata: Improve time zone estimates #914
2021-01-19 13:47:41 +01:00
Michael Mayer
019a649c61
Metadata: Set time zone based on pictures taken at a similar time #914
2021-01-19 11:41:25 +01:00
Michael Mayer
9dad595c3e
Photo: Allow overwriting estimated locations #918
2021-01-19 11:38:35 +01:00
Krassimir Valev
a90ee62cd6
Search albums by country ( #905 )
2021-01-16 12:48:43 +01:00
Michael Mayer
ed0aa11ee8
UX: Document min password length and reduce to 4 chars
2021-01-02 14:06:34 +01:00
Michael Mayer
8e22fbf8f6
Metadata: Store and compare data source for details #755
2020-12-31 13:51:31 +01:00
Michael Mayer
bbd0af3dd3
Shares: Allow reuse of the same share slugs & tokens #776
2020-12-31 12:02:26 +01:00
Michael Mayer
29a57fd846
Settings: Add estimate feature flag #622
2020-12-30 11:11:58 +01:00
Michael Mayer
91acaaa573
Index shorter keywords in languages like Chinese #746
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-27 16:37:28 +01:00
Michael Mayer
13bd176f0f
Albums: Handle missing entries and pure emoji titles
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-27 13:11:08 +01:00
Michael Mayer
4ac0ef3556
Indexer: Improve merging and performance
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-27 07:43:39 +01:00
Michael Mayer
fd53d30caa
Indexer: Reset photo quality after merging
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-26 23:08:08 +01:00
Michael Mayer
45c0e2f60d
Folders: Fix title capitalization #737
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-25 14:31:06 +01:00
Michael Mayer
1ad8eb343d
Photo: Omit Stack property in YAML files if 0
2020-12-21 18:43:31 +01:00
Michael Mayer
12cb89eca5
Stacks: Use "Stackable" int8 instead of "Unstacked" bool #616 #667
2020-12-19 19:15:32 +01:00
Michael Mayer
a067fe46ec
UX: Add global server config options tab to Settings UI
2020-12-18 20:42:12 +01:00
Michael Mayer
7940786ce9
UX: Refactor config options to be more intuitive
...
Make sure to update your local config files when upgrading as
the name of some config values has changed. The default
config path has changed from "settings" to "config".
2020-12-18 09:11:42 +01:00
Michael Mayer
449fb7a2c1
Backup and restore albums from YAML files #567
2020-12-17 18:24:55 +01:00
Michael Mayer
859e4f7d8c
Indexer: Set a default color for photos with multiple files #715
2020-12-17 12:32:53 +01:00
Michael Mayer
1f386533cf
Indexer: Use lookup table to prioritize metadata sources
2020-12-17 10:23:17 +01:00
Michael Mayer
717da1bd34
Downloads: Configure file name schema #675
...
There is no UI for this setting yet.
2020-12-16 11:59:16 +01:00
Michael Mayer
28880e682d
Database: Improve config and SQL queries
2020-12-15 20:14:06 +01:00
Michael Mayer
387452858e
Indexer: Use mutex when saving photos to avoid concurrency issues
2020-12-14 20:56:33 +01:00
Michael Mayer
c2e5663da0
Indexer: Add folder albums while indexing
2020-12-14 20:37:54 +01:00
Michael Mayer
430d16bf95
Indexer: Find existing camera via slug, return unknown camera by default
2020-12-14 19:24:08 +01:00
Michael Mayer
5383553cd1
Moments: Update folder search filter when path changes
2020-12-14 14:11:14 +01:00
Michael Mayer
35659f25cf
Indexer: Improve logging and locking
2020-12-14 13:31:18 +01:00
Michael Mayer
43e324700b
Indexer: Avoid adding the same entity simultaneously
2020-12-13 15:43:01 +01:00
Michael Mayer
ce471de921
Indexer: Refactor photo merge #616
2020-12-12 22:02:14 +01:00
Michael Mayer
473566f404
Videos: Enforce transcoding to MPEG-4 AVC #603
2020-12-12 17:20:31 +01:00
Michael Mayer
73a00efae8
Workaround for bad image rotation in Exif headers #637
2020-12-12 13:05:58 +01:00
Michael Mayer
6b9d0ce584
Indexer: Don't merge edited photos
2020-12-12 08:14:44 +01:00
Michael Mayer
9fe9ca747f
Indexer: Improve unstacking of single files
2020-12-11 23:09:06 +01:00
Michael Mayer
9f4066edb6
Indexer: Improve stacking and indexing of moved files
2020-12-11 22:09:11 +01:00
Michael Mayer
04c17fb77b
Indexer: Improve stacking settings and merging
2020-12-11 17:21:13 +01:00
Michael Mayer
d82a0ab525
Indexer: Don't optimize merged photos
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-09 22:15:10 +01:00
Michael Mayer
c0fb3deb06
Indexer: Stack photos while optimizing
2020-12-09 21:44:04 +01:00
Michael Mayer
004400b118
Albums: Improve folder indexing
2020-12-09 13:10:21 +01:00
Michael Mayer
5645cb1d0e
Albums: Update folder album slug when path changes
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-09 00:44:33 +01:00
Michael Mayer
ee49073cf2
Albums: Improve UX and indexing
2020-12-08 22:40:13 +01:00
Michael Mayer
466a1bc3dd
Albums: Hide empty folder albums after re-indexing #684
2020-12-08 19:47:27 +01:00
Michael Mayer
a43f8be231
Stacks: Repair merge query #681 #667 #593
2020-12-07 17:51:35 +01:00
Michael Mayer
ae0af699c6
Stacks: Add advanced indexing options #681 #667 #593
2020-12-07 16:19:03 +01:00
Michael Mayer
56851f4892
WebDAV: Add timeout for fetching directories #664
2020-12-05 01:24:33 +01:00
Michael Mayer
d0f8c577b3
Indexer: Add optimize command & automatically fix location data #546
2020-12-05 00:13:44 +01:00
Michael Mayer
6d791f8a59
Indexer: Improve logging #546
2020-12-04 23:16:22 +01:00
Michael Mayer
e77fefd78f
Indexer: Improve stacking SQL #576
2020-12-04 20:33:17 +01:00
Michael Mayer
902aacece9
Indexer: Merge identical photos (stack files) #576
2020-12-04 19:51:51 +01:00
Michael Mayer
dfd9cb53ac
Update link entity test #621
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-11-22 03:22:21 +01:00
Michael Mayer
49a299b3b0
Fix links with expiration #621
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-11-22 03:12:31 +01:00
Michael Mayer
59a806c685
Indexer: Fix purge and restore of RAW files #568 #614
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-11-21 23:28:03 +01:00
Michael Mayer
590350a6dd
Backend: Fix logging in File.Rename() #568
2020-11-21 18:33:19 +01:00
Michael Mayer
5daa689975
Backend: Format go imports
2020-11-21 18:08:41 +01:00
Michael Mayer
ef316c98b7
Implement batch approve #489
2020-11-21 17:36:41 +01:00
Michael Mayer
1ad2d53e16
Indexer: Recover all missing files #568
2020-11-21 15:43:13 +01:00
Michael Mayer
7d87062436
Indexer: Fix handling of renamed and previously missing files #568
2020-11-20 17:25:46 +01:00
Michael Mayer
28f59947df
Indexer: Update index when files were renamed #568
2020-11-15 15:15:56 +01:00
Michael Mayer
e22e6c6d37
Indexer: Improve duplicate detection #568
...
Only non-sidecar files in the originals folder will be added to the
duplicates table to avoid side effects.
In addition, the duplicates table is cleaned before and after indexing.
2020-11-15 10:31:46 +01:00
Theresa Gresch
c72ddbedcb
Backend: Add unit tests
2020-10-20 10:07:27 +02:00
Theresa Gresch
7b9f21207e
Backend: Add tests for entity
2020-10-20 09:25:19 +02:00
Theresa Gresch
b19e01396a
Backend: Add tests for entity
2020-10-19 17:06:09 +02:00
Michael Mayer
4fc693fb0b
Permanently delete non-primary files #435
...
This is a fix for unstacking issues in certain situations. More general
photo delete functionality will be added later, see #167 .
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-04 14:21:40 +02:00
Michael Mayer
46b9239026
Backend: Refactor user entity and add pro package
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-10-03 13:50:30 +02:00
Phil Davis
c90f19ec21
Fix minor typos
2020-10-01 16:00:43 +05:45
Michael Mayer
226f218f80
Backend: Count login attempts and localize error messages
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-21 09:40:35 +02:00
Michael Mayer
6d58b76394
Backend: Remove GlobalUID from Address entity
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-21 08:55:33 +02:00
Michael Mayer
dc8640ca2b
Person: Revert previous commit
...
EulaSigned might cause confusion as it's commonly used for proprietary software.
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-17 19:20:12 +02:00
Michael Mayer
48ec25bcba
Person: Add EulaSigned date field
...
Users might need to accept terms & conditions when using external services / APIs.
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-16 18:14:09 +02:00
Michael Mayer
9950bc9975
Person: Rename UserActive to IsActive #98 #144
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-16 16:44:20 +02:00
Michael Mayer
a44351f332
Person: Refactor / rename entity fields #98 #144
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-16 16:24:03 +02:00
Michael Mayer
d18414e468
Person: Rename optional UserUUID to GlobalUID #98 #144
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-16 15:35:35 +02:00
Michael Mayer
3af6e9b83e
Frontend: Update user model #98 #144
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-13 18:10:31 +02:00
Michael Mayer
84b17194af
Backend: Refactor person entity #98 #144
...
Database column types are now UPPERCASE so that developers can easily recognize them. After upgrading to GORM 2.0, we can use generic types instead.
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-13 17:51:43 +02:00
Michael Mayer
a071642629
Backend: Refactor person entity fields #144
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-07 17:10:43 +02:00
Michael Mayer
01c4b483dd
Backend: Refactor person entity for smaller db row size #144
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-07 12:18:12 +02:00
Michael Mayer
33888fd231
Backend: Add credentials and extend person entity #98 #144
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-06 14:18:40 +02:00
Theresa Gresch
7e7b53590a
Backend: Add validation for valid dates in setTakenAt()
2020-08-18 10:42:09 +02:00
Michael Mayer
6e2849fba2
Index: Don't stack files based on XMP InstanceID
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-18 00:45:53 +02:00
Michael Mayer
d43d3a22e0
Backend: Improve country estimate from folder name
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-14 15:36:48 +02:00
Michael Mayer
28595497b1
Backend: Limit place estimates to 36h time difference
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-24 14:06:26 +02:00
Michael Mayer
7d00e68d92
Index: Refactor mime type detection #391
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-21 14:43:45 +02:00
Michael Mayer
d20d9c50dd
Metadata: Upgrade go-exif v3
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-21 10:52:39 +02:00
Michael Mayer
ab6228fb9a
Index: Skip empty files #391
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-21 10:44:41 +02:00
Michael Mayer
a01e54070d
Index: Skip duplicates and handle files with wrong extension #391
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 19:48:31 +02:00
Michael Mayer
0da72687e6
Backend: Add Huawei P10 models to camera model lookup table
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 13:03:14 +02:00
Michael Mayer
cd7cd064b6
Backend: Add Huawei Mate models to camera model lookup table
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 12:43:57 +02:00
Michael Mayer
24cfa1aea2
Backend: Refactor file indexing / skipping
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-18 20:58:35 +02:00
Michael Mayer
812e550d76
Backend: Remove unused duplicate field from file entity
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-18 12:39:04 +02:00
Michael Mayer
cc946b8ea8
Use int64 for file modification timestamps #391
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-17 16:09:55 +02:00
Michael Mayer
13fe9af2fc
Backend: Fix panorama detection #352
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-17 10:10:01 +02:00
Michael Mayer
6847b8b5f9
Complete file browser with symlink support and full folder / file names ( #412 )
...
* Backend: Code clean-up
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
* File Browser: Show complete, original file and folder names #408
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
* File Browser: Follow symlinks #201 #403 #407
Warning: Following symlinks can make folder lists non-deterministic
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-16 15:43:23 +02:00
Michael Mayer
6c13b75562
Backend: Improve places logging #399
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-16 14:00:22 +02:00
Michael Mayer
0e5fe5eb43
Index image projection and add panorama filter
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-16 13:02:48 +02:00
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
f484dd004c
Add Huawei P20 and P20 Pro #399
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-15 09:18:58 +02:00
Michael Mayer
d6b848c0e9
Backend: Use common log prefix for places and their cells
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-15 08:31:36 +02:00
Michael Mayer
b62af742ae
Backend: Improve log messages
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-14 18:00:32 +02:00
Theresa Gresch
e6cc639040
Backend: Add unit tests for internal/api
2020-07-14 14:46:27 +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
7a7c5aa190
UX: Reduce some levels to keep logs clean
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-14 12:39:56 +02:00
Theresa Gresch
a5987a0b33
Backend: Add unit tests for internal/api
2020-07-14 11:24:00 +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
a507f21740
Backend: Remove unused notes field from file entity
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 18:09:44 +02:00
Theresa Gresch
dac846ba01
Backend: Add unit tests for internal/workers
2020-07-13 16:44:17 +02:00
Michael Mayer
4a9f992056
Thumbs: Use fit_4096 in favor of fit_3840 and add convert limit #362 #388
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 15:23:54 +02:00
Michael Mayer
849225e1ea
Backend: Tweak db connection params and add stack to panic logs
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 15:16:09 +02:00
Theresa Gresch
0144458664
Backend: Add unit tests for internal/query
2020-07-13 12:29:11 +02:00
Theresa Gresch
b21433479e
Backend: Add unit tests for internal/query
2020-07-13 11:11:52 +02:00
Michael Mayer
4fb263f8a4
Add location field to album metadata
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-12 16:36:39 +02:00
Theresa Gresch
edb9bba671
Backend: Add unit tests for internal/photoprism
2020-07-12 14:36:36 +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
8c53049b4a
Backend: Remove deprecated columns from geo and places
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-12 06:54:07 +02:00
Michael Mayer
2bef7e7e9d
Backend: Reduce location estimate time difference to 3 days
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-12 05:20:16 +02:00
Michael Mayer
8bf6a7b678
Backend: Fix location estimate query
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-12 05:10:00 +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
Theresa Gresch
d4935c2d13
Backend: Add unit tests for internal/entity
2020-07-10 17:35:22 +02:00
Theresa Gresch
dcc43ed45d
Backend: Add unit tests for internal/entity
2020-07-10 17:27:06 +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
Theresa Gresch
dad0ba9d27
Backend: Add unit tests for internal/entity
2020-07-10 15:15:56 +02:00
Theresa Gresch
d6c910c16b
Backend: Add unit tests for internal/entity
2020-07-10 15:06:37 +02:00
Theresa Gresch
4196420dc7
Backend: Add unit tests for internal/entity
2020-07-10 13:57:51 +02:00
Theresa Gresch
560849ec52
Backend: Add unit tests for internal/entity
2020-07-10 11:44:51 +02:00
Theresa Gresch
1f9528562f
Backend: Add unit tests for internal/entity
2020-07-10 10:58:06 +02:00
Theresa Gresch
b480bbefcc
Backend: Add unit tests for internal/entity
2020-07-10 10:29:56 +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
Theresa Gresch
f857198178
Backend: Add unit tests for internal/entity
2020-07-09 16:46:13 +02:00
Theresa Gresch
6212c8d63d
Backend: Add unit tests for internal/entity
2020-07-09 15:37:30 +02:00
Theresa Gresch
dd7b5b3a1b
Backend: Add unit tests for internal/entity
2020-07-09 12:24:44 +02:00
Theresa Gresch
131e822a58
Backend: Add unit tests for internal/entity
2020-07-09 11:50:58 +02:00
Theresa Gresch
15d66fc304
Backend: Add unit tests for internal/entity
2020-07-09 11:27:44 +02:00
Theresa Gresch
006e833249
Backend: Fix unit test
2020-07-08 18:36:37 +02:00
Theresa Gresch
226eafec7b
Backend: Add unit tests for internal/entity
2020-07-08 18:09:18 +02:00
Theresa Gresch
e1487238e6
Backend: Add unit tests for internal/entity
2020-07-08 17:36:06 +02:00
Theresa Gresch
3e6c21a566
Backend: Add unit tests for internal/entity
2020-07-08 17:06:23 +02:00
Theresa Gresch
380aa0ba4b
Backend: Add unit tests for internal/entity
2020-07-08 15:25:33 +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
4b7551fb99
Try fetching country again if create fails #357
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-07 16:56:02 +02:00
Michael Mayer
14420b02a9
Try fetching places and location again if create fails #357
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-07 16:40:29 +02:00
Michael Mayer
3bfbd3070e
Fix time difference threshold in Photo.EstimatePlace()
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-07 13:18:34 +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
f576b000b7
Add event log in Library > Errors
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-01 17:16:24 +02:00
Michael Mayer
d4f4af313d
Add change password command and improve account page in settings
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-01 12:38:58 +02:00
Michael Mayer
95802d9f6c
Add album edit dialog
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-30 11:27:02 +02:00
Michael Mayer
2f88ab2ebc
Improve UX of account page
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-30 09:06:59 +02:00
Michael Mayer
0e426a547b
Disable account page in public mode
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-30 08:50:44 +02:00
Michael Mayer
56cf8e95e0
Add change password form to settings
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-29 21:14:34 +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
f2955fdefc
Sharing: Refactor link entity and database columns #367 #18
...
Add missing fields in js model and rename fields for mode clarity. A link token can be valid for multiple shares.
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-28 14:52:26 +02:00
Michael Mayer
2b2cd8ed23
Backend: Sanitize metadata titles and descriptions
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-27 14:15:25 +02:00
Michael Mayer
e7fecd3b27
Improve album sharing and album UX #18 #309
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-27 13:08:45 +02:00
Michael Mayer
4aa7b6cc97
Sharing: Generate share preview images #18
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-26 14:26:36 +02:00
Michael Mayer
ff704d56a0
Sharing: Optional view count limit #18
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-26 12:24:05 +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
5d59b50912
Sharing: ACL authorization for REST API #18
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-25 14:54:04 +02:00
Michael Mayer
1f1f92408a
Sharing: Token authentication #18
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-25 01:20:58 +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
41608d077d
Add album share dialog #18
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-16 12:51:46 +02:00
Michael Mayer
2f7c002b4d
Backend: Fix location estimate query
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-16 10:08:34 +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
01717ae6f7
Backend: Improve country code detection
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-12 18:01:22 +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
e83bb6ff02
Add comments to entity package constants
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-09 10:51:22 +02:00
Michael Mayer
aedc0279e3
Fix places count while indexing
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-09 10:49:27 +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
8fa1cb9392
Add favorite places
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-08 18:32:51 +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
528f80de3b
Code clean-up
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-05 17:03:07 +02:00
Michael Mayer
fbf675fbfb
Add s2 prefix to all cell ids
...
Fixes location search when using SQLite
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-05 16:49:32 +02:00
Michael Mayer
5c574e3837
Backend: Hide private photos in moments
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-05 10:59:59 +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
a1238c94cc
Fix photo test after improving location estimate #260
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-31 18:19: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
946f7967b5
Implement download as zip for moments, calendar and folders #154
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-30 21:31:32 +02:00
Michael Mayer
5d92ece264
Albums: Add category filter
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-30 21:11:56 +02:00
Michael Mayer
ea6ed61d1f
Automatically create albums from folders #260
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-30 15:42:04 +02:00
Michael Mayer
0b1bcf0d4a
Replace TiDB with SQLite for improved stability #66
...
As a side effect, we need less configuration values.
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-30 14:52:47 +02:00
Michael Mayer
dd442ab9e9
Add moments #154
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-30 01:41:47 +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
dcc610d7a9
Use AlbumType to distinguish between manual collections and moments #154
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-29 12:21:17 +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
Michael Mayer
1df0d9a549
Change name of maintenance worker to "prism" #154
...
See https://twitter.com/browseyourlife/status/1265289044856123393
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-26 19:27:29 +02:00
Michael Mayer
24cc8089fa
Fix favorite counter for archived files #334
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-26 13:43:16 +02:00
Michael Mayer
fe732e274c
Fix saving photo metadata
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-26 12:46:22 +02:00
Michael Mayer
dd42d2b823
Entities: Refactor FirstOrCreate
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-26 11:00:39 +02:00
Michael Mayer
10d5f433aa
Albums/Folders: Add category, country, year & month columns #154
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-26 09:02:19 +02:00
Michael Mayer
2156afd85a
File browser: Implement clipboard; refactor entities and fixtures #260
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-25 19:10:44 +02:00
Michael Mayer
4421e7d203
Add simple file browser to Library #260
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-24 22:16:06 +02:00
Michael Mayer
03ec4b586d
Initial commit for folders and moments #154 #260 #331
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-23 20:58:58 +02:00
Michael Mayer
e796d036c2
Fix indexer and add sort by file name #328
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-22 19:05:16 +02:00
Michael Mayer
a7122ff4e1
Add /folders API to get directory lists for browsing #260
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-22 16:29:12 +02:00
Michael Mayer
f9b6952947
Support for Live Photos #177
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-21 13:26:28 +02:00
Michael Mayer
2efb0039e8
Photos: Add photo_type column and search filters for path / name
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-21 10:03:56 +02:00
Michael Mayer
1297a8cc1f
Read taken date from file name #304
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-20 15:10:24 +02:00
Michael Mayer
6f3ccc95aa
Backend: Make sure .photoprism directory exists
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-19 19:49:32 +02:00
Michael Mayer
4300d45482
Backend: Log errors in database
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-19 13:48:05 +02:00
Michael Mayer
a785a9d708
Backend: Update TestPhoto_Save test
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-19 12:51:19 +02:00
Michael Mayer
27ea0cb214
Backend: Improve entity log and error messages
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-19 12:48:32 +02:00
Michael Mayer
1cf0893b18
Backend: Fix AfterCreate after upgrading GORM
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-19 12:30:26 +02:00
Michael Mayer
e61dda495a
Add PHOTOPRISM_SIDECAR_HIDDEN and PHOTOPRISM_JPEG_HIDDEN flags #311
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-19 11:00:17 +02:00