/home/mip/mip/public/vendor/laravel-filemanager/files/folder-1/821668/unisharp.tar
laravel-filemanager/tests/LfmUploadValidatorTest.php 0000644 00000012502 15243417654 0016721 0 ustar 00 <?php
use Mockery as m;
use PHPUnit\Framework\TestCase;
use Symfony\Component\HttpFoundation\File\UploadedFile;
use UniSharp\LaravelFilemanager\Exceptions\DuplicateFileNameException;
use UniSharp\LaravelFilemanager\Exceptions\EmptyFileException;
use UniSharp\LaravelFilemanager\Exceptions\ExcutableFileException;
use UniSharp\LaravelFilemanager\Exceptions\FileFailedToUploadException;
use UniSharp\LaravelFilemanager\Exceptions\FileSizeExceedConfigurationMaximumException;
use UniSharp\LaravelFilemanager\Exceptions\FileSizeExceedIniMaximumException;
use UniSharp\LaravelFilemanager\Exceptions\InvalidMimeTypeException;
use UniSharp\LaravelFilemanager\LfmPath;
use UniSharp\LaravelFilemanager\LfmUploadValidator;
function trans()
{
// leave empty
}
class LfmUploadValidatorTest extends TestCase
{
public function testPassesSizeLowerThanIniMaximum()
{
$uploaded_file = m::mock(UploadedFile::class);
$uploaded_file->shouldReceive('getError')->andReturn(UPLOAD_ERR_OK);
$validator = new LfmUploadValidator($uploaded_file);
$this->assertEquals($validator->sizeLowerThanIniMaximum(), $validator);
}
public function testFailsSizeLowerThanIniMaximum()
{
$uploaded_file = m::mock(UploadedFile::class);
$uploaded_file->shouldReceive('getError')->andReturn(UPLOAD_ERR_INI_SIZE);
$validator = new LfmUploadValidator($uploaded_file);
$this->expectException(FileSizeExceedIniMaximumException::class);
$validator->sizeLowerThanIniMaximum();
}
public function testPassesUploadWasSuccessful()
{
$uploaded_file = m::mock(UploadedFile::class);
$uploaded_file->shouldReceive('getError')->andReturn(UPLOAD_ERR_OK);
$validator = new LfmUploadValidator($uploaded_file);
$this->assertEquals($validator->uploadWasSuccessful(), $validator);
}
public function testFailsUploadWasSuccessful()
{
$uploaded_file = m::mock(UploadedFile::class);
$uploaded_file->shouldReceive('getError')->andReturn(UPLOAD_ERR_PARTIAL);
$validator = new LfmUploadValidator($uploaded_file);
$this->expectException(FileFailedToUploadException::class);
$validator->uploadWasSuccessful();
}
public function testPassesNameIsNotDuplicate()
{
$uploaded_file = m::mock(UploadedFile::class);
$lfm_path = m::mock(LfmPath::class);
$lfm_path->shouldReceive('setName')->andReturn($lfm_path);
$lfm_path->shouldReceive('exists')->andReturn(false);
$validator = new LfmUploadValidator($uploaded_file);
$this->assertEquals($validator->nameIsNotDuplicate('new_file_name', $lfm_path), $validator);
}
public function testFailsNameIsNotDuplicate()
{
$uploaded_file = m::mock(UploadedFile::class);
$lfm_path = m::mock(LfmPath::class);
$lfm_path->shouldReceive('setName')->andReturn($lfm_path);
$lfm_path->shouldReceive('exists')->andReturn(true);
$validator = new LfmUploadValidator($uploaded_file);
$this->expectException(DuplicateFileNameException::class);
$validator->nameIsNotDuplicate('new_file_name', $lfm_path);
}
public function testPassesMimetypeIsNotExcutable()
{
$uploaded_file = m::mock(UploadedFile::class);
$uploaded_file->shouldReceive('getMimeType')->andReturn('image/jpeg');
$validator = new LfmUploadValidator($uploaded_file);
$this->assertEquals($validator->mimetypeIsNotExcutable(['text/x-php']), $validator);
}
public function testFailsMimetypeIsNotExcutable()
{
$uploaded_file = m::mock(UploadedFile::class);
$uploaded_file->shouldReceive('getMimeType')->andReturn('text/x-php');
$validator = new LfmUploadValidator($uploaded_file);
$this->expectException(ExcutableFileException::class);
$validator->mimetypeIsNotExcutable(['text/x-php']);
}
public function testPassesMimeTypeIsValid()
{
$uploaded_file = m::mock(UploadedFile::class);
$uploaded_file->shouldReceive('getMimeType')->andReturn('image/jpeg');
$validator = new LfmUploadValidator($uploaded_file);
$this->assertEquals($validator->mimeTypeIsValid(['image/jpeg']), $validator);
}
public function testFailsMimeTypeIsValid()
{
$uploaded_file = m::mock(UploadedFile::class);
$uploaded_file->shouldReceive('getMimeType')->andReturn('image/jpeg');
$validator = new LfmUploadValidator($uploaded_file);
$this->expectException(InvalidMimeTypeException::class);
$validator->mimeTypeIsValid(['image/png']);
}
public function testPassesSizeIsLowerThanConfiguredMaximum()
{
$uploaded_file = m::mock(UploadedFile::class);
$uploaded_file->shouldReceive('getSize')->andReturn(500 * 1000);
$validator = new LfmUploadValidator($uploaded_file);
$this->assertEquals($validator->sizeIsLowerThanConfiguredMaximum(1000), $validator);
}
public function testFailsSizeIsLowerThanConfiguredMaximum()
{
$uploaded_file = m::mock(UploadedFile::class);
$uploaded_file->shouldReceive('getSize')->andReturn(2000 * 1000);
$validator = new LfmUploadValidator($uploaded_file);
$this->expectException(FileSizeExceedConfigurationMaximumException::class);
$validator->sizeIsLowerThanConfiguredMaximum(1000);
}
}
laravel-filemanager/tests/LfmPathTest.php 0000644 00000017506 15243417654 0014534 0 ustar 00 <?php
namespace Tests;
use Illuminate\Http\Request;
use Mockery as m;
use PHPUnit\Framework\TestCase;
use UniSharp\LaravelFilemanager\Lfm;
use UniSharp\LaravelFilemanager\LfmItem;
use UniSharp\LaravelFilemanager\LfmPath;
class LfmPathTest extends TestCase
{
public function tearDown(): void
{
m::close();
parent::tearDown();
}
public function testMagicGet()
{
$storage = m::mock(LfmStorage::class);
$helper = m::mock(Lfm::class);
$helper->shouldReceive('getStorage')->with('files/bar')->andReturn($storage);
$helper->shouldReceive('getCategoryName')->andReturn('files');
$helper->shouldReceive('input')->with('working_dir')->andReturn('/bar');
$helper->shouldReceive('isRunningOnWindows')->andReturn(false);
$helper->shouldReceive('ds')->andReturn('/');
$path = new LfmPath($helper);
$this->assertEquals($storage, $path->storage);
}
public function testMagicCall()
{
$storage = m::mock(LfmStorage::class);
$storage->shouldReceive('foo')->andReturn('bar');
$helper = m::mock(Lfm::class);
$helper->shouldReceive('getStorage')->with('files/bar')->andReturn($storage);
$helper->shouldReceive('getCategoryName')->andReturn('files');
$helper->shouldReceive('input')->with('working_dir')->andReturn('/bar');
$helper->shouldReceive('isRunningOnWindows')->andReturn(false);
$helper->shouldReceive('ds')->andReturn('/');
$path = new LfmPath($helper);
$this->assertEquals('bar', $path->foo());
}
public function testDirAndNormalizeWorkingDir()
{
$helper = m::mock(Lfm::class);
$helper->shouldReceive('input')->with('working_dir')->once()->andReturn('foo');
$helper->shouldReceive('isRunningOnWindows')->andReturn(false);
$path = new LfmPath($helper);
$this->assertEquals('foo', $path->normalizeWorkingDir());
$this->assertEquals('bar', $path->dir('bar')->normalizeWorkingDir());
}
public function testSetNameAndGetName()
{
$path = new LfmPath(m::mock(Lfm::class));
$path->setName('bar');
$this->assertEquals('bar', $path->getName());
}
public function testPath()
{
$helper = m::mock(Lfm::class);
$helper->shouldReceive('getRootFolder')->andReturn('/foo');
$helper->shouldReceive('basePath')->andReturn(realpath(__DIR__ . '/../'));
$helper->shouldReceive('input')->with('working_dir')->andReturnNull();
$helper->shouldReceive('getCategoryName')->andReturn('files');
$helper->shouldReceive('isRunningOnWindows')->andReturn(false);
$helper->shouldReceive('ds')->andReturn('/');
$storage = m::mock(LfmStorage::class);
$storage->shouldReceive('rootPath')->andReturn(realpath(__DIR__ . '/../') . '/storage/app');
$helper->shouldReceive('getStorage')->andReturn($storage);
$path = new LfmPath($helper);
$this->assertEquals('files/foo', $path->path());
$this->assertEquals('files/foo/bar', $path->setName('bar')->path('storage'));
}
public function testUrl()
{
$helper = m::mock(Lfm::class);
$helper->shouldReceive('getRootFolder')->andReturn('/foo');
$helper->shouldReceive('input')->with('working_dir')->andReturnNull();
$helper->shouldReceive('getCategoryName')->andReturn('files');
$helper->shouldReceive('isRunningOnWindows')->andReturn(false);
$helper->shouldReceive('ds')->andReturn('/');
$storage = m::mock(LfmStorage::class);
$storage->shouldReceive('url')->andReturn('/files/foo/foo');
$helper->shouldReceive('getStorage')->andReturn($storage);
$path = new LfmPath($helper);
$this->assertEquals('/files/foo/foo', $path->setName('foo')->url());
}
public function testFolders()
{
$storage = m::mock(LfmStorage::class);
$storage->shouldReceive('directories')->andReturn(['foo/bar']);
$helper = m::mock(Lfm::class);
$helper->shouldReceive('getCategoryName')->andReturn('files');
$helper->shouldReceive('input')->with('working_dir')->andReturn('/shares');
$helper->shouldReceive('input')->with('sort_type')->andReturn('alphabetic');
$helper->shouldReceive('getStorage')->andReturn($storage);
$helper->shouldReceive('getNameFromPath')->andReturn('bar');
$helper->shouldReceive('getThumbFolderName')->andReturn('thumbs');
$helper->shouldReceive('isRunningOnWindows')->andReturn(false);
$helper->shouldReceive('ds')->andReturn('/');
$helper->shouldReceive('config')
->with('item_columns')
->andReturn(['name', 'url', 'time', 'icon', 'is_file', 'is_image', 'thumb_url']);
$path = new LfmPath($helper);
$this->assertInstanceOf(LfmItem::class, $path->folders()[0]);
}
public function testFiles()
{
$storage = m::mock(LfmStorage::class);
$storage->shouldReceive('files')->andReturn(['foo/bar']);
$helper = m::mock(Lfm::class);
$helper->shouldReceive('getCategoryName')->andReturn('files');
$helper->shouldReceive('input')->with('working_dir')->andReturn('/shares');
$helper->shouldReceive('input')->with('sort_type')->andReturn('alphabetic');
$helper->shouldReceive('getStorage')->andReturn($storage);
$helper->shouldReceive('getNameFromPath')->andReturn('bar');
$helper->shouldReceive('isRunningOnWindows')->andReturn(false);
$helper->shouldReceive('ds')->andReturn('/');
$helper->shouldReceive('config')
->with('item_columns')
->andReturn(['name', 'url', 'time', 'icon', 'is_file', 'is_image', 'thumb_url']);
$path = new LfmPath($helper);
$this->assertInstanceOf(LfmItem::class, $path->files()[0]);
}
public function testPretty()
{
$helper = m::mock(Lfm::class);
$helper->shouldReceive('getNameFromPath')->andReturn('bar');
$helper->shouldReceive('isRunningOnWindows')->andReturn(false);
$helper->shouldReceive('config')
->with('item_columns')
->andReturn(['name', 'url', 'time', 'icon', 'is_file', 'is_image', 'thumb_url']);
$path = new LfmPath($helper);
$this->assertInstanceOf(LfmItem::class, $path->pretty('foo'));
}
public function testCreateFolder()
{
$storage = m::mock(LfmStorage::class);
$storage->shouldReceive('rootPath')->andReturn(realpath(__DIR__ . '/../') . '/storage/app');
$storage->shouldReceive('exists')->andReturn(false);
$storage->shouldReceive('makeDirectory')->andReturn(true);
$helper = m::mock(Lfm::class);
$helper->shouldReceive('getStorage')->with('files/bar')->andReturn($storage);
$helper->shouldReceive('getCategoryName')->andReturn('files');
$helper->shouldReceive('input')->with('working_dir')->andReturn('/bar');
$helper->shouldReceive('isRunningOnWindows')->andReturn(false);
$helper->shouldReceive('ds')->andReturn('/');
$path = new LfmPath($helper);
$this->assertNull($path->createFolder('bar'));
}
public function testCreateFolderButFolderAlreadyExists()
{
$storage = m::mock(LfmStorage::class);
$storage->shouldReceive('exists')->andReturn(true);
$storage->shouldReceive('makeDirectory')->andReturn(true);
$helper = m::mock(Lfm::class);
$helper->shouldReceive('getStorage')->with('files/bar')->andReturn($storage);
$helper->shouldReceive('getCategoryName')->andReturn('files');
$helper->shouldReceive('input')->with('working_dir')->andReturn('/bar');
$helper->shouldReceive('isRunningOnWindows')->andReturn(false);
$helper->shouldReceive('ds')->andReturn('/');
$path = new LfmPath($helper);
$this->assertFalse($path->createFolder('foo'));
}
}
laravel-filemanager/tests/LfmTest.php 0000644 00000015652 15243417654 0013717 0 ustar 00 <?php
namespace Tests;
use Illuminate\Contracts\Config\Repository as Config;
use Illuminate\Http\Request;
use Mockery as m;
use PHPUnit\Framework\TestCase;
use UniSharp\LaravelFilemanager\Lfm;
use UniSharp\LaravelFilemanager\LfmFileRepository;
use UniSharp\LaravelFilemanager\LfmStorageRepository;
class LfmTest extends TestCase
{
public function tearDown(): void
{
m::close();
parent::tearDown();
}
public function testGetStorage()
{
$config = m::mock(Config::class);
$config->shouldReceive('get')->with('lfm.disk')->once()->andReturn('local');
$lfm = new Lfm($config);
$this->assertInstanceOf(LfmStorageRepository::class, $lfm->getStorage('foo/bar'));
}
public function testInput()
{
$request = m::mock(Request::class);
$request->shouldReceive('input')->with('foo')->andReturn('bar');
$lfm = new Lfm(m::mock(Config::class), $request);
$this->assertEquals('bar', $lfm->input('foo'));
}
public function testGetNameFromPath()
{
$this->assertEquals('bar', (new Lfm)->getNameFromPath('foo/bar'));
}
public function testAllowFolderType()
{
$config = m::mock(Config::class);
$config->shouldReceive('get')->with('lfm.allow_private_folder')->once()->andReturn(true);
$config->shouldReceive('get')->with('lfm.allow_private_folder')->once()->andReturn(false);
$config->shouldReceive('get')->with('lfm.allow_private_folder')->once()->andReturn(true);
$config->shouldReceive('get')->with('lfm.allow_shared_folder')->once()->andReturn(false);
$config->shouldReceive('get')->with('lfm.folder_categories')->andReturn([]);
$config->shouldReceive('has')->andReturn(false);
$request = m::mock(Request::class);
$request->shouldReceive('input')->with('type')->andReturn('');
$lfm = new Lfm($config, $request);
$this->assertTrue($lfm->allowFolderType('user'));
$this->assertTrue($lfm->allowFolderType('shared'));
$this->assertFalse($lfm->allowFolderType('shared'));
}
public function testGetCategoryName()
{
$config = m::mock(Config::class);
$config->shouldReceive('get')
->with('lfm.folder_categories.file.folder_name', m::type('string'))
->once()
->andReturn('files');
$config->shouldReceive('get')
->with('lfm.folder_categories.image.folder_name', m::type('string'))
->once()
->andReturn('photos');
$config->shouldReceive('get')
->with('lfm.folder_categories')
->andReturn(['file' => [], 'image' => []]);
$request = m::mock(Request::class);
$request->shouldReceive('input')->with('type')->once()->andReturn('file');
$request->shouldReceive('input')->with('type')->once()->andReturn('image');
$lfm = new Lfm($config, $request);
$this->assertEquals('files', $lfm->getCategoryName('file'));
$this->assertEquals('photos', $lfm->getCategoryName('image'));
}
public function testCurrentLfmType()
{
$request = m::mock(Request::class);
$request->shouldReceive('input')->with('type')->once()->andReturn('file');
$request->shouldReceive('input')->with('type')->once()->andReturn('image');
$request->shouldReceive('input')->with('type')->once()->andReturn('foo');
$config = m::mock(Config::class);
$config->shouldReceive('get')
->with('lfm.folder_categories')
->andReturn(['file' => [], 'image' => []]);
$lfm = new Lfm($config, $request);
$this->assertEquals('file', $lfm->currentLfmType());
$this->assertEquals('image', $lfm->currentLfmType());
$this->assertEquals('file', $lfm->currentLfmType());
}
public function testGetUserSlug()
{
$config = m::mock(Config::class);
$config->shouldReceive('get')->with('lfm.private_folder_name')->once()->andReturn(function () {
return 'foo';
});
$lfm = new Lfm($config);
$this->assertEquals('foo', $lfm->getUserSlug());
}
public function testGetRootFolder()
{
$config = m::mock(Config::class);
$config->shouldReceive('get')->with('lfm.allow_private_folder')->andReturn(true);
$config->shouldReceive('get')->with('lfm.private_folder_name')->once()->andReturn(function () {
return 'foo';
});
$config->shouldReceive('get')->with('lfm.shared_folder_name')->once()->andReturn('bar');
$lfm = new Lfm($config);
$this->assertEquals('/foo', $lfm->getRootFolder('user'));
$this->assertEquals('/bar', $lfm->getRootFolder('shared'));
}
public function testGetThumbFolderName()
{
$config = m::mock(Config::class);
$config->shouldReceive('get')->with('lfm.thumb_folder_name')->once()->andReturn('foo');
$lfm = new Lfm($config);
$this->assertEquals('foo', $lfm->getThumbFolderName());
}
public function testGetFileType()
{
$config = m::mock(Config::class);
$config->shouldReceive('get')->with('lfm.file_type_array.foo', m::type('string'))->once()->andReturn('foo');
$config->shouldReceive('get')->with(m::type('string'), m::type('string'))->once()->andReturn('File');
$lfm = new Lfm($config);
$this->assertEquals('foo', $lfm->getFileType('foo'));
$this->assertEquals('File', $lfm->getFileType('bar'));
}
public function testAllowMultiUser()
{
$config = m::mock(Config::class);
$config->shouldReceive('get')->with('lfm.allow_private_folder')->once()->andReturn(true);
$config->shouldReceive('get')->with('lfm.folder_categories')->andReturn([]);
$config->shouldReceive('has')->andReturn(false);
$request = m::mock(Request::class);
$request->shouldReceive('input')->with('type')->andReturn('');
$lfm = new Lfm($config, $request);
$this->assertTrue($lfm->allowMultiUser());
}
public function testAllowShareFolder()
{
$config = m::mock(Config::class);
$config->shouldReceive('get')->with('lfm.allow_private_folder')->once()->andReturn(false);
$config->shouldReceive('get')->with('lfm.allow_private_folder')->once()->andReturn(true);
$config->shouldReceive('get')->with('lfm.allow_shared_folder')->once()->andReturn(false);
$config->shouldReceive('get')->with('lfm.folder_categories')->andReturn([]);
$config->shouldReceive('has')->andReturn(false);
$request = m::mock(Request::class);
$request->shouldReceive('input')->with('type')->andReturn('');
$lfm = new Lfm($config, $request);
$this->assertTrue($lfm->allowShareFolder());
$this->assertFalse($lfm->allowShareFolder());
}
public function testTranslateFromUtf8()
{
$input = 'test/測試';
$this->assertEquals($input, (new Lfm)->translateFromUtf8($input));
}
}
laravel-filemanager/tests/LfmStorageRepositoryTest.php 0000644 00000003322 15243417654 0017333 0 ustar 00 <?php
namespace Tests;
use Illuminate\Support\Facades\Storage;
use Mockery as m;
use PHPUnit\Framework\TestCase;
use UniSharp\LaravelFilemanager\Lfm;
use UniSharp\LaravelFilemanager\LfmPath;
use UniSharp\LaravelFilemanager\LfmStorageRepository;
class LfmStorageRepositoryTest extends TestCase
{
private $storage;
public function setUp(): void
{
parent::setUp();
$disk = m::mock('disk');
$disk->shouldReceive('getDriver')->andReturn($disk);
$disk->shouldReceive('getAdapter')->andReturn($disk);
$disk->shouldReceive('getPathPrefix')->andReturn('foo/bar');
$disk->shouldReceive('functionToCall')->with('foo/bar')->andReturn('baz');
$disk->shouldReceive('directories')->with('foo')->andReturn(['foo/bar']);
$disk->shouldReceive('move')->with('foo/bar', 'foo/bar/baz')->andReturn(true);
$disk->shouldReceive('path')->andReturn('foo/bar');
$helper = m::mock(Lfm::class);
$helper->shouldReceive('config')->with('disk')->andReturn('local');
Storage::shouldReceive('disk')->with('local')->andReturn($disk);
$this->storage = new LfmStorageRepository('foo/bar', $helper);
}
public function tearDown(): void
{
m::close();
}
public function testMagicCall()
{
$this->assertEquals('baz', $this->storage->functionToCall());
}
public function testRootPath()
{
$this->assertEquals('foo/bar', $this->storage->rootPath());
}
public function testMove()
{
$new_lfm_path = m::mock(LfmPath::class);
$new_lfm_path->shouldReceive('path')->with('storage')->andReturn('foo/bar/baz');
$this->assertTrue($this->storage->move($new_lfm_path));
}
}
laravel-filemanager/tests/LfmItemTest.php 0000644 00000015154 15243417654 0014533 0 ustar 00 <?php
namespace Tests;
use Mockery as m;
use PHPUnit\Framework\TestCase;
use UniSharp\LaravelFilemanager\Lfm;
use UniSharp\LaravelFilemanager\LfmItem;
use UniSharp\LaravelFilemanager\LfmPath;
class LfmItemTest extends TestCase
{
private $lfm_path;
private $lfm;
public function setUp(): void
{
$this->lfm = m::mock(Lfm::class);
$this->lfm_path = m::mock(LfmPath::class);
$this->lfm_path->shouldReceive('thumb')->andReturn($this->lfm_path);
$this->lfm->shouldReceive('config')
->with('item_columns')
->andReturn(['name', 'url', 'time', 'icon', 'is_file', 'is_image', 'thumb_url']);
}
public function tearDown(): void
{
m::close();
parent::tearDown();
}
public function testMagicGet()
{
$this->lfm_item = new LfmItem($this->lfm_path, $this->lfm);
$this->lfm_item->attributes['foo'] = 'bar';
$this->assertEquals('bar', $this->lfm_item->foo);
}
public function testName()
{
$this->lfm_path->shouldReceive('getName')->andReturn('bar');
$item = new LfmItem($this->lfm_path, $this->lfm);
$this->assertEquals('bar', $item->name());
}
public function testAbsolutePath()
{
$this->lfm_path->shouldReceive('path')->with('absolute')->andReturn('foo/bar.baz');
$item = new LfmItem($this->lfm_path, $this->lfm);
$this->assertEquals('foo/bar.baz', $item->path());
}
public function testIsDirectory()
{
$this->lfm_path->shouldReceive('isDirectory')->andReturn(false);
$item = new LfmItem($this->lfm_path, $this->lfm);
$this->assertFalse($item->isDirectory());
}
public function testIsFile()
{
$this->lfm_path->shouldReceive('isDirectory')->andReturn(false);
$item = new LfmItem($this->lfm_path, $this->lfm);
$this->assertTrue($item->isFile());
}
public function testIsImage()
{
$this->lfm_path->shouldReceive('mimeType')->andReturn('application/plain')->shouldReceive('isDirectory')
->andReturn(false);
$item = new LfmItem($this->lfm_path, $this->lfm);
$this->assertFalse($item->isImage());
}
public function testMimeType()
{
$this->lfm_path->shouldReceive('mimeType')->andReturn('application/plain');
$item = new LfmItem($this->lfm_path, $this->lfm);
$this->assertEquals('application/plain', $item->mimeType());
}
public function testType()
{
$this->lfm_path->shouldReceive('isDirectory')->andReturn(false);
$this->lfm_path->shouldReceive('mimeType')->andReturn('application/plain');
$this->lfm_path->shouldReceive('path')->with('absolute')->andReturn('foo/bar.baz');
$this->lfm_path->shouldReceive('extension')->andReturn('baz');
$this->lfm->shouldReceive('getFileType')->with('baz')->andReturn('File');
$item = new LfmItem($this->lfm_path, $this->lfm);
$this->assertEquals('File', $item->type());
}
public function testExtension()
{
$this->lfm_path->shouldReceive('path')->with('absolute')->andReturn('foo/bar.baz');
$this->lfm_path->shouldReceive('extension')->andReturn('baz');
$item = new LfmItem($this->lfm_path, $this->lfm);
$this->assertEquals('baz', $item->extension());
}
public function testThumbUrl()
{
$this->lfm_path->shouldReceive('isDirectory')->andReturn(false);
$this->lfm_path->shouldReceive('mimeType')->andReturn('application/plain');
$item = new LfmItem($this->lfm_path, $this->lfm);
$this->assertNull($item->thumbUrl());
}
// TODO: refactor
public function testUrl()
{
$this->lfm_path->shouldReceive('isDirectory')->andReturn(false);
$this->lfm_path->shouldReceive('getName')->andReturn('bar');
$this->lfm_path->shouldReceive('setName')->andReturn($this->lfm_path);
$this->lfm_path->shouldReceive('url')->andReturn('foo/bar');
$item = new LfmItem($this->lfm_path, $this->lfm);
$this->assertEquals('foo/bar', $item->url());
}
public function testSize()
{
$this->lfm_path->shouldReceive('size')->andReturn(1024);
$this->lfm_path->shouldReceive('isDirectory')->andReturn(false);
$item = new LfmItem($this->lfm_path, $this->lfm);
$this->assertEquals('1.00 kB', $item->size());
}
public function testTime()
{
$this->lfm_path->shouldReceive('lastModified')->andReturn(0)->shouldReceive('isDirectory')
->andReturn(false);
$item = new LfmItem($this->lfm_path, $this->lfm);
$this->assertEquals(0, $item->time());
}
public function testIcon()
{
$this->lfm_path->shouldReceive('isDirectory')->andReturn(false);
$this->lfm_path->shouldReceive('mimeType')->andReturn('application/plain');
$this->lfm_path->shouldReceive('path')->with('absolute')->andReturn('foo/bar.baz');
$this->lfm_path->shouldReceive('extension')->andReturn('baz');
$this->lfm->shouldReceive('getFileIcon')->with('baz')->andReturn('fa-file');
$item = new LfmItem($this->lfm_path, $this->lfm);
$this->assertEquals('baz', $item->icon());
// $path1 = m::mock(LfmPath::class);
// $path1->shouldReceive('path')->with('absolute')->andReturn('foo/bar');
// $path1->shouldReceive('isDirectory')->andReturn(false);
// $path1->shouldReceive('mimeType')->andReturn('image/png');
// $path3 = m::mock(LfmPath::class);
// $path3->shouldReceive('path')->with('absolute')->andReturn('foo/biz');
// $path3->shouldReceive('isDirectory')->andReturn(true);
// $this->assertEquals('fa-image', (new LfmItem($path1))->icon());
// $this->assertEquals('fa-folder-o', (new LfmItem($path3))->icon());
}
public function testHasThumb()
{
$this->lfm_path->shouldReceive('mimeType')->andReturn('application/plain')->shouldReceive('isDirectory')
->andReturn(false);
$item = new LfmItem($this->lfm_path, $this->lfm);
$this->assertFalse($item->hasThumb());
}
public function testHumanFilesize()
{
$item = new LfmItem($this->lfm_path, $this->lfm);
$this->assertEquals('1.00 kB', $item->humanFilesize(1024));
$this->assertEquals('1.00 MB', $item->humanFilesize(1024 ** 2));
$this->assertEquals('1.00 GB', $item->humanFilesize(1024 ** 3));
$this->assertEquals('1.00 TB', $item->humanFilesize(1024 ** 4));
$this->assertEquals('1.00 PB', $item->humanFilesize(1024 ** 5));
$this->assertEquals('1.00 EB', $item->humanFilesize(1024 ** 6));
}
}
laravel-filemanager/LICENSE 0000644 00000002253 15243417654 0011464 0 ustar 00 The MIT License (MIT)
Copyright (c) 2015 Trevor Sawler <https://github.com/tsawler>
Copyright (c) 2015-2017 All contributors from GitHub
Copyright (c) 2015-2017 UniSharp
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
laravel-filemanager/src/LfmPath.php 0000644 00000024602 15243417654 0013314 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager;
use Illuminate\Container\Container;
use Intervention\Image\Facades\Image as InterventionImageV2;
use Intervention\Image\Laravel\Facades\Image as InterventionImageV3;
use Symfony\Component\HttpFoundation\File\UploadedFile;
use UniSharp\LaravelFilemanager\Events\FileIsUploading;
use UniSharp\LaravelFilemanager\Events\FileWasUploaded;
use UniSharp\LaravelFilemanager\Events\ImageIsUploading;
use UniSharp\LaravelFilemanager\Events\ImageWasUploaded;
use UniSharp\LaravelFilemanager\LfmUploadValidator;
class LfmPath
{
private $working_dir;
private $item_name;
private $is_thumb = false;
private $helper;
public function __construct(Lfm $lfm = null)
{
$this->helper = $lfm;
}
public function __get($var_name)
{
if ($var_name == 'storage') {
return $this->helper->getStorage($this->path('url'));
}
}
public function __call($function_name, $arguments)
{
return $this->storage->$function_name(...$arguments);
}
public function dir($working_dir)
{
$this->working_dir = $working_dir;
return $this;
}
public function thumb($is_thumb = true)
{
$this->is_thumb = $is_thumb;
return $this;
}
public function setName($item_name)
{
$this->item_name = $item_name;
return $this;
}
public function getName()
{
return $this->item_name;
}
public function path($type = 'storage')
{
if ($type == 'working_dir') {
// working directory: /{user_slug}
return $this->translateToLfmPath($this->normalizeWorkingDir());
} elseif ($type == 'url') {
// storage: files/{user_slug}
// storage without folder: {user_slug}
return $this->helper->getCategoryName() === '.'
? ltrim($this->path('working_dir'), '/')
: $this->helper->getCategoryName() . $this->path('working_dir');
} elseif ($type == 'storage') {
// storage: files/{user_slug}
// storage on windows: files\{user_slug}
return str_replace(Lfm::DS, $this->helper->ds(), $this->path('url'));
} else {
// absolute: /var/www/html/project/storage/app/files/{user_slug}
// absolute on windows: C:\project\storage\app\files\{user_slug}
return $this->storage->rootPath() . $this->path('storage');
}
}
public function translateToLfmPath($path)
{
return str_replace($this->helper->ds(), Lfm::DS, $path);
}
public function url()
{
return $this->storage->url($this->path('url'));
}
public function folders()
{
$all_folders = array_map(function ($directory_path) {
return $this->pretty($directory_path, true);
}, $this->storage->directories());
$folders = array_filter($all_folders, function ($directory) {
return $directory->name !== $this->helper->getThumbFolderName();
});
return $this->sortByColumn($folders);
}
public function files()
{
$files = array_map(function ($file_path) {
return $this->pretty($file_path);
}, $this->storage->files());
return $this->sortByColumn($files);
}
public function pretty($item_path, $isDirectory = false)
{
return Container::getInstance()->makeWith(LfmItem::class, [
'lfm' => (clone $this)->setName($this->helper->getNameFromPath($item_path)),
'helper' => $this->helper,
'isDirectory' => $isDirectory
]);
}
public function delete()
{
if ($this->isDirectory()) {
return $this->storage->deleteDirectory();
} else {
return $this->storage->delete();
}
}
/**
* Create folder if not exist.
*
* @param string $path Real path of a directory.
* @return bool
*/
public function createFolder()
{
if ($this->storage->exists($this)) {
return false;
}
$this->storage->makeDirectory(0777, true, true);
}
public function isDirectory()
{
$working_dir = $this->path('working_dir');
$parent_dir = substr($working_dir, 0, strrpos($working_dir, '/'));
$parent_directories = array_map(function ($directory_path) {
return app(static::class)->translateToLfmPath($directory_path);
}, app(static::class)->dir($parent_dir)->directories());
return in_array($this->path('url'), $parent_directories);
}
/**
* Check a folder and its subfolders is empty or not.
*
* @param string $directory_path Real path of a directory.
* @return bool
*/
public function directoryIsEmpty()
{
return count($this->storage->allFiles()) == 0;
}
public function normalizeWorkingDir()
{
$path = $this->working_dir
?: $this->helper->input('working_dir')
?: $this->helper->getRootFolder();
if ($this->is_thumb) {
// Prevent if working dir is "/" normalizeWorkingDir will add double "//" that breaks S3 functionality
$path = rtrim($path, Lfm::DS) . Lfm::DS . $this->helper->getThumbFolderName();
}
if ($this->getName()) {
// Prevent if working dir is "/" normalizeWorkingDir will add double "//" that breaks S3 functionality
$path = rtrim($path, Lfm::DS) . Lfm::DS . $this->getName();
}
return $path;
}
/**
* Sort files and directories.
*
* @param mixed $arr_items Array of files or folders or both.
* @return array of object
*/
public function sortByColumn($arr_items)
{
$sort_by = $this->helper->input('sort_type');
if (in_array($sort_by, ['name', 'time'])) {
$key_to_sort = $sort_by;
} else {
$key_to_sort = 'name';
}
uasort($arr_items, function ($a, $b) use ($key_to_sort) {
return strcasecmp($a->{$key_to_sort}, $b->{$key_to_sort});
});
return $arr_items;
}
public function error($error_type, $variables = [])
{
throw new \Exception($this->helper->error($error_type, $variables));
}
// Upload section
public function upload($file)
{
$new_file_name = $this->getNewName($file);
$new_file_path = $this->setName($new_file_name)->path('absolute');
event(new FileIsUploading($new_file_path));
event(new ImageIsUploading($new_file_path));
try {
$this->setName($new_file_name)->storage->save($file);
$this->generateThumbnail($new_file_name);
} catch (\Exception $e) {
\Log::info($e);
return $this->error('invalid');
}
event(new FileWasUploaded($new_file_path));
event(new ImageWasUploaded($new_file_path));
return $new_file_name;
}
public function validateUploadedFile($file)
{
$validator = new LfmUploadValidator($file);
$validator->sizeLowerThanIniMaximum();
$validator->uploadWasSuccessful();
if (!config('lfm.over_write_on_duplicate')) {
$validator->nameIsNotDuplicate($this->getNewName($file), $this);
}
$validator->mimetypeIsNotExcutable(config('lfm.disallowed_mimetypes', ['text/x-php', 'text/html', 'text/plain']));
$validator->extensionIsNotExcutable(config('lfm.disallowed_extensions', ['php', 'html']));
if (config('lfm.should_validate_mime', false)) {
$validator->mimeTypeIsValid($this->helper->availableMimeTypes());
}
if (config('lfm.should_validate_size', false)) {
$validator->sizeIsLowerThanConfiguredMaximum($this->helper->maxUploadSize());
}
return true;
}
private function getNewName($file)
{
$new_file_name = $this->helper->translateFromUtf8(
trim($this->helper->utf8Pathinfo($file->getClientOriginalName(), "filename"))
);
$extension = $file->getClientOriginalExtension();
if (config('lfm.rename_file') === true) {
$new_file_name = uniqid();
} elseif (config('lfm.alphanumeric_filename') === true) {
$new_file_name = preg_replace('/[^A-Za-z0-9\-\']/', '_', $new_file_name);
}
if ($extension) {
$new_file_name_with_extention = $new_file_name . '.' . $extension;
}
if (config('lfm.rename_duplicates') === true) {
$counter = 1;
$file_name_without_extentions = $new_file_name;
while ($this->setName(($extension) ? $new_file_name_with_extention : $new_file_name)->exists()) {
if (config('lfm.alphanumeric_filename') === true) {
$suffix = '_'.$counter;
} else {
$suffix = " ({$counter})";
}
$new_file_name = $file_name_without_extentions.$suffix;
if ($extension) {
$new_file_name_with_extention = $new_file_name . '.' . $extension;
}
$counter++;
}
}
return ($extension) ? $new_file_name_with_extention : $new_file_name;
}
public function generateThumbnail($file_name)
{
$original_image = $this->pretty($file_name);
if (!$original_image->shouldCreateThumb()) {
return;
}
// create folder for thumbnails
$this->setName(null)->thumb(true)->createFolder();
// generate cropped image content
$this->setName($file_name)->thumb(true);
$thumbWidth = $this->helper->shouldCreateCategoryThumb() && $this->helper->categoryThumbWidth() ? $this->helper->categoryThumbWidth() : config('lfm.thumb_img_width', 200);
$thumbHeight = $this->helper->shouldCreateCategoryThumb() && $this->helper->categoryThumbHeight() ? $this->helper->categoryThumbHeight() : config('lfm.thumb_img_height', 200);
if (class_exists(InterventionImageV2::class)) {
$encoded_image = InterventionImageV2::make($original_image->get())
->fit($thumbWidth, $thumbHeight)
->stream()
->detach();
} else {
$encoded_image = InterventionImageV3::read($original_image->get())
->cover($thumbWidth, $thumbHeight)
->encodeByMediaType();
}
$this->storage->put($encoded_image, 'public');
}
}
laravel-filemanager/src/Handlers/LfmConfigHandler.php 0000644 00000000307 15243417654 0016657 0 ustar 00 <?php
namespace App\Handlers;
class LfmConfigHandler extends \UniSharp\LaravelFilemanager\Handlers\ConfigHandler
{
public function userField()
{
return parent::userField();
}
}
laravel-filemanager/src/Handlers/ConfigHandler.php 0000644 00000000231 15243417654 0016214 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Handlers;
class ConfigHandler
{
public function userField()
{
return auth()->id();
}
}
laravel-filemanager/src/Lfm.php 0000644 00000024623 15243417654 0012502 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager;
use Illuminate\Contracts\Config\Repository as Config;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use Illuminate\Support\Str;
use UniSharp\LaravelFilemanager\Middlewares\CreateDefaultFolder;
use UniSharp\LaravelFilemanager\Middlewares\MultiUser;
class Lfm
{
const PACKAGE_NAME = 'laravel-filemanager';
const DS = '/';
protected $config;
protected $request;
public function __construct(Config $config = null, Request $request = null)
{
$this->config = $config;
$this->request = $request;
}
public function getStorage($storage_path)
{
return new LfmStorageRepository($storage_path, $this);
}
public function input($key)
{
return $this->translateFromUtf8($this->request->input($key));
}
public function config($key)
{
return $this->config->get('lfm.' . $key);
}
/**
* Get only the file name.
*
* @param string $path Real path of a file.
* @return string
*/
public function getNameFromPath($path)
{
return $this->utf8Pathinfo($path, 'basename');
}
public function utf8Pathinfo($path, $part_name)
{
// XXX: all locale work-around for issue: utf8 file name got emptified
// if there's no '/', we're probably dealing with just a filename
// so just put an 'a' in front of it
if (strpos($path, '/') === false) {
$path_parts = pathinfo('a' . $path);
} else {
$path = str_replace('/', '/a', $path);
$path_parts = pathinfo($path);
}
return substr($path_parts[$part_name], 1);
}
public function allowFolderType($type)
{
if ($type == 'user') {
return $this->allowMultiUser();
} else {
return $this->allowShareFolder();
}
}
public function getCategoryName()
{
$type = $this->currentLfmType();
return $this->config->get('lfm.folder_categories.' . $type . '.folder_name', 'files');
}
/**
* Get current lfm type.
*
* @return string
*/
public function currentLfmType()
{
$lfm_type = 'file';
$request_type = lcfirst(Str::singular($this->input('type') ?: ''));
$available_types = array_keys($this->config->get('lfm.folder_categories') ?: []);
if (in_array($request_type, $available_types)) {
$lfm_type = $request_type;
}
return $lfm_type;
}
public function getDisplayMode()
{
$type_key = $this->currentLfmType();
$startup_view = $this->config->get('lfm.folder_categories.' . $type_key . '.startup_view');
$view_type = 'grid';
$target_display_type = $this->input('show_list') ?: $startup_view;
if (in_array($target_display_type, ['list', 'grid'])) {
$view_type = $target_display_type;
}
return $view_type;
}
public function getUserSlug()
{
$config = $this->config->get('lfm.private_folder_name');
if (is_callable($config)) {
return call_user_func($config);
}
if (class_exists($config)) {
return app()->make($config)->userField();
}
return empty(auth()->user()) ? '' : auth()->user()->$config;
}
public function getRootFolder($type = null)
{
if (is_null($type)) {
$type = 'share';
if ($this->allowFolderType('user')) {
$type = 'user';
}
}
if ($type === 'user') {
$folder = $this->getUserSlug();
} else {
$folder = $this->config->get('lfm.shared_folder_name');
}
// the slash is for url, dont replace it with directory seperator
return '/' . $folder;
}
public function getThumbFolderName()
{
return $this->config->get('lfm.thumb_folder_name');
}
public function getFileType($ext)
{
return $this->config->get("lfm.file_type_array.{$ext}", 'File');
}
public function availableMimeTypes()
{
return $this->config->get('lfm.folder_categories.' . $this->currentLfmType() . '.valid_mime');
}
public function shouldCreateCategoryThumb()
{
return $this->config->get('lfm.folder_categories.' . $this->currentLfmType() . '.thumb');
}
public function categoryThumbWidth()
{
return $this->config->get('lfm.folder_categories.' . $this->currentLfmType() . '.thumb_width');
}
public function categoryThumbHeight()
{
return $this->config->get('lfm.folder_categories.' . $this->currentLfmType() . '.thumb_height');
}
public function maxUploadSize()
{
return $this->config->get('lfm.folder_categories.' . $this->currentLfmType() . '.max_size');
}
public function getPaginationPerPage()
{
return $this->config->get("lfm.paginator.perPage", 30);
}
/**
* Check if users are allowed to use their private folders.
*
* @return bool
*/
public function allowMultiUser()
{
$type_key = $this->currentLfmType();
if ($this->config->has('lfm.folder_categories.' . $type_key . '.allow_private_folder')) {
return $this->config->get('lfm.folder_categories.' . $type_key . '.allow_private_folder') === true;
}
return $this->config->get('lfm.allow_private_folder') === true;
}
/**
* Check if users are allowed to use the shared folder.
* This can be disabled only when allowMultiUser() is true.
*
* @return bool
*/
public function allowShareFolder()
{
if (! $this->allowMultiUser()) {
return true;
}
$type_key = $this->currentLfmType();
if ($this->config->has('lfm.folder_categories.' . $type_key . '.allow_shared_folder')) {
return $this->config->get('lfm.folder_categories.' . $type_key . '.allow_shared_folder') === true;
}
return $this->config->get('lfm.allow_shared_folder') === true;
}
/**
* Translate file name to make it compatible on Windows.
*
* @param string $input Any string.
* @return string
*/
public function translateFromUtf8($input)
{
if ($this->isRunningOnWindows()) {
$input = iconv('UTF-8', mb_detect_encoding($input), $input);
}
return $input;
}
/**
* Get directory seperator of current operating system.
*
* @return string
*/
public function ds()
{
$ds = Lfm::DS;
if ($this->isRunningOnWindows()) {
$ds = '\\';
}
return $ds;
}
/**
* Check current operating system is Windows or not.
*
* @return bool
*/
public function isRunningOnWindows()
{
return strtoupper(substr(PHP_OS, 0, 3)) === 'WIN';
}
/**
* Shorter function of getting localized error message..
*
* @param mixed $error_type Key of message in lang file.
* @param mixed $variables Variables the message needs.
* @return string
*/
public function error($error_type, $variables = [])
{
throw new \Exception(trans(self::PACKAGE_NAME . '::lfm.error-' . $error_type, $variables));
}
/**
* Generates routes of this package.
*
* @return void
*/
public static function routes()
{
$middleware = [ CreateDefaultFolder::class, MultiUser::class ];
$as = 'unisharp.lfm.';
$namespace = '\\UniSharp\\LaravelFilemanager\\Controllers\\';
Route::group(compact('middleware', 'as', 'namespace'), function () {
// display main layout
Route::get('/', [
'uses' => 'LfmController@show',
'as' => 'show',
]);
// display integration error messages
Route::get('/errors', [
'uses' => 'LfmController@getErrors',
'as' => 'getErrors',
]);
// upload
Route::any('/upload', [
'uses' => 'UploadController@upload',
'as' => 'upload',
]);
// list images & files
Route::get('/jsonitems', [
'uses' => 'ItemsController@getItems',
'as' => 'getItems',
]);
Route::get('/move', [
'uses' => 'ItemsController@move',
'as' => 'move',
]);
Route::get('/domove', [
'uses' => 'ItemsController@doMove',
'as' => 'doMove'
]);
// folders
Route::get('/newfolder', [
'uses' => 'FolderController@getAddfolder',
'as' => 'getAddfolder',
]);
// list folders
Route::get('/folders', [
'uses' => 'FolderController@getFolders',
'as' => 'getFolders',
]);
// crop
Route::get('/crop', [
'uses' => 'CropController@getCrop',
'as' => 'getCrop',
]);
Route::get('/cropimage', [
'uses' => 'CropController@getCropImage',
'as' => 'getCropImage',
]);
Route::get('/cropnewimage', [
'uses' => 'CropController@getNewCropImage',
'as' => 'getNewCropImage',
]);
// rename
Route::get('/rename', [
'uses' => 'RenameController@getRename',
'as' => 'getRename',
]);
// scale/resize
Route::get('/resize', [
'uses' => 'ResizeController@getResize',
'as' => 'getResize',
]);
Route::get('/doresize', [
'uses' => 'ResizeController@performResize',
'as' => 'performResize',
]);
Route::get('/doresizenew', [
'uses' => 'ResizeController@performResizeNew',
'as' => 'performResizeNew',
]);
// download
Route::get('/download', [
'uses' => 'DownloadController@getDownload',
'as' => 'getDownload',
]);
// delete
Route::get('/delete', [
'uses' => 'DeleteController@getDelete',
'as' => 'getDelete',
]);
Route::get('/demo', 'DemoController@index');
});
}
}
laravel-filemanager/src/lang/sv/lfm.php 0000644 00000006144 15243417654 0014111 0 ustar 00 <?php
return [
'nav-back' => 'Tillbaka',
'nav-new' => 'Ny mapp',
'nav-upload' => 'Ladda up',
'nav-thumbnails' => 'Miniatyrer',
'nav-list' => 'Lista',
'nav-sort' => 'Sortera',
'nav-sort-alphabetic'=> 'Sortera efter alfabetet',
'nav-sort-time' => 'Sortera efter tid',
'menu-rename' => 'Byt namn',
'menu-delete' => 'Ta bort',
'menu-view' => 'Förhandsgranska',
'menu-download' => 'Ladda ner',
'menu-resize' => 'Ändra storlek',
'menu-crop' => 'Beskär',
'title-page' => 'Filhanterare',
'title-panel' => 'Laravel Filhanterare',
'title-upload' => 'Ladda upp fil(er)',
'title-view' => 'Visa fil',
'title-user' => 'Filer',
'title-share' => 'Delade filer',
'title-item' => 'Objekt',
'title-size' => 'Storlek',
'title-type' => 'Typ',
'title-modified' => 'Ändrat',
'title-action' => 'Hantera',
'type-folder' => 'Map',
'message-empty' => 'Mappen är tom',
'message-choose' => 'Välj fil(er)',
'message-delete' => 'Är du säker på att du vill radera det här objektet?',
'message-name' => 'Mappnamn:',
'message-rename' => 'Byt namn till:',
'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.',
'error-rename' => 'Filnamnet finns redan!',
'error-file-name' => 'Filnamnet kan inte vara tomt!',
'error-file-empty' => 'Du måste välja en fil!',
'error-file-exist' => 'En fil med detta namn finns redan!',
'error-file-size' => 'Filstorleken överstiger servergränsen! (maximal storlek:: max) ',
'error-delete-folder'=> 'Du kan inte radera den här mappen eftersom den inte är tom!',
'error-folder-name' => 'Mappnamnet kan inte vara tomt!',
'error-folder-exist'=> 'En mapp med detta namn finns redan!',
'error-folder-alnum'=> 'Endast alfanumeriska mappnamn är tillåtna!',
'error-folder-not-found'=> 'Mappen hittades inte! (:folder)',
'error-mime' => 'Oväntad MimeType: ',
'error-size' => 'Över storleksgräns:',
'error-instance' => 'Den uppladdade filen måste vara en typ UploadedFile',
'error-invalid' => 'Ogiltig uppladdningsförfrågan',
'error-other' => 'Ett fel har uppstått:',
'error-too-large' => 'Objektet i begäran är för stor!',
'btn-upload' => 'Ladda upp fil(er)',
'btn-uploading' => 'Laddar upp...',
'btn-close' => 'Stäng',
'btn-crop' => 'Beskär',
'btn-copy-crop' => 'Kopiera & Beskär',
'btn-cancel' => 'Avbryt',
'btn-resize' => 'Ändra stolek',
'resize-ratio' => 'Förhållande:',
'resize-scaled' => 'Bildskala:',
'resize-true' => 'Ja',
'resize-old-height' => 'Original höjd:',
'resize-old-width' => 'Original bredd:',
'resize-new-height' => 'Höjd:',
'resize-new-width' => 'Bredd:',
'locale-bootbox' => 'sv',
];
laravel-filemanager/src/lang/pt/lfm.php 0000644 00000006314 15243417654 0014103 0 ustar 00 <?php
return [
'nav-back' => 'Voltar',
'nav-new' => 'Nova Pasta',
'nav-upload' => 'Enviar',
'nav-thumbnails' => 'Miniatura',
'nav-list' => 'Lista',
'nav-sort' => 'Ordenar',
'nav-sort-alphabetic'=> 'Ordenar alfabeticamente',
'nav-sort-time' => 'Ordenar por data',
'menu-rename' => 'Renomear',
'menu-delete' => 'Apagar',
'menu-view' => 'Ver',
'menu-download' => 'Download',
'menu-resize' => 'Redimensionar',
'menu-crop' => 'Cortar',
'title-page' => 'Gestor de Arquivos',
'title-panel' => 'Gestor de Arquivos',
'title-upload' => 'Envio de Arquivo',
'title-view' => 'Ver Arquivo',
'title-user' => 'Arquivos',
'title-share' => 'Arquivos Compartilhados',
'title-item' => 'Item',
'title-size' => 'Tamanho',
'title-type' => 'Tipo',
'title-modified' => 'Modificado',
'title-action' => 'Ação',
'type-folder' => 'Pasta',
'message-empty' => 'A pasta está vazia.',
'message-choose' => 'Escolha um arquivo',
'message-delete' => 'Tem a certeza que deseja apagar este arquivo?',
'message-name' => 'Nome da pasta:',
'message-rename' => 'Renomear para:',
'message-extension_not_found' => 'Por favor instale a extenção gd ou imagick para recortar, redimensionar e criar miniaturas das imagens.',
'error-rename' => 'O nome do arquivo já está em uso!',
'error-file-name' => 'O nome do arquivo não pode ser vazio!',
'error-file-empty' => 'Deve escolher um arquivo!',
'error-file-exist' => 'Já existe um arquivo com este nome!',
'error-file-size' => 'O tamanho do arquivo excedeu o limite permitido pelo servidor! (Tamanho máximo: :max)',
'error-delete-folder'=> 'Não pode apagar esta pasta. A mesma não se encontra vazia!',
'error-folder-name' => 'O nome da pasta não pode ser vazio!',
'error-folder-exist'=> 'Já existe uma pasta com este nome!',
'error-folder-alnum'=> 'Apenas valores alfanuméricos são permitidos para o nome da pasta!',
'error-folder-not-found'=> 'A pasta não foi encontrada! (:folder)',
'error-mime' => 'Tipo de ficheiro não suportado: ',
'error-size' => 'O ficheiro excede o tamanho máximo:',
'error-instance' => 'O arquivo enviado deve ser uma instância de UploadedFile',
'error-invalid' => 'Pedido de upload inválido',
'error-other' => 'Ocorreu um erro: ',
'error-too-large' => 'Solicitação muito grande!',
'btn-upload' => 'Enviar Arquivo',
'btn-uploading' => 'A enviar...',
'btn-close' => 'Fechar',
'btn-crop' => 'Cortar',
'btn-copy-crop' => 'Copie e corte',
'btn-cancel' => 'Cancelar',
'btn-resize' => 'Redimensionar',
'resize-ratio' => 'Proporção:',
'resize-scaled' => 'Imagem dimensionada:',
'resize-true' => 'Sim',
'resize-old-height' => 'Altura Original:',
'resize-old-width' => 'Largura Original:',
'resize-new-height' => 'Altura:',
'resize-new-width' => 'Largura:',
'locale-bootbox' => 'pt',
];
laravel-filemanager/src/lang/uk/lfm.php 0000644 00000011061 15243417654 0014072 0 ustar 00 <?php
return [
'nav-back' => 'Назад',
'nav-new' => 'Нова папка',
'nav-upload' => 'Завантажити',
'nav-thumbnails' => 'Мініатюри',
'nav-list' => 'Список',
'nav-sort' => 'Сортувати',
'nav-sort-alphabetic'=> 'Сортувати за алфавітом',
'nav-sort-time' => 'Сортувати за часом',
'menu-rename' => 'Перейменувати',
'menu-delete' => 'Вилучити',
'menu-view' => 'Перегляд',
'menu-download' => 'Завантажити',
'menu-resize' => 'Змінити розмір',
'menu-crop' => 'Обрізати',
'menu-move' => 'Перемістити',
'menu-multiple' => 'Multi-виділення',
'title-page' => 'Менеджер файлів',
'title-panel' => 'Laravel FileManager',
'title-upload' => 'Завантаження файлу',
'title-view' => 'Перегляд файлу',
'title-user' => 'Файли',
'title-share' => 'Спільні файли',
'title-item' => 'Номер',
'title-size' => 'Розмір',
'title-type' => 'Тип',
'title-modified' => 'Змінений',
'title-action' => 'Дія',
'type-folder' => 'Папка',
'message-empty' => 'Папка порожня.',
'message-choose' => 'Виберіть файл(-и)',
'message-delete' => 'Ви впевнені, що хочете вилучити цей елемент?',
'message-name' => 'Назва папки:',
'message-rename' => 'Перейменувати в:',
'message-extension_not_found' => 'Інсталюйте, будь ласка, розширення GD чи ImageMagick щоб мати можливість кадрувати, змінювати розміри чи створювати ескізи зображень.',
'message-drop' => 'Або перетягніть файли сюди для завантаження',
'error-rename' => 'Ім\'я файлу вже використовується!',
'error-file-name' => 'Ім\'я файлу не може бути порожнім!',
'error-file-empty' => 'Ви повинні вибрати файл!',
'error-file-exist' => 'Файл з таким ім\'ям вже існує!',
'error-file-size' => 'Розмір файлу перевищує обмеження сервера! (максимальний розмір: :max)',
'error-delete-folder'=> 'Ви не можете вилучити цю папку, оскільки вона не порожня!',
'error-folder-name' => 'Ім\'я папки не може бути порожнім!',
'error-folder-exist'=> 'Папка з тиким ім\'ям вже існує!',
'error-folder-alnum'=> 'Дозволені лише буквено-цифрові імена папок!',
'error-folder-not-found'=> 'Папку не знайдено! (:folder)',
'error-mime' => 'Недозволений MimeType: ',
'error-size' => 'Розмір перевищує дозволений:',
'error-instance' => 'Завантажений файл має бути екземпляром UploadedFile',
'error-invalid' => 'Неправильний запит на завантаження',
'error-other' => 'Сталася помилка: ',
'error-too-large' => 'Занадто великий об\'єкт запиту!',
'btn-upload' => 'Завантажити файл',
'btn-uploading' => 'Завантаження...',
'btn-close' => 'Закрити',
'btn-crop' => 'Обрізати',
'btn-copy-crop' => 'Скопіювати & Обрізати',
'btn-crop-free' => 'Звільнити',
'btn-cancel' => 'Скасувати',
'btn-confirm' => 'Підтвердити',
'btn-resize' => 'Змінити розмір',
'btn-open' => 'Відкрити папку',
'resize-ratio' => 'Співвідношення:',
'resize-scaled' => 'Масштабоване зображення:',
'resize-true' => 'Так',
'resize-old-height' => 'Оригінальна висота:',
'resize-old-width' => 'Оригінальна ширина:',
'resize-new-height' => 'Висота:',
'resize-new-width' => 'Ширина:',
'locale-bootbox' => 'uk',
];
laravel-filemanager/src/lang/cs/lfm.php 0000644 00000006702 15243417654 0014066 0 ustar 00 <?php
return [
'nav-back' => 'Zpět',
'nav-new' => 'Nová složka',
'nav-upload' => 'Nahrát',
'nav-thumbnails' => 'Zmenšeniny',
'nav-list' => 'Seznam',
'nav-sort' => 'Seřadit',
'nav-sort-alphabetic'=> 'Seřadit podle abecedy',
'nav-sort-time' => 'Seřadit podle času',
'menu-rename' => 'Přejmenovat',
'menu-delete' => 'Smazat',
'menu-view' => 'Zobrazit',
'menu-download' => 'Stáhnout',
'menu-resize' => 'Zmenšit',
'menu-crop' => 'Oříznout',
'menu-move' => 'Přesunout',
'menu-multiple' => 'Vybrat více souborů',
'title-page' => 'File Manager',
'title-panel' => 'Laravel FileManager',
'title-upload' => 'Nahrát soubor(y)',
'title-view' => 'Zobrazit soubor',
'title-user' => 'Soubory',
'title-share' => 'Sdílené soubory',
'title-item' => 'Položka',
'title-size' => 'Velikost',
'title-type' => 'Typ',
'title-modified' => 'Modifikované',
'title-action' => 'Akce',
'type-folder' => 'Složka',
'message-empty' => 'Složka je prázdna.',
'message-choose' => 'Vyberte soubor (y)',
'message-delete' => 'Opravdu chcete smazat tuto položku?',
'message-name' => 'Název složky:',
'message-rename' => 'Přejmenovat na:',
'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ů.',
'message-drop' => 'Nebo přetáhněte soubory pro nahrání.',
'error-rename' => 'Tento název souboru již existuje!',
'error-file-name' => 'Název souboru nemůže být prázdný!',
'error-file-empty' => 'Vyberte soubor!',
'error-file-exist' => 'Soubor s tímto názvem již existuje!',
'error-file-size' => 'Velikost souboru překročila limit serveru! (Mazimálna velikost je: :max)',
'error-delete-folder'=> 'Složku není možné vymazat, protože není prázdná!',
'error-folder-name' => 'Název složky nesmí být prázdný!',
'error-folder-exist'=> 'Složka s timto názvem již existuje!',
'error-folder-alnum'=> 'Jen písmena a číslice su povolené v názvu složky!',
'error-folder-not-found'=> 'Složka nebyla nalezena! (:folder)',
'error-mime' => 'Nepovolený typ souboru:',
'error-size' => 'Soubor přesahuje povolenou velikost:',
'error-instance' => 'Nahraný soubor by měl být instance UploadedFile',
'error-invalid' => 'Chybný požadavek',
'error-other' => 'Nečekaná chyba:',
'error-too-large' => 'Request entity too large!',
'btn-upload' => 'Nahrajte soubor (y)',
'btn-uploading' => 'Nahráváme...',
'btn-close' => 'Zrušit',
'btn-crop' => 'Oříznout',
'btn-copy-crop' => 'Zkopírovat a oříznout',
'btn-crop-free' => 'Volné',
'btn-cancel' => 'Zrušit',
'btn-confirm' => 'Povrdiť',
'btn-resize' => 'Zmenšit',
'btn-open' => 'Otevřít složku',
'resize-ratio' => 'Ratio:',
'resize-scaled' => 'Obrázek zmenšený:',
'resize-true' => 'Ano',
'resize-old-height' => 'Původní výška:',
'resize-old-width' => 'Původní šířka:',
'resize-new-height' => 'Výška:',
'resize-new-width' => 'Šířka:',
];
laravel-filemanager/src/lang/da/lfm.php 0000644 00000006471 15243417654 0014050 0 ustar 00 <?php
return [
'nav-back' => 'Tilbage',
'nav-new' => 'Ny mappe',
'nav-upload' => 'Upload',
'nav-thumbnails' => 'Thumbnails',
'nav-list' => 'Liste',
'nav-sort' => 'Sorter',
'nav-sort-alphabetic'=> 'Sorter alfabetisk',
'nav-sort-time' => 'Sort efter dato',
'menu-rename' => 'Omdøb',
'menu-delete' => 'Slet',
'menu-view' => 'Forhåndsvisning',
'menu-download' => 'Download',
'menu-resize' => 'Ændre størrelse',
'menu-crop' => 'Beskær',
'menu-move' => 'Flyt',
'menu-multiple' => 'Vælg flere',
'title-page' => 'Filstyring',
'title-panel' => 'Filstyring',
'title-upload' => 'Upload File(r)',
'title-view' => 'Vis Fil',
'title-user' => 'Filer',
'title-share' => 'Delte filter',
'title-item' => 'Fil',
'title-size' => 'Størrelse',
'title-type' => 'Type',
'title-modified' => 'Ændret',
'title-action' => 'Handling',
'type-folder' => 'Mappe',
'message-empty' => 'Mappen er tom.',
'message-choose' => 'Vælg File(r)',
'message-delete' => 'Er du sikker på, at du vil slette filen?',
'message-name' => 'Mappe navn:',
'message-rename' => 'Omdøb til:',
'message-extension_not_found' => 'Installer gd eller imagick udvidelsen for at beskære, ændre størrelse og lave thumbnails af billeder.',
'message-drop' => 'Eller træk filerne hertil for at uploade',
'error-rename' => 'Filnavnet er allerede i brug!',
'error-file-name' => 'Filnavn kan ikke efterlades tomt!',
'error-file-empty' => 'Du skal vælge en fil!',
'error-file-exist' => 'En fil med dette navn eksisterer allerede!',
'error-file-size' => 'Filstørrelse kan ikke overstige serverens grænse! (maksimal størrelse: :max)',
'error-delete-folder'=> 'Du kan ikke slette denne mappe, da den ikke er tom!',
'error-folder-name' => 'Mappenavnet kan ikke være tomt!',
'error-folder-exist'=> 'En mappe med dette navn eksisterer allerede!',
'error-folder-alnum'=> 'Kun alfanummeriske værdier er tilladt!',
'error-folder-not-found'=> 'Mappen blev ikke fundet! (:folder)',
'error-mime' => 'Uventet MimeType: ',
'error-size' => 'Overstiger grænsestørrelsen:',
'error-instance' => 'Den uploadede fil skal være en instans af UploadedFile',
'error-invalid' => 'Ugyldig upload forespørgsel',
'error-other' => 'En fejl opstod: ',
'error-too-large' => 'Forespørgslen var for stor!',
'btn-upload' => 'Upload File(r)',
'btn-uploading' => 'Uploader...',
'btn-close' => 'Luk',
'btn-crop' => 'Beskær',
'btn-copy-crop' => 'Kopier & Beskær',
'btn-crop-free' => 'Frit',
'btn-cancel' => 'Annuller',
'btn-confirm' => 'Bekræft',
'btn-resize' => 'Ændre størrelse',
'btn-open' => 'Åben Mappe',
'resize-ratio' => 'Aspektforhold:',
'resize-scaled' => 'Billede skaleret:',
'resize-true' => 'Ja',
'resize-old-height' => 'Original Højde:',
'resize-old-width' => 'Original Bredde:',
'resize-new-height' => 'Højde:',
'resize-new-width' => 'Bredde:',
];
laravel-filemanager/src/lang/it/lfm.php 0000644 00000006403 15243417654 0014073 0 ustar 00 <?php
// Translator: Buonsito.it - Silvia Ghignone
return [
'nav-back' => 'Indietro',
'nav-new' => 'Nuova Cartella',
'nav-upload' => 'Carica',
'nav-thumbnails' => 'Anteprima',
'nav-list' => 'Elencare',
'nav-sort' => 'Ordinare',
'nav-sort-alphabetic'=> 'Ordine Alfabetico',
'nav-sort-time' => 'Ordine Temporale',
'menu-rename' => 'Rinomina',
'menu-delete' => 'Elimina',
'menu-view' => 'Anteprima',
'menu-download' => 'Scarica',
'menu-resize' => 'Ridimensiona',
'menu-crop' => 'Taglia',
'title-page' => 'File Manager',
'title-panel' => 'Laravel FileManager',
'title-upload' => 'Carica File(s)',
'title-view' => 'Vedi File',
'title-user' => 'Files',
'title-share' => 'Files Condivisi',
'title-item' => 'Voce',
'title-size' => 'Dimensione',
'title-type' => 'Tipo',
'title-modified' => 'Modificato',
'title-action' => 'Azione',
'type-folder' => 'Cartella',
'message-empty' => 'La cartella è vuota.',
'message-choose' => 'Scegli i File(s)',
'message-delete' => 'Sei sicuro di voler cancellare questa voce?',
'message-name' => 'Nome Cartella:',
'message-rename' => 'Rinomina:',
'message-extension_not_found' => 'Per favore installa gd oppure la estensione di imagick per tagliare, ridimensionare e creare anteprime delle immagini.',
'error-rename' => 'Il nome del file è già in uso!',
'error-file-name' => 'Il nome del file non può essere vuoto!',
'error-file-empty' => 'Devi scegliere un file!',
'error-file-exist' => 'Esiste già un file con questo nome!',
'error-file-size' => 'La dimensione del file eccede il limite del server! (dimensione massima: :max)',
'error-delete-folder'=> 'Non puoi cancellare questa cartella perchè non è vuota!',
'error-folder-name' => 'Il nome della cartella non può essere vuoto!',
'error-folder-exist'=> 'Esiste già una cartella con questo nome!',
'error-folder-alnum'=> 'Si può nominare una cartella solo con caratteri alfanumerici!',
'error-folder-not-found'=> 'Cartella non trovata! (:folder)',
'error-mime' => 'Unexpected MimeType: ',
'error-size' => 'Superato il limite di dimensione:',
'error-instance' => 'Il file caricato deve essere una istanza di UploadedFile',
'error-invalid' => 'Richiesta di caricamento non valida',
'error-other' => 'Si è veriifcato un errore: ',
'error-too-large' => 'Richiesta di entità troppo grande!',
'btn-upload' => 'Carica File(s)',
'btn-uploading' => 'Sto Caricando...',
'btn-close' => 'Chiudi',
'btn-crop' => 'Taglia',
'btn-copy-crop' => 'Copia & Taglia',
'btn-cancel' => 'Cancella',
'btn-resize' => 'Ridimensiona',
'resize-ratio' => 'Proporzione:',
'resize-scaled' => 'Immagine scalata:',
'resize-true' => 'Sì',
'resize-old-height' => 'Altezza Originale:',
'resize-old-width' => 'Larghezza Originale:',
'resize-new-height' => 'Altezza:',
'resize-new-width' => 'Larghezza:',
'locale-bootbox' => 'it',
];
laravel-filemanager/src/lang/eu/lfm.php 0000644 00000006444 15243417654 0014075 0 ustar 00 <?php
return [
'nav-back' => 'Atzera',
'nav-new' => 'Karpeta berria',
'nav-upload' => 'Kargatu',
'nav-thumbnails' => 'Koadro txikiak',
'nav-list' => 'Zerrenda',
'nav-sort' => 'Ordenatu',
'nav-sort-alphabetic'=> 'Ordenatu alfabetikoki',
'nav-sort-time' => 'Ordenatu denboraren arabera',
'menu-rename' => 'Aldatu izena',
'menu-delete' => 'Ezabatu',
'menu-view' => 'Aurrebista',
'menu-download' => 'Deskargatu',
'menu-resize' => 'Aldatu tamaina',
'menu-crop' => 'Moztu',
'title-page' => 'Fitxategi-kudeatzailea',
'title-panel' => 'Laravel fitxategi-kudeatzailea',
'title-upload' => 'Kargatu fitxategia(k)',
'title-view' => 'Ikusi fitxategia',
'title-root' => 'Fitxategiak',
'title-shares' => 'Partekatutako fitxategiak',
'title-item' => 'Elementua',
'title-size' => 'Tamaina',
'title-type' => 'Mota',
'title-modified' => 'Aldatua',
'title-action' => 'Ekintza',
'type-folder' => 'Karpeta',
'message-empty' => 'Karpeta hutsik dago.',
'message-choose' => 'Aukeratu fitxategia(k)',
'message-delete' => 'Ziur zaude elementu hau ezabatu nahi duzula?',
'message-name' => 'Karpetaren izena:',
'message-rename' => 'Izen berria:',
'message-extension_not_found' => 'Mesedez, instalatu gd edo imagick hedapena irudiak moztu, tamainaz aldatu eta koadro txikiak sortzeko.',
'error-rename' => 'Fitxategi-izena lehendik badago!',
'error-file-name' => 'Fitxategi-izenak ezin du hutsik egon!',
'error-file-empty' => 'Fitxategi bat aukeratu behar duzu!',
'error-file-exist' => 'Izen hau duen fitxategi bat existitzen da dagoeneko!',
'error-file-size' => 'Fitxategi-tamainak zerbitzariaren muga gainditzen du! (gehienezko tamaina: :max)',
'error-delete-folder'=> 'Ezin duzu karpeta hau ezabatu, ez baitago hutsik!',
'error-folder-name' => 'Karpeta-izenak ezin du hutsik egon!',
'error-folder-exist'=> 'Izen hau duen karpeta bat existitzen da dagoeneko!',
'error-folder-alnum'=> 'Karpeta-izen alfanumerikoak soilik onartzen dira!',
'error-folder-not-found'=> 'Ez da karpeta aurkitu! (:folder)',
'error-mime' => 'Ustekabeko MIME mota: ',
'error-size' => 'Muga gainditzen duen tamaina:',
'error-instance' => 'Kargatutako fitxategiak UploadedFile-en instantzia bat izan behar luke',
'error-invalid' => 'Kargatzeko eskaera baliogabea',
'error-other' => 'Errore bat gertatu da: ',
'error-too-large' => 'Eskaera entitatea handiegia da!',
'btn-upload' => 'Kargatu fitxategia(k)',
'btn-uploading' => 'Kargatzen...',
'btn-close' => 'Itxi',
'btn-crop' => 'Moztu',
'btn-copy-crop' => 'Kopiatu eta moztu',
'btn-cancel' => 'Utzi',
'btn-resize' => 'Aldatu tamainaz',
'resize-ratio' => 'Erlazioa:',
'resize-scaled' => 'Eskalatutako irudia:',
'resize-true' => 'Bai',
'resize-old-height' => 'Jatorrizko altuera:',
'resize-old-width' => 'Jatorrizko zabalera:',
'resize-new-height' => 'Altuera:',
'resize-new-width' => 'Zabalera:',
'locale-bootbox' => 'eu',
];
laravel-filemanager/src/lang/pl/lfm.php 0000644 00000006617 15243417654 0014101 0 ustar 00 <?php
return [
'nav-back' => 'Powrót',
'nav-new' => 'Nowy Folder',
'nav-upload' => 'Wgraj plik',
'nav-thumbnails' => 'Miniaturki',
'nav-list' => 'Lista',
'nav-sort' => 'Sortuj',
'nav-sort-alphabetic'=> 'Sortuj alfabetycznie',
'nav-sort-time' => 'Sortuj według czasu',
'menu-rename' => 'Zmień nazwę',
'menu-delete' => 'Usuń',
'menu-view' => 'Wyświetl',
'menu-download' => 'Pobierz',
'menu-resize' => 'Zmień rozmiar',
'menu-crop' => 'Przytnij',
'menu-move' => 'Przenieś',
'menu-multiple' => 'Zaznacz wiele',
'title-page' => 'Menedżer plików',
'title-panel' => 'Laravel FileManager',
'title-upload' => 'Wgraj plik',
'title-view' => 'Podgląd',
'title-user' => 'Pliki',
'title-share' => 'Udostępnione pliki',
'title-item' => 'Nazwa',
'title-size' => 'Rozmiar',
'title-type' => 'Typ',
'title-modified' => 'Utworzono',
'title-action' => 'Akcje',
'type-folder' => 'Folder',
'message-empty' => 'Przepraszamy, ten folder jest pusty.',
'message-choose' => 'Wybierz plik',
'message-delete' => 'Czy na pewno chcesz usunąć ten plik?',
'message-name' => 'Nazwa folderu:',
'message-rename' => 'Zmień nazwę:',
'message-extension_not_found' => 'Niestety, nie znaleziono wymaganych rozszerzeń. Zainstaluj gd lub imagick aby manipulować grafiką',
'message-drop' => 'lub upuść pliki tutaj, aby je przesłać',
'error-rename' => 'Niestety, istnieje już plik o takiej nazwie!',
'error-file-empty' => 'You must choose a file!',
'error-file-exist' => 'Niestety, istnieje już plik o takiej nazwie!',
'error-file-size' => 'Przekroczono maksymalny rozmiar wgrywanych plików! (maximum size: :max)',
'error-delete-folder'=> 'Nie możesz usunąć tego folderu, ponieważ nie jest pusty!',
'error-folder-name' => 'Nazwa folderu nie może być pusta!',
'error-folder-exist'=> 'Folder o tej nazwie już istnieje!',
'error-folder-alnum'=> 'Dozwolone są jedynie nazwy alfanumeryczne!',
'error-folder-not-found'=> 'Nie znaleziono folderu! (:folder)',
'error-mime' => 'Nierozpoznawany MimeType: ',
'error-size' => 'Przekroczono limit rozmiaru:',
'error-instance' => 'Wgrywany obiekt powinien być instanją UploadedFile',
'error-invalid' => 'Nieprawidłowe zapytanie',
'error-other' => 'Napotkano następujący błąd: ',
'error-too-large' => 'Przekroczono dozwolony czas operacji!',
'btn-upload' => 'Wgraj plik',
'btn-uploading' => 'Wgrywanie...',
'btn-close' => 'Zamknij',
'btn-crop' => 'Przytnij',
'btn-cancel' => 'Anuluj',
'btn-resize' => 'Zmień rozmiar',
'btn-confirm' => 'Zatwierdź',
'btn-copy-crop' => 'Kopiuj przycięte',
'btn-crop-free' => 'Skaluj',
'btn-open' => 'Otwórz',
'resize-ratio' => 'Stosunek:',
'resize-scaled' => 'Zmieniono rozmiar:',
'resize-true' => 'tak',
'resize-old-height' => 'Orginalna wysokość:',
'resize-old-width' => 'Orginalna szerokość:',
'resize-new-height' => 'Wysokość:',
'resize-new-width' => 'Szerokość:',
'locale-bootbox' => 'pl',
];
laravel-filemanager/src/lang/vi/lfm.php 0000644 00000007442 15243417654 0014101 0 ustar 00 <?php
return [
'nav-back' => 'Trở lại',
'nav-new' => 'Thư mục mới',
'nav-upload' => 'Tải lên',
'nav-thumbnails' => 'Hình thu nhỏ',
'nav-list' => 'Danh sách',
'nav-sort' => 'Sắp xếp',
'nav-sort-alphabetic'=> 'Sắp xếp theo bảng chữ cái',
'nav-sort-time' => 'Sắp xếp theo thời gian',
'menu-rename' => 'Đổi tên',
'menu-delete' => 'Xóa bỏ',
'menu-view' => 'Xem trước',
'menu-download' => 'Tải về',
'menu-resize' => 'Thay đổi kích thước',
'menu-crop' => 'Cắt',
'menu-move' => 'Di chuyển',
'menu-multiple' => 'Chọn nhiều',
'title-page' => 'Quản lý tập tin',
'title-panel' => 'Trình quản lý tập tin Laravel',
'title-upload' => 'Tải lên tập tin',
'title-view' => 'Xem tài liệu',
'title-user' => 'Các tập tin',
'title-share' => 'Thư mục chia sẻ',
'title-item' => 'Mục',
'title-size' => 'Kích thước',
'title-type' => 'Kiểu',
'title-modified' => 'Sửa đổi',
'title-action' => 'Hoạt động',
'type-folder' => 'Thư mục',
'message-empty' => 'Thư mục rỗng.',
'message-choose' => 'Chọn tập tin',
'message-delete' => 'Bạn có chắc bạn muốn xóa mục này?',
'message-name' => 'Tên thư mục:',
'message-rename' => 'Đổi tên thành:',
'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.',
'message-drop' => 'Hoặc thả tập tin vào đây để tải lên',
'error-rename' => 'Tên tệp đã được sử dụng!',
'error-file-name' => 'Tên tệp không thể để trống!',
'error-file-empty' => 'Bạn phải chọn một tập tin!',
'error-file-exist' => 'Một tập tin với tên này đã tồn tại!',
'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)',
'error-delete-folder'=> 'Bạn không thể xóa thư mục này vì nó không trống!',
'error-folder-name' => 'Tên thư mục không được để trống!',
'error-folder-exist'=> 'Một thư mục có tên này đã tồn tại!',
'error-folder-alnum'=> 'Chỉ cho phép tên thư mục chữ và số!',
'error-folder-not-found'=> 'Không tìm thấy thư mục! (:folder)',
'error-mime' => 'Unexpected MimeType: ',
'error-size' => 'Kích thước quá giới hạn:',
'error-instance' => 'Tệp đã tải lên phải là một phiên bản của UploadedFile',
'error-invalid' => 'Yêu cầu tải lên không hợp lệ',
'error-other' => 'Một lỗi đã xảy ra: ',
'error-too-large' => 'Yêu cầu thực thể quá lớn!',
'btn-upload' => 'Tải lên tập tin',
'btn-uploading' => 'Đang tải lên...',
'btn-close' => 'Đóng',
'btn-crop' => 'Cắt',
'btn-copy-crop' => 'Sao chép và Cắt',
'btn-crop-free' => 'Free',
'btn-cancel' => 'Hủy bỏ',
'btn-confirm' => 'Xác nhận',
'btn-resize' => 'Thay đổi kích thước',
'btn-open' => 'Mở thư mục',
'resize-ratio' => 'Tỷ lệ:',
'resize-scaled' => 'Hình ảnh thu nhỏ:',
'resize-true' => 'Đồng ý',
'resize-old-height' => 'Chiều cao ban đầu:',
'resize-old-width' => 'Chiều rộng ban đầu:',
'resize-new-height' => 'Chiều cao:',
'resize-new-width' => 'Chiều rộng:',
'locale-bootbox' => 'vi',
];
laravel-filemanager/src/lang/id/lfm.php 0000644 00000006511 15243417654 0014053 0 ustar 00 <?php
return [
'nav-back' => 'Kembali',
'nav-new' => 'Buat Direktori',
'nav-upload' => 'Unggah',
'nav-thumbnails' => 'Thumbnail',
'nav-list' => 'Daftar',
'nav-sort' => 'Urutkan',
'nav-sort-alphabetic'=> 'Urutkan Abjad',
'nav-sort-time' => 'Urutkan Waktu',
'menu-rename' => 'Ganti Nama',
'menu-delete' => 'Hapus',
'menu-view' => 'Pratinjau',
'menu-download' => 'Unduh',
'menu-resize' => 'Ubah Ukuran',
'menu-crop' => 'Potong',
'menu-move' => 'Pindah',
'menu-multiple' => 'Pilih Banyak',
'title-page' => 'Manajemen Berkas',
'title-panel' => 'Manajemen Berkas Laravel',
'title-upload' => 'Unggah Berkas',
'title-view' => 'Lihat Berkas',
'title-user' => 'Berkas',
'title-share' => 'Berkas yang Dibagikan',
'title-item' => 'Item',
'title-size' => 'Ukuran',
'title-type' => 'Tipe',
'title-modified' => 'Diubah',
'title-action' => 'Aksi',
'type-folder' => 'Direktori',
'message-empty' => 'Direktori kosong.',
'message-choose' => 'Pilih berkas',
'message-delete' => 'Anda yakin ingin menghapus item ini?',
'message-name' => 'Nama Direktori:',
'message-rename' => 'Ubah Menjadi:',
'message-extension_not_found' => 'Silakan instal ekstensi gd atau imagick untuk memotong, mengubah ukuran, dan membuat thumbnail gambar.',
'message-drop' => 'Atau letakkan berkas di sini untuk mengunggah',
'error-rename' => 'Nama berkas sudah digunakan!',
'error-file-name' => 'Nama berkas tidak boleh kosong!',
'error-file-empty' => 'Anda harus memilih berkas!',
'error-file-exist' => 'Berkas dengan nama ini sudah ada!',
'error-file-size' => 'Ukuran berkas melebihi batas peladen! (ukuran maksimum size: :max)',
'error-delete-folder'=> 'Anda tidak dapat menghapus direktori ini karena tidak kosong!',
'error-folder-name' => 'Nama direktori tidak boleh kosong!',
'error-folder-exist'=> 'Direktori dengan nama ini sudah ada!',
'error-folder-alnum'=> 'Hanya nama direktori alfanumerik yang diizinkan!',
'error-folder-not-found'=> 'Direktori tidak ditemukan! (:folder)',
'error-mime' => 'Kesalahan MimeType: ',
'error-size' => 'Ukuran melebihi batas:',
'error-instance' => 'Berkas yang diunggah harus merupakan instance dari UploadedFile',
'error-invalid' => 'Unggahan tidak valid',
'error-other' => 'Sebuah kesalahan telah terjadi: ',
'error-too-large' => 'Permintaan entitas terlalu besar!',
'btn-upload' => 'Unggah Berkas',
'btn-uploading' => 'Mengunggah...',
'btn-close' => 'Tutup',
'btn-crop' => 'Potong',
'btn-copy-crop' => 'Salin & Potong',
'btn-crop-free' => 'Bebas',
'btn-cancel' => 'Batal',
'btn-confirm' => 'Konfirmasi',
'btn-resize' => 'Ubah Ukuran',
'btn-open' => 'Buka Direktori',
'resize-ratio' => 'Rasio:',
'resize-scaled' => 'Gambar diskalakan:',
'resize-true' => 'Ya',
'resize-old-height' => 'Tinggi Asli:',
'resize-old-width' => 'Lebar Asli:',
'resize-new-height' => 'Tinggi:',
'resize-new-width' => 'Lebar:',
];
laravel-filemanager/src/lang/hu/lfm.php 0000644 00000007051 15243417654 0014073 0 ustar 00 <?php
return [
'nav-back' => 'Vissza',
'nav-new' => 'Új mappa',
'nav-upload' => 'Feltöltés',
'nav-thumbnails' => 'Miniatűrök',
'nav-list' => 'Lista',
'nav-sort' => 'Rendezés',
'nav-sort-alphabetic'=> 'ABC szerint',
'nav-sort-time' => 'Idő szerint',
'menu-rename' => 'Átnevezés',
'menu-delete' => 'Törlés',
'menu-view' => 'Megtekintés',
'menu-download' => 'Letöltés',
'menu-resize' => 'Átméretezés',
'menu-crop' => 'Vágás',
'menu-move' => 'Mozgatás',
'menu-multiple' => 'Több-kiválasztás',
'title-page' => 'Fájlkezelő',
'title-panel' => 'Fájlkezelő',
'title-upload' => 'Fájl feltöltés',
'title-view' => 'Fájl megtekintés',
'title-user' => 'Fájlok',
'title-share' => 'Megosztott fájlok',
'title-item' => 'Elem',
'title-size' => 'Méret',
'title-type' => 'Típus',
'title-modified' => 'Módosított',
'title-action' => 'Művelet',
'type-folder' => 'Mappa',
'message-empty' => 'A mappa üres.',
'message-choose' => 'Fájl kiválasztása',
'message-delete' => 'Biztos vagy benne, hogy törölni akarod az elemet?',
'message-name' => 'Mappa neve:',
'message-rename' => 'Átnevezés erre:',
'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.',
'message-drop' => 'Vagy húzd ide a fájlt',
'error-rename' => 'A fájl neve használatban!',
'error-file-name' => 'A fájlnév nem lehet üres!',
'error-file-empty' => 'Ki kell választanod egy fájlt!',
'error-file-exist' => 'Egy fájl már létezik ezzel a névvel.',
'error-file-size' => 'A fájl mérete túl nagy a szerverre nem lehet feltölteni! (Maximális megengedett méret: :max)',
'error-delete-folder'=> 'Nem tudod törölni ezt a mappát, mert nem üres!',
'error-folder-name' => 'A mappa neve nem lehet üres!',
'error-folder-exist'=> 'Egy mappa már létezik ezzel a névvel!',
'error-folder-alnum'=> 'Csak alfanumerikus karakterek lehetnek a mappa nevében!',
'error-folder-not-found'=> 'Nem található a(z) (:folder) nevű mappa!',
'error-mime' => 'Váratlan fájltípusok (MimeType): ',
'error-size' => 'Túl nagy méretű:',
'error-instance' => 'A feltöltött fájlnak egy UploadedFile kérelemnek kellene lennie',
'error-invalid' => 'Érvénytelen kérés a feltöltéssel kapcsolatban.',
'error-other' => 'Hiba történt: ',
'error-too-large' => 'Túl nagyméretű a fájl!',
'btn-upload' => 'Fájl feltöltése',
'btn-uploading' => 'Feltöltés folyamatban...',
'btn-close' => 'Bezárás',
'btn-crop' => 'Vágás',
'btn-copy-crop' => 'Másolás és vágás',
'btn-crop-free' => 'Szabad',
'btn-cancel' => 'Mégsem',
'btn-confirm' => 'Elfogad',
'btn-resize' => 'Átméretezés',
'btn-open' => 'Mappa megnyitása',
'resize-ratio' => 'Arány:',
'resize-scaled' => 'Méretarány:',
'resize-true' => 'Igen',
'resize-old-height' => 'Eredeti magasság:',
'resize-old-width' => 'Eredeti szélesség:',
'resize-new-height' => 'Magasság:',
'resize-new-width' => 'Szélesség:',
'locale-bootbox' => 'hu',
];
laravel-filemanager/src/lang/es/lfm.php 0000644 00000006362 15243417654 0014072 0 ustar 00 <?php
return [
'nav-back' => 'Atrás',
'nav-new' => 'Nueva Carpeta',
'nav-upload' => 'Subir',
'nav-thumbnails' => 'Miniaturas',
'nav-list' => 'Listado',
'nav-sort' => 'Ordenar',
'nav-sort-alphabetic'=> 'Ordenar Alfabéticamente',
'nav-sort-time' => 'Ordenar por Fecha',
'menu-rename' => 'Cambiar Nombre',
'menu-delete' => 'Eliminar',
'menu-view' => 'Ver',
'menu-download' => 'Descargar',
'menu-resize' => 'Redimensionar',
'menu-crop' => 'Recortar',
'title-page' => 'Administrador de Archivos',
'title-panel' => 'Administrador de Archivos',
'title-upload' => 'Subir Archivo',
'title-view' => 'Ver Archivo',
'title-user' => 'Archivos',
'title-share' => 'Archivos Compartidos',
'title-item' => 'Item',
'title-size' => 'Tamaño',
'title-type' => 'Tipo',
'title-modified' => 'Modificado',
'title-action' => 'Acción',
'type-folder' => 'Carpeta',
'message-empty' => 'Carpeta está vacía.',
'message-choose' => 'Seleccione Archivo',
'message-delete' => '¿Está seguro que desea eliminar este item?',
'message-name' => 'Nombre de Carpeta:',
'message-rename' => 'Renombrar a:',
'message-extension_not_found' => 'Por favor instale la extensión gd o imagick para recortar, redimensionar y hacer miniaturas de imágenes.',
'error-rename' => '¡El nombre del archivo ya existe!',
'error-file-name' => '¡El nombre del archivo no puede estar vacío!',
'error-file-empty' => '¡Debes escoger un archivo!',
'error-file-exist' => '¡Ya existe un archivo con este nombre!',
'error-file-size' => '¡El tamaño del archivo supera el límite del servidor! (tamaño máx.: :max)',
'error-delete-folder'=> '¡No puedes eliminar esta carpeta porque no está vacía!',
'error-folder-name' => '¡El nombre de carpeta no puede ser vacío!',
'error-folder-exist'=> '¡Ya existe una carpeta con este nombre!',
'error-folder-alnum'=> '¡Únicamente son soportados nombres de carpetas alfanuméricos!',
'error-folder-not-found'=> '¡La carpeta no ha sido encontrada! (:folder)',
'error-mime' => 'MimeType inesperado: ',
'error-size' => 'Supera el tamaño máximo:',
'error-instance' => 'El archivo subido debe ser una instancia de UploadedFile',
'error-invalid' => 'Petición de subida inválida',
'error-other' => 'Se ha producido un error: ',
'error-too-large' => '¡Entidad de petición demasiado grande!',
'btn-upload' => 'Subir Archivo',
'btn-uploading' => 'Subiendo...',
'btn-close' => 'Cerrar',
'btn-crop' => 'Recortar',
'btn-copy-crop' => 'Copiar y recortar',
'btn-cancel' => 'Cancelar',
'btn-resize' => 'Redimensionar',
'resize-ratio' => 'Ratio:',
'resize-scaled' => 'Imagen escalada:',
'resize-true' => 'Si',
'resize-old-height' => 'Alto Original:',
'resize-old-width' => 'Ancho Original:',
'resize-new-height' => 'Alto:',
'resize-new-width' => 'Ancho:',
'locale-bootbox' => 'es',
];
laravel-filemanager/src/lang/tr/lfm.php 0000644 00000006557 15243417654 0014116 0 ustar 00 <?php
return [
'nav-back' => 'Geri',
'nav-new' => 'Yeni Klasör',
'nav-upload' => 'Yükle',
'nav-thumbnails' => 'Küçük Resim',
'nav-list' => 'Liste',
'nav-sort' => 'Sırala',
'nav-sort-alphabetic'=> 'A-Z Sırala',
'nav-sort-time' => 'Zamana Göre Sırala',
'menu-rename' => 'Ad değiştir',
'menu-delete' => 'Sil',
'menu-view' => 'Görüntüle',
'menu-download' => 'İndir',
'menu-resize' => 'Boyutlandır',
'menu-crop' => 'Kırp',
'menu-move' => 'Taşı',
'menu-multiple' => 'Çoklu Seçim',
'title-page' => 'Dosya Kütüphanesi',
'title-panel' => 'Laravel Dosya Kütüphanesi',
'title-upload' => 'Dosya Yükle',
'title-view' => 'Dosya Gör',
'title-user' => 'Dosyalarım',
'title-share' => 'Paylaşılan Dosyalar',
'title-item' => 'Dosya',
'title-size' => 'Boyut',
'title-type' => 'Tür',
'title-modified' => 'Güncelleme',
'title-action' => 'Komutlar',
'type-folder' => 'Klasör',
'message-empty' => 'Klasör boş.',
'message-choose' => 'Dosya seç',
'message-delete' => 'Bu dosyayı silmek istediğinizden emin misiniz?',
'message-name' => 'Klasör adı:',
'message-rename' => 'Yeni ad:',
'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',
'message-drop' => 'Veya buraya dosyaları sürükle bırak',
'error-rename' => 'Dosya adı kullanımda!',
'error-file-name' => 'Dosya adı boş bırakılamaz!',
'error-file-empty' => 'Bir dosya seçmelisiniz!',
'error-file-exist' => 'Bu adda bir dosya zaten var!',
'error-file-size' => 'Dosya boyutu sunucu limitini aşıyor! (maximum boyut: :max)',
'error-delete-folder'=> 'Klasör boş olmadığından, klasörü silemezsiniz!',
'error-folder-name' => 'Klasör adı yazılmalıdır!',
'error-folder-exist'=> 'Bu adda bir klasör zaten var!',
'error-folder-alnum'=> 'Yalnızca alfasayısal klasör adlarına izin verilir!',
'error-folder-not-found'=> 'Klasör bulunamadı! (:folder)',
'error-mime' => 'Beklenmeyen Mime Türü: ',
'error-size' => 'Boyut sınırın üstünde:',
'error-instance' => 'Yüklenen dosya, UploadedFile örneğinde olmalıdır',
'error-invalid' => 'Geçersiz yükleme isteği',
'error-other' => 'Bir hata oluştu: ',
'error-too-large' => 'Girilen veri çok fazla!',
'btn-upload' => 'Yükle',
'btn-uploading' => 'Yükleniyor...',
'btn-close' => 'Kapat',
'btn-crop' => 'Kırp',
'btn-copy-crop' => 'Kopyala & Kes',
'btn-crop-free' => 'Serbest',
'btn-cancel' => 'İptal',
'btn-confirm' => 'Onayla',
'btn-resize' => 'Boyutlandır',
'btn-open' => 'Klasörü Aç',
'resize-ratio' => 'Oran:',
'resize-scaled' => 'Boyutlandırıldı:',
'resize-true' => 'Evet',
'resize-old-height' => 'Orijinal Yükseklik:',
'resize-old-width' => 'Orijinal Genişlik:',
'resize-new-height' => 'Yükseklik:',
'resize-new-width' => 'Genişlik:',
'locale-bootbox' => 'tr',
];
laravel-filemanager/src/lang/he/lfm.php 0000644 00000005303 15243417654 0014051 0 ustar 00 <?php
return [
'nav-back' => 'חזרה',
'nav-new' => 'תיקייה חדשה',
'nav-upload' => 'העלה',
'nav-thumbnails' => 'תמונות ממוזערות',
'nav-list' => 'רשימה',
'menu-rename' => 'שנה שם',
'menu-delete' => 'מחק',
'menu-view' => 'צפה',
'menu-download' => 'הורד',
'menu-resize' => 'שנה גודל',
'menu-crop' => 'חתוך',
'title-page' => 'מנהל קבצים',
'title-panel' => 'מנהל קבצים',
'title-upload' => 'העלאת קובץ',
'title-view' => 'צפייה בקובץ',
'title-user' => 'קבצים',
'title-share' => 'קבצים משותפים',
'title-item' => 'פריט',
'title-size' => 'גודל',
'title-type' => 'סוג',
'title-modified' => 'שונה',
'title-action' => 'פעולה',
'type-folder' => 'תיקייה',
'message-empty' => 'התיקייה ריקה.',
'message-choose' => 'בחר קובץ',
'message-delete' => 'האם אתה בטוח שברצונך למחוק פריט זה?',
'message-name' => 'שם התיקייה:',
'message-rename' => 'שם חדש:',
'error-rename' => 'הקובץ נמצא בשימוש!',
'error-file-empty' => 'עליך לבחור קובץ!',
'error-file-exist' => 'קובץ עם שם זה כבר קיים!',
'error-file-size' => 'File size exceeds server limit! (maximum size: :max)',
'error-delete-folder'=> 'לא ניתן למחוק תייקיה זו מכיוון שהיא לא ריקה!',
'error-folder-name' => 'נא להזין שם תיקייה!',
'error-folder-exist'=> 'תיקייה עם שם זהה כבר קיימת!',
'error-folder-alnum'=> 'Only alphanumeric folder names are allowed!',
'error-mime' => 'סוג קובץ לא תקין: ',
'error-instance' => 'הקובץ שהועלה צריך להיות מופע של UploadedFile',
'error-invalid' => 'בקשת העלה לא תיקנית.',
'btn-upload' => 'העלה קובת',
'btn-uploading' => 'מעלה...',
'btn-close' => 'סגור',
'btn-crop' => 'חתוך',
'btn-cancel' => 'בטל',
'btn-resize' => 'שנה גודל',
'resize-ratio' => 'יחס:',
'resize-scaled' => 'תמונה הוגדלה:',
'resize-true' => 'כן',
'resize-old-height' => 'גובה מקורי:',
'resize-old-width' => 'אורך מקורי:',
'resize-new-height' => 'גובה:',
'resize-new-width' => 'אורך:',
'locale-bootbox' => 'he',
];
laravel-filemanager/src/lang/fa/lfm.php 0000644 00000007776 15243417654 0014063 0 ustar 00 <?php
return [
'nav-back' => 'بازگشت',
'nav-new' => 'پوشه جدید',
'nav-upload' => 'آپلود',
'nav-thumbnails' => 'تصویرک ها',
'nav-list' => 'لیست',
'nav-sort' => 'مرتب سازی',
'nav-sort-alphabetic'=> 'مرتب سازی الفبایی',
'nav-sort-time' => 'مرتب سازی زمانی',
'menu-rename' => 'تغییر نام',
'menu-delete' => 'حذف',
'menu-view' => 'مشاهده',
'menu-download' => 'دانلود',
'menu-resize' => 'تغییر اندازه',
'menu-crop' => 'برش',
'menu-move' => 'انتقال',
'menu-multiple' => 'انتخاب چندتایی',
'title-page' => 'مدیریت فایل',
'title-panel' => 'مدیریت فایل لاراول',
'title-upload' => 'آپلود فایل',
'title-view' => 'مشاهده فایل',
'title-user' => 'فایل ها',
'title-share' => 'فایل های اشتراکی',
'title-item' => 'آیتم',
'title-size' => 'اندازه',
'title-type' => 'نوع',
'title-modified' => 'تاریخ آخرین ویرایش',
'title-action' => 'اقدام',
'type-folder' => 'پوشه',
'message-empty' => 'پوشه خالی است.',
'message-choose' => 'انتخاب فایل',
'message-delete' => 'آیا از حذف این آیتم مطمئن هستید؟',
'message-name' => 'نام پوشه:',
'message-rename' => 'تغییر نام به:',
'message-extension_not_found' => 'لطفا gd یا imagick را برای برش، تغییر اندازه و ایجاد تصویرک نصب کنید.',
'message-drop' => 'یا فایل ها را برای آپلود اینجا رها کنید',
'error-rename' => 'این نام قبلا استفاده شده!',
'error-file-name' => 'نام فایل نباید خالی باشد!',
'error-file-empty' => 'باید یک فایل انتخاب کنید!',
'error-file-exist' => 'فایلی با این نام از قبل وجود دارد!',
'error-file-size' => 'محدودیت حجم فایل سرور! (حداکثر حجم: :max)',
'error-delete-folder'=> 'به دلیل خالی نبودن پوشه امکان حذف آن وجود ندارد!',
'error-folder-name' => 'نام پوشه نمی تواند خالی باشد!',
'error-folder-exist'=> 'پوشه ای با این نام از قبل وجود دارد!',
'error-folder-alnum'=> 'فقط اسامی الفبایی برای پوشه مجاز است!',
'error-folder-not-found'=> 'پوشهای یافت نشد! (:folder)',
'error-mime' => 'پسوند غیرمجاز: ',
'error-size' => 'سایز بیش از حد:',
'error-instance' => 'فایل آپلود شده باید نمونه ای از UploadedFile باشد',
'error-invalid' => 'درخواست آپلود غیرمعتبر',
'error-other' => 'خطایی رخ داد: ',
'error-too-large' => 'درخواست موجودیت خیلی طولانیست!',
'btn-upload' => 'آپلود فایل',
'btn-uploading' => 'در حال آپلود',
'btn-close' => 'بستن',
'btn-crop' => 'برش',
'btn-copy-crop' => 'برش و ذخیره در فایل جدید',
'btn-crop-free' => 'برش آزاد',
'btn-cancel' => 'انصراف',
'btn-confirm' => 'تایید',
'btn-resize' => 'تغییر اندازه',
'btn-open' => 'باز کردن پوشه',
'resize-ratio' => 'نسبت:',
'resize-scaled' => 'تصویر مقیاس شده:',
'resize-true' => 'بله',
'resize-old-height' => 'ارتفاع اصلی:',
'resize-old-width' => 'عرض اصلی:',
'resize-new-height' => 'ارتفاع:',
'resize-new-width' => 'عرض:',
'locale-bootbox' => 'fa',
];
laravel-filemanager/src/lang/el/lfm.php 0000644 00000010050 15243417654 0014050 0 ustar 00 <?php
return [
'nav-back' => 'Επιστροφή',
'nav-new' => 'Νέος φάκελος',
'nav-upload' => 'Ανέβασμα',
'nav-thumbnails' => 'Εικονίδια',
'nav-list' => 'Λίστα',
'menu-rename' => 'Μετονομασία',
'menu-delete' => 'Διαγραφή',
'menu-view' => 'Επισκόπηση',
'menu-download' => 'Κατέβασμα',
'menu-resize' => 'Αλλαγή μεγέθους',
'menu-crop' => 'Κόψιμο',
'title-page' => 'Διαχείριση αρχείων',
'title-panel' => 'Laravel FileManager',
'title-upload' => 'Ανέβασμα αρχείου',
'title-view' => 'Επισκόπηση αρχείου',
'title-user' => 'Αρχεία',
'title-share' => 'Κοινόχρηστα αρχεία',
'title-item' => 'Αντικείμενο',
'title-size' => 'Μέγεθος',
'title-type' => 'Τύπος',
'title-modified' => 'Ανανεώθηκε',
'title-action' => 'Ενέργεια',
'type-folder' => 'Φάκελος',
'message-empty' => 'Ο φάκελος είναι άδειος',
'message-choose' => 'Επιλογή αρχείων',
'message-delete' => 'Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτό το αντικείμενο?',
'message-name' => 'Όνομα φακέλου:',
'message-rename' => 'Μετονομασία σε:',
'message-extension_not_found' => 'Παρακαλούμε κάντε εγκατάσταση του gd ή imagick php προσθετου προκειμένου να μπορείτε να κόψετε, αλλάξετε το μέγεθος και δημιουργήσετε εικονίδια των εικόνων.',
'error-rename' => 'Αυτό το όνομα αρχείου χρησιμοποιείται ήδη',
'error-file-empty' => 'Πρέπει να επιλέξετε ένα αρχείο!',
'error-file-exist' => 'Υπάρχει ήδη αρχείο με αυτό το όνομα!',
'error-file-size' => 'Το μέγεθος του αρχείου ξεπερνά το επιτρεπόμενο όριο σε μέγεθος (μέγιστο μέγεθος: :max)',
'error-delete-folder'=> 'Δεν μπορείτε να διαγράψετε τον φάκελο γιατί περιέχει αρχεία!',
'error-folder-name' => 'Ο φάκελος δεν γίνεται να είναι άδειος',
'error-folder-exist'=> 'Υπάρχει ήδη φάκελος με αυτό το όνομα!',
'error-folder-alnum'=> 'Επιτρέπονται μόνο γράμματα και αριθμοί για το όνομα των φακέλων!',
'error-mime' => 'Λανθασμένος τύπος αρχείου: ',
'error-size' => 'Μέγιστο μέγεθος αρχείου:',
'error-instance' => 'Το ανεβασμένο αρχείο έπρεπε να είναι του τύπου UploadedFile',
'error-invalid' => 'Λάθος αίτημα ανεβάσματος',
'error-other' => 'Παρουσιάστηκε ένα σφάλμα: ',
'error-too-large' => 'Το μέγεθος του αιτήματος είναι πολύ μεγάλο!',
'btn-upload' => 'Ανέβασματα αρχείων',
'btn-uploading' => 'Ανεβασμα...',
'btn-close' => 'Κλείσιμο',
'btn-crop' => 'Κόψιμο',
'btn-cancel' => 'Ακύρωση',
'btn-resize' => 'Αλλαγή μεγέθους',
'resize-ratio' => 'Αναλογία:',
'resize-scaled' => 'Η εικόνα άλλαξε μέγεθος:',
'resize-true' => 'Ναι',
'resize-old-height' => 'Πρωτότυπο ύψος:',
'resize-old-width' => 'Πρωτότυπο πλάτος:',
'resize-new-height' => 'Ύψος:',
'resize-new-width' => 'Μπλάτος:',
'locale-bootbox' => 'el',
];
laravel-filemanager/src/lang/ar/lfm.php 0000644 00000005765 15243417654 0014073 0 ustar 00 <?php
return [
'nav-back' => 'الخلف',
'nav-new' => 'مجلد جديد',
'nav-upload' => 'رفع',
'nav-thumbnails' => 'مصغرات',
'nav-list' => 'قائمة',
'menu-rename' => 'إعادة تسمية',
'menu-delete' => 'حذف',
'menu-view' => 'عرض',
'menu-download' => 'تنزيل',
'menu-resize' => 'تغيير الحجم',
'menu-crop' => 'قص',
'title-page' => 'مدير الملفات',
'title-panel' => 'مدير الملفات',
'title-upload' => 'رفع ملف',
'title-view' => 'عرض الملف',
'title-user' => 'الملفات',
'title-share' => 'الملفات المشتركة',
'title-item' => 'ملف',
'title-size' => 'الحجم',
'title-type' => 'النوع',
'title-modified' => 'اخر تعديل',
'title-action' => 'اجراء',
'type-folder' => 'مجلد',
'message-empty' => 'المجلد فارغ',
'message-choose' => 'اختر ملف',
'message-delete' => 'هل انت متاكد من حذف هذا الملف',
'message-name' => 'اسم المجلد:',
'message-rename' => 'اعادة تسمية الى:',
'message-extension_not_found' => 'يجب تثبيت gd او imagick لقص او تغيير حجم الصورة.',
'error-rename' => 'اسم الملف مستخدما مسبقا!',
'error-file-empty' => 'يجب اختيارملف!',
'error-file-exist' => 'يوجد ملف سابق بنفس الاسم!',
'error-file-size' => 'File size exceeds server limit! (maximum size: :max)',
'error-delete-folder'=> 'لا يمكن حذف هذا المجلد لانه غير فارغ!',
'error-folder-name' => 'اسم المجلد لا يمكن ان يكون فاغ!',
'error-folder-exist'=> 'اسم المجلد مستخدما مسبقا!',
'error-folder-alnum'=> 'Only alphanumeric folder names are allowed!',
'error-mime' => 'نوع الملف غير معروف: ',
'error-instance' => 'The uploaded file should be an instance of UploadedFile',
'error-invalid' => 'طلب رفع غير صالح',
'error-other' => 'حدثت مشكلة: ',
'error-too-large' => 'الملف كبير جدا',
'btn-upload' => 'رفع الملف',
'btn-uploading' => 'جاري الرفع...',
'btn-close' => 'اغلاق',
'btn-crop' => 'قص',
'btn-cancel' => 'الغاء',
'btn-resize' => 'تغيير الحجم',
'resize-ratio' => 'النسبة:',
'resize-scaled' => 'تم تغيير حجم الصورة:',
'resize-true' => 'نعم',
'resize-old-height' => 'الارتفاع الاصلي:',
'resize-old-width' => 'العرض الاصلي:',
'resize-new-height' => 'الارتفاع:',
'resize-new-width' => 'العرض:',
'locale-bootbox' => 'ar',
];
laravel-filemanager/src/lang/nl/lfm.php 0000644 00000006637 15243417654 0014101 0 ustar 00 <?php
return [
'nav-back' => 'Terug',
'nav-new' => 'Nieuwe Map',
'nav-upload' => 'Upload',
'nav-thumbnails' => 'Thumbnails',
'nav-list' => 'Lijst',
'nav-sort' => 'Sorteren',
'nav-sort-alphabetic' => 'Sorteer op naam',
'nav-sort-time' => 'Sorteer op tijd',
'menu-rename' => 'Hernoemen',
'menu-delete' => 'Verwijderen',
'menu-view' => 'Bekijken',
'menu-download' => 'Download',
'menu-resize' => 'Formaat aanpassen',
'menu-crop' => 'Bijsnijden',
'menu-move' => 'Verplaatsen',
'menu-multiple' => 'Multi-selectie',
'title-page' => 'File Manager',
'title-panel' => 'Laravel FileManager',
'title-upload' => 'Bestand uploaden',
'title-view' => 'Bestand bekijken',
'title-user' => 'Bestanden',
'title-share' => 'Openbare map',
'title-item' => 'Item',
'title-size' => 'Grootte',
'title-type' => 'Type',
'title-modified' => 'Gewijzigd',
'title-action' => 'Actie',
'type-folder' => 'Map',
'message-empty' => 'De map is leeg.',
'message-choose' => 'Kies bestand',
'message-delete' => 'Weet u zeker dat u dit bestand wilt verwijderen?',
'message-name' => 'Mapnaam:',
'message-rename' => 'Hernoemen naar:',
'message-extension_not_found' => 'Installeer de GD of Imagick extensie om afbeeldingen te kunnen bewerken.',
'message-drop' => 'Of sleep bestanden naar hier om te uploaden',
'error-rename' => 'Bestandsnaam is al in gebruik!',
'error-file-empty' => 'U dient een bestand te kiezen!',
'error-file-exist' => 'Een bestand met deze naam bestaat al!',
'error-file-size' => 'Bestandsgrootte overschrijdt de server limiet! (maximale grootte: :max)',
'error-delete-folder' => 'U kunt deze map niet verwijderen omdat deze nog bestanden bevat!',
'error-folder-name' => 'Mapnaam mag niet leeg zijn!',
'error-folder-exist' => 'Een map met deze naam bestaat al!',
'error-folder-alnum' => 'Alleen alfanumerieke map namen zijn toegestaan!',
'error-mime' => 'Onverwacht MimeType: ',
'error-instance' => 'Het geuploade bestand moet een instantie zijn van UploadedFile',
'error-invalid' => 'Ongeldig upload verzoek',
'error-other' => 'Er is een fout opgetreden: ',
'error-size' => 'U heeft de maximale bestandsgrootte overschreden:',
'error-too-large' => 'De verzoek entiteit is te groot!',
'btn-upload' => 'Bestand uploaden',
'btn-uploading' => 'Uploaden...',
'btn-close' => 'Sluiten',
'btn-crop' => 'Bijsnijden',
'btn-copy-crop' => 'Kopiëren & Bijsnijden',
'btn-crop-free' => 'Vrij',
'btn-cancel' => 'Annuleren',
'btn-confirm' => 'Bevestigen',
'btn-resize' => 'Formaat aanpassen',
'btn-open' => 'Map openen',
'resize-ratio' => 'Ratio:',
'resize-scaled' => 'Afbeelding geschaald:',
'resize-true' => 'Ja',
'resize-old-height' => 'Originele hoogte:',
'resize-old-width' => 'Originele breedte:',
'resize-new-height' => 'Hoogte:',
'resize-new-width' => 'Breedte:',
'locale-bootbox' => 'nl',
];
laravel-filemanager/src/lang/rs/lfm.php 0000644 00000006157 15243417654 0014111 0 ustar 00 <?php
return [
'nav-back' => 'Nazad',
'nav-new' => 'Nova fascikla',
'nav-upload' => 'Otpremiti',
'nav-thumbnails' => 'Sličice',
'nav-list' => 'Lista',
'nav-sort' => 'Poredaj',
'nav-sort-alphabetic' => 'Poredaj po abecedi',
'nav-sort-time' => 'Poredaj po vremenu',
'menu-rename' => 'Preimenuj',
'menu-delete' => 'Izbriši',
'menu-view' => 'Pregled',
'menu-download' => 'Preuzimanje',
'menu-resize' => 'Promenite veličinu',
'menu-crop' => 'Odreži',
'menu-move' => 'Premesti',
'menu-multiple' => 'Višestruki izbor',
'title-page' => 'File Manager',
'title-panel' => 'Laravel FileManager',
'title-upload' => 'Dodaj fajl(ove)',
'title-view' => 'Pogledaj Fajl',
'title-user' => 'Fajlovi',
'title-share' => 'Deljeni fajlovi',
'title-item' => 'Predmet',
'title-size' => 'Veličina',
'title-type' => 'Tip',
'title-modified' => 'Izmenjen',
'title-action' => 'Akcija',
'type-folder' => 'Fascikla',
'message-empty' => 'Mapa je prazna.',
'message-choose' => 'Odaberite datoteke',
'message-delete' => 'Da li ste sigurni da želite da izbrišete ovu stavku?',
'message-name' => 'Ime fascikle:',
'message-rename' => 'Preimenuj u:',
'message-extension_not_found' => 'Instalirajte dodatak gd ili imagick da biste odrezali, promenili veličinu i napravili sličice slika.',
'message-drop' => 'Ili ovde spustite datoteke da biste ih otpremili',
'error-rename' => 'Naziv datoteke se već koristi!',
'error-file-name' => 'Ime datoteke ne može biti prazno!',
'error-file-empty' => 'Morate odabrati datoteku!',
'error-file-exist' => 'Datoteka sa ovim imenom već postoji!',
'error-file-size' => 'Veličina datoteke premašuje ograničenje servera! (maksimalna veličina: :max)',
'error-delete-folder' => 'Ne možete izbrisati ovu fasciklu jer nije prazna!',
'error-folder-name' => 'Ime mape ne može biti prazno!',
'error-folder-exist' => 'Fascikla sa ovim imenom već postoji!',
'error-folder-alnum' => 'Dozvoljena su samo alfanumerička imena mapa!',
'error-folder-not-found' => 'Direktorijum nije pronađen! (:folder)',
'error-mime' => 'Neočekivani MimeTipe: ',
'error-size' => 'Prekoračena veličina:',
'error-instance' => 'Otpremljena datoteka treba da bude instanca UploadedFile',
'error-invalid' => 'Nevažeći zahtev za otpremanje',
'error-other' => 'Došlo do greške: ',
'error-too-large' => 'Entitet zahteva je prevelik!',
'btn-upload' => 'Dodaj fajl(ove)',
'btn-uploading' => 'Otpremanje ...',
'btn-close' => 'Zatvori',
'btn-crop' => 'Odreži',
'btn-copy-crop' => 'Kopiraj i Odreži',
'btn-crop-free' => 'besplatno',
'btn-cancel' => 'Poništiti, otkazati',
'btn-confirm' => 'Potvrdi',
'btn-resize' => 'Promenite veličinu',
'btn-open' => 'Otvori folder',
'resize-ratio' => 'Odnos:',
'resize-scaled' => 'Slika umanjena:',
'resize-true' => 'Da',
'resize-old-height' => 'Originalna visina:',
'resize-old-width' => 'Originalna širina:',
'resize-new-height' => 'Visina:',
'resize-new-width' => 'Širina:',
];
laravel-filemanager/src/lang/en/lfm.php 0000644 00000006332 15243417654 0014062 0 ustar 00 <?php
return [
'nav-back' => 'Back',
'nav-new' => 'New Folder',
'nav-upload' => 'Upload',
'nav-thumbnails' => 'Thumbnails',
'nav-list' => 'List',
'nav-sort' => 'Sort',
'nav-sort-alphabetic'=> 'Sort By Alphabets',
'nav-sort-time' => 'Sort By Time',
'menu-rename' => 'Rename',
'menu-delete' => 'Delete',
'menu-view' => 'Preview',
'menu-download' => 'Download',
'menu-resize' => 'Resize',
'menu-crop' => 'Crop',
'menu-move' => 'Move',
'menu-multiple' => 'Multi-selection',
'title-page' => 'File Manager',
'title-panel' => 'Laravel FileManager',
'title-upload' => 'Upload File(s)',
'title-view' => 'View File',
'title-user' => 'Files',
'title-share' => 'Shared Files',
'title-item' => 'Item',
'title-size' => 'Size',
'title-type' => 'Type',
'title-modified' => 'Modified',
'title-action' => 'Action',
'type-folder' => 'Folder',
'message-empty' => 'Folder is empty.',
'message-choose' => 'Choose File(s)',
'message-delete' => 'Are you sure you want to delete this item?',
'message-name' => 'Folder name:',
'message-rename' => 'Rename to:',
'message-extension_not_found' => 'Please install gd or imagick extension to crop, resize, and make thumbnails of images.',
'message-drop' => 'Or drop files here to upload',
'error-rename' => 'File name already in use!',
'error-file-name' => 'File name cannot be empty!',
'error-file-empty' => 'You must choose a file!',
'error-file-exist' => 'A file with this name already exists!',
'error-file-size' => 'File size exceeds server limit! (maximum size: :max)',
'error-delete-folder'=> 'You cannot delete this folder because it is not empty!',
'error-folder-name' => 'Folder name cannot be empty!',
'error-folder-exist'=> 'A folder with this name already exists!',
'error-folder-alnum'=> 'Only alphanumeric folder names are allowed!',
'error-folder-not-found'=> 'Folder not found! (:folder)',
'error-mime' => 'Unexpected MimeType: ',
'error-size' => 'Over limit size:',
'error-instance' => 'The uploaded file should be an instance of UploadedFile',
'error-invalid' => 'Invalid upload request',
'error-other' => 'An error has occured: ',
'error-too-large' => 'Request entity too large!',
'btn-upload' => 'Upload File(s)',
'btn-uploading' => 'Uploading...',
'btn-close' => 'Close',
'btn-crop' => 'Crop',
'btn-copy-crop' => 'Copy & Crop',
'btn-crop-free' => 'Free',
'btn-cancel' => 'Cancel',
'btn-confirm' => 'Confirm',
'btn-resize' => 'Resize',
'btn-resize-copy' => 'Copy & Resize',
'btn-open' => 'Open Folder',
'resize-ratio' => 'Ratio:',
'resize-scaled' => 'Image scaled:',
'resize-true' => 'Yes',
'resize-old-height' => 'Original Height:',
'resize-old-width' => 'Original Width:',
'resize-new-height' => 'Height:',
'resize-new-width' => 'Width:',
];
laravel-filemanager/src/lang/sk/lfm.php 0000644 00000006750 15243417654 0014101 0 ustar 00 <?php
return [
'nav-back' => 'Späť',
'nav-new' => 'Nový priečinok',
'nav-upload' => 'Nahrať',
'nav-thumbnails' => 'Zmenšeniny',
'nav-list' => 'Zoznam',
'nav-sort' => 'Zoradiť',
'nav-sort-alphabetic'=> 'Zoradiť podľa abecedy',
'nav-sort-time' => 'Zoradiť podľa času',
'menu-rename' => 'Premenovať',
'menu-delete' => 'Zmazať',
'menu-view' => 'Zobraziť',
'menu-download' => 'Stiahnuť',
'menu-resize' => 'Zmenšiť',
'menu-crop' => 'Orezať',
'menu-move' => 'Presunúť',
'menu-multiple' => 'Vybrať viacero súborov',
'title-page' => 'File Manager',
'title-panel' => 'Laravel FileManager',
'title-upload' => 'Nahrať súbor(y)',
'title-view' => 'Zobraziť súbor',
'title-user' => 'Moje súbory',
'title-share' => 'Zdieľané súbory',
'title-item' => 'Položka',
'title-size' => 'Veľkosť',
'title-type' => 'Typ',
'title-modified' => 'Modifikované',
'title-action' => 'Akcia',
'type-folder' => 'Priečinok',
'message-empty' => 'Priečinok je prázdny.',
'message-choose' => 'Vyberte súbor(y)',
'message-delete' => 'Naozaj chcete zmazať túto položku?',
'message-name' => 'Názov priečinku:',
'message-rename' => 'Premenovať na:',
'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.',
'message-drop' => 'Alebo pretiahnite súbory pre nahratie.',
'error-rename' => 'Tento názov súboru už existuje!',
'error-file-name' => 'Názov súboru nemôže byť prázdny!',
'error-file-empty' => 'Vyberte súbor!',
'error-file-exist' => 'Súbor s tymto názvom už existuje!',
'error-file-size' => 'Veľkosť súboru prekročila limit servera! (Mazimálna veľkosť je: :max)',
'error-delete-folder'=> 'Tento priečinok nie je možné vymazať, kedže nie je prázdny!',
'error-folder-name' => 'Názov priečinku nesmie byť prázdny!',
'error-folder-exist'=> 'Priečinok s tymto názvom už existuje!',
'error-folder-alnum'=> 'Len písmena a čísline su povolené v názve priečinku!',
'error-folder-not-found'=> 'Priečinok nebol nájdeny! (:folder)',
'error-mime' => 'Nepovolený typ súbory: ',
'error-size' => 'Súbor presahuje povolenú veľkosť:',
'error-instance' => 'Nahraný súbor by mal byť inštancie UploadedFile',
'error-invalid' => 'Chybná požiadavka',
'error-other' => 'Nečakaná chyba: ',
'error-too-large' => 'Request entity too large!',
'btn-upload' => 'Nahrajte súbor(y)',
'btn-uploading' => 'Nahrávame...',
'btn-close' => 'Zrušiť',
'btn-crop' => 'Orezať',
'btn-copy-crop' => 'Skopírovať a orezať',
'btn-crop-free' => 'Voľné',
'btn-cancel' => 'Zrušiť',
'btn-confirm' => 'Povrdiť',
'btn-resize' => 'Zmenšiť',
'btn-open' => 'Otvoriť priečinok',
'resize-ratio' => 'Ratio:',
'resize-scaled' => 'Obrázok zmenšený:',
'resize-true' => 'Áno',
'resize-old-height' => 'Pôvodna výška:',
'resize-old-width' => 'Pôvodna šírka:',
'resize-new-height' => 'Výška:',
'resize-new-width' => 'Šírka:',
];
laravel-filemanager/src/lang/fr/lfm.php 0000644 00000006702 15243417654 0014070 0 ustar 00 <?php
return [
'nav-back' => 'Retour',
'nav-new' => 'Nouveau dossier',
'nav-upload' => 'Envoyer',
'nav-thumbnails' => 'Vignettes',
'nav-list' => 'Liste',
'nav-sort' => 'Trier',
'nav-sort-alphabetic'=> 'Trier par ordre alphabétique',
'nav-sort-time' => 'Trier par date',
'menu-rename' => 'Renommer',
'menu-delete' => 'Effacer',
'menu-view' => 'Voir',
'menu-download' => 'Télécharger',
'menu-resize' => 'Redimensionner',
'menu-crop' => 'Rogner',
'menu-move' => 'Déplacer',
'menu-multiple' => 'Multi-selection',
'title-page' => 'Gestionnaire de fichiers',
'title-panel' => 'Laravel FileManager',
'title-upload' => 'Envoyer un/des fichier(s)',
'title-view' => 'Voir le fichier',
'title-user' => 'Fichiers',
'title-share' => 'Fichiers partagés',
'title-item' => 'Élement',
'title-size' => 'Taille du fichier',
'title-type' => 'Type de fichier',
'title-modified' => 'Date de modification',
'title-action' => 'Exécuter',
'type-folder' => 'Dossier',
'message-empty' => 'Dossier est vide',
'message-choose' => 'Choisir un/des fichier(s)',
'message-delete' => 'Êtes-vous sûr de vouloir supprimer ce fichier ?',
'message-name' => 'Nom du dossier :',
'message-rename' => 'Renommer le dossier :',
'message-extension_not_found' => 'Extension inconnue',
'message-drop' => 'Ou déposez des fichiers ici pour les uploader',
'error-rename' => 'Nom déjà utilisé',
'error-file-name' => 'Nom doit être renseigné !',
'error-file-empty' => 'Veuillez choisir un fichier',
'error-file-exist' => 'Un fichier avec ce nom existe déjà',
'error-file-size' => 'Le fichier dépasse la taille maximale autorisée de :max',
'error-delete-folder'=> "Vous ne pouvez pas supprimer ce dossier car il n'est pas vide",
'error-folder-name' => 'Le nom du dossier ne peut pas être vide',
'error-folder-exist'=> 'Un dossier avec ce nom existe déjà',
'error-folder-alnum'=> 'Seuls les caractéres alphanumériques sont autorisés',
'error-folder-not-found'=> 'Le dossier n\'a pas été trouvé ! (:folder)',
'error-mime' => 'Type de fichier MIME non autorisé : ',
'error-size' => 'Poids supérieur à la limite :',
'error-instance' => 'Le fichier doit être une instance de UploadedFile',
'error-invalid' => "Requête d'upload invalide",
'error-other' => 'Une erreur est survenue : ',
'error-too-large' => 'Request entity too large!',
'btn-upload' => 'Envoyer le/les fichier(s)',
'btn-uploading' => 'Envoi...',
'btn-close' => 'Fermer',
'btn-crop' => 'Rogner',
'btn-copy-crop' => 'Copier & Rogner',
'btn-crop-free' => 'Libre',
'btn-cancel' => 'Annuler',
'btn-confirm' => 'Confirm',
'btn-resize' => 'Redimensionner',
'btn-open' => 'Ouvrir le répertoire',
'resize-ratio' => 'Ratio:',
'resize-scaled' => "Image à l'échelle:",
'resize-true' => 'Oui',
'resize-old-height' => 'Hauteur originale :',
'resize-old-width' => 'Largeur originale :',
'resize-new-height' => 'Hauteur :',
'resize-new-width' => 'Largeur :',
'locale-bootbox' => 'fr',
];
laravel-filemanager/src/lang/ru/lfm.php 0000644 00000011053 15243417654 0014102 0 ustar 00 <?php
return [
'nav-back' => 'Назад',
'nav-new' => 'Новая папка',
'nav-upload' => 'Загрузить',
'nav-thumbnails' => 'Миниатюры',
'nav-list' => 'Список',
'nav-sort' => 'Сортировать',
'nav-sort-alphabetic'=> 'Сортировать по алфавиту',
'nav-sort-time' => 'Сортировать по времени',
'menu-rename' => 'Переименовать',
'menu-delete' => 'Удалить',
'menu-view' => 'Просмотр',
'menu-download' => 'Загрузить',
'menu-resize' => 'Изменить размер',
'menu-crop' => 'Обрезать',
'menu-move' => 'Переместить',
'menu-multiple' => 'Multi-выбор',
'title-page' => 'Менеджер файлов',
'title-panel' => 'Laravel FileManager',
'title-upload' => 'Загрузка файла',
'title-view' => 'Просмотр файла',
'title-user' => 'Файлы',
'title-share' => 'Общие файлы',
'title-item' => 'Номер',
'title-size' => 'Размер',
'title-type' => 'Тип',
'title-modified' => 'Изменен',
'title-action' => 'Действие',
'type-folder' => 'Папка',
'message-empty' => 'Папка пуста.',
'message-choose' => 'Выберите файл',
'message-delete' => 'Вы уверены что хотите это удалить?',
'message-name' => 'Название папки:',
'message-rename' => 'Переименовать в:',
'message-extension_not_found' => 'Требуется установка GD или Imagick расширения для обрезания, масштабирования и создания миниатюр изображений.',
'message-drop' => 'Или переместите сюда файлы для загрузки',
'error-rename' => 'Имя файла уже используется!',
'error-file-name' => 'Имя файла не может быть пустым!',
'error-file-empty' => 'Вы должны выбрать файл!',
'error-file-exist' => 'Файл с этим именем уже существует!',
'error-file-size' => 'Размер файла превышает разрешенный сервером размер! (максимальный размер: :max)',
'error-delete-folder'=> 'Вы не можете удалить эту папку, потому что она не пустая!',
'error-folder-name' => 'Имя папки не может быть пустым!',
'error-folder-exist'=> 'Папка с таким названием уже существует!',
'error-folder-alnum'=> 'Название папки должно содержать только цифры и латинские буквы!',
'error-folder-not-found'=> 'Папка не найдена! (:folder)',
'error-mime' => 'Неподдерживаемый MimeType: ',
'error-size' => 'Размер превышает разрешенный:',
'error-instance' => 'Загруженный файл должен быть экземпляром UploadedFile',
'error-invalid' => 'Неверный запрос загрузки',
'error-other' => 'Произошла ошибка: ',
'error-too-large' => 'Размер загружаемого файла слишком велик!',
'btn-upload' => 'Загрузить файл',
'btn-uploading' => 'Загрузка...',
'btn-close' => 'Закрыть',
'btn-crop' => 'Обрезать',
'btn-copy-crop' => 'Скопировать & Обрезать',
'btn-crop-free' => 'Освободить',
'btn-cancel' => 'Отмена',
'btn-confirm' => 'Подтвердить',
'btn-resize' => 'Изменить размер',
'btn-open' => 'Открыть папку',
'resize-ratio' => 'Соотношение:',
'resize-scaled' => 'Масштабировать изображение:',
'resize-true' => 'Да',
'resize-old-height' => 'Оригинальная высота:',
'resize-old-width' => 'Оригинальная ширина:',
'resize-new-height' => 'Высота:',
'resize-new-width' => 'Ширина:',
'locale-bootbox' => 'ru',
];
laravel-filemanager/src/lang/zh-TW/lfm.php 0000644 00000006273 15243417654 0014435 0 ustar 00 <?php
return [
'nav-back' => '回上一頁',
'nav-new' => '新增資料夾',
'nav-upload' => '上傳檔案',
'nav-thumbnails' => '縮圖顯示',
'nav-list' => '列表顯示',
'nav-sort' => '排序',
'nav-sort-alphabetic'=> '依字母排序',
'nav-sort-time' => '依時間排序',
'menu-rename' => '重新命名',
'menu-delete' => '刪除',
'menu-view' => '預覽',
'menu-download' => '下載',
'menu-resize' => '縮放',
'menu-crop' => '裁剪',
'menu-move' => '搬移',
'menu-multiple' => '多選',
'title-page' => '檔案管理',
'title-panel' => '檔案管理',
'title-upload' => '上傳檔案',
'title-view' => '預覽檔案',
'title-user' => '我的檔案',
'title-share' => '共享的檔案',
'title-item' => '項目名稱',
'title-size' => '檔案大小',
'title-type' => '檔案類型',
'title-modified' => '上次修改',
'title-action' => '操作',
'type-folder' => '資料夾',
'message-empty' => '空的資料夾',
'message-choose' => '選擇檔案',
'message-delete' => '確定要刪除此項目嗎?',
'message-name' => '資料夾名稱:',
'message-rename' => '重新命名為:',
'message-extension_not_found' => '請安裝 gd 或 imagick 以使用縮放、裁剪、及縮圖功能',
'message-drop' => '或將檔案拖拉到此處',
'error-rename' => '名稱重複,請重新輸入!',
'error-file-name' => '請輸入檔案名稱!',
'error-file-empty' => '請選擇檔案!',
'error-file-exist' => '相同檔名的檔案已存在!',
'error-file-size' => '檔案過大,無法上傳! (檔案大小上限: :max)',
'error-delete-folder'=> '資料夾未清空,無法刪除!',
'error-folder-name' => '請輸入資料夾名稱!',
'error-folder-exist'=> '相同名稱的資料夾已存在!',
'error-folder-alnum'=> '資料夾名稱只能包含英數字!',
'error-folder-not-found'=> '找不到資料夾: :folder',
'error-mime' => 'Mime 格式錯誤 : ',
'error-instance' => '上傳檔案的 instance 應為 UploadedFile',
'error-invalid' => '驗證失敗,上傳未成功',
'error-other' => '發生錯誤: ',
'error-too-large' => '請求內容太大!',
'btn-upload' => '上傳',
'btn-uploading' => '上傳中...',
'btn-close' => '關閉',
'btn-crop' => '裁剪',
'btn-copy-crop' => '裁剪為新的檔案',
'btn-crop-free' => '不限比例',
'btn-cancel' => '取消',
'btn-confirm' => '確認',
'btn-resize' => '縮放',
'btn-open' => '開啟資料夾',
'resize-ratio' => '比例:',
'resize-scaled' => '是否已縮放:',
'resize-true' => '是',
'resize-old-height' => '原始高度:',
'resize-old-width' => '原始寬度:',
'resize-new-height' => '目前高度:',
'resize-new-width' => '目前寬度:',
'locale-bootbox' => 'zh_TW',
];
laravel-filemanager/src/lang/pt-BR/lfm.php 0000644 00000006717 15243417654 0014413 0 ustar 00 <?php
return [
'nav-back' => 'Voltar',
'nav-new' => 'Nova Pasta',
'nav-upload' => 'Enviar',
'nav-thumbnails' => 'Miniatura',
'nav-list' => 'Lista',
'nav-sort' => 'Ordenar',
'nav-sort-alphabetic'=> 'Ordenar alfabeticamente',
'nav-sort-time' => 'Ordenar por data',
'menu-rename' => 'Renomear',
'menu-delete' => 'Deletar',
'menu-view' => 'Ver',
'menu-download' => 'Download',
'menu-resize' => 'Redimensionar',
'menu-crop' => 'Cortar',
'menu-move' => 'Mover',
'menu-multiple' => 'Selecionar vários',
'title-page' => 'Gerenciador de Arquivos',
'title-panel' => 'Gerenciador de Arquivos',
'title-upload' => 'Envio de Arquivo',
'title-view' => 'Ver Arquivo',
'title-user' => 'Arquivos',
'title-share' => 'Arquivos Compartilhados',
'title-item' => 'Item',
'title-size' => 'Tamanho',
'title-type' => 'Tipo',
'title-modified' => 'Modificado',
'title-action' => 'Ação',
'type-folder' => 'Pasta',
'message-empty' => 'A pasta está vazia.',
'message-choose' => 'Escolha um arquivo',
'message-delete' => 'Você está certo que quer deletar este arquivo?',
'message-name' => 'Nome da pasta:',
'message-rename' => 'Renomear para:',
'message-extension_not_found' => 'Por favor instale a extenção gd ou imagick para recortar, redimensionar e criar miniaturas das imagens.',
'message-drop' => 'Solte seus arquivos aqui',
'error-rename' => 'Nome de arquivo já está em uso!',
'error-file-name' => 'O nome do arquivo não pode estar vazio!',
'error-file-empty' => 'Você deve escolher um arquivo!',
'error-file-exist' => 'Um arquivo com este nome já existe!',
'error-file-size' => 'Tamanho do arquivo excedeu o limite permitido pelo servidor! (Tamanho máximo: :max)',
'error-delete-folder'=> 'Você não pode deletar esta pasta, pois ela não está vazia!',
'error-folder-name' => 'Nome da pasta não pode ser vazio!',
'error-folder-exist'=> 'Uma pasta com este nome já existe!',
'error-folder-alnum'=> 'Permitido somente caracteres alfanuméricos para nomes de pastas!',
'error-folder-not-found'=> 'A pasta não foi encontrada! (:folder)',
'error-mime' => 'MimeType inesperado: ',
'error-size' => 'Excede o tamanho máximo:',
'error-instance' => 'O arquivo enviado deve ser uma instância de UploadedFile',
'error-invalid' => 'Pedido de upload inválido',
'error-other' => 'Ocorreu um erro: ',
'error-too-large' => 'Solicitar entidade muito grande!',
'btn-upload' => 'Enviar Arquivo',
'btn-uploading' => 'Enviando...',
'btn-close' => 'Fechar',
'btn-crop' => 'Cortar',
'btn-copy-crop' => 'Copie e corte',
'btn-crop-free' => 'Livre',
'btn-cancel' => 'Cancelar',
'btn-confirm' => 'Confirmar',
'btn-resize' => 'Redimensionar',
'btn-open' => 'Abrir Pasta',
'resize-ratio' => 'Proporção:',
'resize-scaled' => 'Imagem dimensionada:',
'resize-true' => 'Sim',
'resize-old-height' => 'Altura Original:',
'resize-old-width' => 'Largura Original:',
'resize-new-height' => 'Altura:',
'resize-new-width' => 'Largura:',
'locale-bootbox' => 'pt_BR',
];
laravel-filemanager/src/lang/zh-CN/lfm.php 0000644 00000005734 15243417654 0014404 0 ustar 00 <?php
return [
'nav-back' => '回上一页',
'nav-new' => '添加文件夹',
'nav-upload' => '上传档案',
'nav-thumbnails' => '缩略图显示',
'nav-list' => '列表显示',
'nav-sort' => '排序',
'nav-sort-alphabetic'=> '按字母排序',
'nav-sort-time' => '按时间排序',
'menu-rename' => '重命名',
'menu-delete' => '删除',
'menu-view' => '预览',
'menu-download' => '下载',
'menu-resize' => '缩放',
'menu-crop' => '裁剪',
'title-page' => '档案管理',
'title-panel' => '档案管理',
'title-upload' => '上传档案',
'title-view' => '预览档案',
'title-user' => '我的档案',
'title-share' => '共享的文件',
'title-item' => '项目名称',
'title-size' => '档案大小',
'title-type' => '档案类型',
'title-modified' => '上次修改',
'title-action' => '操作',
'type-folder' => '文件夹',
'message-empty' => '空的文件夹',
'message-choose' => '选择档案',
'message-delete' => '确定要删除此项目吗?',
'message-name' => '文件夹名称:',
'message-rename' => '重命名为:',
'message-extension_not_found' => '请安装 gd 或 imagick 以使用缩放、裁剪、及缩图功能',
'error-rename' => '名称重复,请重新输入!',
'error-file-name' => '文件名不能为空!',
'error-file-empty' => '请选择档案!',
'error-file-exist' => '相同档名的档案已存在!',
'error-file-size' => '档案过大,无法上传! (档案大小上限: :max)',
'error-delete-folder'=> '文件夹未清空,无法删除!',
'error-folder-name' => '请输入文件夹名称!',
'error-folder-exist'=> '相同名称的文件夹已存在!',
'error-folder-alnum'=> '文件夹名称只能包含英数字',
'error-folder-not-found'=> '找不到文件夹 :folder',
'error-mime' => 'Mime 格式错误 : ',
'error-size' => '大小超出限制:',
'error-instance' => '上传档案的 instance 应为 UploadedFile',
'error-invalid' => '验证失败,上传未成功',
'error-other' => '发生错误: ',
'error-too-large' => '请求内容太大!',
'btn-upload' => '上传',
'btn-uploading' => '上传中...',
'btn-close' => '关闭',
'btn-crop' => '裁剪',
'btn-copy-crop' => '复制并裁剪',
'btn-cancel' => '取消',
'btn-resize' => '缩放',
'resize-ratio' => '比例:',
'resize-scaled' => '是否已缩放:',
'resize-true' => '是',
'resize-old-height' => '原始高度:',
'resize-old-width' => '原始宽度:',
'resize-new-height' => '目前高度:',
'resize-new-width' => '目前宽度:',
'locale-bootbox' => 'zh_CN',
];
laravel-filemanager/src/lang/ro/lfm.php 0000644 00000006776 15243417654 0014114 0 ustar 00 <?php
return [
'nav-back' => 'Înapoi',
'nav-new' => 'Folder Nou',
'nav-upload' => 'Încarcă',
'nav-thumbnails' => 'Miniatură',
'nav-list' => 'Listă',
'nav-sort' => 'Sortează',
'nav-sort-alphabetic'=> 'După Alfabet',
'nav-sort-time' => 'După timp',
'menu-rename' => 'Redenumește',
'menu-delete' => 'Șterge',
'menu-view' => 'Previzualizează',
'menu-download' => 'Descarcă',
'menu-resize' => 'Redimensionează',
'menu-crop' => 'Taie',
'menu-move' => 'Mută',
'menu-multiple' => 'Selectare multiplă',
'title-page' => 'Manager fișiere',
'title-panel' => 'Laravel FileManager',
'title-upload' => 'Încarcă fișier(e)',
'title-view' => 'Vezi fișier',
'title-user' => 'Fișiere',
'title-share' => 'Fișiere distribuite',
'title-item' => 'Element',
'title-size' => 'Dimensiune',
'title-type' => 'Tip',
'title-modified' => 'Modificat',
'title-action' => 'Acțiune',
'type-folder' => 'Folder',
'message-empty' => 'Folderul este gol.',
'message-choose' => 'Alege fișier(e)',
'message-delete' => 'Ești sigur că vrei să ștergi acest element?',
'message-name' => 'Nume folder:',
'message-rename' => 'Redenumește în:',
'message-extension_not_found' => 'Te rog instalează extensia gd sau imagick ca să poți tăia, redimensiona sau genera miniaturi ale imaginilor.',
'message-drop' => 'Sau trageți fișierele aici pentru încărcare',
'error-rename' => 'Nume fișier este deja folosit!',
'error-file-name' => 'Numele fișierului nu poate fi gol!',
'error-file-empty' => 'Trebuie să alegi un fișier!',
'error-file-exist' => 'Există deja un fișier cu acest nume!',
'error-file-size' => 'Dimeniunea fișierului depășeste limita maximă a serverului! (limită maximă: :max)',
'error-delete-folder'=> 'Nu poți șterge acest folder pentru că nu este gol!',
'error-folder-name' => 'Numele folderului nu poate fi gol!',
'error-folder-exist'=> 'Există deja un folder cu acest nume!',
'error-folder-alnum'=> 'Sunt permise doar nume alfanumerice pentru foldere!',
'error-folder-not-found'=> 'Folderul nu a fost gasit! (:folder)',
'error-mime' => 'MimeType necunoscut: ',
'error-size' => 'Dimensiune peste limită:',
'error-instance' => 'Fișierul încărcat trebuie să fie o instanță a UploadedFile',
'error-invalid' => 'Cerere invalidă de upload',
'error-other' => 'A apărut o eroare: ',
'error-too-large' => 'Entitate request prea mare!',
'btn-upload' => 'Încarcă fișier(e)',
'btn-uploading' => 'Încarcare...',
'btn-close' => 'Închide',
'btn-crop' => 'Taie',
'btn-copy-crop' => 'Copiază și Taie',
'btn-crop-free' => 'Tăiere liberă',
'btn-cancel' => 'Anulează',
'btn-confirm' => 'Confirmă',
'btn-resize' => 'Redimensionează',
'btn-open' => 'Deschide folder',
'resize-ratio' => 'Rație:',
'resize-scaled' => 'Imagine scalată:',
'resize-true' => 'Da',
'resize-old-height' => 'Înălțime originală:',
'resize-old-width' => 'Lățime originală:',
'resize-new-height' => 'Înălțime:',
'resize-new-width' => 'Lățime:',
'locale-bootbox' => 'ro',
];
laravel-filemanager/src/lang/uz/lfm.php 0000644 00000007005 15243417654 0014114 0 ustar 00 <?php
return [
'nav-back' => 'Orqaga',
'nav-new' => 'yangi jild',
'nav-upload' => 'Yuklash',
'nav-thumbnails' => 'Eskizlar',
'nav-list' => 'List',
'nav-sort' => 'Saralash',
'nav-sort-alphabetic' => 'Alifbo tartibida saralash',
'nav-sort-time' => 'Vaqt bo`yicha saralash',
'menu-rename' => 'Qayta nomlash',
'menu-delete' => "O'chirish",
'menu-view' => 'Ko`rish',
'menu-download' => 'Yuklab olish',
'menu-resize' => 'Oʻlchamini oʻzgartirish',
'menu-crop' => 'Kesish',
'menu-move' => 'Koʻchirish',
'menu-multiple' => "Ko'p tanlov",
'title-page' => 'File Manager',
'title-panel' => 'Laravel FileManager',
'title-upload' => 'Fayl(lar)ni Yuklash',
'title-view' => 'Faylni ko`rish',
'title-user' => 'Fayllar',
'title-share' => 'Fayllarni ulashish',
'title-item' => 'Element',
'title-size' => 'hajmi',
'title-type' => 'Turi',
'title-modified' => 'Oʻzgartirilgan',
'title-action' => 'Amal',
'type-folder' => 'Jild',
'message-empty' => 'Jild boʻsh',
'message-choose' => 'Faylni tanlash',
'message-delete' => 'Haqiqatan ham bu elementni oʻchirib tashlamoqchimisiz?',
'message-name' => 'Jild nomi:',
'message-rename' => 'Nomni o`zgartirish:',
'message-extension_not_found' => 'Tasvirlarni kesish, o‘lchamini o‘zgartirish va eskizlarini yaratish uchun gd yoki imagick kengaytmasini o‘rnating.',
'message-drop' => 'Yoki yuklash uchun fayllarni shu yerga sudrab olib kelib tashlang',
'error-rename' => 'Bunday nomli fayl avvaldan mavjud!',
'error-file-name' => 'Fayl nomi boʻsh boʻlishi mumkin emas!',
'error-file-empty' => 'Siz faylni tanlashingiz kerak!',
'error-file-exist' => 'Bunday nomli fayl allaqachon mavjud!',
'error-file-size' => 'Fayl hajmi server chegarasidan oshib ketdi! (maximum size: :max)',
'error-delete-folder' => 'Siz bu jildni oʻchira olmaysiz, chunki u boʻsh emas!',
'error-folder-name' => 'Jild nomi boʻsh boʻlishi mumkin emas!',
'error-folder-exist' => 'Bunday nomli jild allaqachon mavjud!',
'error-folder-alnum' => 'Faqat harf-raqamli jild nomlariga ruxsat beriladi!',
'error-folder-not-found' => '(:folder) nomli jild topilmadi',
'error-mime' => 'Kutilmagan MimeType:',
'error-size' => "Cheklovdan oshgan o'lcham:",
'error-instance' => "Yuklangan fayl UploadedFile nusxasi bo'lishi kerak",
'error-invalid' => 'Yuklash so‘rovi noto‘g‘ri',
'error-other' => 'Xatolik yuz berdi:',
'error-too-large' => "So'rov ob'ekti juda katta!",
'btn-upload' => 'Fayl(lar)ni yuklash',
'btn-uploading' => 'Yuklanmoqda...',
'btn-close' => 'Yopish',
'btn-crop' => 'Kesish',
'btn-copy-crop' => 'Nusxalash va kesish',
'btn-crop-free' => 'Boʻsh',
'btn-cancel' => 'Bekor qilish',
'btn-confirm' => 'Tasdiqlash',
'btn-resize' => 'Oʻlchamini oʻzgartirish',
'btn-open' => 'Jild ochish',
'resize-ratio' => 'Nisbat:',
'resize-scaled' => 'Rasm masshtabli:',
'resize-true' => 'Ha',
'resize-old-height' => 'Original Balandligi:',
'resize-old-width' => 'Original Kengligi:',
'resize-new-height' => 'Balandligi:',
'resize-new-width' => 'Kengligi:',
];
laravel-filemanager/src/lang/fi/lfm.php 0000644 00000006640 15243417654 0014060 0 ustar 00 <?php
return [
'nav-back' => 'Takaisin',
'nav-new' => 'Uusi kansio',
'nav-upload' => 'Lähetä',
'nav-thumbnails' => 'Esikatselukuva',
'nav-list' => 'Lista',
'nav-sort' => 'Järjestä',
'nav-sort-alphabetic' => 'Lajittele aakkosten mukaan',
'nav-sort-time' => 'Lajittele ajan mukaan ',
'menu-rename' => 'Nimeä uudestaan',
'menu-delete' => 'Poista',
'menu-view' => 'Esikatsele',
'menu-download' => 'Lataa',
'menu-resize' => 'Muuta kokoa',
'menu-crop' => 'Rajaa',
'menu-move' => 'Siirrä',
'menu-multiple' => 'Monivalinta',
'title-page' => 'Tiedostonhallinta',
'title-panel' => 'Laravel tiedostonhallinta',
'title-upload' => 'Lähetä tiedosto(ja)',
'title-view' => 'Näytä tiedosto',
'title-user' => 'Tiedostot',
'title-share' => 'Yhteiset tiedostot',
'title-item' => 'Kohde',
'title-size' => 'Koko',
'title-type' => 'Tyyppi',
'title-modified' => 'Muokattu',
'title-action' => 'Toiminto',
'type-folder' => 'Kansio',
'message-empty' => 'Kansio on tyhjä.',
'message-choose' => 'Valitse tiedosto(t)',
'message-delete' => 'Oletko varma että haluat poistaa tämän kohteen?',
'message-name' => 'Kansion nimi:',
'message-rename' => 'Uusi nimi:',
'message-extension_not_found' => 'Asenna gd tai imagick -laajennos rajausta, koon muuttamista ja esikatselukuvien luomiseen.',
'message-drop' => 'Tai pudota tiedostot tähän lähettääksesi',
'error-rename' => 'Tiedostoniumi on jo käytössä!',
'error-file-name' => 'Tiedostonimi ei voi olla tyhjä!',
'error-file-empty' => 'Sinun täytyy valita tiedosto!',
'error-file-exist' => 'Samanniminen tiedosto on jo olemassa!',
'error-file-size' => 'Tiedoston koko on suurempi kuin palvelimella määritelty maksimi: :max',
'error-delete-folder' => 'Et voi poistaa tätä kansiota. Se ei ole tyhjä!',
'error-folder-name' => 'Kansion nimi ei voi olla tyhjä!',
'error-folder-exist' => 'Samanniminen kansio on jo olemassa!',
'error-folder-alnum' => 'Vain kirjaimet sekä numerot ovat sallittuja kansion nimissä!',
'error-folder-not-found' => 'Kansiota :folder ei löytynyt',
'error-mime' => 'Odottamaton Mime -typpi: ',
'error-size' => 'Koko on yli rajan, koko:',
'error-instance' => 'Lähetetyn tiedoston pitäisi olla UploadedFile -instanssi',
'error-invalid' => 'Väärä latauspyyntö',
'error-other' => 'Tapahtui virhe: ',
'error-too-large' => 'Pyynnön koko on liian suuri!',
'btn-upload' => 'Lähetä tiedosto(ja)',
'btn-uploading' => 'Lähetetään...',
'btn-close' => 'Sulje',
'btn-crop' => 'Rajaa',
'btn-copy-crop' => 'Kopioi & rajaa',
'btn-crop-free' => 'Vapaa',
'btn-cancel' => 'Peruuta',
'btn-confirm' => 'Varmista',
'btn-resize' => 'Muuta kokoa',
'btn-open' => 'Avaa kansio',
'resize-ratio' => 'Suhde:',
'resize-scaled' => 'Kuva skaalattu:',
'resize-true' => 'Kyllä',
'resize-old-height' => 'Alkuperäinen korkeus:',
'resize-old-width' => 'Alkuperäinen leveys:',
'resize-new-height' => 'Korkeus:',
'resize-new-width' => 'Leveys:',
];
laravel-filemanager/src/lang/ja/lfm.php 0000644 00000007545 15243417654 0014061 0 ustar 00 <?php
return [
'nav-back' => '戻る',
'nav-new' => '新規フォルダ',
'nav-upload' => 'アップロード',
'nav-thumbnails' => 'サムネイル',
'nav-list' => 'リスト',
'nav-sort' => 'ソート',
'nav-sort-alphabetic'=> 'ファイル名順',
'nav-sort-time' => '日付順',
'menu-rename' => 'ファイル名変更',
'menu-delete' => '削除',
'menu-view' => 'プレビュー',
'menu-download' => 'ダウンロード',
'menu-resize' => 'リサイズ',
'menu-crop' => 'トリミング',
'menu-move' => '移動',
'menu-multiple' => '複数選択',
'title-page' => 'ファイル管理',
'title-panel' => 'ファイル管理',
'title-upload' => 'ファイルアップロード',
'title-view' => 'ファイル表示',
'title-user' => 'フォルダ',
'title-share' => '共有フォルダ',
'title-item' => 'アイテム',
'title-size' => 'サイズ',
'title-type' => 'タイプ',
'title-modified' => '編集',
'title-action' => 'アクション',
'type-folder' => 'フォルダ',
'message-empty' => 'このフォルダは空です。',
'message-choose' => 'ファイル選択',
'message-delete' => 'このアイテムを削除してもよろしいですか?',
'message-name' => 'フォルダ名',
'message-rename' => 'ファイル名変更',
'message-extension_not_found' => '画像の切り抜き、リサイズ、サムネイル作成には、gdまたはimagickの拡張機能をインストールしてください',
'message-drop' => 'または、ここにファイルをドロップしてアップロード',
'error-rename' => 'すでに使用されているファイル名です!',
'error-file-name' => 'ファイル名は空にできません!',
'error-file-empty' => 'ファイルを選択してください!',
'error-file-exist' => 'この名前のファイルはすでに存在します!',
'error-file-size' => 'ファイルサイズがサーバーの制限を超えています (最大サイズ: :max)',
'error-delete-folder'=> 'このフォルダは空ではないので削除できません!',
'error-folder-name' => 'フォルダ名は空にできません!',
'error-folder-exist'=> 'この名前のフォルダは既に存在します!',
'error-folder-alnum'=> 'フォルダ名は英数字のみ使用可能です!',
'error-folder-not-found'=> 'フォルダが見つかりません! (:folder)',
'error-mime' => '予期しないMimeType: ',
'error-size' => '限界サイズ:',
'error-instance' => 'アップロードされたファイルはUploadedFileのインスタンスでなければなりません',
'error-invalid' => 'アップロードリクエストが無効です',
'error-other' => 'エラーが発生しました: ',
'error-too-large' => 'リクエストエンティティが大きすぎます!',
'btn-upload' => 'アップロード',
'btn-uploading' => 'アップロード中...',
'btn-close' => '閉じる',
'btn-crop' => 'トリミング',
'btn-copy-crop' => 'コピー&トリミング',
'btn-crop-free' => '自由',
'btn-cancel' => 'キャンセル',
'btn-confirm' => '確認する',
'btn-resize' => 'リサイズ',
'btn-open' => 'フォルダを開く',
'resize-ratio' => '比率:',
'resize-scaled' => 'イメージの縮尺:',
'resize-true' => 'はい',
'resize-old-height' => '元の縦幅:',
'resize-old-width' => '元の横幅:',
'resize-new-height' => '縦幅:',
'resize-new-width' => '横幅:',
];
laravel-filemanager/src/lang/ka/lfm.php 0000644 00000011663 15243417654 0014056 0 ustar 00 <?php
return [
'nav-back' => 'უკან',
'nav-new' => 'ახალი საქაღალდე',
'nav-upload' => 'ატვირთვა',
'nav-thumbnails' => 'ესკიზები',
'nav-list' => 'სია',
'nav-sort' => 'სორტირება',
'nav-sort-alphabetic' => 'სორტირება ანბანის მიხედვით',
'nav-sort-time' => 'სორტირება დროის მიხედვით',
'menu-rename' => 'სახელის შეცვლა',
'menu-delete' => 'წაშლა',
'menu-view' => 'ნახვა',
'menu-download' => 'გადმოწერა',
'menu-resize' => 'ზომის შეცვლა',
'menu-crop' => 'ამოჭრა',
'title-page' => 'ფაილების მენეჯერი',
'title-panel' => 'ფაილების მენეჯერი',
'title-upload' => 'ფაილ(ებ)ის ატვირთვა',
'title-view' => 'ფაილის ნახვა',
'title-root' => 'ფაილები',
'title-shares' => 'გაზიარებული ფაილები',
'title-item' => 'Item',
'title-size' => 'ზომა',
'title-type' => 'ტიპი',
'title-modified' => 'დარედაქტირდა',
'title-action' => 'ქმედება',
'type-folder' => 'საქაღალდე',
'message-empty' => 'საქაღალდე ცარიელია.',
'message-choose' => 'ფაილ(ებ)ის არჩევა',
'message-delete' => 'ნამდვილად გსურთ აღნიშნულის წაშლა?',
'message-name' => 'საქაღალდის დასახელება:',
'message-rename' => 'სახელის შეცვლა:',
'message-extension_not_found' => 'გთხოვთ დააყენოთ gd ან imagick გაფართოებები რათა ამოჭრათ, ზომა შეუცვალოთ და გააკეთოთ გამოსახულების ესკიზი.',
'error-rename' => 'ფაილი იდენტური დასახელებით უკვე არსებობს!',
'error-file-name' => 'ფაილის დასახელება არ შეიძლება იყოს ცარიელი!',
'error-file-empty' => 'თქვენ უნდა აირჩიოთ ფაილი!',
'error-file-exist' => 'ფაილი იდენტური სახელით უკვე არსებობს!',
'error-file-size' => 'ფაილის ზომა მეტია დასაშვებზე! (მაქსიმალური ზომა: :max)',
'error-delete-folder' => 'საქაღალდის წაშლა შეუძლებელია, რადგან არ არის ცარიელი!',
'error-folder-name' => 'საქაღალდის დასახელება არ შეიძლება იყოს ცარიელი!',
'error-folder-exist' => 'საქაღალდე იდენტური დასახელებით უკვე არსებობს!',
'error-folder-alnum' => 'დასაშვებია მხოლოდ ციფრები და ასოები!',
'error-folder-not-found' => 'საქაღალდე ვერ მოიძებნა! (:folder)',
'error-mime' => 'არასწორი MimeType: ',
'error-size' => 'ლიმიტის გადაჭარბება:',
'error-instance' => 'აღნიშნული ფაილი უნდა იყოს UploadedFile-ის ინსტანსი',
'error-invalid' => 'არასწორი ატვირთვის მოთხოვნა',
'error-other' => 'შეცდომაა: ',
'error-too-large' => 'აღნიშნული ფაილი ძალიან დიდია!',
'btn-upload' => 'ფაილ(ებ)ის ატვირთვა',
'btn-uploading' => 'იტვირთება...',
'btn-close' => 'დახურვა',
'btn-crop' => 'ამოჭრა',
'btn-copy-crop' => 'დაკოპირება & ამოჭრა',
'btn-cancel' => 'გაუქმება',
'btn-resize' => 'ზომის შეცვლა',
'resize-ratio' => 'პროპორცია:',
'resize-scaled' => 'სკალირებული გამოსახულება:',
'resize-true' => 'კი',
'resize-old-height' => 'ორიგინალის სიმაღლე:',
'resize-old-width' => 'ორიგინალის სიგანე:',
'resize-new-height' => 'სიმაღლე:',
'resize-new-width' => 'სიგანე:',
'locale-bootbox' => 'ka',
];
laravel-filemanager/src/lang/de/lfm.php 0000644 00000011133 15243417654 0014043 0 ustar 00 <?php
return [
'nav-back' => 'Zurück',
'nav-new' => 'Neuer Ordner',
'nav-upload' => 'Hochladen',
'nav-thumbnails' => 'Thumbnails',
'nav-list' => 'Liste',
'nav-sort' => 'Sortierung',
'nav-sort-alphabetic' => 'Alphabetisch',
'nav-sort-time' => 'Datum',
'menu-rename' => 'Umbenennen',
'menu-delete' => 'Löschen',
'menu-view' => 'Ansehen',
'menu-download' => 'Download',
'menu-resize' => 'Größe Ändern',
'menu-crop' => 'Zuschneiden',
'menu-move' => 'Verschieben',
'menu-multiple' => 'Mehrfachauswahl',
'title-page' => 'File Manager',
'title-panel' => 'FileManager',
'title-upload' => 'Datei hochladen',
'title-view' => 'Datei ansehen',
'title-user' => 'Dateien',
'title-share' => 'Gemeinsame Dateien',
'title-item' => 'Item',
'title-size' => 'Größe',
'title-type' => 'Typ',
'title-modified' => 'Geändert',
'title-action' => 'Aktion',
'type-folder' => 'Ordner',
'message-empty' => 'Ordner ist leer.',
'message-choose' => 'Datei wählen',
'message-delete' => 'Sind Sie sicher, dass Sie dieses Einzelteil löschen möchten?',
'message-name' => 'Ordnernamen:',
'message-rename' => 'Umbenennen in:',
'message-extension_not_found' => 'Installieren Sie gd oder imagick Erweiterung um Bilder zuzuschneiden, Größe ändern und Thumbnails zu erstellen.',
'message-drop' => 'Oder legen Sie hier Dateien zum Hochladen ab',
'error-rename' => 'Dateiname wird bereits verwendet!',
'error-file-name' => 'Dateiname darf nicht leer sein!',
'error-file-empty' => 'Sie müssen eine Datei auswählen!',
'error-file-exist' => 'Eine Datei mit diesem Namen existiert bereits!',
'error-file-size' => 'Dateigröße überschreitet das Serverlimit! (Maximale Größe: :max)',
'error-delete-folder' => 'Sie können diesen Ordner nicht löschen, da er nicht leer ist!',
'error-folder-name' => 'Der Ordnername darf nicht leer sein!',
'error-folder-exist' => 'Ein Ordner mit diesem Namen ist bereits vorhanden!',
'error-folder-alnum' => 'Nur alphanumerische Ordnernamen sind erlaubt!',
'error-folder-not-found' => 'Order nicht gefunden! (:folder)',
'error-mime' => 'Unerwarteter Mimetyp:',
'error-size' => 'Dateigröße überschritten:',
'error-instance' => 'Die hochgeladene Datei sollte eine Instanz von UploadedFile sein',
'error-invalid' => 'Ungültige Upload-Anfrage',
'error-other' => 'Ein Fehler ist aufgetreten: ',
'error-too-large' => 'Angeforderter Wert zu groß!',
'error-cannotupload' => 'Sie sind nicht berechtigt, die Datei hochzuladen.',
'error-cannotdelete' => 'Sie sind nicht berechtigt, neue Ordner / Dateien zu löschen',
'error-cannotnewdirectory' => 'Sie sind nicht berechtigt, neue Ordner zu erstellen',
'error-cannotrename' => 'Sie sind nicht berechtigt, Ordner / Dateien umzubenennen',
'error-cannotresize' => 'Sie sind nicht berechtigt, die Dateigröße zu ändern',
'btn-upload' => 'Datei hochladen',
'btn-uploading' => 'Hochladen...',
'btn-close' => 'Schließen',
'btn-crop' => 'Zuschneiden',
'btn-copy-crop' => 'Kopieren & Zuschneiden',
'btn-crop-free' => 'Frei',
'btn-cancel' => 'Abbrechen',
'btn-confirm' => 'Bestätigen',
'btn-resize' => 'Größe ändern',
'btn-open' => 'Ordner öffnen',
'resize-ratio' => 'Verhältnis:',
'resize-scaled' => 'Bild skaliert:',
'resize-true' => 'Ja',
'resize-old-height' => 'Original Höhe:',
'resize-old-width' => 'Original Breite:',
'resize-new-height' => 'Höhe:',
'resize-new-width' => 'Breite:',
'locale-bootbox' => 'de',
];
laravel-filemanager/src/lang/az/lfm.php 0000644 00000007013 15243417654 0014067 0 ustar 00 <?php
return [
'nav-back' => 'Geri',
'nav-new' => 'Yeni qovluq',
'nav-upload' => 'Yüklə',
'nav-thumbnails' => 'Kiçik formatda (thumb)',
'nav-list' => 'Siyahı',
'nav-sort' => 'Sırala',
'nav-sort-alphabetic'=> 'A-Z Sırala',
'nav-sort-time' => 'Zamana Görə Sırala',
'menu-rename' => 'Ad dəyişmək',
'menu-delete' => 'Sil',
'menu-view' => 'Görüntülə',
'menu-download' => 'Endir',
'menu-resize' => 'Ölçüləndir',
'menu-crop' => 'Kəsmək',
'menu-move' => 'Yerini dəyiş',
'menu-multiple' => 'Multi-seçim',
'title-page' => 'Fayl menecer',
'title-panel' => 'Fayl menecer',
'title-upload' => 'Fayl yülə',
'title-view' => 'Fayla bax',
'title-root' => 'Fayllarım',
'title-shares' => 'Paylaşılan Fayllar',
'title-item' => 'Faylalr',
'title-size' => 'Böyütmək',
'title-type' => 'Tip',
'title-modified' => 'Dəyişmək',
'title-action' => 'Funksiyalar',
'title-user' => 'Fayllar',
'title-share' => 'Paylaşılmış fayllar',
'type-folder' => 'Qovluq',
'message-empty' => 'Qovluq boşdur',
'message-choose' => 'Fayl seç',
'message-delete' => 'Bu faylı silmək istədiyinizə əminsiniz?',
'message-name' => 'Qovluq adı:',
'message-rename' => 'Yeni ad:',
'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.',
'message-drop' => 'və ya yükləmək üçün faylları bura atın',
'error-rename' => 'Fayl adı artıq istifadə olunur!',
'error-file-name' => 'Dosya adı boş bırakılamaz!',
'error-file-empty' => 'Fayl adı boş ola bilməz!',
'error-file-exist' => 'Bu adda bir fayl artıq var!',
'error-file-size' => 'Fayl ölçüsü limiti keçir! (maximum ölçü: :max)',
'error-delete-folder'=> 'Qovluq boş olmadığından silmək mümkün olmadı!',
'error-folder-name' => 'Qovluq adı boş ola bilməz!',
'error-folder-exist'=> 'Bu adda qovluq artıq var!',
'error-folder-alnum'=> 'Yalnız hərf və rəqəmdən ibarət adlara icazə verilir',
'error-folder-not-found'=> 'Qovluq tapılmadı! (:folder)',
'error-mime' => 'İcazə verilməyən fayl tipi: ',
'error-size' => 'Həcm limiti keçir:',
'error-instance' => 'Yüklənən fayl, UploadedFile nümunəsi kimi olmalıdır',
'error-invalid' => 'Yükləmə istəyi doğru deyil',
'error-other' => 'Xəta bax verdi: ',
'error-too-large' => 'Yüklənmə sayı limiti keçir!',
'btn-upload' => 'Yüklə',
'btn-uploading' => 'Yüklenir...',
'btn-close' => 'Bağla',
'btn-crop' => 'Kəs',
'btn-copy-crop' => 'Kopyala & Kəs',
'btn-cancel' => 'İmtina',
'btn-resize' => 'Ölçünü dəyiş',
'btn-crop-free' => 'Sərbəst',
'btn-confirm' => 'Təsdiq et',
'btn-open' => 'Qovluğu aç',
'resize-ratio' => 'Nisbət:',
'resize-scaled' => 'Böyüdüldü:',
'resize-true' => 'Bəli',
'resize-old-height' => 'Original Hündürlür:',
'resize-old-width' => 'Original En:',
'resize-new-height' => 'Hündürlük:',
'resize-new-width' => 'En:',
'locale-bootbox' => 'az',
];
laravel-filemanager/src/lang/bg/lfm.php 0000644 00000006040 15243417654 0014044 0 ustar 00 <?php
return [
'nav-back' => 'Назад',
'nav-new' => 'Нова Папка',
'nav-upload' => 'Качване',
'nav-thumbnails' => 'Тъмб',
'nav-list' => 'Списък',
'menu-rename' => 'Преименувай',
'menu-delete' => 'Изтрии',
'menu-view' => 'Преглед',
'menu-download' => 'Свали',
'menu-resize' => 'Оразмер',
'menu-crop' => 'Отрежи',
'title-page' => 'Файлов мениджър',
'title-panel' => 'Laravel FileManager',
'title-upload' => 'Качи файл',
'title-view' => 'Виж файл',
'title-user' => 'Файлове',
'title-share' => 'Споделени Файлове',
'title-item' => 'Елемент',
'title-size' => 'Размер',
'title-type' => 'Тип',
'title-modified' => 'Модифицирано',
'title-action' => 'Действие',
'type-folder' => 'Папка',
'message-empty' => 'Папката е празна.',
'message-choose' => 'Избери файл',
'message-delete' => 'Сигурни ли сте, че изкате да изтриете този елемент ?',
'message-name' => 'Име на папка:',
'message-rename' => 'Преименувай на:',
'message-extension_not_found' => '(translation wanted)',
'error-rename' => 'Името е заето!',
'error-file-empty' => 'Трябва да изберете файл !',
'error-file-exist' => 'Файл с това име вече съществува!',
'error-file-size' => 'File size exceeds server limit! (maximum size: :max)',
'error-delete-folder'=> 'Не можете да изтриете тази папка, защото не е празна!',
'error-folder-name' => 'Моля изберете име на папката',
'error-folder-exist'=> 'Папка с това име вече съществува!',
'error-folder-alnum'=> 'Only alphanumeric folder names are allowed!',
'error-mime' => 'Грешен тип на файла: ',
'error-instance' => 'The uploaded file should be an instance of UploadedFile ( Грешка )',
'error-invalid' => 'Невалидна заявка за качване',
'btn-upload' => 'Качи файл',
'btn-uploading' => 'Качване...',
'btn-close' => 'Затвори',
'btn-crop' => 'Отрежи',
'btn-cancel' => 'Откажи',
'btn-resize' => 'Оразмери',
'resize-ratio' => 'Аспект:',
'resize-scaled' => 'Image scaled:',
'resize-true' => 'Да',
'resize-old-height' => 'Оригинална височина:',
'resize-old-width' => 'Оригинална широчина:',
'resize-new-height' => 'Височина:',
'resize-new-width' => 'Широчина:',
'locale-bootbox' => 'bg',
];
laravel-filemanager/src/Controllers/ItemsController.php 0000644 00000007106 15243417654 0017414 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Controllers;
use Illuminate\Support\Facades\Storage;
use UniSharp\LaravelFilemanager\Events\FileIsMoving;
use UniSharp\LaravelFilemanager\Events\FileWasMoving;
use UniSharp\LaravelFilemanager\Events\FolderIsMoving;
use UniSharp\LaravelFilemanager\Events\FolderWasMoving;
class ItemsController extends LfmController
{
/**
* Get the images to load for a selected folder.
*
* @return mixed
*/
public function getItems()
{
$currentPage = self::getCurrentPageFromRequest();
$perPage = $this->helper->getPaginationPerPage();
$items = array_merge($this->lfm->folders(), $this->lfm->files());
return [
'items' => array_map(function ($item) {
return $item->fill()->attributes;
}, array_slice($items, ($currentPage - 1) * $perPage, $perPage)),
'paginator' => [
'current_page' => $currentPage,
'total' => count($items),
'per_page' => $perPage,
],
'display' => $this->helper->getDisplayMode(),
'working_dir' => $this->lfm->path('working_dir'),
];
}
public function move()
{
$items = request('items');
$folder_types = array_filter(['user', 'share'], function ($type) {
return $this->helper->allowFolderType($type);
});
return view('laravel-filemanager::move')
->with([
'root_folders' => array_map(function ($type) use ($folder_types) {
$path = $this->lfm->dir($this->helper->getRootFolder($type));
return (object) [
'name' => trans('laravel-filemanager::lfm.title-' . $type),
'url' => $path->path('working_dir'),
'children' => $path->folders(),
'has_next' => ! ($type == end($folder_types)),
];
}, $folder_types),
])
->with('items', $items);
}
public function doMove()
{
$target = $this->helper->input('goToFolder');
$items = $this->helper->input('items');
foreach ($items as $item) {
$old_file = $this->lfm->pretty($item);
$is_directory = $old_file->isDirectory();
$file = $this->lfm->setName($item);
if (!Storage::disk($this->helper->config('disk'))->exists($file->path('storage'))) {
abort(404);
}
$old_path = $old_file->path();
if ($old_file->hasThumb()) {
$new_file = $this->lfm->setName($item)->thumb()->dir($target);
if ($is_directory) {
event(new FolderIsMoving($old_file->path(), $new_file->path()));
} else {
event(new FileIsMoving($old_file->path(), $new_file->path()));
}
$this->lfm->setName($item)->thumb()->move($new_file);
}
$new_file = $this->lfm->setName($item)->dir($target);
$this->lfm->setName($item)->move($new_file);
if ($is_directory) {
event(new FolderWasMoving($old_path, $new_file->path()));
} else {
event(new FileWasMoving($old_path, $new_file->path()));
}
};
return parent::$success_response;
}
private static function getCurrentPageFromRequest()
{
$currentPage = (int) request()->get('page', 1);
$currentPage = $currentPage < 1 ? 1 : $currentPage;
return $currentPage;
}
}
laravel-filemanager/src/Controllers/UploadController.php 0000644 00000004071 15243417654 0017555 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Controllers;
use Illuminate\Http\JsonResponse;
use Illuminate\Support\Facades\Log;
use UniSharp\LaravelFilemanager\Lfm;
class UploadController extends LfmController
{
protected $errors;
public function __construct()
{
parent::__construct();
$this->errors = [];
}
/**
* Upload files
*
* @param void
*
* @return JsonResponse
*/
public function upload()
{
$uploaded_files = request()->file('upload');
$error_bag = [];
$new_filename = null;
foreach (is_array($uploaded_files) ? $uploaded_files : [$uploaded_files] as $file) {
try {
$this->lfm->validateUploadedFile($file);
$new_filename = $this->lfm->upload($file);
} catch (\Exception $e) {
Log::error($e->getMessage(), [
'file' => $e->getFile(),
'line' => $e->getLine(),
'trace' => $e->getTraceAsString()
]);
array_push($error_bag, $e->getMessage());
} catch (\Error $e) {
Log::error($e->getMessage(), [
'file' => $e->getFile(),
'line' => $e->getLine(),
'trace' => $e->getTraceAsString()
]);
array_push($error_bag, 'Some error occured during uploading.');
}
}
if (is_array($uploaded_files)) {
$response = count($error_bag) > 0 ? $error_bag : parent::$success_response;
} else { // upload via ckeditor5 expects json responses
if (is_null($new_filename)) {
$response = [
'error' => [ 'message' => $error_bag[0] ]
];
} else {
$url = $this->lfm->setName($new_filename)->url();
$response = [
'url' => $url,
'uploaded' => $url
];
}
}
return response()->json($response);
}
}
laravel-filemanager/src/Controllers/CropController.php 0000644 00000003642 15243417654 0017237 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Controllers;
use Intervention\Image\Facades\Image as InterventionImageV2;
use Intervention\Image\Laravel\Facades\Image as InterventionImageV3;
use UniSharp\LaravelFilemanager\Events\ImageIsCropping;
use UniSharp\LaravelFilemanager\Events\ImageWasCropped;
class CropController extends LfmController
{
/**
* Show crop page.
*
* @return mixed
*/
public function getCrop()
{
return view('laravel-filemanager::crop')
->with([
'working_dir' => request('working_dir'),
'img' => $this->lfm->pretty(request('img'))
]);
}
/**
* Crop the image (called via ajax).
*/
public function getCropImage($overWrite = true)
{
$image_name = request('img');
$image_path = $this->lfm->setName($image_name)->path('absolute');
$crop_path = $image_path;
if (! $overWrite) {
$fileParts = explode('.', $image_name);
$fileParts[count($fileParts) - 2] = $fileParts[count($fileParts) - 2] . '_cropped_' . time();
$crop_path = $this->lfm->setName(implode('.', $fileParts))->path('absolute');
}
event(new ImageIsCropping($image_path));
$crop_info = request()->only('dataWidth', 'dataHeight', 'dataX', 'dataY');
// crop image
if (class_exists(InterventionImageV2::class)) {
InterventionImageV2::make($image_path)
->crop(...array_values($crop_info))
->save($crop_path);
} else {
InterventionImageV3::read($image_path)
->crop(...array_values($crop_info))
->save($crop_path);
}
// make new thumbnail
$this->lfm->generateThumbnail($image_name);
event(new ImageWasCropped($image_path));
}
public function getNewCropImage()
{
$this->getCropimage(false);
}
}
laravel-filemanager/src/Controllers/FolderController.php 0000644 00000004127 15243417654 0017546 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Controllers;
use UniSharp\LaravelFilemanager\Events\FolderIsCreating;
use UniSharp\LaravelFilemanager\Events\FolderWasCreated;
class FolderController extends LfmController
{
/**
* Get list of folders as json to populate treeview.
*
* @return mixed
*/
public function getFolders()
{
$folder_types = array_filter(['user', 'share'], function ($type) {
return $this->helper->allowFolderType($type);
});
return view('laravel-filemanager::tree')
->with([
'root_folders' => array_map(function ($type) use ($folder_types) {
$path = $this->lfm->dir($this->helper->getRootFolder($type));
return (object) [
'name' => trans('laravel-filemanager::lfm.title-' . $type),
'url' => $path->path('working_dir'),
'children' => $path->folders(),
'has_next' => ! ($type == end($folder_types)),
];
}, $folder_types),
]);
}
/**
* Add a new folder.
*
* @return mixed
*/
public function getAddfolder()
{
$folder_name = $this->helper->input('name');
$new_path = $this->lfm->setName($folder_name)->path('absolute');
event(new FolderIsCreating($new_path));
try {
if ($folder_name === null || $folder_name == '') {
return $this->helper->error('folder-name');
} elseif ($this->lfm->setName($folder_name)->exists()) {
return $this->helper->error('folder-exist');
} elseif (config('lfm.alphanumeric_directory') && preg_match('/[^\w-]/i', $folder_name)) {
return $this->helper->error('folder-alnum');
} else {
$this->lfm->setName($folder_name)->createFolder();
}
} catch (\Exception $e) {
return $e->getMessage();
}
event(new FolderWasCreated($new_path));
return parent::$success_response;
}
}
laravel-filemanager/src/Controllers/LfmController.php 0000644 00000004567 15243417654 0017061 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Controllers;
use UniSharp\LaravelFilemanager\Lfm;
use UniSharp\LaravelFilemanager\LfmPath;
class LfmController extends Controller
{
protected static $success_response = 'OK';
public function __construct()
{
$this->applyIniOverrides();
}
/**
* Set up needed functions.
*
* @return object|null
*/
public function __get($var_name)
{
if ($var_name === 'lfm') {
return app(LfmPath::class);
} elseif ($var_name === 'helper') {
return app(Lfm::class);
}
}
/**
* Show the filemanager.
*
* @return mixed
*/
public function show()
{
return view('laravel-filemanager::index')
->withHelper($this->helper);
}
/**
* Check if any extension or config is missing.
*
* @return array
*/
public function getErrors()
{
$arr_errors = [];
if (! extension_loaded('gd') && ! extension_loaded('imagick')) {
array_push($arr_errors, trans('laravel-filemanager::lfm.message-extension_not_found'));
}
if (! extension_loaded('exif')) {
array_push($arr_errors, 'EXIF extension not found.');
}
if (! extension_loaded('fileinfo')) {
array_push($arr_errors, 'Fileinfo extension not found.');
}
$mine_config_key = 'lfm.folder_categories.'
. $this->helper->currentLfmType()
. '.valid_mime';
if (! is_array(config($mine_config_key))) {
array_push($arr_errors, 'Config : ' . $mine_config_key . ' is not a valid array.');
}
return $arr_errors;
}
/**
* Overrides settings in php.ini.
*
* @return null
*/
private function applyIniOverrides()
{
$overrides = config('lfm.php_ini_overrides', []);
if ($overrides && is_array($overrides) && count($overrides) === 0) {
return;
}
foreach ($overrides as $key => $value) {
if ($value && $value != 'false') {
ini_set($key, $value);
}
}
}
// TODO: remove this after refactoring RenameController and DeleteController
protected function error($error_type, $variables = [])
{
return trans(Lfm::PACKAGE_NAME . '::lfm.error-' . $error_type, $variables);
}
}
laravel-filemanager/src/Controllers/Controller.php 0000644 00000000467 15243417654 0016415 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Controllers;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
abstract class Controller extends BaseController
{
use DispatchesJobs, ValidatesRequests;
}
laravel-filemanager/src/Controllers/DemoController.php 0000644 00000000304 15243417654 0017210 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Controllers;
class DemoController extends LfmController
{
public function index()
{
return view('laravel-filemanager::demo');
}
}
laravel-filemanager/src/Controllers/RenameController.php 0000644 00000005366 15243417654 0017550 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Controllers;
use Illuminate\Support\Facades\Storage;
use UniSharp\LaravelFilemanager\Events\FolderIsRenaming;
use UniSharp\LaravelFilemanager\Events\FolderWasRenamed;
use UniSharp\LaravelFilemanager\Events\FileIsRenaming;
use UniSharp\LaravelFilemanager\Events\FileWasRenamed;
use UniSharp\LaravelFilemanager\Events\ImageIsRenaming;
use UniSharp\LaravelFilemanager\Events\ImageWasRenamed;
class RenameController extends LfmController
{
public function getRename()
{
$old_name = $this->helper->input('file');
$new_name = $this->helper->input('new_name');
$file = $this->lfm->setName($old_name);
if (!Storage::disk($this->helper->config('disk'))->exists($file->path('storage'))) {
abort(404);
}
$old_file = $this->lfm->pretty($old_name);
$is_directory = $file->isDirectory();
if (empty($new_name)) {
if ($is_directory) {
return response()->json(parent::error('folder-name'), 400);
} else {
return response()->json(parent::error('file-name'), 400);
}
}
if ($is_directory && config('lfm.alphanumeric_directory') && preg_match('/[^\w-]/i', $new_name)) {
return response()->json(parent::error('folder-alnum'), 400);
} elseif (config('lfm.alphanumeric_filename') && preg_match('/[^.\w-]/i', $new_name)) {
return response()->json(parent::error('file-alnum'), 400);
} elseif ($this->lfm->setName($new_name)->exists()) {
return response()->json(parent::error('rename'), 400);
}
if (! $is_directory) {
$extension = $old_file->extension();
if ($extension) {
$new_name = str_replace('.' . $extension, '', $new_name) . '.' . $extension;
}
}
$new_path = $this->lfm->setName($new_name)->path('absolute');
if ($is_directory) {
event(new FolderIsRenaming($old_file->path(), $new_path));
} else {
event(new FileIsRenaming($old_file->path(), $new_path));
event(new ImageIsRenaming($old_file->path(), $new_path));
}
$old_path = $old_file->path();
if ($old_file->hasThumb()) {
$this->lfm->setName($old_name)->thumb()
->move($this->lfm->setName($new_name)->thumb());
}
$this->lfm->setName($old_name)
->move($this->lfm->setName($new_name));
if ($is_directory) {
event(new FolderWasRenamed($old_path, $new_path));
} else {
event(new FileWasRenamed($old_path, $new_path));
event(new ImageWasRenamed($old_path, $new_path));
}
return parent::$success_response;
}
}
laravel-filemanager/src/Controllers/ResizeController.php 0000644 00000005741 15243417654 0017577 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Controllers;
use Intervention\Image\Facades\Image as InterventionImageV2;
use Intervention\Image\Laravel\Facades\Image as InterventionImageV3;
use UniSharp\LaravelFilemanager\Events\ImageIsResizing;
use UniSharp\LaravelFilemanager\Events\ImageWasResized;
class ResizeController extends LfmController
{
/**
* Dipsplay image for resizing.
*
* @return mixed
*/
public function getResize()
{
$ratio = 1.0;
$image = request('img');
if (class_exists(InterventionImageV2::class)) {
$original_image = InterventionImageV2::make($this->lfm->setName($image)->path('absolute'));
} else {
$original_image = InterventionImageV3::read($this->lfm->setName($image)->path('absolute'));
}
$original_width = $original_image->width();
$original_height = $original_image->height();
$scaled = false;
// FIXME size should be configurable
if ($original_width > 600) {
$ratio = 600 / $original_width;
$width = $original_width * $ratio;
$height = $original_height * $ratio;
$scaled = true;
} else {
$width = $original_width;
$height = $original_height;
}
if ($height > 400) {
$ratio = 400 / $original_height;
$width = $original_width * $ratio;
$height = $original_height * $ratio;
$scaled = true;
}
return view('laravel-filemanager::resize')
->with('img', $this->lfm->pretty($image))
->with('height', number_format($height, 0))
->with('width', $width)
->with('original_height', $original_height)
->with('original_width', $original_width)
->with('scaled', $scaled)
->with('ratio', $ratio);
}
public function performResize($overWrite = true)
{
$image_name = request('img');
$image_path = $this->lfm->setName(request('img'))->path('absolute');
$resize_path = $image_path;
if (! $overWrite) {
$fileParts = explode('.', $image_name);
$fileParts[count($fileParts) - 2] = $fileParts[count($fileParts) - 2] . '_resized_' . time();
$resize_path = $this->lfm->setName(implode('.', $fileParts))->path('absolute');
}
event(new ImageIsResizing($image_path));
if (class_exists(InterventionImageV2::class)) {
InterventionImageV2::make($image_path)
->resize(request('dataWidth'), request('dataHeight'))
->save($resize_path);
} else {
InterventionImageV3::read($image_path)
->resize(request('dataWidth'), request('dataHeight'))
->save($resize_path);
}
event(new ImageWasResized($image_path));
return parent::$success_response;
}
public function performResizeNew()
{
$this->performResize(false);
}
}
laravel-filemanager/src/Controllers/DeleteController.php 0000644 00000005055 15243417654 0017536 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Controllers;
use Illuminate\Support\Facades\Storage;
use UniSharp\LaravelFilemanager\Events\FileIsDeleting;
use UniSharp\LaravelFilemanager\Events\FileWasDeleted;
use UniSharp\LaravelFilemanager\Events\FolderIsDeleting;
use UniSharp\LaravelFilemanager\Events\FolderWasDeleted;
use UniSharp\LaravelFilemanager\Events\ImageIsDeleting;
use UniSharp\LaravelFilemanager\Events\ImageWasDeleted;
class DeleteController extends LfmController
{
/**
* Delete image and associated thumbnail.
*
* @return mixed
*/
public function getDelete()
{
$item_names = request('items');
$errors = [];
foreach ($item_names as $name_to_delete) {
$file = $this->lfm->setName($name_to_delete);
if ($file->isDirectory()) {
event(new FolderIsDeleting($file->path('absolute')));
} else {
event(new FileIsDeleting($file->path('absolute')));
event(new ImageIsDeleting($file->path('absolute')));
}
if (!Storage::disk($this->helper->config('disk'))->exists($file->path('storage'))) {
abort(404);
}
$file_to_delete = $this->lfm->pretty($name_to_delete);
$file_path = $file_to_delete->path('absolute');
if (is_null($name_to_delete)) {
array_push($errors, parent::error('folder-name'));
continue;
}
if (! $this->lfm->setName($name_to_delete)->exists()) {
array_push($errors, parent::error('folder-not-found', ['folder' => $file_path]));
continue;
}
if ($this->lfm->setName($name_to_delete)->isDirectory()) {
if (! $this->lfm->setName($name_to_delete)->directoryIsEmpty()) {
array_push($errors, parent::error('delete-folder'));
continue;
}
$this->lfm->setName($name_to_delete)->delete();
event(new FolderWasDeleted($file_path));
} else {
if ($file_to_delete->isImage()) {
$this->lfm->setName($name_to_delete)->thumb()->delete();
}
$this->lfm->setName($name_to_delete)->delete();
event(new FileWasDeleted($file_path));
event(new ImageWasDeleted($file_path));
}
}
if (count($errors) > 0) {
return response()->json($errors, 400);
}
return parent::$success_response;
}
}
laravel-filemanager/src/Controllers/RedirectController.php 0000644 00000000730 15243417654 0020070 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Controllers;
use Illuminate\Support\Facades\Storage;
class RedirectController extends LfmController
{
public function showFile($file_path)
{
$storage = Storage::disk($this->helper->config('disk'));
if (! $storage->exists($file_path)) {
abort(404);
}
return response($storage->get($file_path))
->header('Content-Type', $storage->mimeType($file_path));
}
}
laravel-filemanager/src/Controllers/DownloadController.php 0000644 00000000733 15243417654 0020101 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Controllers;
use Illuminate\Support\Facades\Storage;
class DownloadController extends LfmController
{
public function getDownload()
{
$file = $this->lfm->setName(request('file'));
if (!Storage::disk($this->helper->config('disk'))->exists($file->path('storage'))) {
abort(404);
}
return Storage::disk($this->helper->config('disk'))->download($file->path('storage'));
}
}
laravel-filemanager/src/LfmUploadValidator.php 0000644 00000005631 15243417654 0015513 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager;
use Symfony\Component\HttpFoundation\File\UploadedFile;
use UniSharp\LaravelFilemanager\Exceptions\DuplicateFileNameException;
use UniSharp\LaravelFilemanager\Exceptions\EmptyFileException;
use UniSharp\LaravelFilemanager\Exceptions\ExcutableFileException;
use UniSharp\LaravelFilemanager\Exceptions\FileFailedToUploadException;
use UniSharp\LaravelFilemanager\Exceptions\FileSizeExceedConfigurationMaximumException;
use UniSharp\LaravelFilemanager\Exceptions\FileSizeExceedIniMaximumException;
use UniSharp\LaravelFilemanager\Exceptions\InvalidMimeTypeException;
use UniSharp\LaravelFilemanager\LfmPath;
class LfmUploadValidator
{
private $file;
public function __construct(UploadedFile $file)
{
// if (! $file instanceof UploadedFile) {
// throw new \Exception(trans(self::PACKAGE_NAME . '::lfm.error-instance'));
// }
$this->file = $file;
}
// public function hasContent()
// {
// if (empty($this->file)) {
// throw new EmptyFileException();
// }
// return $this;
// }
public function sizeLowerThanIniMaximum()
{
if ($this->file->getError() == UPLOAD_ERR_INI_SIZE) {
throw new FileSizeExceedIniMaximumException();
}
return $this;
}
public function uploadWasSuccessful()
{
if ($this->file->getError() != UPLOAD_ERR_OK) {
throw new FileFailedToUploadException($this->file->getError());
}
return $this;
}
public function nameIsNotDuplicate($new_file_name, LfmPath $lfm_path)
{
if ($lfm_path->setName($new_file_name)->exists()) {
throw new DuplicateFileNameException();
}
return $this;
}
public function mimetypeIsNotExcutable($excutable_mimetypes)
{
$mimetype = $this->file->getMimeType();
if (in_array($mimetype, $excutable_mimetypes)) {
throw new ExcutableFileException();
}
return $this;
}
public function extensionIsNotExcutable($excutable_extensions)
{
$extension = $this->file->getClientOriginalExtension();
if (in_array($extension, $excutable_extensions)) {
throw new ExcutableFileException();
}
return $this;
}
public function mimeTypeIsValid($available_mime_types)
{
$mimetype = $this->file->getMimeType();
if (false === in_array($mimetype, $available_mime_types)) {
throw new InvalidMimeTypeException($mimetype);
}
return $this;
}
public function sizeIsLowerThanConfiguredMaximum($max_size_in_kb)
{
// size to kb unit is needed
$file_size_in_kb = $this->file->getSize() / 1000;
if ($file_size_in_kb > $max_size_in_kb) {
throw new FileSizeExceedConfigurationMaximumException($file_size_in_kb);
}
return $this;
}
}
laravel-filemanager/src/Events/ImageWasRenamed.php 0000755 00000000707 15243417654 0016221 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class ImageWasRenamed
{
private $old_path;
private $new_path;
public function __construct($old_path, $new_path)
{
$this->old_path = $old_path;
$this->new_path = $new_path;
}
/**
* @return string
*/
public function oldPath()
{
return $this->old_path;
}
public function newPath()
{
return $this->new_path;
}
}
laravel-filemanager/src/Events/FolderIsDeleting.php 0000644 00000000437 15243417654 0016410 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FolderIsDeleting
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/ImageIsDeleting.php 0000644 00000000436 15243417654 0016216 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class ImageIsDeleting
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/ImageIsRenaming.php 0000644 00000000707 15243417654 0016224 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class ImageIsRenaming
{
private $old_path;
private $new_path;
public function __construct($old_path, $new_path)
{
$this->old_path = $old_path;
$this->new_path = $new_path;
}
/**
* @return string
*/
public function oldPath()
{
return $this->old_path;
}
public function newPath()
{
return $this->new_path;
}
}
laravel-filemanager/src/Events/FileWasRenamed.php 0000644 00000000706 15243417654 0016052 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FileWasRenamed
{
private $old_path;
private $new_path;
public function __construct($old_path, $new_path)
{
$this->old_path = $old_path;
$this->new_path = $new_path;
}
/**
* @return string
*/
public function oldPath()
{
return $this->old_path;
}
public function newPath()
{
return $this->new_path;
}
}
laravel-filemanager/src/Events/FolderWasCreated.php 0000644 00000000437 15243417654 0016403 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FolderWasCreated
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/ImageWasUploaded.php 0000644 00000000437 15243417654 0016400 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class ImageWasUploaded
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/FolderWasDeleted.php 0000644 00000000437 15243417654 0016402 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FolderWasDeleted
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/FileIsMoving.php 0000644 00000000704 15243417654 0015555 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FileIsMoving
{
private $old_path;
private $new_path;
public function __construct($old_path, $new_path)
{
$this->old_path = $old_path;
$this->new_path = $new_path;
}
/**
* @return string
*/
public function oldPath()
{
return $this->old_path;
}
public function newPath()
{
return $this->new_path;
}
}
laravel-filemanager/src/Events/FolderIsRenaming.php 0000644 00000000710 15243417654 0016407 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FolderIsRenaming
{
private $old_path;
private $new_path;
public function __construct($old_path, $new_path)
{
$this->old_path = $old_path;
$this->new_path = $new_path;
}
/**
* @return string
*/
public function oldPath()
{
return $this->old_path;
}
public function newPath()
{
return $this->new_path;
}
}
laravel-filemanager/src/Events/FileIsRenaming.php 0000644 00000000706 15243417654 0016060 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FileIsRenaming
{
private $old_path;
private $new_path;
public function __construct($old_path, $new_path)
{
$this->old_path = $old_path;
$this->new_path = $new_path;
}
/**
* @return string
*/
public function oldPath()
{
return $this->old_path;
}
public function newPath()
{
return $this->new_path;
}
}
laravel-filemanager/src/Events/FileWasDeleted.php 0000644 00000000435 15243417654 0016044 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FileWasDeleted
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/ImageWasDeleted.php 0000755 00000000436 15243417654 0016213 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class ImageWasDeleted
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/ImageIsCropping.php 0000644 00000000436 15243417654 0016244 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class ImageIsCropping
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/FileWasMoving.php 0000644 00000000705 15243417654 0015735 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FileWasMoving
{
private $old_path;
private $new_path;
public function __construct($old_path, $new_path)
{
$this->old_path = $old_path;
$this->new_path = $new_path;
}
/**
* @return string
*/
public function oldPath()
{
return $this->old_path;
}
public function newPath()
{
return $this->new_path;
}
}
laravel-filemanager/src/Events/FileIsUploading.php 0000644 00000000436 15243417654 0016242 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FileIsUploading
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/FolderWasMoving.php 0000644 00000000707 15243417654 0016273 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FolderWasMoving
{
private $old_path;
private $new_path;
public function __construct($old_path, $new_path)
{
$this->old_path = $old_path;
$this->new_path = $new_path;
}
/**
* @return string
*/
public function oldPath()
{
return $this->old_path;
}
public function newPath()
{
return $this->new_path;
}
}
laravel-filemanager/src/Events/FileIsDeleting.php 0000644 00000000435 15243417654 0016052 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FileIsDeleting
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/FolderIsCreating.php 0000644 00000000437 15243417654 0016411 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FolderIsCreating
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/FolderIsMoving.php 0000644 00000000706 15243417654 0016113 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FolderIsMoving
{
private $old_path;
private $new_path;
public function __construct($old_path, $new_path)
{
$this->old_path = $old_path;
$this->new_path = $new_path;
}
/**
* @return string
*/
public function oldPath()
{
return $this->old_path;
}
public function newPath()
{
return $this->new_path;
}
}
laravel-filemanager/src/Events/ImageWasResized.php 0000644 00000000436 15243417654 0016247 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class ImageWasResized
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/ImageIsResizing.php 0000644 00000000436 15243417654 0016255 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class ImageIsResizing
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/ImageWasCropped.php 0000644 00000000436 15243417654 0016236 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class ImageWasCropped
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/ImageIsUploading.php 0000644 00000000437 15243417654 0016406 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class ImageIsUploading
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/FileWasUploaded.php 0000644 00000000436 15243417654 0016234 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FileWasUploaded
{
private $path;
public function __construct($path)
{
$this->path = $path;
}
/**
* @return string
*/
public function path()
{
return $this->path;
}
}
laravel-filemanager/src/Events/FolderWasRenamed.php 0000755 00000000710 15243417654 0016404 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Events;
class FolderWasRenamed
{
private $old_path;
private $new_path;
public function __construct($old_path, $new_path)
{
$this->old_path = $old_path;
$this->new_path = $new_path;
}
/**
* @return string
*/
public function oldPath()
{
return $this->old_path;
}
public function newPath()
{
return $this->new_path;
}
}
laravel-filemanager/src/LaravelFilemanagerServiceProvider.php 0000644 00000003131 15243417654 0020530 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager;
use Illuminate\Support\Facades\Route;
use Illuminate\Support\ServiceProvider;
/**
* Class LaravelFilemanagerServiceProvider.
*/
class LaravelFilemanagerServiceProvider extends ServiceProvider
{
/**
* Bootstrap the application services.
*
* @return void
*/
public function boot()
{
$this->loadTranslationsFrom(__DIR__.'/lang', 'laravel-filemanager');
$this->loadViewsFrom(__DIR__.'/views', 'laravel-filemanager');
$this->publishes([
__DIR__ . '/config/lfm.php' => base_path('config/lfm.php'),
], 'lfm_config');
$this->publishes([
__DIR__.'/../public' => public_path('vendor/laravel-filemanager'),
], 'lfm_public');
$this->publishes([
__DIR__.'/views' => base_path('resources/views/vendor/laravel-filemanager'),
], 'lfm_view');
$this->publishes([
__DIR__.'/Handlers/LfmConfigHandler.php' => base_path('app/Handlers/LfmConfigHandler.php'),
], 'lfm_handler');
if (config('lfm.use_package_routes')) {
Route::group(['prefix' => 'filemanager', 'middleware' => ['web', 'auth']], function () {
\UniSharp\LaravelFilemanager\Lfm::routes();
});
}
}
/**
* Register the application services.
*
* @return void
*/
public function register()
{
$this->mergeConfigFrom(__DIR__ . '/config/lfm.php', 'lfm-config');
$this->app->singleton('laravel-filemanager', function () {
return true;
});
}
}
laravel-filemanager/src/views/resize.blade.php 0000644 00000012016 15243417654 0015461 0 ustar 00 <style>
#work_space {
padding: 30px;
height: 100vw;
display: flex;
justify-content: center;
align-items: center;
}
@media screen and (min-width: 768px) {
#work_space {
width: unset;
height: unset;
}
}
</style>
<div class="container">
<div class="row">
<div class="col-md-8 bg-light" id="work_space">
<div id="containment" class="d-none d-md-inline">
<img id="resize" src="{{ $img->url . '?timestamp=' . $img->time }}" height="{{ $height }}" width="{{ $width }}">
</div>
<div id="resize_mobile" style="background-image: url({{ $img->url . '?timestamp=' . $img->time }})" class="d-block d-md-none"></div>
</div>
<div class="col-md-4 pt-3">
<table class="table table-compact table-striped">
<thead></thead>
<tbody>
@if ($scaled)
<tr>
<td class="text-nowrap">{{ trans('laravel-filemanager::lfm.resize-ratio') }}</td>
<td class="text-right">{{ number_format($ratio, 2) }}</td>
</tr>
<tr>
<td class="text-nowrap">{{ trans('laravel-filemanager::lfm.resize-scaled') }}</td>
<td class="text-right">
{{ trans('laravel-filemanager::lfm.resize-true') }}
</td>
</tr>
@endif
<tr>
<td class="text-nowrap">{{ trans('laravel-filemanager::lfm.resize-old-height') }}</td>
<td class="text-right">{{ $original_height }}px</td>
</tr>
<tr>
<td class="text-nowrap">{{ trans('laravel-filemanager::lfm.resize-old-width') }}</td>
<td class="text-right">{{ $original_width }}px</td>
</tr>
<tr>
<td class="text-nowrap" style="vertical-align: middle">{{ trans('laravel-filemanager::lfm.resize-new-height') }}</td>
<td class="text-right"><input type="text" id="height_display" class="form-control w-50 d-inline mr-2" value="{{ $height }}">px</td>
</tr>
<tr>
<td class="text-nowrap" style="vertical-align: middle">{{ trans('laravel-filemanager::lfm.resize-new-width') }}</td>
<td class="text-right"><input type="text" id="width_display" class="form-control w-50 d-inline mr-2" value="{{ $width }}">px</td>
</tr>
</tbody>
</table>
<div class="d-flex mb-3">
<button class="btn btn-secondary w-50 mr-1" onclick="loadItems()">{{ trans('laravel-filemanager::lfm.btn-cancel') }}</button>
<button class="btn btn-warning w-50 mr-1" onclick="doResizeNew()">{{ trans('laravel-filemanager::lfm.btn-resize-copy') }}</button>
<button class="btn btn-primary w-50" onclick="doResize()">{{ trans('laravel-filemanager::lfm.btn-resize') }}</button>
</div>
<input type="hidden" id="img" name="img" value="{{ $img->name }}">
<input type="hidden" name="ratio" value="{{ $ratio }}">
<input type="hidden" name="scaled" value="{{ $scaled }}">
<input type="hidden" id="original_height" name="original_height" value="{{ $original_height }}">
<input type="hidden" id="original_width" name="original_width" value="{{ $original_width }}">
<input type="hidden" id="height" name="height" value="{{ $height }}">
<input type="hidden" id="width" name="width" value="{{ $width }}">
</div>
</div>
</div>
<script>
$(document).ready(function () {
renderResizedValues($("#width_display").val(), $("#height_display").val());
$("#resize").resizable({
aspectRatio: true,
containment: "#containment",
handles: "n, e, s, w, se, sw, ne, nw",
resize: function (event, ui) {
renderResizedValues(ui.size.width, ui.size.height);
}
});
});
$('#width_display, #height_display').change(function () {
var newWidth = $("#width_display").val();
var newHeight = $("#height_display").val();
renderResizedValues(newWidth, newHeight);
$("#containment > .ui-wrapper").width(newWidth).height(newHeight);
$("#resize").width(newWidth).height(newHeight);
});
function renderResizedValues(newWidth, newHeight) {
$("#width").val(newWidth);
$("#height").val(newHeight);
$("#width_display").val(newWidth);
$("#height_display").val(newHeight);
$('#resize_mobile').css('background-size', '100% 100%');
if (newWidth < newHeight) {
$('#resize_mobile').css('width', (newWidth / newHeight * 100) + '%').css('padding-bottom', '100%');
} else if (newWidth > newHeight) {
$('#resize_mobile').css('width', '100%').css('padding-bottom', (newHeight / newWidth * 100) + '%');
} else { // newWidth === newHeight
$('#resize_mobile').css('width', '100%').css('padding-bottom', '100%');
}
}
function doResize() {
performLfmRequest('doresize', {
img: $("#img").val(),
dataHeight: $("#height").val(),
dataWidth: $("#width").val()
}).done(loadItems);
}
function doResizeNew() {
performLfmRequest('doresizenew', {
img: $("#img").val(),
dataHeight: $("#height").val(),
dataWidth: $("#width").val()
}).done(loadItems);
}
</script>
laravel-filemanager/src/views/crop.blade.php 0000644 00000007444 15243417654 0015134 0 ustar 00 <div class="row no-gutters">
<div class="col-xl-8">
<div class="crop-container">
<img src="{{ $img->url . '?timestamp=' . $img->time }}" class="img img-responsive">
</div>
</div>
<div class="col-xl-4">
<div class="text-center">
<div class="img-preview center-block"></div>
<br>
<div class="btn-group clearfix">
<label class="btn btn-info btn-aspectRatio active" onclick="changeAspectRatio(this, 16 / 9)">
16:9
</label>
<label class="btn btn-info btn-aspectRatio" onclick="changeAspectRatio(this, 4 / 3)">
4:3
</label>
<label class="btn btn-info btn-aspectRatio" onclick="changeAspectRatio(this, 1)">
1:1
</label>
<label class="btn btn-info btn-aspectRatio" onclick="changeAspectRatio(this, 2 / 3)">
2:3
</label>
<label class="btn btn-info btn-aspectRatio" onclick="changeAspectRatio(this, null)">
{{ trans('laravel-filemanager::lfm.btn-crop-free') }}
</label>
</div>
<br>
<br>
<div class="btn-group clearfix">
<button class="btn btn-secondary" onclick="loadItems()">{{ trans('laravel-filemanager::lfm.btn-cancel') }}</button>
<button class="btn btn-warning" onclick="performCropNew()">{{ trans('laravel-filemanager::lfm.btn-copy-crop') }}</button>
<button class="btn btn-primary" onclick="performCrop()">{{ trans('laravel-filemanager::lfm.btn-crop') }}</button>
</div>
<form id='cropForm'>
<input type="hidden" id="img" name="img" value="{{ $img->name }}">
<input type="hidden" id="working_dir" name="working_dir" value="{{ $working_dir }}">
<input type="hidden" id="dataX" name="dataX">
<input type="hidden" id="dataY" name="dataY">
<input type="hidden" id="dataWidth" name="dataWidth">
<input type="hidden" id="dataHeight" name="dataHeight">
<input type='hidden' name='_token' value='{{csrf_token()}}'>
</form>
</div>
</div>
</div>
<script>
var $image = null,
options = {};
$(document).ready(function () {
var $dataX = $('#dataX'),
$dataY = $('#dataY'),
$dataHeight = $('#dataHeight'),
$dataWidth = $('#dataWidth');
$image = $('.crop-container > img');
options = {
aspectRatio: 16 / 9,
preview: ".img-preview",
strict: false,
crop: function (data) {
// Output the result data for cropping image.
$dataX.val(Math.round(data.x));
$dataY.val(Math.round(data.y));
$dataHeight.val(Math.round(data.height));
$dataWidth.val(Math.round(data.width));
}
};
$image.cropper(options);
});
function changeAspectRatio(_this, aspectRatio) {
options.aspectRatio = aspectRatio;
$('.btn-aspectRatio.active').removeClass('active');
$(_this).addClass('active');
$('.img-preview').removeAttr('style');
$image.cropper('destroy').cropper(options);
return false;
}
function performCrop() {
performLfmRequest('cropimage', {
img: $("#img").val(),
working_dir: $("#working_dir").val(),
dataX: $("#dataX").val(),
dataY: $("#dataY").val(),
dataHeight: $("#dataHeight").val(),
dataWidth: $("#dataWidth").val(),
type: $('#type').val()
}).done(loadItems);
}
function performCropNew() {
performLfmRequest('cropnewimage', {
img: $("#img").val(),
working_dir: $("#working_dir").val(),
dataX: $("#dataX").val(),
dataY: $("#dataY").val(),
dataHeight: $("#dataHeight").val(),
dataWidth: $("#dataWidth").val(),
type: $('#type').val()
}).done(loadItems);
}
</script>
laravel-filemanager/src/views/tree.blade.php 0000644 00000002272 15243417654 0015122 0 ustar 00 <div class="m-3 d-block d-lg-none">
<h1 style="font-size: 1.5rem;">Laravel File Manager</h1>
<small class="d-block">Ver 2.0</small>
<div class="row mt-3">
<div class="col-4">
<img src="{{ asset('vendor/laravel-filemanager/img/152px color.png') }}" class="w-100">
</div>
<div class="col-8">
<p>Current usage :</p>
<p>20 GB (Max : 1 TB)</p>
</div>
</div>
<div class="progress mt-3" style="height: .5rem;">
<div class="progress-bar progress-bar-striped progress-bar-animated w-75 bg-main" role="progressbar" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100"></div>
</div>
</div>
<ul class="nav nav-pills flex-column">
@foreach($root_folders as $root_folder)
<li class="nav-item">
<a class="nav-link" href="#" data-type="0" data-path="{{ $root_folder->url }}">
<i class="fa fa-folder fa-fw"></i> {{ $root_folder->name }}
</a>
</li>
@foreach($root_folder->children as $directory)
<li class="nav-item sub-item">
<a class="nav-link" href="#" data-type="0" data-path="{{ $directory->url }}">
<i class="fa fa-folder fa-fw"></i> {{ $directory->name }}
</a>
</li>
@endforeach
@endforeach
</ul>
laravel-filemanager/src/views/demo.blade.php 0000644 00000017117 15243417654 0015113 0 ustar 00 <!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Laravel Filemanager</title>
<link rel="shortcut icon" type="image/png" href="{{ asset('vendor/laravel-filemanager/img/72px color.png') }}">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/css/bootstrap.min.css">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
</head>
<body>
<div class="container">
<h1 class="page-header">Integration Demo Page</h1>
<div class="row">
<div class="col-md-6">
<h2 class="mt-4">CKEditor</h2>
<textarea name="ce" class="form-control"></textarea>
</div>
<div class="col-md-6">
<h2 class="mt-4">TinyMCE</h2>
<textarea name="tm" class="form-control"></textarea>
</div>
</div>
<div class="row">
<div class="col-md-6">
<h2 class="mt-4">Summernote</h2>
<textarea id="summernote-editor" name="content"></textarea>
</div>
<div class="col-md-6">
<h2 class="mt-4">Standalone Image Button</h2>
<div class="input-group">
<span class="input-group-btn">
<a id="lfm" data-input="thumbnail" data-preview="holder" class="btn btn-primary text-white">
<i class="fa fa-picture-o"></i> Choose
</a>
</span>
<input id="thumbnail" class="form-control" type="text" name="filepath">
</div>
<div id="holder" style="margin-top:15px;max-height:100px;"></div>
<h2 class="mt-4">Standalone File Button</h2>
<div class="input-group">
<span class="input-group-btn">
<a id="lfm2" data-input="thumbnail2" data-preview="holder2" class="btn btn-primary text-white">
<i class="fa fa-picture-o"></i> Choose
</a>
</span>
<input id="thumbnail2" class="form-control" type="text" name="filepath">
</div>
<div id="holder2" style="margin-top:15px;max-height:100px;"></div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<h2 class="mt-4">Embed file manager</h2>
<iframe src="/filemanager" style="width: 100%; height: 500px; overflow: hidden; border: none;"></iframe>
</div>
</div>
</div>
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.3/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/js/bootstrap.min.js"></script>
<script>
var route_prefix = "/filemanager";
</script>
<!-- CKEditor init -->
<script src="//cdnjs.cloudflare.com/ajax/libs/ckeditor/4.5.11/ckeditor.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/ckeditor/4.5.11/adapters/jquery.js"></script>
<script>
$('textarea[name=ce]').ckeditor({
height: 100,
filebrowserImageBrowseUrl: route_prefix + '?type=Images',
filebrowserImageUploadUrl: route_prefix + '/upload?type=Images&_token={{csrf_token()}}',
filebrowserBrowseUrl: route_prefix + '?type=Files',
filebrowserUploadUrl: route_prefix + '/upload?type=Files&_token={{csrf_token()}}'
});
</script>
<!-- TinyMCE init -->
<script src="//cdn.tinymce.com/4/tinymce.min.js"></script>
<script>
var editor_config = {
path_absolute : "",
selector: "textarea[name=tm]",
plugins: [
"link image"
],
relative_urls: false,
height: 129,
file_browser_callback : function(field_name, url, type, win) {
var x = window.innerWidth || document.documentElement.clientWidth || document.getElementsByTagName('body')[0].clientWidth;
var y = window.innerHeight|| document.documentElement.clientHeight|| document.getElementsByTagName('body')[0].clientHeight;
var cmsURL = editor_config.path_absolute + route_prefix + '?field_name=' + field_name;
if (type == 'image') {
cmsURL = cmsURL + "&type=Images";
} else {
cmsURL = cmsURL + "&type=Files";
}
tinyMCE.activeEditor.windowManager.open({
file : cmsURL,
title : 'Filemanager',
width : x * 0.8,
height : y * 0.8,
resizable : "yes",
close_previous : "no"
});
}
};
tinymce.init(editor_config);
</script>
<script>
{!! \File::get(base_path('vendor/unisharp/laravel-filemanager/public/js/stand-alone-button.js')) !!}
</script>
<script>
$('#lfm').filemanager('image', {prefix: route_prefix});
// $('#lfm').filemanager('file', {prefix: route_prefix});
</script>
<script>
var lfm = function(id, type, options) {
let button = document.getElementById(id);
button.addEventListener('click', function () {
var route_prefix = (options && options.prefix) ? options.prefix : '/filemanager';
var target_input = document.getElementById(button.getAttribute('data-input'));
var target_preview = document.getElementById(button.getAttribute('data-preview'));
window.open(route_prefix + '?type=' + options.type || 'file', 'FileManager', 'width=900,height=600');
window.SetUrl = function (items) {
var file_path = items.map(function (item) {
return item.url;
}).join(',');
// set the value of the desired input to image url
target_input.value = file_path;
target_input.dispatchEvent(new Event('change'));
// clear previous preview
target_preview.innerHtml = '';
// set or change the preview image src
items.forEach(function (item) {
let img = document.createElement('img')
img.setAttribute('style', 'height: 5rem')
img.setAttribute('src', item.thumb_url)
target_preview.appendChild(img);
});
// trigger change event
target_preview.dispatchEvent(new Event('change'));
};
});
};
lfm('lfm2', 'file', {prefix: route_prefix});
</script>
<link href="http://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.8/summernote.css" rel="stylesheet">
<script src="http://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.8/summernote.js"></script>
<style>
.popover {
top: auto;
left: auto;
}
</style>
<script>
$(document).ready(function(){
// Define function to open filemanager window
var lfm = function(options, cb) {
var route_prefix = (options && options.prefix) ? options.prefix : '/filemanager';
window.open(route_prefix + '?type=' + options.type || 'file', 'FileManager', 'width=900,height=600');
window.SetUrl = cb;
};
// Define LFM summernote button
var LFMButton = function(context) {
var ui = $.summernote.ui;
var button = ui.button({
contents: '<i class="note-icon-picture"></i> ',
tooltip: 'Insert image with filemanager',
click: function() {
lfm({type: 'image', prefix: '/filemanager'}, function(lfmItems, path) {
lfmItems.forEach(function (lfmItem) {
context.invoke('insertImage', lfmItem.url);
});
});
}
});
return button.render();
};
// Initialize summernote with LFM button in the popover button group
// Please note that you can add this button to any other button group you'd like
$('#summernote-editor').summernote({
toolbar: [
['popovers', ['lfm']],
],
buttons: {
lfm: LFMButton
}
})
});
</script>
</body>
</html>
laravel-filemanager/src/views/move.blade.php 0000644 00000002645 15243417654 0015135 0 ustar 00 <ul class="nav nav-pills flex-column">
@foreach($root_folders as $root_folder)
<li class="nav-item">
<a class="nav-link" href="#" data-type="0" onclick="moveToNewFolder(`{{$root_folder->url}}`)">
<i class="fa fa-folder fa-fw"></i> {{ $root_folder->name }}
<input type="hidden" id="goToFolder" name="goToFolder" value="{{ $root_folder->url }}">
<div id="items">
@foreach($items as $i)
<input type="hidden" id="{{ $i }}" name="items[]" value="{{ $i }}">
@endforeach
</div>
</a>
</li>
@foreach($root_folder->children as $directory)
<li class="nav-item sub-item">
<a class="nav-link" href="#" data-type="0" onclick="moveToNewFolder(`{{$directory->url}}`)">
<i class="fa fa-folder fa-fw"></i> {{ $directory->name }}
<input type="hidden" id="goToFolder" name="goToFolder" value="{{ $directory->url }}">
<div id="items">
@foreach($items as $i)
<input type="hidden" id="{{ $i }}" name="items[]" value="{{ $i }}">
@endforeach
</div>
</a>
</li>
@endforeach
@endforeach
</ul>
<script>
function moveToNewFolder($folder) {
$("#notify").modal('hide');
var items =[];
$("#items").find("input").each(function() {items.push(this.id)});
performLfmRequest('domove', {
items: items,
goToFolder: $folder
}).done(refreshFoldersAndItems);
}
</script>
laravel-filemanager/src/views/use.blade.php 0000644 00000001050 15243417654 0014750 0 ustar 00 <script type='text/javascript'>
function getUrlParam(paramName) {
var reParam = new RegExp('(?:[\?&]|&)' + paramName + '=([^&]+)', 'i');
var match = window.location.search.match(reParam);
return ( match && match.length > 1 ) ? match[1] : null;
}
var funcNum = getUrlParam('CKEditorFuncNum');
var par = window.parent;
var op = window.opener;
var o = (par && par.CKEDITOR) ? par : ((op && op.CKEDITOR) ? op : false);
if (op) window.close();
if (o !== false) o.CKEDITOR.tools.callFunction(funcNum, "{{ $file }}");
</script>
laravel-filemanager/src/views/index.blade.php 0000644 00000027462 15243417654 0015302 0 ustar 00 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=EDGE" />
<meta name="viewport" content="width=device-width,initial-scale=1">
<!-- Chrome, Firefox OS and Opera -->
<meta name="theme-color" content="#333844">
<!-- Windows Phone -->
<meta name="msapplication-navbutton-color" content="#333844">
<!-- iOS Safari -->
<meta name="apple-mobile-web-app-status-bar-style" content="#333844">
<title>{{ trans('laravel-filemanager::lfm.title-page') }}</title>
<link rel="shortcut icon" type="image/png" href="{{ asset('vendor/laravel-filemanager/img/72px color.png') }}">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.1.0/dist/css/bootstrap.min.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5.5.0/css/all.min.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/jquery-ui-dist@1.12.1/jquery-ui.min.css">
<link rel="stylesheet" href="{{ asset('vendor/laravel-filemanager/css/cropper.min.css') }}">
<link rel="stylesheet" href="{{ asset('vendor/laravel-filemanager/css/dropzone.min.css') }}">
<link rel="stylesheet" href="{{ asset('vendor/laravel-filemanager/css/mime-icons.min.css') }}">
<style>{!! \File::get(base_path('vendor/unisharp/laravel-filemanager/public/css/lfm.css')) !!}</style>
{{-- Use the line below instead of the above if you need to cache the css. --}}
{{-- <link rel="stylesheet" href="{{ asset('/vendor/laravel-filemanager/css/lfm.css') }}"> --}}
</head>
<body>
<nav class="navbar sticky-top navbar-expand-lg navbar-dark" id="nav">
<a class="navbar-brand invisible-lg d-none d-lg-inline" id="to-previous">
<i class="fas fa-arrow-left fa-fw"></i>
<span class="d-none d-lg-inline">{{ trans('laravel-filemanager::lfm.nav-back') }}</span>
</a>
<a class="navbar-brand d-block d-lg-none" id="show_tree">
<i class="fas fa-bars fa-fw"></i>
</a>
<a class="navbar-brand d-block d-lg-none" id="current_folder"></a>
<a id="loading" class="navbar-brand"><i class="fas fa-spinner fa-spin"></i></a>
<div class="ml-auto px-2">
<a class="navbar-link d-none" id="multi_selection_toggle">
<i class="fa fa-check-double fa-fw"></i>
<span class="d-none d-lg-inline">{{ trans('laravel-filemanager::lfm.menu-multiple') }}</span>
</a>
</div>
<a class="navbar-toggler collapsed border-0 px-1 py-2 m-0" data-toggle="collapse" data-target="#nav-buttons">
<i class="fas fa-cog fa-fw"></i>
</a>
<div class="collapse navbar-collapse flex-grow-0" id="nav-buttons">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link" data-display="grid">
<i class="fas fa-th-large fa-fw"></i>
<span>{{ trans('laravel-filemanager::lfm.nav-thumbnails') }}</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" data-display="list">
<i class="fas fa-list-ul fa-fw"></i>
<span>{{ trans('laravel-filemanager::lfm.nav-list') }}</span>
</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
<i class="fas fa-sort fa-fw"></i>{{ trans('laravel-filemanager::lfm.nav-sort') }}
</a>
<div class="dropdown-menu dropdown-menu-right border-0"></div>
</li>
</ul>
</div>
</nav>
<nav class="bg-light fixed-bottom border-top d-none" id="actions">
<a data-action="open" data-multiple="false"><i class="fas fa-folder-open"></i>{{ trans('laravel-filemanager::lfm.btn-open') }}</a>
<a data-action="preview" data-multiple="true"><i class="fas fa-images"></i>{{ trans('laravel-filemanager::lfm.menu-view') }}</a>
<a data-action="use" data-multiple="true"><i class="fas fa-check"></i>{{ trans('laravel-filemanager::lfm.btn-confirm') }}</a>
</nav>
<div class="d-flex flex-row">
<div id="tree"></div>
<div id="main">
<div id="alerts"></div>
<nav aria-label="breadcrumb" class="d-none d-lg-block" id="breadcrumbs">
<ol class="breadcrumb">
<li class="breadcrumb-item invisible">Home</li>
</ol>
</nav>
<div id="empty" class="d-none">
<i class="far fa-folder-open"></i>
{{ trans('laravel-filemanager::lfm.message-empty') }}
</div>
<div id="content"></div>
<div id="pagination"></div>
<a id="item-template" class="d-none">
<div class="square"></div>
<div class="info">
<div class="item_name text-truncate"></div>
<time class="text-muted font-weight-light text-truncate"></time>
</div>
</a>
</div>
<div id="fab"></div>
</div>
<div class="modal fade" id="uploadModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title" id="myModalLabel">{{ trans('laravel-filemanager::lfm.title-upload') }}</h4>
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aia-hidden="true">×</span></button>
</div>
<div class="modal-body">
<form action="{{ route('unisharp.lfm.upload') }}" role='form' id='uploadForm' name='uploadForm' method='post' enctype='multipart/form-data' class="dropzone">
<div class="form-group" id="attachment">
<div class="controls text-center">
<div class="input-group w-100">
<a class="btn btn-primary w-100 text-white" id="upload-button">{{ trans('laravel-filemanager::lfm.message-choose') }}</a>
</div>
</div>
</div>
<input type='hidden' name='working_dir' id='working_dir'>
<input type='hidden' name='type' id='type' value='{{ request("type") }}'>
<input type='hidden' name='_token' value='{{csrf_token()}}'>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-close') }}</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="notify" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-body"></div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-close') }}</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="confirm" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-body"></div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-close') }}</button>
<button type="button" class="btn btn-primary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-confirm') }}</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="dialog" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title"></h4>
</div>
<div class="modal-body">
<input type="text" class="form-control">
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-close') }}</button>
<button type="button" class="btn btn-primary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-confirm') }}</button>
</div>
</div>
</div>
</div>
<div id="carouselTemplate" class="d-none carousel slide bg-light" data-ride="carousel">
<ol class="carousel-indicators">
<li data-target="#previewCarousel" data-slide-to="0" class="active"></li>
</ol>
<div class="carousel-inner">
<div class="carousel-item active">
<a class="carousel-label"></a>
<div class="carousel-image"></div>
</div>
</div>
<a class="carousel-control-prev" href="#previewCarousel" role="button" data-slide="prev">
<div class="carousel-control-background" aria-hidden="true">
<i class="fas fa-chevron-left"></i>
</div>
<span class="sr-only">Previous</span>
</a>
<a class="carousel-control-next" href="#previewCarousel" role="button" data-slide="next">
<div class="carousel-control-background" aria-hidden="true">
<i class="fas fa-chevron-right"></i>
</div>
<span class="sr-only">Next</span>
</a>
</div>
<script src="https://cdn.jsdelivr.net/npm/jquery@3.2.1/dist/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.12.3/dist/umd/popper.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.1.0/dist/js/bootstrap.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/jquery-ui-dist@1.12.1/jquery-ui.min.js"></script>
<script src="{{ asset('vendor/laravel-filemanager/js/cropper.min.js') }}"></script>
<script src="{{ asset('vendor/laravel-filemanager/js/dropzone.min.js') }}"></script>
<script>
var lang = {!! json_encode(trans('laravel-filemanager::lfm')) !!};
var actions = [
// {
// name: 'use',
// icon: 'check',
// label: 'Confirm',
// multiple: true
// },
{
name: 'rename',
icon: 'edit',
label: lang['menu-rename'],
multiple: false
},
{
name: 'download',
icon: 'download',
label: lang['menu-download'],
multiple: true
},
// {
// name: 'preview',
// icon: 'image',
// label: lang['menu-view'],
// multiple: true
// },
{
name: 'move',
icon: 'paste',
label: lang['menu-move'],
multiple: true
},
{
name: 'resize',
icon: 'arrows-alt',
label: lang['menu-resize'],
multiple: false
},
{
name: 'crop',
icon: 'crop',
label: lang['menu-crop'],
multiple: false
},
{
name: 'trash',
icon: 'trash',
label: lang['menu-delete'],
multiple: true
},
];
var sortings = [
{
by: 'alphabetic',
icon: 'sort-alpha-down',
label: lang['nav-sort-alphabetic']
},
{
by: 'time',
icon: 'sort-numeric-down',
label: lang['nav-sort-time']
}
];
</script>
<script>{!! \File::get(base_path('vendor/unisharp/laravel-filemanager/public/js/script.js')) !!}</script>
{{-- Use the line below instead of the above if you need to cache the script. --}}
{{-- <script src="{{ asset('vendor/laravel-filemanager/js/script.js') }}"></script> --}}
<script>
Dropzone.options.uploadForm = {
paramName: "upload[]", // The name that will be used to transfer the file
uploadMultiple: false,
parallelUploads: 5,
timeout:0,
clickable: '#upload-button',
dictDefaultMessage: lang['message-drop'],
init: function() {
var _this = this; // For the closure
this.on('success', function(file, response) {
if (response == 'OK') {
loadFolders();
} else {
this.defaultOptions.error(file, response.join('\n'));
}
});
},
headers: {
'Authorization': 'Bearer ' + getUrlParam('token')
},
acceptedFiles: "{{ implode(',', $helper->availableMimeTypes()) }}",
maxFilesize: ({{ $helper->maxUploadSize() }} / 1000)
}
</script>
</body>
</html>
laravel-filemanager/src/Middlewares/MultiUser.php 0000644 00000002121 15243417654 0016142 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Middlewares;
use Closure;
use Illuminate\Support\Str;
use UniSharp\LaravelFilemanager\Lfm;
class MultiUser
{
private $helper;
public function __construct()
{
$this->helper = app(Lfm::class);
}
public function handle($request, Closure $next)
{
if ($this->helper->allowFolderType('user')) {
$previous_dir = $request->input('working_dir');
$working_dir = $this->helper->getRootFolder('user');
if ($previous_dir == null) {
$request->merge(compact('working_dir'));
} elseif (! $this->validDir($previous_dir)) {
$request->replace(compact('working_dir'));
}
}
return $next($request);
}
private function validDir($previous_dir)
{
if (Str::startsWith($previous_dir, $this->helper->getRootFolder('share'))) {
return true;
}
if (Str::startsWith($previous_dir, $this->helper->getRootFolder('user'))) {
return true;
}
return false;
}
}
laravel-filemanager/src/Middlewares/CreateDefaultFolder.php 0000644 00000001423 15243417654 0020061 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Middlewares;
use Closure;
use UniSharp\LaravelFilemanager\Lfm;
use UniSharp\LaravelFilemanager\LfmPath;
class CreateDefaultFolder
{
private $lfm;
private $helper;
public function __construct()
{
$this->lfm = app(LfmPath::class);
$this->helper = app(Lfm::class);
}
public function handle($request, Closure $next)
{
$this->checkDefaultFolderExists('user');
$this->checkDefaultFolderExists('share');
return $next($request);
}
private function checkDefaultFolderExists($type = 'share')
{
if (! $this->helper->allowFolderType($type)) {
return;
}
$this->lfm->dir($this->helper->getRootFolder($type))->createFolder();
}
}
laravel-filemanager/src/LfmStorageRepository.php 0000644 00000003277 15243417654 0016131 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager;
use Illuminate\Support\Facades\Storage;
class LfmStorageRepository
{
private $disk;
private $path;
private $helper;
public function __construct($storage_path, $helper)
{
$this->helper = $helper;
$this->disk = Storage::disk($this->helper->config('disk'));
$this->path = $storage_path;
}
public function __call($function_name, $arguments)
{
// TODO: check function exists
return $this->disk->$function_name($this->path, ...$arguments);
}
public function rootPath()
{
return $this->disk->path('');
}
public function move($new_lfm_path)
{
return $this->disk->move($this->path, $new_lfm_path->path('storage'));
}
public function save($file)
{
$nameint = strripos($this->path, "/");
$nameclean = substr($this->path, $nameint + 1);
$pathclean = substr_replace($this->path, "", $nameint);
$this->disk->putFileAs($pathclean, $file, $nameclean, 'public');
}
public function url($path)
{
return $this->disk->url($path);
}
public function makeDirectory()
{
$this->disk->makeDirectory($this->path, ...func_get_args());
// some filesystems (e.g. Google Storage, S3?) don't let you set ACLs on directories (because they don't exist)
// https://cloud.google.com/storage/docs/naming#object-considerations
if ($this->disk->has($this->path)) {
$this->disk->setVisibility($this->path, 'public');
}
}
public function extension()
{
setlocale(LC_ALL, 'en_US.UTF-8');
return pathinfo($this->path, PATHINFO_EXTENSION);
}
}
laravel-filemanager/src/LfmItem.php 0000644 00000010533 15243417654 0013314 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager;
use Illuminate\Support\Str;
use Symfony\Component\HttpFoundation\File\UploadedFile;
class LfmItem
{
private $lfm;
private $helper;
private $isDirectory;
private $mimeType = null;
private $columns = [];
public $attributes = [];
public function __construct(LfmPath $lfm, Lfm $helper, $isDirectory = false)
{
$this->lfm = $lfm->thumb(false);
$this->helper = $helper;
$this->isDirectory = $isDirectory;
$this->columns = $helper->config('item_columns') ?:
['name', 'url', 'time', 'icon', 'is_file', 'is_image', 'thumb_url'];
}
public function __get($var_name)
{
if (!array_key_exists($var_name, $this->attributes)) {
$function_name = Str::camel($var_name);
$this->attributes[$var_name] = $this->$function_name();
}
return $this->attributes[$var_name];
}
public function fill()
{
foreach ($this->columns as $column) {
$this->__get($column);
}
return $this;
}
public function name()
{
return $this->lfm->getName();
}
public function path($type = 'absolute')
{
return $this->lfm->path($type);
}
public function isDirectory()
{
return $this->isDirectory;
}
public function isFile()
{
return ! $this->isDirectory();
}
/**
* Check a file is image or not.
*
* @param mixed $file Real path of a file or instance of UploadedFile.
* @return bool
*/
public function isImage()
{
return $this->isFile() && Str::startsWith($this->mimeType(), 'image');
}
/**
* Get mime type of a file.
*
* @param mixed $file Real path of a file or instance of UploadedFile.
* @return string
*/
public function mimeType()
{
if (is_null($this->mimeType)) {
$this->mimeType = $this->lfm->mimeType();
}
return $this->mimeType;
}
public function extension()
{
return $this->lfm->extension();
}
public function url()
{
if ($this->isDirectory()) {
return $this->lfm->path('working_dir');
}
return $this->lfm->url();
}
public function size()
{
return $this->isFile() ? $this->humanFilesize($this->lfm->size()) : '';
}
public function time()
{
return $this->lfm->lastModified();
}
public function thumbUrl()
{
if ($this->isDirectory()) {
return asset('vendor/' . Lfm::PACKAGE_NAME . '/img/folder.png');
}
if ($this->isImage()) {
return $this->lfm->thumb($this->hasThumb())->url(true);
}
return null;
}
public function icon()
{
if ($this->isDirectory()) {
return 'fa-folder-o';
}
if ($this->isImage()) {
return 'fa-image';
}
return $this->extension();
}
public function type()
{
if ($this->isDirectory()) {
return trans(Lfm::PACKAGE_NAME . '::lfm.type-folder');
}
if ($this->isImage()) {
return $this->mimeType();
}
return $this->helper->getFileType($this->extension());
}
public function hasThumb()
{
if (!$this->isImage()) {
return false;
}
if (!$this->lfm->thumb()->exists()) {
return false;
}
return true;
}
public function shouldCreateThumb()
{
if (!$this->helper->config('should_create_thumbnails')) {
return false;
}
if (!$this->isImage()) {
return false;
}
if (in_array($this->mimeType(), ['image/gif', 'image/svg+xml'])) {
return false;
}
return true;
}
public function get()
{
return $this->lfm->get();
}
/**
* Make file size readable.
*
* @param int $bytes File size in bytes.
* @param int $decimals Decimals.
* @return string
*/
public function humanFilesize($bytes, $decimals = 2)
{
$size = ['B', 'kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
$factor = floor((strlen($bytes) - 1) / 3);
return sprintf("%.{$decimals}f %s", $bytes / pow(1024, $factor), @$size[$factor]);
}
}
laravel-filemanager/src/config/lfm.php 0000644 00000013136 15243417654 0014004 0 ustar 00 <?php
/*
|--------------------------------------------------------------------------
| Documentation for this config :
|--------------------------------------------------------------------------
| online => http://unisharp.github.io/laravel-filemanager/config
| offline => vendor/unisharp/laravel-filemanager/docs/config.md
*/
return [
/*
|--------------------------------------------------------------------------
| Routing
|--------------------------------------------------------------------------
*/
'use_package_routes' => true,
/*
|--------------------------------------------------------------------------
| Shared folder / Private folder
|--------------------------------------------------------------------------
|
| If both options are set to false, then shared folder will be activated.
|
*/
'allow_private_folder' => true,
// Flexible way to customize client folders accessibility
// If you want to customize client folders, publish tag="lfm_handler"
// Then you can rewrite userField function in App\Handler\ConfigHandler class
// And set 'user_field' to App\Handler\ConfigHandler::class
// Ex: The private folder of user will be named as the user id.
'private_folder_name' => UniSharp\LaravelFilemanager\Handlers\ConfigHandler::class,
'allow_shared_folder' => true,
'shared_folder_name' => 'shares',
/*
|--------------------------------------------------------------------------
| Folder Names
|--------------------------------------------------------------------------
*/
'folder_categories' => [
'file' => [
'folder_name' => 'files',
'startup_view' => 'list',
'max_size' => 50000, // size in KB
'thumb' => true,
'thumb_width' => 80,
'thumb_height' => 80,
'valid_mime' => [
'image/jpeg',
'image/pjpeg',
'image/png',
'image/gif',
'application/pdf',
'text/plain',
],
],
'image' => [
'folder_name' => 'photos',
'startup_view' => 'grid',
'max_size' => 50000, // size in KB
'thumb' => true,
'thumb_width' => 80,
'thumb_height' => 80,
'valid_mime' => [
'image/jpeg',
'image/pjpeg',
'image/png',
'image/gif',
],
],
],
/*
|--------------------------------------------------------------------------
| Pagination
|--------------------------------------------------------------------------
*/
'paginator' => [
'perPage' => 30,
],
/*
|--------------------------------------------------------------------------
| Upload / Validation
|--------------------------------------------------------------------------
*/
'disk' => 'public',
'rename_file' => false,
'rename_duplicates' => false,
'alphanumeric_filename' => false,
'alphanumeric_directory' => false,
'should_validate_size' => false,
'should_validate_mime' => true,
// behavior on files with identical name
// setting it to true cause old file replace with new one
// setting it to false show `error-file-exist` error and stop upload
'over_write_on_duplicate' => false,
// mimetypes of executables to prevent from uploading
'disallowed_mimetypes' => ['text/x-php', 'text/html', 'text/plain'],
// extensions of executables to prevent from uploading
'disallowed_extensions' => ['php', 'html'],
// Item Columns
'item_columns' => ['name', 'url', 'time', 'icon', 'is_file', 'is_image', 'thumb_url'],
/*
|--------------------------------------------------------------------------
| Thumbnail
|--------------------------------------------------------------------------
*/
// If true, image thumbnails would be created during upload
'should_create_thumbnails' => true,
'thumb_folder_name' => 'thumbs',
// Create thumbnails automatically only for listed types.
'raster_mimetypes' => [
'image/jpeg',
'image/pjpeg',
'image/png',
],
'thumb_img_width' => 200, // px
'thumb_img_height' => 200, // px
/*
|--------------------------------------------------------------------------
| File Extension Information
|--------------------------------------------------------------------------
*/
'file_type_array' => [
'pdf' => 'Adobe Acrobat',
'doc' => 'Microsoft Word',
'docx' => 'Microsoft Word',
'xls' => 'Microsoft Excel',
'xlsx' => 'Microsoft Excel',
'zip' => 'Archive',
'gif' => 'GIF Image',
'jpg' => 'JPEG Image',
'jpeg' => 'JPEG Image',
'png' => 'PNG Image',
'ppt' => 'Microsoft PowerPoint',
'pptx' => 'Microsoft PowerPoint',
],
/*
|--------------------------------------------------------------------------
| php.ini override
|--------------------------------------------------------------------------
|
| These values override your php.ini settings before uploading files
| Set these to false to ingnore and apply your php.ini settings
|
| Please note that the 'upload_max_filesize' & 'post_max_size'
| directives are not supported.
*/
'php_ini_overrides' => [
'memory_limit' => '256M',
],
];
laravel-filemanager/src/Exceptions/DuplicateFileNameException.php 0000644 00000000355 15243417654 0021273 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Exceptions;
class DuplicateFileNameException extends \Exception
{
public function __construct()
{
$this->message = trans('laravel-filemanager::lfm.error-file-exist');
}
}
laravel-filemanager/src/Exceptions/ExcutableFileException.php 0000644 00000000316 15243417654 0020471 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Exceptions;
class ExcutableFileException extends \Exception
{
public function __construct()
{
$this->message = 'Invalid file detected';
}
}
laravel-filemanager/src/Exceptions/FileFailedToUploadException.php 0000644 00000000372 15243417654 0021413 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Exceptions;
class FileFailedToUploadException extends \Exception
{
public function __construct($error_code)
{
$this->message = 'File failed to upload. Error code: ' . $error_code;
}
}
laravel-filemanager/src/Exceptions/InvalidMimeTypeException.php 0000644 00000000372 15243417654 0021017 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Exceptions;
class InvalidMimeTypeException extends \Exception
{
public function __construct($mimetype)
{
$this->message = trans('laravel-filemanager::lfm.error-mime') . $mimetype;
}
}
laravel-filemanager/src/Exceptions/EmptyFileException.php 0000644 00000000345 15243417654 0017655 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Exceptions;
class EmptyFileException extends \Exception
{
public function __construct()
{
$this->message = trans('laravel-filemanager::lfm.error-file-empty');
}
}
laravel-filemanager/src/Exceptions/FileSizeExceedConfigurationMaximumException.php 0000644 00000000417 15243417654 0024675 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Exceptions;
class FileSizeExceedConfigurationMaximumException extends \Exception
{
public function __construct($file_size)
{
$this->message = trans('laravel-filemanager::lfm.error-size') . $file_size;
}
}
laravel-filemanager/src/Exceptions/FileSizeExceedIniMaximumException.php 0000644 00000000436 15243417654 0022606 0 ustar 00 <?php
namespace UniSharp\LaravelFilemanager\Exceptions;
class FileSizeExceedIniMaximumException extends \Exception
{
public function __construct()
{
$this->message = trans('laravel-filemanager::lfm.error-file-size', ['max' => ini_get('upload_max_filesize')]);
}
}
laravel-filemanager/.styleci.yml 0000644 00000000015 15243417654 0012726 0 ustar 00 preset: psr2
laravel-filemanager/.gitignore 0000644 00000000106 15243417654 0012442 0 ustar 00 /vendor
composer.lock
/docs/Gemfile.lock
/docs/_site
.DS_Store
/.idea
laravel-filemanager/public/img/loader.svg 0000644 00000002746 15243417654 0014507 0 ustar 00 <!-- By Sam Herbert (@sherb), for everyone. More @ http://goo.gl/7AJzbL -->
<svg width="120" height="30" viewBox="0 0 120 30" xmlns="http://www.w3.org/2000/svg" fill="#fff">
<circle cx="15" cy="15" r="15">
<animate attributeName="r" from="15" to="15"
begin="0s" dur="0.8s"
values="15;9;15" calcMode="linear"
repeatCount="indefinite" />
<animate attributeName="fill-opacity" from="1" to="1"
begin="0s" dur="0.8s"
values="1;.5;1" calcMode="linear"
repeatCount="indefinite" />
</circle>
<circle cx="60" cy="15" r="9" fill-opacity="0.3">
<animate attributeName="r" from="9" to="9"
begin="0s" dur="0.8s"
values="9;15;9" calcMode="linear"
repeatCount="indefinite" />
<animate attributeName="fill-opacity" from="0.5" to="0.5"
begin="0s" dur="0.8s"
values=".5;1;.5" calcMode="linear"
repeatCount="indefinite" />
</circle>
<circle cx="105" cy="15" r="15">
<animate attributeName="r" from="15" to="15"
begin="0s" dur="0.8s"
values="15;9;15" calcMode="linear"
repeatCount="indefinite" />
<animate attributeName="fill-opacity" from="1" to="1"
begin="0s" dur="0.8s"
values="1;.5;1" calcMode="linear"
repeatCount="indefinite" />
</circle>
</svg>
laravel-filemanager/public/img/152px color.png 0000755 00000003677 15243417654 0015213 0 ustar 00 �PNG
IHDR � � � ! pHYs ��~� qIDATx�흽WY�3�|��lG*b�m�AC�[G��!bia��V�ٓ?`ca���vcc)C����P��P����[@\8If������{�{�jB\�Ɇf0́��4�UѸ꛴�;�Њ ,JEn [)]��_�/��`�r�0`�̝�3�ɆfXc���NWE�?��>�E&e�|&ӄ��k��!Sd%]�(�Y��2 h_���� p_��:!^`�8]D%��:��E�cNg��P0B�#��
F(!�P0B��`��
F�2���!�� =���-H����i�=�ᶛ�
��}
�{����[��[V:8�{?���4%(�%$V7$����?%�N�ƨ\�Q. �s�H=n�X(�U�29��ւ��S3H�nR2U�ߩ@K�>`�LQ�b��l^�߭A��h�RCd���%��E{T+�C��2�J
�P��1)Zj�u;T�%SQ��X�X�_�V��U��:���l�vS�gP�Ֆ������C,O��p����70ܱ������gv�g����w*�x8�]y���&�T���2Z��d,b�%V�p
&��|ªLBn�'��k��"����|l��h�OW�,f�O0������',?;[|]h��/���."�7��xR��RV��;u&�@���i�pF�3��L@D��ᮅ����)�N�~���d,>�!:��x���k�x��褉��E0�
��P0B��1RV�G���嶛�Z��>�,~�c�����2��'�g��1y�
Cdb�B|�Y��s�RZ�)�O��&���pqv��Mv��L��)��9$�mJ&K� �0�-��Y<uGR
x�&�iB��D�Ϥ�`�X|�>D
5���2����G{�[��M%.@�R�����O����^#� �ds[��(��o(s���v���51�k�Yt��!R��Jm�2�Q��|��T3���8�3Fm!�E>�`��H_fqƒ�����`�W��R$�R�g�e�^)Y��Hc�,�e����+�`��M�$ y�[|c;t�~�I;��=�C�^�)a�E��%)缺�&7tDA0 <��C$!�`�B �o��Bn����w
6!����ꦜ�[>�)Yx�H�܊��P���(�~�`��7Я?d�O��c�ka��8D���{��_Z��l�`�X���$��l8�i,���-Ɔ���)!�l��&�:f�=�:X؋��u�ܶF�<�l��'�!�� f0=[��\0��+���gH��R.pH�5R����)�v],�_Z�MV�9
��Ô�Lp���q�h��1��S�Qá������7�m>�P��&^6N�H�뼈��Fr��l
���!:��g��6z�V";5����A�%w�v���l���N�_9D
F(�w��5<1SR0]��g
Ec��`Q��'�1SR0caM���u�(m�U`��ă�M����x��Me�R3H��R��T��'w�Ϩ��h��F|�g�R�[�1��g�-��+���X|�!�! �L��Y"�Y�&7M�����7��k����t�c8;!Lt;�TJ����=j��2{��i۶ߛN|�Ew-����p���{{_J�}}
!�]�n,��`T���k~�Ikݖ&�ybyz� }� �{�&��[�Qn���L%#�+���
F#�P0B(�`��B�#�
F)�!�@<�P`3�#l@�q �Є8��Z �2��1]�Q�_b<Ȕ)}�E����1!S�SЄ�ђ��Y �2��U�}D��v�f22I�Pn]�`�2Y��\��P
��+�9�L &�"e#�Heh���ʥ�3X�%"�E IEND�B`� laravel-filemanager/public/img/folder.png 0000644 00000013163 15243417654 0014474 0 ustar 00 �PNG
IHDR �x� :IDATx���{�d�a��߹U���]ƎmKĖ��D!k�%l#H�!��"���8��(dE� `�H�JBd���D�0v^%����PVk��c������ܩ;���LUO���#����շ���s� ;�\�;Yk-��r�$u���(~����Y4{��<.��璤�:[~�I�$}�����
; �o�w|䟿��]yzq�ʷ,���u���Ƥ�ZkZ��q��5���.I�ɪ�v�$�$��F�2���}�����&�}oזP�d(�LJ:~o�d�[z}y ��ǧ��K��$���SI���A�}t\�I�2>t��AYY� � ��s��֫�����'��-�e�LR�
m��oZ��ˡ@�5�
�C��E`Ɓ�̶O�$�6�:��)ZLj(-fC�^�$z����$?��c���fNE �� ���_{����^\���e١��5��Z��Z�Rҕ�ZKj��|̇��<��-���?��ah��I�Ѿ�$�f ���Z��f�:O��%���2���$y6ɏ����IND �c ��g�]�o��?��{�ڥ+e��I)�8���Ԛ.�LS𥶭������d�395馯m�P��%����ma
��}|�no�&W�D e�Smg������ϴ�}xPz�
��@�����_���ko��b�uW�!���i<NW���Z�kCF�Ɓ>u����~=�Y9�A��?mѷc�Ph[���:�4��u��O3 ]�w6`i�&f���'I�A�g2p�A� �u�G�}���-���u��o��C)���)Yt)��ZSKڪ~ܧ)�2$C��_�v�^�j�g�}��63�) ڴ�|!-���6sЍ�a:p�� Щۮ��K��$_��o��O,.�K8pt\�w������z����tH����j-%�S�40�Ӂzm�j����6�n���,2;x���83K0�*�;+0
�u��`� ��I�u^lpF��f�I�}���x<�����q�|m����������s���"�cI�3�l�ַ_���"�[���l�b��U�tz^,���I�i{>y� \� h[p?������?�1�����$r0 �� ����۳��7�s��e<N��� ��Jv+�~�?�䧒<9[�����ehϟ�M�g����A,��7�L�\˗�H��L��AoI�/[T���|8� h��7��J{����1�$ߚ�Cm� �\�nz���g<�}m�����c�L�l��$?�R� c`��?��~[[�l��K{I~8ɛڌӫE���9���'����-<�鹴�8���I��+=��:p>p-ɟ�슻���pL��>�����㺴h m |m�o<���4�p%�&y��q}�E���<ն�l���Y����?���&Y� xt�
m����sxH�73���@�G _?��7��6M�j�SO�ɸ+� ����l� ۞�_%��$/�� � �϶��<"��"�{3^ h�J� � ���y�o��x���&�j� �_ �����
��I~(�pt\��x �wL�VI�R��K���qݷx � ��yT�,�$I��x��� \�Y��U�$GIޓ�E�� ���>ɛ���$O�ܫ�3��]��˦ښ�D�2�� oK�����Y�"X��E�xx��D@f��$���kO��0 3 <&��-�;ɭ$�/\e �1��G@߶��E��䭇�K��{ ��E{�O�W����q�`�k��E�
ص��F�O$yw[�.,b.�z&����\�K�J��ű,� <f!0=���<=M��I>��W���Ã�1�x--v0z������J�oi����[̚ ^��$7�|1�o$�T��O���ƣ�z5���:�@�I�y�B������?�sz �)C��d<�'�/���>��,���g�` 3���e>�Ӏ�L�M�����H�Ç���]ɸ�̾�7 �;������$�,�G����Og���A�ڕJMo��6�糊�
�5�I>���w�m&`��Սh ��
-ޑ���E�"Iy�1 p�C��R�O%��G���^�lk�t��_ x�1r~��t����X&Ynk� <�ـE{�O�ѣ�����S��3� \�ـiL����q}O�
��� .N,Z ��$�&���߿0�w ���|{��}xPn�Y��[�� �΄ p�]�����>��^wYf ܿ:�
xC�d�B�Fwt[�� |C��1zH�$��f.t ; ��,���-�\� �
� ��Y�iW���|�E�'<n ��Y�$��I��E�'=f ��Y�!��q��)� l,���h lc�] \zwR���s�$���.I�c�wIJI���ٷɺ�0~ߢ}>I���PgW�j�Օ���_7��t�C]��R���W �n������v?Jߞ��k���e��_��h�+u�B�i����n���_;�q����]���Sg��N����ins�\���&]q"��� ��� �xq��r��ntS׃��z\m�K�Z(�P�ҽ�A�ξ�+�vjh� 5���Pׯ Z��H���ǦA���¢��)ҍa0�_�:@jY��E�\֧�,f�0����wHIN�(�z��B����iw&|2-�v�5��9�m= ^q��jZ!դ�q�2�\kVm�����On��������-��ֻ[ �W_-��"��i�:�k�Z�V�}Yo�t��i�nZ)N+�a���M�7��z�Ϛֺw?ߵ��6b��_���lm5M:Ͷ�3�
LYߟڶ6��Z׃ސ�1�ʴX�Ͼ�{nc�Z-�][fm)�f�KJ�� UK�R3����2=68�V�|0�5�<��$]{�iK|��� ==~ev�k���|��o������'��
��q��dQ��E�Ģ�+�췊�Kו5����RSK�P�_^~&`���������;]W[ �,K��U��W�qZ�_�u�s/Y���֫���Q�v 6gh��$'}r=5Ͻ4dQ������u�<�,)����rw�!�l#��30�U��Pj�"%}�w�3�%����n�9�x��5�ҝ�/�YeQ��O,�U���6;N��Z��q|���w��k �ZƩ�$�Rr����>/�� 솓��w��ruY�5O.��uY�}�5%Cj�P���F�V.�ߝ�]����/��[/���I/�j~���|�U�4��v,\;ƫn~�$3 ӁP�����U��`��Z\_�|�S�vM�2��A�۲���I�{ZO���)����O�� $���8>�:�5��=�v~4��鴵�$}���Z���Os��@�Y��䷯�fh�����[�f�J w/0R۩5�����? �b%���Z_;��p�<�:Y���Un�����V?����� ���m��@�ˁ�t���}^�c�? �V/ܩy�v�������z��NW1*���>ŋz �kVJ���Z
c����p�" ��[�T�? �u)y�֪]���� t��7��qj� ԍӚ�w�,K��Bb6 ���o����Qڱt��,.�A�]��Z��p� x�Y�U͍�p�e�/l $�Ol���f�x��s�7 C_srZ� x��������fg�7 �W��`� 6�t�����3 ��q��? ؠ�����=p;/3 p�m) � � �s�* � �0X� ��3 �Y �{�, � 0 �8 �` � ; � ���� `�� ; � ���� ��3 � ��@� v0 L ��@'