RegenerateExportResultAction   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 31
Duplicated Lines 0 %

Test Coverage

Coverage 0%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 12
c 1
b 0
f 0
dl 0
loc 31
ccs 0
cts 10
cp 0
rs 10
wmc 5

3 Methods

Rating   Name   Duplication   Size   Complexity  
A name() 0 3 1
A handle() 0 11 3
A fields() 0 3 1
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