Commit graph

604 commits

Author SHA1 Message Date
Michael Mayer eb18ae89fe Auth: Fix login URI in public mode #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-11-23 19:48:39 +01:00
Michael Mayer cc38922cbe Auth: Add dummy LDAP service #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-11-22 22:14:34 +01:00
Michael Mayer 441812fd7b MariaDB: Make version check compatible with 10.10 #2913
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-11-18 12:49:17 +01:00
Michael Mayer 54bfb167de Config: Reorder imports in config_db.go
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-11-12 12:15:55 +01:00
Michael Mayer 830712a41e MariaDB: Return error if connection failed #2878
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-11-10 09:32:51 +01:00
Michael Mayer 2f6e57527b MariaDB: Allow unsupported versions in "unsafe" mode #2878
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-11-10 07:21:45 +01:00
Michael Mayer ef9b76a54a Config: Fix MariaDB version check #2845
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-11-03 10:35:56 +01:00
Michael Mayer c29bc5a8d4 Config: Update trusted proxy command flag help
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-11-03 07:54:18 +01:00
Michael Mayer f7becc2fd5 Config: Update reverse proxy https flags
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-11-02 18:55:30 +01:00
Michael Mayer 91774c4068 Security: Create new files without execution permission #2809
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-31 15:01:48 +01:00
Michael Mayer 69d14997f4 Config: Rename edition to about in client config values
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-31 12:23:48 +01:00
Michael Mayer 7723e6b32f Convert: Set explicit LD_LIBRARY_PATH for external tools #2726
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-26 18:51:28 +02:00
Michael Mayer 3b9890e345 Config: Update options report, parameter names and tests
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-25 06:19:56 +02:00
Michael Mayer 1b27a80ada Config: Rename "imprint" option to "legal-info" #2797
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-24 12:33:03 +02:00
Michael Mayer ac47a0a647 Config: Update config_tls_test.go
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-22 22:56:15 +02:00
Michael Mayer 9de5662c75 Security: Add "disable-tls" config option to always disable HTTPS
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-22 22:54:24 +02:00
Michael Mayer a579620a2e Security: Change default site URLs to HTTP and add HTTPS init target
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-20 16:19:28 +02:00
Michael Mayer ebb5646571 Security: Update default config values to use HTTPS for the site URL
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-19 20:26:36 +02:00
Michael Mayer f94ff54cc1 Auth: Improve account management page and config options #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-19 05:09:09 +02:00
Michael Mayer 59da5037e6 Server: Add Error 404 Not Found template and change ext to .gohtml #840
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-18 22:19:41 +02:00
Michael Mayer 837669f796 Auth: Extend account settings with user details and avatar upload #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-17 19:07:38 +02:00
Michael Mayer e3bb8b19dd Routing: Prefix frontend UI routes with /library #840 #2466
Also improves migrations and updates the db schema docs.

Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-15 21:54:11 +02:00
Michael Mayer 04475e5c3c Backend: Fix accidental change in config options and update deps
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-14 12:07:08 +02:00
Michael Mayer bd74d9d5c2 Config: Set CliTestContext
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-14 00:20:24 +02:00
Michael Mayer f98aa619ec Security: Disable HTTPS redirect by default #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-13 23:44:51 +02:00
Michael Mayer 884dea17de Security: Use individual preview tokens for each user account #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-13 22:11:02 +02:00
Michael Mayer 38722e72c8 Config: Use mutex when resolving the path of external binaries
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-12 18:39:30 +02:00
Michael Mayer 0297006876 API: Refactor authentication tests to use conf.SetAuthMode() #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-12 18:11:20 +02:00
Michael Mayer 265fdd0dd3 Security: Refactor certs path config #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-12 15:33:35 +02:00
Michael Mayer d198a1d23f Security: Improve rate limit and HTTP proxy configuration #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-12 14:57:33 +02:00
Michael Mayer 6abbc39017 Security: Add http rate limiter and auto tls mode #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-11 22:44:11 +02:00
Michael Mayer dc39fc44d2 Security: Add "header" package for setting common response headers #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-09 17:16:49 +02:00
Michael Mayer ff8bc9f5da MariaDB: Show error if an unsupported server version is used #2381
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-08 18:50:49 +02:00
Michael Mayer 1b89915cc4 HEIF/AVIF/DNG: Improve conversion to JPEG #1246 #2726 #2291 #2593
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-07 16:45:49 +02:00
Michael Mayer dc33ff690a HEIF: Remove support for deprecated convert script #2726
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-06 22:11:41 +02:00
Michael Mayer 07816bfb77 HEIF: Use heif-convert.sh as wrapper if exists #2726
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-06 21:55:31 +02:00
Michael Mayer 1473df3c58 Search: Hide results needing review if the user is not an admin #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-04 02:57:15 +02:00
Michael Mayer bac6ae0cbd Sessions: Add max age and timeout config options #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-03 22:59:29 +02:00
Michael Mayer 4c516cac38 Auth: Rename database tables and delete temporary tables #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-02 22:09:02 +02:00
Michael Mayer 6e74f16a77 Auth: Open album share links in the regular user interface #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-02 11:38:30 +02:00
Michael Mayer 323d495840 Auth: Apply user rights and permissions in the search API #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-30 00:42:19 +02:00
Michael Mayer f5a8c5a45d Auth: Session and ACL enhancements #98 #1746
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-28 09:01:17 +02:00
Michael Mayer 810914a578 Config: Increase default resolution limit from 100 to 150 MP #2677
By default, a limit is set to avoid support-intensive crashes of our
Community Edition and to protect the hosted service from
denial-of-service attacks.

Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-18 14:06:13 +02:00
Michael Mayer a7872a684b SQLite: Set _busy_timeout default to reduce locking issues #2707
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-15 07:29:09 +02:00
Michael Mayer 278ebd1c62 Images: Add AV1 Image File Format (AVIF) support #2706
AVIF can be converted

Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-15 00:43:08 +02:00
Michael Mayer 9f81151475 RAW: Remove CR3 from Darktable file extension blacklist #2703
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-14 21:04:05 +02:00
Michael Mayer 5e7ff6b1b2 Auth: Add unique index to user_slug in auth_users table #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-02 22:55:57 +02:00
Michael Mayer 85561547cc Auth: Add "PHOTOPRISM_ADMIN_USER" option and refactor user table #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-02 21:30:50 +02:00
Michael Mayer 6da0d4244d Config: Update unit tests after changing develop base image
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-02 16:19:18 +02:00
Michael Mayer fb921a4932 CLI: Generate thumbs for files in the sidecar folder #2669
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-31 18:53:04 +02:00
Michael Mayer 78665e5869 Albums: Ignore private pictures only if feature is enabled #2570
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-31 17:42:57 +02:00
Michael Mayer b072a18a17 Backend: Run "make fmt" with Go v1.19
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-10 16:09:21 +02:00
Michael Mayer d8e0364dbb Search: Ignore public album filter if "Private" feat is disabled #2570
This needs to be very well tested and discussed, as these changes can
lead to private photos being accidentally published. Thank you!

Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-08-01 15:57:19 +02:00
Michael Mayer 0e1222c830 Auth: Activate public mode via PHOTOPRISM_AUTH_MODE="public" #2565
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-30 12:34:57 +02:00
Michael Mayer 77aed0a08b Config: Update command help #2536
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-29 17:57:54 +02:00
Michael Mayer 3b2f53da07 CI: Update test.sh script and config_filepaths_test.go
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-22 14:58:20 +02:00
Michael Mayer 372ccb9a29 Config: Improve parameter comments in docker-compose.yml examples #2536
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-22 09:59:08 +02:00
Michael Mayer 4a4c322779 Cleanup: Refactor deleting related sidecar files #2521
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-21 20:23:00 +02:00
Michael Mayer 58521190ba Zip: Fix potential filesystem permission and timing issues #2532
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-19 20:41:36 +02:00
Michael Mayer 0852e659c2 API: Improve logs and add /api/v1/connect endpoint for auth callbacks
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-19 16:58:43 +02:00
Michael Mayer a06646a181 Config: Refactor initialization
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-14 23:34:54 +02:00
Michael Mayer 49be9b873e Config: Propagate backend session status
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-14 22:35:42 +02:00
Michael Mayer d02a61d099 Entity Package: Add database schema documentation
see https://github.com/photoprism/photoprism/discussions/1768#discussioncomment-3125601

Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-12 13:37:08 +02:00
Michael Mayer 20a82efda4 Auth: Shorten passwd mode option (password still works) #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-11 05:08:15 +02:00
Michael Mayer 591a656270 Auth: Add PHOTOPRISM_AUTH_MODE config option #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-07 19:12:28 +02:00
Michael Mayer 5ec90a5fff Index: Skip redundant thumbs and support symbolic file links #1049 #1874
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-06 23:01:54 +02:00
Michael Mayer e739dd3e89 Auth: Add support for config and routing extensions (WIP) #782 #2478
Enables developers to extend the existing config and API. Initial proof
of concept and work in progress. Implementation details may change.
Feedback welcome!

Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-05 23:13:34 +02:00
Michael Mayer b47d71d659 Config: Include disable-webdav and http-compression in CLI report #2476 2022-06-28 16:14:01 +02:00
Michael Mayer b09112058e Videos: Transcode supported formats if bitrate exceeds limit #2461
Implements Option (1) as described in the issue comments.
2022-06-26 19:47:12 +02:00
Michael Mayer c86c68aebe WebDAV: Add assertions to TestConfig_DisableWebDAV #2464 2022-06-25 03:48:05 +02:00
Michael Mayer 95936d0e84 WebDAV: Fully disable endpoint in public mode as it is not needed #2464 2022-06-25 03:44:09 +02:00
Michael Mayer 519f0c49c9 Videos: Stream OGV, VP8, VP9, AV1, WebM, and HEVC if supported #2461 2022-06-24 06:59:22 +02:00
Michael Mayer 6aa08d64c2 Docs: Update membership info URL
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-05-26 19:33:41 +02:00
Michael Mayer b250a106b7 UX: Improve nav toolbar, scrollbar, and footer 2022-05-20 21:31:29 +02:00
Michael Mayer d6461e9de6 Auth: Update password length in config/global_flags.go #2339 2022-05-20 19:28:12 +02:00
Michael Mayer fb481ce2d8 CLI: Pass edition in build specific metadata 2022-05-20 19:27:33 +02:00
Michael Mayer c865330876 CLI: Put build specific information in app metadata 2022-05-20 15:41:18 +02:00
Michael Mayer 7c688f5ea2 Frontend: Update translations and navigation title 2022-05-01 18:05:41 +02:00
Michael Mayer e59041e93f Backend: Update Go package descriptions to improve generated docs
see https://pkg.go.dev/github.com/photoprism/photoprism
2022-04-25 09:53:55 +02:00
Michael Mayer 52d1bfef64 Makefile: Abort installation if directory already exists 2022-04-22 18:46:16 +02:00
Michael Mayer 74b2b03d94 Config: Improve Config.WakeupInterval() and add tests 2022-04-22 18:24:59 +02:00
Michael Mayer b545c92be9 Config: Prevent background worker from running more than once per minute 2022-04-22 18:06:45 +02:00
Michael Mayer 8638929d84 Config: Automatically generate command-flag docs #1017 #2195 #2227 #2250 2022-04-22 17:38:40 +02:00
Michael Mayer 2d41074e60 CLI: Define short names for additional command-line flags #2195
Adds short names for sidecar-path, backup-path, cache-path, import-path,
assets-path, and temp-path command-line flags.
2022-04-21 22:24:45 +02:00
Michael Mayer b595d5df7a Library: Display RAW previews and num of actual files in Originals #2273 2022-04-21 22:17:26 +02:00
Michael Mayer 27b84365da Convert: Set virtual home in cache path for external CLI commands #2262 2022-04-18 13:55:17 +02:00
Michael Mayer fefaada1f1 Index: Improve handling of archived photos, skip when possible #2257 2022-04-16 12:39:47 +02:00
Michael Mayer 92e6c4fe1e Download: Add Disabled, Originals, MediaRaw & MediaSidecar Flags #2234
Extends DownloadSettings with 4 additional options:
- Name: File name pattern for downloaded files (existed)
- Disabled: Disables downloads
- Originals: Only download files stored in "originals" folder
- MediaRaw: Include RAW image files
- MediaSidecar: Include metadata sidecar files (JSON, XMP, YAML)
2022-04-15 09:42:07 +02:00
Michael Mayer 0096243240 Metadata: Report supported Exiftool, XMP, and Dublin Core tags #2252
Replaces the --no-wrap flag with --md in all "photoprism show ..."
subcommands, as this is easier to understand. See also #2247.
Unused code was opportunistically removed along the way.
2022-04-14 10:49:56 +02:00
Michael Mayer 8f2155711f Config/CLI: Rename --config-file flag and improve command help #2250 2022-04-13 22:43:49 +02:00
Michael Mayer 82d61d1f93 File Types: Add experimental support for animated GIFs #590 #2207
Animated GIFs are transcoded to AVC because it is much smaller and
thus also suitable for long/large animations. In addition, this commit
adds support for more metadata fields such as frame rate, number of
frames, file capture timestamp (unix milliseconds), media type,
and software version. Support for SVG files can later be implemented in
a similar way.
2022-04-13 22:17:59 +02:00
Michael Mayer 04609d536d CLI: Show --admin-password flag at the top in command help #2195 #2248
Short name was changed from -a to --pw after the --auth flag was added.
2022-04-12 20:00:06 +02:00
Michael Mayer 915ff42133 Auth: Add --auth flag, increase min password length to 8 chars #98 #2248 2022-04-12 19:44:43 +02:00
Michael Mayer e42b870c09 CLI: Update and display the list of supported file formats #2247 2022-04-12 19:14:21 +02:00
Michael Mayer f927c68c4f UX: Skip RAW files by default when clicking Download All #2234
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-10 17:02:09 +02:00
Michael Mayer 9085f729d2 CLI: Update thumb flag short names #2195
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-09 14:38:56 +02:00
Michael Mayer d9cc0c5a83 CLI: Improve flag order, names, and descriptions #2195
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-08 14:45:03 +02:00
Michael Mayer 30da260a11 Config: Refactor options and flags source files #2195
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-08 14:22:07 +02:00
Michael Mayer 67fdecfbef CLI: Improve parameter aliases, order, and descriptions #2195
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-07 11:56:44 +02:00
Michael Mayer b9ab3befe5 CLI: Add -a alias for --admin-password #2195
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-07 01:23:15 +02:00