Michael Mayer
bbe60d120b
Backend: Set DescriptionSrc when restored from YAML
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-19 09:21:10 +02:00
Michael Mayer
b24d5c03a1
Use YAML files to save and restore photo metadata
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-18 22:18:58 +02:00
Michael Mayer
39878b3f83
Store created files in .photoprism sub directory
...
See #268 , #311 and #313
Hidden directory name poll: https://twitter.com/browseyourlife/status/1262320988081074178
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-18 15:45:55 +02:00
Michael Mayer
abfd2fa79d
Videos: Improve indexing and searching #312
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-16 17:07:44 +02:00
Theresa Gresch
238468c8f9
Backend: Add tests to internal/api
2020-05-15 13:14:50 +02:00
Michael Mayer
871c5aae9c
Backend: Don't abort import / index options API requests
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-14 19:45:01 +02:00
Michael Mayer
2d1763edbe
Add videos to main navigation #17
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-14 19:03:12 +02:00
Theresa Gresch
afc1e10646
Backend: Add tests to internal/api
2020-05-14 18:10:01 +02:00
Theresa Gresch
160977fec4
Backend: Add tests to internal/query
2020-05-14 14:18:28 +02:00
Theresa Gresch
47e4abe9a4
Backend: Fix test
2020-05-13 20:05:33 +02:00
Michael Mayer
bd3426ae51
Add video player #17
...
Still need to index metadata. Work in progress.
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-13 15:36:49 +02:00
Michael Mayer
a61f2384b3
Initial video support #17
...
Still need to add a player and index metadata. Work in progress.
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-11 18:29:17 +02:00
Theresa Gresch
510df88d7f
Backend: Add tests to internal/api
2020-05-11 17:11:04 +02:00
Michael Mayer
3c47a85ea5
Backend: Move UpdatePhotoCounts() to entity package
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-11 11:01:28 +02:00
Michael Mayer
71c849c23b
Backend: Update photo counts after sync download
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-11 10:48:18 +02:00
Michael Mayer
252e67ce03
Add photo_count column to labels table
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-09 11:00:22 +02:00
Michael Mayer
e703a54586
Backend: Close db connection after running tests
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-08 18:35:19 +02:00
Michael Mayer
05d9187167
Update count in places are restoring photos #234
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-08 16:01:34 +02:00
Michael Mayer
842da9f09b
Backend: Query package refactoring
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-08 15:41:01 +02:00
Theresa Gresch
695294fc58
Backend: Improve photo_label_test
2020-05-08 14:31:58 +02:00
Michael Mayer
830ce5fc21
Improve purge performance using ignore option #234
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-08 07:43:14 +02:00
Michael Mayer
252672b291
Run purge after indexing files in Web UI #234
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-07 21:46:00 +02:00
Michael Mayer
c318d22ca7
UX: Rename "path" to "folder"
...
See https://twitter.com/browseyourlife/status/1258330913991208960
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-07 12:49:06 +02:00
Michael Mayer
38fe8277fa
UX: Rename "directory" to "folder"
...
See https://twitter.com/browseyourlife/status/1258330913991208960
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-07 12:33:09 +02:00
Michael Mayer
3ccad67622
Index and import subdirectories #258
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-06 15:53:47 +02:00
Theresa Gresch
ff505579ec
Backend: Add tests to internal/api
2020-05-06 12:56:13 +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
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
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
Theresa Gresch
ee6dd2be72
Backend: Add tests to internal/api
2020-05-05 09:28:52 +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
Theresa Gresch
5388b785bf
Backend: Add tests to internal/api
2020-05-04 17:54:42 +02:00
Theresa Gresch
b53eb53b08
Backend: Use correct errors in internal/api/link.go
2020-05-04 17:14:43 +02:00
Theresa Gresch
90c910654b
Backend: Add tests to internal/api
2020-05-04 17:14:04 +02:00
Theresa Gresch
e4162d3a29
Backend: Use uuid instead of hash in LinkFile function
2020-05-04 17:12:37 +02:00
Theresa Gresch
eb0467cde8
Backend: Add errors
2020-05-04 17:11:53 +02:00
Theresa Gresch
6e2062ea4b
Backend: Add tests to api/labels
2020-05-04 16:02:49 +02:00
Theresa Gresch
73e0d294ff
Backend: Add tests to internal/api
2020-05-04 14:40:58 +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
Theresa Gresch
c474ec5dd2
Backend: Add tests to api/batch
2020-05-03 17:26:26 +02:00
Theresa Gresch
2f5ae08768
Backend: Add tests api/album
2020-05-03 15:55:38 +02:00
Theresa Gresch
fd50478218
Backend: Add tests to internal/api
2020-05-01 19:58:05 +02:00
Theresa Gresch
9cbad48972
Backend: Add tests to api/account
2020-05-01 16:38:00 +02:00
Theresa Gresch
9dbd743452
Backend: Use new fixtures in api tests
2020-05-01 14:18:51 +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
194e208e31
Backend: Update client info after changing private flag
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-29 12:42:59 +02:00
Michael Mayer
3630a49df0
Backend: Improve metadata indexing
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-26 16:22:29 +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
3edf30ab3a
Reduce location precision to float32
...
This is the practical limit of commercial data and should be more than enough for our use case while ideally providing better index performance.
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-26 11:41:54 +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
77cea5d719
Implement score to sort photos by quality #288
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-24 13:21:18 +02:00
Michael Mayer
e55df7ed37
Backend: Add PhotoFavorite to geo json response
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-24 10:07:13 +02:00
Michael Mayer
ae3b5a7978
Add "photoprism status" command to check server health
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-22 10:27:48 +02:00
Michael Mayer
122e4730a3
Select primary file for grouped photos
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-21 10:23:27 +02:00
Michael Mayer
f31c405475
Merge photo updated event results
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-21 02:10:59 +02:00
Michael Mayer
360c87c348
Show grouped photos in search results
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-20 20:07:58 +02:00
Michael Mayer
2a83645ce8
API: Rename selection.go to batch.go
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-20 17:59:05 +02:00
Michael Mayer
4bd0ca4ac6
Keep sessions for 7 days
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-20 13:50:28 +02:00
Michael Mayer
f70b506f77
Albums: Save sort order and description
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-20 10:38:01 +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
f07064c2c3
Refresh titles, labels and locations
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-18 23:20:54 +02:00
Michael Mayer
20a5912210
Rename, remove and re-activate labels
...
Still need to fix label names when re-indexing so that custom names are used, if changed by the user.
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-17 21:20:38 +02:00
Michael Mayer
e3f614bc23
Backend: Update photo title when location or labels change
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-16 20:57:00 +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
fc95caaf06
Frontend: Improve library UX
...
Hints still need translations and options should be saved, so that they don't change when you reload the page.
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-14 09:03:52 +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
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
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
9b7a5d69d4
Sharing: Instantly trigger upload #225
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-06 16:15:19 +02:00
Michael Mayer
aa220a06fe
Backend: Refactor package structure
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-05 22:26:53 +02:00
Michael Mayer
c882b56f82
Sync: Download remote files #225
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-04 17:19:34 +02:00
Michael Mayer
3de78e3124
Sharing: Delete expired files #225
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-04 13:53:52 +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
15d32016c6
Sharing: Refactor API and entities #225
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-02 18:17:07 +02:00
Michael Mayer
1adc144ac2
Backend: Insert shared file into files_share table #225
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-01 18:17:29 +02:00
Michael Mayer
86432c9974
Backend: Fix formatting issue in account API #225
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-01 13:07:44 +02:00
Michael Mayer
91b1d7a198
WebDAV sharing proof-of-concept #225
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-01 12:00:45 +02:00
Michael Mayer
5f91d0d17b
Add photo share dialog for WebDAV #225
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-31 17:26:25 +02:00
Michael Mayer
b592e67dfa
Frontend: Improve account management #225
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-29 21:24:44 +02:00
Michael Mayer
a9ece37feb
Backend: Enable service discovery in API #225
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-29 12:02:01 +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
9f4a5e7170
Backend: Add account API test #225
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-28 18:01:50 +01:00
Michael Mayer
1d667ada79
Backend: Add account API #225
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-28 15:29:17 +01:00
thielepaul
1d89858e4c
Backend: Add API endpoint for getting files by sha1 hash ( #259 )
...
* Backend: Add API endpoint for getting files by sha1 hash
* Test: Add test for Api.GetFile
2020-02-26 17:50:28 +01:00
ifedorenko
d43255885c
Serialize websocket writes with a mutex ( #256 )
...
Fixes #241
Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
2020-02-21 01:58:40 +01:00
Michael Mayer
491751f4fc
Frontend: Fixed infinite scroll and reload
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-04 14:51:48 +01:00
Michael Mayer
3e6c85feb2
Labels: Publish labels.created event
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-04 11:38:43 +01:00
Michael Mayer
e02cbe1b10
Labels: Add context menu
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-04 05:18:22 +01:00
Michael Mayer
cf5c0db1d3
Albums: Optimize push updates
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-04 01:39:53 +01:00
Theresa Gresch
2509952992
Test: Add test for api/preview
2020-02-03 15:50:46 +01:00
Theresa Gresch
000735188c
Test: Add test for api/photo_thumbnail
2020-02-03 15:50:25 +01:00
Theresa Gresch
8ddc758504
Test: Add test for api/photo
2020-02-03 15:50:05 +01:00
Theresa Gresch
879466371e
Test: Add test for api/photo_search
2020-02-03 15:49:49 +01:00
Theresa Gresch
63b5d62813
Test: Add test for api/photo_label
2020-02-03 15:49:32 +01:00
Theresa Gresch
4714b50a8f
Test: Add test for api/label
2020-02-03 15:49:14 +01:00
Theresa Gresch
b6967671c7
Test: Add test for api/moments_time
2020-02-02 19:40:05 +01:00
Theresa Gresch
8d95900435
Test: Add test for api/label
2020-02-02 19:39:49 +01:00
Theresa Gresch
c4f4d1e578
Test: Add test for api/geo
2020-02-02 18:41:36 +01:00
Theresa Gresch
47ae1e2b65
Test: Add test for api/download
2020-02-02 18:41:18 +01:00
Theresa Gresch
c647908d3d
Test: Add test for api/album
2020-02-02 18:41:03 +01:00
Theresa Gresch
14f7702d4f
Test: Add test for api/album
2020-02-02 15:50:33 +01:00
Michael Mayer
4efa383c57
API: Proof-of-concept for form handling
...
We don't want to directly write to models so that only selected fields can be changed and values can be validated for security reasons.
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-02 03:36:00 +01:00
Michael Mayer
1cbb0a6d56
Labels: Edit name in overview #212
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-02 02:00:47 +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
17e1fb0f8a
Docker: Fix demo after renaming import command
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-31 17:29:55 +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
ceb7d258fe
Push updates: Add event types for photos & albums
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-30 18:19:26 +01:00
Michael Mayer
11c3ed70e3
Photo edit: Publish event to keep clients in sync
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-30 09:51:23 +01:00
Michael Mayer
d9ec032371
Photo edit: Refresh view after saving
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-30 06:17:02 +01:00
Michael Mayer
777526ce82
Upload: Refactor UX
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-30 01:53:18 +01:00
Michael Mayer
183ebd3f03
Backend: Add FileError col to files table #202
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-29 17:41:51 +01:00
Michael Mayer
bdf976abd7
Edit photo: Add and remove labels
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-29 15:28:20 +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
d3330877d1
Frontend: Refactor photo model to use primary file as preview #212 #217
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-24 01:33:04 +01:00
thielepaul
f6a611bded
Backend: Add API endpoint for photo count per month #152 #154 #218
...
* Backend: Add API endpoint for photo count per month
* URL: /api/v1/moments/time
2020-01-23 20:05:54 +01:00
Michael Mayer
b49d581850
API: Refactor album & photo not found messages
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-23 10:16:18 +01:00
Michael Mayer
9da3456813
Refactor API error messages
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-23 10:10:32 +01:00
Michael Mayer
2f4840f9c2
Only send full clientConfig if authenticated #216
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-23 07:39:04 +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
f569c3adb6
Require password for all pages (if not running in public mode)
...
See https://github.com/photoprism/photoprism/issues/167#issuecomment-574866401
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-22 13:43:07 +01:00
Michael Mayer
11067b1ae5
Backend: Improve http log messages #194
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-21 15:12:26 +01:00
Michael Mayer
5c0a2b70ef
Backend: Disable WS origin check #209
...
Doesn't add much security, need to implement other auth for WS
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-20 20:47:19 +01:00
Michael Mayer
09bac902d0
Code clean-up (make fmt)
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-15 19:59:25 +01:00
Michael Mayer
8a476edc2a
Maps: Fix marker positions and refresh after loading #199
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-15 19:45:54 +01:00
Michael Mayer
c31470dafb
Initial code for new Places UI
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-15 04:04:33 +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
Kelvin
cd7339d8a0
[Minor/Wording] Update photo.go url route docs ( #186 )
...
Minor change.
2020-01-10 10:43:51 +01:00
Michael Mayer
17d7551be5
Frontend: Rename "archive" to "hide" for soft delete #185
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-09 02:09:54 +01:00
Michael Mayer
e9874d6e0c
Backend: Compile labels into source #160
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-09 01:21:09 +01:00
Michael Mayer
182b169ac0
Backend: Improve thumbnail rendering #157
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-08 22:29:40 +01:00
Michael Mayer
719fd1a811
Backend: Use mutex in convert so that it can be canceled
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-08 20:51:49 +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
c147eee30f
Backend: Add stub for meta package #172
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-07 17:36:49 +01:00
Michael Mayer
f6d4e62ea8
Backend: Split up "util" package
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 15:22:46 +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
10b143f8ae
Implement restore for hidden (deleted) photos #167
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-06 05:45:03 +01:00
Michael Mayer
f89a3d7bb1
Backend: Rename repo
package to query
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-05 14:18:40 +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
4263061a89
Backend: Fix index events after refactoring
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 05:38:21 +01:00
Michael Mayer
b87465f776
Backend: Fix index API after refactoring
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 05:28:40 +01:00
Michael Mayer
057204d379
Backend: Major code refactoring
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 05:03:47 +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
c74bb7d13a
Import: Use goroutines and channels
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 03:57:28 +01:00
Michael Mayer
d5d3fa8131
Indexer: Use goroutines and channels
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-02 02:58:26 +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
04cb2be1d4
Frontend: Edit album name
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-27 07:02:49 +01:00
Michael Mayer
8e15c1d6fd
Code clean-up (make fmt)
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-21 17:24:29 +01:00
Michael Mayer
974880401e
Frontend: Make new albums favorite by default and refresh navigation
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-21 17:18:47 +01:00
Michael Mayer
4ab44c5c23
Frontend: Add photos to new album
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-17 04:39:23 +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
2281c0c675
Backend: Refactor API source structure
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-16 11:04:49 +01:00
Michael Mayer
b5da75a2e6
Backend: Delete upload folder after import #158
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-15 17:43:17 +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
63dab60a5e
Backend: Prepare TensorFlow for NSFW model
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-13 16:25:47 +01:00
Michael Mayer
845cc5a77d
Backend: API stub for editing photo metadata
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 19:11:44 +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
d4b3e456f7
Backend: Move SQL queries to repo package
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 07:37:39 +01:00
Michael Mayer
9d3bb8fb73
Indexing: Disable "convert to jpeg" if library is read only (backend)
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-11 05:04:41 +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
6d4e42c79e
Added option to skip indexing existing files
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-09 08:04:41 +01:00
Michael Mayer
84bf4700ec
Fix search query parser (unicode)
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-08 22:45:45 +01:00
Michael Mayer
661f1bfa9b
Albums: Select, delete & download #15
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-06 16:47:30 +01:00
Michael Mayer
a32970a888
Albums: Delete API #15
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-06 11:56:24 +01:00
Michael Mayer
47450cad91
Albums: Download single file #15
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-05 21:06:53 +01:00
Michael Mayer
1e4d272ee7
Albums: Change zip file name and remove downloaded archives #15
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-05 19:49:05 +01:00
Michael Mayer
25d0e92036
Albums: Zip download #15
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-05 19:21:35 +01:00
Michael Mayer
85489bf5e1
Albums: Remove photo #15
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-05 14:11:45 +01:00
Michael Mayer
77af67dd36
Albums: Refactor API #15
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-05 12:10:30 +01:00
Michael Mayer
309317d23d
Backend: Improve log messages
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-05 02:52:00 +01:00
Michael Mayer
fc3d319dfd
Backend: Fix API after switching to UUIDs
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-04 16:47:47 +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
c1088d4b54
Albums: Use month and year as default name #15
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-04 12:11:11 +01:00
Michael Mayer
ded37fc486
Albums: Add BatchPhotosAlbum API #15
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-04 01:46:17 +01:00
Michael Mayer
6f3593ec9a
Albums: Use album slug in URL #15
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-03 23:55:24 +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
c584a79a6f
Add album name edit dialog #15
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-03 21:25:40 +01:00
Michael Mayer
2b6b1b9f79
API: Improve logging
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-03 12:51:23 +01:00
Michael Mayer
cd461d5594
Frontend: Real-time logging
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-02 13:14:01 +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
98cb0b2c28
Improve notifications for import / index
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-17 00:55:40 +01:00
Michael Mayer
25742c9f1e
Fix: Don't change private together with story flag
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-16 23:56:47 +01:00
Michael Mayer
2c3d6070cc
Code clean-up: Rename alert to notify
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-16 23:55:56 +01:00
Michael Mayer
aebbb17a53
Update client config after upload, import or index
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-16 23:22:50 +01:00
Michael Mayer
c602ce82b8
Fix upload page
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-16 17:48:51 +01:00
Michael Mayer
65f084193e
Add event hub & websocket for push notifications
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-16 16:06:34 +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
8e1d872a7b
Canonical API headers
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-11 23:38:43 +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
Theresa Gresch
01b35d0cf5
Add tests for thumbnail api
2019-07-17 17:38:51 +02:00
Theresa Gresch
c7e7014c3a
Add tests for labels api
2019-07-17 17:16:33 +02:00
Theresa Gresch
7fc789e639
Add tests for album api
2019-07-17 16:46:54 +02:00
Theresa Gresch
4811fc9146
Add test conditions to photos api test
2019-07-17 16:44:21 +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
dd10265ae8
Frontend: Add story toggle button to clipboard menu
2019-06-18 07:28:30 +02:00
Michael Mayer
df5aa57e68
Albums: Code clean-up and small fixes #15
2019-06-18 06:37:10 +02:00
Theresa Gresch
5f63f2999c
Implement first album functionality
2019-06-17 21:45:06 +02:00
Michael Mayer
3ee3946011
Proof-of-concept for import and index from Web UI
2019-06-15 11:03:54 -07:00
Michael Mayer
0f6867af79
Photos: Add private and sensitive flag
2019-06-14 18:44:10 -07:00
Michael Mayer
ea3f209f8f
Proof-of-concept for batch like & delete
...
Requires additional code clean-up and unit / acceptance tests
2019-06-14 16:35:18 -07:00
Michael Mayer
9e761549e4
API: Remove debug log from upload
2019-06-14 15:29:12 -07:00
Michael Mayer
c133dbe3f9
Indexer: Code and label clean-up
2019-06-14 13:01:58 -07:00
Michael Mayer
2005da9a25
Rename "Import" to "Library" and add tabs to page
2019-06-14 12:16:59 -07:00
Michael Mayer
60e9346f08
Proof-of-concept for upload & import
2019-06-13 11:26:01 -07:00
Michael Mayer
8642b6f664
Proof-of-concept for labels and search filters
2019-06-09 04:37:02 +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
Vedhavyas Singareddi
38b9889ef2
Add context for graceful shutdown #112
...
see pull request #114
2019-06-03 22:58:15 +02:00
Michael Mayer
8124a8cde1
Use label rules to optimize image classification
2019-05-16 08:41:16 +02:00
Michael Mayer
0400b6ec7a
Add download links to thumbnails in photo viewer
2019-05-16 04:03:55 +02:00
Michael Mayer
441922c35e
Add download button to photo viewer
2019-05-14 18:16:35 +02:00
Michael Mayer
dc4536b249
Improve thumbnail rendering and indexing performance
2019-05-13 18:01:50 +02:00
Michael Mayer
0ddef3a02d
Rename context package to config and fsutil to util
2019-05-06 23:18:10 +02:00
Michael Mayer
71adb35cff
Remove test and frontend packages; app and test context refactoring
2019-05-03 18:57:28 +02:00
Michael Mayer
6cba9d061f
Remove unnecessary getter prefix
...
See https://golang.org/doc/effective_go.html#Getters
2019-05-02 17:26:44 +02:00
Michael Mayer
3315b87305
Use logrus for logging
2019-05-02 14:10:05 +02:00
Michael Mayer
2e418d6e1e
Fix API photo like / unlike test (failed existing photos), see #79
2019-04-26 04:25:00 +02:00
Vedhavyas Singareddi
4edfc4fa4c
error chacks and minor api refactoring ( #92 )
...
* error chacks and minor api refactoring
* consistant naming
2019-01-15 14:00:42 +01:00
Michael Mayer
628c598f08
Rename Config.GetThumbnailsPath() to ThumbnailsPath(), see #50
2018-12-21 03:24:22 +01:00
Michael Mayer
c1219799da
Rename Config.GetOriginalsPath() to OriginalsPath(), see #50
2018-12-21 03:21:21 +01:00
Michael Mayer
0f12aac73b
Rename Config.GetDb() to Db(), see #50
2018-12-21 02:37:16 +01:00
Joey Zou
c5ff44692f
HTTP status code change ( #78 )
...
DislikePhoto and LikePhoto should return http.StatusOK (200) instead of http.StatusAccepted (202)
2018-12-07 13:48:15 +01:00
Michael Mayer
2e746c833c
Code clean-up #58
2018-11-18 19:18:19 +01:00
Michael Mayer
86a6dda0e0
Run "make fmt" #58
2018-11-17 12:29:01 +01:00
Michael Mayer
bb36226b59
Expected status for like and dislike is accepted (202) #58
2018-11-17 08:37:31 +01:00
Michael Mayer
cdf9d9293d
Add test stubs and helper functions for package api #58
2018-11-17 08:28:50 +01:00
Michael Mayer
fb91ce9a06
Move utils and test config to separate packages #58
2018-11-17 06:21:39 +01:00
Michael Mayer
dd26ee0dca
Use functions for all config values #50
...
Why? See https://github.com/photoprism/photoprism/issues/50#issuecomment-433856358
2018-11-09 20:48:23 +01:00
Michael Mayer
a4d6f810d6
Added inline documentation #14
2018-11-06 19:02:03 +01:00
Michael Mayer
3e3327ade3
Added link to wiki / developer guide, see #12
2018-11-06 11:10:57 +01:00
Michael Mayer
4a33d430e9
Fixed formatting for api inline docs, see #12
2018-11-06 10:43:59 +01:00
Michael Mayer
e66e9e4f69
Improved REST route docs, see #12
...
Hard to test locally as godoc -http ":80" doesn't seem to work outside the GOPATH
2018-11-06 10:28:44 +01:00
Michael Mayer
5868d4e664
Added REST route as a first step to document API, see #12
2018-11-06 09:56:40 +01:00
Gergely Brautigam
b202bb6cc7
Refactoring the photoprism package #53
...
* Started refactoring the photoprism package.
* A lot of more comments and eliminating utils.
* Fixed search.
* See #50 The great refactor -- Refactor config to YAML, Add Docs, Revise exported fields
2018-11-01 17:01:45 +01:00
Michael Mayer
6a2af16d1c
Using goimports for formatting imports #50
2018-10-31 07:14:33 +01:00
Philipp Knobel
00f79b2d01
First implementation of liking a photo ( #48 )
...
First implementation of liking a photo
2018-10-31 03:33:18 +01:00
Carlos Vazquez
00abbf1af5
Adds basic documentation for internal packages ( #43 )
...
* Added basic documentation wireframe for api, commands, and forms.
* Added doc.go
2018-10-31 02:42:54 +01:00
Michael Mayer
b1e2ac17bd
Save() instead of Update() must be used for updating rows
2018-09-27 15:16:37 +02:00
Michael Mayer
7640cae26b
Mark files are missing, when they are not found
2018-09-27 12:10:19 +02:00
Michael Mayer
10859ee695
Moved perceptual hash from photo to file model; code clean-up (go fmt)
...
- Files might show different details of the full photo
2018-09-27 08:59:53 +02:00
Michael Mayer
2ae77b7686
Refactored REST API (renamed package to api)
2018-09-24 21:14:15 +02:00