iemand002/filemanager

There is no license information available for the latest version (3.0.0-alpha) of this package.

Multi language file manager package

3.0.0-alpha 2022-04-30 15:50 UTC

README

Installation

Requirements

  • Laravel
    • 5.2 (version 0.x),
    • 5.5 (version 1.x/2.0),
    • 5.6/5.7/5.8 (version 2.1)
    • 6.x/7.x (version 2.2)
    • 8.x (version 2.3)
  • Twitter Bootstrap 4
  • Jquery 3.5

Composer

composer require iemand002/filemanager

Register (when not using autodiscover)

Register the provider in your app.php config

'providers' => [
    Iemand002\Filemanager\FilemanagerServiceProvider::class,
],

'aliases' => [
    'Filemanager' => Iemand002\Filemanager\FilemanagerFacade::class,
],

Publish configurations

Configuration file
config/filemanager.php

php artisan vendor:publish --provider="Iemand002\Filemanager\FilemanagerServiceProvider" --tag="config"

Migration file (optional)
2017_12_29_004110_create_image_upload_table.php and 2018_05_12_161010_create_social_logins_table and 2019_02_17_141025_alter_image_upload_table.php

php artisan vendor:publish --provider="Iemand002\Filemanager\FilemanagerServiceProvider" --tag="migration"

Views
vendor/iemand002/filemanager

php artisan vendor:publish --provider="Iemand002\Filemanager\FilemanagerServiceProvider" --tag="views"

Translations
lang/vendor/filemanager

php artisan vendor:publish --provider="Iemand002\Filemanager\FilemanagerServiceProvider" --tag="translations"

Configure Clouds: Dropbox/OneDrive (optional)

This package uses socialiteproviders/dropbox for the Dropbox login and/or socialiteproviders/graph. To get it working follow step 2 - 4 from there documentation.

After that add the relation to the Social model in your User model:

    public function socials()
    {
        return $this->hasMany('Iemand002\Filemanager\Models\Social');
    }

How to use

Run the migration using php artsan migrate
Just surf to yourwebsite.io/admin/upload
By default it has the web middleware for Laravel 5.2+.
To change the required middlewares and the prefix change the config file.

Get the url of the uploaded file in your blade template via the uploadId: {{ Filemanager::getUrl(123) }}
If you wish to show a transformed version of an image add the optional $transfromHandle: {{ Filemanager::getUrl(123, "transformHandle") }}

Get the image width and height via the uploadId: {{ Filemanager::getWidth(123) }} and {{ Filemanager::getHeight(123) }}
Also compatable with the transform: {{ Filemanager::getWidth(123, "transformHandle") }} and {{ Filemanager::getHeight(123, "transformHandle") }}

Want to sync earlier uploaded files in the folder with the database? Surf to yourwebsite.io/admin/sync to add missing files in the database.

Demo

Create a route like the following to see an example usage.

Route::get('demo',function () {
    return view('iemand002/filemanager::demo.demo');
});

Build-in languages

  • Dutch (nl)
  • English (en)

TODO

  • Find out what's wrong with the graph login, it works, but giving errors sometimes
  • Cloud remove reference in database if file is removed from the cloud
  • Update views to bootstrap 4

Changelog

2.3.2
Fixed:

  • DataTables paging and search not updating picker events
  • Breadcrumbs had Dropbox path where it shouldn't
  • Fix multi add checkbox logic

Check previous changes in CHANGELOG.md