1 | <?php |
||
7 | class FineUploader extends Api |
||
8 | { |
||
9 | /** |
||
10 | * receive. |
||
11 | * |
||
12 | * @param string $name |
||
13 | * @return \Symfony\Component\HttpFoundation\File\UploadedFile |
||
14 | * |
||
15 | * @throws \Recca0120\Upload\Exceptions\ChunkedResponseException |
||
16 | */ |
||
17 | 3 | public function receive($name) |
|
18 | { |
||
19 | 3 | $file = $this->request->file($name); |
|
20 | 3 | if ($this->request->has('qqtotalparts') === false) { |
|
21 | 1 | return $file; |
|
22 | } |
||
23 | |||
24 | 2 | $completed = is_null($file) === true; |
|
25 | 2 | $originalName = $this->request->get('qqfilename'); |
|
26 | 2 | $qqtotalparts = (int) $this->request->get('qqtotalparts', 1); |
|
27 | 2 | $qqpartindex = (int) $this->request->get('qqpartindex'); |
|
28 | 2 | $uuid = $this->request->get('qquuid'); |
|
29 | |||
30 | 2 | $this->chunkFile |
|
31 | 2 | ->setToken($uuid) |
|
32 | 2 | ->setChunkPath($this->chunkPath()) |
|
33 | 2 | ->setStoragePath($this->storagePath()) |
|
34 | 2 | ->setName($originalName); |
|
35 | |||
36 | 2 | if ($completed === false) { |
|
37 | 1 | $this->chunkFile->appendStream($file->getRealPath(), 0, $qqpartindex); |
|
38 | } |
||
39 | |||
40 | 2 | return $completed === true |
|
41 | 1 | ? $this->chunkFile->createUploadedFile($qqtotalparts) |
|
42 | 1 | : $this->chunkFile->throwException([ |
|
43 | 1 | 'success' => true, |
|
44 | 2 | 'uuid' => $uuid, |
|
45 | ]); |
||
46 | } |
||
47 | |||
48 | /** |
||
49 | * completedResponse. |
||
50 | * |
||
51 | * @param \Illuminate\Http\JsonResponse $response |
||
52 | * @return \Illuminate\Http\JsonResponse |
||
53 | */ |
||
54 | public function completedResponse(JsonResponse $response) |
||
63 | } |
||
64 |