Skip to content

Commit ee968f4

Browse files
committed
pdf and fixes
1 parent f4a4ca6 commit ee968f4

File tree

11 files changed

+78
-76
lines changed

11 files changed

+78
-76
lines changed

README.md

Lines changed: 11 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@
1212

1313
**Vue.js Frontend:** [alexusmai/vue-laravel-file-manager](https://github.com/alexusmai/vue-laravel-file-manager)
1414

15-
**--- Laravel 7 support added but not fully tested!! ---**
16-
1715
## Documentation
1816

1917
[Laravel File Manager Docs](./docs/index.md)
@@ -66,32 +64,25 @@
6664
* Events (v2.2)
6765
* Thumbnails lazy load
6866
* Dynamic configuration (v2.4)
69-
* Supported locales : ru, en, ar, sr, cs, de, es, nl, zh-CN, fa, it, tr, fr, pt_BR
70-
71-
## In a new version 2.4
67+
* Supported locales : ru, en, ar, sr, cs, de, es, nl, zh-CN, fa, it, tr, fr, pt-BR, zh-TW
7268

73-
Now you can create your own config repositories, it will allow to change your configuration dynamically.
69+
## In a new version 2.5
7470

75-
How to do it:
76-
77-
Create new class - example - TestConfigRepository
71+
You can change Route prefix (default - 'file-manager')
7872

7973
```php
80-
namespace App\Http;
81-
82-
use Alexusmai\LaravelFileManager\Services\ConfigService\ConfigRepository;
83-
84-
class TestConfigRepository implements ConfigRepository
85-
{
86-
// implement all methods from interface
87-
}
74+
/**
75+
* LFM Route prefix
76+
* !!! WARNING - if you change it, you should compile frontend with new prefix(baseUrl) !!!
77+
*/
78+
'routePrefix' => 'file-manager',
8879
```
8980

90-
For example see [src/Services/ConfigService/DefaultConfigRepository.php](https://github.com/alexusmai/laravel-file-manager/blob/master/src/Services/ConfigService/DefaultConfigRepository.php)
81+
Open PDF files in a new tab (test) - use 'double-click'
9182

92-
## Upgrading to version 2.4
83+
## Upgrading to version 2.5
9384

94-
Update pre-compiled css and js files and config file - file-manager.php
85+
Update pre-compiled css and js files and config file (backup your settings first!!) - file-manager.php
9586

9687

9788
```php
@@ -101,23 +92,3 @@ php artisan vendor:publish --tag=fm-config --force
10192
php artisan vendor:publish --tag=fm-assets --force
10293
```
10394

104-
If you use the ACL, now you don't need to add the acl middleware to configuration.
105-
106-
```php
107-
//======= In old versions ==========
108-
'acl' => true,
109-
110-
// add acl middleware to your array
111-
'middleware' => ['web', 'fm-acl'],
112-
113-
//======= In a new version =========
114-
'acl' => true,
115-
116-
'middleware' => ['web'],
117-
```
118-
119-
## Contributors
120-
121-
[![](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/images/0)](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/links/0)[![](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/images/1)](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/links/1)[![](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/images/2)](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/links/2)[![](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/images/3)](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/links/3)[![](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/images/4)](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/links/4)[![](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/images/5)](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/links/5)[![](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/images/6)](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/links/6)[![](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/images/7)](https://sourcerer.io/fame/alexusmai/alexusmai/laravel-file-manager/links/7)
122-
123-

docs/events.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ Example:
119119
$event->disk(),
120120
$event->newName(),
121121
$event->oldName(),
122+
$event->type(), // 'file' or 'dir'
122123
]);
123124
}
124125
);

resources/assets/css/file-manager.css

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/assets/js/file-manager.js

Lines changed: 11 additions & 18 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/assets/js/file-manager.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Controllers/FileManagerController.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121
use Illuminate\Routing\Controller;
2222
use Illuminate\Http\Request;
2323

24+
use function GuzzleHttp\Promise\all;
25+
2426
class FileManagerController extends Controller
2527
{
2628
/**

src/Events/Rename.php

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
namespace Alexusmai\LaravelFileManager\Events;
44

55
use Illuminate\Http\Request;
6+
use Storage;
67

78
class Rename
89
{
@@ -21,6 +22,11 @@ class Rename
2122
*/
2223
private $oldName;
2324

25+
/**
26+
* @var string
27+
*/
28+
private $type;
29+
2430
/**
2531
* Rename constructor.
2632
*
@@ -31,6 +37,11 @@ public function __construct(Request $request)
3137
$this->disk = $request->input('disk');
3238
$this->newName = $request->input('newName');
3339
$this->oldName = $request->input('oldName');
40+
41+
$info = Storage::disk($request->input('disk'))
42+
->getMetadata($request->input('oldName'));
43+
44+
$this->type = $info['type'];
3445
}
3546

3647
/**
@@ -56,4 +67,12 @@ public function oldName()
5667
{
5768
return $this->oldName;
5869
}
70+
71+
/**
72+
* @return string
73+
*/
74+
public function type()
75+
{
76+
return $this->type;
77+
}
5978
}

src/Middleware/FileManagerACL.php

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,8 @@ class FileManagerACL
5858
/**
5959
* FileManagerACL constructor.
6060
*
61-
* @param Request $request
62-
* @param ACL $acl
61+
* @param Request $request
62+
* @param ACL $acl
6363
*/
6464
public function __construct(Request $request, ACL $acl)
6565
{
@@ -74,8 +74,8 @@ public function __construct(Request $request, ACL $acl)
7474
/**
7575
* Handle an incoming request.
7676
*
77-
* @param \Illuminate\Http\Request $request
78-
* @param \Closure $next
77+
* @param \Illuminate\Http\Request $request
78+
* @param \Closure $next
7979
*
8080
* @return mixed
8181
*/
@@ -84,13 +84,13 @@ public function handle($request, Closure $next)
8484
$routeName = $request->route()->getName();
8585

8686
// if ACL is OFF or route name wasn't found
87-
if (!resolve(ConfigRepository::class)->getAcl()
88-
|| !array_key_exists($routeName, self::CHECKERS)
87+
if ( ! resolve(ConfigRepository::class)->getAcl()
88+
|| ! array_key_exists($routeName, self::CHECKERS)
8989
) {
9090
return $next($request);
9191
}
9292

93-
if (!call_user_func([$this, self::CHECKERS[$routeName]])) {
93+
if ( ! call_user_func([$this, self::CHECKERS[$routeName]])) {
9494
return $this->errorMessage();
9595
}
9696

@@ -207,8 +207,7 @@ protected function checkDelete()
207207
$firstFall = Arr::first($this->request->input('items'),
208208
function ($value) {
209209
// need r/w access
210-
return $this->acl->getAccessLevel($this->disk, $value['path'])
211-
!== 2;
210+
return $this->acl->getAccessLevel($this->disk, $value['path']) !== 2;
212211
}, null);
213212

214213
if ($firstFall) {
@@ -234,14 +233,12 @@ protected function checkPaste()
234233
// can user copy or cut selected files and folders
235234
$checkDirs = Arr::first($clipboard['directories'],
236235
function ($value) use ($clipboard, $getLevel) {
237-
return $this->acl->getAccessLevel($clipboard['disk'], $value)
238-
< $getLevel;
236+
return $this->acl->getAccessLevel($clipboard['disk'], $value) < $getLevel;
239237
}, null);
240238

241239
$checkFiles = Arr::first($clipboard['files'],
242240
function ($value) use ($clipboard, $getLevel) {
243-
return $this->acl->getAccessLevel($clipboard['disk'], $value)
244-
< $getLevel;
241+
return $this->acl->getAccessLevel($clipboard['disk'], $value) < $getLevel;
245242
}, null);
246243

247244
// can user write to selected folder?

src/Services/ConfigService/ConfigRepository.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,14 @@
99
*/
1010
interface ConfigRepository
1111
{
12+
/**
13+
* LFM Route prefix
14+
* !!! WARNING - if you change it, you should compile frontend with new prefix(baseUrl) !!!
15+
*
16+
* @return string
17+
*/
18+
public function getRoutePrefix(): string;
19+
1220
/**
1321
* Get disk list
1422
*

src/Services/ConfigService/DefaultConfigRepository.php

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,17 @@
99
*/
1010
class DefaultConfigRepository implements ConfigRepository
1111
{
12+
/**
13+
* LFM Route prefix
14+
* !!! WARNING - if you change it, you should compile frontend with new prefix(baseUrl) !!!
15+
*
16+
* @return string
17+
*/
18+
public function getRoutePrefix(): string
19+
{
20+
return config('file-manager.routePrefix');
21+
}
22+
1223
/**
1324
* Get disk list
1425
*

0 commit comments

Comments
 (0)