GitHub Access Token became invalid

It seems like the GitHub access token used for retrieving details about this repository from GitHub became invalid. This might prevent certain types of inspections from being run (in particular, everything related to pull requests).
Please ask an admin of your repository to re-new the access token on this website.

Chart::addDataSet()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
cc 1
eloc 2
c 2
b 0
f 0
nc 1
nop 1
dl 0
loc 5
rs 10
1
<?php
2
3
namespace Halfpastfour\PHPChartJS;
4
5
use Halfpastfour\PHPChartJS\Renderer\Html;
6
7
/**
8
 * Class Chart
9
 *
10
 * @package Halfpastfour\PHPChartJS
11
 */
12
abstract class Chart implements ChartInterface
13
{
14
    /**
15
     * The internal type of chart.
16
     */
17
    const TYPE = null;
18
19
    /**
20
     * The list of models that should be used for this chart type.
21
     */
22
    const MODEL = [
23
        'dataset' => DataSet::class,
24
        'options' => Options::class,
25
    ];
26
27
    /**
28
     * @var string
29
     */
30
    protected $id;
31
32
    /**
33
     * @var int
34
     */
35
    protected $height;
36
37
    /**
38
     * @var int
39
     */
40
    protected $width;
41
42
    /**
43
     * @var string
44
     */
45
    protected $title;
46
47
    /**
48
     * @var LabelsCollection
49
     */
50
    protected $labels;
51
52
    /**
53
     * @var Options
54
     */
55
    protected $options;
56
57
    /**
58
     * @var DataSetCollection
59
     */
60
    protected $dataSets;
61
62
    /**
63
     * @return string
64
     */
65
    public function getId()
66
    {
67
        if (is_null($this->id)) {
0 ignored issues
show
introduced by
The condition is_null($this->id) is always false.
Loading history...
68
            $this->id = uniqid('chart');
69
        }
70
71
        return $this->id;
72
    }
73
74
    /**
75
     * @param string $id
76
     *
77
     * @return Chart
78
     */
79
    public function setId($id)
80
    {
81
        $this->id = strval($id);
82
83
        return $this;
84
    }
85
86
    /**
87
     * @return int
88
     */
89
    public function getHeight()
90
    {
91
        return $this->height;
92
    }
93
94
    /**
95
     * @param int $height
96
     *
97
     * @return Chart
98
     */
99
    public function setHeight($height)
100
    {
101
        $this->height = intval($height);
102
103
        return $this;
104
    }
105
106
    /**
107
     * @return int
108
     */
109
    public function getWidth()
110
    {
111
        return $this->width;
112
    }
113
114
    /**
115
     * @param int $width
116
     *
117
     * @return Chart
118
     */
119
    public function setWidth($width)
120
    {
121
        $this->width = intval($width);
122
123
        return $this;
124
    }
125
126
    /**
127
     * @return string
128
     */
129
    public function getTitle()
130
    {
131
        return $this->title;
132
    }
133
134
    /**
135
     * @param string $title
136
     *
137
     * @return Chart
138
     */
139
    public function setTitle($title)
140
    {
141
        $this->title = strval($title);
142
143
        return $this;
144
    }
145
146
    /**
147
     * @return LabelsCollection
148
     */
149
    public function labels()
150
    {
151
        if (is_null($this->labels)) {
152
            $this->labels = new LabelsCollection();
153
        }
154
155
        return $this->labels;
156
    }
157
158
    /**
159
     * @param string $label
160
     *
161
     * @return $this
162
     */
163
    public function addLabel($label)
164
    {
165
        $this->labels()->append($label);
166
167
        return $this;
168
    }
169
170
    /**
171
     * @param $offset
172
     *
173
     * @return string|bool
174
     */
175
    public function getLabel($offset)
176
    {
177
        return $this->labels()->offsetGet($offset);
178
    }
179
180
    /**
181
     * @return DataSetCollection
182
     */
183
    public function dataSets()
184
    {
185
        if (is_null($this->dataSets)) {
186
            $this->dataSets = new DataSetCollection();
187
        }
188
189
        return $this->dataSets;
190
    }
191
192
    /**
193
     * @param DataSet $dataSet
194
     *
195
     * @return $this
196
     */
197
    public function addDataSet(DataSet $dataSet)
198
    {
199
        $this->dataSets()->append($dataSet->setOwner($this));
200
201
        return $this;
202
    }
203
204
    /**
205
     * @param $offset
206
     *
207
     * @return DataSet|bool
208
     */
209
    public function getDataSet($offset)
210
    {
211
        return $this->dataSets()->offsetGet($offset);
212
    }
213
214
    /**
215
     * @param bool $pretty
216
     *
217
     * @return string
218
     */
219
    public function render($pretty = false)
220
    {
221
        $renderer = new Html($this);
222
223
        return $renderer->render($pretty ? $renderer::RENDER_PRETTY : null);
224
    }
225
226
    /**
227
     * @return DataSet
228
     */
229
    public function createDataSet()
230
    {
231
        $datasetClass = static::MODEL['dataset'];
232
        /** @var \Halfpastfour\PHPChartJS\DataSet $dataSet */
233
        $dataSet = new $datasetClass();
234
        $dataSet->setOwner($this);
235
236
        return $dataSet;
237
    }
238
239
    /**
240
     * @return Options
241
     */
242
    public function options()
243
    {
244
        if (is_null($this->options)) {
245
            $optionsClass  = static::MODEL['options'];
246
            $this->options = new $optionsClass($this);
247
            $this->options->setOwner($this);
248
        }
249
250
        return $this->options;
251
    }
252
}
253