Giter Site home page Giter Site logo

infinetyes / nova-filemanager Goto Github PK

View Code? Open in Web Editor NEW
218.0 218.0 98.0 5.62 MB

A Filemanager tool for Laravel Nova

Home Page: https://infinetyes.github.io/Nova-Filemanager

License: MIT License

JavaScript 5.19% Vue 50.08% CSS 0.01% HTML 0.16% PHP 44.56%
filemanager files laravel nova

nova-filemanager's People

Contributors

ahmedkandel avatar antoniovazevedo avatar atmonshi avatar cloudstudio avatar dennislindsey avatar devfaysal avatar eldor avatar fedeisas avatar godkinmo avatar infinetyes avatar jilexandr avatar julianmar avatar krato avatar markwalet avatar pravk avatar sbine avatar stevelacey avatar volkv avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

nova-filemanager's Issues

Files by resource component

Having an instance of the file manager viewable on a resource, like a relationship, but only of that type.

In Nova\Post > fields > FileManager::make('Posts')

Would display a full width section on detail like a HasMany

But would only be files related to posts

Post Processing

Hey there, I just went through the documentation twice and couldn't find any mention of it.
How does one hook into the saving method to perform some operations on the uploaded files, after they have been uploaded? Say to generate thumbnails or responsive image sizes.

Filenames

Is there any way to customize filenames?

I see FileManagerService::checkFileExists takes care of that, but is there any easy way to override this?

Maybe we can set a callback in the Tool itself.

Add posibility to set default folder

Usage example:

public function fields(Request $request)
{
    return [
        ID::make()->sortable(),
        FilemanagerField::make('Avatar', 'avatar_path')->folder('avatars'),
    ];
}

It makes find images easier.

File cannot be uploaded when navigated back to root directory

When I navigate back to the root directory (in the tool) I cannot upload new files to the root directory as it says Argument 1 passed to Infinety\Filemanager\Http\Services\DefaultNamingStrategy::name() must be of the type string, null given in the logs. I assume it comes with the "?path=" in the url?

Select multiple images

Say you have a slider and you need the ability to add multiple images, is there a way to do this currently? Or make it repeatable?

Cannot select file when using on action field.

When I using the field on action fields, something like that:

    /**
     * Get the fields available on the action.
     *
     * @return array
     */
    public function fields()
    {
        return [
            FilemanagerField::make('Image')
                ->displayAsImage()
                ->folder('Social Photos')
                ->filterBy('images')
                ->rules('required'),
        ];
    }

If you click to the file to select it, that will hide the action modal and doesn't fill the file name to the input value.

Add custome css

hello

FilemanagerField::make('logo')
->displayAsImage()->folder('vendor_logo/'.date('Y_m_d'))
])

i have use this for show image but i add my custome class ??

Error after upgrading to Laravel 6

[2019-09-05 06:29:34] local.ERROR: Call to undefined function Infinety\Filemanager\Http\Services\starts_with() {"userId":1,"exception":"[object] (Symfony\Component\Debug\Exception\FatalThrowableError(code: 0): Call to undefined function Infinety\Filemanager\Http\Services\starts_with() at /var/www/html/laravel/faysal.me/vendor/infinety-es/nova-filemanager/src/Http/Services/GetFiles.php:420)
[stacktrace]

Slash missing in image details URL field

When opening the image details layer, the URL field is missing a slash after the protocol.

Additionally, it should be noted that using the APP_URL var could lead to problems (I have encountered quite a few projects where this isnt set). Auto detecting or using the native laravel functions for the hostname is probalby better.

UTF-8 characters

Hello :)

I was trying this package out and I noticed that if I use any of the accentued characters from UTF-8 the files do not render correctly on the Filemanager view but are uploaded correctly.

Here's an example:
File: chouriço.jpg

File uploads fine, but when the view is updated, a 404 gets thrown.
GET http://localhost/storage/chouri%C3%A7o.jpg 404 (Not Found)

All these characters behave the same:
À, Á, Â, Ã, Ä, Å, Æ, Ç, È, É, Ê, Ë, Ì, Í, Î, Ï, Ð, Ñ, Ò, Ó, Ô, Õ, Ö, ×, Ø, Ù, Ú, Û, Ü, Ý, Þ, ß, à, á, â, ã, ä, å, æ, ç, è, é, ê, ë, ì, í, î, ï, ð, ñ, ò, ó, ô, õ, ö, ÷, ø, ù, ú, û, ü, ý, þ, ÿ

Folder open stuck on 1600 icons

I have icon folder around 1600 small png icon, but the page has stuck in open folder,
image
I think, 1600 icons can display on page, can i do work around to fix this issue like add pagination / filter?

Upload via button is broken

Hello,

After last release 2.3 the upload via button is broken, due to adding new methods to upload folders by drag and drop. So the old method used to upload via button is not working,

The console shows the following error message:

vendor.js?id=eaffe66c3a2800ae7df2:1 TypeError: Cannot read property 'forEach' of undefined
    at p.formatFiles (nova-filemanager:formatted:41036)
    at p.uploadFiles (nova-filemanager:formatted:41028)
    at p.uploadFilesByButton (nova-filemanager:formatted:42431)
    at Pt (vendor.js?id=eaffe66c3a2800ae7df2:1)
    at HTMLInputElement.n (vendor.js?id=eaffe66c3a2800ae7df2:1)
    at HTMLInputElement.Zo.i._wrapper (vendor.js?id=eaffe66c3a2800ae7df2:1)

Allow Multiple Disks

The title says it all. I think it would make sense to enable multiple disks. Maybe add a dropdown to choose which disk you want to use.

Case Insensitive Filters?

Could you please make the extension filters case insensitive? Just uploaded a JPG-Image with ".JPG" extension instead of ".jpg" and it doesn't show up in my file selector with 'Images'-filter.
Of course I could add all the uppercase extensions to the array myself. But it would be easier to allow case insensitive file extensions out of the box I think.
I think there shouldn't be any side effects.

Search inside Filemanager

It would be useful if there is search functionality inside Filemanager.
Sometimes you upload files you want to re-use later, and can´t remember where it is.

Access control, "Home"

Is there a way to disable the "Home" link in the field modal or,
can I dynamically set the home path to equal the $folder parameter?

My app creates a storage folder per "team", inside the File Manager Disk path.
I would like to set this folder as Storage::disk() so it becomes the "home" path for that user.
As it is now, I can set the initial view to the teams storage path, but the "Home" link gives the user access to all other team folders.

$folder = $request->user()->team_storage();
        return [
            FilemanagerField::make('Images')
            ->displayAsImage()
            ->folder($folder)
        ];
```

S3 Filesystem cache

When enabling the cache directive of the s3 filesystem config, as described here, File Manager does not properly load.

GET .../nova-vendor/infinety-es/nova-filemanager/data?folder=%2F 500 (Internal Server Error)
Call to undefined method League\Flysystem\Cached\CachedAdapter::getPathPrefix()

Integration with editor

Please show me how to integration file manager with some popular wysiwyg editor, like tinymce or ckeditor. It's will be perfect !!!

S3 Issue

Currently getting this issue, have you seen this before? It only shows on child folders, root uploading works fine.

    "message": "Found 1 error while validating the input provided for the GetObject operation:\n[Key] expected string length to be >= 1, but found string length of 0",
    "exception": "InvalidArgumentException",
    "file": "/var/www/vendor/aws/aws-sdk-php/src/Api/Validator.php",
    "line": 65,

How to validate file type of the field?

How can I validate the file type when a user upload a file?

Right now, I only see filter to limit file display in filemanager but it still allows user upload all file types.

Thank you for this great package.

Error reading the folder. Please check your logs

When opening either the tool or the field modal I always get the above error. But there's nothing written to my logs. What causes this error? I didn't change the access rights.
And a few days ago it worked like a charm. But not anymore.
I would really like to provide more information. But that's all I got 😄

Make translations publishable

To make the package look more like Laravel Nova, I want to propose the following changes.

  • Add a resources/lang/en.json file with all translation keys that are used. (The one in the readme are out of date)
  • Load them and make them publishable via the service provider.
  • Remove the translation keys from the readme.
  • Add a tutorial on how to publish the translation files.

I already started working on a PR for this issue.

Breadcrumb on windows filesystem

Hello,

When using the Filemanager on windows machine/hosting, The breadcrumb paths are absolute due to the different directory separator:

Screenshot_2

Thanks.

Laravel FLYSYSTEM - AWS S3 support

We tried to use this file manager package together with AWS S3 but it is not working caused by errors by AWS s3 directory attributes / structure differences.

Is it planned to update the package to support AWS S3 in the near future?

Translations support

Hi!

This tool looks awesome!

If it's possible, it would be very nice if all the hard-coded text would be translatable (lang files / json translations).

Styling Bug On CodeMirror

Thanks for the great package!

Looks like the the codemirror theme being pulled into one of your vue templates has a height: 400px !important on it.

This overrides the Code field on Nova.

My fix was to add a custom css in the NovaServiceProvider in case anyone is wondering.

[Feature Request] Ability to access Multiple Disks.

In my project, I store few images/files in one disk (public) and some in another disk (s3).

It would be a nice feature to switch between the disks in the Nova Panel.
So, in config/filemanager.php we can have something like:

'allowed_disks' => [ 'public', 's3' ],

And then in Nova panel you can switch between them.

Great package 👍

max video size config

Hi,
How can I set the max video size? I need to upload videos up to 120Mb. Is this possible?

easy downloading

Very nice tool, but i would be nicer if the files where also downloadable in an easy way.. maybe just an download link in the popup or shortcut symbols for download/delete in the files list view :)

Restricr folder on FileManager Tool

Is it possible to restrict folder? This is possible on the filemanager field but I need to do this on the filemanager tool. Each user have your personal folder

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.