RegenerateExportResultAction::handle()   A
last analyzed

Complexity

Conditions 3
Paths 3

Size

Total Lines 11
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 12

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 3
eloc 5
c 1
b 0
f 0
nc 3
nop 2
dl 0
loc 11
ccs 0
cts 6
cp 0
crap 12
rs 10
1
<?php
2
3
namespace NovaExportConfiguration\Nova\Actions;
4
5
use Illuminate\Bus\Queueable;
6
use Illuminate\Queue\InteractsWithQueue;
7
use Illuminate\Support\Collection;
8
use Laravel\Nova\Actions\Action;
9
use Laravel\Nova\Fields\ActionFields;
10
use Laravel\Nova\Http\Requests\NovaRequest;
11
use NovaExportConfiguration\Models\ExportConfig;
12
13
class RegenerateExportResultAction extends Action
14
{
15
    use InteractsWithQueue, Queueable;
16
17
    public $showOnIndex = false;
18
19
    public $showInline = true;
20
21
    public $showOnDetail = true;
22
23
    public function name()
24
    {
25
        return __('Regenerate result');
26
    }
27
28
    public function handle(ActionFields $fields, Collection $models)
29
    {
30
        foreach ($models as $model) {
31
            if ($model instanceof ExportConfig) {
32
                $model->updateConfigurationContent(true);
33
34
                return Action::message(__('Data sent to queue, please wait 5-10 mins.'));
35
            }
36
        }
37
38
        return Action::danger(__('No models found.'));
39
    }
40
41
    public function fields(NovaRequest $request)
42
    {
43
        return [];
44
    }
45
}
46