Commit graph

1003 commits

Author SHA1 Message Date
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
Michael Mayer f47d93be7f Format Go code: go fmt ./internal/... ./cmd/... 2019-06-09 05:22:53 +02:00
Michael Mayer 8642b6f664 Proof-of-concept for labels and search filters 2019-06-09 04:37:02 +02:00
Michael Mayer 9ead0ceef9 Fix TimeZone() 2019-06-07 00:19:12 +02:00
Michael Mayer c230de6b2b Add time zone info to photos (if available) 2019-06-07 00:04:34 +02:00
Michael Mayer aab504ffd6 Initial support for HEIF image files incl improved tests & example files 2019-06-06 14:44:35 +02:00
Michael Mayer 648d35115d Use labels up to 85% uncertainty for photo titles (without location) 2019-06-05 18:49:35 +02:00
Michael Mayer a6131eeddd Move all config files to assets/config and resources to assets/resources 2019-06-05 18:25:20 +02:00
Michael Mayer b835c22f7f Rename synonyms to categories 2019-06-05 14:05:21 +02:00
Michael Mayer 3d0ec3892f Skip city name in title if sub string of location name 2019-06-05 11:58:20 +02:00
Michael Mayer c81b389799 Improve photo titles 2019-06-05 11:39:50 +02:00
Michael Mayer c501abe932 Improve photo classification, indexing, titles & location info 2019-06-05 10:18:03 +02:00
Michael Mayer df995b4f15 Rename tags to labels incl priority, source and uncertainty 2019-06-04 18:26:41 +02:00
Michael Mayer 89a1e8e7fc Console output text changes 2019-06-04 00:22:25 +02:00
Vedhavyas Singareddi 38b9889ef2 Add context for graceful shutdown #112
see pull request #114
2019-06-03 22:58:15 +02:00
Michael Mayer cc4de67c3c Improve DateCreated() comment 2019-06-03 16:32:26 +02:00
Theresa Gresch a18a7d9477 Rename materialColor to indexedColor 2019-06-03 12:32:51 +02:00
Michael Mayer c7f426ac23 OSM: Translate location names to English 2019-05-30 02:53:35 +02:00
Michael Mayer d31305a503 Move static assets from public/ to static/ for clearer structure 2019-05-22 13:55:11 +02:00
Theresa Gresch 8c63c345f0 Removes dark brown from color map to improve color indexing 2019-05-20 21:42:29 +02:00
Michael Mayer d26f7fb0dc Docker: Add testcafe and firefox to development image; change mysql port 2019-05-20 16:39:41 +02:00
Michael Mayer 8124a8cde1 Use label rules to optimize image classification 2019-05-16 08:41:16 +02:00
Michael Mayer 7eeab25ae1 Rename file_saturation to file_chroma in search query 2019-05-16 04:17:45 +02:00
Michael Mayer 0400b6ec7a Add download links to thumbnails in photo viewer 2019-05-16 04:03:55 +02:00
Michael Mayer b73093c2f0 Disable SQL query logger and enable photo model preload for search 2019-05-16 03:57:18 +02:00
Michael Mayer a1f2146648 Set default distance to ~20km 2019-05-16 02:24:02 +02:00
Michael Mayer 1cf23aac3e Additional search parameters incl distance and location (lat/long) 2019-05-16 02:22:38 +02:00
Michael Mayer 9b6ad9968d Add support for time values in photo search, see #2 2019-05-15 23:07:25 +02:00
Michael Mayer 40b542276c Profiling log message for photo search, see #2 2019-05-15 23:00:16 +02:00
Theresa Gresch 5eb32d3353 Change color map for improved color indexing 2019-05-15 22:42:37 +02:00
Michael Mayer 9a320c60df Search string parser similar to GitHub, see #2 2019-05-15 21:51:00 +02:00
Michael Mayer feda86f0e2 Location search must only return results with known location 2019-05-15 14:37:31 +02:00
Michael Mayer 7fd1ed7a7b New "mosaic" view (tiny tiles) 2019-05-15 11:07:26 +02:00
Michael Mayer 441922c35e Add download button to photo viewer 2019-05-14 18:16:35 +02:00