Passed
Push — master ( b8147c...403ced )
by Curtis
11:47 queued 05:39
created

CompanyFormIndi::create()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 7
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
cc 1
eloc 5
c 1
b 0
f 1
nc 1
nop 0
dl 0
loc 7
rs 10
1
<?php
2
3
namespace App\Forms\Builders\enso\Companies;
4
5
use App\Models\enso\companies\Company;
6
use LaravelEnso\Companies\Enums\Statuses;
7
use LaravelEnso\Forms\Services\Form;
8
9
class CompanyFormIndi
10
{
11
    protected const TemplatePath = __DIR__.'/../../../Templates/enso/companies/companyindi.json';
12
13
    protected Form $form;
14
15
    public function __construct()
16
    {
17
        $this->form = new Form(static::TemplatePath);
18
    }
19
20
    public function create()
21
    {
22
        return $this->form->readonly('mandatary')
23
            ->value('status', Statuses::Active)
24
            ->meta('mandatary', 'custom', false)
25
            ->meta('mandatary', 'placeholder', 'N/A')
26
            ->create();
27
    }
28
29
    public function edit(Company $company)
30
    {
31
        return $this->form
32
            ->value('mandatary', optional($company->mandatary())->id)
33
            ->edit($company);
34
    }
35
}
36