Passed
Push — master ( 919d61...4a3edd )
by Thomas
03:54 queued 02:09
created

FluentColumns::booleanColumn()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
dl 0
loc 4
c 0
b 0
f 0
ccs 0
cts 4
cp 0
rs 10
cc 1
eloc 2
nc 1
nop 1
crap 2
1
<?php
2
3
namespace Webfactor\Laravel\Backpack\FluentSyntax\Traits;
4
5
use Webfactor\Laravel\Backpack\FluentSyntax\Columns\ArrayColumn;
6
use Webfactor\Laravel\Backpack\FluentSyntax\Columns\ArrayCountColumn;
7
use Webfactor\Laravel\Backpack\FluentSyntax\Columns\BooleanColumn;
8
use Webfactor\Laravel\Backpack\FluentSyntax\Columns\CheckColumn;
9
use Webfactor\Laravel\Backpack\FluentSyntax\Columns\DateColumn;
10
use Webfactor\Laravel\Backpack\FluentSyntax\Columns\DatetimeColumn;
11
use Webfactor\Laravel\Backpack\FluentSyntax\Columns\ImageColumn;
12
use Webfactor\Laravel\Backpack\FluentSyntax\Columns\ModelFunctionAttributeColumn;
13
use Webfactor\Laravel\Backpack\FluentSyntax\Columns\ModelFunctionColumn;
14
use Webfactor\Laravel\Backpack\FluentSyntax\Columns\NumberColumn;
15
use Webfactor\Laravel\Backpack\FluentSyntax\Columns\RadioColumn;
16
use Webfactor\Laravel\Backpack\FluentSyntax\Columns\SelectColumn;
17
use Webfactor\Laravel\Backpack\FluentSyntax\Columns\SelectMultipleColumn;
18
use Webfactor\Laravel\Backpack\FluentSyntax\Columns\TextColumn;
19
use Webfactor\Laravel\Backpack\FluentSyntax\Columns\ViewColumn;
20
use Webfactor\Laravel\Backpack\FluentSyntax\Contracts\CrudColumnInterface;
21
22
trait FluentColumns
23
{
24
    public function addColumns(array $columns)
25
    {
26
        foreach ($columns as $column) {
27
            $this->addColumn($column);
28
        }
29
    }
30
31
    public function addColumn(CrudColumnInterface $column)
0 ignored issues
show
Documentation introduced by
The return type could not be reliably inferred; please add a @return annotation.

Our type inference engine in quite powerful, but sometimes the code does not provide enough clues to go by. In these cases we request you to add a @return annotation as described here.

Loading history...
32
    {
33
        return $this->crud->addColumn($column->make());
0 ignored issues
show
Bug introduced by
The property crud does not exist. Did you maybe forget to declare it?

In PHP it is possible to write to properties without declaring them. For example, the following is perfectly valid PHP code:

class MyClass { }

$x = new MyClass();
$x->foo = true;

Generally, it is a good practice to explictly declare properties to avoid accidental typos and provide IDE auto-completion:

class MyClass {
    public $foo;
}

$x = new MyClass();
$x->foo = true;
Loading history...
34
    }
35
36
    public function arrayColumn(string $name): ArrayColumn
37
    {
38
        return new ArrayColumn($name);
39
    }
40
41
    public function arrayCountColumn(string $name): ArrayCountColumn
42
    {
43
        return new ArrayCountColumn($name);
44
    }
45
46
    public function booleanColumn(string $name): BooleanColumn
47
    {
48
        return new BooleanColumn($name);
49
    }
50
51
    public function checkColumn(string $name): CheckColumn
52
    {
53
        return new CheckColumn($name);
54
    }
55
56
    public function dateColumn(string $name): DateColumn
57
    {
58
        return new DateColumn($name);
59
    }
60
61
    public function DatetimeColumn(string $name): DatetimeColumn
0 ignored issues
show
Coding Style introduced by
This method is not in camel caps format.

This check looks for method names that are not written in camelCase.

In camelCase names are written without any punctuation, the start of each new word being marked by a capital letter. Thus the name database connection seeker becomes databaseConnectionSeeker.

Loading history...
62
    {
63
        return new DatetimeColumn($name);
64
    }
65
66
    public function imageColumn(string $name): ImageColumn
67
    {
68
        return new ImageColumn($name);
69
    }
70
71
    public function modelFunctionColumn(string $name, string $function): ModelFunctionColumn
72
    {
73
        return new ModelFunctionColumn($name, $function);
74
    }
75
76
    public function modelFunctionAttributeColumn(string $name, string $function, string $attribute): ModelFunctionAttributeColumn
0 ignored issues
show
Coding Style introduced by
This line exceeds maximum limit of 120 characters; contains 129 characters

Overly long lines are hard to read on any screen. Most code styles therefor impose a maximum limit on the number of characters in a line.

Loading history...
77
    {
78
        return new ModelFunctionAttributeColumn($name, $function, $attribute);
79
    }
80
81
    public function numberColumn(string $name): NumberColumn
82
    {
83
        return new NumberColumn($name);
84
    }
85
86
    public function radioColumn(string $name, array $options): RadioColumn
87
    {
88
        return new RadioColumn($name, $options);
89
    }
90
91
    public function selectColumn(string $name, string $model, string $relation, string $attribute): SelectColumn
92
    {
93
        return new SelectColumn($name, $model, $relation, $attribute);
94
    }
95
96
    public function selectMultipleColumn(string $name, string $model, string $relation, string $attribute): SelectMultipleColumn
0 ignored issues
show
Coding Style introduced by
This line exceeds maximum limit of 120 characters; contains 128 characters

Overly long lines are hard to read on any screen. Most code styles therefor impose a maximum limit on the number of characters in a line.

Loading history...
97
    {
98
        return new SelectMultipleColumn($name, $model, $relation, $attribute);
99
    }
100
101
    public function textColumn(string $name): TextColumn
102
    {
103
        return new TextColumn($name);
104
    }
105
106
    public function viewColumn(string $name, string $view): ViewColumn
107
    {
108
        return new ViewColumn($name, $view);
109
    }
110
}
111