/laravel-filemanager

Media gallery with CKEditor, TinyMCE and Summernote support. Built on Laravel file system.

Primary LanguagePHPMIT LicenseMIT

DocumentsInstallationIntegrationConfigCustomizationEventsUpgradeDemoFAQ

Installing alpha version

The alpha version of v2.0 contains support of cloud storage and fresh new UI with RWD.

  • Run composer require unisharp/laravel-filemanager:dev-master to get the latest code.
  • Run composer require unisharp/laravel-filemanager:v2.0.0-alpha7 to get the latest release of alpha version.

v2.0 progress

  • (done) Unit test
  • (done) Integrate with Laravel Storage
  • (done) Multiple selection
  • (done) Responsive design
  • (done) Config refactoring
  • (done) JSON APIs
  • (done) Move to folder function
  • (done) Applying MIME icon generator
  • (done) Refactor floating action buttons
  • (done) Configurable disk of storage
  • (done) Bootstrap 4 support
  • (done) Remove bootbox
  • Documents for v2.0
  • (done) Resize function RWD refactor
  • ConfigHandler should overwrite most configs
  • Events should pass object instead of only file path
  • Add more events for files and folders manipulation

Documents of V1

https://github.com/UniSharp/laravel-filemanager/tree/v1/docs

Errors with namespace

We have changed namespace from Unisharp to UniSharp, and change the first character of every namespace into capital.

If you are updating this package and encounter any errors like Class not found, please remove this package entirely and reinstall again.

v1.8 released

  • Please follow the intructions in upgrade document.
  • Important changes :
    • Fix Windows compatibility (utf-8 file names and folder names).
    • New feature : Copy & Crop. Thanks gwleuverink.
    • Config document is refactored.

Security

It is important to note that if you use your own routes you must protect your routes to Laravel-Filemanager in order to prevent unauthorized uploads to your server. Fortunately, Laravel makes this very easy.

If, for example, you want to ensure that only logged in users have the ability to access the Laravel-Filemanager, simply wrap the routes in a group, perhaps like this:

Route::group(['middleware' => 'auth'], function () {
    Route::get('/laravel-filemanager', '\UniSharp\LaravelFilemanager\Controllers\LfmController@show');
    Route::post('/laravel-filemanager/upload', '\UniSharp\LaravelFilemanager\Controllers\UploadController@upload');
    // list all lfm routes here...
});

This approach ensures that only authenticated users have access to the Laravel-Filemanager. If you are using Middleware or some other approach to enforce security, modify as needed.

If you use the laravel-filemanager default route, make sure the auth middleware (set in config/lfm.php) is enabled and functional.

Contributors & Credits

Developers / Maintainers

Contributors

Credits

  • @olivervogel for the awesome image library.
  • SVG Loaders by Sam (Licensed MIT)
  • Articles and videos which helped promoting this package.
  • All users and you.