Completed
Pull Request — master (#79)
by Sebastian
05:27 queued 58s
created

UpdateMedia::updateMedia()   B

Complexity

Conditions 4
Paths 4

Size

Total Lines 22
Code Lines 12

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 4
eloc 12
nc 4
nop 2
dl 0
loc 22
rs 8.9197
c 0
b 0
f 0
1
<?php
2
3
namespace App\Http\Controllers\Back\Updaters;
4
5
use Illuminate\Database\Eloquent\Model;
6
use Illuminate\Foundation\Http\FormRequest;
7
use Spatie\MediaLibrary\Media;
8
9
trait UpdateMedia
10
{
11
    protected function updateMedia(Model $model, FormRequest $request)
12
    {
13
        if (! isset($model->mediaLibraryCollections)) {
14
            return;
15
        }
16
17
        foreach ($model->mediaLibraryCollections as $collection) {
18
            if (! $request->has($collection)) {
19
                continue;
20
            }
21
22
            $updatedMedia = $model->updateMedia(
23
                json_decode($request->get($collection), true),
24
                $collection
25
            );
26
27
            collect($updatedMedia)->each(function (Media $media) {
28
                $media->setCustomProperty('temp', false);
29
                $media->save();
30
            });
31
        }
32
    }
33
}
34