Commit graph

860 commits

Author SHA1 Message Date
Michael Mayer
ef6e3d3f9d Metadata: Ensure the altitude is not out of range and fix logs #3182
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-02-09 11:51:26 +01:00
Michael Mayer
a5a538a67e Links: Change https://photoprism.app/ to https://www.photoprism.app/
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-02-08 09:07:42 +01:00
Michael Mayer
a3ee21897d Auth: Improve display of username #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-02-02 17:11:35 +01:00
Michael Mayer
47defc861c API: Add sort order "random" to find a random set of photos #153
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-01-30 12:27:34 +01:00
Michael Mayer
adc91fcf6e Auth: Refactor WebDAV login and increase maximum length of username
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-01-24 06:05:31 +01:00
Michael Mayer
6414a7bee3 Entity: Check if dbConn is nil before trying to return the connection
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-01-17 15:40:55 +01:00
Michael Mayer
4066cd7ad1 Update year in copyright notices
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-01-11 16:43:01 +01:00
Michael Mayer
843155ef60 Albums: Improve sorting options in extended search form #353
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-01-04 14:15:07 +01:00
Michael Mayer
bc50770684 Folders: Ignore case and use wildcards when searching #2050
Signed-off-by: Michael Mayer <michael@photoprism.app>
2023-01-02 17:59:48 +01:00
Michael Mayer
ca4705eee2 CLI: Add username argument to the "photoprism passwd" command #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-12-29 23:41:43 +01:00
Michael Mayer
4c3b3cbdc7 Albums: Revert default order back from "newest" to "oldest" #3021
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-12-23 09:21:25 +01:00
Michael Mayer
487bb13555 Albums: Change default sort order from "oldest" to "newest" #3021
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-12-19 20:05:19 +01:00
Michael Mayer
dd506adce2 Albums: Replace ASCII quotes in titles with Unicode quotes #2891
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-11-28 09:24:23 +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
6ab04088e2 Metadata: Accept switch back to local time if current zone is UTC #2876
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-11-15 17:54:16 +01:00
Michael Mayer
36298b39d7 Auth: Only migrate non-empty legacy user fields #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-11-03 11:02:36 +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
13d32f3294 Translations: Fuzzy merge of .pot files with .po files #2083
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-31 13:25:02 +01:00
Michael Mayer
ac84dce3aa Search: Add sort by "File Size" #2620
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-24 12:56:17 +02:00
Michael Mayer
e8d11deb49
Update mariadb.mmd 2022-10-22 13:29:47 +02:00
Michael Mayer
72e5af3078 Backend: Code clean-up
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-19 22:23:12 +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
6b8b3bf3c2 Auth: Improve legacy user search command and add tests #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-14 02:48:23 +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
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
3c4cc40882 Security: Refactor log levels and events #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-10 16:34:07 +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
d815123bfb CLI: Add "photoprism users reset" command #98
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-08 20:48:58 +02:00
Michael Mayer
3512c7be4f Reactions: Ignore error, should a test fixture already exist
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-08 19:13:39 +02:00
Michael Mayer
693108fd53 Sharing: Refactor UserShare entity #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-04 00:54:39 +02:00
Michael Mayer
b390e34b78 Sessions: Clean up auth_session_cache.go #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-03 23:46:20 +02:00
Michael Mayer
05cdcbaf9d Sessions: Cache pointers to improve performance #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-03 23:39:36 +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
65e9a58979 Backend: Refactor gorm.DB connection provider in entity package
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-10-01 15:17:04 +02:00
Michael Mayer
4f425790ab Auth: Remember ownership of uploaded photos and albums #98 #782
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-09-30 19:15:10 +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
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
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
f14752f08c Purge: Improve tests and logs for RegenerateIndex() #2540
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-23 11:20:56 +02:00
Michael Mayer
d81579071b Purge: Prevent SQL error when the photo ID of a file is missing #2540
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-22 19:47:16 +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
112e845a9c Entity Package: Update database schema documentation
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-12 16:11:05 +02:00
Michael Mayer
8cd97940da Entity Package: Update database schema documentation
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-12 16:05:27 +02:00
Michael Mayer
24cdd8f403 Entity Package: Update database schema documentation
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-12 15:31:53 +02:00
Michael Mayer
97700ae379 Entity Package: Update database schema documentation
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-12 15:16:47 +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
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
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
23fd9ae731 Colors: Use int16 instead of int8 to avoid (de)serialization issues 2022-06-16 06:30:59 +02:00
Michael Mayer
8af69b81f2 Search: Omit files with unknown Chroma when using mono:true filter #2341 2022-05-21 18:12:08 +02:00
Michael Mayer
2121dd4307 Auth: Allow short initial passwords to avoid login problems #2339 2022-05-20 19:25:19 +02:00
Michael Mayer
54700766df Index: Truncate mod time to full seconds #2257 2022-05-17 01:04:26 +02:00
Michael Mayer
16c30fffdf Backend: Run "make fmt-go" 2022-05-10 23:21:50 +02:00
theresa
d27e1fa52f Tests: Add to dos to run tests on mariadb 2022-05-03 15:05:45 +02:00
theresa
0c345d4426 Tests: Update photo fixtures 2022-04-22 10:48:07 +02:00
theresa
16c2db9872 Tests: Correct portrait value for file fixtures 2022-04-22 10:20:15 +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
ce709957d6 Search: Update files.media_id and time_index on MariaDB and SQLite #2265 2022-04-21 21:56:53 +02:00
Michael Mayer
94b4173cf9 Search: Fix files.time_index generation on SQLite #2265 2022-04-21 19:47:16 +02:00
theresa
c071111d7a Tests: Add gif fixture 2022-04-20 14:47:27 +02:00
Michael Mayer
e264489dfb Index: Improve log messages #2257 2022-04-16 13:50:35 +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
c580b8b55b Index: Fix database errors when rescanning large libraries #2257 2022-04-15 15:48:36 +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
9fdd455924 WebDAV: Skip error reset if an account has not been created yet #1781 2022-04-14 14:26:45 +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
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
7291c1d703 Search: Add landscape/square filters, and "show filters" command #2169 2022-04-13 09:48:51 +02:00
Michael Mayer
0427163295 People: Improve face matching, audit command, and logging #2182 2022-04-13 01:59:32 +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
b97e0e9c3b Albums: Prevent accidental creation of duplicate albums #2233
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-10 14:38:51 +02:00
Michael Mayer
9134c79f4c Config: Add option to skip all RAW images when indexing #2227 2022-04-06 17:46:41 +02:00
Michael Mayer
7b508d6ad5 Index: Add tests and refactor database record updates #1438 2022-04-05 11:40:53 +02:00
Michael Mayer
9986986f8f People: Add info on the kind of face to improve matching #2182
This commit also fixes of other potential issues and improves logging.
2022-04-04 21:22:31 +02:00
Michael Mayer
c74fcbf282 People: Show real name instead of uid in logs #1438 #2182
Since caching all subject data proved too complex in the time available,
this implementation uses a simple key/value lookup table to cache
subject names and perform backward searches by uid.
2022-04-04 14:21:43 +02:00
Michael Mayer
870ec6455e Revert "People: Add subject cache and show real name in logs #1438 #2182"
This reverts commit 686f6bc47c.
2022-04-04 08:54:03 +02:00
Michael Mayer
cbcfa63f5f Labels: Fix saving categories in UpdateClassify()
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-04 00:57:13 +02:00
Michael Mayer
686f6bc47c People: Add subject cache and show real name in logs #1438 #2182 2022-04-04 00:02:08 +02:00
Michael Mayer
41b252d820 People: Add unofficial env variables to tweak face matching #1587 #2182
Adds two unofficial env variables so advanced users can experiment:

1. PHOTOPRISM_FACE_KIDS_DIST=0.6950 (range: 0.1-1.5, -1 to disable)
2. PHOTOPRISM_FACE_IGNORE_DIST=0.86 (range: 0.1-1.5, -1 to disable)
2022-04-03 17:25:37 +02:00
Michael Mayer
cb0f37c4af Index: Improve logging and files table update statements #1438 #2216 2022-04-03 12:43:21 +02:00
Michael Mayer
31e48d2139 UX: Add button to clear error log history in Library > Errors #1683
Note this is disabled in public mode (without authentication).
2022-04-03 12:37:43 +02:00
Theresa Gresch
1da106d4b7 Tests: Add fixtures 2022-04-02 20:13:56 +02:00
Michael Mayer
82f583d5e2 Purge: Regenerate file search index #1438 #2216 2022-04-02 19:26:28 +02:00
Theresa Gresch
968062d2fc Tests: Add fixtures 2022-04-02 16:52:38 +02:00
Theresa Gresch
d7f4c46a9b Tests: Add unit tests 2022-04-02 13:31:04 +02:00
theresa
5d16c5b530 Tests: Add fixtures 2022-04-01 16:24:45 +02:00
Michael Mayer
9eda12ac20 Performance: Refactor database schema and UI components #995 #1438 #1811 2022-03-30 20:36:25 +02:00
theresa
32c9186112 Tests: Add fixtures 2022-03-30 18:21:14 +02:00
theresa
f53e2bcdd6 Tests: Add fixtures 2022-03-30 11:43:30 +02:00
theresa
4d7584a486 Tests: Add fixtures 2022-03-29 11:21:45 +02:00
Michael Mayer
686a8ab9b4 Search: Refactor photo search, fix test data and unit tests #1994 2022-03-29 00:21:50 +02:00