Commit graph

1036 commits

Author SHA1 Message Date
Michael Mayer
d2d3f7eb52 Fix automatic titles for photos without location
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-18 23:48:56 +02:00
Michael Mayer
f07064c2c3 Refresh titles, labels and locations
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-18 23:20:54 +02:00
Michael Mayer
af3945d2fe Label: Remove log messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-17 23:17:31 +02:00
Michael Mayer
8b36220c68 Backend: Update label rules
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-17 21:28:32 +02:00
Michael Mayer
20a5912210 Rename, remove and re-activate labels
Still need to fix label names when re-indexing so that custom names are used, if changed by the user.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-17 21:20:38 +02:00
Theresa Gresch
50fce34f69 Backend: Update labels 2020-04-17 20:26:51 +02:00
Michael Mayer
9a763541ac Keywords: Improve indexing and logging
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-17 14:16:34 +02:00
Michael Mayer
46f5fcef40 Backend: Index file names with txt.FilenameKeywords()
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-16 23:30:42 +02:00
Theresa Gresch
74e33e1917 Backend: Improve labels 2020-04-16 23:16:55 +02:00
Michael Mayer
e3f614bc23 Backend: Update photo title when location or labels change
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-16 20:57:00 +02:00
Michael Mayer
61ebd1ac90 Locations: Refactor indexing
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-16 18:05:22 +02:00
Michael Mayer
f99307f181 Backend: Update label rules
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-16 16:02:04 +02:00
Michael Mayer
204ae30c90 Keywords: Don't split words with a dash
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-16 15:57:07 +02:00
Michael Mayer
1f2c0171b1 Backend: Change titles of unknown photos
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-15 14:29:40 +02:00
Michael Mayer
6941028c4f Backend: View and edit archived photos
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-15 14:27:48 +02:00
Michael Mayer
b1dd8b0618 WebDAV: Add trailing slash/ to log output
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-14 18:13:37 +02:00
Michael Mayer
3b27f8d3f4 Skip exact duplicates #283
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-14 15:08:39 +02:00
Michael Mayer
96ec67f868 Group related files #283
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-14 14:28:47 +02:00
Michael Mayer
855781658b Add library settings #283
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-14 13:13:45 +02:00
Michael Mayer
fc95caaf06 Frontend: Improve library UX
Hints still need translations and options should be saved, so that they don't change when you reload the page.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-14 09:03:52 +02:00
Michael Mayer
c2fa3a7246 Add common feature flags incl upload #284
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-13 18:08:21 +02:00
Michael Mayer
9d97460044 Add links to source code docs
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-13 11:26:53 +02:00
Michael Mayer
47814e2fde Initial stub for feature flags in settings #284
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-12 18:00:31 +02:00
Michael Mayer
3ad73a752c Backend: Update label rules
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-12 15:39:36 +02:00
Michael Mayer
a06ac39639 Add "similar" sorting option as proof-of-concept
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-11 12:14:37 +02:00
Michael Mayer
96c7337fea Make tests more resilient
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-09 19:39:09 +02:00
Michael Mayer
095f51060b Labels: Ignore corals
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-09 17:27:49 +02:00
Michael Mayer
a8c48ab40e Initial API and entities for link sharing
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-08 13:24:06 +02:00
Michael Mayer
590420c870 Search: Remove stopwords
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-07 22:03:31 +02:00
Michael Mayer
f1b3b4b6bc Sync: Upload local files #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-07 12:51:01 +02:00
Michael Mayer
b020b4e415 Sync: Ignore unsupported file types #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-07 10:42:42 +02:00
Michael Mayer
a393a25e01 Backend: Remove export path to avoid confusion #276
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-06 23:04:52 +02:00
Michael Mayer
b5ee4625a6 Backend: Replace export with temp directory #276
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-06 22:50:04 +02:00
Michael Mayer
2f5da21a5b Sync: Code clean-up #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-06 22:27:05 +02:00
Michael Mayer
02810ffa94 Sync: Import/index after downloading #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-06 22:09:45 +02:00
Michael Mayer
087c56e371 Sync: Download to temp path #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-06 16:34:29 +02:00
Michael Mayer
9b7a5d69d4 Sharing: Instantly trigger upload #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-06 16:15:19 +02:00
Tyler Rockwood
bf2b5ca108
Skip hidden directories on indexing (#279) 2020-04-06 16:15:11 +02:00
Michael Mayer
ae5b6b759e Move share & sync to workers package #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-06 09:41:42 +02:00
Michael Mayer
aa220a06fe Backend: Refactor package structure
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-05 22:26:53 +02:00
Michael Mayer
c882b56f82 Sync: Download remote files #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-04 17:19:34 +02:00
Michael Mayer
3de78e3124 Sharing: Delete expired files #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-04 13:53:52 +02:00
Michael Mayer
2e5840f3b0 Implement share worker #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-03 18:08:49 +02:00
Michael Mayer
15d32016c6 Sharing: Refactor API and entities #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-02 18:17:07 +02:00
Michael Mayer
a836dd1497 Backend: Upgrade dependencies
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-02 14:13:41 +02:00
Michael Mayer
1adc144ac2 Backend: Insert shared file into files_share table #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-01 18:17:29 +02:00
Michael Mayer
86432c9974 Backend: Fix formatting issue in account API #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-01 13:07:44 +02:00
Michael Mayer
91b1d7a198 WebDAV sharing proof-of-concept #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-01 12:00:45 +02:00
Michael Mayer
5bea7d2a59 Maps: Add style to settings
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-31 21:03:13 +02:00
Michael Mayer
09e2385c67 Maps: Add animation duration to settings
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-31 18:56:52 +02:00
Michael Mayer
5f91d0d17b Add photo share dialog for WebDAV #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-31 17:26:25 +02:00
Michael Mayer
81d2a71b04 Backend: Update label rules
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-30 18:48:09 +02:00
Michael Mayer
2cd3a3030c Backend: Code clean-up
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-30 13:34:53 +02:00
Michael Mayer
9f400a826c Frontend: Fix account management issues #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-30 09:17:46 +02:00
Michael Mayer
b592e67dfa Frontend: Improve account management #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-29 21:24:44 +02:00
Michael Mayer
a9ece37feb Backend: Enable service discovery in API #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-29 12:02:01 +02:00
Michael Mayer
1e681440a3 Backend: Implement simple service discovery #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-29 11:29:02 +02:00
Michael Mayer
ec051e5481 Backend: Improve file share and sync entities #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-29 08:34:25 +02:00
Michael Mayer
7f2cfc8446 Backend: Create settings.yml if not exists
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-28 21:44:30 +01:00
Michael Mayer
9f03b99d7b Backend: Code clean-up #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-28 19:54:12 +01:00
Michael Mayer
29c3880aeb Accounts: Rename "push" to "share" #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-28 19:46:09 +01:00
Michael Mayer
9f4a5e7170 Backend: Add account API test #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-28 18:01:50 +01:00
Michael Mayer
c98ed8a125 Backend: Code clean-up #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-28 17:17:41 +01:00
Michael Mayer
1d667ada79 Backend: Add account API #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-28 15:29:17 +01:00
Michael Mayer
81dc7bbb19 Backend: Add sharing entities (file sync & push) #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-27 18:17:07 +01:00
Michael Mayer
187a80f7e6 Backend: Recursively list directories #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-27 11:56:24 +01:00
Michael Mayer
b86f68c3f3 Backend: Add WebDAV client and dummy test server #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-27 11:01:41 +01:00
Michael Mayer
eedaae8f91 Backend: Move photo description to separate table
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-26 09:41:33 +01:00
Michael Mayer
ccd92a4715 Update index after editing photo metadata
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-25 14:14:00 +01:00
Michael Mayer
16e17b33bf Add photo keywords edit field and improve indexing
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-25 12:39:07 +01:00
Michael Mayer
a1706a5922 Backend: Upgrade & improve Dockerfiles #263
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-23 20:29:31 +01:00
Michael Mayer
c1b08c8870 Backend: Code clean-up
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-09 01:13:32 +01:00
Michael Mayer
3165eb3ac5 Backend: Reduce default number of workers
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-09 00:51:10 +01:00
thielepaul
1d89858e4c
Backend: Add API endpoint for getting files by sha1 hash (#259)
* Backend: Add API endpoint for getting files by sha1 hash

* Test: Add test for Api.GetFile
2020-02-26 17:50:28 +01:00
Michael Mayer
01527c180e Add WebDAV server
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-21 04:23:16 +01:00
Michael Mayer
4deca6b1ed Metadata: Exclude null bytes from Exif #252
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-21 02:15:07 +01:00
ifedorenko
d43255885c
Serialize websocket writes with a mutex (#256)
Fixes #241

Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
2020-02-21 01:58:40 +01:00
François d'Yvoire
55693fab35
Some more comment improvements (#257)
* Improve comment in classify package

* improve comment in config package

* improve entity package comments

* grammar error in comments
2020-02-21 01:14:45 +01:00
François d'Yvoire
4fe5aaaccd
Improve command package comments (#251) 2020-02-18 23:42:51 +01:00
Michael Mayer
c583d7e994 Backend: Index Keywords, Subject and Artist #243
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-07 17:02:53 +01:00
Michael Mayer
c13e39e6d1 Backend: Add fields to Meta.Data struct #243
Added: Subject, Keywords, Comment, CameraOwner and CameraSerial

Todo: Read values from Exif.Image.XPTitle, XPSubject, XPKeywords,...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-07 14:40:06 +01:00
Anders Brander
3ed5370439
Do not print starting web server before starting web server. (#240)
Thnigs can go wrong and abort in server.Start() before the web server is
started. This commit will move the log message to where the webserver is
started to avoid confusing the user.
2020-02-05 23:05:37 +01:00
Michael Mayer
491751f4fc Frontend: Fixed infinite scroll and reload
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-04 14:51:48 +01:00
Michael Mayer
f57c6688a5 Upload: Publish photos.created event
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-04 13:11:18 +01:00
Michael Mayer
4ef19bb671 Backend: Sidecar file hashes may have duplicates
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-04 12:25:57 +01:00
Michael Mayer
3e6c85feb2 Labels: Publish labels.created event
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-04 11:38:43 +01:00
Michael Mayer
2ef03df895 Labels: Update rules for more accurate results
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-04 11:06:40 +01:00
Michael Mayer
e02cbe1b10 Labels: Add context menu
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-04 05:18:22 +01:00
Michael Mayer
afbbfbdc31 Labels: Update rules for more accurate results
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-04 05:04:37 +01:00
Michael Mayer
cf5c0db1d3 Albums: Optimize push updates
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-04 01:39:53 +01:00
Michael Mayer
1c934d48d3 Add ffmpeg and improve UX
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-03 23:40:45 +01:00
Theresa Gresch
a984543b54 Labels: Improve label rules 2020-02-03 20:15:57 +01:00
Theresa Gresch
2509952992 Test: Add test for api/preview 2020-02-03 15:50:46 +01:00
Theresa Gresch
000735188c Test: Add test for api/photo_thumbnail 2020-02-03 15:50:25 +01:00
Theresa Gresch
8ddc758504 Test: Add test for api/photo 2020-02-03 15:50:05 +01:00
Theresa Gresch
879466371e Test: Add test for api/photo_search 2020-02-03 15:49:49 +01:00
Theresa Gresch
63b5d62813 Test: Add test for api/photo_label 2020-02-03 15:49:32 +01:00
Theresa Gresch
4714b50a8f Test: Add test for api/label 2020-02-03 15:49:14 +01:00
Theresa Gresch
b6967671c7 Test: Add test for api/moments_time 2020-02-02 19:40:05 +01:00
Theresa Gresch
8d95900435 Test: Add test for api/label 2020-02-02 19:39:49 +01:00
Theresa Gresch
c4f4d1e578 Test: Add test for api/geo 2020-02-02 18:41:36 +01:00
Theresa Gresch
47ae1e2b65 Test: Add test for api/download 2020-02-02 18:41:18 +01:00
Theresa Gresch
c647908d3d Test: Add test for api/album 2020-02-02 18:41:03 +01:00
Theresa Gresch
14f7702d4f Test: Add test for api/album 2020-02-02 15:50:33 +01:00
Theresa Gresch
7cbdd31793 Test: Add tests to query/photo.go 2020-02-02 13:03:08 +01:00
Theresa Gresch
a3af75c7d7 Test: Add test for invalid query to query/label.go 2020-02-02 13:02:40 +01:00
Theresa Gresch
9069d1312c Test: Add test for invalid query to query/album.go 2020-02-02 13:02:14 +01:00
Theresa Gresch
223e4a5df4 Test: Add NewPhotoSearch function 2020-02-02 13:01:26 +01:00
Michael Mayer
c01e08c6ab Labels: Update rules for more accurate results
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-02 10:52:12 +01:00
Michael Mayer
4c15157878 Labels: Update rules for more accurate results
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-02 09:18:27 +01:00
Michael Mayer
780d859526 Labels: Update rules for more accurate results
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-02 08:43:40 +01:00
Michael Mayer
382a5a89f8 Labels: Update rules for more accurate results
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-02 08:29:59 +01:00
Michael Mayer
aaafa2f1e1 Labels: Update rules for more accurate results
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-02 06:18:16 +01:00
Michael Mayer
718e465201 Thumbnails: Change log level from Debug to Info
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-02 03:53:45 +01:00
Michael Mayer
4efa383c57 API: Proof-of-concept for form handling
We don't want to directly write to models so that only selected fields can be changed and values can be validated for security reasons.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-02 03:36:00 +01:00
Michael Mayer
1cbb0a6d56 Labels: Edit name in overview #212
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-02 02:00:47 +01:00
Michael Mayer
90dd094a21 Sharing: Add accounts table #11
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-02 00:31:09 +01:00
Michael Mayer
32f03ab149 Backend: Run multiple instances of Sips 2020-02-01 23:07:20 +01:00
Michael Mayer
c02b7ed65b Backend: Fix RAW to JPEG conversion with Sips (OS X) 2020-02-01 22:48:07 +01:00
Michael Mayer
a4070cf55c Backend: Store and index original file names during import #184
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-01 20:52:28 +01:00
Michael Mayer
1c592464bf Backend: Index keywords in non-canonical file names
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-01 10:29:44 +01:00
Michael Mayer
73050783f1 Optimize thumbnail generator
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-31 18:34:20 +01:00
Michael Mayer
17e1fb0f8a Docker: Fix demo after renaming import command
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-31 17:29:55 +01:00
Michael Mayer
807d986c64 Change default resample filter from cubic to lanczos
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-31 16:28:52 +01:00
Michael Mayer
a4e2867c86 Split import command into copy and move
Upgraded JS dependencies and did some refactoring along the way...

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-31 15:29:06 +01:00
Michael Mayer
ceb7d258fe Push updates: Add event types for photos & albums
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-30 18:19:26 +01:00
Michael Mayer
11c3ed70e3 Photo edit: Publish event to keep clients in sync
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-30 09:51:23 +01:00
Michael Mayer
d9ec032371 Photo edit: Refresh view after saving
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-30 06:17:02 +01:00
Michael Mayer
ab6680ed8a Import: Check if main file is nil #202
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-30 02:58:17 +01:00
Michael Mayer
777526ce82 Upload: Refactor UX
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-30 01:53:18 +01:00
Michael Mayer
183ebd3f03 Backend: Add FileError col to files table #202
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-29 17:41:51 +01:00
Michael Mayer
e8db8b2a3d Backend: Update label rules
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-29 16:50:14 +01:00
Michael Mayer
91beb766fa Edit photo: Improve add and remove labels
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-29 16:49:42 +01:00
Michael Mayer
bdf976abd7 Edit photo: Add and remove labels
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-29 15:28:20 +01:00
Theresa Gresch
4b2259740b Test: Add test for query/geo 2020-01-28 22:16:59 +01:00
Theresa Gresch
204646babd Test: Add test for query/moments_time.go 2020-01-28 21:02:52 +01:00
Theresa Gresch
fbd5fbdf82 Test: Add test for query/file.go 2020-01-28 20:59:26 +01:00
Theresa Gresch
90bd73abed Test: Add test for query/label.go 2020-01-28 20:59:02 +01:00
Michael Mayer
7ecc146460 Backend: Rename utils.go to auth.go #221
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-28 13:12:29 +01:00
agolebiowska
81a587aa19 Backend: Support encrypted password (#231)
See issue #221, only handles bcrypt
2020-01-28 11:04:10 +01:00
Theresa Gresch
dc240cae8f Add fixtures for categories test 2020-01-27 17:19:47 +01:00
Theresa Gresch
616b16c9e6 Add test for query/album.go 2020-01-27 17:00:36 +01:00
Theresa Gresch
868c7fb38c Add NewAlbumSearch Function 2020-01-27 16:53:09 +01:00
Theresa Gresch
f89ec58a03 Add test for location.go 2020-01-27 15:27:07 +01:00
Theresa Gresch
0868f2a2d2 Add test for label.go 2020-01-27 15:26:48 +01:00
Theresa Gresch
4471a2e07f Add test for mediafile.go 2020-01-27 15:26:30 +01:00
Michael Mayer
e818e8bda1 Code clean-up
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-26 10:55:06 +01:00
Michael Mayer
8c8cb426f8 Update testdata.zip
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-26 10:22:27 +01:00
Michael Mayer
e1ad0684b3 Backend: Add "exif" prefix to log message #219
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-24 18:50:57 +01:00
Michael Mayer
49b329d45c Edit dialog: Make additional fields savable #212 #217
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-24 10:25:08 +01:00
Michael Mayer
d3330877d1 Frontend: Refactor photo model to use primary file as preview #212 #217
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-24 01:33:04 +01:00
thielepaul
f6a611bded Backend: Add API endpoint for photo count per month #152 #154 #218
* Backend: Add API endpoint for photo count per month

* URL: /api/v1/moments/time
2020-01-23 20:05:54 +01:00
Michael Mayer
b49d581850 API: Refactor album & photo not found messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-23 10:16:18 +01:00
Michael Mayer
9da3456813 Refactor API error messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-23 10:10:32 +01:00
Michael Mayer
54d33e2a43 Shorten unique IDs
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-23 09:50:43 +01:00
Michael Mayer
2f4840f9c2 Only send full clientConfig if authenticated #216
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-23 07:39:04 +01:00
Michael Mayer
7342d5194a Add Websocket authentication #216
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-22 16:54:01 +01:00
Michael Mayer
f569c3adb6 Require password for all pages (if not running in public mode)
See https://github.com/photoprism/photoprism/issues/167#issuecomment-574866401

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-22 13:43:07 +01:00
Michael Mayer
2f62084d6f Backend: Improve command usage description #187
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-22 12:19:43 +01:00
Michael Mayer
02f605e6a8 Backend: Improve command help #187
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-22 10:35:00 +01:00
linosgian
afa307a28f Add --all flag to index command #187
PR #211
2020-01-22 09:57:49 +01:00
Michael Mayer
7d75683b3a Backend: Add filename to thumb error message #210
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-21 15:21:17 +01:00
Michael Mayer
11067b1ae5 Backend: Improve http log messages #194
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-21 15:12:26 +01:00
Michael Mayer
5fd454b856 Backend: Improve startup error messages #194
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-21 13:59:41 +01:00
Michael Mayer
a50d1b5d07 Backend: Hide archived photos on map
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-21 13:23:24 +01:00
Michael Mayer
5c0a2b70ef Backend: Disable WS origin check #209
Doesn't add much security, need to implement other auth for WS

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-20 20:47:19 +01:00
Theresa Gresch
8e16a9c832 Add test for index_options.go 2020-01-20 18:34:15 +01:00
Theresa Gresch
ff2014a29e Add test for label.go 2020-01-20 18:20:18 +01:00
Theresa Gresch
0260f1baa5 Add test for colors.go 2020-01-20 17:44:05 +01:00
Theresa Gresch
2c3d462390 Add test for nsfw.go 2020-01-20 17:43:43 +01:00
Michael Mayer
1f4dc66df6 Docker: Downgrade darktable-cli to 3.0.0 #109
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-20 01:18:36 +01:00
Michael Mayer
c0a694cc24 Backend: Update label rules
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-19 22:34:08 +01:00
Theresa Gresch
6b1babe0ba Improve test coverage (#206)
* #83 Add NewLocation() function

* #83 Add NewPlace() function

* #83 Add tests for maps/places/location

* #83 Add tests for maps/location

* #83 Add tests for internal/config

* #83 Add test for meta/exif

* #83 Add testfiles
2020-01-19 13:27:15 +01:00
Michael Mayer
aafeda0919 Backend: Use goroutines image format conversion
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-19 12:50:44 +01:00
Michael Mayer
492a9839ff Backend: Increase location search radius to from 5 to 7
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-17 02:41:35 +01:00
Michael Mayer
64a16a27b0 Backend: Upgrade darktable and don't run more than one command at once #202
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-17 01:37:06 +01:00
Michael Mayer
9055581690 Backend: Re-add imports removed by make fmt (why?)
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-15 20:05:29 +01:00
Michael Mayer
09bac902d0 Code clean-up (make fmt)
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-15 19:59:25 +01:00
Michael Mayer
8a476edc2a Maps: Fix marker positions and refresh after loading #199
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-15 19:45:54 +01:00
Michael Mayer
e78080b3a6 Backend: Increase search radius for S2 cell IDs
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-15 12:30:50 +01:00
Michael Mayer
624ade62c6 Backend: Fix indexing after import of non-JPEG files #196
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-15 05:05:47 +01:00
Michael Mayer
c31470dafb Initial code for new Places UI
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-15 04:04:33 +01:00
Michael Mayer
bba914878a Backend: Remove go-xmp import
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-14 03:41:40 +01:00
Dustin Oprea
9b1bf83abe Optimize EXIF integration (#192)
Use JPEG- and PNG-specific parsing if possible and brute-force search
only for others.

- Adopted go-exif/v2.

Fixes #172
2020-01-14 01:47:26 +01:00
Michael Mayer
4a223f133f Backend: Rename metadata example files #68
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 23:37:05 +01:00
Michael Mayer
4c8e7b6b15 Backend: Revert change in exif.go #68
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 23:19:06 +01:00
Michael Mayer
c978fa00f1 Backend: Proof-of-concept for indexing XMP files #68
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 23:14:10 +01:00
Michael Mayer
9cc918ce0d Backend: Update label rules
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 20:32:37 +01:00
Michael Mayer
b5424d3b22 Backend: Disable NSFW detection by default to boost performance
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 16:48:32 +01:00
Michael Mayer
74a14e265f Backend: Rename "thumb-algorithm" to "thumb-filter" #157
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 13:46:05 +01:00
Michael Mayer
5bada6c339 Backend: Update label rules
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 13:30:42 +01:00
Michael Mayer
ac7382971d Backend: Add blackman resample filter and set default to cubic #157
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 12:25:16 +01:00
Michael Mayer
c6866bb746 Backend: Update label rules
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 11:08:50 +01:00
Michael Mayer
e184cad553 Backend: Add thumb config options and lower defaults #157
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 11:07:09 +01:00
Michael Mayer
106e9c3e1e Backend: Remove OLC code
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-12 17:23:41 +01:00
Theresa Gresch
9c767dbf39 Add test for classify/labels 2020-01-12 15:43:14 +01:00
Theresa Gresch
6bf12c4d12 Add test for classify/label_rule 2020-01-12 15:43:14 +01:00
Michael Mayer
90df882376 Backend: Update label rules
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-12 15:39:45 +01:00
Michael Mayer
3e4e72b00f Backend: Move capture package to pkg/
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-12 14:25:58 +01:00
Michael Mayer
f8a45b14d9 Backend: Move reusable packages to pkg/
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-12 14:00:56 +01:00
Michael Mayer
fbea88bd74 Backend: Add PPID() to rnd package
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-12 12:32:24 +01:00
Michael Mayer
d6b459186e Backend: Ignore label "ball"
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-12 12:20:53 +01:00
Michael Mayer
387abb915b Backend: Add TitlesAndRanks to txt package
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-12 12:20:10 +01:00
Michael Mayer
f7e865a979 Backend: Make fmt
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-11 02:33:07 +01:00
Michael Mayer
ba9b3cad72 Backend: Increase S2 cell level from 18 to 21 and remove suburb
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-11 01:59:43 +01:00
Kelvin
cd7339d8a0 [Minor/Wording] Update photo.go url route docs (#186)
Minor change.
2020-01-10 10:43:51 +01:00
Michael Mayer
17d7551be5 Frontend: Rename "archive" to "hide" for soft delete #185
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-09 02:09:54 +01:00
Michael Mayer
e9874d6e0c Backend: Compile labels into source #160
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-09 01:21:09 +01:00
Michael Mayer
182b169ac0 Backend: Improve thumbnail rendering #157
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-08 22:29:40 +01:00
Michael Mayer
719fd1a811 Backend: Use mutex in convert so that it can be canceled
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-08 20:51:49 +01:00
Michael Mayer
b37d4472e4 Backend: Use original file if thumb size exceeds limit #172
Plus some mutex and config refactoring along the way...

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-08 19:51:21 +01:00
Michael Mayer
21451e8263 Backend: Code refactoring and clean-up #172
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-08 09:27:39 +01:00
Michael Mayer
b21ad9bece Backend: Rename MediaFile.Exif() to MetaData() #172
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-07 18:13:53 +01:00
Michael Mayer
c147eee30f Backend: Add stub for meta package #172
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-07 17:36:49 +01:00
Michael Mayer
fc65ec61f7 Backend: Add workers config parameter
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 23:43:26 +01:00
Theresa Gresch
4cf7cd98b1 Add test for country.go 2020-01-06 20:16:31 +01:00
Michael Mayer
3d990fc3fd Backend: Add support for PNG, TIFF, BMP and GIF #38 #156
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 17:50:05 +01:00
Michael Mayer
49de1e83aa Backend: Remove filetypes.go from photoprism package
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 15:42:00 +01:00
Michael Mayer
f6d4e62ea8 Backend: Split up "util" package
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 15:22:46 +01:00
Michael Mayer
e43983d579 Backend: Refactor thumbnail package #157
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 14:32:15 +01:00
Michael Mayer
17f6cd9593 Backend: Fix error handling in location lookup #180
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 11:12:26 +01:00
Michael Mayer
5ec2d9e9a4 Backend: Add config parameters #99 #157 #180
This commit adds config parameters for thumbnail quality, max thumbnail size and geocoding api as well as a flag to to disable TensorFlow.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 06:59:35 +01:00
Michael Mayer
10b143f8ae Implement restore for hidden (deleted) photos #167
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 05:45:03 +01:00
Michael Mayer
582113fed4 Backend: Add write mutex to entities and improve test fixtures #164
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 04:24:49 +01:00
Michael Mayer
01ca94d536 Backend: Initialize test db with fixtures #84 #129
Fixtures can be found in assets/resources/examples/fixtures.sql and must be maintained manually for now

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 02:14:17 +01:00
Michael Mayer
0df82a27cd Backend: Code clean-up
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-05 14:26:13 +01:00
Michael Mayer
f89a3d7bb1 Backend: Rename repo package to query
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-05 14:18:40 +01:00
Michael Mayer
a3b3136498 Backend: Add "idx_photos_taken_uuid" for consistent sorting by time
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-05 14:09:17 +01:00
Michael Mayer
474c7a97c9 Backend: Improve photo title fallback
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-04 13:55:39 +01:00
Michael Mayer
be79dd521b Backend: Add stopwords for fulltext indexing
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-04 12:10:05 +01:00
Michael Mayer
c87ec0a07a Backend: Add stopwords for fulltext indexing
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-04 12:09:44 +01:00
Michael Mayer
dc0ba7b808 Backend: Fix config_test.go
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-04 08:10:47 +01:00
Michael Mayer
e27835fb21 Backend: Fix import / index bugs
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-04 07:56:56 +01:00
Michael Mayer
28f62cb9ac Backend: Add mutex to NSFW detector initialization
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 06:16:58 +01:00
Michael Mayer
29db7abfd1 Backend: Add mutex for location updates
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 06:10:28 +01:00
Michael Mayer
4263061a89 Backend: Fix index events after refactoring
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 05:38:21 +01:00
Michael Mayer
b87465f776 Backend: Fix index API after refactoring
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 05:28:40 +01:00
Michael Mayer
f69d970f5a Backend: Code clean-up
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 05:12:18 +01:00
Michael Mayer
057204d379 Backend: Major code refactoring
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 05:03:47 +01:00
Michael Mayer
32fdb72ac9 Backend: Code clean-up
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 04:08:33 +01:00
Michael Mayer
6478417d23 Backend: Remove IndexRelated() (not needed anymore)
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 04:01:40 +01:00
Michael Mayer
c74bb7d13a Import: Use goroutines and channels
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 03:57:28 +01:00
Michael Mayer
d5d3fa8131 Indexer: Use goroutines and channels
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 02:58:26 +01:00
Michael Mayer
a2db77af86 Backend: Refactor RelatedFiles()
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 00:45:58 +01:00
Michael Mayer
357b557aac Backend: Refactor config package and add Workers() func
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 00:03:07 +01:00
Michael Mayer
6da8bd098a Backend: Add support for new Places API #173
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-31 07:16:11 +01:00
Michael Mayer
cf909e2a4e Backend: Use S2 tokens for location and place ID #173
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-31 01:34:27 +01:00
Michael Mayer
7d5bc0619e Add "experimental" feature flag #152 #153 #154
Use this flag to test new features before they are stable.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-30 12:38:11 +01:00
Michael Mayer
843ac27e4a First draft for a "Discover" area #153
It should enable users to find photos by similarity, by color, by season or just randomly.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-29 15:35:23 +01:00
Michael Mayer
a559c0b23c Backend: Rename color "dark" back to "black"
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-29 01:50:23 +01:00
Michael Mayer
cedb222c12 Backend: Move brown next to orange in color list
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-29 00:28:21 +01:00
Michael Mayer
a66d0887bd Add lens, category, color and year search filters
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-28 23:06:44 +01:00
Michael Mayer
fe705bb512 Code clean-up (make fmt)
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-28 20:39:51 +01:00
Michael Mayer
ca8cfffc24 Backend: Prepare database for advanced filtering and grouping #154
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-28 20:24:20 +01:00
Michael Mayer
de6503646c Backend: Refactor location
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-28 12:28:06 +01:00
Michael Mayer
211ed6acb4 Backend: Fix usage description of NSFW flags #170
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-28 09:56:35 +01:00
Michael Mayer
bdf0cde8a6 Backend: Add session package #169
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-28 09:48:36 +01:00
Michael Mayer
875245f1d4 Backend: Use uint64 for location IDs
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-27 23:58:51 +01:00
Michael Mayer
e93f49f87e Backend: Fix olc "out of range" log message
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-27 23:22:09 +01:00
Michael Mayer
e7f757a631 Backend: Refactor position data in client config
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-27 11:17:55 +01:00
Michael Mayer
14617b4387 Backend: Fix country list order
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-27 08:18:10 +01:00
Michael Mayer
a8a5384759 Locations: Reduce S2 level to 15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-27 07:25:40 +01:00
Michael Mayer
04cb2be1d4 Frontend: Edit album name
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-27 07:02:49 +01:00
Michael Mayer
366c70d992 Optimize performance and data structures
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-27 05:18:52 +01:00
Theresa Gresch
f433214c4d Add test for maps/location 2019-12-22 21:39:53 +01:00
Theresa Gresch
1e9fdf260a Add test for osm/title 2019-12-22 21:39:25 +01:00
Theresa Gresch
c7bb862008 Add test for osm/location 2019-12-22 21:38:55 +01:00
Theresa Gresch
a3e9e1a39a Add test for osm/categories 2019-12-22 21:38:33 +01:00
Theresa Gresch
6a480edba1 Add tests for test.go 2019-12-22 19:21:47 +01:00
Theresa Gresch
228682400b Add tests for config.go 2019-12-22 19:21:30 +01:00
Michael Mayer
8e15c1d6fd Code clean-up (make fmt)
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-21 17:24:29 +01:00
Michael Mayer
974880401e Frontend: Make new albums favorite by default and refresh navigation
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-21 17:18:47 +01:00
Michael Mayer
245c8beb69 OSM: Add Village field to Address struct #166
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-21 16:22:24 +01:00
Michael Mayer
768b039889 Backend: Rename "black" to "dark" and "white" to "bright"
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-21 14:29:08 +01:00
Michael Mayer
c4818417ee Backend: Remove drawing label
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-21 11:23:52 +01:00
Michael Mayer
1e7c0c2435 Backend: Improve location hashing and categories
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-20 23:05:44 +01:00
Michael Mayer
f3cf300590 Backend: Refactor location entity and indexer
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-20 20:23:16 +01:00
Michael Mayer
e55bc8330c Backend: Refactor maps and osm packages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-20 12:20:35 +01:00
Michael Mayer
1d0b1f8533 Backend: Refactor maps and osm packages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-20 12:04:26 +01:00
Michael Mayer
52b57e9fba Backend: Add maps package
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-20 11:30:58 +01:00
Michael Mayer
410e82f5c3 Backend: Add OpenStreetMap package
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-19 17:17:13 +01:00
Michael Mayer
be2376d986 Backend: Rename forms_test.go to form_test.go
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-19 17:16:35 +01:00
Michael Mayer
d0104560de Labels: Update labels.yml and location.go
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-19 12:31:13 +01:00
Michael Mayer
fc5d327494 Photo: DATETIME instead of TIMESTAMP for TakenAt #162
Error logging and labels were also improved along the way.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-19 09:37:10 +01:00
Theresa Gresch
10f3c11c61 Add test for settings.go 2019-12-17 19:29:43 +01:00
Theresa Gresch
2658767d72 Add test for entity/share.go 2019-12-17 18:28:47 +01:00
Theresa Gresch
98ebf18ff5 Add test for entity/photo_label.go 2019-12-17 18:28:07 +01:00
Theresa Gresch
b5336eebb0 Add test for entity/photo_keyword.go 2019-12-17 18:27:48 +01:00
Theresa Gresch
cf08fd4256 Add test for entity/photo_album.go 2019-12-17 18:27:25 +01:00
Theresa Gresch
156a13358e Add test for entity/location.go 2019-12-17 18:27:08 +01:00
Theresa Gresch
8cb5041f96 Add test for entity/lens.go 2019-12-17 18:26:50 +01:00
Theresa Gresch
a9f55ed73f Add test for entity/keyword.go 2019-12-17 18:26:33 +01:00
Theresa Gresch
11f29ba5e4 Add test for entity/file.go 2019-12-17 18:26:13 +01:00
Theresa Gresch
da2aefa446 Add test for entity/event.go 2019-12-17 18:25:56 +01:00
Theresa Gresch
2d12e6aa72 Add test for entity/category.go 2019-12-17 18:25:39 +01:00
Theresa Gresch
1b78ae2513 Add test for entity/album.go 2019-12-17 18:25:13 +01:00
Theresa Gresch
4c5219c4f4 Add test for strings.go 2019-12-17 17:03:56 +01:00
Theresa Gresch
dffd61037a Add test for token.go 2019-12-17 17:03:36 +01:00
Theresa Gresch
1f40f7eab7 Add test for mime.go 2019-12-17 17:03:14 +01:00
Theresa Gresch
6e53a88708 Add test for keywords.go 2019-12-17 17:02:56 +01:00
Michael Mayer
f39d34b43a Places: Improve UX
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-17 15:28:54 +01:00
Michael Mayer
ed182537f1 Frontend: Add button to show all labels
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-17 07:13:09 +01:00
Michael Mayer
4ab44c5c23 Frontend: Add photos to new album
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-17 04:39:23 +01:00
Michael Mayer
1cc8cefc92 Labels: Add cache, fix bugs & improve SQL queries
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-16 23:33:52 +01:00
Michael Mayer
2d490812d2 Backend: Higher default threshold for labels #160
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-16 20:22:46 +01:00
Michael Mayer
2281c0c675 Backend: Refactor API source structure
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-16 11:04:49 +01:00
Michael Mayer
5b44d3137f Backend: Exclude location types from labels #160
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-16 10:34:11 +01:00
Michael Mayer
e9c8ca3e54 Backend: Reduce labels and sort them by name #160
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-15 22:49:37 +01:00
Michael Mayer
06b0296797 Backend: Only send count.labels event if priority >= 0
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-15 18:46:20 +01:00
Michael Mayer
4b7857891a Backend: Fix tensorflow_test.go
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-15 18:36:27 +01:00
Michael Mayer
a4b475cbd6 Backend: Improve classification labels
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-15 18:26:16 +01:00
Michael Mayer
b5da75a2e6 Backend: Delete upload folder after import #158
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-15 17:43:17 +01:00
Michael Mayer
016d90054e Backend: Implement NSFW config flags
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-15 17:19:16 +01:00
Theresa Gresch
94c3f534be Make label search working for umlauts 2019-12-15 13:29:18 +01:00
Theresa Gresch
67cf854ae8 Make album search working for umlauts 2019-12-15 13:25:23 +01:00
Theresa Gresch
08d2b29219 Add test to search for umlauts to album search 2019-12-15 13:24:27 +01:00
Theresa Gresch
0a86cad638 Add test to search for umlauts to label search 2019-12-15 13:24:10 +01:00
Theresa Gresch
1053cd0fe3 Add test to search for umlauts to photo search 2019-12-15 13:23:45 +01:00
Michael Mayer
d2eac5aacf Backend: Improve indexer and labels
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-15 11:52:10 +01:00
Michael Mayer
8cce9f7c8c Backend: Set NSFW flag while indexing
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-14 20:35:14 +01:00
Michael Mayer
78eae2f14e Backend: Add NSFW detector
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-14 15:41:37 +01:00
Michael Mayer
9987d65933 Backend: Remove NSFW code from photoprism package
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-14 14:38:43 +01:00
Michael Mayer
63dab60a5e Backend: Prepare TensorFlow for NSFW model
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-13 16:25:47 +01:00
Michael Mayer
13536bb8b2 Backend: Log indexing duration for files
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-13 07:54:05 +01:00
Michael Mayer
f92c21aef9 Indexer: Improve labels
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-13 03:07:26 +01:00
Michael Mayer
645d02d782 Indexer: Improve titles, labels and performance
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-12 16:31:55 +01:00
Michael Mayer
845cc5a77d Backend: API stub for editing photo metadata
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 19:11:44 +01:00
Michael Mayer
4e06deda76 Backend: Rename "models" package to "entity"
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 16:55:18 +01:00
Michael Mayer
dac272468e Sharing: Render preview image & site info
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 14:10:20 +01:00
Michael Mayer
a24bf5611a Backend: Add test workaround, solution requires db fixtures
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 08:36:14 +01:00
Michael Mayer
a702844782 Improve repo test logging
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 08:18:48 +01:00
Michael Mayer
d4b3e456f7 Backend: Move SQL queries to repo package
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 07:37:39 +01:00
Michael Mayer
458a2afbd4 Use Errorf() instead of Printf() for panic log
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 05:38:03 +01:00
Michael Mayer
9d3bb8fb73 Indexing: Disable "convert to jpeg" if library is read only (backend)
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 05:04:41 +01:00
Michael Mayer
592a6eac7a Indexing: Add "Groom metadata" option to UI
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 04:57:32 +01:00
Michael Mayer
559da16f23 Indexing: Move log
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 04:37:15 +01:00
Michael Mayer
288e40aa83 Indexing: Set photo title default to "Unknown"
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 04:35:10 +01:00
Michael Mayer
27ca260942 Indexing: Add "convert to jpeg" and "create thumbnails" options
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 04:12:54 +01:00
Michael Mayer
9086bd18f6 Search for all words that start with query string
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-10 17:12:02 +01:00
Michael Mayer
dc46ab9bc8 Fix indexer issues & use go generate to create stopwords map
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-10 16:58:01 +01:00
Michael Mayer
6d4e42c79e Added option to skip indexing existing files
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-09 08:04:41 +01:00
Michael Mayer
760df93214 Backend: Only return distinct labels and keywords
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-09 04:48:30 +01:00
Michael Mayer
84bf4700ec Fix search query parser (unicode)
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-08 22:45:45 +01:00
Michael Mayer
c796431e1b Faster keyword search (proof-of-concept)
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-08 15:05:35 +01:00
Michael Mayer
661f1bfa9b Albums: Select, delete & download #15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-06 16:47:30 +01:00
Michael Mayer
a32970a888 Albums: Delete API #15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-06 11:56:24 +01:00
Michael Mayer
af154d2f47 Backend: Add/update db columns for sharing
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-06 10:26:57 +01:00
Michael Mayer
47450cad91 Albums: Download single file #15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-05 21:06:53 +01:00
Michael Mayer
1e4d272ee7 Albums: Change zip file name and remove downloaded archives #15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-05 19:49:05 +01:00
Michael Mayer
25d0e92036 Albums: Zip download #15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-05 19:21:35 +01:00
Michael Mayer
85489bf5e1 Albums: Remove photo #15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-05 14:11:45 +01:00
Michael Mayer
77af67dd36 Albums: Refactor API #15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-05 12:10:30 +01:00
Michael Mayer
309317d23d Backend: Improve log messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-05 02:52:00 +01:00
Michael Mayer
fc3d319dfd Backend: Fix API after switching to UUIDs
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-04 16:47:47 +01:00
Michael Mayer
2c95d73520 Albums: Add photos by UUID #15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-04 15:14:04 +01:00
Michael Mayer
c1088d4b54 Albums: Use month and year as default name #15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-04 12:11:11 +01:00
Michael Mayer
ded37fc486 Albums: Add BatchPhotosAlbum API #15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-04 01:46:17 +01:00
Michael Mayer
6f3593ec9a Albums: Use album slug in URL #15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-03 23:55:24 +01:00
Michael Mayer
d3cdffb0a0 Albums: Routing & navigation #15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-03 23:17:55 +01:00
Michael Mayer
c584a79a6f Add album name edit dialog #15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-03 21:25:40 +01:00
Michael Mayer
7339e67201 Backend: Fix profiling timer test
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-03 13:21:41 +01:00
Michael Mayer
2b6b1b9f79 API: Improve logging
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-03 12:51:23 +01:00
Michael Mayer
cd461d5594 Frontend: Real-time logging
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-02 13:14:01 +01:00
Michael Mayer
a2963e9fc6 Add event hook for sending logs to frontend
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-02 00:30:58 +01:00
Michael Mayer
fcca602bfc Import: Change filename after removing old file #136
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-01 20:24:19 +01:00
Michael Mayer
895a1cf175 Import: Fix for "invalid cross-device link" error #136
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-01 16:23:18 +01:00
Michael Mayer
1547ee2145 Refactor clientConfig (frontend configuration)
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-17 06:21:43 +01:00
Michael Mayer
5a85fe9f83 Save and load settings to / from settings.yml
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-17 03:08:13 +01:00
Michael Mayer
53078f41a0 Frontend: Run import / index in background (cancel request)
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-17 02:11:27 +01:00
Michael Mayer
98cb0b2c28 Improve notifications for import / index
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-17 00:55:40 +01:00
Michael Mayer
25742c9f1e Fix: Don't change private together with story flag
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-16 23:56:47 +01:00
Michael Mayer
2c3d6070cc Code clean-up: Rename alert to notify
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-16 23:55:56 +01:00
Michael Mayer
aebbb17a53 Update client config after upload, import or index
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-16 23:22:50 +01:00
Michael Mayer
c602ce82b8 Fix upload page
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-16 17:48:51 +01:00
Michael Mayer
65f084193e Add event hub & websocket for push notifications
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-16 16:06:34 +01:00
Michael Mayer
f88c574f3f Improve HTTP header auth
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-12 05:49:10 +01:00
Michael Mayer
0becb8a92d Stub for settings page & api
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-12 04:34:37 +01:00
Michael Mayer
8e1d872a7b Canonical API headers
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-11 23:38:43 +01:00
Michael Mayer
a14b74dfa6 Config: Add public flag to disable auth #16
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-11 21:10:41 +01:00
Michael Mayer
56c97ec057 Basic login for admin #16
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-08 06:53:40 +01:00
Michael Mayer
49c7fafa87 Upgrade from Mysql 8.0 to MariaDB 10.4
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-07 20:31:50 +01:00
Michael Mayer
3fedffe21b Index F Number instead of Aperture
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-07 19:00:26 +01:00
Theresa Gresch
37602a0956 Feature/improve support for exif (#149)
* #13 Extract flash and imageDescription information from exif

* #13 Add tests for exif.go
2019-11-07 14:22:45 +01:00
Michael Mayer
b194090d6b Make sure TakenAt and TakenAtLocal are always set
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-09-19 15:46:04 -07:00
Michael Mayer
0f47c84138 Implement time zone support for "TakenAt"
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-09-19 14:23:39 -07:00
vijay korimilli
31d5f30637 Handle filenames with special characters #131 2019-09-08 05:53:04 +02:00
Michael Mayer
de1a02694c Mediafile: Remove test for filesystem case-sensitivity #126
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-07-18 16:24:29 +02:00
Theresa Gresch
01b35d0cf5 Add tests for thumbnail api 2019-07-17 17:38:51 +02:00
Theresa Gresch
c7e7014c3a Add tests for labels api 2019-07-17 17:16:33 +02:00
Theresa Gresch
43aebf6066 Add util_test.go to log test logs 2019-07-17 17:03:12 +02:00
Theresa Gresch
418b638999 Add test for time util 2019-07-17 17:01:53 +02:00
Theresa Gresch
7fc789e639 Add tests for album api 2019-07-17 16:46:54 +02:00
Theresa Gresch
4811fc9146 Add test conditions to photos api test 2019-07-17 16:44:21 +02:00
Theresa Gresch
f527dbd272 Add test condition to IsSeparator test 2019-07-17 15:34:34 +02:00
Theresa Gresch
5bc213f6f2 Adapt DirectoryIsEmpty test to create and delete empty directory 2019-07-17 14:59:29 +02:00
Theresa Gresch
8f52e57d9c Add tests for file util 2019-07-17 14:33:01 +02:00
Theresa Gresch
411d998ac6 Add more test conditions to strings test 2019-07-17 13:46:21 +02:00
Theresa Gresch
f7063e7643 Add test for strings functions 2019-07-17 13:26:20 +02:00
Theresa Gresch
429f226c5c Add test for hash function 2019-07-17 13:22:55 +02:00
Theresa Gresch
a995bb87de Add test for makeTensor 2019-07-17 12:22:50 +02:00