Completed
Push — develop ( 545fca...728614 )
by Abdelrahman
01:45
created

MediaDataTable::getBuilderParameters()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 16
Code Lines 10

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 16
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 10
nc 1
nop 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Cortex\Foundation\DataTables;
6
7
use Spatie\MediaLibrary\Models\Media;
8
use Cortex\Foundation\Transformers\MediaTransformer;
9
10
class MediaDataTable extends AbstractDataTable
11
{
12
    /**
13
     * {@inheritdoc}
14
     */
15
    protected $model = Media::class;
16
17
    /**
18
     * {@inheritdoc}
19
     */
20
    protected $transformer = MediaTransformer::class;
21
22
    /**
23
     * Get the query object to be processed by dataTables.
24
     *
25
     * @return \Illuminate\Database\Eloquent\Builder|\Illuminate\Database\Query\Builder|\Illuminate\Support\Collection
0 ignored issues
show
Documentation introduced by
Consider making the return type a bit more specific; maybe use \Illuminate\Database\Que...tabase\Eloquent\Builder.

This check looks for the generic type array as a return type and suggests a more specific type. This type is inferred from the actual code.

Loading history...
26
     */
27
    public function query()
28
    {
29
        $query = $this->resource->media()->orderBy('order_column', 'ASC');
0 ignored issues
show
Documentation introduced by
The property resource does not exist on object<Cortex\Foundation...aTables\MediaDataTable>. Since you implemented __get, maybe consider adding a @property annotation.

Since your code implements the magic getter _get, this function will be called for any read access on an undefined variable. You can add the @property annotation to your class or interface to document the existence of this variable.

<?php

/**
 * @property int $x
 * @property int $y
 * @property string $text
 */
class MyLabel
{
    private $properties;

    private $allowedProperties = array('x', 'y', 'text');

    public function __get($name)
    {
        if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
            return $properties[$name];
        } else {
            return null;
        }
    }

    public function __set($name, $value)
    {
        if (in_array($name, $this->allowedProperties)) {
            $properties[$name] = $value;
        } else {
            throw new \LogicException("Property $name is not defined.");
        }
    }

}

If the property has read access only, you can use the @property-read annotation instead.

Of course, you may also just have mistyped another name, in which case you should fix the error.

See also the PhpDoc documentation for @property.

Loading history...
30
31
        return $this->applyScopes($query);
32
    }
33
34
    /**
35
     * Get default builder parameters.
36
     *
37
     * @return array
0 ignored issues
show
Documentation introduced by
Consider making the return type a bit more specific; maybe use array<string,boolean|str...|array<string,string>>>.

This check looks for the generic type array as a return type and suggests a more specific type. This type is inferred from the actual code.

Loading history...
38
     */
39
    protected function getBuilderParameters()
40
    {
41
        return [
42
            'keys' => true,
43
            'autoWidth' => false,
44
            'dom' => "<'row'<'col-sm-6'B><'col-sm-6'f>> <'row'r><'row'<'col-sm-12't>> <'row'<'col-sm-5'i><'col-sm-7'p>>",
0 ignored issues
show
Coding Style introduced by
This line exceeds maximum limit of 120 characters; contains 121 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...
45
            'buttons' => [
46
                'print', 'reset', 'reload', 'export',
47
                ['extend' => 'colvis', 'text' => '<i class="fa fa-columns"></i> '.trans('cortex/foundation::common.columns').' <span class="caret"/>'],
0 ignored issues
show
Coding Style introduced by
This line exceeds maximum limit of 120 characters; contains 151 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...
48
                ['extend' => 'pageLength', 'text' => '<i class="fa fa-list-ol"></i> '.trans('cortex/foundation::common.limit').' <span class="caret"/>'],
0 ignored issues
show
Coding Style introduced by
This line exceeds maximum limit of 120 characters; contains 153 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...
49
            ],
50
            'initComplete' => 'function (settings) {
51
                implicitForms.initialize();
52
            }',
53
        ];
54
    }
55
56
    /**
57
     * Get columns.
58
     *
59
     * @return array
0 ignored issues
show
Documentation introduced by
Consider making the return type a bit more specific; maybe use array<string,array>.

This check looks for the generic type array as a return type and suggests a more specific type. This type is inferred from the actual code.

Loading history...
60
     */
61
    protected function getColumns()
62
    {
63
        return [
64
            'name' => ['title' => trans('cortex/foundation::common.name'), 'responsivePriority' => 0],
65
            'file_name' => ['title' => trans('cortex/foundation::common.file_name')],
66
            'mime_type' => ['title' => trans('cortex/foundation::common.mime_type')],
67
            'size' => ['title' => trans('cortex/foundation::common.size')],
68
            'created_at' => ['title' => trans('cortex/foundation::common.created_at'), 'render' => "moment(data).format('MMM Do, YYYY')"],
0 ignored issues
show
Coding Style introduced by
This line exceeds maximum limit of 120 characters; contains 138 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...
69
            'updated_at' => ['title' => trans('cortex/foundation::common.updated_at'), 'render' => "moment(data).format('MMM Do, YYYY')"],
0 ignored issues
show
Coding Style introduced by
This line exceeds maximum limit of 120 characters; contains 138 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...
70
            'delete' => ['title' => trans('cortex/foundation::common.delete'), 'searchable' => false, 'render' => '"<a href=\""+data+"\" data-method=\"delete\" data-token=\"'.csrf_token().'\" class=\"close\"><span class=\"text-danger fa fa-close\"></span></a>"'],
0 ignored issues
show
Coding Style introduced by
This line exceeds maximum limit of 120 characters; contains 263 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...
71
        ];
72
    }
73
}
74