Commit graph

233 commits

Author SHA1 Message Date
Michael Mayer d6e2537b33 Form: Improve serialize warning log message #1814 2021-12-15 12:39:02 +01:00
Michael Mayer 2dedbb83dc Sanitize: Add name, query, state, and username filters #1814 2021-12-15 12:24:05 +01:00
Michael Mayer 35ac1e730c Docs: Update URL 2021-12-12 20:48:05 +01:00
Michael Mayer 2d350c190f Places: Only show nearby photos in viewer if > 50 results on map 2021-11-26 21:10:52 +01:00
Michael Mayer 650817a9e0 API: Add prefix to the source filename of search request handlers
Finding the right code is easier when the name matches related
functionality in other packages.
2021-11-26 14:28:50 +01:00
Michael Mayer 3e6c7052bb Places: Refactor GeoJSON API endpoint 2021-11-26 13:59:10 +01:00
Michael Mayer a354a17041 Auth: Normalize Username (trim space, lowercase) #1103 #1309 #1546 #1610 2021-11-12 09:10:15 +01:00
Michael Mayer e4fd294689 Places: Normalize US & CA state names #1664 2021-11-09 11:42:10 +01:00
theresa 244aaaa3e7 Tests: Add unit tests 2021-10-22 18:00:09 +02:00
Michael Mayer 25a954d568 Search: Add live and raw search filters, improve faces filter #22 2021-10-13 16:12:56 +02:00
Michael Mayer 767e3ca492 People: Hide person from people and new faces overviews #1554 2021-10-06 15:27:17 +02:00
Michael Mayer f6c18f7767 People: Count the number of photos for each subject #22
Also fixes issues with older versions of MariaDB, see #1544
2021-10-01 16:34:29 +02:00
Michael Mayer a3e8457ad5 Search: Use photo title as fallback #1517 #1560 2021-09-29 22:57:26 +02:00
Michael Mayer 070efcbc66 Search: Improve "year", "month", and "day" filters 2021-09-20 23:32:35 +02:00
Michael Mayer 04d2cfa650 People: Use slug as search filter #22 2021-09-20 12:36:59 +02:00
Michael Mayer 1f92f294dd People: Normalize names #22 2021-09-19 13:35:44 +02:00
Michael Mayer e82533cdf0 People: Add unknown faces overview page #22 2021-09-18 20:41:30 +02:00
Michael Mayer ed22f245db People: Add faces API endpoint & JS model #22 2021-09-18 15:32:39 +02:00
Michael Mayer 8492efebcf People: Improve face thumbnails on overview page #22 2021-09-17 18:51:24 +02:00
Michael Mayer ece15c6ade People: Add overview page with search and context menu #22 2021-09-17 14:26:12 +02:00
Michael Mayer 97af133763 People: Add subjects API #22 2021-09-02 16:12:31 +02:00
Michael Mayer 69014e8216 People: Switch to UIDs for marker API and entity #22 2021-09-01 20:46:15 +02:00
Michael Mayer bc3036599b People: Refactor album, subject, and label previews #22 2021-08-30 18:58:27 +02:00
Michael Mayer 11d1034752 People: Add keywords, subjects, and albums search filters #22 #882 2021-08-29 16:16:49 +02:00
Michael Mayer 03cdc8bb7d People: Improve edit UI and stability #22 2021-08-24 14:27:34 +02:00
Michael Mayer 885024d592 People: Improve face clustering and indexing #22 2021-08-19 21:12:38 +02:00
Timo Volkmann da7e4fbc97 Auth: Refactor user entity functions #98 2021-08-18 20:18:39 +02:00
Michael Mayer c315c58bb5 People: Revert marker form and test #22 2021-08-16 01:52:02 +02:00
Michael Mayer 003982afe0 People: Remove face embeddings and landmarks from JSON response #22
Improves performance by reducing response size.
2021-08-16 01:45:36 +02:00
Michael Mayer da94e9ed0f People: Refactor faces worker and related entities #22 2021-08-16 00:29:36 +02:00
Michael Mayer d767e50b37 People: Improve face clustering #22
Work in progress.
2021-08-12 12:05:10 +02:00
Michael Mayer 1fc4ef123b People: Add face clustering worker #22
Work in progress. No performance optimizations yet.
2021-08-12 04:54:20 +02:00
Michael Mayer c87d5da2e3 Config: Add CDN URL option #425 #1351 2021-07-05 16:41:43 +02:00
Michael Mayer 49fd531420 People: Implement marker update API #22 2021-06-02 17:25:04 +02:00
Michael Mayer 0d160fe833 People: Simplify "faces" search #22 2021-05-26 10:46:32 +02:00
Michael Mayer 5ecba4926a People: Show number of faces in edit dialog #22 2021-05-26 09:51:00 +02:00
Michael Mayer 27b14087e2 People: Add "people" search filter #22 2021-05-25 11:55:44 +02:00
theresa fc6227ae58 Tests: Add tests for internal/api 2021-03-11 09:36:47 +01:00
Michael Mayer 3e4bce800d API: Remove Year and Month from editable album values #897 2021-01-15 16:53:00 +01:00
Michael Mayer 9ec2381307 Update copyright after year change 2021-01-01 22:37:25 +01:00
Michael Mayer 8e22fbf8f6 Metadata: Store and compare data source for details #755 2020-12-31 13:51:31 +01:00
Michael Mayer 12cb89eca5 Stacks: Use "Stackable" int8 instead of "Unstacked" bool #616 #667 2020-12-19 19:15:32 +01:00
Michael Mayer c2e5663da0 Indexer: Add folder albums while indexing 2020-12-14 20:37:54 +01:00
Michael Mayer c6dd1c608d Search: Use quotes for serializing strings containing ":" 2020-12-14 10:35:37 +01:00
Michael Mayer 1321192eff Search: Ignore escaped ":" in query parser 2020-12-14 09:21:29 +01:00
Michael Mayer 04c17fb77b Indexer: Improve stacking settings and merging 2020-12-11 17:21:13 +01:00
Michael Mayer 902aacece9 Indexer: Merge identical photos (stack files) #576 2020-12-04 19:51:51 +01:00
Michael Mayer 8ea5a882b4 Backend: Add filename search filter
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-03 21:07:38 +01:00
Simon Waldherr f10459c447
Backend: Add comments (#562) 2020-11-22 10:38:45 +01:00
Michael Mayer 5daa689975 Backend: Format go imports 2020-11-21 18:08:41 +01:00
Theresa Gresch f38434dfb0 Backend: Add unit tests 2020-10-20 11:05:02 +02:00
Theresa Gresch c72ddbedcb Backend: Add unit tests 2020-10-20 10:07:27 +02:00
Michael Mayer b87e860444 Add feedback form
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-04 22:22:53 +02:00
Michael Mayer d38c84bbfb Update trademark
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-21 02:48:22 +02:00
Michael Mayer 28ff51d5cf Backend: Adjust log levels and messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-18 13:21:43 +02:00
Michael Mayer 9c1518c5ef Backend: Remove unused duplicate filter from photo search
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-18 13:09:22 +02:00
Michael Mayer 6847b8b5f9
Complete file browser with symlink support and full folder / file names (#412)
* Backend: Code clean-up

Signed-off-by: Michael Mayer <michael@liquidbytes.net>

* File Browser: Show complete, original file and folder names #408

Signed-off-by: Michael Mayer <michael@liquidbytes.net>

* File Browser: Follow symlinks #201 #403 #407

Warning: Following symlinks can make folder lists non-deterministic
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-16 15:43:23 +02:00
Michael Mayer 0e5fe5eb43 Index image projection and add panorama filter
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-16 13:02:48 +02:00
Michael Mayer db5edb8e4d Add flag for 360° panoramas #352
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-15 20:59:33 +02:00
Michael Mayer be94ff624c Edit photo type and sort by recently edited #394
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-14 12:42:31 +02:00
Michael Mayer 212857318b UX: Rename group(ed) to stack(ed) #394
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 15:59:54 +02:00
Michael Mayer 4fb263f8a4 Add location field to album metadata
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-12 16:36:39 +02:00
Michael Mayer 5648c9616e Backend: Refactor location data tables and entities
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-12 08:27:05 +02:00
Michael Mayer e1c45c4d5f Rename "location" to "geo" to have a short, common prefix for geo data
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-11 23:43:29 +02:00
Theresa Gresch db2819821b Backend: Add unit tests for internal/form 2020-07-08 08:45:31 +02:00
Theresa Gresch f58ca6dcda Backend: Add unit tests for internal/form 2020-07-07 18:03:20 +02:00
Michael Mayer 4ddf241a6c UX: Rename "analog" to "scan"
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-06 14:35:25 +02:00
Michael Mayer 3b8f3ebd23 Improve date input parsing #274 #358
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-06 10:32:37 +02:00
Michael Mayer ca154f3bb3 Replace date picker with day, month & year inputs #274 #358
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-06 07:41:33 +02:00
Michael Mayer 41be5cb133 Backend: Add "grouped" search filter to find photos with multiple JPEGs
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-05 17:22:26 +02:00
Michael Mayer f79cfc6513 Analog flag and search filter for photos
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-05 14:59:40 +02:00
Michael Mayer 581404648c Add search filter for content that has no album #377
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-05 14:48:49 +02:00
Michael Mayer 56cf8e95e0 Add change password form to settings
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-29 21:14:34 +02:00
Michael Mayer 63f940b694 Sharing: Use single image as preview for small albums #18
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-28 15:23:15 +02:00
Michael Mayer f2955fdefc Sharing: Refactor link entity and database columns #367 #18
Add missing fields in js model and rename fields for mode clarity. A link token can be valid for multiple shares.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-28 14:52:26 +02:00
Michael Mayer e7fecd3b27 Improve album sharing and album UX #18 #309
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-27 13:08:45 +02:00
Michael Mayer 4aa7b6cc97 Sharing: Generate share preview images #18
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-26 14:26:36 +02:00
Michael Mayer ff704d56a0 Sharing: Optional view count limit #18
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-26 12:24:05 +02:00
Michael Mayer 1f1f92408a Sharing: Token authentication #18
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-25 01:20:58 +02:00
Michael Mayer 436a9487d3 Backend: Remove archived items from albums
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-24 12:01:25 +02:00
Michael Mayer 1a0398d01f Docs: Fix indentation
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-23 13:53:11 +02:00
Michael Mayer 4154715512 Docs: Update package information and copyright
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-23 13:44:14 +02:00
Michael Mayer f7fbc6e0de Show max 500 files per folder #364
No infinite scrolling in this case... Maybe we add it later. Waiting for user feedback.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-22 21:21:02 +02:00
Michael Mayer 722d7dd421 Improve link sharing dialog and api #18
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-22 15:16:26 +02:00
Michael Mayer 41608d077d Add album share dialog #18
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-16 12:51:46 +02:00
Michael Mayer d5e4aec8ea Frontend: Add fields to advanced tab (edit dialog)
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-10 18:26:05 +02:00
Michael Mayer f0c51abc21 Frontend: Add advaned tab to photo edit dialog
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-10 14:13:57 +02:00
Michael Mayer ca8a8466d4 Indexing bug fixes and UX improvements
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-04 14:56:27 +02:00
Michael Mayer 18f7a999fd Backend: Add search filter for "original" file name #260
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-03 10:33:09 +02:00
Theresa Gresch ad9167360d
Feature/246 (#345)
* Import: Implement "add to album" in backend #246

Signed-off-by: Michael Mayer <michael@liquidbytes.net>

* Import: Implement "add to album" in frontend #246

Signed-off-by: Michael Mayer <michael@liquidbytes.net>

* Add OriginalName to photo search result

Signed-off-by: Michael Mayer <michael@liquidbytes.net>

* Add json tags to PhotoName and PhotoPath

Signed-off-by: Michael Mayer <michael@liquidbytes.net>

* Photo: Use EstimateCountry() in UpdateLocation()

Signed-off-by: Michael Mayer <michael@liquidbytes.net>

* Photo: Set OriginalName earlier while indexing

Signed-off-by: Michael Mayer <michael@liquidbytes.net>

* Ignore whitespace when stripping sequence from filename #335

Signed-off-by: Michael Mayer <michael@liquidbytes.net>

* Fix labels count for SQLite

Signed-off-by: Michael Mayer <michael@liquidbytes.net>

* Import: Show name of new albums #246

Signed-off-by: Michael Mayer <michael@liquidbytes.net>

* Frontend: Add acceptance test files

Co-authored-by: Michael Mayer <michael@liquidbytes.net>
2020-06-01 09:45:24 +02:00
Michael Mayer 5d92ece264 Albums: Add category filter
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-30 21:11:56 +02:00
Michael Mayer dd442ab9e9 Add moments #154
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-30 01:41:47 +02:00
Michael Mayer 9a5d4fa719 Backend: Indexing improvements #154
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-29 18:04:30 +02:00
Michael Mayer f6c929528e Locations and places: Revert key renaming
Code reads better this way.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-29 12:56:24 +02:00
Michael Mayer dcc610d7a9 Use AlbumType to distinguish between manual collections and moments #154
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-29 12:21:17 +02:00
Michael Mayer 10d5f433aa Albums/Folders: Add category, country, year & month columns #154
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-26 09:02:19 +02:00
Michael Mayer 2156afd85a File browser: Implement clipboard; refactor entities and fixtures #260
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-25 19:10:44 +02:00
Michael Mayer 03ec4b586d Initial commit for folders and moments #154 #260 #331
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-23 20:58:58 +02:00
Michael Mayer a7122ff4e1 Add /folders API to get directory lists for browsing #260
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-22 16:29:12 +02:00
Michael Mayer 0eb30715b3 Backend: Add folder as alias for path in search form
Due to popular request, see https://twitter.com/browseyourlife/status/1263442036570697731

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-21 16:46:22 +02:00