Marco Herrn
0129cb7703
Treat symlinks to directories like directories
...
This allows symlinking to create additional subalbums.
Closes : #431
2021-07-16 13:48:29 +02:00
Marco Herrn
7c993832ec
Add support for Matroska (MKV) video container
2021-07-12 11:36:23 +02:00
feinedsquirrel
52c2c76169
update Kagami/go-face target commit and new deps for it
2021-06-04 14:45:33 -06:00
Dhole
3de9282fba
Sanitize float values in EXIF fields
...
Read exposure as rational in EXIF internal parser
2021-05-19 13:53:34 +02:00
viktorstrate
24b74c2d94
Add check that prevents deletion of sole admin user
2021-05-11 20:40:18 +02:00
viktorstrate
049a06302a
Add unit tests for scanner media_type
2021-05-06 22:25:17 +02:00
viktorstrate
b022a13e55
Batch exiftool runs + scanner package restructuring
2021-05-06 22:01:48 +02:00
viktorstrate
6693cb589c
Fix incorrect media type resolver func
2021-04-27 20:31:15 +02:00
viktorstrate
8d2654997d
Add test for routes authenticateMedia
2021-04-26 22:35:10 +02:00
viktorstrate
8539d48944
Add test for TokenFromBearer
2021-04-26 21:39:20 +02:00
viktorstrate
0a0fdeedc5
Improve user tests API
2021-04-26 21:22:28 +02:00
viktorstrate
542e5c8532
Improve scanner_album NewRootPath tests
2021-04-26 20:37:29 +02:00
viktorstrate
253f126aaf
Add scanner_album tests
2021-04-26 15:07:06 +02:00
viktorstrate
1029b61a4c
Fix faces not getting scanned
...
- This fixes #344
- Add integration tests for face recognition
- Properly check that the user own the queried album
2021-04-26 12:21:15 +02:00
viktorstrate
d03923992c
clean up api log prints
2021-04-26 10:26:54 +02:00
viktorstrate
3073cfb953
Attempt to fix clear db for mysql
2021-04-24 19:28:20 +02:00
viktorstrate
ed02e90338
Attempt to fix clear db
2021-04-24 19:21:10 +02:00
viktorstrate
d09d5f6ca0
Improve codeql action + fix test db clean
2021-04-24 19:12:45 +02:00
viktorstrate
761db0639d
Add simple scanner integration test
2021-04-24 18:51:21 +02:00
viktorstrate
060e2008b7
Add tests for albums, users, site_info models
2021-04-23 23:07:18 +02:00
viktorstrate
60f8a68bf6
Implement database integration tests
2021-04-23 15:10:23 +02:00
viktorstrate
dc8325bd4a
Extend exif tests
2021-04-22 22:46:52 +02:00
viktorstrate
88a9d705a9
Add integration tests for exif parsers
2021-04-22 21:37:59 +02:00
Robin Moser
8bd47c4de6
add structure for German localization
2021-04-20 01:16:39 +02:00
viktorstrate
7e4e0dd1e7
Integrate polish translation
2021-04-19 19:09:40 +02:00
viktorstrate
32f4aaa840
Integrate spanish translation
2021-04-19 13:23:21 +02:00
viktorstrate
e0e678e144
Rewrite and fix FacesOverlay
2021-04-17 22:40:46 +02:00
viktorstrate
e43a344902
Rewrite sidebar share to Typescript
2021-04-17 22:14:17 +02:00
viktorstrate
f6f7377096
Fix bug causing mediatype to always be Photo
2021-04-17 17:51:13 +02:00
viktorstrate
7f885fa63e
Fix minor bugs
2021-04-17 17:28:16 +02:00
viktorstrate
6c63d3a6dd
Integrate italian translation
...
- Add before save checks on user language, to make sure the value is
valid
2021-04-17 12:23:02 +02:00
viktorstrate
8e8abe7d37
Replace all gorm .Scan() calls with .Find()
...
if the argument is a model. This ensures that the proper gorm hooks are
called which was causing the full screen view on the Places page to
crash.
Also fixed a bug in Messages.js that caused a crash.
2021-04-15 16:27:26 +02:00
viktorstrate
de76360fbf
Integrate swedish translation
2021-04-15 11:59:49 +02:00
viktorstrate
bf19ffc0a5
Integrate french translation
2021-04-14 12:36:16 +02:00
viktorstrate
bbb12003fc
Fix #299 and #300
2021-04-13 22:15:47 +02:00
viktorstrate
f8cd804c3d
Improve database compatibility
...
- Make MediaType case insensitive when saved to database
- Null check exif migrations, this might solve #300
2021-04-13 21:39:07 +02:00
viktorstrate
97a8f3726d
Convert many pages to Typescript
2021-04-13 19:57:33 +02:00
viktorstrate
264ee54e7f
Start on typescript transition
2021-04-12 00:14:48 +02:00
viktorstrate
084d9bfef7
Cleanup logs and external exif parser
2021-04-11 22:55:44 +02:00
viktorstrate
b6a85d0966
Finish localization
...
- Add user preferences section to settings
- Make settings page available for all users
- Move log out button to settings page
- Make it possible for each user to choose their desired language
2021-04-11 22:31:42 +02:00
viktorstrate
8ec2a7789b
Fix sidecar hash bug
...
This closes #276
2021-04-03 22:52:53 +02:00
viktorstrate
ceb8c4103f
Fix exiftool detection
2021-04-03 21:39:32 +02:00
viktorstrate
ad60eccf8b
Add database migrations for exif values
2021-04-03 21:20:02 +02:00
viktorstrate
95c174d3a5
Setup husky hooks for api
2021-04-03 17:49:18 +02:00
viktorstrate
17fe8c01dc
Update go dependencies
2021-04-03 16:43:11 +02:00
Kjeldgaard
3bde799fb3
Fix log bug
...
Fix log bug, exposure time is now float and not string.
Signed-off-by: Kjeldgaard <Kjeldgaard@users.noreply.github.com>
2021-03-31 23:43:44 +02:00
Kjeldgaard
f946500eaa
Use barasher/go-exiftool
...
Use barasher/go-exiftool again.
Exposure is not saved as float and not a string.
Signed-off-by: Kjeldgaard <Kjeldgaard@users.noreply.github.com>
2021-03-31 23:35:25 +02:00
Viktor Strate Kløvedal
454b2dbadd
Merge branch 'master' into 244_exiftool
2021-03-29 12:10:02 +02:00
Kjeldgaard
1193222f92
Update external exif parser method
...
Exiftool meta data parsed as intergers and not strings. Keep internal
exif parsing functionality.
Signed-off-by: Kjeldgaard <Kjeldgaard@users.noreply.github.com>
2021-03-28 23:52:51 +02:00
viktorstrate
b59ba20bd1
Refactor Dockerfile
...
- Use debian:bullseye instad for newer packages
- Only install necessary dependencies for targeted arch
- Make it work with libheif
2021-03-28 13:57:57 +02:00
viktorstrate
a039941dda
Add libheif to Dockerfile
2021-03-27 22:30:26 +01:00
viktorstrate
4344e895d1
Support .heic images + refactor EncodeMediaData
2021-03-27 21:14:42 +01:00
Kjeldgaard
7b5305579b
Extract metadata as integers
...
Extract all metada as integers fomr exiftool.
Signed-off-by: Kjeldgaard <Kjeldgaard@users.noreply.github.com>
2021-03-23 21:36:03 +01:00
viktorstrate
b590413e76
Fix share media not working with postgres
...
This closes #265
2021-03-23 14:04:44 +01:00
Kjeldgaard
1f9f6ebf9a
Use exiftool for parsing exif data
...
Use exiftool to parse exif metadata.
Signed-off-by: Kjeldgaard <Kjeldgaard@users.noreply.github.com>
2021-03-20 00:26:05 +01:00
viktorstrate
a14b12b8d4
Fix bug where DetectFaces would be called with the wrong media.
...
This happend because the go routine did not capture the media variable,
and so the it would change before the go routine could start
and call the DetectFaces function.
2021-03-16 22:27:27 +01:00
viktorstrate
3ae92086cd
Pass database as argument to individual face_detector functions
...
This allows the face detector to use transactions,
such that faces can be detected on media that has not
been fully commited yet.
This solves #214
2021-03-16 18:26:51 +01:00
viktorstrate
ba16fc1caa
Fix postgres errors + fix search results without thumbnails
...
This closes #241
2021-03-12 14:26:51 +01:00
Viktor Strate Kløvedal
08a99195d6
Merge pull request #221 from Kjeldgaard/ignore_media
...
Ignore media files
2021-03-12 11:12:43 +01:00
Kjeldgaard
8afff70d9a
Store ignore data in cache
...
Store album ignore data in cache and not database. Fix albums with only
ignore-media-only not to be shown in album list. Use
github.com/sabhiram/go-gitignore exclusively for photoviewignore.
Signed-off-by: Kjeldgaard <Kjeldgaard@users.noreply.github.com>
2021-03-10 21:51:36 +01:00
viktorstrate
3d9ae530af
Load shared albums recursively
...
This solves #143 and #229
2021-03-03 15:55:55 +01:00
viktorstrate
c18759e6db
Fix darktable docker install
...
and print version of executable workers on startup
2021-03-03 13:32:44 +01:00
viktorstrate
430869b319
Completely remove PHOTOVIEW_PUBLIC_ENDPOINT
2021-03-01 22:11:58 +01:00
viktorstrate
2c98827db5
Make photoview work without providing the PHOTOVIEW_PUBLIC_ENDPOINT environment variable
2021-03-01 22:03:57 +01:00
viktorstrate
26996b45e5
Reload faces if albums or media is deleted
2021-02-27 16:39:04 +01:00
Kjeldgaard
3ad12e3025
Ignore media files
...
Added feature to ignore specific media files. E.g. to ignore .png media
files, add '*.png' to .photoviewignore file or add 'img_1234.jpg' to
ignore a specific file. This applies to the current dir and any
potential subdir. Matching is case sensitive. File ignore pattern must
include a '.', otherwise the pattern is treated as a dir ignore pattern.
Signed-off-by: Kjeldgaard <Kjeldgaard@users.noreply.github.com>
2021-02-27 00:19:03 +01:00
viktorstrate
d4552c7724
Fix sql compatiability bug
2021-02-26 21:53:14 +01:00
viktorstrate
14c97d49c1
Fix sql compatiability bug
2021-02-26 21:51:00 +01:00
viktorstrate
7bdf02b726
Fix bug where one user would load another users image faces
2021-02-26 21:49:01 +01:00
viktorstrate
91d94ecc82
Fix bug related to faces feature
2021-02-26 21:30:09 +01:00
viktorstrate
51123ed8b4
Order people by number of photos of them
2021-02-26 20:19:20 +01:00
viktorstrate
b66cbf9274
Add environment variable to specify custom UI path
...
When using SERVE_UI=1
2021-02-26 15:10:28 +01:00
viktorstrate
43f89d1929
Update mysql dsn parser
...
to parse passwords with special characters properly
2021-02-26 13:57:13 +01:00
viktorstrate
8290d51aae
Add pagination for people
2021-02-25 20:39:24 +01:00
viktorstrate
7fab8287a2
Add API pagination for faces
2021-02-25 18:48:59 +01:00
viktorstrate
c80e25f8b0
Try to replace Parcel with Esbuild
...
Still some problems with styling
2021-02-25 12:53:39 +01:00
Kjeldgaard
222a288077
V2 Ignore Directories plus trailing slash
...
Updated ignore dirs feature to allow trailing slashes in
.photoviewignore file(s).
Signed-off-by: Kjeldgaard <Kjeldgaard@users.noreply.github.com>
2021-02-23 20:57:05 +01:00
Kjeldgaard
7ab9a12e43
V2 Ignore Directories
...
Looks for .photoviewignore file in all root dirs and potential subdirs.
Subdirs inherit the ignore rules from parent dir. If a .photoviewignore
file is found in a subdir, the new ignore rules are appended to the
existing ignore rules.
Ignore match engine is from 'github.com/sabhiram/go-gitignore'.
Signed-off-by: Kjeldgaard <Kjeldgaard@users.noreply.github.com>
2021-02-23 15:59:37 +01:00
viktorstrate
f3ccc60e26
Decrease face threshold
2021-02-22 22:29:42 +01:00
viktorstrate
eaad404f55
Fix new Docker runtime errors
2021-02-22 21:14:15 +01:00
viktorstrate
3eb3435f08
Add DetachImageFaces resolver
2021-02-22 18:14:31 +01:00
viktorstrate
20251dedd6
Add UI to move faces between face groups
2021-02-20 22:43:07 +01:00
viktorstrate
a3e5346501
Properly configure face gallery
2021-02-20 14:45:43 +01:00
viktorstrate
5368b4bae0
Various improvements to faces UI
2021-02-19 23:30:43 +01:00
viktorstrate
bdd2318afc
Implement recognizeUnlabeledFaces
2021-02-19 19:24:31 +01:00
viktorstrate
00fceea4db
Work on face merge ui
2021-02-19 17:49:41 +01:00
viktorstrate
6b48ac9a16
Add schemas for face related mutations
2021-02-17 13:50:32 +01:00
viktorstrate
de46f89f5d
Show face circles in sidebar
2021-02-16 17:13:08 +01:00
viktorstrate
c3eda0feab
Start on UI for faces
2021-02-16 12:41:34 +01:00
viktorstrate
67b812ed21
Add graphql resolver for faces
2021-02-16 12:01:10 +01:00
viktorstrate
e4df1fb706
Save face rectangles to database
2021-02-16 11:27:28 +01:00
viktorstrate
4b0365e8aa
Implement getSamplesFromDatabase
2021-02-15 20:31:17 +01:00
viktorstrate
abb80ae425
Start on face detection
2021-02-15 17:35:28 +01:00
viktorstrate
557b5e22df
Check that EXIF contains date shot before comparing
...
This should fix #196
2021-02-14 15:45:58 +01:00
viktorstrate
529444561b
Fix timeline date ordering
2021-02-14 11:40:13 +01:00
viktorstrate
dfc89123f6
Fix bug where an unauthorized request could crash the server
2021-02-14 11:19:29 +01:00
viktorstrate
7c603cb4df
Fix various Postgres specific errors
2021-02-14 11:04:38 +01:00
viktorstrate
13f293e244
Re-encode video thumbnails if missing from cache
2021-02-14 10:30:10 +01:00
viktorstrate
1ba45dbe09
Fix SQL errors for Timeline view,
...
when using Postgres or Sqlite. Closes #194
2021-02-14 10:11:10 +01:00
viktorstrate
2ba8e466ef
Update media date_shot to match exif
2021-02-13 17:21:15 +01:00
viktorstrate
35b41e1b56
Database migrator remove media.date_imported
2021-02-13 16:53:02 +01:00
viktorstrate
926aa3de3d
Cleanup graphql schema, and general refactoring
...
- Separate graphql `filter` into `paginate` and `order`
- Remove GalleryGroups, replaced by TimelineGallery
- Fix Apollo cache such that sorting works again
2021-02-13 15:08:05 +01:00
viktorstrate
a9edb148f1
Start on infinite scroll pagination
2021-02-12 17:44:32 +01:00
Viktor Strate Kløvedal
ce3090394b
Add dataloaders to combine database queries ( #190 )
...
See also https://gqlgen.com/reference/dataloaders/
2021-02-07 22:17:33 +01:00
viktorstrate
54a83a4dc6
Make thumbnails optional
...
to prevent app from crashing when in the middle of scanning
2021-02-07 18:13:08 +01:00
viktorstrate
4fdb9357ea
Add favorites filter for timeline
2021-02-07 17:13:27 +01:00
viktorstrate
d5ace2c0f8
Finish media interaction
2021-02-07 15:54:13 +01:00
viktorstrate
214c4e8be4
Fix panic when scanning
2021-02-04 22:06:49 +01:00
viktorstrate
ddd2cad1a3
Add query resolver for timeline view
2021-02-04 19:02:51 +01:00
András Maróy
dca81c7918
Don't log postgres password when connecting
2021-01-31 18:53:38 +01:00
András Maróy
be83849bee
Implement postgres support
2021-01-31 17:07:29 +01:00
stz184
8b4e2192c2
Fixes photoview/issues#168
...
- Removed unnecessary migration.
2021-01-30 17:55:12 +02:00
stz184
f723bda7c5
Fixes photoview/issues#168
...
- Migrated mediaGeoJson resolver to GORM
- Fixed issue loading media list in MediaList() function
- Fixed typo in the column "gps_lonitude" (renamed to "gps_longitude")
2021-01-29 01:23:40 +02:00
viktorstrate
fbebb13d28
Don't transcode web compatible video formats.
...
This relates to the following issues #131 #169 #173
2021-01-27 18:00:37 +01:00
viktorstrate
404f1898c2
Properly add new user as owner
...
when scanning albums already owned by other users
2021-01-26 15:30:21 +01:00
viktorstrate
a4f5d26197
Fix search
2021-01-26 14:34:28 +01:00
viktorstrate
2c6701b4b3
Fix filtering favorites
2021-01-26 14:27:43 +01:00
Viktor Strate Kløvedal
9320f9d085
Merge pull request #172 from stz184/fixed-issue-deleting-users
...
* Fixes photoview/photoview#168
2021-01-25 09:30:52 +01:00
viktorstrate
9afacc3add
Fix the deleteOldUserAlbums function
2021-01-24 21:30:57 +01:00
viktorstrate
2d54847fed
Refactor DeleteUser resolver
...
- Use tx inside transaction
- Use .Clear() to delete all albums at once,
to prevent unnecessary database hits.
2021-01-24 17:25:43 +01:00
stz184
b176694d2b
* Fixes photoview/photoview#168
...
Fixed issue deleting existing users.
2021-01-24 17:20:31 +01:00
viktorstrate
c88b8ed873
fix bug regarding thumbnail urls
2021-01-22 22:36:58 +01:00
viktorstrate
5e137392e1
avoid unnecessary sql queries
2021-01-22 09:35:54 +01:00
viktorstrate
2c230d917a
Further gorm attributes cleanup
2021-01-19 18:35:19 +01:00
viktorstrate
fc515aa375
Cleanup gorm model attributes + add indexes
2021-01-19 17:31:37 +01:00
viktorstrate
4bc50583d2
Add db max open connections again
2021-01-19 16:59:10 +01:00
viktorstrate
de35a06014
Add db resolver for media.exif
2021-01-19 16:46:15 +01:00
viktorstrate
46ae5115bb
Refactor EXIF parsing
2021-01-19 16:39:57 +01:00
viktorstrate
9691572154
Fix bug causing video routes to not be found
2021-01-19 16:04:33 +01:00
viktorstrate
dcca5becb5
Rewrite db retry to reconfigure database on error
2021-01-19 15:49:03 +01:00
viktorstrate
52e8013026
Fix sql compatibility problem when running in Docker
2021-01-17 18:12:32 +01:00
viktorstrate
107da91700
Refactor handling of environment variables
2021-01-17 16:50:48 +01:00
viktorstrate
621ad00fff
Update example.env with sqlite comments
2021-01-17 13:15:41 +01:00
viktorstrate
50d0aa0efb
Disable multithreaded scanners for sqlite
...
as it's not reliable
2021-01-17 13:08:44 +01:00
viktorstrate
fcdb5b4e7b
Work on sqlite support
2021-01-17 12:45:23 +01:00
viktorstrate
f711da4d9c
Merge branch 'v2.0.0' into v2/multi-database-support
2021-01-17 12:21:32 +01:00
stz184
26f2b753b7
Prefixed the env variables to avoid naming collisions
2021-01-16 23:27:23 +02:00
Vladimir Ivanov
85ce3a1018
Update api/database/database.go
...
Co-authored-by: Viktor Strate Kløvedal <viktorstrate@gmail.com>
2021-01-16 19:35:02 +02:00
stz184
5b7637cb3c
Added db connection retry logic
2021-01-12 20:14:28 +02:00
viktorstrate
41b122c461
Start on sqlite support
...
- TODO: Sqlite doesn't support MD5, all calls to this function should be done
beforehand.
2021-01-10 18:59:01 +01:00
viktorstrate
820ae78563
Delete old migrations
2021-01-10 18:29:33 +01:00
viktorstrate
a1a14286d6
Properly clean up when a user <-> album relation is deleted
2021-01-06 17:28:06 +01:00
viktorstrate
59048c8416
Fix various small errors regarding database change
...
- Fix media sidebar
- Fix Albums page
- Fix media and album shares
2021-01-02 23:07:44 +01:00
viktorstrate
d78cef300a
Finish add/remove root paths
2020-12-31 00:37:11 +01:00
viktorstrate
c198e68daf
Hook up UI to add and remove multiple root paths for each user
2020-12-30 18:36:26 +01:00
viktorstrate
96546f6556
Add resolvers for user albums and root_albums
2020-12-27 20:07:54 +01:00
viktorstrate
aeb05bca49
get initial scanner up and running
2020-12-22 01:14:43 +01:00
viktorstrate
732ccd05ab
restructure user <-> albums relations in database
2020-12-20 17:10:00 +01:00
viktorstrate
d815472458
Simplify search query a little
2020-12-19 09:45:43 +01:00
stz184
e5cb91532a
implicitly join on the Album table
2020-12-19 01:07:43 +02:00