diff --git a/.htaccess b/.htaccess index 9811865..a5c7eb9 100644 --- a/.htaccess +++ b/.htaccess @@ -1,7 +1,7 @@ Options -Indexes RewriteEngine On - RewriteRule ^(app|bin|bootstrap|resources|storage|vendor|logs|CHANGELOG.MD)(/.*|)$ - [NC,F] + RewriteRule ^(app|bin|bootstrap|resources|storage|vendor|logs|CHANGELOG.md)(/.*|)$ - [NC,F] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php [QSA,L] diff --git a/CHANGELOG.md b/CHANGELOG.md index fc7041b..f1c2452 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,12 @@ # Changelog All notable changes to this project will be documented in this file. -The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), -and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). + +## [3.1.3] - 2020-04-13 +### Changed +- Added changelog page. +- Updated translations. ## [3.1.2] - 2020-04-12 ### Changed diff --git a/composer.json b/composer.json index 69f5dfc..f6830f0 100644 --- a/composer.json +++ b/composer.json @@ -1,7 +1,7 @@ { "name": "sergix44/xbackbone", "license": "AGPL-3.0", - "version": "3.1.2", + "version": "3.1.3", "description": "A lightweight ShareX PHP backend", "type": "project", "require": { diff --git a/composer.lock b/composer.lock index 052c52f..f445521 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "38f18f0b967be3ce9096df807dea1a17", + "content-hash": "3a1bab97259e3ebc3e6ffcdeeae0f8c0", "packages": [ { "name": "aws/aws-sdk-php", @@ -394,16 +394,16 @@ }, { "name": "graham-campbell/guzzle-factory", - "version": "v3.0.2", + "version": "v3.0.3", "source": { "type": "git", "url": "https://github.com/GrahamCampbell/Guzzle-Factory.git", - "reference": "6ccf9d73c4c2a55b9576f3a6edcf42af44c99fbb" + "reference": "de49ec514107b43f3a770743421c9bb78d01d3e2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/GrahamCampbell/Guzzle-Factory/zipball/6ccf9d73c4c2a55b9576f3a6edcf42af44c99fbb", - "reference": "6ccf9d73c4c2a55b9576f3a6edcf42af44c99fbb", + "url": "https://api.github.com/repos/GrahamCampbell/Guzzle-Factory/zipball/de49ec514107b43f3a770743421c9bb78d01d3e2", + "reference": "de49ec514107b43f3a770743421c9bb78d01d3e2", "shasum": "" }, "require": { @@ -411,7 +411,7 @@ "php": "^7.0" }, "require-dev": { - "graham-campbell/analyzer": "^2.1", + "graham-campbell/analyzer": "^2.4", "phpunit/phpunit": "^6.5|^7.0|^8.0" }, "type": "library", @@ -444,7 +444,7 @@ "Guzzle-Factory", "http" ], - "time": "2019-08-23T13:19:30+00:00" + "time": "2020-04-13T13:12:06+00:00" }, { "name": "guzzlehttp/guzzle", @@ -3065,35 +3065,34 @@ }, { "name": "ocramius/package-versions", - "version": "1.8.0", + "version": "1.4.2", "source": { "type": "git", "url": "https://github.com/Ocramius/PackageVersions.git", - "reference": "421679846270a5772534828013a93be709fb13df" + "reference": "44af6f3a2e2e04f2af46bcb302ad9600cba41c7d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Ocramius/PackageVersions/zipball/421679846270a5772534828013a93be709fb13df", - "reference": "421679846270a5772534828013a93be709fb13df", + "url": "https://api.github.com/repos/Ocramius/PackageVersions/zipball/44af6f3a2e2e04f2af46bcb302ad9600cba41c7d", + "reference": "44af6f3a2e2e04f2af46bcb302ad9600cba41c7d", "shasum": "" }, "require": { - "composer-plugin-api": "^1.1.0 || ^2.0", - "php": "^7.4.0" + "composer-plugin-api": "^1.0.0", + "php": "^7.1.0" }, "require-dev": { - "composer/composer": "^1.9.3 || ^2.0@dev", - "doctrine/coding-standard": "^7.0.2", - "ext-zip": "^1.15.0", - "infection/infection": "^0.15.3", - "phpunit/phpunit": "^9.0.1", - "vimeo/psalm": "^3.9.3" + "composer/composer": "^1.6.3", + "doctrine/coding-standard": "^5.0.1", + "ext-zip": "*", + "infection/infection": "^0.7.1", + "phpunit/phpunit": "^7.5.17" }, "type": "composer-plugin", "extra": { "class": "PackageVersions\\Installer", "branch-alias": { - "dev-master": "1.99.x-dev" + "dev-master": "2.0.x-dev" } }, "autoload": { @@ -3112,7 +3111,7 @@ } ], "description": "Composer plugin that provides efficient querying for installed package versions (no runtime IO)", - "time": "2020-04-06T17:43:35+00:00" + "time": "2019-11-15T16:17:10+00:00" }, { "name": "phpstan/phpdoc-parser", @@ -3421,20 +3420,20 @@ }, { "name": "symfony/service-contracts", - "version": "v2.0.1", + "version": "v1.1.8", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "144c5e51266b281231e947b51223ba14acf1a749" + "reference": "ffc7f5692092df31515df2a5ecf3b7302b3ddacf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/144c5e51266b281231e947b51223ba14acf1a749", - "reference": "144c5e51266b281231e947b51223ba14acf1a749", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/ffc7f5692092df31515df2a5ecf3b7302b3ddacf", + "reference": "ffc7f5692092df31515df2a5ecf3b7302b3ddacf", "shasum": "" }, "require": { - "php": "^7.2.5", + "php": "^7.1.3", "psr/container": "^1.0" }, "suggest": { @@ -3443,7 +3442,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-master": "1.1-dev" } }, "autoload": { @@ -3475,7 +3474,7 @@ "interoperability", "standards" ], - "time": "2019-11-18T17:27:11+00:00" + "time": "2019-10-14T12:27:06+00:00" } ], "aliases": [], diff --git a/docs/changelog.md b/docs/changelog.md index 3a9051f..44d1172 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -3,199 +3,305 @@ layout: default title: Changelog nav_order: 9 --- -## v.3.1.2 -+ Fixed upload table lost when updating very old instances. -+ Improved installer storage checks. +# Changelog +All notable changes to this project will be documented in this file. -## v.3.1.1 -+ Fixed error during a fresh installation with sqlite. +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). -## v.3.1 -+ Added tagging system (add, delete, search of tagged files). -+ Added basic media auto-tagging on upload. -+ Added registration system. -+ Added password recovery system. -+ Added ability to export all media of an account. -+ Added ability to choose between default and raw url on copy. -+ Added hide by default option. -+ Added user disk quota. -+ Added reCAPTCHA login protection. -+ Added bulk delete. -+ Added account clean function. -+ Added user disk quota system. -+ Added notification option on account create. -+ Added LDAP authentication. -+ Fixed bug html files raws are rendered in a browser. -+ The theme is now re-applied after every system update. -+ Updated system settings page. -+ Updated translations. -+ Improved grid layout. -+ Fixes and improvements. +## [3.1.3] - 2020-04-13 +### Changed +- Added changelog page. +- Updated translations. -## v.3.0.2 -+ Fixed error with migrate command. -+ Updated translations. +## [3.1.2] - 2020-04-12 +### Changed +- Improved installer storage checks. -## v.3.0.1 -+ Fixed error with older mysql versions. -+ Fixed config is compiled with the di container. -+ Small installer update. +### Fixed +- Fixed upload table lost when updating very old instances. -## v.3.0 -+ Upgraded from Slim3 to Slim 4. -+ Added web upload. -+ Added ability to add custom HTML in \ tag. -+ Added ability to show a preview of PDF files. -+ Added remember me functionality. -+ Added delete button on the preview page if the user is logged in. -+ New project icon (by [@SerenaItalia](https://www.deviantart.com/serenaitalia)). -+ Raw URL now accept file extensions. -+ The linux script can be used on headless systems. -+ Improved installer. -+ Improved thumbnail generation. -+ Replaced videojs player with Plyr. -+ Implemented SameSite XSS protection. -+ Small fixes and improvements. +## [3.1.1] - 2020-04-11 +### Fixed +- Fixed error during a fresh installation with sqlite. -## v.2.6.6 -+ Ability to choose between releases and prereleases with the web updater. -+ Updated translations. +## [3.1] - 2020-04-10 +### Added +- Added tagging system (add, delete, search of tagged files). +- Added basic media auto-tagging on upload. +- Added registration system. +- Added password recovery system. +- Added ability to export all media of an account. +- Added ability to choose between default and raw url on copy. +- Added hide by default option. +- Added user disk quota. +- Added reCAPTCHA login protection. +- Added bulk delete. +- Added account clean function. +- Added user disk quota system. +- Added notification option on account create. +- Added LDAP authentication. -## v2.6.5 -+ Fixed error after orphaned files removal #74. -+ Fixed update password not correctly removed from log files #74. -+ Changed color to some buttons to address visibility with some themes. +### Changed +- The theme is now re-applied after every system update. +- Updated system settings page. +- Updated translations. +- Improved grid layout. -## v2.6.4 -+ Filter on displayable images. -+ Fixed during upload error on php compiled for 32 bit. -+ Fixed icons on the installer page. -+ The generated random strings are now more human readable. +### Fixed +- Fixed bug html files raws are rendered in a browser. +- Fixes and improvements. -## v2.6.3 -+ Fixed #67. -+ Fixed bad preload statement. -+ Fixed wrong redirect after install in subdirs. +## [3.0.2] - 2019-12-04 +### Changed +- Updated translations. -## v2.6.2 -+ Use the font awesome web font for better performances. -+ Changed background default color. -+ Added method for cache busting when updating/change theme. -+ Added russian translation from [Weblate](https://hosted.weblate.org/projects/xbackbone/xbackbone/). +### Fixed +- Fixed error with migrate command. -## v2.6.1 -+ Fixed bad redirects on the web installer (#62). -+ Fixed login page with dark themes. -+ Improved shell commands. -+ Added alert if required extensions are not loaded. -+ Updated translations. +## [3.0.1] - 2019-11-25 +### Changed +- Small installer update. -## v2.6 -+ Added support to use AWS S3, Google Cloud Storage, Dropbox and FTP(s) accounts as storage location. -+ Fixed missing icon. -+ Added german and norwegian translations from [Weblate](https://hosted.weblate.org/projects/xbackbone/xbackbone/). -+ Improved lang detection. -+ Added ability to force system language. +### Fixed +- Fixed error with older mysql versions. +- Fixed config is compiled with the di container. -## v2.5.3 -+ Fixed bad css loading on Firefox (#35). -+ Fixed wrong style for publish/unpublish button. -+ Improved exception stacktrace logging. +## [3.0] - 2019-11-23 +### Added +- Added web upload. +- Added ability to add custom HTML in \ tag. +- Added ability to show a preview of PDF files. +- Added remember me functionality. +- Added delete button on the preview page if the user is logged in. +- New project icon (by [@SerenaItalia](https://www.deviantart.com/serenaitalia)). +- The linux script can be used on headless systems. +- Raw URL now accept file extensions. +- Implemented SameSite XSS protection. -## v2.5.2 -+ Improved session handling. -+ Fixed telegram share not working. -+ Fix for big text file now are not rendered in the browser. -+ Added preloading for some resources to improve performances. -+ Added check for block execution on EOL and unsupported PHP versions. -+ Other minor improvements. +### Changed +- Upgraded from Slim3 to Slim 4. +- Replaced videojs player with Plyr. +- Improved installer. +- Improved thumbnail generation. +- Small fixes and improvements. -## v2.5.1 -+ Fixed bad redirect if the theme folder is not writable. (#27) -+ Improved HTTP partial content implementation for large files. +## [2.6.6] - 2019-10-23 +### Added +- Ability to choose between releases and prereleases with the web updater. -## v2.5 -+ Updated project license to AGPL v3.0 (now releases ships with the new license). -+ **[BETA]** Added self update feature. -+ Added partial content implementation (stream seeking on chromium based browsers). -+ Improved video.js alignment with large videos. -+ Optimized output zip release size. -+ Templates cleanup and optimizations. -+ Improved error handling. -+ Added project favicon. +### Changed +- Updated translations. -## v2.4.1 -+ Fixed error message when the file is too large. (#15) -+ Fixed button alignment. +## [2.6.5] - 2019-09-17 +### Changed +- Changed color to some buttons to address visibility with some themes. -## v2.4 -+ Added function to remove orphaned files. -+ Switch between tab and gallery mode using an admin account. -+ Multiple uploads sorting methods. -+ Search in uploads. -+ Internal refactoring and improvements -+ Updated js dependencies. +### Fixed +- Fixed error after orphaned files removal #74. +- Fixed update password not correctly removed from log files (#74). -## v2.3.1 -+ Fixed en lang. -+ Fixed forced background with dark themes. -+ Added checks during the installation wizard. -+ cURL and Wget can now directly download the file. +## [2.6.4] - 2019-09-15 +### Added +- Filter on displayable images. -## v2.3 -+ Improved image scaling in user gallery. -+ Added overlay on user gallery images. -+ Fixed IT translation. -+ Fontawesome icon match the single file mime-type. -+ Enable audio player with video.js. -+ Video and audio now starts with volume at 50%. -+ Added linux script to allow uploads from linux screenshot tools. -+ Minor layout fixes. +### Changed +- The generated random strings are now more human readable. -## v2.2 -+ Added multi-language support. -+ Improved routing. -+ Fixed HTTP/2 push is resetting the current session. -+ Minor improvements and bug fixes. +### Fixed +- Fixed during upload error on php compiled for 32 bit. +- Fixed icons on the installer page. -## v2.1 -+ Improved theme style. -+ Improved page redirecting. -+ Allow e-mail login. -+ Support for ShareX deletion URL. -+ Fixed HTTP/2 push preload. -+ Added video.js support. +## [2.6.3] - 2019-09-14 +### Fixed +- Fixed #67. +- Fixed bad preload statement. +- Fixed wrong redirect after install in subdirs. -## v2.0 -+ Migrated from Flight to Slim 3 framework. -+ Added install wizard (using the CLI is no longer required). -+ Allow discord bot to display the preview. -+ Theme switcher on the web UI. -+ Added used space indicator per user. -+ MySQL support. -+ Improvements under the hood. +## [2.6.2] - 2019-09-06 +### Added +- Added method for cache busting when updating/change theme. +- Added russian translation from [Weblate](https://hosted.weblate.org/projects/xbackbone/xbackbone/). -## v1.3 -+ Added command to switch between bootswatch.com themes. -+ Added popever to write the telegram message when sharing. -+ Packaging improvements. -+ Updated some dependencies. -+ Allow Facebook bots to display the preview. +### Changed +- Changed background default color. +- Use the Font Awesome web font for better performances. -## v1.2 -+ Previews are now scaled for better page load. -+ Added auto config generator for ShareX. -+ Show upload file size on the dashboard. -+ Fixed insert for admin user (running `php bin\migrate --install`). -+ Removed HTTP2 push from the dashboard to improve loading time. +## [2.6.1] - 2019-09-04 +### Added +- Added alert if required extensions are not loaded. -## v1.1 -+ Added logging. -+ Fixed back to top when click delete or publish/unpublish. -+ Improved migrate system. -+ Login redirect back to the requested page. -+ Updated Bootstrap theme. -+ Added share to Telegram. +### Changed +- Improved shell commands. +- Updated translations. -## v1.0 -+ Initial version. +### Fixed +- Fixed bad redirects on the web installer (#62). +- Fixed login page with dark themes. + +## [2.6] - 2019-08-20 +### Added +- Added support to use AWS S3, Google Cloud Storage, Dropbox and FTP(s) accounts as storage location. +- Added german and norwegian translations from [Weblate](https://hosted.weblate.org/projects/xbackbone/xbackbone/). +- Added ability to force system language. + +### Changed +- Improved lang detection. + +### Fixed +- Fixed missing icon. + +## [2.5.3] - 2019-05-12 +### Changed +- Improved exception stacktrace logging. + +### Fixed +- Fixed bad css loading on Firefox (#35). +- Fixed wrong style for publish/unpublish button. + +## [2.5.2] - 2019-05-09 +### Added +- Added preloading for some resources to improve performances. +- Added check for block execution on EOL and unsupported PHP versions. + +### Changed +- Improved session handling. +- Other minor improvements. + +### Fixed +- Fixed telegram share not working. +- Fix for big text file now are not rendered in the browser. + +## [2.5.1] - 2019-04-10 +### Changed +- Improved HTTP partial content implementation for large files. + +### Fixed +- Fixed bad redirect if the theme folder is not writable. (#27) + +## [2.5] - 2019-02-10 +### Added +- Added partial content implementation (stream seeking on chromium based browsers). +- **[BETA]** Added self update feature. +- Added project favicon. + +### Changed +- Updated project license to [AGPL v3.0](https://choosealicense.com/licenses/agpl-3.0/) (now releases ships with the new license). +- Improved video.js alignment with large videos. +- Optimized output zip release size. +- Templates cleanup and optimizations. +- Improved error handling. + +## [2.4.1] - 2019-01-24 +### Fixed +- Fixed error message when the file is too large. (#15) +- Fixed button alignment. + +## [2.4] - 2019-01-22 +### Added +- Added function to remove orphaned files. +- Multiple uploads sorting methods. +- Switch between tab and gallery mode using an admin account. +- Search in uploads. + +### Changed +- Updated js dependencies. +- Internal refactoring and improvements + +## [2.3.1] - 2018-12-09 +### Added +- Added checks during the installation wizard. +- cURL and Wget can now directly download the file. + +### Fixed +- Fixed english language. +- Fixed forced background with dark themes. + +## [2.3] - 2018-11-30 +### Added +- Added overlay on user gallery images. +- Added linux script to allow uploads from linux screenshot tools. +- Enable audio player with video.js. +- Font Awesome icon match the single file mime-type. + +### Changed +- Improved image scaling in user gallery. +- Video and audio now starts with volume at 50%. +- Minor layout fixes. + +### Fixed +- Fixed IT translation. + +## [2.2] - 2018-11-20 +### Added +- Added multi-language support. + +### Fixed +- Improved routing. +- Minor improvements and bug fixes. +- Fixed HTTP/2 push is resetting the current session. + +## [2.1] - 2018-11-20 +### Added +- Added video.js support. +- Allow e-mail login. +- Support for ShareX deletion URL. + +### Changed +- Improved theme style. +- Improved page redirecting. + +### Fixed +- Fixed HTTP/2 push preload. + +## [2.0] - 2018-11-13 +### Added +- Added install wizard (using the CLI is no longer required). +- Added used space indicator per user. +- Allow discord bot to display the preview. +- Theme switcher on the web UI. +- MySQL support. + +### Changed +- Migrated from Flight to Slim 3 framework. +- Improvements under the hood. + +## [1.3] - 2018-10-14 +### Added +- Added command to switch between bootswatch.com themes. +- Added popover to write the telegram message when sharing. +- Allow Facebook bots to display the preview. + +### Changed +- Packaging improvements. +- Updated some dependencies. + +## [1.2] - 2018-05-01 +### Added +- Added auto config generator for ShareX. +- Show upload file size on the dashboard. + +### Changed +- Previews are now scaled for better page load. + +### Removed +- Removed HTTP2 push from the dashboard to improve loading time. + +### Fixed +- Fixed insert for admin user (running `php bin\migrate --install`). + +## [1.1] - 2018-04-28 +### Added +- Added logging. +- Added share to Telegram. + +### Changed +- Improved migrate system. +- Updated Bootstrap theme. + +### Fixed +- Fixed back to top when click delete or publish/unpublish. +- Login redirect back to the requested page. + +## [1.0] - 2018-04-28 +### Added +- Initial version. diff --git a/nginx.conf b/nginx.conf index b6d678e..ba93b7f 100644 --- a/nginx.conf +++ b/nginx.conf @@ -28,7 +28,7 @@ location /logs { return 403; } -location CHANGELOG.MD { +location CHANGELOG.md { return 403; }