Commit graph

1036 commits

Author SHA1 Message Date
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
Theresa Gresch
30013b6ea7 Add NewTestParamsError and NewTestErrorConfig function 2019-07-17 12:00:15 +02:00
Theresa Gresch
e66f795783 Add test for loadLabels function 2019-07-17 11:59:21 +02:00
Theresa Gresch
d63f4ec09f Created loadLabels function 2019-07-17 11:53:33 +02:00
Theresa Gresch
73b16162ab Add test for bestLabels function 2019-07-17 11:52:26 +02:00
Theresa Gresch
1972662669 Add test for loadlLabelRule function 2019-07-17 10:59:19 +02:00
Theresa Gresch
4aa110396e Add tests for LoadLabelRules, LabelsFromFile, Labels and LoadModel functions 2019-07-17 10:48:23 +02:00
Theresa Gresch
e782abd7e3 Add new test condition to openstreetmap test 2019-07-17 09:53:53 +02:00
Theresa Gresch
a6bf3161c2 Add test for openstreetmap.go 2019-07-17 09:49:00 +02:00
Theresa Gresch
99738790cb Refactored order of tests in mediafile_test.go 2019-07-16 17:27:51 +02:00
Theresa Gresch
ffcb498fce Add tests for HastTimeAndPlace, Aperture, Iso and Exposure functions 2019-07-16 17:11:22 +02:00
Theresa Gresch
f2b6d4f31f Add tests for TimeZone, CameraModel, CameraMake, LensModel, LensMake and FocalLength functions 2019-07-16 17:02:40 +02:00
Theresa Gresch
253923ce48 Add tests for Extension, Basename and Directory functions of mediafiles 2019-07-16 16:45:32 +02:00
Theresa Gresch
3c7dba5d51 Add tests for decodeDimension, Jpeg, IsPhoto, IsRaw, IsHEIF, HasType and IsJpeg functions 2019-07-16 16:25:36 +02:00
Theresa Gresch
bd5d32fa84 Add tests for aspect ratio, height and orientation function to mediafile_test.go 2019-07-16 14:12:10 +02:00
Theresa Gresch
7f444185c0 Add test condition for camera model 2019-07-16 14:11:33 +02:00
Theresa Gresch
8d7cbe3cb0 Add test photoLabel model 2019-07-16 13:10:31 +02:00
Theresa Gresch
d2c9b73a38 Add test for lens model 2019-07-16 13:02:42 +02:00
Theresa Gresch
adead738cd Add tests for label model 2019-07-16 12:57:55 +02:00
Theresa Gresch
2eb0011377 Add test for country model 2019-07-16 12:53:23 +02:00
Theresa Gresch
67c21ab0d1 Add tests for album model 2019-07-16 12:44:13 +02:00
Theresa Gresch
1fec474bd0 Add tests for camera model 2019-07-16 12:36:30 +02:00
Theresa Gresch
ab9938999c Add tests for label search form 2019-07-16 11:18:30 +02:00
Theresa Gresch
8cedf9d192 Add tests for album search form 2019-07-16 11:17:52 +02:00
Theresa Gresch
0b26f813ca Add more test conditions to photos search form 2019-07-16 11:17:33 +02:00
Theresa Gresch
81f6ded2cc Add tests for photos search form 2019-07-16 10:41:30 +02:00
Michael Mayer
9b73c91ed5 Remove index from label name (use slug instead)
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-07-15 23:11:29 +02:00
Michael Mayer
7afb7a87db Search performance improvements (indexes and labels) 2019-07-15 22:54:54 +02:00
Michael Mayer
b628592510 Fix TestConfig_ClientConfig 2019-07-15 21:19:11 +02:00
Michael Mayer
61c1478533 Fix for finding existing photo by time and place 2019-07-15 20:42:49 +02:00
Michael Mayer
c531c5aec9 Use test config for TestConfig_Db and TestConfig_CloseDb 2019-07-14 19:06:44 +02:00
Theresa Gresch
801097c368 Revert change to Db function 2019-07-10 10:33:16 +02:00
Theresa Gresch
31b29fa42b Adapt Db function to return nil in case the db is not initialized 2019-07-10 09:10:46 +02:00
Theresa Gresch
73d5871886 Add tests for config.go 2019-07-10 09:10:02 +02:00
Theresa Gresch
9c6c6f2539 Add tests for config.go 2019-07-09 17:43:34 +02:00
Theresa Gresch
3813ee327a Add tests for config.co 2019-07-09 16:57:37 +02:00
Theresa Gresch
92e03b2069 Add test for indexAll function 2019-07-09 14:30:08 +02:00
Theresa Gresch
775a48727b Add assertion for chroma hex value to colors test 2019-07-09 14:16:41 +02:00
Theresa Gresch
064a5b7c09 Add tests ThumbnailFromFile and CreateThumbnail functions 2019-07-09 13:55:31 +02:00
Theresa Gresch
7e537014e2 Add test for ThumbnailFilename function 2019-07-09 13:26:54 +02:00
Theresa Gresch
46f997e8ba Add tests for invalid thumbnail type and invalid image format for thumbnail function 2019-07-09 12:46:43 +02:00
Theresa Gresch
b99753b051 Add tests for more search queries 2019-07-08 17:42:06 +02:00
Theresa Gresch
0db08e26d2 Add tests for different search queries 2019-07-08 17:25:51 +02:00
Theresa Gresch
f7c18a17f8 Use more suited testdata in lables test 2019-07-08 16:23:34 +02:00
Theresa Gresch
03d7e6af2f Add tests for mediafile.go 2019-07-08 16:09:10 +02:00
Theresa Gresch
416c8ccec0 Refactored RelativeFilename and RelativePath function to be able to deal with paths ending with or without slashes 2019-07-08 16:08:32 +02:00
Theresa Gresch
3dc9abea67 Add tests for label.go 2019-07-08 14:09:21 +02:00
Theresa Gresch
61b5bb028c Add tests for mediafile 2019-07-05 15:56:21 +02:00
Theresa Gresch
f85b7904a3 Adapt importer test to use files from new smaller testdata 2019-07-05 13:48:34 +02:00
Theresa Gresch
3a10911659 Adapt converter test to use files from new smaller testdata 2019-07-05 13:48:13 +02:00
Theresa Gresch
a85805c8e1 Update testdata hash 2019-07-05 13:47:48 +02:00
Theresa Gresch
0173d4943a Use example data instead of testdata in thumbnail tests 2019-07-05 12:38:59 +02:00
Theresa Gresch
a5152e71b0 Remove initialize testdata in search tests 2019-07-05 12:35:57 +02:00
Theresa Gresch
687a1829eb Remove logger declaration from time.go as it is already defined in utils.go 2019-07-05 12:32:59 +02:00
Theresa Gresch
562341e197 Add logger to util.go 2019-07-05 12:32:06 +02:00
Theresa Gresch
fa332454c5 Use file basename in colors test so that assertion gets executed independent from the files location 2019-07-05 10:36:19 +02:00
Theresa Gresch
10a18914da Add HEIF as possible main file format 2019-07-04 18:39:54 +02:00
Theresa Gresch
77bbb1ee84 Add check for HEIF file to converter to convert HEIF images to jpg 2019-07-04 18:38:26 +02:00
Theresa Gresch
c379a936e2 Convert HEIF files to jpeg during import 2019-07-04 18:37:20 +02:00
Theresa Gresch
d145e9258a Make HEIF files compatible with exif functionality 2019-07-04 18:35:14 +02:00
Theresa Gresch
23e0dde0e3 Renamed ctx to conf in search test 2019-07-04 09:52:30 +02:00
Theresa Gresch
4e088ef7b7 Correct spelling mistake (Change Filemame to Filename) in converter test 2019-07-04 09:51:43 +02:00
Theresa Gresch
4b44373253 Use image from examples to prevent use of initialize testdata in tensorflow test to make test faster 2019-07-04 09:50:39 +02:00
Theresa Gresch
516c9a892e Use images from examples to prevent use of initialize testdata in mediafile test to make test faster 2019-07-04 09:49:32 +02:00
Theresa Gresch
31896eda13 Use images from example data to prevent initializing testdata in colors test to make test faster 2019-07-04 09:48:09 +02:00
Michael Mayer
f9c18446bf PhotoLabel: Change index order for improved performance #121 2019-07-03 19:58:53 +02:00
Michael Mayer
10269c6f6c Code clean-up in commands 2019-07-03 19:56:47 +02:00
Michael Mayer
909b1d9f8a Mediafile: Basename should also trim " copy" at the end of file names 2019-07-03 10:55:46 +02:00
Michael Mayer
8f35907533 Importer: Revert replace 2019-07-03 09:49:53 +02:00
Michael Mayer
874e728c9c Importer: DestinationFilename should always return file name 2019-07-03 09:43:11 +02:00
Michael Mayer
d93acb0a63 Importer: Skip / delete files that already exist and check for errors 2019-07-03 09:27:30 +02:00
Michael Mayer
cf61c66ce5 Remove SQL_CALC_FOUND_ROWS from search query #121 2019-07-03 07:56:44 +02:00
Michael Mayer
d596818928 Indexer: Fix query for existing files #56 2019-07-02 23:56:47 +02:00
Michael Mayer
d4526bedd2 Read-only mode: Disable upload & import in frontend and show info #56 2019-07-02 23:01:56 +02:00
Michael Mayer
1c4bd8e218 Fix for photo model (typo in gorm annotations) 2019-07-02 22:14:20 +02:00
Michael Mayer
bc65ad57d5 Disable import, upload and raw converter in read-only mode #56 2019-07-02 22:09:06 +02:00
Michael Mayer
b976c095f3 Code clean-up #56 2019-07-02 22:09:06 +02:00
Michael Mayer
772251ca0d Revert extended names for imported files and fix related test #56 2019-07-02 22:09:06 +02:00
Michael Mayer
89b7886581 Add index to photo_lat, photo_long and taken_at 2019-07-02 22:09:06 +02:00
Michael Mayer
5662fc35ed Refactor indexer in preparation to read only mode #56 2019-07-02 22:09:06 +02:00
Michael Mayer
3655ebf9d8 Use daemon server mode to run acceptance tests #58 2019-06-30 05:38:39 +02:00
Michael Mayer
74f8044cd2 Database: Change init log message 2019-06-30 00:21:02 +02:00
Michael Mayer
5e37cd54fc Update Docker images: new directory structure 2019-06-29 23:27:42 +02:00
Michael Mayer
ad93ad1289 Use dsoprea/go-exif to parse Exif tags #21 2019-06-20 05:38:23 +02:00
Vedhavyas Singareddi
f63efc5f51 Implement daemon mode (#119)
* add daemon process
* add daemon stop command
* add daemon log to log file
* check for running daemons
* minor changes
2019-06-20 01:11:03 +02:00
Michael Mayer
dd10265ae8 Frontend: Add story toggle button to clipboard menu 2019-06-18 07:28:30 +02:00
Michael Mayer
df5aa57e68 Albums: Code clean-up and small fixes #15 2019-06-18 06:37:10 +02:00
Michael Mayer
4553344550 Add event table 2019-06-17 22:39:32 +02:00
Michael Mayer
6404b76c97 Add views counter to album, photo and share 2019-06-17 22:39:32 +02:00
Michael Mayer
27530bc0be Add shares table for sharing photos and albums 2019-06-17 22:39:32 +02:00
Michael Mayer
bb8c2dbbea Photos: Add story flag for blogging / timeline 2019-06-17 22:39:32 +02:00
Theresa Gresch
5f63f2999c Implement first album functionality 2019-06-17 21:45:06 +02:00
Michael Mayer
e2c630e57c Change chroma max value from 16 to 100 for better results 2019-06-15 16:11:55 -07:00
Michael Mayer
3ee3946011 Proof-of-concept for import and index from Web UI 2019-06-15 11:03:54 -07:00
Michael Mayer
0f6867af79 Photos: Add private and sensitive flag 2019-06-14 18:44:10 -07:00
Michael Mayer
ea3f209f8f Proof-of-concept for batch like & delete
Requires additional code clean-up and unit / acceptance tests
2019-06-14 16:35:18 -07:00
Michael Mayer
9e761549e4 API: Remove debug log from upload 2019-06-14 15:29:12 -07:00
Michael Mayer
e141b9edcd Photos: Add LocationEstimated flag 2019-06-14 15:15:49 -07:00
Michael Mayer
c133dbe3f9 Indexer: Code and label clean-up 2019-06-14 13:01:58 -07:00
Michael Mayer
2005da9a25 Rename "Import" to "Library" and add tabs to page 2019-06-14 12:16:59 -07:00
Michael Mayer
60e9346f08 Proof-of-concept for upload & import 2019-06-13 11:26:01 -07:00