Commit graph

239 commits

Author SHA1 Message Date
Michael Mayer 3ccad67622 Index and import subdirectories #258
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-06 15:53:47 +02:00
Michael Mayer 1479a3ec5b Refactor indexer so that thumbs and jpegs can be created on demand #258
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-06 10:35:41 +02:00
Michael Mayer bc69f22da2 Fix edit dialog after renaming config value
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-05 19:44:02 +02:00
Michael Mayer 9b643c830f Add template settings; remove twitter config value
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-05 18:26:44 +02:00
Michael Mayer a886ad7942 Improve naming of thumbnail config values #294
Reverted PHOTOPRISM_RESAMPLE_FILTER back to PHOTOPRISM_THUMB_FILTER so that nothing breaks.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-05 17:17:19 +02:00
Michael Mayer 14fc9cd374 Revert and improve naming of thumbnail config values #294
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-05 17:04:13 +02:00
Michael Mayer 1c53a565a7 Configure on-demand rendering of regular thumbnail sizes #294
Can be enabled by setting PHOTOPRISM_RESAMPLE_UNCACHED to true

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-05 15:42:54 +02:00
Michael Mayer f9b2ff326b Refactor feature flags and settings
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-04 18:28:23 +02:00
Michael Mayer 2032b40f2b Backend: Code clean-up
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-03 18:00:50 +02:00
Michael Mayer 3e6df5fd5d Backend: Replace filepath.Walk with godirwalk.Walk #267
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-01 17:31:49 +02:00
Theresa Gresch f5a1d76748 Backend: Remove old fixtures from config/db.go 2020-05-01 14:18:51 +02:00
Michael Mayer c30476f120 Backend: Refactor test db initialization
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-30 21:21:09 +02:00
Michael Mayer 260cca91fe Backend: Refactor entity package
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-30 20:07:03 +02:00
Michael Mayer c06d0c0b9d Backend: Refactor test logs
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-30 16:44:04 +02:00
Michael Mayer 953ca55483 Backend: Refactor config tests
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-30 16:09:05 +02:00
Michael Mayer eaae910014 Backend: Refactor entity tests
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-30 14:32:48 +02:00
Michael Mayer 8318ab8983 Config: Rename "sql" / "internal" to "tidb" for more clarity
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-28 22:49:02 +02:00
Michael Mayer ba396952a8 Update Dockerfiles and set default SQL port to 2343 2020-04-28 21:10:31 +02:00
Michael Mayer 428d5f34b5 Backend: Remove event entity until we need it
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-28 19:44:27 +02:00
Michael Mayer b33983b566 Backend: Add stopwords
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-28 18:20:33 +02:00
Michael Mayer 882340a14c Refactor string clipping in frontend & backend
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-26 14:31:33 +02:00
Michael Mayer e29897715d Change unknown place ID to "zz"
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-25 16:17:59 +02:00
Michael Mayer 430fb2acb3 Code clean-up
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-25 14:48:08 +02:00
Michael Mayer e8e0639d78 Backend: Provide unknown camera & lens as default
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-25 14:22:47 +02:00
Michael Mayer 8609ab805f Automatically set private flag if detect-nsfw is enabled
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-24 20:28:16 +02:00
Michael Mayer 35bed81ec5 Filter private photos
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-24 18:19:18 +02:00
Michael Mayer a57ca79663 Improve settings page #288
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-24 16:05:57 +02:00
Michael Mayer 78f37d8d6b Fix config test after upgrading TensorFlow
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-22 10:33:47 +02:00
Michael Mayer b31508e4f3 Refactor & improve editing of photo labels
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-19 01:13:55 +02:00
Michael Mayer 96ec67f868 Group related files #283
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-14 14:28:47 +02:00
Michael Mayer 855781658b Add library settings #283
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-14 13:13:45 +02:00
Michael Mayer c2fa3a7246 Add common feature flags incl upload #284
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-13 18:08:21 +02:00
Michael Mayer 47814e2fde Initial stub for feature flags in settings #284
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-12 18:00:31 +02:00
Michael Mayer 96c7337fea Make tests more resilient
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-09 19:39:09 +02:00
Michael Mayer a8c48ab40e Initial API and entities for link sharing
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-08 13:24:06 +02:00
Michael Mayer b020b4e415 Sync: Ignore unsupported file types #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-07 10:42:42 +02:00
Michael Mayer a393a25e01 Backend: Remove export path to avoid confusion #276
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-06 23:04:52 +02:00
Michael Mayer b5ee4625a6 Backend: Replace export with temp directory #276
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-06 22:50:04 +02:00
Michael Mayer 02810ffa94 Sync: Import/index after downloading #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-06 22:09:45 +02:00
Michael Mayer 087c56e371 Sync: Download to temp path #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-06 16:34:29 +02:00
Michael Mayer 2e5840f3b0 Implement share worker #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-03 18:08:49 +02:00
Michael Mayer a836dd1497 Backend: Upgrade dependencies
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-02 14:13:41 +02:00
Michael Mayer 5bea7d2a59 Maps: Add style to settings
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-31 21:03:13 +02:00
Michael Mayer 09e2385c67 Maps: Add animation duration to settings
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-31 18:56:52 +02:00
Michael Mayer 7f2cfc8446 Backend: Create settings.yml if not exists
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-28 21:44:30 +01:00
Michael Mayer 29c3880aeb Accounts: Rename "push" to "share" #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-28 19:46:09 +01:00
Michael Mayer 81dc7bbb19 Backend: Add sharing entities (file sync & push) #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-27 18:17:07 +01:00
Michael Mayer eedaae8f91 Backend: Move photo description to separate table
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-26 09:41:33 +01:00
Michael Mayer a1706a5922 Backend: Upgrade & improve Dockerfiles #263
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-23 20:29:31 +01:00
Michael Mayer 3165eb3ac5 Backend: Reduce default number of workers
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-09 00:51:10 +01:00
Michael Mayer 01527c180e Add WebDAV server
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-21 04:23:16 +01:00
François d'Yvoire 55693fab35
Some more comment improvements (#257)
* Improve comment in classify package

* improve comment in config package

* improve entity package comments

* grammar error in comments
2020-02-21 01:14:45 +01:00
Michael Mayer 90dd094a21 Sharing: Add accounts table #11
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-02 00:31:09 +01:00
Michael Mayer a4070cf55c Backend: Store and index original file names during import #184
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-01 20:52:28 +01:00
Michael Mayer 807d986c64 Change default resample filter from cubic to lanczos
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-31 16:28:52 +01:00
Michael Mayer a4e2867c86 Split import command into copy and move
Upgraded JS dependencies and did some refactoring along the way...

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-31 15:29:06 +01:00
Michael Mayer 7ecc146460 Backend: Rename utils.go to auth.go #221
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-28 13:12:29 +01:00
agolebiowska 81a587aa19 Backend: Support encrypted password (#231)
See issue #221, only handles bcrypt
2020-01-28 11:04:10 +01:00
Michael Mayer 8c8cb426f8 Update testdata.zip
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-26 10:22:27 +01:00
Michael Mayer 7342d5194a Add Websocket authentication #216
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-22 16:54:01 +01:00
Michael Mayer 5fd454b856 Backend: Improve startup error messages #194
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-21 13:59:41 +01:00
Theresa Gresch 6b1babe0ba Improve test coverage (#206)
* #83 Add NewLocation() function

* #83 Add NewPlace() function

* #83 Add tests for maps/places/location

* #83 Add tests for maps/location

* #83 Add tests for internal/config

* #83 Add test for meta/exif

* #83 Add testfiles
2020-01-19 13:27:15 +01:00
Michael Mayer aafeda0919 Backend: Use goroutines image format conversion
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-19 12:50:44 +01:00
Michael Mayer b5424d3b22 Backend: Disable NSFW detection by default to boost performance
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 16:48:32 +01:00
Michael Mayer 74a14e265f Backend: Rename "thumb-algorithm" to "thumb-filter" #157
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 13:46:05 +01:00
Michael Mayer ac7382971d Backend: Add blackman resample filter and set default to cubic #157
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 12:25:16 +01:00
Michael Mayer e184cad553 Backend: Add thumb config options and lower defaults #157
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 11:07:09 +01:00
Michael Mayer f8a45b14d9 Backend: Move reusable packages to pkg/
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-12 14:00:56 +01:00
Michael Mayer b37d4472e4 Backend: Use original file if thumb size exceeds limit #172
Plus some mutex and config refactoring along the way...

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-08 19:51:21 +01:00
Michael Mayer fc65ec61f7 Backend: Add workers config parameter
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 23:43:26 +01:00
Michael Mayer e43983d579 Backend: Refactor thumbnail package #157
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 14:32:15 +01:00
Michael Mayer 5ec2d9e9a4 Backend: Add config parameters #99 #157 #180
This commit adds config parameters for thumbnail quality, max thumbnail size and geocoding api as well as a flag to to disable TensorFlow.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 06:59:35 +01:00
Michael Mayer 582113fed4 Backend: Add write mutex to entities and improve test fixtures #164
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 04:24:49 +01:00
Michael Mayer 01ca94d536 Backend: Initialize test db with fixtures #84 #129
Fixtures can be found in assets/resources/examples/fixtures.sql and must be maintained manually for now

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 02:14:17 +01:00
Michael Mayer dc0ba7b808 Backend: Fix config_test.go
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-04 08:10:47 +01:00
Michael Mayer e27835fb21 Backend: Fix import / index bugs
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-04 07:56:56 +01:00
Michael Mayer 32fdb72ac9 Backend: Code clean-up
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 04:08:33 +01:00
Michael Mayer 357b557aac Backend: Refactor config package and add Workers() func
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 00:03:07 +01:00
Michael Mayer cf909e2a4e Backend: Use S2 tokens for location and place ID #173
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-31 01:34:27 +01:00
Michael Mayer 7d5bc0619e Add "experimental" feature flag #152 #153 #154
Use this flag to test new features before they are stable.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-30 12:38:11 +01:00
Michael Mayer a66d0887bd Add lens, category, color and year search filters
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-28 23:06:44 +01:00
Michael Mayer ca8cfffc24 Backend: Prepare database for advanced filtering and grouping #154
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-28 20:24:20 +01:00
Michael Mayer 211ed6acb4 Backend: Fix usage description of NSFW flags #170
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-28 09:56:35 +01:00
Michael Mayer bdf0cde8a6 Backend: Add session package #169
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-28 09:48:36 +01:00
Michael Mayer 875245f1d4 Backend: Use uint64 for location IDs
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-27 23:58:51 +01:00
Michael Mayer e7f757a631 Backend: Refactor position data in client config
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-27 11:17:55 +01:00
Michael Mayer 14617b4387 Backend: Fix country list order
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-27 08:18:10 +01:00
Michael Mayer 366c70d992 Optimize performance and data structures
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-27 05:18:52 +01:00
Theresa Gresch 6a480edba1 Add tests for test.go 2019-12-22 19:21:47 +01:00
Theresa Gresch 228682400b Add tests for config.go 2019-12-22 19:21:30 +01:00
Michael Mayer f3cf300590 Backend: Refactor location entity and indexer
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-20 20:23:16 +01:00
Theresa Gresch 10f3c11c61 Add test for settings.go 2019-12-17 19:29:43 +01:00
Michael Mayer f39d34b43a Places: Improve UX
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-17 15:28:54 +01:00
Michael Mayer 1cc8cefc92 Labels: Add cache, fix bugs & improve SQL queries
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-16 23:33:52 +01:00
Michael Mayer a4b475cbd6 Backend: Improve classification labels
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-15 18:26:16 +01:00
Michael Mayer 016d90054e Backend: Implement NSFW config flags
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-15 17:19:16 +01:00
Michael Mayer 8cce9f7c8c Backend: Set NSFW flag while indexing
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-14 20:35:14 +01:00
Michael Mayer f92c21aef9 Indexer: Improve labels
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-13 03:07:26 +01:00
Michael Mayer 4e06deda76 Backend: Rename "models" package to "entity"
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 16:55:18 +01:00
Michael Mayer dac272468e Sharing: Render preview image & site info
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 14:10:20 +01:00
Michael Mayer 27ca260942 Indexing: Add "convert to jpeg" and "create thumbnails" options
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 04:12:54 +01:00
Michael Mayer c796431e1b Faster keyword search (proof-of-concept)
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-08 15:05:35 +01:00
Michael Mayer 2c95d73520 Albums: Add photos by UUID #15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-04 15:14:04 +01:00
Michael Mayer d3cdffb0a0 Albums: Routing & navigation #15
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-03 23:17:55 +01:00
Michael Mayer a2963e9fc6 Add event hook for sending logs to frontend
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-02 00:30:58 +01:00
Michael Mayer 5a85fe9f83 Save and load settings to / from settings.yml
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-17 03:08:13 +01:00
Michael Mayer f88c574f3f Improve HTTP header auth
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-12 05:49:10 +01:00
Michael Mayer 0becb8a92d Stub for settings page & api
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-12 04:34:37 +01:00
Michael Mayer a14b74dfa6 Config: Add public flag to disable auth #16
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-11 21:10:41 +01:00
Michael Mayer 56c97ec057 Basic login for admin #16
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-08 06:53:40 +01:00
Michael Mayer 49c7fafa87 Upgrade from Mysql 8.0 to MariaDB 10.4
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-07 20:31:50 +01:00
Theresa Gresch 30013b6ea7 Add NewTestParamsError and NewTestErrorConfig function 2019-07-17 12:00:15 +02:00
Michael Mayer b628592510 Fix TestConfig_ClientConfig 2019-07-15 21:19:11 +02:00
Michael Mayer c531c5aec9 Use test config for TestConfig_Db and TestConfig_CloseDb 2019-07-14 19:06:44 +02:00
Theresa Gresch 801097c368 Revert change to Db function 2019-07-10 10:33:16 +02:00
Theresa Gresch 31b29fa42b Adapt Db function to return nil in case the db is not initialized 2019-07-10 09:10:46 +02:00
Theresa Gresch 73d5871886 Add tests for config.go 2019-07-10 09:10:02 +02:00
Theresa Gresch 9c6c6f2539 Add tests for config.go 2019-07-09 17:43:34 +02:00
Theresa Gresch 3813ee327a Add tests for config.co 2019-07-09 16:57:37 +02:00
Theresa Gresch a85805c8e1 Update testdata hash 2019-07-05 13:47:48 +02:00
Michael Mayer d4526bedd2 Read-only mode: Disable upload & import in frontend and show info #56 2019-07-02 23:01:56 +02:00
Michael Mayer bc65ad57d5 Disable import, upload and raw converter in read-only mode #56 2019-07-02 22:09:06 +02:00
Michael Mayer 772251ca0d Revert extended names for imported files and fix related test #56 2019-07-02 22:09:06 +02:00
Michael Mayer 5662fc35ed Refactor indexer in preparation to read only mode #56 2019-07-02 22:09:06 +02:00
Michael Mayer 3655ebf9d8 Use daemon server mode to run acceptance tests #58 2019-06-30 05:38:39 +02:00
Michael Mayer 5e37cd54fc Update Docker images: new directory structure 2019-06-29 23:27:42 +02:00
Vedhavyas Singareddi f63efc5f51 Implement daemon mode (#119)
* add daemon process
* add daemon stop command
* add daemon log to log file
* check for running daemons
* minor changes
2019-06-20 01:11:03 +02:00
Michael Mayer 4553344550 Add event table 2019-06-17 22:39:32 +02:00
Michael Mayer 27530bc0be Add shares table for sharing photos and albums 2019-06-17 22:39:32 +02:00
Michael Mayer f47d93be7f Format Go code: go fmt ./internal/... ./cmd/... 2019-06-09 05:22:53 +02:00
Michael Mayer aab504ffd6 Initial support for HEIF image files incl improved tests & example files 2019-06-06 14:44:35 +02:00
Michael Mayer a6131eeddd Move all config files to assets/config and resources to assets/resources 2019-06-05 18:25:20 +02:00
Michael Mayer b835c22f7f Rename synonyms to categories 2019-06-05 14:05:21 +02:00
Michael Mayer df995b4f15 Rename tags to labels incl priority, source and uncertainty 2019-06-04 18:26:41 +02:00
Vedhavyas Singareddi 38b9889ef2 Add context for graceful shutdown #112
see pull request #114
2019-06-03 22:58:15 +02:00
Michael Mayer d31305a503 Move static assets from public/ to static/ for clearer structure 2019-05-22 13:55:11 +02:00
Michael Mayer d26f7fb0dc Docker: Add testcafe and firefox to development image; change mysql port 2019-05-20 16:39:41 +02:00
Michael Mayer db261d40b3 Share available thumbnail types with JS frontend 2019-05-14 16:04:17 +02:00
Michael Mayer 0ddef3a02d Rename context package to config and fsutil to util 2019-05-06 23:18:10 +02:00