EditorMDController.php
1.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
namespace Dcat\Admin\Http\Controllers;
use Illuminate\Filesystem\FilesystemAdapter;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Storage;
use Symfony\Component\HttpFoundation\File\UploadedFile;
class EditorMDController
{
public function upload(Request $request)
{
$file = $request->file('editormd-image-file');
$dir = trim($request->get('dir'), '/');
$disk = $this->disk();
$newName = $this->generateNewName($file);
$disk->putFileAs($dir, $file, $newName);
return ['success' => 1, 'url' => $disk->url("{$dir}/$newName")];
}
protected function generateNewName(UploadedFile $file)
{
return uniqid(md5($file->getClientOriginalName())).'.'.$file->getClientOriginalExtension();
}
/**
* @return \Illuminate\Contracts\Filesystem\Filesystem|FilesystemAdapter
*/
protected function disk()
{
$disk = request()->get('disk') ?: config('admin.upload.disk');
return Storage::disk($disk);
}
}