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

Overview


StyleCI

DocumentsInstallationIntegrationConfigCustomizationEventsUpgradeDemoFAQ

Features

  • File upload and management
  • Uploading validation
  • Cropping and resizing of images
  • RWD user interface, and can be entirely customized
  • Supporting multiple files selection
  • Supporting cloud storages integration(with Laravel file system)
  • Multiple integration options:
    • WYSIWYG editors integration (CKEditor, TinyMCE, Summernote)
    • Standalone upload button
    • Iframe
  • Multi-user mode:
    • Shared folders: all users can upload and manage files
    • Private folders: dedicated folder for each user, only the owner can upload or manage files within
  • Customizable routes, middlewares, views, and folder path
  • Supports two categories: files and images. Each type works in different directory.
  • Supported locales : ar, az, bg, cs, de, el, en, es, eu, fa, fr, he, hu, id, it, ka, nl, pl, pt, pt-BR, ro, rs, ru, sk, sv, tr, uk, vi, zh-CN, zh-TW

v2.0 backlogs

There are still some thing we need to do make this package better:

  • Documents for v2.0.0
  • Add more events for files and folders manipulation
  • Events should pass object instead of only file path

We are also going to gain more integration like vue.js and Laravel Nova. Any PR is welcome!

RWD demo

Maintainers

Contributors

Credits

  • @taswler the original author of this package.
  • @olivervogel for the awesome image library.
  • SVG Loaders by Sam (Licensed MIT)
  • Articles and videos which helped promoting this package.
  • All users and you.
Comments
  • view file url

    view file url

    hello ! i use version 1.7.6 . my folder is

    1. laravel-project

    2. public_html my setting --------------------------------------

      'base_directory' => '../public_html',

      'images_folder_name' => 'photos', 'files_folder_name' => 'files',

      'shared_folder_name' => 'shares', 'thumb_folder_name' => 'thumbs',

    and this is my error : image

    my question is how to remove laravel-filemanager/ from image url ?

    question 
    opened by jackslova 23
  • Class Unisharp\Laravelfilemanager\controllers\LfmController does not exist

    Class Unisharp\Laravelfilemanager\controllers\LfmController does not exist

    • Laravel version :5.6
    • Package version :1.8 i did everything said inside installation. but when i try to load file manager give me below error: ReflectionException Class Unisharp\Laravelfilemanager\controllers\LfmController does not exist inside web route i added below route: Route::get('/laravel-filemanager', '\Unisharp\Laravelfilemanager\controllers\LfmController@show'); Route::post('/laravel-filemanager/upload', '\Unisharp\Laravelfilemanager\controllers\UploadController@upload'); even when i put below code inside my routes : Route::group(['prefix' => 'laravel-filemanager', 'middleware' => ['web', 'auth']], function () { \UniSharp\LaravelFilemanager\Lfm::routes(); }); give me this error: Class 'UniSharp\LaravelFilemanager\Lfm' not found

    I really appreciated if someone help me to fix this.

    done 
    opened by f-rostami 22
  • PLEASE HELP Sorry, the page you are looking for could not be found.

    PLEASE HELP Sorry, the page you are looking for could not be found.

    This plugin works on my local computer but when i moved it to the server, i get Sorry, the page you are looking for could not be found.

    This is my route below MYDOMAINNAME.COM/laravel-filemanager?type=Images&CKEditor=editor1&CKEditorFuncNum=1&langCode=en

    NotFoundHttpException in RouteCollection.php line 161: in RouteCollection.php line 161 at RouteCollection->match(object(Request)) in Router.php line 821 at Router->findRoute(object(Request)) in Router.php line 691 at Router->dispatchToRoute(object(Request)) in Router.php line 675 at Router->dispatch(object(Request)) in Kernel.php line 246 at Kernel->Illuminate\Foundation\Http{closure}(object(Request)) at call_user_func(object(Closure), object(Request)) in Pipeline.php line 52 at Pipeline->Illuminate\Routing{closure}(object(Request)) in CheckForMaintenanceMode.php line 44 at CheckForMaintenanceMode->handle(object(Request), object(Closure)) at call_user_func_array(array(object(CheckForMaintenanceMode), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 136 at Pipeline->Illuminate\Pipeline{closure}(object(Request)) at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32 at Pipeline->Illuminate\Routing{closure}(object(Request)) at call_user_func(object(Closure), object(Request)) in Pipeline.php line 102 at Pipeline->then(object(Closure)) in Kernel.php line 132 at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 99 at Kernel->handle(object(Request)) in index.php line 53

    opened by maxteebabs 21
  • Token mismatch error while uploading BIG video files

    Token mismatch error while uploading BIG video files

    Hi guys. When I'm trying to upload about 20MB video file, it return a Token Mismatch error, but when I upload 17MB or below, it works fine. Why is that?

    enhancement question 
    opened by jonjie0317 20
  • can create folders but can't upload files

    can create folders but can't upload files

    hi laravel-filemanager in my project can create folders but can't upload files there is no error when i try to upload file but still doesn't upload files

    done 
    opened by ehsand 20
  • Error when accessing /laravel-filemanager

    Error when accessing /laravel-filemanager

    Operating system: Ubuntu 16.04.3 LTS (Running in Homestead v5.0.1) Laravel version: Laravel Framework 5.5.28 Package version: "~1.8"

    Steps to reproduce issue: Just open http://my.app/laravel-filemanager in browser (It has been working for quite a while before so this is a new issue. Not sure if it's related to package upgrades or similar.)

    Should also note that I can still accesss laravel-filemanager from the standalone buttons I have in my application's forms.

    Screenshots: screen shot 2018-01-11 at 12 34 47 screen shot 2018-01-11 at 12 35 41

    Log entry with stack trace [2018-01-11 12:36:35] local.ERROR: Type error: Argument 1 passed to Doctrine\Common\Inflector\Inflector::singularize() must be of the type string, null given, called in /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Support/Pluralizer.php on line 84 {"userId":1,"email":"[email protected]","exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalThrowableError(code: 0): Type error: Argument 1 passed to Doctrine\\Common\\Inflector\\Inflector::singularize() must be of the type string, null given, called in /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Support/Pluralizer.php on line 84 at /home/vagrant/code/bootstrap/vendor/doctrine/inflector/lib/Doctrine/Common/Inflector/Inflector.php:441) [stacktrace] #0 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Support/Pluralizer.php(84): Doctrine\\Common\\Inflector\\Inflector::singularize(NULL) #1 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Support/Str.php(403): Illuminate\\Support\\Pluralizer::singular(NULL) #2 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Support/helpers.php(975): Illuminate\\Support\\Str::singular(NULL) #3 /home/vagrant/code/bootstrap/vendor/unisharp/laravel-filemanager/src/traits/LfmHelpers.php(335): str_singular(NULL) #4 /home/vagrant/code/bootstrap/vendor/unisharp/laravel-filemanager/src/traits/LfmHelpers.php(101): Unisharp\\Laravelfilemanager\\middlewares\\CreateDefaultFolder->isProcessingImages() #5 /home/vagrant/code/bootstrap/vendor/unisharp/laravel-filemanager/src/traits/LfmHelpers.php(186): Unisharp\\Laravelfilemanager\\middlewares\\CreateDefaultFolder->getPathPrefix('dir') #6 /home/vagrant/code/bootstrap/vendor/unisharp/laravel-filemanager/src/middlewares/CreateDefaultFolder.php(30): Unisharp\\Laravelfilemanager\\middlewares\\CreateDefaultFolder->getRootFolderPath('share') #7 /home/vagrant/code/bootstrap/vendor/unisharp/laravel-filemanager/src/middlewares/CreateDefaultFolder.php(15): Unisharp\\Laravelfilemanager\\middlewares\\CreateDefaultFolder->checkDefaultFolderExists('share') #8 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Unisharp\\Laravelfilemanager\\middlewares\\CreateDefaultFolder->handle(Object(Illuminate\\Http\\Request), Object(Closure)) #9 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) #10 /home/vagrant/code/bootstrap/vendor/unisharp/laravel-filemanager/src/middlewares/MultiUser.php(25): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #11 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Unisharp\\Laravelfilemanager\\middlewares\\MultiUser->handle(Object(Illuminate\\Http\\Request), Object(Closure)) #12 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) #13 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(41): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #14 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure)) #15 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) #16 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(43): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #17 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure)) #18 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) #19 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(67): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #20 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure)) #21 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) #22 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #23 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure)) #24 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) #25 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #26 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure)) #27 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) #28 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #29 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure)) #30 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) #31 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(59): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #32 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure)) #33 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) #34 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(102): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #35 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Router.php(660): Illuminate\\Pipeline\\Pipeline->then(Object(Closure)) #36 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Router.php(635): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request)) #37 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Router.php(601): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route)) #38 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Router.php(590): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request)) #39 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(176): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request)) #40 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(30): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request)) #41 /home/vagrant/code/bootstrap/vendor/barryvdh/laravel-debugbar/src/Middleware/InjectDebugbar.php(65): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #42 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Barryvdh\\Debugbar\\Middleware\\InjectDebugbar->handle(Object(Illuminate\\Http\\Request), Object(Closure)) #43 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) #44 /home/vagrant/code/bootstrap/vendor/fideloper/proxy/src/TrustProxies.php(56): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #45 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Fideloper\\Proxy\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure)) #46 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) #47 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(30): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #48 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure)) #49 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) #50 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(30): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #51 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure)) #52 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) #53 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #54 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure)) #55 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) #56 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(46): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #57 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Foundation\\Http\\Middleware\\CheckForMaintenanceMode->handle(Object(Illuminate\\Http\\Request), Object(Closure)) #58 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) #59 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(102): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) #60 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(151): Illuminate\\Pipeline\\Pipeline->then(Object(Closure)) #61 /home/vagrant/code/bootstrap/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(116): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request)) #62 /home/vagrant/code/bootstrap/public/index.php(55): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request)) #63 {main} "}

    WIP 
    opened by nille 19
  • Laravel Filemanager Upload image Issue

    Laravel Filemanager Upload image Issue

    Hi. I was following the installation guide carefully and upgrade unisharp filemanager. File and folder upload is working fine, but image upload dosn't work and upload nothing! Everything is working great but When I uploading a image it was saying "Invalid Upload Request" . Notes: This site is hosted in shared hosting. untitled

    Please help me. How to solve it thnx.

    opened by Hredoy 19
  • uploaded image don't show me without authenticated

    uploaded image don't show me without authenticated

    Hi, I'm using last version a i can upload image successfully in admin panel with ['web','auth:admin'] middleware . but in website i can't see my uploaded image. however when i login to admin panel images show me in website. what's problem with my configuration.

    /*
    |--------------------------------------------------------------------------
    | Routing
    |--------------------------------------------------------------------------
    */
    
    // Include to pre-defined routes from package or not. Middlewares
    'use_package_routes' => true,
    
    // Middlewares which should be applied to all package routes.
    // For laravel 5.1 and before, remove 'web' from the array.
    'middlewares' => ['web','auth:admin'],
    
    // The url to this package. Change it if necessary.
    'prefix' => 'laravel-filemanager',
    
    /*
    |--------------------------------------------------------------------------
    | Multi-User Mode
    |--------------------------------------------------------------------------
    */
    
    // If true, private folders will be created for each signed-in user.
    'allow_multi_user' => false,
    // If true, share folder will be created when allow_multi_user is true.
    'allow_share_folder' => true,
    
    // Flexibla way to customize client folders accessibility
    // Ex: The private folder of user will be named as the user id.
    'user_field' => function() {
        return auth()->guard('admin')->user()->id;
    },
    
    /*
    |--------------------------------------------------------------------------
    | Working Directory
    |--------------------------------------------------------------------------
    */
    
    // Which folder to store files in project, fill in 'public', 'resources', 'storage' and so on.
    // You should create routes to serve images if it is not set to public.
    'base_directory' => 'public',
    
    'images_folder_name' => 'photos',
    'files_folder_name'  => 'files',
    
    'shared_folder_name' => 'shares',
    'thumb_folder_name'  => 'thumbs',
    
    /*
    |--------------------------------------------------------------------------
    | Startup Views
    |--------------------------------------------------------------------------
    */
    
    // The default display type for items.
    // Supported: "grid", "list"
    'images_startup_view' => 'grid',
    'files_startup_view' => 'list',
    
    /*
    |--------------------------------------------------------------------------
    | Upload / Validation
    |--------------------------------------------------------------------------
    */
    
    // If true, the uploaded file will be renamed to uniqid() + file extension.
    'rename_file' => false,
    
    // If rename_file set to false and this set to true, then non-alphanumeric characters in filename will be replaced.
    'alphanumeric_filename' => true,
    
    // If true, non-alphanumeric folder name will be rejected.
    'alphanumeric_directory' => false,
    
    // If true, the uploading file's size will be verified for over than max_image_size/max_file_size.
    'should_validate_size' => false,
    
    'max_image_size' => 50000,
    'max_file_size' => 50000,
    
    // If true, the uploading file's mime type will be valid in valid_image_mimetypes/valid_file_mimetypes.
    'should_validate_mime' => false,
    
    // available since v1.3.0
    'valid_image_mimetypes' => [
        'image/jpeg',
        'image/pjpeg',
        'image/png',
        'image/gif',
        'image/svg+xml',
    ],
    
    // available since v1.3.0
    // only when '/laravel-filemanager?type=Files'
    'valid_file_mimetypes' => [
        'image/jpeg',
        'image/pjpeg',
        'image/png',
        'image/gif',
        'image/svg+xml',
        'application/pdf',
        'text/plain',
    ],
    
    /*
    |--------------------------------------------------------------------------
    | Image / Folder Setting
    |--------------------------------------------------------------------------
    */
    
    'thumb_img_width' => 200,
    'thumb_img_height' => 200,
    
    /*
    |--------------------------------------------------------------------------
    | File Extension Information
    |--------------------------------------------------------------------------
    */
    
    'file_type_array' => [
        'pdf'  => 'Adobe Acrobat',
        'doc'  => 'Microsoft Word',
        'docx' => 'Microsoft Word',
        'xls'  => 'Microsoft Excel',
        'xlsx' => 'Microsoft Excel',
        'zip'  => 'Archive',
        'gif'  => 'GIF Image',
        'jpg'  => 'JPEG Image',
        'jpeg' => 'JPEG Image',
        'png'  => 'PNG Image',
        'ppt'  => 'Microsoft PowerPoint',
        'pptx' => 'Microsoft PowerPoint',
    ],
    
    'file_icon_array' => [
        'pdf'  => 'fa-file-pdf-o',
        'doc'  => 'fa-file-word-o',
        'docx' => 'fa-file-word-o',
        'xls'  => 'fa-file-excel-o',
        'xlsx' => 'fa-file-excel-o',
        'zip'  => 'fa-file-archive-o',
        'gif'  => 'fa-file-image-o',
        'jpg'  => 'fa-file-image-o',
        'jpeg' => 'fa-file-image-o',
        'png'  => 'fa-file-image-o',
        'ppt'  => 'fa-file-powerpoint-o',
        'pptx' => 'fa-file-powerpoint-o',
    ],
    
    /*
    |--------------------------------------------------------------------------
    | php.ini override
    |--------------------------------------------------------------------------
    */
    // These values override your php.ini settings before uploading files
    // Set these to false to ingnore and apply your php.ini settings
    'php_ini_overrides' => [
        'memory_limit'        => '256M'
    ]
    
    bug WIP 
    opened by arbabi2010 18
  • Call to undefined method League\\Flysystem\\Filesystem::getAdapter()

    Call to undefined method League\\Flysystem\\Filesystem::getAdapter()

    I've tried to install this package in Laravel 9. Then I tried to create a folder or upload an image, but the result is an error Call to undefined method League\Flysystem\Filesystem::getAdapter(). How to fix the error?

    • Operating system : Windows 11
    • Laravel version : ^9.0
    • Package version : ^2.4 Screenshots of browser console : image
    bug done 
    opened by FauziAris 17
  • Action failed, due to server error.

    Action failed, due to server error.

    Hello, i have a problem. This message appears when opens. my folder structure:

    core/
       - app/
       - config/
       ...
     media/
     index.php
    

    how can i how to set base_directory to 'media'. I have set the config like this

     'base_directory' => 'public',
    
        'images_folder_name' => '../../media/photos',
        'files_folder_name'  => '../../media/files',
    
        'shared_folder_name' => 'shares',
        'thumb_folder_name'  => 'thumbs',
    

    thanks

    question WIP 
    opened by nauvalazhar 17
  • Standalone button path to images sometime full URL sometime relative

    Standalone button path to images sometime full URL sometime relative

    i have used twice this package for my sites, and cant figure out, first time I have used this it have returned me relative path to image I have uploaded /photos/shares/Clients/57c4324a23d0f.png and it was exactly what I wanted. Second time this plugin returns me full path to resource http://localhost:8000/photos/shares/Clients/57c4324a23d0f.png why this is happening and how can i control this?

    bug done 
    opened by fencer-md 17
  • Move File Only Shows 1 Level of Sub-Directories

    Move File Only Shows 1 Level of Sub-Directories

    Operating system Windows 10

    Laravel version 7:30.6

    Package version 2.5.1

    Steps to reproduce your issue

    1. Add an image to the root directory.
    2. Create a directory in the root directory, call it "Layer1".
    3. Create a sub-directory in the Layer1 directory, call it "Layer2".
    4. Use the "Move" feature to move the image in the root directory, you will only be able to view the first layer of subdirectories, not Layer2.
    opened by shockdot 0
  • Can't upload power point pptx file

    Can't upload power point pptx file

    The allowed mimes in config/lfm.php: 'folder_categories' => [ 'file' => [ 'valid_mime' => [ 'image/jpeg', 'image/pjpeg', 'image/png', 'image/gif', 'image/svg+xml', 'application/pdf', 'text/plain', 'application/vnd.ms-excel', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'application/docx', 'application/doc', 'application/pptx', 'application/ppt', 'application/xlsx', 'application/xls', 'application/msword', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' ],

    All mimes wok fine expect pptx .

    opened by RamaYaseen 1
  • fab modified and type select added

    fab modified and type select added

    Summary of the change:

    i made little changes to fab. now it's more flexible. we can add more features and customize it. i added a switch button for types

    opened by fsociety 0
  • Not found page in laravel-filemanager

    Not found page in laravel-filemanager

    hello I used laravel file manager in laravel 8 but at first, i got some errors. I change the route address in web.php below

    Route::get('/laravel-filemanager', '\Unisharp\Laravelfilemanager\controllers\LfmController@show');
    Route::post('/laravel-filemanager/upload', '\Unisharp\Laravelfilemanager\controllers\LfmController@upload');
    

    now the file manager will load but the popup will display and write not found. you can see a video that I uploaded here

    https://user-images.githubusercontent.com/11762223/196273635-30419078-0f50-47f8-9afa-37a42a585a5b.mp4

    opened by mehdi4467 0
Releases(v2.5.1)
  • v2.5.1(May 15, 2022)

  • v2.5.0(May 14, 2022)

    • Config: allow_private_folder & allow_shared_folder to be set for each folder category, thanks to @jonnott. See #1133 .
    • Locales updated: hu, nl.
    Source code(tar.gz)
    Source code(zip)
  • v2.4.1(Mar 9, 2022)

  • v2.4.0(Feb 20, 2022)

  • v2.3.0(Oct 28, 2021)

  • v2.2.0(Nov 16, 2020)

  • v2.1.0(May 10, 2020)

  • v2.0.1(Apr 17, 2020)

  • v2.0.0(Jan 8, 2020)

    • Redesigned RWD user interface.
    • Supporting multiple files selection.
    • Supporting cloud storages integration(with Laravel file system).
    • Refactored code and increased test coverage.
    Source code(tar.gz)
    Source code(zip)
  • v2.0.0-alpha8(May 6, 2019)

  • v2.0.0-alpha7(Dec 5, 2018)

  • v2.0.0-alpha6(Nov 30, 2018)

    Features

    • Implemented multiple selection toggle, modified UX
    • Used CachedAdapter of file system, thanks to @mnightingale
    • RWD of resize feature
    • Breadcrumbs
    • Preview multiple items with their file names using carousel
    Source code(tar.gz)
    Source code(zip)
  • v2.0.0-alpha5(Oct 19, 2018)

  • v2.0.0-alpha4(Jul 5, 2018)

    Features

    • Apply mime icon generator.
    • Refactor floating action buttons.
    • Provide a function that generates all routes and remove old routes.php.
    • Moving function for files and folders.
    • Abandon LfmFileRepository.php, all files are now uploaded through Laravel storage.

    Other

    • Namespace changes.
    Source code(tar.gz)
    Source code(zip)
  • v1.9.2(Jul 5, 2018)

  • v1.9.1(Jul 5, 2018)

  • v1.9.0(Jul 5, 2018)

  • v1.8.5(Jun 28, 2018)

  • v2.0.0-alpha3(Mar 23, 2018)

  • v2.0.0-alpha2(Jan 29, 2018)

  • v1.8.4(Dec 28, 2017)

  • v2.0.0-alpha(Dec 21, 2017)

    Features:

    • Integration with Laravel Storage.
    • Multiple selection in stand alone button mode.
    • UI refactored, along with RWD design.

    Views, config, assets are also refactored. Please republish them with --force.

    Haven't tested on Windows yet!

    Source code(tar.gz)
    Source code(zip)
  • v1.8.3(Dec 5, 2017)

  • v1.8.2.2(Oct 20, 2017)

    ChangeLogs

    • #447 Fix animated gif image, thanks @pompex
    • #447 Fix svg image upload.
    • All images are now retained 100% quality after uploading to the server.
    Source code(tar.gz)
    Source code(zip)
  • v1.8.2.1(Oct 17, 2017)

    Bug fixes

    • Fix #442, lfm.prefix is not backward compatible with lfm.url_prefix, thanks @nalorim

    You may need to php artisan vendor:publish --tag=lfm_view --force again to apply this fix.

    Source code(tar.gz)
    Source code(zip)
  • v1.8.2(Oct 16, 2017)

    Bug fixes

    • Fix a bug in image resizing.
    • Fix last modified time of a file.
    • Fix orientation problem when uploading an image.

    Enhancements

    • Add ext-fileinfo extension as a requirement.
    • Documents modified.
    • Config renamed: change prefix to url_prefix.
    • Languages updated: hu, tr, zh-CN, zh-TW.
    • Demo route is now disabled by default.

    Features

    • Loader effect added, thanks @iankov.
    • New config: should_create_thumbnails, raster_mimetypes, create_folder_mode, create_file_mode.
    • Integrate with Dropzone.js, thanks @harimayco.
    Source code(tar.gz)
    Source code(zip)
  • v1.8.2-alpha(Oct 9, 2017)

  • v1.8.1(Jul 13, 2017)

    Bug fixes :

    • Fix summernote integration problem. Thanks @pyaehein.
    • Fix cannot see picture when not logged in.
    • Fix problems with utf8 url. Thanks @khjay.

    Feature :

    • Add summernote to demo page.
    • Click on image with open new preview window if editor integration is not found. Thanks @coryw.
    • Integrated with StyleCI.
    • Show a message when uploaded a file. Thanks @abdi42 .
    Source code(tar.gz)
    Source code(zip)
  • v1.8.0(Jun 13, 2017)

    Bug fixes:

    • Fix cannot use closure in config/lfm.php
    • Removed upload_max_filesize option from config
    • Fix iconv bug while processing non-utf8 folders (Windows issue with utf-8 encoding)

    Features:

    • Added 'Copy & Crop' option in crop pop-up. See #335
    • Moved ini override to the LfmController's constructor so it's always executed
    • Default value of config : alphanumeric_filename, should be false
    • Removed some additions that are no longer used
    • Added french translation for nav-sort, nav-sort-alphabetic, nav-sort-time and sort. See #327
    • Languages updated : fa, fr
    Source code(tar.gz)
    Source code(zip)
  • v1.7.7(May 18, 2017)

    • Add comments to all functions in LfmHelpers.php .
    • Copy security note from @tsawler .
    • Language updated : nl.
    • Fix hard coded prefix in lfm.php` .
    • Fix updating files. See #300.
    Source code(tar.gz)
    Source code(zip)
Owner
UniSharp
UniSharp Official Github Group | Chat with us: https://t.me/unisharp_opensource
UniSharp
A PHP library to deal with all those media services around, parsing their URLs and displaying their audios/videos.

MediaEmbed A utility library that generates HTML embed tags for audio or video located on a given URL. It also parses and validates given media URLs.

Mark Sch. 165 Nov 10, 2022
This package used to upload files using laravel-media-library before saving model.

Laravel Media Uploader This package used to upload files using laravel-media-library before saving model. In this package all uploaded media will be p

Ahmed Fathy 312 Dec 12, 2022
A "Vuejs & Laravel" Media Manager With Tons of Features

Laravel Media Manager Installation Config Features Events Usage Installation composer require ctf0/media-manager publish the package assets with php a

Muah 783 Dec 29, 2022
FIle Uploader is a php package to aid fast , easy and safe file upload

FILE UPLOADER FIle Uploader is a php package to aid fast , easy and safe file upload installation composer require codad5/file-helper Features Fast an

Aniezeofor Chibueze Michael 2 Sep 3, 2022
Uguu is a simple lightweight temporary file host with support for drop, paste, click and API uploading.

Uguu What is Uguu? Uguu is a simple lightweight temporary file hosting and sharing platform, but can also be used as a permanent file host. Features O

Eric Johansson (neku) 547 Dec 28, 2022
A lightweight file manager with full ShareX, Screencloud support and more

XBackBone is a simple, self-hosted, lightweight PHP file manager that support the instant sharing tool ShareX and *NIX systems. It supports uploading

Sergio Brighenti 751 Jan 8, 2023
Pomf is a simple lightweight file host with support for drop, paste, click and API uploading.

Pomf Pomf is a simple file uploading and sharing platform. Features One click uploading, no registration required A minimal, modern web interface Drag

Pomf 772 Jan 8, 2023
Analyze content to determine the appropriate Internet media type

Canal Content analysis for the purpose of determining Internet media types. Requirements PHP 5.3+ Installation Through Composer as dflydev/canal. Usag

dflydev 34 Feb 11, 2022
This project is a demo for Media-Upload package:

??️ Media-Upload-Demo This project is a demo for Media-Upload package: ?? Installation guide As always you need to: composer install Then npm install

Mohamed Hafidi 9 Jan 9, 2023
Watch changes in the file system using PHP

Watch changes in the file system using PHP This package allows you to react to all kinds of changes in the file system. Here's how you can run code wh

Spatie 170 Dec 25, 2022
Private file storage and share with user build with laravel and vue inspired by google drive

LaravelDrive is a file storage system that allows store private file and share with users build wiht laravel and vue inspired by google drive. Laravel

Shahadat Hossain 70 Dec 22, 2022
Detects file type by filename or content and generates correct mimetype.

FileTypeDetector Files type detector based on file name extension or file content (binary content). Usage Installation Supported formats Usage File Ty

Sergey 31 Oct 6, 2022
Basic anonymous and registered upload storage for temporary share file self hosted.

TMPShareX Basic anonymous and registered upload storage for temporary share file self hosted. Server Requirement PHP 7.4.8 [Support PHP 8] Nginx 1.19.

Sandy Hermansyah 1 Feb 3, 2022
Creating a file uploader with Laravel

File-Uploader File uploader is a simple group of restful APIs built in Laravel to upload file into a server and remove the file from that server. Tool

AmirH.Najafizadeh 4 Jul 31, 2022
kodbox is a file manager for web. It is a newly designed product based on kodexplorer.

kodbox is a file manager for web. It is a newly designed product based on kodexplorer. It is also a web code editor, which allows you to develop websites directly within the web browser.You can run kodbox either online or locally,on Linux, Windows or Mac based platforms

warlee 1.2k Jan 7, 2023
File manager module for the Lumen PHP framework.

Lumen File Manager File manager module for the Lumen PHP framework. Please note that this module is still under active development. NOTE: Branch 5.1 i

Digia 40 Aug 20, 2022
A web based file manager,web IDE / browser based code editor

KodExplorer Update to kodbox: https://github.com/kalcaddle/kodbox Download | Demo It is recommended to use a new design upgrade product:kodbox 该项目处于维护

warlee 5.8k Jan 3, 2023
🛬🧾 A PHP8 TacView ACMI file format parser

A PHP8 TacView ACMI file format parser This package offers parsing support for TacView ACMI flight recordings version 2.1, it follows the standard des

Ignacio Muñoz Fernandez 1 Jan 18, 2022
Upload File Library For PHP ( Simple & Easy User )

Upload File Library For Backend/ServerSide PHP ( Simple & Easy For Use ), Support Multiple Upload

Lamhot Simamora 1 Oct 12, 2021