├── .github ├── ISSUE_TEMPLATE.md └── ISSUE_TEMPLATE │ ├── bug_report.md │ └── feature_request.md ├── .gitignore ├── .styleci.yml ├── .travis.yml ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── Makefile ├── PULL_REQUEST_TEMPLATE.md ├── README.md ├── composer.json ├── docs ├── Gemfile ├── _config.yml ├── _layouts │ └── default.html ├── config.md ├── contribution.md ├── customization.md ├── events.md ├── images │ ├── lfm01.png │ ├── lfm02.png │ ├── lfm03.png │ ├── logo_horizontal_black.png │ ├── logo_horizontal_colored.png │ ├── logo_horizontal_white.png │ ├── logo_mark_black.png │ ├── logo_mark_colored.png │ ├── logo_mark_white.png │ ├── logo_vertical_black.png │ ├── logo_vertical_colored.png │ ├── logo_vertical_white.png │ ├── screenshots-v2.png │ ├── square_152.png │ ├── square_72.png │ └── square_92.png ├── index.md ├── installation.md ├── integration.md ├── security.md └── upgrade.md ├── phpunit.xml ├── public ├── css │ ├── cropper.min.css │ ├── dropzone.min.css │ ├── lfm.css │ └── mime-icons.min.css ├── files │ ├── .gitkeep │ ├── adobe.pdf │ ├── folder-1 │ │ └── sleeping-dog.jpg │ └── word.docx ├── images │ ├── .gitkeep │ └── test-folder │ │ ├── sleeping-dog.jpg │ │ └── thumbs │ │ └── sleeping-dog.jpg ├── img │ ├── 152px color.png │ ├── 72px color.png │ ├── 92px color.png │ ├── Logomark color.png │ ├── folder.png │ └── loader.svg └── js │ ├── cropper.min.js │ ├── dropzone.min.js │ ├── filemanager.js │ ├── filemanager.min.js │ ├── script.js │ └── stand-alone-button.js ├── src ├── Controllers │ ├── Controller.php │ ├── CropController.php │ ├── DeleteController.php │ ├── DemoController.php │ ├── DownloadController.php │ ├── FolderController.php │ ├── ItemsController.php │ ├── LfmController.php │ ├── RedirectController.php │ ├── RenameController.php │ ├── ResizeController.php │ └── UploadController.php ├── Events │ ├── FileIsDeleting.php │ ├── FileIsMoving.php │ ├── FileIsRenaming.php │ ├── FileIsUploading.php │ ├── FileWasDeleted.php │ ├── FileWasMoving.php │ ├── FileWasRenamed.php │ ├── FileWasUploaded.php │ ├── FolderIsCreating.php │ ├── FolderIsDeleting.php │ ├── FolderIsMoving.php │ ├── FolderIsRenaming.php │ ├── FolderWasCreated.php │ ├── FolderWasDeleted.php │ ├── FolderWasMoving.php │ ├── FolderWasRenamed.php │ ├── ImageIsCropping.php │ ├── ImageIsDeleting.php │ ├── ImageIsRenaming.php │ ├── ImageIsResizing.php │ ├── ImageIsUploading.php │ ├── ImageWasCropped.php │ ├── ImageWasDeleted.php │ ├── ImageWasRenamed.php │ ├── ImageWasResized.php │ └── ImageWasUploaded.php ├── Exceptions │ ├── DuplicateFileNameException.php │ ├── EmptyFileException.php │ ├── ExcutableFileException.php │ ├── FileFailedToUploadException.php │ ├── FileSizeExceedConfigurationMaximumException.php │ ├── FileSizeExceedIniMaximumException.php │ ├── InvalidExtensionException.php │ └── InvalidMimeTypeException.php ├── Handlers │ ├── ConfigHandler.php │ └── LfmConfigHandler.php ├── LaravelFilemanagerServiceProvider.php ├── Lfm.php ├── LfmItem.php ├── LfmPath.php ├── LfmStorageRepository.php ├── LfmUploadValidator.php ├── Middlewares │ ├── CreateDefaultFolder.php │ └── MultiUser.php ├── config │ └── lfm.php ├── lang │ ├── ar │ │ └── lfm.php │ ├── az │ │ └── lfm.php │ ├── bg │ │ └── lfm.php │ ├── cs │ │ └── lfm.php │ ├── da │ │ └── lfm.php │ ├── de │ │ └── lfm.php │ ├── el │ │ └── lfm.php │ ├── en │ │ └── lfm.php │ ├── es │ │ └── lfm.php │ ├── eu │ │ └── lfm.php │ ├── fa │ │ └── lfm.php │ ├── fi │ │ └── lfm.php │ ├── fr │ │ └── lfm.php │ ├── he │ │ └── lfm.php │ ├── hu │ │ └── lfm.php │ ├── id │ │ └── lfm.php │ ├── it │ │ └── lfm.php │ ├── ja │ │ └── lfm.php │ ├── ka │ │ └── lfm.php │ ├── nl │ │ └── lfm.php │ ├── pl │ │ └── lfm.php │ ├── pt-BR │ │ └── lfm.php │ ├── pt │ │ └── lfm.php │ ├── ro │ │ └── lfm.php │ ├── rs │ │ └── lfm.php │ ├── ru │ │ └── lfm.php │ ├── sk │ │ └── lfm.php │ ├── sv │ │ └── lfm.php │ ├── tr │ │ └── lfm.php │ ├── uk │ │ └── lfm.php │ ├── uz │ │ └── lfm.php │ ├── vi │ │ └── lfm.php │ ├── zh-CN │ │ └── lfm.php │ └── zh-TW │ │ └── lfm.php └── views │ ├── crop.blade.php │ ├── demo.blade.php │ ├── index.blade.php │ ├── move.blade.php │ ├── resize.blade.php │ ├── tree.blade.php │ └── use.blade.php └── tests ├── LfmItemTest.php ├── LfmPathTest.php ├── LfmStorageRepositoryTest.php ├── LfmTest.php └── LfmUploadValidatorTest.php /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | ## Delete this section after you read them: 2 | * Make sure you are using the latest version. 3 | * Make sure you read [installation](http://unisharp.github.io/laravel-filemanager/installation), [integration](http://unisharp.github.io/laravel-filemanager/integration), and [upgrade](http://unisharp.github.io/laravel-filemanager/upgrade) document. 4 | 5 | ## Expected Behavior 6 | 7 | 8 | ## Actual Behavior 9 | 10 | 11 | ## Steps to Reproduce the Problem 12 | 13 | 1. 14 | 1. 15 | 1. 16 | 17 | ## Specifications 18 | 19 | * Operating system : 20 | * Laravel version : 21 | * Package version : 22 | * Screenshots of browser console : 23 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Create a report to help us improve 4 | 5 | --- 6 | 7 | ## Delete this section after you read them: 8 | * Make sure you are using the latest version. 9 | * Make sure you read [installation](http://unisharp.github.io/laravel-filemanager/installation), [integration](http://unisharp.github.io/laravel-filemanager/integration), and [upgrade](http://unisharp.github.io/laravel-filemanager/upgrade) document. 10 | 11 | ## Expected Behavior 12 | 13 | 14 | ## Actual Behavior 15 | 16 | 17 | ## Steps to Reproduce the Problem 18 | 19 | 1. 20 | 1. 21 | 1. 22 | 23 | ## Specifications 24 | 25 | * Operating system : 26 | * Laravel version : 27 | * Package version : 28 | * Screenshots of browser console : 29 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for this project 4 | 5 | --- 6 | 7 | ## Is your feature request related to a problem? Please describe. 8 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] 9 | 10 | ## Describe the solution you'd like 11 | A clear and concise description of what you want to happen. 12 | 13 | ## Describe alternatives you've considered 14 | A clear and concise description of any alternative solutions or features you've considered. 15 | 16 | ## Additional context 17 | Add any other context or screenshots about the feature request here. 18 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /vendor 2 | composer.lock 3 | /docs/Gemfile.lock 4 | /docs/_site 5 | .DS_Store 6 | /.idea 7 | -------------------------------------------------------------------------------- /.styleci.yml: -------------------------------------------------------------------------------- 1 | preset: psr2 2 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | - 8.0 5 | - 7.4 6 | - 5.6 7 | 8 | matrix: 9 | fast_finish: true 10 | allow_failures: 11 | - php: 7.4 12 | - php: 5.6 13 | 14 | before_script: 15 | - travis_retry composer self-update 16 | - travis_retry composer install --no-interaction --prefer-source 17 | 18 | script: 19 | - vendor/bin/phpunit --verbose 20 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Contributor Covenant Code of Conduct 2 | 3 | ## Our Pledge 4 | 5 | In the interest of fostering an open and welcoming environment, we as 6 | contributors and maintainers pledge to making participation in our project and 7 | our community a harassment-free experience for everyone, regardless of age, body 8 | size, disability, ethnicity, sex characteristics, gender identity and expression, 9 | level of experience, education, socio-economic status, nationality, personal 10 | appearance, race, religion, or sexual identity and orientation. 11 | 12 | ## Our Standards 13 | 14 | Examples of behavior that contributes to creating a positive environment 15 | include: 16 | 17 | * Using welcoming and inclusive language 18 | * Being respectful of differing viewpoints and experiences 19 | * Gracefully accepting constructive criticism 20 | * Focusing on what is best for the community 21 | * Showing empathy towards other community members 22 | 23 | Examples of unacceptable behavior by participants include: 24 | 25 | * The use of sexualized language or imagery and unwelcome sexual attention or 26 | advances 27 | * Trolling, insulting/derogatory comments, and personal or political attacks 28 | * Public or private harassment 29 | * Publishing others' private information, such as a physical or electronic 30 | address, without explicit permission 31 | * Other conduct which could reasonably be considered inappropriate in a 32 | professional setting 33 | 34 | ## Our Responsibilities 35 | 36 | Project maintainers are responsible for clarifying the standards of acceptable 37 | behavior and are expected to take appropriate and fair corrective action in 38 | response to any instances of unacceptable behavior. 39 | 40 | Project maintainers have the right and responsibility to remove, edit, or 41 | reject comments, commits, code, wiki edits, issues, and other contributions 42 | that are not aligned to this Code of Conduct, or to ban temporarily or 43 | permanently any contributor for other behaviors that they deem inappropriate, 44 | threatening, offensive, or harmful. 45 | 46 | ## Scope 47 | 48 | This Code of Conduct applies both within project spaces and in public spaces 49 | when an individual is representing the project or its community. Examples of 50 | representing a project or community include using an official project e-mail 51 | address, posting via an official social media account, or acting as an appointed 52 | representative at an online or offline event. Representation of a project may be 53 | further defined and clarified by project maintainers. 54 | 55 | ## Enforcement 56 | 57 | Instances of abusive, harassing, or otherwise unacceptable behavior may be 58 | reported by contacting the project team at service@unisharp.com. All 59 | complaints will be reviewed and investigated and will result in a response that 60 | is deemed necessary and appropriate to the circumstances. The project team is 61 | obligated to maintain confidentiality with regard to the reporter of an incident. 62 | Further details of specific enforcement policies may be posted separately. 63 | 64 | Project maintainers who do not follow or enforce the Code of Conduct in good 65 | faith may face temporary or permanent repercussions as determined by other 66 | members of the project's leadership. 67 | 68 | ## Attribution 69 | 70 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, 71 | available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html 72 | 73 | [homepage]: https://www.contributor-covenant.org 74 | 75 | For answers to common questions about this code of conduct, see 76 | https://www.contributor-covenant.org/faq 77 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | ## Steps to contribute 2 | 1. Fork [unisharp/laravel-filemanager](https://github.com/UniSharp/laravel-filemanager) from GitHub. 3 | 1. Run commands below: 4 | 5 | ``` 6 | git clone git@github.com:UniSharp/laravel-filemanager-example-5.3.git 7 | cd laravel-filemanager-example-5.3 8 | composer require unisharp/laravel-filemanager:dev-master 9 | make init 10 | ``` 11 | 1. Edit codes in `vendor/unisharp/laravel-filemanager` 12 | 1. Push your changes to your fork. 13 | 1. Send a pull request to [unisharp/laravel-filemanager](https://github.com/UniSharp/laravel-filemanager). 14 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Trevor Sawler 4 | Copyright (c) 2015-2017 All contributors from GitHub 5 | Copyright (c) 2015-2017 UniSharp 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining a copy 8 | of this software and associated documentation files (the "Software"), to deal 9 | in the Software without restriction, including without limitation the rights 10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11 | copies of the Software, and to permit persons to whom the Software is 12 | furnished to do so, subject to the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be included in all 15 | copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 23 | SOFTWARE. 24 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | test: 2 | vendor/bin/phpunit --coverage-text 3 | vendor/bin/phpcs --version && echo && vendor/bin/phpcs -p --standard=PSR2 --ignore=src/lang/,src/views/ src tests 4 | -------------------------------------------------------------------------------- /PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | #### (optional) Issue number: 2 | #### Summary of the change: 3 | -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "unisharp/laravel-filemanager", 3 | "description": "A file upload/editor intended for use with Laravel 5 to 10 and CKEditor / TinyMCE", 4 | "license": "MIT", 5 | "keywords": [ 6 | "filemanager", 7 | "laravel", 8 | "ckeditor", 9 | "tinymce", 10 | "upload", 11 | "file", 12 | "manager", 13 | "image" 14 | ], 15 | "authors": [ 16 | { 17 | "name": "Trevor Sawler", 18 | "email": "trevor.sawler@gmail.com" 19 | }, 20 | { 21 | "name": "UniSharp Ltd.", 22 | "email": "opensource@unisharp.com" 23 | } 24 | ], 25 | "require": { 26 | "php": ">=7.2.0", 27 | "ext-exif": "*", 28 | "ext-fileinfo": "*", 29 | "intervention/image": ">=2.0.0", 30 | "illuminate/config": "5.4.* || 5.5.* || 5.6.* || 5.7.* || 5.8.* || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0 || ^11.0 || ^12.0", 31 | "illuminate/filesystem": "5.4.* || 5.5.* || 5.6.* || 5.7.* || 5.8.* || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0 || ^11.0 || ^12.0", 32 | "illuminate/support": "5.4.* || 5.5.* || 5.6.* || 5.7.* || 5.8.* || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0 || ^11.0 || ^12.0", 33 | "illuminate/http": "5.4.* || 5.5.* || 5.6.* || 5.7.* || 5.8.* || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0 || ^11.0 || ^12.0", 34 | "illuminate/container": "5.4.* || 5.5.* || 5.6.* || 5.7.* || 5.8.* || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0 || ^11.0 || ^12.0", 35 | "league/flysystem": ">=2.0.0" 36 | }, 37 | "require-dev": { 38 | "phpunit/phpunit": "~8.0", 39 | "mockery/mockery": "~1.3.0", 40 | "squizlabs/php_codesniffer": "^3.1" 41 | }, 42 | "suggest": { 43 | "ext-gd": "to use GD library based image processing.", 44 | "ext-imagick": "to use Imagick based image processing." 45 | }, 46 | "autoload": { 47 | "psr-4": { 48 | "UniSharp\\LaravelFilemanager\\": "src/" 49 | } 50 | }, 51 | "autoload-dev": { 52 | "psr-4": { 53 | "Tests\\": "tests" 54 | } 55 | }, 56 | "extra": { 57 | "laravel": { 58 | "providers": [ 59 | "UniSharp\\LaravelFilemanager\\LaravelFilemanagerServiceProvider" 60 | ], 61 | "aliases": { 62 | } 63 | } 64 | } 65 | } 66 | -------------------------------------------------------------------------------- /docs/Gemfile: -------------------------------------------------------------------------------- 1 | source 'https://rubygems.org' 2 | gem 'github-pages', group: :jekyll_plugins 3 | -------------------------------------------------------------------------------- /docs/_config.yml: -------------------------------------------------------------------------------- 1 | theme: jekyll-theme-cayman 2 | 3 | # Setup 4 | title: Laravel File Manager 5 | description: It's like Dropbox for your Laravel app. 6 | google_analytics: G-X9XY279785 7 | 8 | # About/contact 9 | author: 10 | name: UniSharp 11 | url: https://github.com/UniSharp 12 | -------------------------------------------------------------------------------- /docs/contribution.md: -------------------------------------------------------------------------------- 1 | ## Steps to contribute 2 | 1. Fork [unisharp/laravel-filemanager](https://github.com/UniSharp/laravel-filemanager) from GitHub. 3 | 1. Run commands below: 4 | 5 | ``` 6 | git clone git@github.com:UniSharp/laravel-filemanager-example-5.3.git 7 | cd laravel-filemanager-example-5.3 8 | composer require unisharp/laravel-filemanager:dev-master 9 | make init 10 | ``` 11 | 1. Edit codes in `vendor/unisharp/laravel-filemanager` 12 | 1. Commit and follow rules in [Conventional Commits](https://www.conventionalcommits.org/). 13 | 1. Push your changes to a new branch other than `master`. Good branch name might be like: `feature/add-pagination`, `fix/file-not-displayed`. 14 | 1. Send a pull request to [unisharp/laravel-filemanager](https://github.com/UniSharp/laravel-filemanager). 15 | -------------------------------------------------------------------------------- /docs/customization.md: -------------------------------------------------------------------------------- 1 | ## Routes 2 | 1. Edit `routes/web.php` : 3 | 4 | Create route group to wrap package routes. 5 | 6 | ```php 7 | Route::group(['prefix' => 'laravel-filemanager', 'middleware' => ['web', 'auth']], function () { 8 | \UniSharp\LaravelFilemanager\Lfm::routes(); 9 | }); 10 | ``` 11 | 12 | Make sure `auth` middleware is present to : 13 | 14 | 1. prevent unauthorized uploads 15 | 1. work properly with multi-user mode 16 | 17 | 1. Make sure urls below is correspond to your route (remember to include type parameter `?type=Images` or `?type=Files`) : 18 | * CKEditor 19 | ```javascript 20 | CKEDITOR.replace('editor', { 21 | filebrowserImageBrowseUrl: '/your-custom-route?type=Images', 22 | filebrowserBrowseUrl: '/your-custom-route?type=Files' 23 | }); 24 | ``` 25 | * TinyMCE 26 | ```javascript 27 | ... 28 | var cmsURL = editor_config.path_absolute + 'your-custom-route?field_name='+field_name+'&lang='+ tinymce.settings.language; 29 | if (type == 'image') { 30 | cmsURL = cmsURL + "&type=Images"; 31 | } else { 32 | cmsURL = cmsURL + "&type=Files"; 33 | } 34 | ... 35 | ``` 36 | 37 | ## Views 38 | Copy views to `resources/views/vendor/unisharp/laravel-filemanager/` : 39 | 40 | ```bash 41 | php artisan vendor:publish --tag=lfm_view 42 | ``` 43 | 44 | ## Translations 45 | 46 | 1. Copy `vendor/unisharp/laravel-filemanager/src/lang/en` to `/resources/lang/vendor/laravel-filemanager//lfm.php`. 47 | 1. Edit the file as you please. 48 | -------------------------------------------------------------------------------- /docs/events.md: -------------------------------------------------------------------------------- 1 | ## List of events 2 | 3 | * File 4 | * UniSharp\LaravelFilemanager\Events\FileIsUploading 5 | * UniSharp\LaravelFilemanager\Events\FileWasUploaded 6 | * UniSharp\LaravelFilemanager\Events\FileIsRenaming 7 | * UniSharp\LaravelFilemanager\Events\FileWasRenamed 8 | * UniSharp\LaravelFilemanager\Events\FileIsMoving 9 | * UniSharp\LaravelFilemanager\Events\FileWasMoving 10 | * UniSharp\LaravelFilemanager\Events\FileIsDeleting 11 | * UniSharp\LaravelFilemanager\Events\FileWasDeleted 12 | * Image 13 | * UniSharp\LaravelFilemanager\Events\ImageIsUploading 14 | * UniSharp\LaravelFilemanager\Events\ImageWasUploaded 15 | * UniSharp\LaravelFilemanager\Events\ImageIsRenaming 16 | * UniSharp\LaravelFilemanager\Events\ImageWasRenamed 17 | * UniSharp\LaravelFilemanager\Events\ImageIsResizing 18 | * UniSharp\LaravelFilemanager\Events\ImageWasResized 19 | * UniSharp\LaravelFilemanager\Events\ImageIsCropping 20 | * UniSharp\LaravelFilemanager\Events\ImageWasCropped 21 | * UniSharp\LaravelFilemanager\Events\ImageIsDeleting 22 | * UniSharp\LaravelFilemanager\Events\ImageWasDeleted 23 | * Folder 24 | * UniSharp\LaravelFilemanager\Events\FolderIsCreating 25 | * UniSharp\LaravelFilemanager\Events\FolderWasCreated 26 | * UniSharp\LaravelFilemanager\Events\FolderIsRenaming 27 | * UniSharp\LaravelFilemanager\Events\FolderWasRenamed 28 | * UniSharp\LaravelFilemanager\Events\FolderIsMoving 29 | * UniSharp\LaravelFilemanager\Events\FolderWasMoving 30 | * UniSharp\LaravelFilemanager\Events\FolderIsDeleting 31 | * UniSharp\LaravelFilemanager\Events\FolderWasDeleted 32 | 33 | ## How to use 34 | * Sample code : [laravel-filemanager-demo-events](https://github.com/UniSharp/laravel-filemanager-demo-events) 35 | * To use events you can add a listener to listen to the events. 36 | 37 | Snippet for `EventServiceProvider` 38 | 39 | ```php 40 | protected $listen = [ 41 | ImageWasUploaded::class => [ 42 | UploadListener::class, 43 | ], 44 | ]; 45 | ``` 46 | 47 | The `UploadListener` will look like: 48 | 49 | ```php 50 | class UploadListener 51 | { 52 | public function handle($event) 53 | { 54 | $method = 'on'.class_basename($event); 55 | if (method_exists($this, $method)) { 56 | call_user_func([$this, $method], $event); 57 | } 58 | } 59 | 60 | public function onImageWasUploaded(ImageWasUploaded $event) 61 | { 62 | $path = $event->path(); 63 | //your code, for example resizing and cropping 64 | } 65 | } 66 | ``` 67 | 68 | * Or by using Event Subscribers 69 | 70 | Snippet for `EventServiceProvider` 71 | 72 | ```php 73 | protected $subscribe = [ 74 | UploadListener::class 75 | ]; 76 | ``` 77 | 78 | The `UploadListener` will look like: 79 | 80 | ```php 81 | public function subscribe($events) 82 | { 83 | $events->listen('*', UploadListener::class); 84 | } 85 | 86 | public function handle($event) 87 | { 88 | $method = 'on'.class_basename($event); 89 | if (method_exists($this, $method)) { 90 | call_user_func([$this, $method], $event); 91 | } 92 | } 93 | 94 | public function onImageWasUploaded(ImageWasUploaded $event) 95 | { 96 | $path = $event->path(); 97 | // your code, for example resizing and cropping 98 | } 99 | 100 | public function onImageWasRenamed(ImageWasRenamed $event) 101 | { 102 | // image was renamed 103 | } 104 | 105 | public function onImageWasDeleted(ImageWasDeleted $event) 106 | { 107 | // image was deleted 108 | } 109 | 110 | public function onFolderWasRenamed(FolderWasRenamed $event) 111 | { 112 | // folder was renamed 113 | } 114 | ``` 115 | -------------------------------------------------------------------------------- /docs/images/lfm01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/lfm01.png -------------------------------------------------------------------------------- /docs/images/lfm02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/lfm02.png -------------------------------------------------------------------------------- /docs/images/lfm03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/lfm03.png -------------------------------------------------------------------------------- /docs/images/logo_horizontal_black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/logo_horizontal_black.png -------------------------------------------------------------------------------- /docs/images/logo_horizontal_colored.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/logo_horizontal_colored.png -------------------------------------------------------------------------------- /docs/images/logo_horizontal_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/logo_horizontal_white.png -------------------------------------------------------------------------------- /docs/images/logo_mark_black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/logo_mark_black.png -------------------------------------------------------------------------------- /docs/images/logo_mark_colored.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/logo_mark_colored.png -------------------------------------------------------------------------------- /docs/images/logo_mark_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/logo_mark_white.png -------------------------------------------------------------------------------- /docs/images/logo_vertical_black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/logo_vertical_black.png -------------------------------------------------------------------------------- /docs/images/logo_vertical_colored.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/logo_vertical_colored.png -------------------------------------------------------------------------------- /docs/images/logo_vertical_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/logo_vertical_white.png -------------------------------------------------------------------------------- /docs/images/screenshots-v2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/screenshots-v2.png -------------------------------------------------------------------------------- /docs/images/square_152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/square_152.png -------------------------------------------------------------------------------- /docs/images/square_72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/square_72.png -------------------------------------------------------------------------------- /docs/images/square_92.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/docs/images/square_92.png -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- 1 | [![Latest Stable Version](https://poser.pugx.org/unisharp/laravel-filemanager/v/stable)](https://packagist.org/packages/unisharp/laravel-filemanager) 2 | [![Total Downloads](https://poser.pugx.org/unisharp/laravel-filemanager/downloads)](https://packagist.org/packages/unisharp/laravel-filemanager) 3 | [![License](https://poser.pugx.org/unisharp/laravel-filemanager/license)](https://packagist.org/packages/unisharp/laravel-filemanager) 4 | 5 | This is the document of v2 version, v1 document can be found here: [https://github.com/UniSharp/laravel-filemanager/tree/v1/docs](https://github.com/UniSharp/laravel-filemanager/tree/v1/docs) 6 | 7 | ## Features 8 | * File upload and management 9 | * Uploading validation 10 | * Cropping and resizing of images 11 | * RWD user interface, and can be entirely customized 12 | * Supporting multiple files selection 13 | * Supporting cloud storages integration(with Laravel file system) 14 | * Multiple integration options: 15 | * WYSIWYG editors integration (CKEditor, TinyMCE, Summernote) 16 | * Standalone upload button 17 | * Iframe 18 | * Multi-user mode: 19 | * Shared folders: all users can upload and manage files 20 | * Private folders: dedicated folder for each user, only the owner can upload or manage files within 21 | * Customizable routes, middlewares, views, and folder path 22 | * Supports two categories: files and images. Each type works in different directory. 23 | * 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 24 | 25 | PRs are welcome! 26 | 27 | ## Screenshots 28 | > Standalone button : 29 | 30 | ![Standalone button demo](https://unisharp.github.io/laravel-filemanager/images/lfm01.png) 31 | 32 | > Responsive design : 33 | 34 | ![RWD demo](https://unisharp.github.io/laravel-filemanager/images/screenshots-v2.png) 35 | 36 | -------------------------------------------------------------------------------- /docs/installation.md: -------------------------------------------------------------------------------- 1 | ## Requirements 2 | * php >= 5.4 3 | * exif extension 4 | * fileinfo extension 5 | * GD Library >=2.0 or Imagick PHP extension >=6.5.7 6 | * Laravel 5 7 | * requires [intervention/image](https://github.com/Intervention/image) (to make thumbs, crop and resize images). 8 | 9 | ## TL;DR 10 | 1. Run these lines 11 | 12 | ```bash 13 | composer require unisharp/laravel-filemanager 14 | php artisan vendor:publish --tag=lfm_config 15 | php artisan vendor:publish --tag=lfm_public 16 | php artisan storage:link 17 | ``` 18 | 19 | 1. Edit `APP_URL` in `.env`. 20 | 21 | ## Full Installation Guide 22 | 1. Install package 23 | 24 | ```bash 25 | composer require unisharp/laravel-filemanager 26 | ``` 27 | 28 | 1. (optional) Install required dependency with `v3.*` of `intervention/image`: 29 | 30 | This package use `intervention/image` to perform image cropping/resizing and generating thumbnails. Since `v3.*` of `intervention/image` does not support Laravel by default, the service provider need to be installed with the following scripts. Details can be found here: https://github.com/Intervention/image-laravel 31 | 32 | ```bash 33 | composer require intervention/image-laravel 34 | php artisan vendor:publish --provider="Intervention\Image\Laravel\ServiceProvider" 35 | ``` 36 | 37 | \* *Do not run these scripts if you use `v2.*` of `intervention/image`.* 38 | 39 | 1. Publish the package's config and assets : 40 | 41 | ```bash 42 | php artisan vendor:publish --tag=lfm_config 43 | php artisan vendor:publish --tag=lfm_public 44 | ``` 45 | 46 | 1. (optional) Run commands to clear cache : 47 | 48 | ```bash 49 | php artisan route:clear 50 | php artisan config:clear 51 | ``` 52 | 53 | 1. Ensure that the files & images directories (in `config/lfm.php`) are writable by your web server (run commands like `chown` or `chmod`). 54 | 55 | 1. Create symbolic link : 56 | 57 | ```bash 58 | php artisan storage:link 59 | ``` 60 | 61 | 1. Edit `APP_URL` in `.env`. 62 | 63 | 1. Edit `routes/web.php` : 64 | 65 | Create route group to wrap package routes. 66 | 67 | ```php 68 | Route::group(['prefix' => 'laravel-filemanager', 'middleware' => ['web', 'auth']], function () { 69 | \UniSharp\LaravelFilemanager\Lfm::routes(); 70 | }); 71 | ``` 72 | 73 | Make sure `auth` middleware is present to : 74 | 75 | 1. prevent unauthorized uploads 76 | 1. work properly with multi-user mode 77 | 78 | 1. make sure database exists 79 | 80 | 1. login and visit `/laravel-filemanager/demo` 81 | 82 | ## Installing alpha version 83 | * Run `composer require unisharp/laravel-filemanager:dev-master` to get the latest developer version. 84 | 85 | ## What's next 86 | 87 | 1. Check the [integration document](http://unisharp.github.io/laravel-filemanager/integration) to see how to apply this package. 88 | 89 | 1. Check the [config document](http://unisharp.github.io/laravel-filemanager/config) to discover the flexibility of this package. 90 | -------------------------------------------------------------------------------- /docs/security.md: -------------------------------------------------------------------------------- 1 | ## Security 2 | 3 | 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. 4 | 5 | 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: 6 | 7 | ```php 8 | Route::group(['middleware' => 'auth'], function () { // auth middleware is important! 9 | \UniSharp\LaravelFilemanager\Lfm::routes(); 10 | }); 11 | ``` 12 | 13 | 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. 14 | 15 | **If you use the laravel-filemanager default route, make sure the `auth` middleware (set in config/lfm.php) is enabled and functional**. 16 | -------------------------------------------------------------------------------- /docs/upgrade.md: -------------------------------------------------------------------------------- 1 | ## Upgrade instructions 2 | 3 | 1. Please backup your own `config/lfm.php` before upgrading. 4 | 5 | 1. Run commands: 6 | 7 | ```bash 8 | composer update unisharp/laravel-filemanager 9 | 10 | php artisan vendor:publish --tag=lfm_view --force 11 | php artisan vendor:publish --tag=lfm_public --force 12 | php artisan vendor:publish --tag=lfm_config --force 13 | 14 | php artisan route:clear 15 | php artisan config:clear 16 | ``` 17 | 18 | 1. Clear browser cache if page is broken after upgrading. 19 | 20 | ## Errors with namespace 21 | We have changed namespace from `Unisharp` to `UniSharp`, and change the first character of every namespace into capital. 22 | 23 | If you are updating this package and encounter any errors like `Class not found`, please remove this package entirely and reinstall again. 24 | -------------------------------------------------------------------------------- /phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | 14 | 15 | ./tests/ 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /public/css/cropper.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Cropper v0.9.1 3 | * https://github.com/fengyuanchen/cropper 4 | * 5 | * Copyright (c) 2014-2015 Fengyuan Chen and contributors 6 | * Released under the MIT license 7 | * 8 | * Date: 2015-03-21T04:58:27.265Z 9 | */.cropper-container{position:relative;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.cropper-container img{display:block;width:100%;min-width:0!important;max-width:none!important;height:100%;min-height:0!important;max-height:none!important;image-orientation:0deg!important}.cropper-canvas,.cropper-crop-box,.cropper-drag-box,.cropper-modal{position:absolute;top:0;right:0;bottom:0;left:0}.cropper-drag-box{background-color:#fff;filter:alpha(opacity=0);opacity:0}.cropper-modal{background-color:#000;filter:alpha(opacity=50);opacity:.5}.cropper-view-box{display:block;width:100%;height:100%;overflow:hidden;outline:#69f solid 1px;outline-color:rgba(102,153,255,.75)}.cropper-dashed{position:absolute;display:block;filter:alpha(opacity=50);border:0 dashed #fff;opacity:.5}.cropper-dashed.dashed-h{top:33.33333333%;left:0;width:100%;height:33.33333333%;border-top-width:1px;border-bottom-width:1px}.cropper-dashed.dashed-v{top:0;left:33.33333333%;width:33.33333333%;height:100%;border-right-width:1px;border-left-width:1px}.cropper-face,.cropper-line,.cropper-point{position:absolute;display:block;width:100%;height:100%;filter:alpha(opacity=10);opacity:.1}.cropper-face{top:0;left:0;cursor:move;background-color:#fff}.cropper-line{background-color:#69f}.cropper-line.line-e{top:0;right:-3px;width:5px;cursor:e-resize}.cropper-line.line-n{top:-3px;left:0;height:5px;cursor:n-resize}.cropper-line.line-w{top:0;left:-3px;width:5px;cursor:w-resize}.cropper-line.line-s{bottom:-3px;left:0;height:5px;cursor:s-resize}.cropper-point{width:5px;height:5px;background-color:#69f;filter:alpha(opacity=75);opacity:.75}.cropper-point.point-e{top:50%;right:-3px;margin-top:-3px;cursor:e-resize}.cropper-point.point-n{top:-3px;left:50%;margin-left:-3px;cursor:n-resize}.cropper-point.point-w{top:50%;left:-3px;margin-top:-3px;cursor:w-resize}.cropper-point.point-s{bottom:-3px;left:50%;margin-left:-3px;cursor:s-resize}.cropper-point.point-ne{top:-3px;right:-3px;cursor:ne-resize}.cropper-point.point-nw{top:-3px;left:-3px;cursor:nw-resize}.cropper-point.point-sw{bottom:-3px;left:-3px;cursor:sw-resize}.cropper-point.point-se{right:-3px;bottom:-3px;width:20px;height:20px;cursor:se-resize;filter:alpha(opacity=100);opacity:1}.cropper-point.point-se:before{position:absolute;right:-50%;bottom:-50%;display:block;width:200%;height:200%;content:" ";background-color:#69f;filter:alpha(opacity=0);opacity:0}@media (min-width:768px){.cropper-point.point-se{width:15px;height:15px}}@media (min-width:992px){.cropper-point.point-se{width:10px;height:10px}}@media (min-width:1200px){.cropper-point.point-se{width:5px;height:5px;filter:alpha(opacity=75);opacity:.75}}.cropper-bg{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC)}.cropper-invisible{filter:alpha(opacity=0);opacity:0}.cropper-hide{position:fixed;top:0;left:0;z-index:-1;width:auto!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:0!important;max-height:none!important;filter:alpha(opacity=0);opacity:0}.cropper-hidden{display:none!important}.cropper-move{cursor:move}.cropper-crop{cursor:crosshair}.cropper-disabled .cropper-canvas,.cropper-disabled .cropper-face,.cropper-disabled .cropper-line,.cropper-disabled .cropper-point{cursor:not-allowed} -------------------------------------------------------------------------------- /public/files/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/public/files/.gitkeep -------------------------------------------------------------------------------- /public/files/adobe.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/public/files/adobe.pdf -------------------------------------------------------------------------------- /public/files/folder-1/sleeping-dog.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/public/files/folder-1/sleeping-dog.jpg -------------------------------------------------------------------------------- /public/files/word.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/public/files/word.docx -------------------------------------------------------------------------------- /public/images/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/public/images/.gitkeep -------------------------------------------------------------------------------- /public/images/test-folder/sleeping-dog.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/public/images/test-folder/sleeping-dog.jpg -------------------------------------------------------------------------------- /public/images/test-folder/thumbs/sleeping-dog.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/public/images/test-folder/thumbs/sleeping-dog.jpg -------------------------------------------------------------------------------- /public/img/152px color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/public/img/152px color.png -------------------------------------------------------------------------------- /public/img/72px color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/public/img/72px color.png -------------------------------------------------------------------------------- /public/img/92px color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/public/img/92px color.png -------------------------------------------------------------------------------- /public/img/Logomark color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/public/img/Logomark color.png -------------------------------------------------------------------------------- /public/img/folder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UniSharp/laravel-filemanager/e82f8f65e1df7b55075a791c5bc97cf35724449d/public/img/folder.png -------------------------------------------------------------------------------- /public/img/loader.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 12 | 13 | 14 | 18 | 22 | 23 | 24 | 28 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /public/js/filemanager.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Open file manager and return selected files. 3 | * Promise is never resolved if window is closed. 4 | * 5 | * @returns Promise Array of selected files with properties: 6 | * icon string 7 | * is_file bool 8 | * is_image bool 9 | * name string 10 | * thumb_url string|null 11 | * time int 12 | * url string 13 | */ 14 | window.filemanager = function filemanager() { 15 | var url = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '/filemanager'; 16 | var target = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'FileManager'; 17 | var features = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'width=900,height=600'; 18 | return new Promise(function (resolve) { 19 | window.open(url, target, features); 20 | window.SetUrl = resolve; 21 | }); 22 | }; 23 | -------------------------------------------------------------------------------- /public/js/filemanager.min.js: -------------------------------------------------------------------------------- 1 | window.filemanager=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/filemanager",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"FileManager",i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"width=900,height=600";return new Promise(function(o){window.open(n,e,i),window.SetUrl=o})}; -------------------------------------------------------------------------------- /public/js/stand-alone-button.js: -------------------------------------------------------------------------------- 1 | (function( $ ){ 2 | 3 | $.fn.filemanager = function(type, options) { 4 | type = type || 'file'; 5 | 6 | this.on('click', function(e) { 7 | var route_prefix = (options && options.prefix) ? options.prefix : '/filemanager'; 8 | var target_input = $('#' + $(this).data('input')); 9 | var target_preview = $('#' + $(this).data('preview')); 10 | window.open(route_prefix + '?type=' + type, 'FileManager', 'width=900,height=600'); 11 | window.SetUrl = function (items) { 12 | var file_path = items.map(function (item) { 13 | return item.url; 14 | }).join(','); 15 | 16 | // set the value of the desired input to image url 17 | target_input.val('').val(file_path).trigger('change'); 18 | 19 | // clear previous preview 20 | target_preview.html(''); 21 | 22 | // set or change the preview image src 23 | items.forEach(function (item) { 24 | target_preview.append( 25 | $('').css('height', '5rem').attr('src', item.thumb_url) 26 | ); 27 | }); 28 | 29 | // trigger change event 30 | target_preview.trigger('change'); 31 | }; 32 | return false; 33 | }); 34 | } 35 | 36 | })(jQuery); 37 | -------------------------------------------------------------------------------- /src/Controllers/Controller.php: -------------------------------------------------------------------------------- 1 | with([ 21 | 'working_dir' => request('working_dir'), 22 | 'img' => $this->lfm->pretty(request('img')) 23 | ]); 24 | } 25 | 26 | /** 27 | * Crop the image (called via ajax). 28 | */ 29 | public function getCropImage($overWrite = true) 30 | { 31 | $image_name = request('img'); 32 | $image_path = $this->lfm->setName($image_name)->path('absolute'); 33 | $crop_path = $image_path; 34 | 35 | if (! $overWrite) { 36 | $fileParts = explode('.', $image_name); 37 | $fileParts[count($fileParts) - 2] = $fileParts[count($fileParts) - 2] . '_cropped_' . time(); 38 | $crop_path = $this->lfm->setName(implode('.', $fileParts))->path('absolute'); 39 | } 40 | 41 | event(new ImageIsCropping($image_path)); 42 | 43 | $crop_info = request()->only('dataWidth', 'dataHeight', 'dataX', 'dataY'); 44 | 45 | // crop image 46 | if (class_exists(InterventionImageV2::class)) { 47 | InterventionImageV2::make($image_path) 48 | ->crop(...array_values($crop_info)) 49 | ->save($crop_path); 50 | } else { 51 | InterventionImageV3::read($image_path) 52 | ->crop(...array_values($crop_info)) 53 | ->save($crop_path); 54 | } 55 | 56 | // make new thumbnail 57 | $this->lfm->generateThumbnail($image_name); 58 | 59 | event(new ImageWasCropped($image_path)); 60 | } 61 | 62 | public function getNewCropImage() 63 | { 64 | $this->getCropimage(false); 65 | } 66 | } 67 | -------------------------------------------------------------------------------- /src/Controllers/DeleteController.php: -------------------------------------------------------------------------------- 1 | lfm->setName($name_to_delete); 27 | 28 | if ($file->isDirectory()) { 29 | event(new FolderIsDeleting($file->path('absolute'))); 30 | } else { 31 | event(new FileIsDeleting($file->path('absolute'))); 32 | event(new ImageIsDeleting($file->path('absolute'))); 33 | } 34 | 35 | if (!Storage::disk($this->helper->config('disk'))->exists($file->path('storage'))) { 36 | abort(404); 37 | } 38 | 39 | $file_to_delete = $this->lfm->pretty($name_to_delete); 40 | $file_path = $file_to_delete->path('absolute'); 41 | 42 | if (is_null($name_to_delete)) { 43 | array_push($errors, parent::error('folder-name')); 44 | continue; 45 | } 46 | 47 | if (! $this->lfm->setName($name_to_delete)->exists()) { 48 | array_push($errors, parent::error('folder-not-found', ['folder' => $file_path])); 49 | continue; 50 | } 51 | 52 | if ($this->lfm->setName($name_to_delete)->isDirectory()) { 53 | if (! $this->lfm->setName($name_to_delete)->directoryIsEmpty()) { 54 | array_push($errors, parent::error('delete-folder')); 55 | continue; 56 | } 57 | 58 | $this->lfm->setName($name_to_delete)->delete(); 59 | 60 | event(new FolderWasDeleted($file_path)); 61 | } else { 62 | if ($file_to_delete->isImage()) { 63 | $this->lfm->setName($name_to_delete)->thumb()->delete(); 64 | } 65 | 66 | $this->lfm->setName($name_to_delete)->delete(); 67 | 68 | event(new FileWasDeleted($file_path)); 69 | event(new ImageWasDeleted($file_path)); 70 | } 71 | } 72 | 73 | if (count($errors) > 0) { 74 | return response()->json($errors, 400); 75 | } 76 | 77 | return parent::$success_response; 78 | } 79 | } 80 | -------------------------------------------------------------------------------- /src/Controllers/DemoController.php: -------------------------------------------------------------------------------- 1 | lfm->setName(request('file')); 12 | 13 | if (!Storage::disk($this->helper->config('disk'))->exists($file->path('storage'))) { 14 | abort(404); 15 | } 16 | 17 | return Storage::disk($this->helper->config('disk'))->download($file->path('storage')); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/Controllers/FolderController.php: -------------------------------------------------------------------------------- 1 | helper->allowFolderType($type); 19 | }); 20 | 21 | return view('laravel-filemanager::tree') 22 | ->with([ 23 | 'root_folders' => array_map(function ($type) use ($folder_types) { 24 | $path = $this->lfm->dir($this->helper->getRootFolder($type)); 25 | 26 | return (object) [ 27 | 'name' => trans('laravel-filemanager::lfm.title-' . $type), 28 | 'url' => $path->path('working_dir'), 29 | 'children' => $path->folders(), 30 | 'has_next' => ! ($type == end($folder_types)), 31 | ]; 32 | }, $folder_types), 33 | ]); 34 | } 35 | 36 | /** 37 | * Add a new folder. 38 | * 39 | * @return mixed 40 | */ 41 | public function getAddfolder() 42 | { 43 | $folder_name = $this->helper->input('name'); 44 | 45 | $new_path = $this->lfm->setName($folder_name)->path('absolute'); 46 | 47 | event(new FolderIsCreating($new_path)); 48 | 49 | try { 50 | if ($folder_name === null || $folder_name == '') { 51 | return $this->helper->error('folder-name'); 52 | } elseif ($this->lfm->setName($folder_name)->exists()) { 53 | return $this->helper->error('folder-exist'); 54 | } elseif (config('lfm.alphanumeric_directory') && preg_match('/[^\w-]/i', $folder_name)) { 55 | return $this->helper->error('folder-alnum'); 56 | } else { 57 | $this->lfm->setName($folder_name)->createFolder(); 58 | } 59 | } catch (\Exception $e) { 60 | return $e->getMessage(); 61 | } 62 | 63 | event(new FolderWasCreated($new_path)); 64 | 65 | return parent::$success_response; 66 | } 67 | } 68 | -------------------------------------------------------------------------------- /src/Controllers/ItemsController.php: -------------------------------------------------------------------------------- 1 | helper->getPaginationPerPage(); 23 | $items = array_merge($this->lfm->folders(), $this->lfm->files()); 24 | 25 | return [ 26 | 'items' => array_map(function ($item) { 27 | return $item->fill()->attributes; 28 | }, array_slice($items, ($currentPage - 1) * $perPage, $perPage)), 29 | 'paginator' => [ 30 | 'current_page' => $currentPage, 31 | 'total' => count($items), 32 | 'per_page' => $perPage, 33 | ], 34 | 'display' => $this->helper->getDisplayMode(), 35 | 'working_dir' => $this->lfm->path('working_dir'), 36 | ]; 37 | } 38 | 39 | public function move() 40 | { 41 | $items = request('items'); 42 | $folder_types = array_filter(['user', 'share'], function ($type) { 43 | return $this->helper->allowFolderType($type); 44 | }); 45 | return view('laravel-filemanager::move') 46 | ->with([ 47 | 'root_folders' => array_map(function ($type) use ($folder_types) { 48 | $path = $this->lfm->dir($this->helper->getRootFolder($type)); 49 | 50 | return (object) [ 51 | 'name' => trans('laravel-filemanager::lfm.title-' . $type), 52 | 'url' => $path->path('working_dir'), 53 | 'children' => $path->folders(), 54 | 'has_next' => ! ($type == end($folder_types)), 55 | ]; 56 | }, $folder_types), 57 | ]) 58 | ->with('items', $items); 59 | } 60 | 61 | public function doMove() 62 | { 63 | $target = $this->helper->input('goToFolder'); 64 | $items = $this->helper->input('items'); 65 | 66 | foreach ($items as $item) { 67 | $old_file = $this->lfm->pretty($item); 68 | $is_directory = $old_file->isDirectory(); 69 | 70 | $file = $this->lfm->setName($item); 71 | 72 | if (!Storage::disk($this->helper->config('disk'))->exists($file->path('storage'))) { 73 | abort(404); 74 | } 75 | 76 | $old_path = $old_file->path(); 77 | 78 | if ($old_file->hasThumb()) { 79 | $new_file = $this->lfm->setName($item)->thumb()->dir($target); 80 | if ($is_directory) { 81 | event(new FolderIsMoving($old_file->path(), $new_file->path())); 82 | } else { 83 | event(new FileIsMoving($old_file->path(), $new_file->path())); 84 | } 85 | $this->lfm->setName($item)->thumb()->move($new_file); 86 | } 87 | $new_file = $this->lfm->setName($item)->dir($target); 88 | $this->lfm->setName($item)->move($new_file); 89 | if ($is_directory) { 90 | event(new FolderWasMoving($old_path, $new_file->path())); 91 | } else { 92 | event(new FileWasMoving($old_path, $new_file->path())); 93 | } 94 | }; 95 | 96 | return parent::$success_response; 97 | } 98 | 99 | private static function getCurrentPageFromRequest() 100 | { 101 | $currentPage = (int) request()->get('page', 1); 102 | $currentPage = $currentPage < 1 ? 1 : $currentPage; 103 | 104 | return $currentPage; 105 | } 106 | } 107 | -------------------------------------------------------------------------------- /src/Controllers/LfmController.php: -------------------------------------------------------------------------------- 1 | applyIniOverrides(); 15 | } 16 | 17 | /** 18 | * Set up needed functions. 19 | * 20 | * @return object|null 21 | */ 22 | public function __get($var_name) 23 | { 24 | if ($var_name === 'lfm') { 25 | return app(LfmPath::class); 26 | } elseif ($var_name === 'helper') { 27 | return app(Lfm::class); 28 | } 29 | } 30 | 31 | /** 32 | * Show the filemanager. 33 | * 34 | * @return mixed 35 | */ 36 | public function show() 37 | { 38 | return view('laravel-filemanager::index') 39 | ->withHelper($this->helper); 40 | } 41 | 42 | /** 43 | * Check if any extension or config is missing. 44 | * 45 | * @return array 46 | */ 47 | public function getErrors() 48 | { 49 | $arr_errors = []; 50 | 51 | if (! extension_loaded('gd') && ! extension_loaded('imagick')) { 52 | array_push($arr_errors, trans('laravel-filemanager::lfm.message-extension_not_found')); 53 | } 54 | 55 | if (! extension_loaded('exif')) { 56 | array_push($arr_errors, 'EXIF extension not found.'); 57 | } 58 | 59 | if (! extension_loaded('fileinfo')) { 60 | array_push($arr_errors, 'Fileinfo extension not found.'); 61 | } 62 | 63 | $mine_config_key = 'lfm.folder_categories.' 64 | . $this->helper->currentLfmType() 65 | . '.valid_mime'; 66 | 67 | if (! is_array(config($mine_config_key))) { 68 | array_push($arr_errors, 'Config : ' . $mine_config_key . ' is not a valid array.'); 69 | } 70 | 71 | return $arr_errors; 72 | } 73 | 74 | /** 75 | * Overrides settings in php.ini. 76 | * 77 | * @return null 78 | */ 79 | private function applyIniOverrides() 80 | { 81 | $overrides = config('lfm.php_ini_overrides', []); 82 | 83 | if ($overrides && is_array($overrides) && count($overrides) === 0) { 84 | return; 85 | } 86 | 87 | foreach ($overrides as $key => $value) { 88 | if ($value && $value != 'false') { 89 | ini_set($key, $value); 90 | } 91 | } 92 | } 93 | 94 | // TODO: remove this after refactoring RenameController and DeleteController 95 | protected function error($error_type, $variables = []) 96 | { 97 | return trans(Lfm::PACKAGE_NAME . '::lfm.error-' . $error_type, $variables); 98 | } 99 | } 100 | -------------------------------------------------------------------------------- /src/Controllers/RedirectController.php: -------------------------------------------------------------------------------- 1 | helper->config('disk')); 12 | 13 | if (! $storage->exists($file_path)) { 14 | abort(404); 15 | } 16 | 17 | return response($storage->get($file_path)) 18 | ->header('Content-Type', $storage->mimeType($file_path)); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/Controllers/RenameController.php: -------------------------------------------------------------------------------- 1 | helper->input('file'); 18 | $new_name = $this->helper->input('new_name'); 19 | 20 | $file = $this->lfm->setName($old_name); 21 | 22 | if (!Storage::disk($this->helper->config('disk'))->exists($file->path('storage'))) { 23 | abort(404); 24 | } 25 | 26 | $old_file = $this->lfm->pretty($old_name); 27 | 28 | $is_directory = $file->isDirectory(); 29 | 30 | if (empty($new_name)) { 31 | if ($is_directory) { 32 | return response()->json(parent::error('folder-name'), 400); 33 | } else { 34 | return response()->json(parent::error('file-name'), 400); 35 | } 36 | } 37 | 38 | if ($is_directory && config('lfm.alphanumeric_directory') && preg_match('/[^\w-]/i', $new_name)) { 39 | return response()->json(parent::error('folder-alnum'), 400); 40 | } elseif (config('lfm.alphanumeric_filename') && preg_match('/[^.\w-]/i', $new_name)) { 41 | return response()->json(parent::error('file-alnum'), 400); 42 | } elseif ($this->lfm->setName($new_name)->exists()) { 43 | return response()->json(parent::error('rename'), 400); 44 | } 45 | 46 | if (! $is_directory) { 47 | $extension = $old_file->extension(); 48 | if ($extension) { 49 | $new_name = str_replace('.' . $extension, '', $new_name) . '.' . $extension; 50 | } 51 | } 52 | 53 | $new_path = $this->lfm->setName($new_name)->path('absolute'); 54 | 55 | if ($is_directory) { 56 | event(new FolderIsRenaming($old_file->path(), $new_path)); 57 | } else { 58 | event(new FileIsRenaming($old_file->path(), $new_path)); 59 | event(new ImageIsRenaming($old_file->path(), $new_path)); 60 | } 61 | 62 | $old_path = $old_file->path(); 63 | 64 | if ($old_file->hasThumb()) { 65 | $this->lfm->setName($old_name)->thumb() 66 | ->move($this->lfm->setName($new_name)->thumb()); 67 | } 68 | 69 | $this->lfm->setName($old_name) 70 | ->move($this->lfm->setName($new_name)); 71 | 72 | if ($is_directory) { 73 | event(new FolderWasRenamed($old_path, $new_path)); 74 | } else { 75 | event(new FileWasRenamed($old_path, $new_path)); 76 | event(new ImageWasRenamed($old_path, $new_path)); 77 | } 78 | 79 | return parent::$success_response; 80 | } 81 | } 82 | -------------------------------------------------------------------------------- /src/Controllers/ResizeController.php: -------------------------------------------------------------------------------- 1 | lfm->setName($image)->path('absolute')); 24 | } else { 25 | $original_image = InterventionImageV3::read($this->lfm->setName($image)->path('absolute')); 26 | } 27 | $original_width = $original_image->width(); 28 | $original_height = $original_image->height(); 29 | 30 | $scaled = false; 31 | 32 | // FIXME size should be configurable 33 | if ($original_width > 600) { 34 | $ratio = 600 / $original_width; 35 | $width = $original_width * $ratio; 36 | $height = $original_height * $ratio; 37 | $scaled = true; 38 | } else { 39 | $width = $original_width; 40 | $height = $original_height; 41 | } 42 | 43 | if ($height > 400) { 44 | $ratio = 400 / $original_height; 45 | $width = $original_width * $ratio; 46 | $height = $original_height * $ratio; 47 | $scaled = true; 48 | } 49 | 50 | return view('laravel-filemanager::resize') 51 | ->with('img', $this->lfm->pretty($image)) 52 | ->with('height', number_format($height, 0)) 53 | ->with('width', $width) 54 | ->with('original_height', $original_height) 55 | ->with('original_width', $original_width) 56 | ->with('scaled', $scaled) 57 | ->with('ratio', $ratio); 58 | } 59 | 60 | public function performResize($overWrite = true) 61 | { 62 | $image_name = request('img'); 63 | $image_path = $this->lfm->setName(request('img'))->path('absolute'); 64 | $resize_path = $image_path; 65 | 66 | if (! $overWrite) { 67 | $fileParts = explode('.', $image_name); 68 | $fileParts[count($fileParts) - 2] = $fileParts[count($fileParts) - 2] . '_resized_' . time(); 69 | $resize_path = $this->lfm->setName(implode('.', $fileParts))->path('absolute'); 70 | } 71 | 72 | event(new ImageIsResizing($image_path)); 73 | 74 | if (class_exists(InterventionImageV2::class)) { 75 | InterventionImageV2::make($image_path) 76 | ->resize(request('dataWidth'), request('dataHeight')) 77 | ->save($resize_path); 78 | } else { 79 | InterventionImageV3::read($image_path) 80 | ->resize(request('dataWidth'), request('dataHeight')) 81 | ->save($resize_path); 82 | } 83 | event(new ImageWasResized($image_path)); 84 | 85 | return parent::$success_response; 86 | } 87 | 88 | public function performResizeNew() 89 | { 90 | $this->performResize(false); 91 | } 92 | } 93 | -------------------------------------------------------------------------------- /src/Controllers/UploadController.php: -------------------------------------------------------------------------------- 1 | errors = []; 17 | } 18 | 19 | /** 20 | * Upload files 21 | * 22 | * @param void 23 | * 24 | * @return JsonResponse 25 | */ 26 | public function upload() 27 | { 28 | $uploaded_files = request()->file('upload'); 29 | $error_bag = []; 30 | $new_filename = null; 31 | 32 | foreach (is_array($uploaded_files) ? $uploaded_files : [$uploaded_files] as $file) { 33 | try { 34 | $this->lfm->validateUploadedFile($file); 35 | 36 | $new_filename = $this->lfm->upload($file); 37 | } catch (\Exception $e) { 38 | Log::error($e->getMessage(), [ 39 | 'file' => $e->getFile(), 40 | 'line' => $e->getLine(), 41 | 'trace' => $e->getTraceAsString() 42 | ]); 43 | array_push($error_bag, $e->getMessage()); 44 | } catch (\Error $e) { 45 | Log::error($e->getMessage(), [ 46 | 'file' => $e->getFile(), 47 | 'line' => $e->getLine(), 48 | 'trace' => $e->getTraceAsString() 49 | ]); 50 | array_push($error_bag, 'Some error occured during uploading.'); 51 | } 52 | } 53 | 54 | if (is_array($uploaded_files)) { 55 | $response = count($error_bag) > 0 ? $error_bag : parent::$success_response; 56 | } else { // upload via ckeditor5 expects json responses 57 | if (is_null($new_filename)) { 58 | $response = [ 59 | 'error' => [ 'message' => $error_bag[0] ] 60 | ]; 61 | } else { 62 | $url = $this->lfm->setName($new_filename)->url(); 63 | 64 | $response = [ 65 | 'url' => $url, 66 | 'uploaded' => $url 67 | ]; 68 | } 69 | } 70 | 71 | return response()->json($response); 72 | } 73 | } 74 | -------------------------------------------------------------------------------- /src/Events/FileIsDeleting.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Events/FileIsMoving.php: -------------------------------------------------------------------------------- 1 | old_path = $old_path; 13 | $this->new_path = $new_path; 14 | } 15 | 16 | /** 17 | * @return string 18 | */ 19 | public function oldPath() 20 | { 21 | return $this->old_path; 22 | } 23 | 24 | public function newPath() 25 | { 26 | return $this->new_path; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/Events/FileIsRenaming.php: -------------------------------------------------------------------------------- 1 | old_path = $old_path; 13 | $this->new_path = $new_path; 14 | } 15 | 16 | /** 17 | * @return string 18 | */ 19 | public function oldPath() 20 | { 21 | return $this->old_path; 22 | } 23 | 24 | public function newPath() 25 | { 26 | return $this->new_path; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/Events/FileIsUploading.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Events/FileWasDeleted.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Events/FileWasMoving.php: -------------------------------------------------------------------------------- 1 | old_path = $old_path; 13 | $this->new_path = $new_path; 14 | } 15 | 16 | /** 17 | * @return string 18 | */ 19 | public function oldPath() 20 | { 21 | return $this->old_path; 22 | } 23 | 24 | public function newPath() 25 | { 26 | return $this->new_path; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/Events/FileWasRenamed.php: -------------------------------------------------------------------------------- 1 | old_path = $old_path; 13 | $this->new_path = $new_path; 14 | } 15 | 16 | /** 17 | * @return string 18 | */ 19 | public function oldPath() 20 | { 21 | return $this->old_path; 22 | } 23 | 24 | public function newPath() 25 | { 26 | return $this->new_path; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/Events/FileWasUploaded.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Events/FolderIsCreating.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Events/FolderIsDeleting.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Events/FolderIsMoving.php: -------------------------------------------------------------------------------- 1 | old_path = $old_path; 13 | $this->new_path = $new_path; 14 | } 15 | 16 | /** 17 | * @return string 18 | */ 19 | public function oldPath() 20 | { 21 | return $this->old_path; 22 | } 23 | 24 | public function newPath() 25 | { 26 | return $this->new_path; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/Events/FolderIsRenaming.php: -------------------------------------------------------------------------------- 1 | old_path = $old_path; 13 | $this->new_path = $new_path; 14 | } 15 | 16 | /** 17 | * @return string 18 | */ 19 | public function oldPath() 20 | { 21 | return $this->old_path; 22 | } 23 | 24 | public function newPath() 25 | { 26 | return $this->new_path; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/Events/FolderWasCreated.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Events/FolderWasDeleted.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Events/FolderWasMoving.php: -------------------------------------------------------------------------------- 1 | old_path = $old_path; 13 | $this->new_path = $new_path; 14 | } 15 | 16 | /** 17 | * @return string 18 | */ 19 | public function oldPath() 20 | { 21 | return $this->old_path; 22 | } 23 | 24 | public function newPath() 25 | { 26 | return $this->new_path; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/Events/FolderWasRenamed.php: -------------------------------------------------------------------------------- 1 | old_path = $old_path; 13 | $this->new_path = $new_path; 14 | } 15 | 16 | /** 17 | * @return string 18 | */ 19 | public function oldPath() 20 | { 21 | return $this->old_path; 22 | } 23 | 24 | public function newPath() 25 | { 26 | return $this->new_path; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/Events/ImageIsCropping.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Events/ImageIsDeleting.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Events/ImageIsRenaming.php: -------------------------------------------------------------------------------- 1 | old_path = $old_path; 13 | $this->new_path = $new_path; 14 | } 15 | 16 | /** 17 | * @return string 18 | */ 19 | public function oldPath() 20 | { 21 | return $this->old_path; 22 | } 23 | 24 | public function newPath() 25 | { 26 | return $this->new_path; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/Events/ImageIsResizing.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Events/ImageIsUploading.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Events/ImageWasCropped.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Events/ImageWasDeleted.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Events/ImageWasRenamed.php: -------------------------------------------------------------------------------- 1 | old_path = $old_path; 13 | $this->new_path = $new_path; 14 | } 15 | 16 | /** 17 | * @return string 18 | */ 19 | public function oldPath() 20 | { 21 | return $this->old_path; 22 | } 23 | 24 | public function newPath() 25 | { 26 | return $this->new_path; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/Events/ImageWasResized.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Events/ImageWasUploaded.php: -------------------------------------------------------------------------------- 1 | path = $path; 12 | } 13 | 14 | /** 15 | * @return string 16 | */ 17 | public function path() 18 | { 19 | return $this->path; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Exceptions/DuplicateFileNameException.php: -------------------------------------------------------------------------------- 1 | message = trans('laravel-filemanager::lfm.error-file-exist'); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Exceptions/EmptyFileException.php: -------------------------------------------------------------------------------- 1 | message = trans('laravel-filemanager::lfm.error-file-empty'); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Exceptions/ExcutableFileException.php: -------------------------------------------------------------------------------- 1 | message = 'Invalid file detected'; 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Exceptions/FileFailedToUploadException.php: -------------------------------------------------------------------------------- 1 | message = 'File failed to upload. Error code: ' . $error_code; 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Exceptions/FileSizeExceedConfigurationMaximumException.php: -------------------------------------------------------------------------------- 1 | message = trans('laravel-filemanager::lfm.error-size') . $file_size; 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Exceptions/FileSizeExceedIniMaximumException.php: -------------------------------------------------------------------------------- 1 | message = trans('laravel-filemanager::lfm.error-file-size', ['max' => ini_get('upload_max_filesize')]); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Exceptions/InvalidExtensionException.php: -------------------------------------------------------------------------------- 1 | message = 'File extension is not valid.'; 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Exceptions/InvalidMimeTypeException.php: -------------------------------------------------------------------------------- 1 | message = trans('laravel-filemanager::lfm.error-mime') . $mimetype; 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Handlers/ConfigHandler.php: -------------------------------------------------------------------------------- 1 | id(); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Handlers/LfmConfigHandler.php: -------------------------------------------------------------------------------- 1 | loadTranslationsFrom(__DIR__.'/lang', 'laravel-filemanager'); 21 | 22 | $this->loadViewsFrom(__DIR__.'/views', 'laravel-filemanager'); 23 | 24 | $this->publishes([ 25 | __DIR__ . '/config/lfm.php' => base_path('config/lfm.php'), 26 | ], 'lfm_config'); 27 | 28 | $this->publishes([ 29 | __DIR__.'/../public' => public_path('vendor/laravel-filemanager'), 30 | ], 'lfm_public'); 31 | 32 | $this->publishes([ 33 | __DIR__.'/views' => base_path('resources/views/vendor/laravel-filemanager'), 34 | ], 'lfm_view'); 35 | 36 | $this->publishes([ 37 | __DIR__.'/Handlers/LfmConfigHandler.php' => base_path('app/Handlers/LfmConfigHandler.php'), 38 | ], 'lfm_handler'); 39 | 40 | if (config('lfm.use_package_routes')) { 41 | Route::group(['prefix' => 'filemanager', 'middleware' => ['web', 'auth']], function () { 42 | \UniSharp\LaravelFilemanager\Lfm::routes(); 43 | }); 44 | } 45 | } 46 | 47 | /** 48 | * Register the application services. 49 | * 50 | * @return void 51 | */ 52 | public function register() 53 | { 54 | $this->mergeConfigFrom(__DIR__ . '/config/lfm.php', 'lfm-config'); 55 | 56 | $this->app->singleton('laravel-filemanager', function () { 57 | return true; 58 | }); 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /src/LfmStorageRepository.php: -------------------------------------------------------------------------------- 1 | helper = $helper; 16 | $this->disk = Storage::disk($this->helper->config('disk')); 17 | $this->path = $storage_path; 18 | } 19 | 20 | public function __call($function_name, $arguments) 21 | { 22 | // TODO: check function exists 23 | return $this->disk->$function_name($this->path, ...$arguments); 24 | } 25 | 26 | public function rootPath() 27 | { 28 | return $this->disk->path(''); 29 | } 30 | 31 | public function move($new_lfm_path) 32 | { 33 | return $this->disk->move($this->path, $new_lfm_path->path('storage')); 34 | } 35 | 36 | public function save($file) 37 | { 38 | $nameint = strripos($this->path, "/"); 39 | $nameclean = substr($this->path, $nameint + 1); 40 | $pathclean = substr_replace($this->path, "", $nameint); 41 | $this->disk->putFileAs($pathclean, $file, $nameclean, 'public'); 42 | } 43 | 44 | public function url($path) 45 | { 46 | return $this->disk->url($path); 47 | } 48 | 49 | public function makeDirectory() 50 | { 51 | $this->disk->makeDirectory($this->path, ...func_get_args()); 52 | 53 | // some filesystems (e.g. Google Storage, S3?) don't let you set ACLs on directories (because they don't exist) 54 | // https://cloud.google.com/storage/docs/naming#object-considerations 55 | if ($this->disk->has($this->path)) { 56 | $this->disk->setVisibility($this->path, 'public'); 57 | } 58 | } 59 | 60 | public function extension() 61 | { 62 | setlocale(LC_ALL, 'en_US.UTF-8'); 63 | return pathinfo($this->path, PATHINFO_EXTENSION); 64 | } 65 | } 66 | -------------------------------------------------------------------------------- /src/LfmUploadValidator.php: -------------------------------------------------------------------------------- 1 | file = $file; 27 | } 28 | 29 | // public function hasContent() 30 | // { 31 | // if (empty($this->file)) { 32 | // throw new EmptyFileException(); 33 | // } 34 | 35 | // return $this; 36 | // } 37 | 38 | public function sizeLowerThanIniMaximum() 39 | { 40 | if ($this->file->getError() == UPLOAD_ERR_INI_SIZE) { 41 | throw new FileSizeExceedIniMaximumException(); 42 | } 43 | 44 | return $this; 45 | } 46 | 47 | public function uploadWasSuccessful() 48 | { 49 | if ($this->file->getError() != UPLOAD_ERR_OK) { 50 | throw new FileFailedToUploadException($this->file->getError()); 51 | } 52 | 53 | return $this; 54 | } 55 | 56 | public function nameIsNotDuplicate($new_file_name, LfmPath $lfm_path) 57 | { 58 | if ($lfm_path->setName($new_file_name)->exists()) { 59 | throw new DuplicateFileNameException(); 60 | } 61 | 62 | return $this; 63 | } 64 | 65 | public function mimetypeIsNotExcutable($excutable_mimetypes) 66 | { 67 | $mimetype = $this->file->getMimeType(); 68 | 69 | if (in_array($mimetype, $excutable_mimetypes)) { 70 | throw new ExcutableFileException(); 71 | } 72 | 73 | return $this; 74 | } 75 | 76 | public function extensionIsNotExcutable() 77 | { 78 | $extension = strtolower($this->file->getClientOriginalExtension()); 79 | 80 | $excutable_extensions = ['php', 'html']; 81 | 82 | if (in_array($extension, $excutable_extensions)) { 83 | throw new ExcutableFileException(); 84 | } 85 | 86 | if (strpos($extension, 'php') === 0) { 87 | throw new ExcutableFileException(); 88 | } 89 | 90 | if (preg_match('/[a-z]html/', $extension) > 0) { 91 | throw new ExcutableFileException(); 92 | } 93 | 94 | return $this; 95 | } 96 | 97 | public function mimeTypeIsValid($available_mime_types) 98 | { 99 | $mimetype = $this->file->getMimeType(); 100 | 101 | if (false === in_array($mimetype, $available_mime_types)) { 102 | throw new InvalidMimeTypeException($mimetype); 103 | } 104 | 105 | return $this; 106 | } 107 | 108 | public function extensionIsValid($disallowed_extensions) 109 | { 110 | $extension = strtolower($this->file->getClientOriginalExtension()); 111 | 112 | if (preg_match('/[^a-zA-Z0-9]/', $extension) > 0) { 113 | throw new InvalidExtensionException(); 114 | } 115 | 116 | if (in_array($extension, $disallowed_extensions)) { 117 | throw new InvalidExtensionException(); 118 | } 119 | 120 | return $this; 121 | } 122 | 123 | public function sizeIsLowerThanConfiguredMaximum($max_size_in_kb) 124 | { 125 | // size to kb unit is needed 126 | $file_size_in_kb = $this->file->getSize() / 1000; 127 | 128 | if ($file_size_in_kb > $max_size_in_kb) { 129 | throw new FileSizeExceedConfigurationMaximumException($file_size_in_kb); 130 | } 131 | 132 | return $this; 133 | } 134 | } 135 | -------------------------------------------------------------------------------- /src/Middlewares/CreateDefaultFolder.php: -------------------------------------------------------------------------------- 1 | lfm = app(LfmPath::class); 17 | $this->helper = app(Lfm::class); 18 | } 19 | 20 | public function handle($request, Closure $next) 21 | { 22 | $this->checkDefaultFolderExists('user'); 23 | $this->checkDefaultFolderExists('share'); 24 | 25 | return $next($request); 26 | } 27 | 28 | private function checkDefaultFolderExists($type = 'share') 29 | { 30 | if (! $this->helper->allowFolderType($type)) { 31 | return; 32 | } 33 | 34 | $this->lfm->dir($this->helper->getRootFolder($type))->createFolder(); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /src/Middlewares/MultiUser.php: -------------------------------------------------------------------------------- 1 | helper = app(Lfm::class); 16 | } 17 | 18 | public function handle($request, Closure $next) 19 | { 20 | if ($this->helper->allowFolderType('user')) { 21 | $previous_dir = $request->input('working_dir'); 22 | $working_dir = $this->helper->getRootFolder('user'); 23 | 24 | if ($previous_dir == null) { 25 | $request->merge(compact('working_dir')); 26 | } elseif (! $this->validDir($previous_dir)) { 27 | $request->replace(compact('working_dir')); 28 | } 29 | } 30 | 31 | return $next($request); 32 | } 33 | 34 | private function validDir($previous_dir) 35 | { 36 | if (Str::startsWith($previous_dir, $this->helper->getRootFolder('share'))) { 37 | return true; 38 | } 39 | 40 | if (Str::startsWith($previous_dir, $this->helper->getRootFolder('user'))) { 41 | return true; 42 | } 43 | 44 | return false; 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /src/lang/ar/lfm.php: -------------------------------------------------------------------------------- 1 | 'الخلف', 5 | 'nav-new' => 'مجلد جديد', 6 | 'nav-upload' => 'رفع', 7 | 'nav-thumbnails' => 'مصغرات', 8 | 'nav-list' => 'قائمة', 9 | 10 | 'menu-rename' => 'إعادة تسمية', 11 | 'menu-delete' => 'حذف', 12 | 'menu-view' => 'عرض', 13 | 'menu-download' => 'تنزيل', 14 | 'menu-resize' => 'تغيير الحجم', 15 | 'menu-crop' => 'قص', 16 | 17 | 'title-page' => 'مدير الملفات', 18 | 'title-panel' => 'مدير الملفات', 19 | 'title-upload' => 'رفع ملف', 20 | 'title-view' => 'عرض الملف', 21 | 'title-user' => 'الملفات', 22 | 'title-share' => 'الملفات المشتركة', 23 | 'title-item' => 'ملف', 24 | 'title-size' => 'الحجم', 25 | 'title-type' => 'النوع', 26 | 'title-modified' => 'اخر تعديل', 27 | 'title-action' => 'اجراء', 28 | 29 | 'type-folder' => 'مجلد', 30 | 31 | 'message-empty' => 'المجلد فارغ', 32 | 'message-choose' => 'اختر ملف', 33 | 'message-delete' => 'هل انت متاكد من حذف هذا الملف', 34 | 'message-name' => 'اسم المجلد:', 35 | 'message-rename' => 'اعادة تسمية الى:', 36 | 'message-extension_not_found' => 'يجب تثبيت gd او imagick لقص او تغيير حجم الصورة.', 37 | 38 | 'error-rename' => 'اسم الملف مستخدما مسبقا!', 39 | 'error-file-empty' => 'يجب اختيارملف!', 40 | 'error-file-exist' => 'يوجد ملف سابق بنفس الاسم!', 41 | 'error-file-size' => 'File size exceeds server limit! (maximum size: :max)', 42 | 'error-delete-folder'=> 'لا يمكن حذف هذا المجلد لانه غير فارغ!', 43 | 'error-folder-name' => 'اسم المجلد لا يمكن ان يكون فاغ!', 44 | 'error-folder-exist'=> 'اسم المجلد مستخدما مسبقا!', 45 | 'error-folder-alnum'=> 'Only alphanumeric folder names are allowed!', 46 | 'error-mime' => 'نوع الملف غير معروف: ', 47 | 'error-instance' => 'The uploaded file should be an instance of UploadedFile', 48 | 'error-invalid' => 'طلب رفع غير صالح', 49 | 'error-other' => 'حدثت مشكلة: ', 50 | 'error-too-large' => 'الملف كبير جدا', 51 | 52 | 'btn-upload' => 'رفع الملف', 53 | 'btn-uploading' => 'جاري الرفع...', 54 | 'btn-close' => 'اغلاق', 55 | 'btn-crop' => 'قص', 56 | 'btn-cancel' => 'الغاء', 57 | 'btn-resize' => 'تغيير الحجم', 58 | 59 | 'resize-ratio' => 'النسبة:', 60 | 'resize-scaled' => 'تم تغيير حجم الصورة:', 61 | 'resize-true' => 'نعم', 62 | 'resize-old-height' => 'الارتفاع الاصلي:', 63 | 'resize-old-width' => 'العرض الاصلي:', 64 | 'resize-new-height' => 'الارتفاع:', 65 | 'resize-new-width' => 'العرض:', 66 | 67 | 'locale-bootbox' => 'ar', 68 | ]; 69 | -------------------------------------------------------------------------------- /src/lang/az/lfm.php: -------------------------------------------------------------------------------- 1 | 'Geri', 5 | 'nav-new' => 'Yeni qovluq', 6 | 'nav-upload' => 'Yüklə', 7 | 'nav-thumbnails' => 'Kiçik formatda (thumb)', 8 | 'nav-list' => 'Siyahı', 9 | 'nav-sort' => 'Sırala', 10 | 'nav-sort-alphabetic'=> 'A-Z Sırala', 11 | 'nav-sort-time' => 'Zamana Görə Sırala', 12 | 13 | 'menu-rename' => 'Ad dəyişmək', 14 | 'menu-delete' => 'Sil', 15 | 'menu-view' => 'Görüntülə', 16 | 'menu-download' => 'Endir', 17 | 'menu-resize' => 'Ölçüləndir', 18 | 'menu-crop' => 'Kəsmək', 19 | 'menu-move' => 'Yerini dəyiş', 20 | 'menu-multiple' => 'Multi-seçim', 21 | 22 | 'title-page' => 'Fayl menecer', 23 | 'title-panel' => 'Fayl menecer', 24 | 'title-upload' => 'Fayl yülə', 25 | 'title-view' => 'Fayla bax', 26 | 'title-root' => 'Fayllarım', 27 | 'title-shares' => 'Paylaşılan Fayllar', 28 | 'title-item' => 'Faylalr', 29 | 'title-size' => 'Böyütmək', 30 | 'title-type' => 'Tip', 31 | 'title-modified' => 'Dəyişmək', 32 | 'title-action' => 'Funksiyalar', 33 | 'title-user' => 'Fayllar', 34 | 'title-share' => 'Paylaşılmış fayllar', 35 | 36 | 'type-folder' => 'Qovluq', 37 | 38 | 'message-empty' => 'Qovluq boşdur', 39 | 'message-choose' => 'Fayl seç', 40 | 'message-delete' => 'Bu faylı silmək istədiyinizə əminsiniz?', 41 | 'message-name' => 'Qovluq adı:', 42 | 'message-rename' => 'Yeni ad:', 43 | 'message-extension_not_found' => 'Xahiş olunur , Şəkilləri kəsmək və ya yenidən ölçü vermək istəyirsinizsə gd və ya imagick genişlənmələriniz serverinizdə aktiov edin.', 44 | 'message-drop' => 'və ya yükləmək üçün faylları bura atın', 45 | 46 | 'error-rename' => 'Fayl adı artıq istifadə olunur!', 47 | 'error-file-name' => 'Dosya adı boş bırakılamaz!', 48 | 'error-file-empty' => 'Fayl adı boş ola bilməz!', 49 | 'error-file-exist' => 'Bu adda bir fayl artıq var!', 50 | 'error-file-size' => 'Fayl ölçüsü limiti keçir! (maximum ölçü: :max)', 51 | 'error-delete-folder'=> 'Qovluq boş olmadığından silmək mümkün olmadı!', 52 | 'error-folder-name' => 'Qovluq adı boş ola bilməz!', 53 | 'error-folder-exist'=> 'Bu adda qovluq artıq var!', 54 | 'error-folder-alnum'=> 'Yalnız hərf və rəqəmdən ibarət adlara icazə verilir', 55 | 'error-folder-not-found'=> 'Qovluq tapılmadı! (:folder)', 56 | 'error-mime' => 'İcazə verilməyən fayl tipi: ', 57 | 'error-size' => 'Həcm limiti keçir:', 58 | 'error-instance' => 'Yüklənən fayl, UploadedFile nümunəsi kimi olmalıdır', 59 | 'error-invalid' => 'Yükləmə istəyi doğru deyil', 60 | 'error-other' => 'Xəta bax verdi: ', 61 | 'error-too-large' => 'Yüklənmə sayı limiti keçir!', 62 | 63 | 'btn-upload' => 'Yüklə', 64 | 'btn-uploading' => 'Yüklenir...', 65 | 'btn-close' => 'Bağla', 66 | 'btn-crop' => 'Kəs', 67 | 'btn-copy-crop' => 'Kopyala & Kəs', 68 | 'btn-cancel' => 'İmtina', 69 | 'btn-resize' => 'Ölçünü dəyiş', 70 | 'btn-crop-free' => 'Sərbəst', 71 | 'btn-confirm' => 'Təsdiq et', 72 | 'btn-open' => 'Qovluğu aç', 73 | 74 | 'resize-ratio' => 'Nisbət:', 75 | 'resize-scaled' => 'Böyüdüldü:', 76 | 'resize-true' => 'Bəli', 77 | 'resize-old-height' => 'Original Hündürlür:', 78 | 'resize-old-width' => 'Original En:', 79 | 'resize-new-height' => 'Hündürlük:', 80 | 'resize-new-width' => 'En:', 81 | 82 | 'locale-bootbox' => 'az', 83 | ]; 84 | -------------------------------------------------------------------------------- /src/lang/bg/lfm.php: -------------------------------------------------------------------------------- 1 | 'Назад', 5 | 'nav-new' => 'Нова Папка', 6 | 'nav-upload' => 'Качване', 7 | 'nav-thumbnails' => 'Тъмб', 8 | 'nav-list' => 'Списък', 9 | 10 | 'menu-rename' => 'Преименувай', 11 | 'menu-delete' => 'Изтрии', 12 | 'menu-view' => 'Преглед', 13 | 'menu-download' => 'Свали', 14 | 'menu-resize' => 'Оразмер', 15 | 'menu-crop' => 'Отрежи', 16 | 17 | 'title-page' => 'Файлов мениджър', 18 | 'title-panel' => 'Laravel FileManager', 19 | 'title-upload' => 'Качи файл', 20 | 'title-view' => 'Виж файл', 21 | 'title-user' => 'Файлове', 22 | 'title-share' => 'Споделени Файлове', 23 | 'title-item' => 'Елемент', 24 | 'title-size' => 'Размер', 25 | 'title-type' => 'Тип', 26 | 'title-modified' => 'Модифицирано', 27 | 'title-action' => 'Действие', 28 | 29 | 'type-folder' => 'Папка', 30 | 31 | 'message-empty' => 'Папката е празна.', 32 | 'message-choose' => 'Избери файл', 33 | 'message-delete' => 'Сигурни ли сте, че изкате да изтриете този елемент ?', 34 | 'message-name' => 'Име на папка:', 35 | 'message-rename' => 'Преименувай на:', 36 | 'message-extension_not_found' => '(translation wanted)', 37 | 38 | 'error-rename' => 'Името е заето!', 39 | 'error-file-empty' => 'Трябва да изберете файл !', 40 | 'error-file-exist' => 'Файл с това име вече съществува!', 41 | 'error-file-size' => 'File size exceeds server limit! (maximum size: :max)', 42 | 'error-delete-folder'=> 'Не можете да изтриете тази папка, защото не е празна!', 43 | 'error-folder-name' => 'Моля изберете име на папката', 44 | 'error-folder-exist'=> 'Папка с това име вече съществува!', 45 | 'error-folder-alnum'=> 'Only alphanumeric folder names are allowed!', 46 | 'error-mime' => 'Грешен тип на файла: ', 47 | 'error-instance' => 'The uploaded file should be an instance of UploadedFile ( Грешка )', 48 | 'error-invalid' => 'Невалидна заявка за качване', 49 | 50 | 'btn-upload' => 'Качи файл', 51 | 'btn-uploading' => 'Качване...', 52 | 'btn-close' => 'Затвори', 53 | 'btn-crop' => 'Отрежи', 54 | 'btn-cancel' => 'Откажи', 55 | 'btn-resize' => 'Оразмери', 56 | 57 | 'resize-ratio' => 'Аспект:', 58 | 'resize-scaled' => 'Image scaled:', 59 | 'resize-true' => 'Да', 60 | 'resize-old-height' => 'Оригинална височина:', 61 | 'resize-old-width' => 'Оригинална широчина:', 62 | 'resize-new-height' => 'Височина:', 63 | 'resize-new-width' => 'Широчина:', 64 | 65 | 'locale-bootbox' => 'bg', 66 | ]; 67 | -------------------------------------------------------------------------------- /src/lang/cs/lfm.php: -------------------------------------------------------------------------------- 1 | 'Zpět', 5 | 'nav-new' => 'Nová složka', 6 | 'nav-upload' => 'Nahrát', 7 | 'nav-thumbnails' => 'Zmenšeniny', 8 | 'nav-list' => 'Seznam', 9 | 'nav-sort' => 'Seřadit', 10 | 'nav-sort-alphabetic'=> 'Seřadit podle abecedy', 11 | 'nav-sort-time' => 'Seřadit podle času', 12 | 13 | 'menu-rename' => 'Přejmenovat', 14 | 'menu-delete' => 'Smazat', 15 | 'menu-view' => 'Zobrazit', 16 | 'menu-download' => 'Stáhnout', 17 | 'menu-resize' => 'Zmenšit', 18 | 'menu-crop' => 'Oříznout', 19 | 'menu-move' => 'Přesunout', 20 | 'menu-multiple' => 'Vybrat více souborů', 21 | 22 | 'title-page' => 'File Manager', 23 | 'title-panel' => 'Laravel FileManager', 24 | 'title-upload' => 'Nahrát soubor(y)', 25 | 'title-view' => 'Zobrazit soubor', 26 | 'title-user' => 'Soubory', 27 | 'title-share' => 'Sdílené soubory', 28 | 'title-item' => 'Položka', 29 | 'title-size' => 'Velikost', 30 | 'title-type' => 'Typ', 31 | 'title-modified' => 'Modifikované', 32 | 'title-action' => 'Akce', 33 | 34 | 'type-folder' => 'Složka', 35 | 36 | 'message-empty' => 'Složka je prázdna.', 37 | 'message-choose' => 'Vyberte soubor (y)', 38 | 'message-delete' => 'Opravdu chcete smazat tuto položku?', 39 | 'message-name' => 'Název složky:', 40 | 'message-rename' => 'Přejmenovat na:', 41 | 'message-extension_not_found' => 'Prosíme nainstalujte gd nebo Imagick rozšíření pro ořezávání, zmenšování nebo vytváření zmenšenin obrázků.', 42 | 'message-drop' => 'Nebo přetáhněte soubory pro nahrání.', 43 | 44 | 'error-rename' => 'Tento název souboru již existuje!', 45 | 'error-file-name' => 'Název souboru nemůže být prázdný!', 46 | 'error-file-empty' => 'Vyberte soubor!', 47 | 'error-file-exist' => 'Soubor s tímto názvem již existuje!', 48 | 'error-file-size' => 'Velikost souboru překročila limit serveru! (Mazimálna velikost je: :max)', 49 | 'error-delete-folder'=> 'Složku není možné vymazat, protože není prázdná!', 50 | 'error-folder-name' => 'Název složky nesmí být prázdný!', 51 | 'error-folder-exist'=> 'Složka s timto názvem již existuje!', 52 | 'error-folder-alnum'=> 'Jen písmena a číslice su povolené v názvu složky!', 53 | 'error-folder-not-found'=> 'Složka nebyla nalezena! (:folder)', 54 | 'error-mime' => 'Nepovolený typ souboru:', 55 | 'error-size' => 'Soubor přesahuje povolenou velikost:', 56 | 'error-instance' => 'Nahraný soubor by měl být instance UploadedFile', 57 | 'error-invalid' => 'Chybný požadavek', 58 | 'error-other' => 'Nečekaná chyba:', 59 | 'error-too-large' => 'Request entity too large!', 60 | 61 | 'btn-upload' => 'Nahrajte soubor (y)', 62 | 'btn-uploading' => 'Nahráváme...', 63 | 'btn-close' => 'Zrušit', 64 | 'btn-crop' => 'Oříznout', 65 | 'btn-copy-crop' => 'Zkopírovat a oříznout', 66 | 'btn-crop-free' => 'Volné', 67 | 'btn-cancel' => 'Zrušit', 68 | 'btn-confirm' => 'Povrdiť', 69 | 'btn-resize' => 'Zmenšit', 70 | 'btn-open' => 'Otevřít složku', 71 | 72 | 'resize-ratio' => 'Ratio:', 73 | 'resize-scaled' => 'Obrázek zmenšený:', 74 | 'resize-true' => 'Ano', 75 | 'resize-old-height' => 'Původní výška:', 76 | 'resize-old-width' => 'Původní šířka:', 77 | 'resize-new-height' => 'Výška:', 78 | 'resize-new-width' => 'Šířka:', 79 | ]; 80 | -------------------------------------------------------------------------------- /src/lang/da/lfm.php: -------------------------------------------------------------------------------- 1 | 'Tilbage', 5 | 'nav-new' => 'Ny mappe', 6 | 'nav-upload' => 'Upload', 7 | 'nav-thumbnails' => 'Thumbnails', 8 | 'nav-list' => 'Liste', 9 | 'nav-sort' => 'Sorter', 10 | 'nav-sort-alphabetic'=> 'Sorter alfabetisk', 11 | 'nav-sort-time' => 'Sort efter dato', 12 | 13 | 'menu-rename' => 'Omdøb', 14 | 'menu-delete' => 'Slet', 15 | 'menu-view' => 'Forhåndsvisning', 16 | 'menu-download' => 'Download', 17 | 'menu-resize' => 'Ændre størrelse', 18 | 'menu-crop' => 'Beskær', 19 | 'menu-move' => 'Flyt', 20 | 'menu-multiple' => 'Vælg flere', 21 | 22 | 'title-page' => 'Filstyring', 23 | 'title-panel' => 'Filstyring', 24 | 'title-upload' => 'Upload File(r)', 25 | 'title-view' => 'Vis Fil', 26 | 'title-user' => 'Filer', 27 | 'title-share' => 'Delte filter', 28 | 'title-item' => 'Fil', 29 | 'title-size' => 'Størrelse', 30 | 'title-type' => 'Type', 31 | 'title-modified' => 'Ændret', 32 | 'title-action' => 'Handling', 33 | 34 | 'type-folder' => 'Mappe', 35 | 36 | 'message-empty' => 'Mappen er tom.', 37 | 'message-choose' => 'Vælg File(r)', 38 | 'message-delete' => 'Er du sikker på, at du vil slette filen?', 39 | 'message-name' => 'Mappe navn:', 40 | 'message-rename' => 'Omdøb til:', 41 | 'message-extension_not_found' => 'Installer gd eller imagick udvidelsen for at beskære, ændre størrelse og lave thumbnails af billeder.', 42 | 'message-drop' => 'Eller træk filerne hertil for at uploade', 43 | 44 | 'error-rename' => 'Filnavnet er allerede i brug!', 45 | 'error-file-name' => 'Filnavn kan ikke efterlades tomt!', 46 | 'error-file-empty' => 'Du skal vælge en fil!', 47 | 'error-file-exist' => 'En fil med dette navn eksisterer allerede!', 48 | 'error-file-size' => 'Filstørrelse kan ikke overstige serverens grænse! (maksimal størrelse: :max)', 49 | 'error-delete-folder'=> 'Du kan ikke slette denne mappe, da den ikke er tom!', 50 | 'error-folder-name' => 'Mappenavnet kan ikke være tomt!', 51 | 'error-folder-exist'=> 'En mappe med dette navn eksisterer allerede!', 52 | 'error-folder-alnum'=> 'Kun alfanummeriske værdier er tilladt!', 53 | 'error-folder-not-found'=> 'Mappen blev ikke fundet! (:folder)', 54 | 'error-mime' => 'Uventet MimeType: ', 55 | 'error-size' => 'Overstiger grænsestørrelsen:', 56 | 'error-instance' => 'Den uploadede fil skal være en instans af UploadedFile', 57 | 'error-invalid' => 'Ugyldig upload forespørgsel', 58 | 'error-other' => 'En fejl opstod: ', 59 | 'error-too-large' => 'Forespørgslen var for stor!', 60 | 61 | 'btn-upload' => 'Upload File(r)', 62 | 'btn-uploading' => 'Uploader...', 63 | 'btn-close' => 'Luk', 64 | 'btn-crop' => 'Beskær', 65 | 'btn-copy-crop' => 'Kopier & Beskær', 66 | 'btn-crop-free' => 'Frit', 67 | 'btn-cancel' => 'Annuller', 68 | 'btn-confirm' => 'Bekræft', 69 | 'btn-resize' => 'Ændre størrelse', 70 | 'btn-open' => 'Åben Mappe', 71 | 72 | 'resize-ratio' => 'Aspektforhold:', 73 | 'resize-scaled' => 'Billede skaleret:', 74 | 'resize-true' => 'Ja', 75 | 'resize-old-height' => 'Original Højde:', 76 | 'resize-old-width' => 'Original Bredde:', 77 | 'resize-new-height' => 'Højde:', 78 | 'resize-new-width' => 'Bredde:', 79 | ]; 80 | -------------------------------------------------------------------------------- /src/lang/el/lfm.php: -------------------------------------------------------------------------------- 1 | 'Επιστροφή', 5 | 'nav-new' => 'Νέος φάκελος', 6 | 'nav-upload' => 'Ανέβασμα', 7 | 'nav-thumbnails' => 'Εικονίδια', 8 | 'nav-list' => 'Λίστα', 9 | 10 | 'menu-rename' => 'Μετονομασία', 11 | 'menu-delete' => 'Διαγραφή', 12 | 'menu-view' => 'Επισκόπηση', 13 | 'menu-download' => 'Κατέβασμα', 14 | 'menu-resize' => 'Αλλαγή μεγέθους', 15 | 'menu-crop' => 'Κόψιμο', 16 | 17 | 'title-page' => 'Διαχείριση αρχείων', 18 | 'title-panel' => 'Laravel FileManager', 19 | 'title-upload' => 'Ανέβασμα αρχείου', 20 | 'title-view' => 'Επισκόπηση αρχείου', 21 | 'title-user' => 'Αρχεία', 22 | 'title-share' => 'Κοινόχρηστα αρχεία', 23 | 'title-item' => 'Αντικείμενο', 24 | 'title-size' => 'Μέγεθος', 25 | 'title-type' => 'Τύπος', 26 | 'title-modified' => 'Ανανεώθηκε', 27 | 'title-action' => 'Ενέργεια', 28 | 29 | 'type-folder' => 'Φάκελος', 30 | 31 | 'message-empty' => 'Ο φάκελος είναι άδειος', 32 | 'message-choose' => 'Επιλογή αρχείων', 33 | 'message-delete' => 'Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτό το αντικείμενο?', 34 | 'message-name' => 'Όνομα φακέλου:', 35 | 'message-rename' => 'Μετονομασία σε:', 36 | 'message-extension_not_found' => 'Παρακαλούμε κάντε εγκατάσταση του gd ή imagick php προσθετου προκειμένου να μπορείτε να κόψετε, αλλάξετε το μέγεθος και δημιουργήσετε εικονίδια των εικόνων.', 37 | 38 | 'error-rename' => 'Αυτό το όνομα αρχείου χρησιμοποιείται ήδη', 39 | 'error-file-empty' => 'Πρέπει να επιλέξετε ένα αρχείο!', 40 | 'error-file-exist' => 'Υπάρχει ήδη αρχείο με αυτό το όνομα!', 41 | 'error-file-size' => 'Το μέγεθος του αρχείου ξεπερνά το επιτρεπόμενο όριο σε μέγεθος (μέγιστο μέγεθος: :max)', 42 | 'error-delete-folder'=> 'Δεν μπορείτε να διαγράψετε τον φάκελο γιατί περιέχει αρχεία!', 43 | 'error-folder-name' => 'Ο φάκελος δεν γίνεται να είναι άδειος', 44 | 'error-folder-exist'=> 'Υπάρχει ήδη φάκελος με αυτό το όνομα!', 45 | 'error-folder-alnum'=> 'Επιτρέπονται μόνο γράμματα και αριθμοί για το όνομα των φακέλων!', 46 | 'error-mime' => 'Λανθασμένος τύπος αρχείου: ', 47 | 'error-size' => 'Μέγιστο μέγεθος αρχείου:', 48 | 'error-instance' => 'Το ανεβασμένο αρχείο έπρεπε να είναι του τύπου UploadedFile', 49 | 'error-invalid' => 'Λάθος αίτημα ανεβάσματος', 50 | 'error-other' => 'Παρουσιάστηκε ένα σφάλμα: ', 51 | 'error-too-large' => 'Το μέγεθος του αιτήματος είναι πολύ μεγάλο!', 52 | 53 | 'btn-upload' => 'Ανέβασματα αρχείων', 54 | 'btn-uploading' => 'Ανεβασμα...', 55 | 'btn-close' => 'Κλείσιμο', 56 | 'btn-crop' => 'Κόψιμο', 57 | 'btn-cancel' => 'Ακύρωση', 58 | 'btn-resize' => 'Αλλαγή μεγέθους', 59 | 60 | 'resize-ratio' => 'Αναλογία:', 61 | 'resize-scaled' => 'Η εικόνα άλλαξε μέγεθος:', 62 | 'resize-true' => 'Ναι', 63 | 'resize-old-height' => 'Πρωτότυπο ύψος:', 64 | 'resize-old-width' => 'Πρωτότυπο πλάτος:', 65 | 'resize-new-height' => 'Ύψος:', 66 | 'resize-new-width' => 'Μπλάτος:', 67 | 68 | 'locale-bootbox' => 'el', 69 | ]; 70 | -------------------------------------------------------------------------------- /src/lang/en/lfm.php: -------------------------------------------------------------------------------- 1 | 'Back', 5 | 'nav-new' => 'New Folder', 6 | 'nav-upload' => 'Upload', 7 | 'nav-thumbnails' => 'Thumbnails', 8 | 'nav-list' => 'List', 9 | 'nav-sort' => 'Sort', 10 | 'nav-sort-alphabetic'=> 'Sort By Alphabets', 11 | 'nav-sort-time' => 'Sort By Time', 12 | 13 | 'menu-rename' => 'Rename', 14 | 'menu-delete' => 'Delete', 15 | 'menu-view' => 'Preview', 16 | 'menu-download' => 'Download', 17 | 'menu-resize' => 'Resize', 18 | 'menu-crop' => 'Crop', 19 | 'menu-move' => 'Move', 20 | 'menu-multiple' => 'Multi-selection', 21 | 22 | 'title-page' => 'File Manager', 23 | 'title-panel' => 'Laravel FileManager', 24 | 'title-upload' => 'Upload File(s)', 25 | 'title-view' => 'View File', 26 | 'title-user' => 'Files', 27 | 'title-share' => 'Shared Files', 28 | 'title-item' => 'Item', 29 | 'title-size' => 'Size', 30 | 'title-type' => 'Type', 31 | 'title-modified' => 'Modified', 32 | 'title-action' => 'Action', 33 | 34 | 'type-folder' => 'Folder', 35 | 36 | 'message-empty' => 'Folder is empty.', 37 | 'message-choose' => 'Choose File(s)', 38 | 'message-delete' => 'Are you sure you want to delete this item?', 39 | 'message-name' => 'Folder name:', 40 | 'message-rename' => 'Rename to:', 41 | 'message-extension_not_found' => 'Please install gd or imagick extension to crop, resize, and make thumbnails of images.', 42 | 'message-drop' => 'Or drop files here to upload', 43 | 44 | 'error-rename' => 'File name already in use!', 45 | 'error-file-name' => 'File name cannot be empty!', 46 | 'error-file-empty' => 'You must choose a file!', 47 | 'error-file-exist' => 'A file with this name already exists!', 48 | 'error-file-size' => 'File size exceeds server limit! (maximum size: :max)', 49 | 'error-delete-folder'=> 'You cannot delete this folder because it is not empty!', 50 | 'error-folder-name' => 'Folder name cannot be empty!', 51 | 'error-folder-exist'=> 'A folder with this name already exists!', 52 | 'error-folder-alnum'=> 'Only alphanumeric folder names are allowed!', 53 | 'error-folder-not-found'=> 'Folder not found! (:folder)', 54 | 'error-mime' => 'Unexpected MimeType: ', 55 | 'error-size' => 'Over limit size:', 56 | 'error-instance' => 'The uploaded file should be an instance of UploadedFile', 57 | 'error-invalid' => 'Invalid upload request', 58 | 'error-other' => 'An error has occured: ', 59 | 'error-too-large' => 'Request entity too large!', 60 | 61 | 'btn-upload' => 'Upload File(s)', 62 | 'btn-uploading' => 'Uploading...', 63 | 'btn-close' => 'Close', 64 | 'btn-crop' => 'Crop', 65 | 'btn-copy-crop' => 'Copy & Crop', 66 | 'btn-crop-free' => 'Free', 67 | 'btn-cancel' => 'Cancel', 68 | 'btn-confirm' => 'Confirm', 69 | 'btn-resize' => 'Resize', 70 | 'btn-resize-copy' => 'Copy & Resize', 71 | 'btn-open' => 'Open Folder', 72 | 73 | 'resize-ratio' => 'Ratio:', 74 | 'resize-scaled' => 'Image scaled:', 75 | 'resize-true' => 'Yes', 76 | 'resize-old-height' => 'Original Height:', 77 | 'resize-old-width' => 'Original Width:', 78 | 'resize-new-height' => 'Height:', 79 | 'resize-new-width' => 'Width:', 80 | ]; 81 | -------------------------------------------------------------------------------- /src/lang/es/lfm.php: -------------------------------------------------------------------------------- 1 | 'Atrás', 5 | 'nav-new' => 'Nueva Carpeta', 6 | 'nav-upload' => 'Subir', 7 | 'nav-thumbnails' => 'Miniaturas', 8 | 'nav-list' => 'Listado', 9 | 'nav-sort' => 'Ordenar', 10 | 'nav-sort-alphabetic'=> 'Ordenar Alfabéticamente', 11 | 'nav-sort-time' => 'Ordenar por Fecha', 12 | 13 | 'menu-rename' => 'Cambiar Nombre', 14 | 'menu-delete' => 'Eliminar', 15 | 'menu-view' => 'Ver', 16 | 'menu-download' => 'Descargar', 17 | 'menu-resize' => 'Redimensionar', 18 | 'menu-crop' => 'Recortar', 19 | 20 | 'title-page' => 'Administrador de Archivos', 21 | 'title-panel' => 'Administrador de Archivos', 22 | 'title-upload' => 'Subir Archivo', 23 | 'title-view' => 'Ver Archivo', 24 | 'title-user' => 'Archivos', 25 | 'title-share' => 'Archivos Compartidos', 26 | 'title-item' => 'Item', 27 | 'title-size' => 'Tamaño', 28 | 'title-type' => 'Tipo', 29 | 'title-modified' => 'Modificado', 30 | 'title-action' => 'Acción', 31 | 32 | 'type-folder' => 'Carpeta', 33 | 34 | 'message-empty' => 'Carpeta está vacía.', 35 | 'message-choose' => 'Seleccione Archivo', 36 | 'message-delete' => '¿Está seguro que desea eliminar este item?', 37 | 'message-name' => 'Nombre de Carpeta:', 38 | 'message-rename' => 'Renombrar a:', 39 | 'message-extension_not_found' => 'Por favor instale la extensión gd o imagick para recortar, redimensionar y hacer miniaturas de imágenes.', 40 | 41 | 'error-rename' => '¡El nombre del archivo ya existe!', 42 | 'error-file-name' => '¡El nombre del archivo no puede estar vacío!', 43 | 'error-file-empty' => '¡Debes escoger un archivo!', 44 | 'error-file-exist' => '¡Ya existe un archivo con este nombre!', 45 | 'error-file-size' => '¡El tamaño del archivo supera el límite del servidor! (tamaño máx.: :max)', 46 | 'error-delete-folder'=> '¡No puedes eliminar esta carpeta porque no está vacía!', 47 | 'error-folder-name' => '¡El nombre de carpeta no puede ser vacío!', 48 | 'error-folder-exist'=> '¡Ya existe una carpeta con este nombre!', 49 | 'error-folder-alnum'=> '¡Únicamente son soportados nombres de carpetas alfanuméricos!', 50 | 'error-folder-not-found'=> '¡La carpeta no ha sido encontrada! (:folder)', 51 | 'error-mime' => 'MimeType inesperado: ', 52 | 'error-size' => 'Supera el tamaño máximo:', 53 | 'error-instance' => 'El archivo subido debe ser una instancia de UploadedFile', 54 | 'error-invalid' => 'Petición de subida inválida', 55 | 'error-other' => 'Se ha producido un error: ', 56 | 'error-too-large' => '¡Entidad de petición demasiado grande!', 57 | 58 | 'btn-upload' => 'Subir Archivo', 59 | 'btn-uploading' => 'Subiendo...', 60 | 'btn-close' => 'Cerrar', 61 | 'btn-crop' => 'Recortar', 62 | 'btn-copy-crop' => 'Copiar y recortar', 63 | 'btn-cancel' => 'Cancelar', 64 | 'btn-resize' => 'Redimensionar', 65 | 66 | 'resize-ratio' => 'Ratio:', 67 | 'resize-scaled' => 'Imagen escalada:', 68 | 'resize-true' => 'Si', 69 | 'resize-old-height' => 'Alto Original:', 70 | 'resize-old-width' => 'Ancho Original:', 71 | 'resize-new-height' => 'Alto:', 72 | 'resize-new-width' => 'Ancho:', 73 | 74 | 'locale-bootbox' => 'es', 75 | 76 | ]; 77 | -------------------------------------------------------------------------------- /src/lang/eu/lfm.php: -------------------------------------------------------------------------------- 1 | 'Atzera', 5 | 'nav-new' => 'Karpeta berria', 6 | 'nav-upload' => 'Kargatu', 7 | 'nav-thumbnails' => 'Koadro txikiak', 8 | 'nav-list' => 'Zerrenda', 9 | 'nav-sort' => 'Ordenatu', 10 | 'nav-sort-alphabetic'=> 'Ordenatu alfabetikoki', 11 | 'nav-sort-time' => 'Ordenatu denboraren arabera', 12 | 13 | 'menu-rename' => 'Aldatu izena', 14 | 'menu-delete' => 'Ezabatu', 15 | 'menu-view' => 'Aurrebista', 16 | 'menu-download' => 'Deskargatu', 17 | 'menu-resize' => 'Aldatu tamaina', 18 | 'menu-crop' => 'Moztu', 19 | 20 | 'title-page' => 'Fitxategi-kudeatzailea', 21 | 'title-panel' => 'Laravel fitxategi-kudeatzailea', 22 | 'title-upload' => 'Kargatu fitxategia(k)', 23 | 'title-view' => 'Ikusi fitxategia', 24 | 'title-root' => 'Fitxategiak', 25 | 'title-shares' => 'Partekatutako fitxategiak', 26 | 'title-item' => 'Elementua', 27 | 'title-size' => 'Tamaina', 28 | 'title-type' => 'Mota', 29 | 'title-modified' => 'Aldatua', 30 | 'title-action' => 'Ekintza', 31 | 32 | 'type-folder' => 'Karpeta', 33 | 34 | 'message-empty' => 'Karpeta hutsik dago.', 35 | 'message-choose' => 'Aukeratu fitxategia(k)', 36 | 'message-delete' => 'Ziur zaude elementu hau ezabatu nahi duzula?', 37 | 'message-name' => 'Karpetaren izena:', 38 | 'message-rename' => 'Izen berria:', 39 | 'message-extension_not_found' => 'Mesedez, instalatu gd edo imagick hedapena irudiak moztu, tamainaz aldatu eta koadro txikiak sortzeko.', 40 | 41 | 'error-rename' => 'Fitxategi-izena lehendik badago!', 42 | 'error-file-name' => 'Fitxategi-izenak ezin du hutsik egon!', 43 | 'error-file-empty' => 'Fitxategi bat aukeratu behar duzu!', 44 | 'error-file-exist' => 'Izen hau duen fitxategi bat existitzen da dagoeneko!', 45 | 'error-file-size' => 'Fitxategi-tamainak zerbitzariaren muga gainditzen du! (gehienezko tamaina: :max)', 46 | 'error-delete-folder'=> 'Ezin duzu karpeta hau ezabatu, ez baitago hutsik!', 47 | 'error-folder-name' => 'Karpeta-izenak ezin du hutsik egon!', 48 | 'error-folder-exist'=> 'Izen hau duen karpeta bat existitzen da dagoeneko!', 49 | 'error-folder-alnum'=> 'Karpeta-izen alfanumerikoak soilik onartzen dira!', 50 | 'error-folder-not-found'=> 'Ez da karpeta aurkitu! (:folder)', 51 | 'error-mime' => 'Ustekabeko MIME mota: ', 52 | 'error-size' => 'Muga gainditzen duen tamaina:', 53 | 'error-instance' => 'Kargatutako fitxategiak UploadedFile-en instantzia bat izan behar luke', 54 | 'error-invalid' => 'Kargatzeko eskaera baliogabea', 55 | 'error-other' => 'Errore bat gertatu da: ', 56 | 'error-too-large' => 'Eskaera entitatea handiegia da!', 57 | 58 | 'btn-upload' => 'Kargatu fitxategia(k)', 59 | 'btn-uploading' => 'Kargatzen...', 60 | 'btn-close' => 'Itxi', 61 | 'btn-crop' => 'Moztu', 62 | 'btn-copy-crop' => 'Kopiatu eta moztu', 63 | 'btn-cancel' => 'Utzi', 64 | 'btn-resize' => 'Aldatu tamainaz', 65 | 66 | 'resize-ratio' => 'Erlazioa:', 67 | 'resize-scaled' => 'Eskalatutako irudia:', 68 | 'resize-true' => 'Bai', 69 | 'resize-old-height' => 'Jatorrizko altuera:', 70 | 'resize-old-width' => 'Jatorrizko zabalera:', 71 | 'resize-new-height' => 'Altuera:', 72 | 'resize-new-width' => 'Zabalera:', 73 | 74 | 'locale-bootbox' => 'eu', 75 | ]; 76 | -------------------------------------------------------------------------------- /src/lang/fa/lfm.php: -------------------------------------------------------------------------------- 1 | 'بازگشت', 5 | 'nav-new' => 'پوشه جدید', 6 | 'nav-upload' => 'آپلود', 7 | 'nav-thumbnails' => 'تصویرک ها', 8 | 'nav-list' => 'لیست', 9 | 'nav-sort' => 'مرتب سازی', 10 | 'nav-sort-alphabetic'=> 'مرتب سازی الفبایی', 11 | 'nav-sort-time' => 'مرتب سازی زمانی', 12 | 13 | 'menu-rename' => 'تغییر نام', 14 | 'menu-delete' => 'حذف', 15 | 'menu-view' => 'مشاهده', 16 | 'menu-download' => 'دانلود', 17 | 'menu-resize' => 'تغییر اندازه', 18 | 'menu-crop' => 'برش', 19 | 'menu-move' => 'انتقال', 20 | 'menu-multiple' => 'انتخاب چندتایی', 21 | 22 | 'title-page' => 'مدیریت فایل', 23 | 'title-panel' => 'مدیریت فایل لاراول', 24 | 'title-upload' => 'آپلود فایل', 25 | 'title-view' => 'مشاهده فایل', 26 | 'title-user' => 'فایل ها', 27 | 'title-share' => 'فایل های اشتراکی', 28 | 'title-item' => 'آیتم', 29 | 'title-size' => 'اندازه', 30 | 'title-type' => 'نوع', 31 | 'title-modified' => 'تاریخ آخرین ویرایش', 32 | 'title-action' => 'اقدام', 33 | 34 | 'type-folder' => 'پوشه', 35 | 36 | 'message-empty' => 'پوشه خالی است.', 37 | 'message-choose' => 'انتخاب فایل', 38 | 'message-delete' => 'آیا از حذف این آیتم مطمئن هستید؟', 39 | 'message-name' => 'نام پوشه:', 40 | 'message-rename' => 'تغییر نام به:', 41 | 'message-extension_not_found' => 'لطفا gd یا imagick را برای برش، تغییر اندازه و ایجاد تصویرک نصب کنید.', 42 | 'message-drop' => 'یا فایل ها را برای آپلود اینجا رها کنید', 43 | 44 | 'error-rename' => 'این نام قبلا استفاده شده!', 45 | 'error-file-name' => 'نام فایل نباید خالی باشد!', 46 | 'error-file-empty' => 'باید یک فایل انتخاب کنید!', 47 | 'error-file-exist' => 'فایلی با این نام از قبل وجود دارد!', 48 | 'error-file-size' => 'محدودیت حجم فایل سرور! (حداکثر حجم: :max)', 49 | 'error-delete-folder'=> 'به دلیل خالی نبودن پوشه امکان حذف آن وجود ندارد!', 50 | 'error-folder-name' => 'نام پوشه نمی تواند خالی باشد!', 51 | 'error-folder-exist'=> 'پوشه ای با این نام از قبل وجود دارد!', 52 | 'error-folder-alnum'=> 'فقط اسامی الفبایی برای پوشه مجاز است!', 53 | 'error-folder-not-found'=> 'پوشه‌ای یافت نشد! (:folder)', 54 | 'error-mime' => 'پسوند غیرمجاز: ', 55 | 'error-size' => 'سایز بیش از حد:', 56 | 'error-instance' => 'فایل آپلود شده باید نمونه ای از UploadedFile باشد', 57 | 'error-invalid' => 'درخواست آپلود غیرمعتبر', 58 | 'error-other' => 'خطایی رخ داد: ', 59 | 'error-too-large' => 'درخواست موجودیت خیلی طولانیست!', 60 | 61 | 'btn-upload' => 'آپلود فایل', 62 | 'btn-uploading' => 'در حال آپلود', 63 | 'btn-close' => 'بستن', 64 | 'btn-crop' => 'برش', 65 | 'btn-copy-crop' => 'برش و ذخیره در فایل جدید', 66 | 'btn-crop-free' => 'برش آزاد', 67 | 'btn-cancel' => 'انصراف', 68 | 'btn-confirm' => 'تایید', 69 | 'btn-resize' => 'تغییر اندازه', 70 | 'btn-open' => 'باز کردن پوشه', 71 | 72 | 'resize-ratio' => 'نسبت:', 73 | 'resize-scaled' => 'تصویر مقیاس شده:', 74 | 'resize-true' => 'بله', 75 | 'resize-old-height' => 'ارتفاع اصلی:', 76 | 'resize-old-width' => 'عرض اصلی:', 77 | 'resize-new-height' => 'ارتفاع:', 78 | 'resize-new-width' => 'عرض:', 79 | 80 | 'locale-bootbox' => 'fa', 81 | ]; 82 | -------------------------------------------------------------------------------- /src/lang/fi/lfm.php: -------------------------------------------------------------------------------- 1 | 'Takaisin', 5 | 'nav-new' => 'Uusi kansio', 6 | 'nav-upload' => 'Lähetä', 7 | 'nav-thumbnails' => 'Esikatselukuva', 8 | 'nav-list' => 'Lista', 9 | 'nav-sort' => 'Järjestä', 10 | 'nav-sort-alphabetic' => 'Lajittele aakkosten mukaan', 11 | 'nav-sort-time' => 'Lajittele ajan mukaan ', 12 | 13 | 'menu-rename' => 'Nimeä uudestaan', 14 | 'menu-delete' => 'Poista', 15 | 'menu-view' => 'Esikatsele', 16 | 'menu-download' => 'Lataa', 17 | 'menu-resize' => 'Muuta kokoa', 18 | 'menu-crop' => 'Rajaa', 19 | 'menu-move' => 'Siirrä', 20 | 'menu-multiple' => 'Monivalinta', 21 | 22 | 'title-page' => 'Tiedostonhallinta', 23 | 'title-panel' => 'Laravel tiedostonhallinta', 24 | 'title-upload' => 'Lähetä tiedosto(ja)', 25 | 'title-view' => 'Näytä tiedosto', 26 | 'title-user' => 'Tiedostot', 27 | 'title-share' => 'Yhteiset tiedostot', 28 | 'title-item' => 'Kohde', 29 | 'title-size' => 'Koko', 30 | 'title-type' => 'Tyyppi', 31 | 'title-modified' => 'Muokattu', 32 | 'title-action' => 'Toiminto', 33 | 34 | 'type-folder' => 'Kansio', 35 | 36 | 'message-empty' => 'Kansio on tyhjä.', 37 | 'message-choose' => 'Valitse tiedosto(t)', 38 | 'message-delete' => 'Oletko varma että haluat poistaa tämän kohteen?', 39 | 'message-name' => 'Kansion nimi:', 40 | 'message-rename' => 'Uusi nimi:', 41 | 'message-extension_not_found' => 'Asenna gd tai imagick -laajennos rajausta, koon muuttamista ja esikatselukuvien luomiseen.', 42 | 'message-drop' => 'Tai pudota tiedostot tähän lähettääksesi', 43 | 44 | 'error-rename' => 'Tiedostoniumi on jo käytössä!', 45 | 'error-file-name' => 'Tiedostonimi ei voi olla tyhjä!', 46 | 'error-file-empty' => 'Sinun täytyy valita tiedosto!', 47 | 'error-file-exist' => 'Samanniminen tiedosto on jo olemassa!', 48 | 'error-file-size' => 'Tiedoston koko on suurempi kuin palvelimella määritelty maksimi: :max', 49 | 'error-delete-folder' => 'Et voi poistaa tätä kansiota. Se ei ole tyhjä!', 50 | 'error-folder-name' => 'Kansion nimi ei voi olla tyhjä!', 51 | 'error-folder-exist' => 'Samanniminen kansio on jo olemassa!', 52 | 'error-folder-alnum' => 'Vain kirjaimet sekä numerot ovat sallittuja kansion nimissä!', 53 | 'error-folder-not-found' => 'Kansiota :folder ei löytynyt', 54 | 'error-mime' => 'Odottamaton Mime -typpi: ', 55 | 'error-size' => 'Koko on yli rajan, koko:', 56 | 'error-instance' => 'Lähetetyn tiedoston pitäisi olla UploadedFile -instanssi', 57 | 'error-invalid' => 'Väärä latauspyyntö', 58 | 'error-other' => 'Tapahtui virhe: ', 59 | 'error-too-large' => 'Pyynnön koko on liian suuri!', 60 | 61 | 'btn-upload' => 'Lähetä tiedosto(ja)', 62 | 'btn-uploading' => 'Lähetetään...', 63 | 'btn-close' => 'Sulje', 64 | 'btn-crop' => 'Rajaa', 65 | 'btn-copy-crop' => 'Kopioi & rajaa', 66 | 'btn-crop-free' => 'Vapaa', 67 | 'btn-cancel' => 'Peruuta', 68 | 'btn-confirm' => 'Varmista', 69 | 'btn-resize' => 'Muuta kokoa', 70 | 'btn-open' => 'Avaa kansio', 71 | 72 | 'resize-ratio' => 'Suhde:', 73 | 'resize-scaled' => 'Kuva skaalattu:', 74 | 'resize-true' => 'Kyllä', 75 | 'resize-old-height' => 'Alkuperäinen korkeus:', 76 | 'resize-old-width' => 'Alkuperäinen leveys:', 77 | 'resize-new-height' => 'Korkeus:', 78 | 'resize-new-width' => 'Leveys:', 79 | ]; 80 | -------------------------------------------------------------------------------- /src/lang/fr/lfm.php: -------------------------------------------------------------------------------- 1 | 'Retour', 5 | 'nav-new' => 'Nouveau dossier', 6 | 'nav-upload' => 'Envoyer', 7 | 'nav-thumbnails' => 'Vignettes', 8 | 'nav-list' => 'Liste', 9 | 'nav-sort' => 'Trier', 10 | 'nav-sort-alphabetic'=> 'Trier par ordre alphabétique', 11 | 'nav-sort-time' => 'Trier par date', 12 | 13 | 'menu-rename' => 'Renommer', 14 | 'menu-delete' => 'Effacer', 15 | 'menu-view' => 'Voir', 16 | 'menu-download' => 'Télécharger', 17 | 'menu-resize' => 'Redimensionner', 18 | 'menu-crop' => 'Rogner', 19 | 'menu-move' => 'Déplacer', 20 | 'menu-multiple' => 'Multi-selection', 21 | 22 | 'title-page' => 'Gestionnaire de fichiers', 23 | 'title-panel' => 'Laravel FileManager', 24 | 'title-upload' => 'Envoyer un/des fichier(s)', 25 | 'title-view' => 'Voir le fichier', 26 | 'title-user' => 'Fichiers', 27 | 'title-share' => 'Fichiers partagés', 28 | 'title-item' => 'Élement', 29 | 'title-size' => 'Taille du fichier', 30 | 'title-type' => 'Type de fichier', 31 | 'title-modified' => 'Date de modification', 32 | 'title-action' => 'Exécuter', 33 | 34 | 'type-folder' => 'Dossier', 35 | 36 | 'message-empty' => 'Dossier est vide', 37 | 'message-choose' => 'Choisir un/des fichier(s)', 38 | 'message-delete' => 'Êtes-vous sûr de vouloir supprimer ce fichier ?', 39 | 'message-name' => 'Nom du dossier :', 40 | 'message-rename' => 'Renommer le dossier :', 41 | 'message-extension_not_found' => 'Extension inconnue', 42 | 'message-drop' => 'Ou déposez des fichiers ici pour les uploader', 43 | 44 | 'error-rename' => 'Nom déjà utilisé', 45 | 'error-file-name' => 'Nom doit être renseigné !', 46 | 'error-file-empty' => 'Veuillez choisir un fichier', 47 | 'error-file-exist' => 'Un fichier avec ce nom existe déjà', 48 | 'error-file-size' => 'Le fichier dépasse la taille maximale autorisée de :max', 49 | 'error-delete-folder'=> "Vous ne pouvez pas supprimer ce dossier car il n'est pas vide", 50 | 'error-folder-name' => 'Le nom du dossier ne peut pas être vide', 51 | 'error-folder-exist'=> 'Un dossier avec ce nom existe déjà', 52 | 'error-folder-alnum'=> 'Seuls les caractéres alphanumériques sont autorisés', 53 | 'error-folder-not-found'=> 'Le dossier n\'a pas été trouvé ! (:folder)', 54 | 'error-mime' => 'Type de fichier MIME non autorisé : ', 55 | 'error-size' => 'Poids supérieur à la limite :', 56 | 'error-instance' => 'Le fichier doit être une instance de UploadedFile', 57 | 'error-invalid' => "Requête d'upload invalide", 58 | 'error-other' => 'Une erreur est survenue : ', 59 | 'error-too-large' => 'Request entity too large!', 60 | 61 | 'btn-upload' => 'Envoyer le/les fichier(s)', 62 | 'btn-uploading' => 'Envoi...', 63 | 'btn-close' => 'Fermer', 64 | 'btn-crop' => 'Rogner', 65 | 'btn-copy-crop' => 'Copier & Rogner', 66 | 'btn-crop-free' => 'Libre', 67 | 'btn-cancel' => 'Annuler', 68 | 'btn-confirm' => 'Confirm', 69 | 'btn-resize' => 'Redimensionner', 70 | 'btn-open' => 'Ouvrir le répertoire', 71 | 72 | 'resize-ratio' => 'Ratio:', 73 | 'resize-scaled' => "Image à l'échelle:", 74 | 'resize-true' => 'Oui', 75 | 'resize-old-height' => 'Hauteur originale :', 76 | 'resize-old-width' => 'Largeur originale :', 77 | 'resize-new-height' => 'Hauteur :', 78 | 'resize-new-width' => 'Largeur :', 79 | 80 | 'locale-bootbox' => 'fr', 81 | ]; 82 | -------------------------------------------------------------------------------- /src/lang/he/lfm.php: -------------------------------------------------------------------------------- 1 | 'חזרה', 5 | 'nav-new' => 'תיקייה חדשה', 6 | 'nav-upload' => 'העלה', 7 | 'nav-thumbnails' => 'תמונות ממוזערות', 8 | 'nav-list' => 'רשימה', 9 | 10 | 'menu-rename' => 'שנה שם', 11 | 'menu-delete' => 'מחק', 12 | 'menu-view' => 'צפה', 13 | 'menu-download' => 'הורד', 14 | 'menu-resize' => 'שנה גודל', 15 | 'menu-crop' => 'חתוך', 16 | 17 | 'title-page' => 'מנהל קבצים', 18 | 'title-panel' => 'מנהל קבצים', 19 | 'title-upload' => 'העלאת קובץ', 20 | 'title-view' => 'צפייה בקובץ', 21 | 'title-user' => 'קבצים', 22 | 'title-share' => 'קבצים משותפים', 23 | 'title-item' => 'פריט', 24 | 'title-size' => 'גודל', 25 | 'title-type' => 'סוג', 26 | 'title-modified' => 'שונה', 27 | 'title-action' => 'פעולה', 28 | 29 | 'type-folder' => 'תיקייה', 30 | 31 | 'message-empty' => 'התיקייה ריקה.', 32 | 'message-choose' => 'בחר קובץ', 33 | 'message-delete' => 'האם אתה בטוח שברצונך למחוק פריט זה?', 34 | 'message-name' => 'שם התיקייה:', 35 | 'message-rename' => 'שם חדש:', 36 | 37 | 'error-rename' => 'הקובץ נמצא בשימוש!', 38 | 'error-file-empty' => 'עליך לבחור קובץ!', 39 | 'error-file-exist' => 'קובץ עם שם זה כבר קיים!', 40 | 'error-file-size' => 'File size exceeds server limit! (maximum size: :max)', 41 | 'error-delete-folder'=> 'לא ניתן למחוק תייקיה זו מכיוון שהיא לא ריקה!', 42 | 'error-folder-name' => 'נא להזין שם תיקייה!', 43 | 'error-folder-exist'=> 'תיקייה עם שם זהה כבר קיימת!', 44 | 'error-folder-alnum'=> 'Only alphanumeric folder names are allowed!', 45 | 'error-mime' => 'סוג קובץ לא תקין: ', 46 | 'error-instance' => 'הקובץ שהועלה צריך להיות מופע של UploadedFile', 47 | 'error-invalid' => 'בקשת העלה לא תיקנית.', 48 | 49 | 'btn-upload' => 'העלה קובת', 50 | 'btn-uploading' => 'מעלה...', 51 | 'btn-close' => 'סגור', 52 | 'btn-crop' => 'חתוך', 53 | 'btn-cancel' => 'בטל', 54 | 'btn-resize' => 'שנה גודל', 55 | 56 | 'resize-ratio' => 'יחס:', 57 | 'resize-scaled' => 'תמונה הוגדלה:', 58 | 'resize-true' => 'כן', 59 | 'resize-old-height' => 'גובה מקורי:', 60 | 'resize-old-width' => 'אורך מקורי:', 61 | 'resize-new-height' => 'גובה:', 62 | 'resize-new-width' => 'אורך:', 63 | 64 | 'locale-bootbox' => 'he', 65 | ]; 66 | -------------------------------------------------------------------------------- /src/lang/hu/lfm.php: -------------------------------------------------------------------------------- 1 | 'Vissza', 5 | 'nav-new' => 'Új mappa', 6 | 'nav-upload' => 'Feltöltés', 7 | 'nav-thumbnails' => 'Miniatűrök', 8 | 'nav-list' => 'Lista', 9 | 'nav-sort' => 'Rendezés', 10 | 'nav-sort-alphabetic'=> 'ABC szerint', 11 | 'nav-sort-time' => 'Idő szerint', 12 | 13 | 'menu-rename' => 'Átnevezés', 14 | 'menu-delete' => 'Törlés', 15 | 'menu-view' => 'Megtekintés', 16 | 'menu-download' => 'Letöltés', 17 | 'menu-resize' => 'Átméretezés', 18 | 'menu-crop' => 'Vágás', 19 | 'menu-move' => 'Mozgatás', 20 | 'menu-multiple' => 'Több-kiválasztás', 21 | 22 | 'title-page' => 'Fájlkezelő', 23 | 'title-panel' => 'Fájlkezelő', 24 | 'title-upload' => 'Fájl feltöltés', 25 | 'title-view' => 'Fájl megtekintés', 26 | 'title-user' => 'Fájlok', 27 | 'title-share' => 'Megosztott fájlok', 28 | 'title-item' => 'Elem', 29 | 'title-size' => 'Méret', 30 | 'title-type' => 'Típus', 31 | 'title-modified' => 'Módosított', 32 | 'title-action' => 'Művelet', 33 | 34 | 'type-folder' => 'Mappa', 35 | 36 | 'message-empty' => 'A mappa üres.', 37 | 'message-choose' => 'Fájl kiválasztása', 38 | 'message-delete' => 'Biztos vagy benne, hogy törölni akarod az elemet?', 39 | 'message-name' => 'Mappa neve:', 40 | 'message-rename' => 'Átnevezés erre:', 41 | 'message-extension_not_found' => 'Kérlek telepítsd a gd vagy az imagick kiterjesztést a vágáshoz, átméretezéshez, és a képek miniatűr elemeinek elkészítéséhez.', 42 | 'message-drop' => 'Vagy húzd ide a fájlt', 43 | 44 | 'error-rename' => 'A fájl neve használatban!', 45 | 'error-file-name' => 'A fájlnév nem lehet üres!', 46 | 'error-file-empty' => 'Ki kell választanod egy fájlt!', 47 | 'error-file-exist' => 'Egy fájl már létezik ezzel a névvel.', 48 | 'error-file-size' => 'A fájl mérete túl nagy a szerverre nem lehet feltölteni! (Maximális megengedett méret: :max)', 49 | 'error-delete-folder'=> 'Nem tudod törölni ezt a mappát, mert nem üres!', 50 | 'error-folder-name' => 'A mappa neve nem lehet üres!', 51 | 'error-folder-exist'=> 'Egy mappa már létezik ezzel a névvel!', 52 | 'error-folder-alnum'=> 'Csak alfanumerikus karakterek lehetnek a mappa nevében!', 53 | 'error-folder-not-found'=> 'Nem található a(z) (:folder) nevű mappa!', 54 | 'error-mime' => 'Váratlan fájltípusok (MimeType): ', 55 | 'error-size' => 'Túl nagy méretű:', 56 | 'error-instance' => 'A feltöltött fájlnak egy UploadedFile kérelemnek kellene lennie', 57 | 'error-invalid' => 'Érvénytelen kérés a feltöltéssel kapcsolatban.', 58 | 'error-other' => 'Hiba történt: ', 59 | 'error-too-large' => 'Túl nagyméretű a fájl!', 60 | 61 | 'btn-upload' => 'Fájl feltöltése', 62 | 'btn-uploading' => 'Feltöltés folyamatban...', 63 | 'btn-close' => 'Bezárás', 64 | 'btn-crop' => 'Vágás', 65 | 'btn-copy-crop' => 'Másolás és vágás', 66 | 'btn-crop-free' => 'Szabad', 67 | 'btn-cancel' => 'Mégsem', 68 | 'btn-confirm' => 'Elfogad', 69 | 'btn-resize' => 'Átméretezés', 70 | 'btn-open' => 'Mappa megnyitása', 71 | 72 | 'resize-ratio' => 'Arány:', 73 | 'resize-scaled' => 'Méretarány:', 74 | 'resize-true' => 'Igen', 75 | 'resize-old-height' => 'Eredeti magasság:', 76 | 'resize-old-width' => 'Eredeti szélesség:', 77 | 'resize-new-height' => 'Magasság:', 78 | 'resize-new-width' => 'Szélesség:', 79 | 80 | 'locale-bootbox' => 'hu', 81 | ]; 82 | -------------------------------------------------------------------------------- /src/lang/id/lfm.php: -------------------------------------------------------------------------------- 1 | 'Kembali', 5 | 'nav-new' => 'Buat Direktori', 6 | 'nav-upload' => 'Unggah', 7 | 'nav-thumbnails' => 'Thumbnail', 8 | 'nav-list' => 'Daftar', 9 | 'nav-sort' => 'Urutkan', 10 | 'nav-sort-alphabetic'=> 'Urutkan Abjad', 11 | 'nav-sort-time' => 'Urutkan Waktu', 12 | 13 | 'menu-rename' => 'Ganti Nama', 14 | 'menu-delete' => 'Hapus', 15 | 'menu-view' => 'Pratinjau', 16 | 'menu-download' => 'Unduh', 17 | 'menu-resize' => 'Ubah Ukuran', 18 | 'menu-crop' => 'Potong', 19 | 'menu-move' => 'Pindah', 20 | 'menu-multiple' => 'Pilih Banyak', 21 | 22 | 'title-page' => 'Manajemen Berkas', 23 | 'title-panel' => 'Manajemen Berkas Laravel', 24 | 'title-upload' => 'Unggah Berkas', 25 | 'title-view' => 'Lihat Berkas', 26 | 'title-user' => 'Berkas', 27 | 'title-share' => 'Berkas yang Dibagikan', 28 | 'title-item' => 'Item', 29 | 'title-size' => 'Ukuran', 30 | 'title-type' => 'Tipe', 31 | 'title-modified' => 'Diubah', 32 | 'title-action' => 'Aksi', 33 | 34 | 'type-folder' => 'Direktori', 35 | 36 | 'message-empty' => 'Direktori kosong.', 37 | 'message-choose' => 'Pilih berkas', 38 | 'message-delete' => 'Anda yakin ingin menghapus item ini?', 39 | 'message-name' => 'Nama Direktori:', 40 | 'message-rename' => 'Ubah Menjadi:', 41 | 'message-extension_not_found' => 'Silakan instal ekstensi gd atau imagick untuk memotong, mengubah ukuran, dan membuat thumbnail gambar.', 42 | 'message-drop' => 'Atau letakkan berkas di sini untuk mengunggah', 43 | 44 | 'error-rename' => 'Nama berkas sudah digunakan!', 45 | 'error-file-name' => 'Nama berkas tidak boleh kosong!', 46 | 'error-file-empty' => 'Anda harus memilih berkas!', 47 | 'error-file-exist' => 'Berkas dengan nama ini sudah ada!', 48 | 'error-file-size' => 'Ukuran berkas melebihi batas peladen! (ukuran maksimum size: :max)', 49 | 'error-delete-folder'=> 'Anda tidak dapat menghapus direktori ini karena tidak kosong!', 50 | 'error-folder-name' => 'Nama direktori tidak boleh kosong!', 51 | 'error-folder-exist'=> 'Direktori dengan nama ini sudah ada!', 52 | 'error-folder-alnum'=> 'Hanya nama direktori alfanumerik yang diizinkan!', 53 | 'error-folder-not-found'=> 'Direktori tidak ditemukan! (:folder)', 54 | 'error-mime' => 'Kesalahan MimeType: ', 55 | 'error-size' => 'Ukuran melebihi batas:', 56 | 'error-instance' => 'Berkas yang diunggah harus merupakan instance dari UploadedFile', 57 | 'error-invalid' => 'Unggahan tidak valid', 58 | 'error-other' => 'Sebuah kesalahan telah terjadi: ', 59 | 'error-too-large' => 'Permintaan entitas terlalu besar!', 60 | 61 | 'btn-upload' => 'Unggah Berkas', 62 | 'btn-uploading' => 'Mengunggah...', 63 | 'btn-close' => 'Tutup', 64 | 'btn-crop' => 'Potong', 65 | 'btn-copy-crop' => 'Salin & Potong', 66 | 'btn-crop-free' => 'Bebas', 67 | 'btn-cancel' => 'Batal', 68 | 'btn-confirm' => 'Konfirmasi', 69 | 'btn-resize' => 'Ubah Ukuran', 70 | 'btn-open' => 'Buka Direktori', 71 | 72 | 'resize-ratio' => 'Rasio:', 73 | 'resize-scaled' => 'Gambar diskalakan:', 74 | 'resize-true' => 'Ya', 75 | 'resize-old-height' => 'Tinggi Asli:', 76 | 'resize-old-width' => 'Lebar Asli:', 77 | 'resize-new-height' => 'Tinggi:', 78 | 'resize-new-width' => 'Lebar:', 79 | ]; 80 | -------------------------------------------------------------------------------- /src/lang/it/lfm.php: -------------------------------------------------------------------------------- 1 | 'Indietro', 6 | 'nav-new' => 'Nuova Cartella', 7 | 'nav-upload' => 'Carica', 8 | 'nav-thumbnails' => 'Anteprima', 9 | 'nav-list' => 'Elencare', 10 | 'nav-sort' => 'Ordinare', 11 | 'nav-sort-alphabetic'=> 'Ordine Alfabetico', 12 | 'nav-sort-time' => 'Ordine Temporale', 13 | 14 | 'menu-rename' => 'Rinomina', 15 | 'menu-delete' => 'Elimina', 16 | 'menu-view' => 'Anteprima', 17 | 'menu-download' => 'Scarica', 18 | 'menu-resize' => 'Ridimensiona', 19 | 'menu-crop' => 'Taglia', 20 | 21 | 'title-page' => 'File Manager', 22 | 'title-panel' => 'Laravel FileManager', 23 | 'title-upload' => 'Carica File(s)', 24 | 'title-view' => 'Vedi File', 25 | 'title-user' => 'Files', 26 | 'title-share' => 'Files Condivisi', 27 | 'title-item' => 'Voce', 28 | 'title-size' => 'Dimensione', 29 | 'title-type' => 'Tipo', 30 | 'title-modified' => 'Modificato', 31 | 'title-action' => 'Azione', 32 | 33 | 'type-folder' => 'Cartella', 34 | 35 | 'message-empty' => 'La cartella è vuota.', 36 | 'message-choose' => 'Scegli i File(s)', 37 | 'message-delete' => 'Sei sicuro di voler cancellare questa voce?', 38 | 'message-name' => 'Nome Cartella:', 39 | 'message-rename' => 'Rinomina:', 40 | 'message-extension_not_found' => 'Per favore installa gd oppure la estensione di imagick per tagliare, ridimensionare e creare anteprime delle immagini.', 41 | 42 | 'error-rename' => 'Il nome del file è già in uso!', 43 | 'error-file-name' => 'Il nome del file non può essere vuoto!', 44 | 'error-file-empty' => 'Devi scegliere un file!', 45 | 'error-file-exist' => 'Esiste già un file con questo nome!', 46 | 'error-file-size' => 'La dimensione del file eccede il limite del server! (dimensione massima: :max)', 47 | 'error-delete-folder'=> 'Non puoi cancellare questa cartella perchè non è vuota!', 48 | 'error-folder-name' => 'Il nome della cartella non può essere vuoto!', 49 | 'error-folder-exist'=> 'Esiste già una cartella con questo nome!', 50 | 'error-folder-alnum'=> 'Si può nominare una cartella solo con caratteri alfanumerici!', 51 | 'error-folder-not-found'=> 'Cartella non trovata! (:folder)', 52 | 'error-mime' => 'Unexpected MimeType: ', 53 | 'error-size' => 'Superato il limite di dimensione:', 54 | 'error-instance' => 'Il file caricato deve essere una istanza di UploadedFile', 55 | 'error-invalid' => 'Richiesta di caricamento non valida', 56 | 'error-other' => 'Si è veriifcato un errore: ', 57 | 'error-too-large' => 'Richiesta di entità troppo grande!', 58 | 59 | 'btn-upload' => 'Carica File(s)', 60 | 'btn-uploading' => 'Sto Caricando...', 61 | 'btn-close' => 'Chiudi', 62 | 'btn-crop' => 'Taglia', 63 | 'btn-copy-crop' => 'Copia & Taglia', 64 | 'btn-cancel' => 'Cancella', 65 | 'btn-resize' => 'Ridimensiona', 66 | 67 | 'resize-ratio' => 'Proporzione:', 68 | 'resize-scaled' => 'Immagine scalata:', 69 | 'resize-true' => 'Sì', 70 | 'resize-old-height' => 'Altezza Originale:', 71 | 'resize-old-width' => 'Larghezza Originale:', 72 | 'resize-new-height' => 'Altezza:', 73 | 'resize-new-width' => 'Larghezza:', 74 | 75 | 'locale-bootbox' => 'it', 76 | ]; 77 | -------------------------------------------------------------------------------- /src/lang/ja/lfm.php: -------------------------------------------------------------------------------- 1 | '戻る', 5 | 'nav-new' => '新規フォルダ', 6 | 'nav-upload' => 'アップロード', 7 | 'nav-thumbnails' => 'サムネイル', 8 | 'nav-list' => 'リスト', 9 | 'nav-sort' => 'ソート', 10 | 'nav-sort-alphabetic'=> 'ファイル名順', 11 | 'nav-sort-time' => '日付順', 12 | 13 | 'menu-rename' => 'ファイル名変更', 14 | 'menu-delete' => '削除', 15 | 'menu-view' => 'プレビュー', 16 | 'menu-download' => 'ダウンロード', 17 | 'menu-resize' => 'リサイズ', 18 | 'menu-crop' => 'トリミング', 19 | 'menu-move' => '移動', 20 | 'menu-multiple' => '複数選択', 21 | 22 | 'title-page' => 'ファイル管理', 23 | 'title-panel' => 'ファイル管理', 24 | 'title-upload' => 'ファイルアップロード', 25 | 'title-view' => 'ファイル表示', 26 | 'title-user' => 'フォルダ', 27 | 'title-share' => '共有フォルダ', 28 | 'title-item' => 'アイテム', 29 | 'title-size' => 'サイズ', 30 | 'title-type' => 'タイプ', 31 | 'title-modified' => '編集', 32 | 'title-action' => 'アクション', 33 | 34 | 'type-folder' => 'フォルダ', 35 | 36 | 'message-empty' => 'このフォルダは空です。', 37 | 'message-choose' => 'ファイル選択', 38 | 'message-delete' => 'このアイテムを削除してもよろしいですか?', 39 | 'message-name' => 'フォルダ名', 40 | 'message-rename' => 'ファイル名変更', 41 | 'message-extension_not_found' => '画像の切り抜き、リサイズ、サムネイル作成には、gdまたはimagickの拡張機能をインストールしてください', 42 | 'message-drop' => 'または、ここにファイルをドロップしてアップロード', 43 | 44 | 'error-rename' => 'すでに使用されているファイル名です!', 45 | 'error-file-name' => 'ファイル名は空にできません!', 46 | 'error-file-empty' => 'ファイルを選択してください!', 47 | 'error-file-exist' => 'この名前のファイルはすでに存在します!', 48 | 'error-file-size' => 'ファイルサイズがサーバーの制限を超えています (最大サイズ: :max)', 49 | 'error-delete-folder'=> 'このフォルダは空ではないので削除できません!', 50 | 'error-folder-name' => 'フォルダ名は空にできません!', 51 | 'error-folder-exist'=> 'この名前のフォルダは既に存在します!', 52 | 'error-folder-alnum'=> 'フォルダ名は英数字のみ使用可能です!', 53 | 'error-folder-not-found'=> 'フォルダが見つかりません! (:folder)', 54 | 'error-mime' => '予期しないMimeType: ', 55 | 'error-size' => '限界サイズ:', 56 | 'error-instance' => 'アップロードされたファイルはUploadedFileのインスタンスでなければなりません', 57 | 'error-invalid' => 'アップロードリクエストが無効です', 58 | 'error-other' => 'エラーが発生しました: ', 59 | 'error-too-large' => 'リクエストエンティティが大きすぎます!', 60 | 61 | 'btn-upload' => 'アップロード', 62 | 'btn-uploading' => 'アップロード中...', 63 | 'btn-close' => '閉じる', 64 | 'btn-crop' => 'トリミング', 65 | 'btn-copy-crop' => 'コピー&トリミング', 66 | 'btn-crop-free' => '自由', 67 | 'btn-cancel' => 'キャンセル', 68 | 'btn-confirm' => '確認する', 69 | 'btn-resize' => 'リサイズ', 70 | 'btn-open' => 'フォルダを開く', 71 | 72 | 'resize-ratio' => '比率:', 73 | 'resize-scaled' => 'イメージの縮尺:', 74 | 'resize-true' => 'はい', 75 | 'resize-old-height' => '元の縦幅:', 76 | 'resize-old-width' => '元の横幅:', 77 | 'resize-new-height' => '縦幅:', 78 | 'resize-new-width' => '横幅:', 79 | ]; 80 | -------------------------------------------------------------------------------- /src/lang/ka/lfm.php: -------------------------------------------------------------------------------- 1 | 'უკან', 5 | 'nav-new' => 'ახალი საქაღალდე', 6 | 'nav-upload' => 'ატვირთვა', 7 | 'nav-thumbnails' => 'ესკიზები', 8 | 'nav-list' => 'სია', 9 | 'nav-sort' => 'სორტირება', 10 | 'nav-sort-alphabetic' => 'სორტირება ანბანის მიხედვით', 11 | 'nav-sort-time' => 'სორტირება დროის მიხედვით', 12 | 13 | 'menu-rename' => 'სახელის შეცვლა', 14 | 'menu-delete' => 'წაშლა', 15 | 'menu-view' => 'ნახვა', 16 | 'menu-download' => 'გადმოწერა', 17 | 'menu-resize' => 'ზომის შეცვლა', 18 | 'menu-crop' => 'ამოჭრა', 19 | 20 | 'title-page' => 'ფაილების მენეჯერი', 21 | 'title-panel' => 'ფაილების მენეჯერი', 22 | 'title-upload' => 'ფაილ(ებ)ის ატვირთვა', 23 | 'title-view' => 'ფაილის ნახვა', 24 | 'title-root' => 'ფაილები', 25 | 'title-shares' => 'გაზიარებული ფაილები', 26 | 'title-item' => 'Item', 27 | 'title-size' => 'ზომა', 28 | 'title-type' => 'ტიპი', 29 | 'title-modified' => 'დარედაქტირდა', 30 | 'title-action' => 'ქმედება', 31 | 32 | 'type-folder' => 'საქაღალდე', 33 | 34 | 'message-empty' => 'საქაღალდე ცარიელია.', 35 | 'message-choose' => 'ფაილ(ებ)ის არჩევა', 36 | 'message-delete' => 'ნამდვილად გსურთ აღნიშნულის წაშლა?', 37 | 'message-name' => 'საქაღალდის დასახელება:', 38 | 'message-rename' => 'სახელის შეცვლა:', 39 | 'message-extension_not_found' => 'გთხოვთ დააყენოთ gd ან imagick გაფართოებები რათა ამოჭრათ, ზომა შეუცვალოთ და გააკეთოთ გამოსახულების ესკიზი.', 40 | 41 | 'error-rename' => 'ფაილი იდენტური დასახელებით უკვე არსებობს!', 42 | 'error-file-name' => 'ფაილის დასახელება არ შეიძლება იყოს ცარიელი!', 43 | 'error-file-empty' => 'თქვენ უნდა აირჩიოთ ფაილი!', 44 | 'error-file-exist' => 'ფაილი იდენტური სახელით უკვე არსებობს!', 45 | 'error-file-size' => 'ფაილის ზომა მეტია დასაშვებზე! (მაქსიმალური ზომა: :max)', 46 | 'error-delete-folder' => 'საქაღალდის წაშლა შეუძლებელია, რადგან არ არის ცარიელი!', 47 | 'error-folder-name' => 'საქაღალდის დასახელება არ შეიძლება იყოს ცარიელი!', 48 | 'error-folder-exist' => 'საქაღალდე იდენტური დასახელებით უკვე არსებობს!', 49 | 'error-folder-alnum' => 'დასაშვებია მხოლოდ ციფრები და ასოები!', 50 | 'error-folder-not-found' => 'საქაღალდე ვერ მოიძებნა! (:folder)', 51 | 'error-mime' => 'არასწორი MimeType: ', 52 | 'error-size' => 'ლიმიტის გადაჭარბება:', 53 | 'error-instance' => 'აღნიშნული ფაილი უნდა იყოს UploadedFile-ის ინსტანსი', 54 | 'error-invalid' => 'არასწორი ატვირთვის მოთხოვნა', 55 | 'error-other' => 'შეცდომაა: ', 56 | 'error-too-large' => 'აღნიშნული ფაილი ძალიან დიდია!', 57 | 58 | 'btn-upload' => 'ფაილ(ებ)ის ატვირთვა', 59 | 'btn-uploading' => 'იტვირთება...', 60 | 'btn-close' => 'დახურვა', 61 | 'btn-crop' => 'ამოჭრა', 62 | 'btn-copy-crop' => 'დაკოპირება & ამოჭრა', 63 | 'btn-cancel' => 'გაუქმება', 64 | 'btn-resize' => 'ზომის შეცვლა', 65 | 66 | 'resize-ratio' => 'პროპორცია:', 67 | 'resize-scaled' => 'სკალირებული გამოსახულება:', 68 | 'resize-true' => 'კი', 69 | 'resize-old-height' => 'ორიგინალის სიმაღლე:', 70 | 'resize-old-width' => 'ორიგინალის სიგანე:', 71 | 'resize-new-height' => 'სიმაღლე:', 72 | 'resize-new-width' => 'სიგანე:', 73 | 74 | 'locale-bootbox' => 'ka', 75 | ]; 76 | -------------------------------------------------------------------------------- /src/lang/nl/lfm.php: -------------------------------------------------------------------------------- 1 | 'Terug', 5 | 'nav-new' => 'Nieuwe Map', 6 | 'nav-upload' => 'Upload', 7 | 'nav-thumbnails' => 'Thumbnails', 8 | 'nav-list' => 'Lijst', 9 | 'nav-sort' => 'Sorteren', 10 | 'nav-sort-alphabetic' => 'Sorteer op naam', 11 | 'nav-sort-time' => 'Sorteer op tijd', 12 | 13 | 'menu-rename' => 'Hernoemen', 14 | 'menu-delete' => 'Verwijderen', 15 | 'menu-view' => 'Bekijken', 16 | 'menu-download' => 'Download', 17 | 'menu-resize' => 'Formaat aanpassen', 18 | 'menu-crop' => 'Bijsnijden', 19 | 'menu-move' => 'Verplaatsen', 20 | 'menu-multiple' => 'Multi-selectie', 21 | 22 | 'title-page' => 'File Manager', 23 | 'title-panel' => 'Laravel FileManager', 24 | 'title-upload' => 'Bestand uploaden', 25 | 'title-view' => 'Bestand bekijken', 26 | 'title-user' => 'Bestanden', 27 | 'title-share' => 'Openbare map', 28 | 'title-item' => 'Item', 29 | 'title-size' => 'Grootte', 30 | 'title-type' => 'Type', 31 | 'title-modified' => 'Gewijzigd', 32 | 'title-action' => 'Actie', 33 | 34 | 'type-folder' => 'Map', 35 | 36 | 'message-empty' => 'De map is leeg.', 37 | 'message-choose' => 'Kies bestand', 38 | 'message-delete' => 'Weet u zeker dat u dit bestand wilt verwijderen?', 39 | 'message-name' => 'Mapnaam:', 40 | 'message-rename' => 'Hernoemen naar:', 41 | 'message-extension_not_found' => 'Installeer de GD of Imagick extensie om afbeeldingen te kunnen bewerken.', 42 | 'message-drop' => 'Of sleep bestanden naar hier om te uploaden', 43 | 44 | 'error-rename' => 'Bestandsnaam is al in gebruik!', 45 | 'error-file-empty' => 'U dient een bestand te kiezen!', 46 | 'error-file-exist' => 'Een bestand met deze naam bestaat al!', 47 | 'error-file-size' => 'Bestandsgrootte overschrijdt de server limiet! (maximale grootte: :max)', 48 | 'error-delete-folder' => 'U kunt deze map niet verwijderen omdat deze nog bestanden bevat!', 49 | 'error-folder-name' => 'Mapnaam mag niet leeg zijn!', 50 | 'error-folder-exist' => 'Een map met deze naam bestaat al!', 51 | 'error-folder-alnum' => 'Alleen alfanumerieke map namen zijn toegestaan!', 52 | 'error-mime' => 'Onverwacht MimeType: ', 53 | 'error-instance' => 'Het geuploade bestand moet een instantie zijn van UploadedFile', 54 | 'error-invalid' => 'Ongeldig upload verzoek', 55 | 'error-other' => 'Er is een fout opgetreden: ', 56 | 'error-size' => 'U heeft de maximale bestandsgrootte overschreden:', 57 | 'error-too-large' => 'De verzoek entiteit is te groot!', 58 | 59 | 'btn-upload' => 'Bestand uploaden', 60 | 'btn-uploading' => 'Uploaden...', 61 | 'btn-close' => 'Sluiten', 62 | 'btn-crop' => 'Bijsnijden', 63 | 'btn-copy-crop' => 'Kopiëren & Bijsnijden', 64 | 'btn-crop-free' => 'Vrij', 65 | 'btn-cancel' => 'Annuleren', 66 | 'btn-confirm' => 'Bevestigen', 67 | 'btn-resize' => 'Formaat aanpassen', 68 | 'btn-open' => 'Map openen', 69 | 70 | 'resize-ratio' => 'Ratio:', 71 | 'resize-scaled' => 'Afbeelding geschaald:', 72 | 'resize-true' => 'Ja', 73 | 'resize-old-height' => 'Originele hoogte:', 74 | 'resize-old-width' => 'Originele breedte:', 75 | 'resize-new-height' => 'Hoogte:', 76 | 'resize-new-width' => 'Breedte:', 77 | 78 | 'locale-bootbox' => 'nl', 79 | ]; 80 | -------------------------------------------------------------------------------- /src/lang/pl/lfm.php: -------------------------------------------------------------------------------- 1 | 'Powrót', 5 | 'nav-new' => 'Nowy Folder', 6 | 'nav-upload' => 'Wgraj plik', 7 | 'nav-thumbnails' => 'Miniaturki', 8 | 'nav-list' => 'Lista', 9 | 'nav-sort' => 'Sortuj', 10 | 'nav-sort-alphabetic'=> 'Sortuj alfabetycznie', 11 | 'nav-sort-time' => 'Sortuj według czasu', 12 | 13 | 'menu-rename' => 'Zmień nazwę', 14 | 'menu-delete' => 'Usuń', 15 | 'menu-view' => 'Wyświetl', 16 | 'menu-download' => 'Pobierz', 17 | 'menu-resize' => 'Zmień rozmiar', 18 | 'menu-crop' => 'Przytnij', 19 | 'menu-move' => 'Przenieś', 20 | 'menu-multiple' => 'Zaznacz wiele', 21 | 22 | 'title-page' => 'Menedżer plików', 23 | 'title-panel' => 'Laravel FileManager', 24 | 'title-upload' => 'Wgraj plik', 25 | 'title-view' => 'Podgląd', 26 | 'title-user' => 'Pliki', 27 | 'title-share' => 'Udostępnione pliki', 28 | 'title-item' => 'Nazwa', 29 | 'title-size' => 'Rozmiar', 30 | 'title-type' => 'Typ', 31 | 'title-modified' => 'Utworzono', 32 | 'title-action' => 'Akcje', 33 | 34 | 'type-folder' => 'Folder', 35 | 36 | 'message-empty' => 'Przepraszamy, ten folder jest pusty.', 37 | 'message-choose' => 'Wybierz plik', 38 | 'message-delete' => 'Czy na pewno chcesz usunąć ten plik?', 39 | 'message-name' => 'Nazwa folderu:', 40 | 'message-rename' => 'Zmień nazwę:', 41 | 'message-extension_not_found' => 'Niestety, nie znaleziono wymaganych rozszerzeń. Zainstaluj gd lub imagick aby manipulować grafiką', 42 | 'message-drop' => 'lub upuść pliki tutaj, aby je przesłać', 43 | 44 | 'error-rename' => 'Niestety, istnieje już plik o takiej nazwie!', 45 | 'error-file-empty' => 'You must choose a file!', 46 | 'error-file-exist' => 'Niestety, istnieje już plik o takiej nazwie!', 47 | 'error-file-size' => 'Przekroczono maksymalny rozmiar wgrywanych plików! (maximum size: :max)', 48 | 'error-delete-folder'=> 'Nie możesz usunąć tego folderu, ponieważ nie jest pusty!', 49 | 'error-folder-name' => 'Nazwa folderu nie może być pusta!', 50 | 'error-folder-exist'=> 'Folder o tej nazwie już istnieje!', 51 | 'error-folder-alnum'=> 'Dozwolone są jedynie nazwy alfanumeryczne!', 52 | 'error-folder-not-found'=> 'Nie znaleziono folderu! (:folder)', 53 | 'error-mime' => 'Nierozpoznawany MimeType: ', 54 | 'error-size' => 'Przekroczono limit rozmiaru:', 55 | 'error-instance' => 'Wgrywany obiekt powinien być instanją UploadedFile', 56 | 'error-invalid' => 'Nieprawidłowe zapytanie', 57 | 'error-other' => 'Napotkano następujący błąd: ', 58 | 'error-too-large' => 'Przekroczono dozwolony czas operacji!', 59 | 60 | 'btn-upload' => 'Wgraj plik', 61 | 'btn-uploading' => 'Wgrywanie...', 62 | 'btn-close' => 'Zamknij', 63 | 'btn-crop' => 'Przytnij', 64 | 'btn-cancel' => 'Anuluj', 65 | 'btn-resize' => 'Zmień rozmiar', 66 | 'btn-confirm' => 'Zatwierdź', 67 | 'btn-copy-crop' => 'Kopiuj przycięte', 68 | 'btn-crop-free' => 'Skaluj', 69 | 'btn-open' => 'Otwórz', 70 | 71 | 'resize-ratio' => 'Stosunek:', 72 | 'resize-scaled' => 'Zmieniono rozmiar:', 73 | 'resize-true' => 'tak', 74 | 'resize-old-height' => 'Orginalna wysokość:', 75 | 'resize-old-width' => 'Orginalna szerokość:', 76 | 'resize-new-height' => 'Wysokość:', 77 | 'resize-new-width' => 'Szerokość:', 78 | 79 | 'locale-bootbox' => 'pl', 80 | ]; 81 | -------------------------------------------------------------------------------- /src/lang/pt-BR/lfm.php: -------------------------------------------------------------------------------- 1 | 'Voltar', 5 | 'nav-new' => 'Nova Pasta', 6 | 'nav-upload' => 'Enviar', 7 | 'nav-thumbnails' => 'Miniatura', 8 | 'nav-list' => 'Lista', 9 | 'nav-sort' => 'Ordenar', 10 | 'nav-sort-alphabetic'=> 'Ordenar alfabeticamente', 11 | 'nav-sort-time' => 'Ordenar por data', 12 | 13 | 'menu-rename' => 'Renomear', 14 | 'menu-delete' => 'Deletar', 15 | 'menu-view' => 'Ver', 16 | 'menu-download' => 'Download', 17 | 'menu-resize' => 'Redimensionar', 18 | 'menu-crop' => 'Cortar', 19 | 'menu-move' => 'Mover', 20 | 'menu-multiple' => 'Selecionar vários', 21 | 22 | 'title-page' => 'Gerenciador de Arquivos', 23 | 'title-panel' => 'Gerenciador de Arquivos', 24 | 'title-upload' => 'Envio de Arquivo', 25 | 'title-view' => 'Ver Arquivo', 26 | 'title-user' => 'Arquivos', 27 | 'title-share' => 'Arquivos Compartilhados', 28 | 'title-item' => 'Item', 29 | 'title-size' => 'Tamanho', 30 | 'title-type' => 'Tipo', 31 | 'title-modified' => 'Modificado', 32 | 'title-action' => 'Ação', 33 | 34 | 'type-folder' => 'Pasta', 35 | 36 | 'message-empty' => 'A pasta está vazia.', 37 | 'message-choose' => 'Escolha um arquivo', 38 | 'message-delete' => 'Você está certo que quer deletar este arquivo?', 39 | 'message-name' => 'Nome da pasta:', 40 | 'message-rename' => 'Renomear para:', 41 | 'message-extension_not_found' => 'Por favor instale a extenção gd ou imagick para recortar, redimensionar e criar miniaturas das imagens.', 42 | 'message-drop' => 'Solte seus arquivos aqui', 43 | 44 | 'error-rename' => 'Nome de arquivo já está em uso!', 45 | 'error-file-name' => 'O nome do arquivo não pode estar vazio!', 46 | 'error-file-empty' => 'Você deve escolher um arquivo!', 47 | 'error-file-exist' => 'Um arquivo com este nome já existe!', 48 | 'error-file-size' => 'Tamanho do arquivo excedeu o limite permitido pelo servidor! (Tamanho máximo: :max)', 49 | 'error-delete-folder'=> 'Você não pode deletar esta pasta, pois ela não está vazia!', 50 | 'error-folder-name' => 'Nome da pasta não pode ser vazio!', 51 | 'error-folder-exist'=> 'Uma pasta com este nome já existe!', 52 | 'error-folder-alnum'=> 'Permitido somente caracteres alfanuméricos para nomes de pastas!', 53 | 'error-folder-not-found'=> 'A pasta não foi encontrada! (:folder)', 54 | 'error-mime' => 'MimeType inesperado: ', 55 | 'error-size' => 'Excede o tamanho máximo:', 56 | 'error-instance' => 'O arquivo enviado deve ser uma instância de UploadedFile', 57 | 'error-invalid' => 'Pedido de upload inválido', 58 | 'error-other' => 'Ocorreu um erro: ', 59 | 'error-too-large' => 'Solicitar entidade muito grande!', 60 | 61 | 'btn-upload' => 'Enviar Arquivo', 62 | 'btn-uploading' => 'Enviando...', 63 | 'btn-close' => 'Fechar', 64 | 'btn-crop' => 'Cortar', 65 | 'btn-copy-crop' => 'Copie e corte', 66 | 'btn-crop-free' => 'Livre', 67 | 'btn-cancel' => 'Cancelar', 68 | 'btn-confirm' => 'Confirmar', 69 | 'btn-resize' => 'Redimensionar', 70 | 'btn-open' => 'Abrir Pasta', 71 | 72 | 'resize-ratio' => 'Proporção:', 73 | 'resize-scaled' => 'Imagem dimensionada:', 74 | 'resize-true' => 'Sim', 75 | 'resize-old-height' => 'Altura Original:', 76 | 'resize-old-width' => 'Largura Original:', 77 | 'resize-new-height' => 'Altura:', 78 | 'resize-new-width' => 'Largura:', 79 | 80 | 'locale-bootbox' => 'pt_BR', 81 | ]; 82 | -------------------------------------------------------------------------------- /src/lang/pt/lfm.php: -------------------------------------------------------------------------------- 1 | 'Voltar', 5 | 'nav-new' => 'Nova Pasta', 6 | 'nav-upload' => 'Enviar', 7 | 'nav-thumbnails' => 'Miniatura', 8 | 'nav-list' => 'Lista', 9 | 'nav-sort' => 'Ordenar', 10 | 'nav-sort-alphabetic'=> 'Ordenar alfabeticamente', 11 | 'nav-sort-time' => 'Ordenar por data', 12 | 13 | 'menu-rename' => 'Renomear', 14 | 'menu-delete' => 'Apagar', 15 | 'menu-view' => 'Ver', 16 | 'menu-download' => 'Download', 17 | 'menu-resize' => 'Redimensionar', 18 | 'menu-crop' => 'Cortar', 19 | 20 | 'title-page' => 'Gestor de Arquivos', 21 | 'title-panel' => 'Gestor de Arquivos', 22 | 'title-upload' => 'Envio de Arquivo', 23 | 'title-view' => 'Ver Arquivo', 24 | 'title-user' => 'Arquivos', 25 | 'title-share' => 'Arquivos Compartilhados', 26 | 'title-item' => 'Item', 27 | 'title-size' => 'Tamanho', 28 | 'title-type' => 'Tipo', 29 | 'title-modified' => 'Modificado', 30 | 'title-action' => 'Ação', 31 | 32 | 'type-folder' => 'Pasta', 33 | 34 | 'message-empty' => 'A pasta está vazia.', 35 | 'message-choose' => 'Escolha um arquivo', 36 | 'message-delete' => 'Tem a certeza que deseja apagar este arquivo?', 37 | 'message-name' => 'Nome da pasta:', 38 | 'message-rename' => 'Renomear para:', 39 | 'message-extension_not_found' => 'Por favor instale a extenção gd ou imagick para recortar, redimensionar e criar miniaturas das imagens.', 40 | 41 | 'error-rename' => 'O nome do arquivo já está em uso!', 42 | 'error-file-name' => 'O nome do arquivo não pode ser vazio!', 43 | 'error-file-empty' => 'Deve escolher um arquivo!', 44 | 'error-file-exist' => 'Já existe um arquivo com este nome!', 45 | 'error-file-size' => 'O tamanho do arquivo excedeu o limite permitido pelo servidor! (Tamanho máximo: :max)', 46 | 'error-delete-folder'=> 'Não pode apagar esta pasta. A mesma não se encontra vazia!', 47 | 'error-folder-name' => 'O nome da pasta não pode ser vazio!', 48 | 'error-folder-exist'=> 'Já existe uma pasta com este nome!', 49 | 'error-folder-alnum'=> 'Apenas valores alfanuméricos são permitidos para o nome da pasta!', 50 | 'error-folder-not-found'=> 'A pasta não foi encontrada! (:folder)', 51 | 'error-mime' => 'Tipo de ficheiro não suportado: ', 52 | 'error-size' => 'O ficheiro excede o tamanho máximo:', 53 | 'error-instance' => 'O arquivo enviado deve ser uma instância de UploadedFile', 54 | 'error-invalid' => 'Pedido de upload inválido', 55 | 'error-other' => 'Ocorreu um erro: ', 56 | 'error-too-large' => 'Solicitação muito grande!', 57 | 58 | 'btn-upload' => 'Enviar Arquivo', 59 | 'btn-uploading' => 'A enviar...', 60 | 'btn-close' => 'Fechar', 61 | 'btn-crop' => 'Cortar', 62 | 'btn-copy-crop' => 'Copie e corte', 63 | 'btn-cancel' => 'Cancelar', 64 | 'btn-resize' => 'Redimensionar', 65 | 66 | 'resize-ratio' => 'Proporção:', 67 | 'resize-scaled' => 'Imagem dimensionada:', 68 | 'resize-true' => 'Sim', 69 | 'resize-old-height' => 'Altura Original:', 70 | 'resize-old-width' => 'Largura Original:', 71 | 'resize-new-height' => 'Altura:', 72 | 'resize-new-width' => 'Largura:', 73 | 74 | 'locale-bootbox' => 'pt', 75 | ]; 76 | -------------------------------------------------------------------------------- /src/lang/ro/lfm.php: -------------------------------------------------------------------------------- 1 | 'Înapoi', 5 | 'nav-new' => 'Folder Nou', 6 | 'nav-upload' => 'Încarcă', 7 | 'nav-thumbnails' => 'Miniatură', 8 | 'nav-list' => 'Listă', 9 | 'nav-sort' => 'Sortează', 10 | 'nav-sort-alphabetic'=> 'După Alfabet', 11 | 'nav-sort-time' => 'După timp', 12 | 13 | 'menu-rename' => 'Redenumește', 14 | 'menu-delete' => 'Șterge', 15 | 'menu-view' => 'Previzualizează', 16 | 'menu-download' => 'Descarcă', 17 | 'menu-resize' => 'Redimensionează', 18 | 'menu-crop' => 'Taie', 19 | 'menu-move' => 'Mută', 20 | 'menu-multiple' => 'Selectare multiplă', 21 | 22 | 'title-page' => 'Manager fișiere', 23 | 'title-panel' => 'Laravel FileManager', 24 | 'title-upload' => 'Încarcă fișier(e)', 25 | 'title-view' => 'Vezi fișier', 26 | 'title-user' => 'Fișiere', 27 | 'title-share' => 'Fișiere distribuite', 28 | 'title-item' => 'Element', 29 | 'title-size' => 'Dimensiune', 30 | 'title-type' => 'Tip', 31 | 'title-modified' => 'Modificat', 32 | 'title-action' => 'Acțiune', 33 | 34 | 'type-folder' => 'Folder', 35 | 36 | 'message-empty' => 'Folderul este gol.', 37 | 'message-choose' => 'Alege fișier(e)', 38 | 'message-delete' => 'Ești sigur că vrei să ștergi acest element?', 39 | 'message-name' => 'Nume folder:', 40 | 'message-rename' => 'Redenumește în:', 41 | 'message-extension_not_found' => 'Te rog instalează extensia gd sau imagick ca să poți tăia, redimensiona sau genera miniaturi ale imaginilor.', 42 | 'message-drop' => 'Sau trageți fișierele aici pentru încărcare', 43 | 44 | 'error-rename' => 'Nume fișier este deja folosit!', 45 | 'error-file-name' => 'Numele fișierului nu poate fi gol!', 46 | 'error-file-empty' => 'Trebuie să alegi un fișier!', 47 | 'error-file-exist' => 'Există deja un fișier cu acest nume!', 48 | 'error-file-size' => 'Dimeniunea fișierului depășeste limita maximă a serverului! (limită maximă: :max)', 49 | 'error-delete-folder'=> 'Nu poți șterge acest folder pentru că nu este gol!', 50 | 'error-folder-name' => 'Numele folderului nu poate fi gol!', 51 | 'error-folder-exist'=> 'Există deja un folder cu acest nume!', 52 | 'error-folder-alnum'=> 'Sunt permise doar nume alfanumerice pentru foldere!', 53 | 'error-folder-not-found'=> 'Folderul nu a fost gasit! (:folder)', 54 | 'error-mime' => 'MimeType necunoscut: ', 55 | 'error-size' => 'Dimensiune peste limită:', 56 | 'error-instance' => 'Fișierul încărcat trebuie să fie o instanță a UploadedFile', 57 | 'error-invalid' => 'Cerere invalidă de upload', 58 | 'error-other' => 'A apărut o eroare: ', 59 | 'error-too-large' => 'Entitate request prea mare!', 60 | 61 | 'btn-upload' => 'Încarcă fișier(e)', 62 | 'btn-uploading' => 'Încarcare...', 63 | 'btn-close' => 'Închide', 64 | 'btn-crop' => 'Taie', 65 | 'btn-copy-crop' => 'Copiază și Taie', 66 | 'btn-crop-free' => 'Tăiere liberă', 67 | 'btn-cancel' => 'Anulează', 68 | 'btn-confirm' => 'Confirmă', 69 | 'btn-resize' => 'Redimensionează', 70 | 'btn-open' => 'Deschide folder', 71 | 72 | 'resize-ratio' => 'Rație:', 73 | 'resize-scaled' => 'Imagine scalată:', 74 | 'resize-true' => 'Da', 75 | 'resize-old-height' => 'Înălțime originală:', 76 | 'resize-old-width' => 'Lățime originală:', 77 | 'resize-new-height' => 'Înălțime:', 78 | 'resize-new-width' => 'Lățime:', 79 | 80 | 'locale-bootbox' => 'ro', 81 | ]; 82 | -------------------------------------------------------------------------------- /src/lang/rs/lfm.php: -------------------------------------------------------------------------------- 1 | 'Nazad', 5 | 'nav-new' => 'Nova fascikla', 6 | 'nav-upload' => 'Otpremiti', 7 | 'nav-thumbnails' => 'Sličice', 8 | 'nav-list' => 'Lista', 9 | 'nav-sort' => 'Poredaj', 10 | 'nav-sort-alphabetic' => 'Poredaj po abecedi', 11 | 'nav-sort-time' => 'Poredaj po vremenu', 12 | 13 | 'menu-rename' => 'Preimenuj', 14 | 'menu-delete' => 'Izbriši', 15 | 'menu-view' => 'Pregled', 16 | 'menu-download' => 'Preuzimanje', 17 | 'menu-resize' => 'Promenite veličinu', 18 | 'menu-crop' => 'Odreži', 19 | 'menu-move' => 'Premesti', 20 | 'menu-multiple' => 'Višestruki izbor', 21 | 22 | 'title-page' => 'File Manager', 23 | 'title-panel' => 'Laravel FileManager', 24 | 'title-upload' => 'Dodaj fajl(ove)', 25 | 'title-view' => 'Pogledaj Fajl', 26 | 'title-user' => 'Fajlovi', 27 | 'title-share' => 'Deljeni fajlovi', 28 | 'title-item' => 'Predmet', 29 | 'title-size' => 'Veličina', 30 | 'title-type' => 'Tip', 31 | 'title-modified' => 'Izmenjen', 32 | 'title-action' => 'Akcija', 33 | 34 | 'type-folder' => 'Fascikla', 35 | 36 | 'message-empty' => 'Mapa je prazna.', 37 | 'message-choose' => 'Odaberite datoteke', 38 | 'message-delete' => 'Da li ste sigurni da želite da izbrišete ovu stavku?', 39 | 'message-name' => 'Ime fascikle:', 40 | 'message-rename' => 'Preimenuj u:', 41 | 'message-extension_not_found' => 'Instalirajte dodatak gd ili imagick da biste odrezali, promenili veličinu i napravili sličice slika.', 42 | 'message-drop' => 'Ili ovde spustite datoteke da biste ih otpremili', 43 | 44 | 'error-rename' => 'Naziv datoteke se već koristi!', 45 | 'error-file-name' => 'Ime datoteke ne može biti prazno!', 46 | 'error-file-empty' => 'Morate odabrati datoteku!', 47 | 'error-file-exist' => 'Datoteka sa ovim imenom već postoji!', 48 | 'error-file-size' => 'Veličina datoteke premašuje ograničenje servera! (maksimalna veličina: :max)', 49 | 'error-delete-folder' => 'Ne možete izbrisati ovu fasciklu jer nije prazna!', 50 | 'error-folder-name' => 'Ime mape ne može biti prazno!', 51 | 'error-folder-exist' => 'Fascikla sa ovim imenom već postoji!', 52 | 'error-folder-alnum' => 'Dozvoljena su samo alfanumerička imena mapa!', 53 | 'error-folder-not-found' => 'Direktorijum nije pronađen! (:folder)', 54 | 'error-mime' => 'Neočekivani MimeTipe: ', 55 | 'error-size' => 'Prekoračena veličina:', 56 | 'error-instance' => 'Otpremljena datoteka treba da bude instanca UploadedFile', 57 | 'error-invalid' => 'Nevažeći zahtev za otpremanje', 58 | 'error-other' => 'Došlo do greške: ', 59 | 'error-too-large' => 'Entitet zahteva je prevelik!', 60 | 61 | 'btn-upload' => 'Dodaj fajl(ove)', 62 | 'btn-uploading' => 'Otpremanje ...', 63 | 'btn-close' => 'Zatvori', 64 | 'btn-crop' => 'Odreži', 65 | 'btn-copy-crop' => 'Kopiraj i Odreži', 66 | 'btn-crop-free' => 'besplatno', 67 | 'btn-cancel' => 'Poništiti, otkazati', 68 | 'btn-confirm' => 'Potvrdi', 69 | 'btn-resize' => 'Promenite veličinu', 70 | 'btn-open' => 'Otvori folder', 71 | 72 | 'resize-ratio' => 'Odnos:', 73 | 'resize-scaled' => 'Slika umanjena:', 74 | 'resize-true' => 'Da', 75 | 'resize-old-height' => 'Originalna visina:', 76 | 'resize-old-width' => 'Originalna širina:', 77 | 'resize-new-height' => 'Visina:', 78 | 'resize-new-width' => 'Širina:', 79 | ]; 80 | -------------------------------------------------------------------------------- /src/lang/ru/lfm.php: -------------------------------------------------------------------------------- 1 | 'Назад', 5 | 'nav-new' => 'Новая папка', 6 | 'nav-upload' => 'Загрузить', 7 | 'nav-thumbnails' => 'Миниатюры', 8 | 'nav-list' => 'Список', 9 | 'nav-sort' => 'Сортировать', 10 | 'nav-sort-alphabetic'=> 'Сортировать по алфавиту', 11 | 'nav-sort-time' => 'Сортировать по времени', 12 | 13 | 'menu-rename' => 'Переименовать', 14 | 'menu-delete' => 'Удалить', 15 | 'menu-view' => 'Просмотр', 16 | 'menu-download' => 'Загрузить', 17 | 'menu-resize' => 'Изменить размер', 18 | 'menu-crop' => 'Обрезать', 19 | 'menu-move' => 'Переместить', 20 | 'menu-multiple' => 'Multi-выбор', 21 | 22 | 'title-page' => 'Менеджер файлов', 23 | 'title-panel' => 'Laravel FileManager', 24 | 'title-upload' => 'Загрузка файла', 25 | 'title-view' => 'Просмотр файла', 26 | 'title-user' => 'Файлы', 27 | 'title-share' => 'Общие файлы', 28 | 'title-item' => 'Номер', 29 | 'title-size' => 'Размер', 30 | 'title-type' => 'Тип', 31 | 'title-modified' => 'Изменен', 32 | 'title-action' => 'Действие', 33 | 34 | 'type-folder' => 'Папка', 35 | 36 | 'message-empty' => 'Папка пуста.', 37 | 'message-choose' => 'Выберите файл', 38 | 'message-delete' => 'Вы уверены что хотите это удалить?', 39 | 'message-name' => 'Название папки:', 40 | 'message-rename' => 'Переименовать в:', 41 | 'message-extension_not_found' => 'Требуется установка GD или Imagick расширения для обрезания, масштабирования и создания миниатюр изображений.', 42 | 'message-drop' => 'Или переместите сюда файлы для загрузки', 43 | 44 | 'error-rename' => 'Имя файла уже используется!', 45 | 'error-file-name' => 'Имя файла не может быть пустым!', 46 | 'error-file-empty' => 'Вы должны выбрать файл!', 47 | 'error-file-exist' => 'Файл с этим именем уже существует!', 48 | 'error-file-size' => 'Размер файла превышает разрешенный сервером размер! (максимальный размер: :max)', 49 | 'error-delete-folder'=> 'Вы не можете удалить эту папку, потому что она не пустая!', 50 | 'error-folder-name' => 'Имя папки не может быть пустым!', 51 | 'error-folder-exist'=> 'Папка с таким названием уже существует!', 52 | 'error-folder-alnum'=> 'Название папки должно содержать только цифры и латинские буквы!', 53 | 'error-folder-not-found'=> 'Папка не найдена! (:folder)', 54 | 'error-mime' => 'Неподдерживаемый MimeType: ', 55 | 'error-size' => 'Размер превышает разрешенный:', 56 | 'error-instance' => 'Загруженный файл должен быть экземпляром UploadedFile', 57 | 'error-invalid' => 'Неверный запрос загрузки', 58 | 'error-other' => 'Произошла ошибка: ', 59 | 'error-too-large' => 'Размер загружаемого файла слишком велик!', 60 | 61 | 'btn-upload' => 'Загрузить файл', 62 | 'btn-uploading' => 'Загрузка...', 63 | 'btn-close' => 'Закрыть', 64 | 'btn-crop' => 'Обрезать', 65 | 'btn-copy-crop' => 'Скопировать & Обрезать', 66 | 'btn-crop-free' => 'Освободить', 67 | 'btn-cancel' => 'Отмена', 68 | 'btn-confirm' => 'Подтвердить', 69 | 'btn-resize' => 'Изменить размер', 70 | 'btn-open' => 'Открыть папку', 71 | 72 | 'resize-ratio' => 'Соотношение:', 73 | 'resize-scaled' => 'Масштабировать изображение:', 74 | 'resize-true' => 'Да', 75 | 'resize-old-height' => 'Оригинальная высота:', 76 | 'resize-old-width' => 'Оригинальная ширина:', 77 | 'resize-new-height' => 'Высота:', 78 | 'resize-new-width' => 'Ширина:', 79 | 80 | 'locale-bootbox' => 'ru', 81 | ]; 82 | -------------------------------------------------------------------------------- /src/lang/sk/lfm.php: -------------------------------------------------------------------------------- 1 | 'Späť', 5 | 'nav-new' => 'Nový priečinok', 6 | 'nav-upload' => 'Nahrať', 7 | 'nav-thumbnails' => 'Zmenšeniny', 8 | 'nav-list' => 'Zoznam', 9 | 'nav-sort' => 'Zoradiť', 10 | 'nav-sort-alphabetic'=> 'Zoradiť podľa abecedy', 11 | 'nav-sort-time' => 'Zoradiť podľa času', 12 | 13 | 'menu-rename' => 'Premenovať', 14 | 'menu-delete' => 'Zmazať', 15 | 'menu-view' => 'Zobraziť', 16 | 'menu-download' => 'Stiahnuť', 17 | 'menu-resize' => 'Zmenšiť', 18 | 'menu-crop' => 'Orezať', 19 | 'menu-move' => 'Presunúť', 20 | 'menu-multiple' => 'Vybrať viacero súborov', 21 | 22 | 'title-page' => 'File Manager', 23 | 'title-panel' => 'Laravel FileManager', 24 | 'title-upload' => 'Nahrať súbor(y)', 25 | 'title-view' => 'Zobraziť súbor', 26 | 'title-user' => 'Moje súbory', 27 | 'title-share' => 'Zdieľané súbory', 28 | 'title-item' => 'Položka', 29 | 'title-size' => 'Veľkosť', 30 | 'title-type' => 'Typ', 31 | 'title-modified' => 'Modifikované', 32 | 'title-action' => 'Akcia', 33 | 34 | 'type-folder' => 'Priečinok', 35 | 36 | 'message-empty' => 'Priečinok je prázdny.', 37 | 'message-choose' => 'Vyberte súbor(y)', 38 | 'message-delete' => 'Naozaj chcete zmazať túto položku?', 39 | 'message-name' => 'Názov priečinku:', 40 | 'message-rename' => 'Premenovať na:', 41 | 'message-extension_not_found' => 'Prosíme nainštalujte gd alebo imagick rozšírenie pre orezávanie, zmenšovanie, alebo vytváranie zmenšenín obrázkov.', 42 | 'message-drop' => 'Alebo pretiahnite súbory pre nahratie.', 43 | 44 | 'error-rename' => 'Tento názov súboru už existuje!', 45 | 'error-file-name' => 'Názov súboru nemôže byť prázdny!', 46 | 'error-file-empty' => 'Vyberte súbor!', 47 | 'error-file-exist' => 'Súbor s tymto názvom už existuje!', 48 | 'error-file-size' => 'Veľkosť súboru prekročila limit servera! (Mazimálna veľkosť je: :max)', 49 | 'error-delete-folder'=> 'Tento priečinok nie je možné vymazať, kedže nie je prázdny!', 50 | 'error-folder-name' => 'Názov priečinku nesmie byť prázdny!', 51 | 'error-folder-exist'=> 'Priečinok s tymto názvom už existuje!', 52 | 'error-folder-alnum'=> 'Len písmena a čísline su povolené v názve priečinku!', 53 | 'error-folder-not-found'=> 'Priečinok nebol nájdeny! (:folder)', 54 | 'error-mime' => 'Nepovolený typ súbory: ', 55 | 'error-size' => 'Súbor presahuje povolenú veľkosť:', 56 | 'error-instance' => 'Nahraný súbor by mal byť inštancie UploadedFile', 57 | 'error-invalid' => 'Chybná požiadavka', 58 | 'error-other' => 'Nečakaná chyba: ', 59 | 'error-too-large' => 'Request entity too large!', 60 | 61 | 'btn-upload' => 'Nahrajte súbor(y)', 62 | 'btn-uploading' => 'Nahrávame...', 63 | 'btn-close' => 'Zrušiť', 64 | 'btn-crop' => 'Orezať', 65 | 'btn-copy-crop' => 'Skopírovať a orezať', 66 | 'btn-crop-free' => 'Voľné', 67 | 'btn-cancel' => 'Zrušiť', 68 | 'btn-confirm' => 'Povrdiť', 69 | 'btn-resize' => 'Zmenšiť', 70 | 'btn-open' => 'Otvoriť priečinok', 71 | 72 | 'resize-ratio' => 'Ratio:', 73 | 'resize-scaled' => 'Obrázok zmenšený:', 74 | 'resize-true' => 'Áno', 75 | 'resize-old-height' => 'Pôvodna výška:', 76 | 'resize-old-width' => 'Pôvodna šírka:', 77 | 'resize-new-height' => 'Výška:', 78 | 'resize-new-width' => 'Šírka:', 79 | ]; 80 | -------------------------------------------------------------------------------- /src/lang/sv/lfm.php: -------------------------------------------------------------------------------- 1 | 'Tillbaka', 5 | 'nav-new' => 'Ny mapp', 6 | 'nav-upload' => 'Ladda up', 7 | 'nav-thumbnails' => 'Miniatyrer', 8 | 'nav-list' => 'Lista', 9 | 'nav-sort' => 'Sortera', 10 | 'nav-sort-alphabetic'=> 'Sortera efter alfabetet', 11 | 'nav-sort-time' => 'Sortera efter tid', 12 | 13 | 'menu-rename' => 'Byt namn', 14 | 'menu-delete' => 'Ta bort', 15 | 'menu-view' => 'Förhandsgranska', 16 | 'menu-download' => 'Ladda ner', 17 | 'menu-resize' => 'Ändra storlek', 18 | 'menu-crop' => 'Beskär', 19 | 20 | 'title-page' => 'Filhanterare', 21 | 'title-panel' => 'Laravel Filhanterare', 22 | 'title-upload' => 'Ladda upp fil(er)', 23 | 'title-view' => 'Visa fil', 24 | 'title-user' => 'Filer', 25 | 'title-share' => 'Delade filer', 26 | 'title-item' => 'Objekt', 27 | 'title-size' => 'Storlek', 28 | 'title-type' => 'Typ', 29 | 'title-modified' => 'Ändrat', 30 | 'title-action' => 'Hantera', 31 | 32 | 'type-folder' => 'Map', 33 | 34 | 'message-empty' => 'Mappen är tom', 35 | 'message-choose' => 'Välj fil(er)', 36 | 'message-delete' => 'Är du säker på att du vill radera det här objektet?', 37 | 'message-name' => 'Mappnamn:', 38 | 'message-rename' => 'Byt namn till:', 39 | 'message-extension_not_found' => 'Vänligen installera gd- eller imagick-tillägget för att beskära, ändra storlek och göra miniatyrer av bilder.', 40 | 41 | 'error-rename' => 'Filnamnet finns redan!', 42 | 'error-file-name' => 'Filnamnet kan inte vara tomt!', 43 | 'error-file-empty' => 'Du måste välja en fil!', 44 | 'error-file-exist' => 'En fil med detta namn finns redan!', 45 | 'error-file-size' => 'Filstorleken överstiger servergränsen! (maximal storlek:: max) ', 46 | 'error-delete-folder'=> 'Du kan inte radera den här mappen eftersom den inte är tom!', 47 | 'error-folder-name' => 'Mappnamnet kan inte vara tomt!', 48 | 'error-folder-exist'=> 'En mapp med detta namn finns redan!', 49 | 'error-folder-alnum'=> 'Endast alfanumeriska mappnamn är tillåtna!', 50 | 'error-folder-not-found'=> 'Mappen hittades inte! (:folder)', 51 | 'error-mime' => 'Oväntad MimeType: ', 52 | 'error-size' => 'Över storleksgräns:', 53 | 'error-instance' => 'Den uppladdade filen måste vara en typ UploadedFile', 54 | 'error-invalid' => 'Ogiltig uppladdningsförfrågan', 55 | 'error-other' => 'Ett fel har uppstått:', 56 | 'error-too-large' => 'Objektet i begäran är för stor!', 57 | 58 | 'btn-upload' => 'Ladda upp fil(er)', 59 | 'btn-uploading' => 'Laddar upp...', 60 | 'btn-close' => 'Stäng', 61 | 'btn-crop' => 'Beskär', 62 | 'btn-copy-crop' => 'Kopiera & Beskär', 63 | 'btn-cancel' => 'Avbryt', 64 | 'btn-resize' => 'Ändra stolek', 65 | 66 | 'resize-ratio' => 'Förhållande:', 67 | 'resize-scaled' => 'Bildskala:', 68 | 'resize-true' => 'Ja', 69 | 'resize-old-height' => 'Original höjd:', 70 | 'resize-old-width' => 'Original bredd:', 71 | 'resize-new-height' => 'Höjd:', 72 | 'resize-new-width' => 'Bredd:', 73 | 74 | 'locale-bootbox' => 'sv', 75 | ]; 76 | -------------------------------------------------------------------------------- /src/lang/tr/lfm.php: -------------------------------------------------------------------------------- 1 | 'Geri', 5 | 'nav-new' => 'Yeni Klasör', 6 | 'nav-upload' => 'Yükle', 7 | 'nav-thumbnails' => 'Küçük Resim', 8 | 'nav-list' => 'Liste', 9 | 'nav-sort' => 'Sırala', 10 | 'nav-sort-alphabetic'=> 'A-Z Sırala', 11 | 'nav-sort-time' => 'Zamana Göre Sırala', 12 | 13 | 'menu-rename' => 'Ad değiştir', 14 | 'menu-delete' => 'Sil', 15 | 'menu-view' => 'Görüntüle', 16 | 'menu-download' => 'İndir', 17 | 'menu-resize' => 'Boyutlandır', 18 | 'menu-crop' => 'Kırp', 19 | 'menu-move' => 'Taşı', 20 | 'menu-multiple' => 'Çoklu Seçim', 21 | 22 | 'title-page' => 'Dosya Kütüphanesi', 23 | 'title-panel' => 'Laravel Dosya Kütüphanesi', 24 | 'title-upload' => 'Dosya Yükle', 25 | 'title-view' => 'Dosya Gör', 26 | 'title-user' => 'Dosyalarım', 27 | 'title-share' => 'Paylaşılan Dosyalar', 28 | 'title-item' => 'Dosya', 29 | 'title-size' => 'Boyut', 30 | 'title-type' => 'Tür', 31 | 'title-modified' => 'Güncelleme', 32 | 'title-action' => 'Komutlar', 33 | 34 | 'type-folder' => 'Klasör', 35 | 36 | 'message-empty' => 'Klasör boş.', 37 | 'message-choose' => 'Dosya seç', 38 | 'message-delete' => 'Bu dosyayı silmek istediğinizden emin misiniz?', 39 | 'message-name' => 'Klasör adı:', 40 | 'message-rename' => 'Yeni ad:', 41 | 'message-extension_not_found' => 'Lütfen resimleri kesmek, yeniden boyutlandırmak ve küçük resimler oluşturmak için gd veya imagick eklentisini yükleyin', 42 | 'message-drop' => 'Veya buraya dosyaları sürükle bırak', 43 | 44 | 'error-rename' => 'Dosya adı kullanımda!', 45 | 'error-file-name' => 'Dosya adı boş bırakılamaz!', 46 | 'error-file-empty' => 'Bir dosya seçmelisiniz!', 47 | 'error-file-exist' => 'Bu adda bir dosya zaten var!', 48 | 'error-file-size' => 'Dosya boyutu sunucu limitini aşıyor! (maximum boyut: :max)', 49 | 'error-delete-folder'=> 'Klasör boş olmadığından, klasörü silemezsiniz!', 50 | 'error-folder-name' => 'Klasör adı yazılmalıdır!', 51 | 'error-folder-exist'=> 'Bu adda bir klasör zaten var!', 52 | 'error-folder-alnum'=> 'Yalnızca alfasayısal klasör adlarına izin verilir!', 53 | 'error-folder-not-found'=> 'Klasör bulunamadı! (:folder)', 54 | 'error-mime' => 'Beklenmeyen Mime Türü: ', 55 | 'error-size' => 'Boyut sınırın üstünde:', 56 | 'error-instance' => 'Yüklenen dosya, UploadedFile örneğinde olmalıdır', 57 | 'error-invalid' => 'Geçersiz yükleme isteği', 58 | 'error-other' => 'Bir hata oluştu: ', 59 | 'error-too-large' => 'Girilen veri çok fazla!', 60 | 61 | 'btn-upload' => 'Yükle', 62 | 'btn-uploading' => 'Yükleniyor...', 63 | 'btn-close' => 'Kapat', 64 | 'btn-crop' => 'Kırp', 65 | 'btn-copy-crop' => 'Kopyala & Kes', 66 | 'btn-crop-free' => 'Serbest', 67 | 'btn-cancel' => 'İptal', 68 | 'btn-confirm' => 'Onayla', 69 | 'btn-resize' => 'Boyutlandır', 70 | 'btn-open' => 'Klasörü Aç', 71 | 72 | 'resize-ratio' => 'Oran:', 73 | 'resize-scaled' => 'Boyutlandırıldı:', 74 | 'resize-true' => 'Evet', 75 | 'resize-old-height' => 'Orijinal Yükseklik:', 76 | 'resize-old-width' => 'Orijinal Genişlik:', 77 | 'resize-new-height' => 'Yükseklik:', 78 | 'resize-new-width' => 'Genişlik:', 79 | 80 | 'locale-bootbox' => 'tr', 81 | ]; 82 | -------------------------------------------------------------------------------- /src/lang/uk/lfm.php: -------------------------------------------------------------------------------- 1 | 'Назад', 5 | 'nav-new' => 'Нова папка', 6 | 'nav-upload' => 'Завантажити', 7 | 'nav-thumbnails' => 'Мініатюри', 8 | 'nav-list' => 'Список', 9 | 'nav-sort' => 'Сортувати', 10 | 'nav-sort-alphabetic'=> 'Сортувати за алфавітом', 11 | 'nav-sort-time' => 'Сортувати за часом', 12 | 13 | 'menu-rename' => 'Перейменувати', 14 | 'menu-delete' => 'Вилучити', 15 | 'menu-view' => 'Перегляд', 16 | 'menu-download' => 'Завантажити', 17 | 'menu-resize' => 'Змінити розмір', 18 | 'menu-crop' => 'Обрізати', 19 | 'menu-move' => 'Перемістити', 20 | 'menu-multiple' => 'Multi-виділення', 21 | 22 | 'title-page' => 'Менеджер файлів', 23 | 'title-panel' => 'Laravel FileManager', 24 | 'title-upload' => 'Завантаження файлу', 25 | 'title-view' => 'Перегляд файлу', 26 | 'title-user' => 'Файли', 27 | 'title-share' => 'Спільні файли', 28 | 'title-item' => 'Номер', 29 | 'title-size' => 'Розмір', 30 | 'title-type' => 'Тип', 31 | 'title-modified' => 'Змінений', 32 | 'title-action' => 'Дія', 33 | 34 | 'type-folder' => 'Папка', 35 | 36 | 'message-empty' => 'Папка порожня.', 37 | 'message-choose' => 'Виберіть файл(-и)', 38 | 'message-delete' => 'Ви впевнені, що хочете вилучити цей елемент?', 39 | 'message-name' => 'Назва папки:', 40 | 'message-rename' => 'Перейменувати в:', 41 | 'message-extension_not_found' => 'Інсталюйте, будь ласка, розширення GD чи ImageMagick щоб мати можливість кадрувати, змінювати розміри чи створювати ескізи зображень.', 42 | 'message-drop' => 'Або перетягніть файли сюди для завантаження', 43 | 44 | 'error-rename' => 'Ім\'я файлу вже використовується!', 45 | 'error-file-name' => 'Ім\'я файлу не може бути порожнім!', 46 | 'error-file-empty' => 'Ви повинні вибрати файл!', 47 | 'error-file-exist' => 'Файл з таким ім\'ям вже існує!', 48 | 'error-file-size' => 'Розмір файлу перевищує обмеження сервера! (максимальний розмір: :max)', 49 | 'error-delete-folder'=> 'Ви не можете вилучити цю папку, оскільки вона не порожня!', 50 | 'error-folder-name' => 'Ім\'я папки не може бути порожнім!', 51 | 'error-folder-exist'=> 'Папка з тиким ім\'ям вже існує!', 52 | 'error-folder-alnum'=> 'Дозволені лише буквено-цифрові імена папок!', 53 | 'error-folder-not-found'=> 'Папку не знайдено! (:folder)', 54 | 'error-mime' => 'Недозволений MimeType: ', 55 | 'error-size' => 'Розмір перевищує дозволений:', 56 | 'error-instance' => 'Завантажений файл має бути екземпляром UploadedFile', 57 | 'error-invalid' => 'Неправильний запит на завантаження', 58 | 'error-other' => 'Сталася помилка: ', 59 | 'error-too-large' => 'Занадто великий об\'єкт запиту!', 60 | 61 | 'btn-upload' => 'Завантажити файл', 62 | 'btn-uploading' => 'Завантаження...', 63 | 'btn-close' => 'Закрити', 64 | 'btn-crop' => 'Обрізати', 65 | 'btn-copy-crop' => 'Скопіювати & Обрізати', 66 | 'btn-crop-free' => 'Звільнити', 67 | 'btn-cancel' => 'Скасувати', 68 | 'btn-confirm' => 'Підтвердити', 69 | 'btn-resize' => 'Змінити розмір', 70 | 'btn-open' => 'Відкрити папку', 71 | 72 | 'resize-ratio' => 'Співвідношення:', 73 | 'resize-scaled' => 'Масштабоване зображення:', 74 | 'resize-true' => 'Так', 75 | 'resize-old-height' => 'Оригінальна висота:', 76 | 'resize-old-width' => 'Оригінальна ширина:', 77 | 'resize-new-height' => 'Висота:', 78 | 'resize-new-width' => 'Ширина:', 79 | 80 | 'locale-bootbox' => 'uk', 81 | ]; 82 | -------------------------------------------------------------------------------- /src/lang/uz/lfm.php: -------------------------------------------------------------------------------- 1 | 'Orqaga', 5 | 'nav-new' => 'yangi jild', 6 | 'nav-upload' => 'Yuklash', 7 | 'nav-thumbnails' => 'Eskizlar', 8 | 'nav-list' => 'List', 9 | 'nav-sort' => 'Saralash', 10 | 'nav-sort-alphabetic' => 'Alifbo tartibida saralash', 11 | 'nav-sort-time' => 'Vaqt bo`yicha saralash', 12 | 13 | 'menu-rename' => 'Qayta nomlash', 14 | 'menu-delete' => "O'chirish", 15 | 'menu-view' => 'Ko`rish', 16 | 'menu-download' => 'Yuklab olish', 17 | 'menu-resize' => 'Oʻlchamini oʻzgartirish', 18 | 'menu-crop' => 'Kesish', 19 | 'menu-move' => 'Koʻchirish', 20 | 'menu-multiple' => "Ko'p tanlov", 21 | 22 | 'title-page' => 'File Manager', 23 | 'title-panel' => 'Laravel FileManager', 24 | 'title-upload' => 'Fayl(lar)ni Yuklash', 25 | 'title-view' => 'Faylni ko`rish', 26 | 'title-user' => 'Fayllar', 27 | 'title-share' => 'Fayllarni ulashish', 28 | 'title-item' => 'Element', 29 | 'title-size' => 'hajmi', 30 | 'title-type' => 'Turi', 31 | 'title-modified' => 'Oʻzgartirilgan', 32 | 'title-action' => 'Amal', 33 | 34 | 'type-folder' => 'Jild', 35 | 36 | 'message-empty' => 'Jild boʻsh', 37 | 'message-choose' => 'Faylni tanlash', 38 | 'message-delete' => 'Haqiqatan ham bu elementni oʻchirib tashlamoqchimisiz?', 39 | 'message-name' => 'Jild nomi:', 40 | 'message-rename' => 'Nomni o`zgartirish:', 41 | 'message-extension_not_found' => 'Tasvirlarni kesish, o‘lchamini o‘zgartirish va eskizlarini yaratish uchun gd yoki imagick kengaytmasini o‘rnating.', 42 | 'message-drop' => 'Yoki yuklash uchun fayllarni shu yerga sudrab olib kelib tashlang', 43 | 44 | 'error-rename' => 'Bunday nomli fayl avvaldan mavjud!', 45 | 'error-file-name' => 'Fayl nomi boʻsh boʻlishi mumkin emas!', 46 | 'error-file-empty' => 'Siz faylni tanlashingiz kerak!', 47 | 'error-file-exist' => 'Bunday nomli fayl allaqachon mavjud!', 48 | 'error-file-size' => 'Fayl hajmi server chegarasidan oshib ketdi! (maximum size: :max)', 49 | 'error-delete-folder' => 'Siz bu jildni oʻchira olmaysiz, chunki u boʻsh emas!', 50 | 'error-folder-name' => 'Jild nomi boʻsh boʻlishi mumkin emas!', 51 | 'error-folder-exist' => 'Bunday nomli jild allaqachon mavjud!', 52 | 'error-folder-alnum' => 'Faqat harf-raqamli jild nomlariga ruxsat beriladi!', 53 | 'error-folder-not-found' => '(:folder) nomli jild topilmadi', 54 | 'error-mime' => 'Kutilmagan MimeType:', 55 | 'error-size' => "Cheklovdan oshgan o'lcham:", 56 | 'error-instance' => "Yuklangan fayl UploadedFile nusxasi bo'lishi kerak", 57 | 'error-invalid' => 'Yuklash so‘rovi noto‘g‘ri', 58 | 'error-other' => 'Xatolik yuz berdi:', 59 | 'error-too-large' => "So'rov ob'ekti juda katta!", 60 | 61 | 'btn-upload' => 'Fayl(lar)ni yuklash', 62 | 'btn-uploading' => 'Yuklanmoqda...', 63 | 'btn-close' => 'Yopish', 64 | 'btn-crop' => 'Kesish', 65 | 'btn-copy-crop' => 'Nusxalash va kesish', 66 | 'btn-crop-free' => 'Boʻsh', 67 | 'btn-cancel' => 'Bekor qilish', 68 | 'btn-confirm' => 'Tasdiqlash', 69 | 'btn-resize' => 'Oʻlchamini oʻzgartirish', 70 | 'btn-open' => 'Jild ochish', 71 | 72 | 'resize-ratio' => 'Nisbat:', 73 | 'resize-scaled' => 'Rasm masshtabli:', 74 | 'resize-true' => 'Ha', 75 | 'resize-old-height' => 'Original Balandligi:', 76 | 'resize-old-width' => 'Original Kengligi:', 77 | 'resize-new-height' => 'Balandligi:', 78 | 'resize-new-width' => 'Kengligi:', 79 | ]; 80 | -------------------------------------------------------------------------------- /src/lang/vi/lfm.php: -------------------------------------------------------------------------------- 1 | 'Trở lại', 5 | 'nav-new' => 'Thư mục mới', 6 | 'nav-upload' => 'Tải lên', 7 | 'nav-thumbnails' => 'Hình thu nhỏ', 8 | 'nav-list' => 'Danh sách', 9 | 'nav-sort' => 'Sắp xếp', 10 | 'nav-sort-alphabetic'=> 'Sắp xếp theo bảng chữ cái', 11 | 'nav-sort-time' => 'Sắp xếp theo thời gian', 12 | 13 | 'menu-rename' => 'Đổi tên', 14 | 'menu-delete' => 'Xóa bỏ', 15 | 'menu-view' => 'Xem trước', 16 | 'menu-download' => 'Tải về', 17 | 'menu-resize' => 'Thay đổi kích thước', 18 | 'menu-crop' => 'Cắt', 19 | 'menu-move' => 'Di chuyển', 20 | 'menu-multiple' => 'Chọn nhiều', 21 | 22 | 'title-page' => 'Quản lý tập tin', 23 | 'title-panel' => 'Trình quản lý tập tin Laravel', 24 | 'title-upload' => 'Tải lên tập tin', 25 | 'title-view' => 'Xem tài liệu', 26 | 'title-user' => 'Các tập tin', 27 | 'title-share' => 'Thư mục chia sẻ', 28 | 'title-item' => 'Mục', 29 | 'title-size' => 'Kích thước', 30 | 'title-type' => 'Kiểu', 31 | 'title-modified' => 'Sửa đổi', 32 | 'title-action' => 'Hoạt động', 33 | 34 | 'type-folder' => 'Thư mục', 35 | 36 | 'message-empty' => 'Thư mục rỗng.', 37 | 'message-choose' => 'Chọn tập tin', 38 | 'message-delete' => 'Bạn có chắc bạn muốn xóa mục này?', 39 | 'message-name' => 'Tên thư mục:', 40 | 'message-rename' => 'Đổi tên thành:', 41 | 'message-extension_not_found' => 'Vui lòng cài đặt gd hoặc extension imagick để cắt, thay đổi kích thước và tạo hình thu nhỏ của hình ảnh.', 42 | 'message-drop' => 'Hoặc thả tập tin vào đây để tải lên', 43 | 44 | 'error-rename' => 'Tên tệp đã được sử dụng!', 45 | 'error-file-name' => 'Tên tệp không thể để trống!', 46 | 'error-file-empty' => 'Bạn phải chọn một tập tin!', 47 | 'error-file-exist' => 'Một tập tin với tên này đã tồn tại!', 48 | 'error-file-size' => 'Kích thước tệp vượt quá giới hạn máy chủ! (Kích thước tối đa: :max)', 49 | 'error-delete-folder'=> 'Bạn không thể xóa thư mục này vì nó không trống!', 50 | 'error-folder-name' => 'Tên thư mục không được để trống!', 51 | 'error-folder-exist'=> 'Một thư mục có tên này đã tồn tại!', 52 | 'error-folder-alnum'=> 'Chỉ cho phép tên thư mục chữ và số!', 53 | 'error-folder-not-found'=> 'Không tìm thấy thư mục! (:folder)', 54 | 'error-mime' => 'Unexpected MimeType: ', 55 | 'error-size' => 'Kích thước quá giới hạn:', 56 | 'error-instance' => 'Tệp đã tải lên phải là một phiên bản của UploadedFile', 57 | 'error-invalid' => 'Yêu cầu tải lên không hợp lệ', 58 | 'error-other' => 'Một lỗi đã xảy ra: ', 59 | 'error-too-large' => 'Yêu cầu thực thể quá lớn!', 60 | 61 | 'btn-upload' => 'Tải lên tập tin', 62 | 'btn-uploading' => 'Đang tải lên...', 63 | 'btn-close' => 'Đóng', 64 | 'btn-crop' => 'Cắt', 65 | 'btn-copy-crop' => 'Sao chép và Cắt', 66 | 'btn-crop-free' => 'Free', 67 | 'btn-cancel' => 'Hủy bỏ', 68 | 'btn-confirm' => 'Xác nhận', 69 | 'btn-resize' => 'Thay đổi kích thước', 70 | 'btn-open' => 'Mở thư mục', 71 | 72 | 'resize-ratio' => 'Tỷ lệ:', 73 | 'resize-scaled' => 'Hình ảnh thu nhỏ:', 74 | 'resize-true' => 'Đồng ý', 75 | 'resize-old-height' => 'Chiều cao ban đầu:', 76 | 'resize-old-width' => 'Chiều rộng ban đầu:', 77 | 'resize-new-height' => 'Chiều cao:', 78 | 'resize-new-width' => 'Chiều rộng:', 79 | 80 | 'locale-bootbox' => 'vi', 81 | ]; 82 | -------------------------------------------------------------------------------- /src/lang/zh-CN/lfm.php: -------------------------------------------------------------------------------- 1 | '回上一页', 5 | 'nav-new' => '添加文件夹', 6 | 'nav-upload' => '上传档案', 7 | 'nav-thumbnails' => '缩略图显示', 8 | 'nav-list' => '列表显示', 9 | 'nav-sort' => '排序', 10 | 'nav-sort-alphabetic'=> '按字母排序', 11 | 'nav-sort-time' => '按时间排序', 12 | 13 | 'menu-rename' => '重命名', 14 | 'menu-delete' => '删除', 15 | 'menu-view' => '预览', 16 | 'menu-download' => '下载', 17 | 'menu-resize' => '缩放', 18 | 'menu-crop' => '裁剪', 19 | 20 | 'title-page' => '档案管理', 21 | 'title-panel' => '档案管理', 22 | 'title-upload' => '上传档案', 23 | 'title-view' => '预览档案', 24 | 'title-user' => '我的档案', 25 | 'title-share' => '共享的文件', 26 | 'title-item' => '项目名称', 27 | 'title-size' => '档案大小', 28 | 'title-type' => '档案类型', 29 | 'title-modified' => '上次修改', 30 | 'title-action' => '操作', 31 | 32 | 'type-folder' => '文件夹', 33 | 34 | 'message-empty' => '空的文件夹', 35 | 'message-choose' => '选择档案', 36 | 'message-delete' => '确定要删除此项目吗?', 37 | 'message-name' => '文件夹名称:', 38 | 'message-rename' => '重命名为:', 39 | 'message-extension_not_found' => '请安装 gd 或 imagick 以使用缩放、裁剪、及缩图功能', 40 | 41 | 'error-rename' => '名称重复,请重新输入!', 42 | 'error-file-name' => '文件名不能为空!', 43 | 'error-file-empty' => '请选择档案!', 44 | 'error-file-exist' => '相同档名的档案已存在!', 45 | 'error-file-size' => '档案过大,无法上传! (档案大小上限: :max)', 46 | 'error-delete-folder'=> '文件夹未清空,无法删除!', 47 | 'error-folder-name' => '请输入文件夹名称!', 48 | 'error-folder-exist'=> '相同名称的文件夹已存在!', 49 | 'error-folder-alnum'=> '文件夹名称只能包含英数字', 50 | 'error-folder-not-found'=> '找不到文件夹 :folder', 51 | 'error-mime' => 'Mime 格式错误 : ', 52 | 'error-size' => '大小超出限制:', 53 | 'error-instance' => '上传档案的 instance 应为 UploadedFile', 54 | 'error-invalid' => '验证失败,上传未成功', 55 | 'error-other' => '发生错误: ', 56 | 'error-too-large' => '请求内容太大!', 57 | 58 | 'btn-upload' => '上传', 59 | 'btn-uploading' => '上传中...', 60 | 'btn-close' => '关闭', 61 | 'btn-crop' => '裁剪', 62 | 'btn-copy-crop' => '复制并裁剪', 63 | 'btn-cancel' => '取消', 64 | 'btn-resize' => '缩放', 65 | 66 | 'resize-ratio' => '比例:', 67 | 'resize-scaled' => '是否已缩放:', 68 | 'resize-true' => '是', 69 | 'resize-old-height' => '原始高度:', 70 | 'resize-old-width' => '原始宽度:', 71 | 'resize-new-height' => '目前高度:', 72 | 'resize-new-width' => '目前宽度:', 73 | 74 | 'locale-bootbox' => 'zh_CN', 75 | ]; 76 | -------------------------------------------------------------------------------- /src/lang/zh-TW/lfm.php: -------------------------------------------------------------------------------- 1 | '回上一頁', 5 | 'nav-new' => '新增資料夾', 6 | 'nav-upload' => '上傳檔案', 7 | 'nav-thumbnails' => '縮圖顯示', 8 | 'nav-list' => '列表顯示', 9 | 'nav-sort' => '排序', 10 | 'nav-sort-alphabetic'=> '依字母排序', 11 | 'nav-sort-time' => '依時間排序', 12 | 13 | 'menu-rename' => '重新命名', 14 | 'menu-delete' => '刪除', 15 | 'menu-view' => '預覽', 16 | 'menu-download' => '下載', 17 | 'menu-resize' => '縮放', 18 | 'menu-crop' => '裁剪', 19 | 'menu-move' => '搬移', 20 | 'menu-multiple' => '多選', 21 | 22 | 'title-page' => '檔案管理', 23 | 'title-panel' => '檔案管理', 24 | 'title-upload' => '上傳檔案', 25 | 'title-view' => '預覽檔案', 26 | 'title-user' => '我的檔案', 27 | 'title-share' => '共享的檔案', 28 | 'title-item' => '項目名稱', 29 | 'title-size' => '檔案大小', 30 | 'title-type' => '檔案類型', 31 | 'title-modified' => '上次修改', 32 | 'title-action' => '操作', 33 | 34 | 'type-folder' => '資料夾', 35 | 36 | 'message-empty' => '空的資料夾', 37 | 'message-choose' => '選擇檔案', 38 | 'message-delete' => '確定要刪除此項目嗎?', 39 | 'message-name' => '資料夾名稱:', 40 | 'message-rename' => '重新命名為:', 41 | 'message-extension_not_found' => '請安裝 gd 或 imagick 以使用縮放、裁剪、及縮圖功能', 42 | 'message-drop' => '或將檔案拖拉到此處', 43 | 44 | 'error-rename' => '名稱重複,請重新輸入!', 45 | 'error-file-name' => '請輸入檔案名稱!', 46 | 'error-file-empty' => '請選擇檔案!', 47 | 'error-file-exist' => '相同檔名的檔案已存在!', 48 | 'error-file-size' => '檔案過大,無法上傳! (檔案大小上限: :max)', 49 | 'error-delete-folder'=> '資料夾未清空,無法刪除!', 50 | 'error-folder-name' => '請輸入資料夾名稱!', 51 | 'error-folder-exist'=> '相同名稱的資料夾已存在!', 52 | 'error-folder-alnum'=> '資料夾名稱只能包含英數字!', 53 | 'error-folder-not-found'=> '找不到資料夾: :folder', 54 | 'error-mime' => 'Mime 格式錯誤 : ', 55 | 'error-instance' => '上傳檔案的 instance 應為 UploadedFile', 56 | 'error-invalid' => '驗證失敗,上傳未成功', 57 | 'error-other' => '發生錯誤: ', 58 | 'error-too-large' => '請求內容太大!', 59 | 60 | 'btn-upload' => '上傳', 61 | 'btn-uploading' => '上傳中...', 62 | 'btn-close' => '關閉', 63 | 'btn-crop' => '裁剪', 64 | 'btn-copy-crop' => '裁剪為新的檔案', 65 | 'btn-crop-free' => '不限比例', 66 | 'btn-cancel' => '取消', 67 | 'btn-confirm' => '確認', 68 | 'btn-resize' => '縮放', 69 | 'btn-open' => '開啟資料夾', 70 | 71 | 'resize-ratio' => '比例:', 72 | 'resize-scaled' => '是否已縮放:', 73 | 'resize-true' => '是', 74 | 'resize-old-height' => '原始高度:', 75 | 'resize-old-width' => '原始寬度:', 76 | 'resize-new-height' => '目前高度:', 77 | 'resize-new-width' => '目前寬度:', 78 | 79 | 'locale-bootbox' => 'zh_TW', 80 | ]; 81 | -------------------------------------------------------------------------------- /src/views/crop.blade.php: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | 5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | 15 | 18 | 21 | 24 | 27 |
28 |
29 |
30 |
31 | 32 | 33 | 34 |
35 |
36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 |
44 |
45 |
46 |
47 | 48 | 105 | -------------------------------------------------------------------------------- /src/views/move.blade.php: -------------------------------------------------------------------------------- 1 | 29 | 30 | 41 | -------------------------------------------------------------------------------- /src/views/tree.blade.php: -------------------------------------------------------------------------------- 1 |
2 |

Laravel File Manager

3 | Ver 2.0 4 |
5 |
6 | 7 |
8 | 9 |
10 |

Current usage :

11 |

20 GB (Max : 1 TB)

12 |
13 |
14 |
15 |
16 |
17 |
18 | 19 | 35 | -------------------------------------------------------------------------------- /src/views/use.blade.php: -------------------------------------------------------------------------------- 1 | 17 | -------------------------------------------------------------------------------- /tests/LfmStorageRepositoryTest.php: -------------------------------------------------------------------------------- 1 | shouldReceive('getDriver')->andReturn($disk); 22 | $disk->shouldReceive('getAdapter')->andReturn($disk); 23 | $disk->shouldReceive('getPathPrefix')->andReturn('foo/bar'); 24 | $disk->shouldReceive('functionToCall')->with('foo/bar')->andReturn('baz'); 25 | $disk->shouldReceive('directories')->with('foo')->andReturn(['foo/bar']); 26 | $disk->shouldReceive('move')->with('foo/bar', 'foo/bar/baz')->andReturn(true); 27 | $disk->shouldReceive('path')->andReturn('foo/bar'); 28 | 29 | $helper = m::mock(Lfm::class); 30 | $helper->shouldReceive('config')->with('disk')->andReturn('local'); 31 | 32 | Storage::shouldReceive('disk')->with('local')->andReturn($disk); 33 | 34 | $this->storage = new LfmStorageRepository('foo/bar', $helper); 35 | } 36 | 37 | public function tearDown(): void 38 | { 39 | m::close(); 40 | } 41 | 42 | public function testMagicCall() 43 | { 44 | $this->assertEquals('baz', $this->storage->functionToCall()); 45 | } 46 | 47 | public function testRootPath() 48 | { 49 | $this->assertEquals('foo/bar', $this->storage->rootPath()); 50 | } 51 | 52 | public function testMove() 53 | { 54 | $new_lfm_path = m::mock(LfmPath::class); 55 | $new_lfm_path->shouldReceive('path')->with('storage')->andReturn('foo/bar/baz'); 56 | 57 | $this->assertTrue($this->storage->move($new_lfm_path)); 58 | } 59 | } 60 | --------------------------------------------------------------------------------