1
Fork 0
Commit Graph

289 Commits

Author SHA1 Message Date
Viktor Strate Kløvedal a0ee666616
Merge pull request #76 from stz184/favorites-checkobox-on-photos-and-album-page-viktorstrate/photoview#6
Fixes viktorstrate/photoview#6
2020-09-27 18:34:46 +02:00
viktorstrate 0a314b8e1d Add geojson graphql endpoint, work on mapbox 2020-09-27 00:46:01 +02:00
viktorstrate b133a1846c Fix bug with max worker jobs
Fix bug where it was possible to set max scanner worker jobs to 0,
resulting in the scanner not processing any jobs.
2020-09-25 19:21:03 +02:00
viktorstrate bbff25973e Fix bug where max_concurrent_tasks for...
scanner queue would be initialized to 0.
2020-09-24 17:52:53 +02:00
viktorstrate 44a00c7415 Move setup of executable workers to function
- Fix startup crash if no site_info row was found
2020-09-23 14:34:26 +02:00
viktorstrate 9861788ce7 Update gqlgen to v0.13.0 and regenerate 2020-09-22 09:46:35 +02:00
viktorstrate 9c9807ecc9 Add admin setting to change max concurrent workers 2020-09-21 21:32:30 +02:00
viktorstrate 05380354e3 Setup periodic scan background runner 2020-09-21 12:34:56 +02:00
viktorstrate 167ff4b8c4 Update periodic scanner value from UI 2020-09-21 11:50:39 +02:00
viktorstrate 679dc70340 Prepare for periodic scan intervals
Add setting to database, and to graphql api
2020-09-20 22:19:25 +02:00
stz184 75e43aae80 Merge branch 'master' of github.com:viktorstrate/photoview into favorites-checkobox-on-photos-and-album-page-viktorstrate/photoview#6 2020-09-07 13:08:25 +03:00
stz184 d7e6ab9cf3 Fixes viktorstrate/photoview#6
- Added favorites toggle on both Album and Photos page
- When the favorites are viewed, the URL changes
- Removed unused variable activeImage
- Added match.params propTypes to AlbumPage component
2020-09-07 13:04:14 +03:00
viktorstrate e59ff9cbde Fix NewMediaFromRows 2020-08-15 11:59:44 +02:00
viktorstrate 78b415871d Add date information to media
This closes #61
2020-08-12 13:04:41 +02:00
viktorstrate 020321959d Show file size for media downloads
This closes #63
2020-08-11 22:34:42 +02:00
viktorstrate 849f2f25bf Add fileSize to media_url database entries 2020-08-11 22:18:15 +02:00
viktorstrate b52595fe46 Save gps coordinates from exif
This closes #62
2020-08-11 14:46:23 +02:00
viktorstrate 82b18f0e9b Cleanup + add video format 2020-07-13 18:01:31 +02:00
viktorstrate f669812efb Use cookies for authentication instead of header
This replaces the current implementation
where a bearer header holds the auth-token.
Now the same token is being sent using a cookie instead.
This greatly simplifies fetching resources (images and video),
since the header is sent along implicitly with each request.
2020-07-12 18:52:48 +02:00
viktorstrate 0e9d37ca77 Add video metadata 2020-07-12 14:17:49 +02:00
viktorstrate b34115cab0 Start on video integration with web ui 2020-07-11 16:42:27 +02:00
viktorstrate f537b1d608 Add video route (still unprotected) 2020-07-11 15:57:58 +02:00
viktorstrate 990a592fcc Expose media_type to graphql
- Make video thumbnail accessible from graphql
2020-07-11 14:21:10 +02:00
viktorstrate 9e5480188b add media_type column to media table in database 2020-07-11 14:05:06 +02:00
viktorstrate 0eb0319fa8 Generate video thumbnails 2020-07-11 13:39:11 +02:00
viktorstrate b510e14ecd Rename resolvers/photo.go to media.go 2020-07-10 18:52:18 +02:00
viktorstrate cacfb5edde Fix share pages 2020-07-10 18:35:37 +02:00
viktorstrate df80802cab Huge refactor: rename photo to media
To prepare for video support

Migrate database rename tables and columns:
- photo to media
- photo_url to media_url
- photo_exif to media_exif

- Update api accordingly
2020-07-10 14:26:19 +02:00
viktorstrate 3564866f41 Start on video processing 2020-07-10 12:58:11 +02:00
stz184 e70da6bb26 Merge remote-tracking branch 'upstream/master' into use-hash-instead-of-full-path-to-avoid-key-length-maximum 2020-06-24 13:42:43 +03:00
stz184 f88fa33e5f InnoDB has a maximum index length of 767 bytes for tables that use COMPACT or REDUNDANT row format, so for utf8mb3 or utf8mb4 columns, you can index a maximum of 255 or 191 characters, respectively.
That's why I created a new column storing a MD5 hash of the path and made it unique. The MD5 hash has only 32 characters and can be generated natively in MySQL and MariaDB. It helps us to avoid maximum key length and in the same time enforce unique photo and album paths.

- Added path_hash column to photo and album tables
- Added down migration file for 005_utf8_migration (just for consistency)
- Added PathHash field to Album and Photo struct
- album_scanner.go and photo_scanner.goo perform checks by MD5 hash now
2020-06-24 11:43:20 +03:00
viktorstrate 11c3a92373 Reintregrate notifications with scanner 2020-06-23 15:13:07 +02:00
viktorstrate 95f4df4b7d Start to integrate new scanner system with api 2020-06-23 00:40:47 +02:00
viktorstrate a22d002146 Major rework of scanner 2020-06-22 23:52:41 +02:00
viktorstrate 5d1c2f7134 Implement favorite resolver 2020-06-19 15:34:52 +02:00
viktorstrate b289b25e34 Start on photo favorite 2020-06-17 18:00:58 +02:00
viktorstrate fef27c5640 Add login page for protected shares 2020-06-14 20:56:48 +02:00
viktorstrate 79be996985 Detect if share token is password protected 2020-06-14 18:28:12 +02:00
viktorstrate f6f6eb8bfa Prepare back-end for token password 2020-06-14 18:02:46 +02:00
viktorstrate bbb6e2eca2 Add set password from share dropdown in sidebar 2020-06-14 15:07:07 +02:00
viktorstrate b254f3abaa Implement ScanAll resolver 2020-04-15 11:21:16 +02:00
viktorstrate b4676af3c1 Rewrite environment variable configurations 2020-04-06 22:16:25 +02:00
viktorstrate 48520a7d2d Further work on single docker container
- Add proper .dockerignore
- Fix photo prefix
- Print public endpoint when server starts
- Discard API_LISTEN_PORT
2020-04-05 18:54:13 +02:00
viktorstrate 7b3f016a0f Add replace debounce with throttle
Update dependencies
2020-03-12 13:26:11 +01:00
viktorstrate 4e5b5624de Add paths for albums to the web ui
Only fetch album paths by authorized user
2020-03-07 17:07:01 +01:00
viktorstrate fc4639a293 Add album path resolver 2020-03-07 16:19:27 +01:00
viktorstrate a5fc15af45 Fix security bug regarding search
...that let users search for albums and photos made by other users
2020-03-05 20:46:50 +01:00
viktorstrate ec7a7adf43 Different small improvements to search
- Make photos link to its album
- Implement Photo -> Album resolver
- Highlight query in search
- Hide search bar when not logged in
2020-03-05 20:34:30 +01:00
viktorstrate c30f5a833a Add search resolver to api 2020-03-05 11:53:42 +01:00
viktorstrate 67fabd1de4 Fix graphql query for share pages
Properly close rows in scanner
2020-02-29 09:21:41 +01:00
viktorstrate 2af47b2381 Properly close sql rows 2020-02-28 20:57:46 +01:00
viktorstrate 2f97dcff0c Improve scanner reliability 2020-02-27 16:26:53 +01:00
viktorstrate 458b6fb49c Improve scanner - first scan, then process 2020-02-26 21:23:13 +01:00
viktorstrate 440814564c Improve notifications 2020-02-26 19:44:47 +01:00
viktorstrate ecd1447deb Fix exif throwing error if no was found 2020-02-24 23:56:28 +01:00
viktorstrate b10c607f3a Add exif parsing 2020-02-24 23:30:08 +01:00
viktorstrate 890e36b7a8 Fix bug when filtering and limiting a query 2020-02-24 09:59:20 +01:00
viktorstrate 1e115400a4 Fix sql bug and add recursive query for album thumbnails 2020-02-22 14:29:41 +01:00
viktorstrate 1dc2221524 Add change password support 2020-02-22 14:05:33 +01:00
viktorstrate e00a5553f7 Add download support 2020-02-21 22:42:39 +01:00
viktorstrate 935dc5b55e Work on notifications + custom logger 2020-02-21 20:51:50 +01:00
viktorstrate 2d15e7c41f Add authentication for websockets 2020-02-21 17:53:04 +01:00
viktorstrate b2a8fd09f9 Work towards subscriptions
- Replace chi with gorilla/mux
- Write custom CORS rules
- Start on notification subscriptions
2020-02-21 16:50:50 +01:00
viktorstrate ce11d5201b Improve myAlbums query 2020-02-20 17:14:11 +01:00
viktorstrate 39afd67130 Show all root albums instead of the single path
Improve sql connection error messages
2020-02-19 22:04:38 +01:00
viktorstrate a87e9fc56d Add user management to api 2020-02-16 12:22:00 +01:00
viktorstrate 3376fbe13b Work on settings page 2020-02-15 22:13:02 +01:00
viktorstrate f1ce85dcb5 Set max sql connections + improve user register 2020-02-14 14:29:41 +01:00
viktorstrate 64e702790f Make scanner generate high-res jpg
If original image format is not supported in browser
2020-02-14 13:31:44 +01:00
viktorstrate 0f7f703982 Further work on shares 2020-02-11 15:36:12 +01:00
viktorstrate 687b4f4f7f Work on shares 2020-02-11 14:32:35 +01:00
viktorstrate 6e72caf2f0 Improve integration with ui 2020-02-10 12:05:58 +01:00
viktorstrate a3a4dda286 Work on share tokens 2020-02-09 21:25:33 +01:00
viktorstrate 963acf11e8 Add album thumbnail to graphql 2020-02-09 16:16:41 +01:00
viktorstrate e6593ee7f3 Working on integrating backend with ui 2020-02-09 15:26:59 +01:00
viktorstrate d50b8034d1 Work on photo serving and processing 2020-02-09 14:21:53 +01:00
viktorstrate 9a8701ecd0 Improve image processing 2020-02-09 12:53:21 +01:00
viktorstrate 517286ff38 Setup initial setup wizard 2020-02-05 16:49:51 +01:00
viktorstrate c2a5b5d2f3 Add album resolver 2020-02-05 16:14:21 +01:00
viktorstrate 43e214b5d0 Work on photo resolver 2020-02-05 14:51:46 +01:00
viktorstrate d81e945b68 Start on image proccessing 2020-02-02 00:29:42 +01:00
viktorstrate a57c111630 Work on scanner 2020-02-01 17:58:45 +01:00
viktorstrate e2049bd6e5 Add sql tables for photos and albums 2020-02-01 14:52:27 +01:00
viktorstrate 9892366143 Refactor gqlgen 2020-02-01 00:08:23 +01:00
viktorstrate 51fbe8a2d5 Implement authorization 2020-01-31 23:30:34 +01:00
viktorstrate 9d734af5e2 Implement access token 2020-01-31 18:51:24 +01:00
viktorstrate 0518c0e360 Add user signup 2020-01-31 17:36:48 +01:00
viktorstrate 8a69b1a82c Setup database migration 2020-01-31 15:22:58 +01:00
viktorstrate 9d95b7bead Start on graphql in go 2020-01-30 14:28:14 +01:00