Commit graph

582 commits

Author SHA1 Message Date
Michael Mayer 9df31e2592 CLI: Update command descriptions, log messages and levels 2021-11-27 18:41:10 +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 45d1360c18 Metadata: Improve location estimates and UTC handling #1668 2021-11-23 19:23:10 +01:00
Michael Mayer c48310f077 Albums: Improve state geodata and sort by country #1608 #1664 2021-11-18 00:46:34 +01:00
Michael Mayer 0b36818704 People: Update test for updating markers of non-primary files #1710 2021-11-09 18:02:44 +01:00
Michael Mayer 8f9796637d People: Fix updating markers of non-primary files #1710 2021-11-09 18:00:24 +01:00
Michael Mayer c029b2a78c Docker: Rename and update dummy-webdav service 2021-11-09 16:55:16 +01:00
Michael Mayer 2a119380a7 Folders: Ignore names listed in .ppignore #1609 2021-10-09 13:57:28 +02:00
Michael Mayer d1f68e4f7a People: Fix form handling in subject API endpoint #22 #1554 2021-10-06 20:06:52 +02:00
Michael Mayer 767e3ca492 People: Hide person from people and new faces overviews #1554 2021-10-06 15:27:17 +02:00
Eng Zer Jun 44f7700c0c
Enable module graph pruning and deprecate io/ioutil (#1600)
* Backend: Enable Go module graph pruning and lazy module loading

This commit applies the changes by running `go mod tidy -go=1.17` to
enable module graph pruning and lazy module loading supported by Go 1.17
or higher.

Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>

* Backend: Move from io/ioutil to io and os package

The io/ioutil package has been deprecated as of Go 1.16, see
https://golang.org/doc/go1.16#ioutil. This commit replaces the existing
io/ioutil functions with their new definitions in io and os packages.

Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
2021-10-06 07:10:50 +02:00
Michael Mayer a5c2794611 CLI: Improve help for purge command 2021-10-05 22:44:27 +02:00
Michael Mayer de63227767 CLI: Update help texts for commands and flags 2021-10-05 22:33:29 +02:00
Michael Mayer 4f1ecb6ced People: Improve log messages #22 2021-10-05 19:06:05 +02:00
Michael Mayer f7153cdd21 People: Improve logging, command help, and handling of broken files #22 2021-10-05 18:42:39 +02:00
Michael Mayer de737a6eef Logs: Always put time in brackets 2021-10-02 15:19:11 +02:00
Michael Mayer 9a88d7fc6a Logs: Tweak messages and log levels for improved readability 2021-10-02 14:24:44 +02:00
Michael Mayer 74233809b9 Covers: Rename "preview images" to "cover thumbs" for consistency #383 2021-10-01 16:44:50 +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 24eff21aa4 Search: Default to photo names and keywords #1517 #1560
Default to photo name when search term is too short or on the stop list.
Search full text index otherwise, which now include names of people
(requires reindexing).
2021-09-29 20:09:34 +02:00
Michael Mayer f23d288380 Index: Replace changed file hashes and remove orphan markers 2021-09-24 13:13:59 +02:00
Michael Mayer 4a545767d4 API: Add descriptions to config handlers 2021-09-24 02:03:34 +02:00
Michael Mayer eb8bc7b709 Backend: Improve resilience #1544 2021-09-23 23:46:17 +02:00
Michael Mayer 7767d0c892 People: Update photo and file counts after faces have been updated #22 2021-09-23 16:06:59 +02:00
Michael Mayer 8e5a97ed4a People: Simplify thumbnail API for face crops #22 2021-09-20 16:17:10 +02:00
theresa 68dbcf4039 People: Add unit test #22 2021-09-20 09:31:30 +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
theresa 885b2b0e00 People: Add unit tests #22 2021-09-17 17:23:42 +02:00
Michael Mayer 0f90258ef9 Search: Omit full text index if query is too short #1517 2021-09-17 15:52:25 +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 92748180c1 Calendar: Improve hiding empty months #1456 2021-09-06 11:19:18 +02:00
Michael Mayer 82e1fe12a4 People: Use server generated face crops #22 2021-09-05 21:19:52 +02:00
Michael Mayer 6d1179dc03 People: Refactor face cropping #22 2021-09-05 17:10:52 +02:00
Michael Mayer b9d1c7afb3 People: Improve thumb size config and flag descriptions #22 2021-09-05 13:48:53 +02:00
Michael Mayer d21dc3457c People: Refactor thumb package and variable names #22 2021-09-05 12:32:08 +02:00
Michael Mayer 6f5e839e2f People: Move crop package to internal #22 2021-09-05 11:05:33 +02:00
Michael Mayer 34c8f9d7b1 People: Implement crop thumbnail API #22 2021-09-03 17:42:37 +02:00
Michael Mayer c520cb4ee4 People: Add autocomplete for selecting a person #22 2021-09-03 16:14:09 +02:00
Michael Mayer c179a790b8 People: Improve face crop caching #22 2021-09-02 23:47:37 +02:00
Michael Mayer 97af133763 People: Add subjects API #22 2021-09-02 16:12:31 +02:00
Michael Mayer 9acd4a25b9 People: Generate photo titles from subject names #22 2021-09-02 14:23:40 +02:00
Michael Mayer 69014e8216 People: Switch to UIDs for marker API and entity #22 2021-09-01 20:46:15 +02:00
theresa 6b10ae5511 People: Add unit tests #22 2021-08-31 14:59:53 +02:00
Michael Mayer 5db93bb731 People: Abort marker API request if feature is disabled #22 2021-08-31 13:34:29 +02:00
Michael Mayer 72b517d7c7 API: Add code comments 2021-08-31 13:33:27 +02:00
Michael Mayer bc3036599b People: Refactor album, subject, and label previews #22 2021-08-30 18:58:27 +02:00
Michael Mayer fe321b946f People: Add subjects.* websocket event subscription #22 2021-08-30 12:22:23 +02:00
Michael Mayer f5fc97be27 Calendar: Automatically toggle visibility of months #1456 2021-08-29 19:54:50 +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 981c51f977 People: Optimize manually clustered faces #22 2021-08-22 21:06:44 +02:00
Michael Mayer 2e85b3cccd People: Split facial recognition into smaller functions #22
Clustering and matching have been improved along the way. This opens
the door for further optimizations while keeping the code readable.
2021-08-22 16:14:34 +02:00
Michael Mayer d88d9b3781 People: Add API endpoint for removing marker subject associations #22 2021-08-21 16:36:00 +02:00
Michael Mayer babc6a2d6c API: Add more detailed upload error logs #1486 2021-08-19 12:51:55 +02:00
Michael Mayer 67bf46dd9a Auth: Refactor ACL Roles and Resources #98
Renamed ResourcePeople to ResourceUsers. Work in progress.
Added a few "default" roles as a reminder for later.
2021-08-13 21:23:34 +02:00
Timo Volkmann 754a48c8d5 Auth: adapt tests for recent changes 2021-08-12 20:33:14 +02:00
Timo Volkmann 62c38f00b9 Auth: do not allow user to change other users passwords 2021-08-12 20:33:14 +02:00
Michael Mayer 35f0a1925c API: Update config_test.go 2021-08-12 12:06:55 +02:00
Michael Mayer 5d9e26719c Run make fmt 2021-08-11 13:23:17 +02:00
Timo Volkmann 177367e78d Auth: add change password tests #98 2021-08-11 12:58:38 +02:00
Timo Volkmann daf81b20ee Auth: fix wrong api test init sequence #98 2021-08-11 12:57:54 +02:00
Michael Mayer 371a9b3c45 Run make fmt 2021-08-11 11:01:14 +02:00
Timo Volkmann 3829377824 Auth: fixed typo in tests 2021-08-11 10:47:52 +02:00
Timo Volkmann dd0ee298cd Auth: added api tests for user sessions #98 2021-08-10 17:22:15 +02:00
theresa 9263895408 Tests: Adapt tests to fixture changes 2021-08-05 12:33:52 +02:00
theresa 7c16183998 Tests: Adapt tests for internal/api to fixture updates 2021-08-04 17:09:12 +02:00
theresa ca390351d8 Tests: Update fixtures 2021-07-22 18:31:56 +02:00
Michael Mayer 49fd531420 People: Implement marker update API #22 2021-06-02 17:25:04 +02:00
Michael Mayer 7de3713024 Backup: Improve command flags and usage docs #1190 #1193 2021-04-19 13:48:46 +02:00
Michael Mayer 25adf01d79 Backend: Upgrade Go dependencies 2021-04-19 12:24:14 +02:00
theresa fc6227ae58 Tests: Add tests for internal/api 2021-03-11 09:36:47 +01:00
theresa 816aca7420 Tests: Add tests for internal/api 2021-03-10 16:55:55 +01:00
theresa c0d5da40e1 Tests: Add tests for internal/api 2021-03-10 15:52:38 +01:00
theresa aadc870c11 Tests: Add tests for internal/api 2021-03-10 11:30:26 +01:00
Michael Mayer 01d4b1ee31 Exif: Refactor JPEG rotation based on orientation flag #1064
We now manually detect and change the rotation, the imaging
autorotation functionality was disabled for our core use-cases.

anymore.
2021-02-21 22:53:25 +01:00
Michael Mayer 4939e36ac6 Video: Update docker-compose.yml ARM64 example #703
Renamed PHOTOPRISM_FFMPEG_CODEC to PHOTOPRISM_FFMPEG_ENCODER as well.
Log level for errors has been increased to warn.
2021-02-16 11:40:40 +01:00
Michael Mayer 5c3ca4ea5d Video: Implement fallback to default software codec #703 2021-02-15 20:52:14 +01:00
Michael Mayer 341270c779 Video: Remove debug log #703 2021-02-15 20:26:32 +01:00
Michael Mayer 2671edf982 Videos: Add bitrate and pixel format to ffmpeg transcoding params #703 2021-02-14 19:14:12 +01:00
Michael Mayer b09edde419 Index: Improve log messages #1010 2021-02-08 08:09:23 +01:00
Michael Mayer c7753b87ff Library: Show folder covers in Originals #1011 2021-02-07 19:04:17 +01:00
Michael Mayer 1bfb2e1774 Index: Improve save / update functions, remove orphans 2021-02-06 16:30:30 +01:00
Michael Mayer 63ba28426e Navigation: Update counts when saving a photo #996 2021-02-05 18:22:52 +01:00
Michael Mayer bf592bdf7c Backup: Restore archive flag from yaml files #912 2021-02-05 16:32:08 +01:00
Michael Mayer 993e7466fa Download all related files using their existing name by default #449
Related issues:
- Configure download name for files and albums #848
- When downloading live photos, zip all the associated files #437
2021-01-27 21:30:10 +01:00
Michael Mayer 527aa38c96 Albums: Use same cover placeholder as folders 2021-01-26 19:28:42 +01:00
Michael Mayer 2c79340bb7 Archive: Permanently Delete Files After Confirmation #167 2021-01-24 15:28:59 +01:00
Michael Mayer a808f4a5fb PWA: Add anti-cache param to manifest.json 2021-01-08 18:32:08 +01:00
Michael Mayer 6811a07e8a Backend: Remove allegro/bigcache in favor of patrickmn/go-cache #807 2021-01-08 13:29:01 +01:00
Michael Mayer 54e2ca3dab API: Improve thumbnail performance & caching #807 #822 2021-01-08 12:52:26 +01:00
Michael Mayer 2952728098 API: Clear album cover cache when updating private flag(s) #807 #822 2021-01-08 12:20:41 +01:00
Michael Mayer 4f8af03b55 API: Reduce cache TTL for album / folder cover images #822 #846 2021-01-08 09:09:59 +01:00
Michael Mayer 92df3aa724 API: Refactor response headers #822 #846 2021-01-08 09:02:30 +01:00
Michael Mayer 60499867af API: Add Cache-Control and X-Preview-Token headers #822 #846
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2021-01-07 22:55:50 +01:00
Michael Mayer 9ec2381307 Update copyright after year change 2021-01-01 22:37:25 +01:00
Michael Mayer f439a6d050 Shares: Show all albums on overview page #776 2020-12-31 12:34:06 +01:00
Michael Mayer bbd0af3dd3 Shares: Allow reuse of the same share slugs & tokens #776 2020-12-31 12:02:26 +01:00
Michael Mayer 650cfd28d7 UX: Update "albums" and "empty album" icons 2020-12-31 10:23:08 +01:00
Michael Mayer 4e91771afd Tests: Update fixtures and folder test 2020-12-30 18:12:30 +01:00
Michael Mayer fd4cf7b598 UX: Move folders next to Library in navigation & fix folder icon 2020-12-30 18:10:20 +01:00
Michael Mayer 884839331a Frontend: Improve album UX
Moves albums to the top next to photos, and replaces album icons.
2020-12-30 16:07:03 +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 5f94f023ef API: Refactor ACL 2020-12-19 01:54:48 +01:00
Michael Mayer a067fe46ec UX: Add global server config options tab to Settings UI 2020-12-18 20:42:12 +01:00
Michael Mayer 43714c00d5 UX: Refactor Library UI 2020-12-18 13:05:48 +01:00
Michael Mayer 7940786ce9 UX: Refactor config options to be more intuitive
Make sure to update your local config files when upgrading as
the name of some config values has changed. The default
config path has changed from "settings" to "config".
2020-12-18 09:11:42 +01:00
Michael Mayer 449fb7a2c1 Backup and restore albums from YAML files #567 2020-12-17 18:24:55 +01:00
Michael Mayer 37f79324ce Language dropdown: Don't translate locales #712 2020-12-16 13:27:44 +01:00
Michael Mayer 717da1bd34 Downloads: Configure file name schema #675
There is no UI for this setting yet.
2020-12-16 11:59:16 +01:00
Michael Mayer 801dc49dd7 Settings: Add "delete" feature flag and share page title #167 2020-12-13 14:53:26 +01:00
Michael Mayer 7bae7edf50 Videos: Set explicit content type header for MPEG-4 AVC #603 2020-12-12 17:53:19 +01:00
Michael Mayer 473566f404 Videos: Enforce transcoding to MPEG-4 AVC #603 2020-12-12 17:20:31 +01:00
Michael Mayer fe72a1ab52 Frontend: Improve sharing UX 2020-12-12 15:13:16 +01:00
Michael Mayer 73a00efae8 Workaround for bad image rotation in Exif headers #637 2020-12-12 13:05:58 +01:00
Michael Mayer 03d3dd0f02 Unstack related sidecar files #616 2020-12-12 11:08:53 +01:00
Michael Mayer 9fe9ca747f Indexer: Improve unstacking of single files 2020-12-11 23:09:06 +01:00
Michael Mayer 04c17fb77b Indexer: Improve stacking settings and merging 2020-12-11 17:21:13 +01:00
Michael Mayer c0fb3deb06 Indexer: Stack photos while optimizing 2020-12-09 21:44:04 +01:00
Michael Mayer ee49073cf2 Albums: Improve UX and indexing 2020-12-08 22:40:13 +01:00
Michael Mayer ae0af699c6 Stacks: Add advanced indexing options #681 #667 #593 2020-12-07 16:19:03 +01:00
Michael Mayer 846c635f22 Video: Transcoding to AVC1 #636 #513 #624 #603 #533 $440 2020-12-05 04:24:10 +01:00
Michael Mayer 0b16a67c90 WebDAV: Sync video files #504 2020-12-05 02:18:45 +01:00
Michael Mayer d0f8c577b3 Indexer: Add optimize command & automatically fix location data #546 2020-12-05 00:13:44 +01:00
Michael Mayer 902aacece9 Indexer: Merge identical photos (stack files) #576 2020-12-04 19:51:51 +01:00
Michael Mayer 390dc7f7e5 Refactor backend api package 2020-12-04 13:10:32 +01:00
Michael Mayer cfa369cf17 Backend: Clear folder cache after indexing #623
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-11-22 01:30:48 +01:00
Michael Mayer 5daa689975 Backend: Format go imports 2020-11-21 18:08:41 +01:00
Michael Mayer 668025c050 Fix album cover after update #575 2020-11-21 18:05:20 +01:00
Michael Mayer ef316c98b7 Implement batch approve #489 2020-11-21 17:36:41 +01:00
Theresa Gresch 1cd2dfbd22 Backend: Add tests for api 2020-10-19 16:11:42 +02:00
Michael Mayer 45f1a34018 Backend: Use constants for home dir and path separator
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-19 09:52:52 +02:00
Michael Mayer 4e172c450a Improve feedback form
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-05 07:40:11 +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 4fc693fb0b Permanently delete non-primary files #435
This is a fix for unstacking issues in certain situations. More general
photo delete functionality will be added later, see #167.

Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-04 14:21:40 +02:00
Michael Mayer 46b9239026 Backend: Refactor user entity and add pro package
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-10-03 13:50:30 +02:00
Michael Mayer 226f218f80 Backend: Count login attempts and localize error messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-21 09:40:35 +02:00
Michael Mayer d38c84bbfb Update trademark
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-21 02:48:22 +02:00
Michael Mayer 02c3cdc8b9 Backend: Code clean-up in album download API
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-20 19:14:50 +02:00
Andreas Rammhold 2a827739e0
Backend: stream album ZIP files (#492)
ZIP files generated for albums will no longer be written to disk prior
serving them to users. The zip file will be written directly into the
HTTP response.
2020-09-06 14:58:08 +02:00
Michael Mayer ee8d9ad919 Show max cached thumbnail size if uncached is disabled #413
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-18 17:33:02 +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 66a71d7271 Backend: Reduce YAML backup log level
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-17 17:38: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 b1b6e438f7 Backend: Improve log messages
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-15 11:28:54 +02:00
Theresa Gresch a7380357d5 Backend: Add unit tests for internal/api 2020-07-14 18:08:48 +02:00
Theresa Gresch f47256b49f Backend: Add unit tests for internal/api 2020-07-14 18:08:48 +02:00