e95967b3b0Merge pull request 'Improved Bootstrap experience and services improvements' (#154) from feature/146-bootstrap-experience into master
Andy Heathershaw
2020-04-30 08:48:54 +0100
8f9a386494Prevent deleting service definitions when they are in use throughout the system. Closes#153Andy Heathershaw2020-04-30 08:38:37 +0100
3655c28c73Facebook, Google and Twitter SSO app credentials are now migrated to the new services section when running under v2.2.0-beta.2. Providers no longer appear on the login/register page unless they are enabled AND a service has been selected. Added a link to amend services in the settings section. closes#152Andy Heathershaw2020-04-30 08:28:19 +0100
4dc4ce1517Switched the socialite login providers to the new external services configuration #152Andy Heathershaw2020-04-29 22:19:21 +0100
cb849c7928Revamped the new installer and moved the system configuration check to that part of the installer and out of the Laravel app. Corrected an issue with the s3_signed_urls storage column. #146Andy Heathershaw2020-04-27 17:35:26 +0100
e2f195f5beRefactored the installer so it all comes under the /install URL, and the AppInstaller namespace and source is outside of the public/ folder.Andy Heathershaw2020-04-27 08:57:13 +0100
6ad1cdda8fCorrected the detection of the Blue Twilight URL to allow redirection to the bootstrapper. Added standard BT to the install page. #146Andy Heathershaw2020-04-27 08:32:45 +0100
e06b227147Completed the first interation of the new Bootstrapper experience. Downloads and extracts vendors from Gitea and configures the encryption key. Still need to get upgrades implemented. #146Andy Heathershaw2020-04-26 21:53:24 +0100
365034d611Added a new Bootstrapper experience to download the vendors directly from Gitea instead of having to download Composer. #146Andy Heathershaw2020-04-26 15:08:26 +0100
7b2ea74a19Got the new Openstack SDK working with Rackspace, and added my own support for the Rackspace-specific extensions for API key and CDN. #144Andy Heathershaw2020-04-22 17:11:50 +0100
61c51fcd37Updated the OpenStack driver to use the new PHP Open Cloud repo instead of the previous Rackspace one. This also completes the last provider's change to GuzzleHttp instead of Guzzle. #144#145Andy Heathershaw2020-04-22 08:19:28 +0100
132bfcdb83Fixed a missing JS variable when deleting a photo from the album's admin page. This also now just removes the photo element from the DOM instead of reloading the whole page. #150Andy Heathershaw2020-04-22 08:18:30 +0100
c1a11eee17Merge pull request 'Pull #106 and #148 Dropbox and external services' (#149) from feature/106-dropbox-storage into master
Andy Heathershaw
2020-04-22 06:58:14 +0100
f80b80540fFiles are now removed from Dropbox when a photo/album is deleted. Added handling for Dropbox's 429 (retry) error. Added a new admin permission for restricing access to the new services area. Corrected a logic issue with failing images during the analysis process. #106Andy Heathershaw2020-04-22 06:56:15 +0100
f17a84f746Dropbox authorisation now uses a dedicated endpoint on the services controller, and uses OAuth2 state to transfer the storage ID. Added an intermediary screen before authorising. #106Andy Heathershaw2020-04-21 08:40:56 +0100
d97b790264Added the ability to create, edit and remove external services. Implemented an OAuth2 flow for authentication to Dropbox. #106Andy Heathershaw2020-04-20 22:33:42 +0100
09b4bc60ddImages are now refreshed correctly after resizing/rotating when using a private S3 album. Corrected some more icons to Font Awesome v5. #147#141Andy Heathershaw2020-04-19 15:46:35 +0100
b8b21cc06bMore updated icons to Font Awesome v5 and removal of assets within the project following the switch of the build system. #147Andy Heathershaw2020-04-19 15:31:48 +0100
db585586a4Switched the build system from Gulp to Grunt. Updated Bootstrap, Font Awesome and other dependencies to pull from my CDN on build. Started working on adding a 'services' section to hold external credentials, such as app ID/secret.Andy Heathershaw2020-04-19 10:54:07 +0100
e3892a037fStarted work on replacing guzzle/guzzle (v3) with guzzlehttp/guzzle (v6.)Andy Heathershaw2020-04-18 22:41:30 +0100
fdf4d72236Merge branch 'master' into feature/106-dropbox-storageAndy Heathershaw2020-04-18 21:53:36 +0100
f773b10244Implemented a new option for S3 sources to allow signed URLs and private buckets to be used. #141Andy Heathershaw2020-04-18 21:51:28 +0100
93c6f5da10Updated all resource routes to follow Laravel's standard of the "id" parameter on edit/update/destroy routes being the singular of the resource #142Andy Heathershaw2020-04-18 18:25:43 +0100
15cb2f40b0Replaced Rackspace's PHP Open Cloud with PHP OpenCloud OpenStack package.Andy Heathershaw2020-04-18 18:02:38 +0100
90cf38d9aaUpgraded Laravel from 5.5 to 6.0 LTS, as well as latest Composer dependencies #142Andy Heathershaw2020-04-18 17:45:40 +0100
9668352129Updated Composer dependencies to the latest versions. Resolves an issue with PHP 7.4 and AWSAndy Heathershaw2020-04-18 16:39:20 +0100
feb38c47b0Fixes#134 - user profile link is made available if not logged in and the user's profile is publicAndy Heathershaw2019-10-19 21:03:06 +0100
582e5fffaaDropbox #106 - files can be uploaded to a Dropbox account using a generated access token, and downloaded using the Blue Twilight download endpoint.Andy Heathershaw2019-09-15 21:37:41 +0100
b5d9b9c6cfMerge branch 'v2.2' of ssh://apps.andysh.uk:7999/aheathershaw/blue-twilight into v2.2
v2.2
Andy Heathershaw2019-09-14 15:40:33 +0100
da99b0b05aMerge branch 'feature/135-backblaze-driver' of aheathershaw/blue-twilight into master
Andy Heathershaw
2019-09-14 15:38:15 +0100
99cafbc9a5Backblaze #135 - B2 storage source now removes the current file version before uploading a new oneAndy Heathershaw2019-09-14 15:35:05 +0100
a6825bcef9Backblaze #135 - implemented the re-use of the upload token/URL. Fetching file contents now works by using the b2_download_file_by_id method with an auth header.Andy Heathershaw2019-09-14 10:04:09 +0100
69422ffaa4Backblaze #135 - implemented a retry and backoff period for 500/503 errors
Andy Heathershaw
2019-09-11 14:59:25 +0100
fb6754b8e9Backblaze #135 - tried to implement b2_download_file_by_id for private buckets, but this doesn't work correctly, logged with Backblaze
Andy Heathershaw
2019-09-10 16:24:26 +0100
ce03b2596fBackblaze #135 - album storage driver is now cached to maintain state within the same request, prevents multiple calls to B2. Images can now be deleted and (I think) edited.
Andy Heathershaw
2019-09-10 15:11:53 +0100
608442d566Backblaze #135 - introduced the config setting to choose whether to generate private or public URLs, or to auto-detect. Photos are now displayed from B2.Andy Heathershaw2019-09-09 21:52:26 +0100
9e777af0bfMerge branch 'master' into v2.2
Andy Heathershaw
2019-07-31 13:32:51 +0100
b141061406Fixes#131: quick upload feature creates a new album with inherited permissions, and also rebuilds the permissions cache. Added an alert to the quick upload to advise of the permissions change.
Andy Heathershaw
2019-07-31 08:56:30 +0100
d9b68716c8Force composer to always discard any local changes to packages - this gets around a checksumming issue in the AWS SDK upgrade.Andy Heathershaw2019-07-28 13:21:36 +0100
41908d4428Force composer to always discard any local changes to packages - this gets around a checksumming issue in the AWS SDK upgrade.Andy Heathershaw2019-07-28 13:21:36 +0100
728d14563eDo a comparison for Laravel 5.5 when auto-discovering commandsAndy Heathershaw2019-07-28 12:51:12 +0100
c8952a8ac1Enable users public profile page by default when profile pages are enabledAndy Heathershaw2019-07-28 08:17:17 +0100
24f2155a35Remove temporary files once they're in the analysis queue following an uploadAndy Heathershaw2019-07-27 14:05:19 +0100
f4f4de1b34Fixes#130: Local file system queue copies the file instead of moving it, so the temp file is still available to analyseAndy Heathershaw2019-07-27 13:50:27 +0100
4ef3285eb2Fixes#123: Processing queue is now used for bulk uploads. If an error occurs during processing on the queue, this is now relayed to the user. Fixed an issue when creating an album where the default storage wasn't defaulted.Andy Heathershaw2019-07-21 17:22:40 +0100
3b76f20738Fixes#128: Profiles page details are only displayed when social user profiles is enabledAndy Heathershaw2019-07-21 08:39:04 +0100
b2443d0ff9Fixes#102: include the parent album ID in the edit form to work with the validationAndy Heathershaw2019-07-21 08:25:44 +0100
8a758f2b06Fixes#100: set the first active storage location as default when the current default is deactivated. Also remove the stupid _old_input thingy as this was the very first screen I did in Laravel and it's not needed!Andy Heathershaw2019-07-20 18:06:21 +0100
5947b6e08cBumped version number to 2.2.0-beta.1. Use the url helper instead of the config to get the app root URLAndy Heathershaw2019-07-14 16:33:24 +0100
806d0696f0#127: InstallController now sets default options and permissions for new installationsAndy Heathershaw2019-07-14 16:28:46 +0100
4af68cd055#125: Updated the password reset and change passwords forms to BS4 validation stylesAndy Heathershaw2019-07-14 14:24:34 +0100
624334570f#124: Updated the user self-registration required and user self-activated e-mails to be notifications so they can be queued.Andy Heathershaw2019-07-14 14:18:15 +0100
216c93a750#124: E-mails now send and log to the database as sent when queuing is not enabledAndy Heathershaw2019-07-14 12:29:25 +0100
7418438d63#123: The framework of sending e-mails using Mailables but queued in the database is now there. Password reset e-mails are now the first ones being sent using the queue.Andy Heathershaw2019-07-14 12:13:58 +0100
bfbf740810#124, #125, #126: Started implementing e-mail queueing. Fixed the display of validation messages on the forgotten password form. Corrected the generation of the action URL when the APP_URL environment settings is not configured.Andy Heathershaw2019-07-13 21:40:13 +0100
07fa9639b5#123: The setting tab now only lists compatible storages. Added support for IAnalysisQueueSource to the LocalFileSystemSource driverAndy Heathershaw2019-07-13 10:27:35 +0100
95e79f2d28#123: The process command (which is now bt-queue:process to avoid conflicts with Laravel's default queue namespace) now uses the S3 storage to retrieve imagesAndy Heathershaw2019-07-13 10:15:13 +0100
7a71a06e4e#123: Images are now uploaded to the storage driver specified using the new IAnalysisQueueSource interface
Andy Heathershaw
2019-07-12 16:21:30 +0100
f26f545b76#123: Added the dropdown to the settings page to select from storage locations
Andy Heathershaw
2019-07-11 09:01:20 +0100
ebbc5ba097#121: Bulk updates to photos now take place on the queue if enabled (just need to handle album changes)
Andy Heathershaw
2019-07-10 14:31:04 +0100
3995d79955Merge branch 'feature/121-rabbitmq-queuing' of aheathershaw/blue-twilight into master
Andy Heathershaw
2019-07-09 23:07:27 +0100
0de33065fe#121: The current photo analysis method now polls the queue table until the photo is analysed (or 60 seconds, which ever comes first.) The process command now creates user_activity records for the profile pages. Added an example systemd file to run the message queue.Andy Heathershaw2019-07-09 23:05:22 +0100
f36aa61506#71, #111: Implemented security checking in the JSON feed methods. Also users now automatically inherit the anonymous permissions by way of an additional check specifically against the anonymous user firstAndy Heathershaw2018-11-18 21:39:19 +0000
386bd30208#111: Fleshed out the content of the Explore Photographers page. Also added a redirect to the activity feed if accessing the dashboard and logging inAndy Heathershaw2018-11-18 09:07:13 +0000
42a1e4b770#111: Accessing the user activity page/JSON feed is now impossible when feeds are disabled. Also the Activity icon is not shown in the navbar when feeds are disabled.Andy Heathershaw2018-11-17 16:02:31 +0000
3982f47243UserConfig::getOrCreateModel was incorrectly reloading the cache with non-objects
Andy Heathershaw
2018-11-17 15:30:56 +0000
1d81185779#111: Added no feed items language strings and link to the Photographer Explorer page.Andy Heathershaw2018-11-17 09:47:28 +0000
c0ab6a7acc#117: Avoid repeated calls to the configuration table - cache the entire table on the first request and use the cache in subsequent callsAndy Heathershaw2018-10-15 13:59:14 +0100
2304b23564Merge remote-tracking branch 'origin/feature/111-user-activity-feeds' into feature/111-user-activity-feedsAndy Heathershaw2018-10-13 04:48:05 +0100
bfd7a8100dAlbum URL now uses the Photo's thumbnailUrl method - allowing for cache-busting on the main gallery indexAndy Heathershaw2018-10-13 04:47:48 +0100
245bfe546c#111: It's now possible for a logged-in user to follow another user from their public profile pageAndy Heathershaw2018-10-10 13:46:42 +0100
4ec23668ff#111: Corrected a bug where the activity feed always showed the logged-in user's feed. Added template text when there are no activity items to display. Updated the deployment Javascript files with the latest viewmodel changes.Andy Heathershaw2018-10-10 12:58:43 +0100
44591790d1#111: Added an activity feed to the user profile screen, with a configurable setting on the social tabAndy Heathershaw2018-10-09 22:16:43 +0100