Commit graph

2759 commits

Author SHA1 Message Date
Michael Mayer cb66022925 Index: Refactor JSON sidecar creation #439 #3588
A JSON sidecar should now exist in the MediaFile.RelatedFiles() method
so that the information can subsequently be used to extract an embedded
video from the media file, if necessary.

Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-08-14 12:51:22 +02:00
Michael Mayer c82a4b2287 HTTP: Refactor Unix socket support #2337 #3595
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-08-14 10:43:05 +02:00
Silver Bullet 2bf50082f5
Backend: Support listening on Unix Socket #2337 #3595
When HTTP listening address starts with unix: and contains /, listen
at given path instead of a TCP socket.

TLS or AutoTLS will not work since there is no TLS layer when using
the unix domain socket.
2023-08-14 10:00:35 +02:00
graciousgrey 71c30e4218 Tests: Add unit tests 2023-08-11 14:48:28 +02:00
graciousgrey e6679e6c50 Tests: Add unit tests 2023-08-09 15:56:16 +02:00
graciousgrey b32e3cd244 Tests: Add unit test 2023-08-08 13:40:12 +02:00
graciousgrey f9ea868582 Tests: Add unit tests 2023-08-08 13:01:48 +02:00
graciousgrey 470694e774 Tests: Add unit tests 2023-08-07 16:27:45 +02:00
Michael Mayer 16c78767b2 Metadata: Parse Caption and Caption-Abstract as Description #3567
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-08-07 14:56:47 +02:00
graciousgrey eece27a0ae Tests: Add unit tests 2023-08-07 14:46:32 +02:00
graciousgrey 9f17d64ea3 Tests: Add unit tests 2023-08-07 14:46:32 +02:00
graciousgrey a3f253c9de Tests: Add unit tests 2023-08-04 17:34:28 +02:00
graciousgrey a3bb4a2f0e Tests: Add unit tests 2023-08-04 16:23:08 +02:00
graciousgrey 63daf10bf9 Tests: Add unit tests 2023-08-02 16:44:12 +02:00
graciousgrey 5ba00e74e5 Tests: Add RefID to session fixtures 2023-08-02 16:42:17 +02:00
graciousgrey ca40954796 Tests: Add unit tests for wildcard search #2050 2023-08-02 16:00:57 +02:00
Michael Mayer 82dac4b7db Metadata: Change order of titles source fields #3567
This is a workaround to avoid character encoding issues, see:
- https://github.com/photoprism/photoprism/discussions/3567
- https://exiftool.org/TagNames/IPTC.html

Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-08-01 15:12:06 +02:00
Michael Mayer 36bac7ab48 Faces: Add POST REST endpoint to manually create new file markers #1548
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-07-27 19:13:00 +02:00
graciousgrey 098255c741 Tests: Add unit tests #2596 2023-07-27 16:09:23 +02:00
graciousgrey 6b8a75f29f Tests: Add unit tests 2023-07-26 16:38:48 +02:00
graciousgrey b59b954d1f Tests: Add unit tests 2023-07-26 16:38:48 +02:00
Michael Mayer 6c1df15f34 Backend: Run "make fmt" #3566
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-07-25 19:15:09 +02:00
Gokce Dilek 1df12bd5c9
Albums: Refresh updated timestamp when photos are added (#3566)
Related Issue:
- #3080
2023-07-25 19:10:01 +02:00
graciousgrey ff25b5f755 Tests: Add unit tests 2023-07-25 18:42:18 +02:00
graciousgrey c9d1413ddb Tests: Add more unit tests #3512 2023-07-24 15:02:38 +02:00
graciousgrey 33b08f15e5 Tests: Add unit tests 2023-07-24 14:02:18 +02:00
graciousgrey 69d302248c Tests: Add unit tests 2023-07-24 13:38:02 +02:00
Heiko Mathes 60d280430e
Places: Add Cluster View (#2596)
* enable clustering on all zoom levels

* add latmin, latmax, lngmin and lngmax to search api

* open prefiltered search when clicking a cluster on the map

* start moving places pictures to overlay

* update scrollbar hide todo comment

* add todo comments for cluster view

* start implementing possitbility to close cluster view via back button

* move selected cluster to single query param

* improve back-navigation of cluster-view

* remove outdated comment

* start showing preview-images in clusters

* cleanup some cluster-code in places

* use rounded squares instead of circles so more from the image can be seen

* try improving map visibility by adding borders

* add counter bubble to places view

* remove obsolete comment

* remove console.log

* add todo comment to fix search on cluster-view open

* fix closing a cluster resetting the places-filter

* prevent old cluster markers from being visible while zooming

* prevent cluster-previews from being smaller than single-image-previews

* make cluster-preview-images fill the whole available area and scale them to their bounding box

* increase clusterRadius to reduce likelyhood of clusters colliding on the map

* update obsolete todo comment

* try making cluster view look less broken for small clusters. elements in photo-view use block-relative percentages based on viewport-relative media queries

* remove seemingly unrequired code

* fix cluster view after "pages"-components moved to "page" (singular)
2023-07-24 10:12:22 +02:00
Michael Mayer 2a002eca78 API: Remove unnecessary log message from batch delete handler #272
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-07-23 18:32:02 +02:00
Michael Mayer ad3da85ecb UX: Add Delete All button to archive page toolbar #272
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-07-23 17:57:48 +02:00
Alex Kirk 5ca3329e2d
XMP: Add support for reading fstop:favorite flag (#1873)
* Add support for fstop:favorite in XMP files
* Incorporate suggestions
2023-07-23 15:43:32 +02:00
Michael Mayer 062495b6f2 Albums: Refresh UpdateAt after adding entries #3080 #3566
This requires adding unit tests and checking if there are other
situations where the content of an album is changed by the user
and therefore updating the timestamp would be appropriate.

Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-07-23 14:26:14 +02:00
graciousgrey b5b13b0fbb Tests: Add unit tests 2023-07-20 20:06:27 +02:00
graciousgrey 4727f769d2 Tests: Add unit tests 2023-07-20 20:02:02 +02:00
graciousgrey 0817f1876d Tests: Add unit tests 2023-07-20 20:02:02 +02:00
graciousgrey e1364f288c Tests: Add unit tests 2023-07-20 20:02:02 +02:00
Michael Mayer 4931889b5e Auth: Improve privilege level change detection #3512
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-07-18 23:35:10 +02:00
Michael Mayer 08070978cf Videos: Don't skip transcoding QuickTime files, only MP4 AVC #3525
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-07-18 21:23:56 +02:00
Michael Mayer 3b7b551cca Media: Add test for creating thumbs from broken JPEG #2721
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-07-18 17:23:39 +02:00
Michael Mayer 7b9b2ae0c6 Auth: Delete user sessions after a permission level change #3512
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-07-18 16:38:10 +02:00
Michael Mayer 44603857fa Config: Shorten video transcoding flag descriptions #3466 #3498 #3549
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-07-18 16:20:25 +02:00
Michael Mayer 3cf1c699df Video: Refactor FFmpeg Transcoding Size Limit #3466 #3498 #3549
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-07-18 15:15:04 +02:00
Michael Mayer cc5ff21b4a Video: Add transcoding libs and improve error handling #3466
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-07-15 15:17:41 +02:00
Michael Mayer 651782eb4d Security: Add PHOTOPRISM_DEFAULT_TLS config option #3509
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-07-15 12:01:06 +02:00
graciousgrey 5fb9e95217 Tests: Add unit test #3493 2023-07-14 11:51:28 +02:00
Michael Mayer 0e93bd8aa2 Auth: Ensure clipboard is cleared on logout and privilege change #3512
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-07-14 09:14:57 +02:00
Michael Mayer 11e7d3f0d1 JPEG: Refactor error correction for broken files #2463 #2721 #3363
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-29 19:28:56 +02:00
Michael Mayer e5db48b300 Search: Update geo filter form notes #3493
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-29 18:40:24 +02:00
Michael Mayer 5041b7f211 Search: Enhance "geo" filter to find pictures without coordinates #3493
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-29 18:35:02 +02:00
Daniel Albers da61515c4a
JPEG: Automatically fix files with missing EOI marker (#2721) 2023-06-29 10:34:51 +02:00
Michael Mayer 03f92bc0db Config: Fix expected return value in config_ffmpeg_test.go #3510
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-29 10:17:04 +02:00
Lukas 19ac83dd20
Config: Downscale videos based on largest dimension (#3510)
* Adds resolution limit

* Fixes 2 video filters and makes the env variable work

* Adds FFMPEG_RESOLUTION to all the docker-compose files

* Makes the resolution based on the longer side

* Fixes failing test
2023-06-29 10:07:47 +02:00
Michael Mayer 8e43186454 Config: Generate default HTTPS/TLS certificate on first startup #3509
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-28 16:50:04 +02:00
Michael Mayer a6d3eee331 Config: Fix FFmpegResolution() func and related test #3498
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-28 16:45:53 +02:00
graciousgrey 9b3917dd00 Tests: Add unit tests 2023-06-28 16:12:11 +02:00
graciousgrey 19699c49c0 Tests: Add unit tests 2023-06-28 16:07:06 +02:00
Lukas 83d10ea00e
Config: Add video transcoding resolution option (#3498)
* Adds resolution limit

* Fixes 2 video filters and makes the env variable work

* Adds FFMPEG_RESOLUTION to all the docker-compose files
2023-06-28 15:22:52 +02:00
graciousgrey 186d1f26e7 Tests: Add unit tests for internal/entity 2023-06-26 15:55:05 +02:00
Michael Mayer accb17bec9 Auth: Update invalid role log message in user entity
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-26 11:46:32 +02:00
graciousgrey 17242fb079 Tests: Add unit tests #3482 2023-06-23 18:38:54 +02:00
graciousgrey 749d4b6d7e Tests: Add unit tests #3482 2023-06-23 18:38:22 +02:00
Michael Mayer 87b6d72477 CLI: Improve length check in "photoprism passwd" command #3482
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-19 17:24:02 +02:00
Michael Mayer fa5d8b42bc Albums: Replace tabs with spaces in SQL query #3481
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-15 17:01:34 +02:00
Michael Mayer ae095f465f Albums: Flag all unknown / deleted photos as missing to fix counts #3481
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-15 16:59:09 +02:00
Michael Mayer 90a18f6e7d Photos: Skip related albums from which a photo was removed #3095
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-15 11:35:45 +02:00
Michael Mayer a7c8f0102f Config: Refactor directory initialization and improve inline docs
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-14 16:44:45 +02:00
Michael Mayer a7cc1e367f CLI: Change type of import --dest flag to string #3473
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-13 19:00:34 +02:00
Michael Mayer edf53a921a Moments: Update holidays and pets #3081
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-13 12:55:06 +02:00
Fly Man 4ecece557d Update MomentLabels
* Add large Holidays
* Add assortment of pets
2023-06-13 12:43:41 +02:00
Michael Mayer 6a4bfa84be UX: Show albums in the Info tab of the edit dialog #3095
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-13 11:45:15 +02:00
Mike Maravillo 97ae47b06e Removed omit tag so that Photo's Album array gets populated 2023-06-13 09:27:29 +02:00
Michael Mayer 092fe04b2d CLI: Shorten "find" command usage description #3222
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-12 19:43:07 +02:00
Michael Mayer 39e26b7f0e CLI: Improve "find" command to support more output formats #3222
It is now also possible to limit the number of results (10k by default).

Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-12 19:07:41 +02:00
SeeSchloss a891da7dec Backend: Add a 'search' CLI command 2023-06-12 18:02:26 +02:00
Michael Mayer 59bf7cb9bd Config: Update CSP header to allow loading content from a CDN #3454
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-07 09:22:10 +02:00
Michael Mayer a45f8d40cf Server: Add "Access-Control-Allow-Origin" to header/security.go
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-06 14:49:28 +02:00
Michael Mayer bff649469d Config: Make PhotoPrism compatible with MariaDB 11 #3443
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-02 17:07:10 +02:00
Michael Mayer 1554e00039 Albums: Return all matching results when searching folders #3441
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-01 17:21:31 +02:00
Michael Mayer 7c0af33b73 Backend: Update Go dependencies
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-06-01 16:35:07 +02:00
Michael Mayer 36fc26f0c7 Hub: Update service URL
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-05-18 04:43:50 +02:00
Michael Mayer 0b780defbb Config: Update flags.go and cli_flags_test.go
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-05-13 19:38:54 +02:00
Michael Mayer 0e415fec1c Config: Make options available to all users
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-05-13 16:02:49 +02:00
Matthew Roy 7abf5c70cf Clarify trusted-proxy option env TRUSTED_PROXY
Clarify that PHOTOPRISM_TRUSTED_PROXY is passed to Gin per 457fabd7e1/docs/doc.md (dont-trust-all-proxies)
2023-05-07 17:13:42 +02:00
Michael Mayer 232ec78c56 Sharing: Verify that record exists before proceeding with upload #3379
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-05-06 11:27:52 +02:00
Michael Mayer 7a7ffbced2 CLI: Reduce logging output in production environments #3370
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-05-05 09:55:00 +02:00
Michael Mayer b9181bee6f Config: Update cli_flags_test.go
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-05-03 12:57:41 +02:00
Michael Mayer c405f6eff2 Config: Tag advanced options for documentation purposes
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-05-01 18:32:37 +02:00
Michael Mayer 96011b2c2f Metadata: Extract Notes from UserComment field #3352
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-04-29 14:35:44 +02:00
Michael Mayer 958766ba79 Config: Change wording from sponsors to members
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-04-29 13:52:42 +02:00
Michael Mayer cbfd5a957f Config: Update admin username and password flag descriptions
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-04-29 13:46:35 +02:00
Michael Mayer 6805aea115 About: Update footer and info page
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-04-29 10:55:21 +02:00
Michael Mayer 48a280b119 Config: Update app icon usage description to include square icon variant
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-04-23 09:53:02 +02:00
Michael Mayer 99858cb8d8 API: Skip sending token headers in public mode to allow caching #2875
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-04-14 18:06:57 +02:00
Michael Mayer 89eb11de9f Metadata: Save TakenAtLocal in YAML backup files #3338
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-04-14 15:18:23 +02:00
Michael Mayer ffd307e11d Videos: Add immutable cache header to API response #2875
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-04-14 14:46:56 +02:00
Michael Mayer d74a9c097e Config: Add option to stream videos over the specified CDN #2875
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-04-14 11:47:27 +02:00
Michael Mayer d50da1e007 Auth: Only allow setting a password hash for the initial account #1987
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-04-13 19:46:00 +02:00
Michael Mayer d48db6cae4 Sync: Prevent downloads when read-only mode is enabled
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-04-13 18:14:10 +02:00
Michael Mayer 163398b76c Passwords: Enforce 72-character limit and improve bcrypt support #1987
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-04-13 17:21:18 +02:00
Michael Mayer f033fed01c Config: Set default theme and locale
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-04-05 12:21:05 +02:00