Issues (1377)

Security Analysis    no request data  

This project does not seem to handle request data directly as such no vulnerable execution paths were found.

  Cross-Site Scripting
Cross-Site Scripting enables an attacker to inject code into the response of a web-request that is viewed by other users. It can for example be used to bypass access controls, or even to take over other users' accounts.
  File Exposure
File Exposure allows an attacker to gain access to local files that he should not be able to access. These files can for example include database credentials, or other configuration files.
  File Manipulation
File Manipulation enables an attacker to write custom data to files. This potentially leads to injection of arbitrary code on the server.
  Object Injection
Object Injection enables an attacker to inject an object into PHP code, and can lead to arbitrary code execution, file exposure, or file manipulation attacks.
  Code Injection
Code Injection enables an attacker to execute arbitrary code on the server.
  Response Splitting
Response Splitting can be used to send arbitrary responses.
  File Inclusion
File Inclusion enables an attacker to inject custom files into PHP's file loading mechanism, either explicitly passed to include, or for example via PHP's auto-loading mechanism.
  Command Injection
Command Injection enables an attacker to inject a shell command that is execute with the privileges of the web-server. This can be used to expose sensitive data, or gain access of your server.
  SQL Injection
SQL Injection enables an attacker to execute arbitrary SQL code on your database server gaining access to user data, or manipulating user data.
  XPath Injection
XPath Injection enables an attacker to modify the parts of XML document that are read. If that XML document is for example used for authentication, this can lead to further vulnerabilities similar to SQL Injection.
  LDAP Injection
LDAP Injection enables an attacker to inject LDAP statements potentially granting permission to run unauthorized queries, or modify content inside the LDAP tree.
  Header Injection
  Other Vulnerability
This category comprises other attack vectors such as manipulating the PHP runtime, loading custom extensions, freezing the runtime, or similar.
  Regex Injection
Regex Injection enables an attacker to execute arbitrary code in your PHP process.
  XML Injection
XML Injection enables an attacker to read files on your local filesystem including configuration files, or can be abused to freeze your web-server process.
  Variable Injection
Variable Injection enables an attacker to overwrite program variables with custom data, and can lead to further vulnerabilities.
Unfortunately, the security analysis is currently not available for your project. If you are a non-commercial open-source project, please contact support to gain access.

API/Chart/Series/HighchartsSolidgauge.php (8 issues)

Upgrade to new PHP Analysis Engine

These results are based on our legacy PHP analysis, consider migrating to our new PHP analysis engine instead. Learn more

1
<?php
2
3
/**
4
 * This file is part of the highcharts-bundle package.
5
 *
6
 * (c) 2017 WEBEWEB
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
namespace WBW\Bundle\HighchartsBundle\API\Chart\Series;
13
14
use JsonSerializable;
15
use WBW\Library\Core\Utility\Argument\ArrayUtility;
16
17
/**
18
 * Highcharts solidgauge.
19
 *
20
 * @author webeweb <https://github.com/webeweb/>
21
 * @package WBW\Bundle\HighchartsBundle\API\Chart\Series
22
 * @version 5.0.14
23
 * @final
24
 */
25
final class HighchartsSolidgauge implements JsonSerializable {
26
27
    /**
28
     * Animation.
29
     *
30
     * @var boolean
31
     */
32
    private $animation = true;
33
34
    /**
35
     * Animation limit.
36
     *
37
     * @var integer
38
     */
39
    private $animationLimit;
40
41
    /**
42
     * Class name.
43
     *
44
     * @var string
45
     * @since 5.0.0
46
     */
47
    private $className;
48
49
    /**
50
     * Color index.
51
     *
52
     * @var integer
53
     * @since 5.0.0
54
     */
55
    private $colorIndex;
56
57
    /**
58
     * Cursor.
59
     *
60
     * @var string
61
     */
62
    private $cursor;
63
64
    /**
65
     * Data.
66
     *
67
     * @var array
68
     */
69
    private $data;
70
71
    /**
72
     * Data labels.
73
     *
74
     * @var array
75
     * @since 2.3.0
76
     */
77
    private $dataLabels;
78
79
    /**
80
     * Description.
81
     *
82
     * @var string
83
     * @since 5.0.0
84
     */
85
    private $description;
86
87
    /**
88
     * Enable mouse tracking.
89
     *
90
     * @var boolean
91
     */
92
    private $enableMouseTracking = true;
93
94
    /**
95
     * Events.
96
     *
97
     * @var \WBW\Bundle\HighchartsBundle\API\Chart\Series\Solidgauge\HighchartsEvents
98
     */
99
    private $events;
100
101
    /**
102
     * Expose element to a11y.
103
     *
104
     * @var boolean
105
     * @since 5.0.12
106
     */
107
    private $exposeElementToA11y;
108
109
    /**
110
     * Find nearest point by.
111
     *
112
     * @var string
113
     * @since 5.0.10
114
     */
115
    private $findNearestPointBy;
116
117
    /**
118
     * Get extremes from all.
119
     *
120
     * @var boolean
121
     * @since 4.1.6
122
     */
123
    private $getExtremesFromAll = false;
124
125
    /**
126
     * Id.
127
     *
128
     * @var string
129
     * @since 1.2.0
130
     */
131
    private $id;
132
133
    /**
134
     * Index.
135
     *
136
     * @var integer
137
     * @since 2.3.0
138
     */
139
    private $index;
140
141
    /**
142
     * Keys.
143
     *
144
     * @var array
145
     * @since 4.1.6
146
     */
147
    private $keys;
148
149
    /**
150
     * Legend index.
151
     *
152
     * @var integer
153
     */
154
    private $legendIndex;
155
156
    /**
157
     * Linecap.
158
     *
159
     * @var string
160
     * @since 4.2.2
161
     */
162
    private $linecap = "round";
163
164
    /**
165
     * Name.
166
     *
167
     * @var string
168
     */
169
    private $name;
170
171
    /**
172
     * Overshoot.
173
     *
174
     * @var integer
175
     * @since 3.0.10
176
     */
177
    private $overshoot = 0;
178
179
    /**
180
     * Point.
181
     *
182
     * @var \WBW\Bundle\HighchartsBundle\API\Chart\Series\Solidgauge\HighchartsPoint
183
     */
184
    private $point;
185
186
    /**
187
     * Point description formatter.
188
     *
189
     * @var string
190
     * @since 5.0.12
191
     */
192
    private $pointDescriptionFormatter;
193
194
    /**
195
     * Rounded.
196
     *
197
     * @var boolean
198
     * @since 5.0.11
199
     */
200
    private $rounded = false;
201
202
    /**
203
     * Selected.
204
     *
205
     * @var boolean
206
     * @since 1.2.0
207
     */
208
    private $selected = false;
209
210
    /**
211
     * Show checkbox.
212
     *
213
     * @var boolean
214
     * @since 1.2.0
215
     */
216
    private $showCheckbox = false;
217
218
    /**
219
     * Show in legend.
220
     *
221
     * @var boolean
222
     * @since 2.3.0
223
     */
224
    private $showInLegend;
225
226
    /**
227
     * Skip keyboard navigation.
228
     *
229
     * @var boolean
230
     * @since 5.0.12
231
     */
232
    private $skipKeyboardNavigation;
233
234
    /**
235
     * Sticky tracking.
236
     *
237
     * @var boolean
238
     * @since 2.0
239
     */
240
    private $stickyTracking = true;
241
242
    /**
243
     * Threshold.
244
     *
245
     * @var integer
246
     * @since 5.0.3
247
     */
248
    private $threshold;
249
250
    /**
251
     * Tooltip.
252
     *
253
     * @var array
254
     * @since 2.3
255
     */
256
    private $tooltip;
257
258
    /**
259
     * Type.
260
     *
261
     * @var string
262
     */
263
    private $type;
264
265
    /**
266
     * Visible.
267
     *
268
     * @var boolean
269
     */
270
    private $visible = true;
271
272
    /**
273
     * Wrap.
274
     *
275
     * @var boolean
276
     * @since 3.0
277
     */
278
    private $wrap = true;
279
280
    /**
281
     * X axis.
282
     *
283
     * @var integer|string
284
     */
285
    private $xAxis = "0";
286
287
    /**
288
     * Y axis.
289
     *
290
     * @var integer|string
291
     */
292
    private $yAxis = "0";
293
294
    /**
295
     * Z index.
296
     *
297
     * @var integer
298
     */
299
    private $zIndex;
300
301
    /**
302
     * Constructor.
303
     *
304
     * @param boolean $ignoreDefaultValues Ignore the default values.
305
     */
306
    public function __construct($ignoreDefaultValues = true) {
307
        if (true === $ignoreDefaultValues) {
308
            $this->clear();
309
        }
310
    }
311
312
    /**
313
     * Clear.
314
     *
315
     * @return void
316
     */
317
    public function clear() {
318
319
        // Clear the animation.
320
        $this->animation = null;
321
322
        // Clear the animation limit.
323
        $this->animationLimit = null;
324
325
        // Clear the class name.
326
        $this->className = null;
327
328
        // Clear the color index.
329
        $this->colorIndex = null;
330
331
        // Clear the cursor.
332
        $this->cursor = null;
333
334
        // Clear the data.
335
        $this->data = null;
0 ignored issues
show
Documentation Bug introduced by
It seems like null of type null is incompatible with the declared type array of property $data.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
336
337
        // Clear the data labels.
338
        $this->dataLabels = null;
0 ignored issues
show
Documentation Bug introduced by
It seems like null of type null is incompatible with the declared type array of property $dataLabels.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
339
340
        // Clear the description.
341
        $this->description = null;
342
343
        // Clear the enable mouse tracking.
344
        $this->enableMouseTracking = null;
345
346
        // Clear the events.
347
        if (null !== $this->events) {
348
            $this->events->clear();
349
        }
350
351
        // Clear the expose element to a11y.
352
        $this->exposeElementToA11y = null;
353
354
        // Clear the find nearest point by.
355
        $this->findNearestPointBy = null;
356
357
        // Clear the get extremes from all.
358
        $this->getExtremesFromAll = null;
359
360
        // Clear the id.
361
        $this->id = null;
362
363
        // Clear the index.
364
        $this->index = null;
365
366
        // Clear the keys.
367
        $this->keys = null;
0 ignored issues
show
Documentation Bug introduced by
It seems like null of type null is incompatible with the declared type array of property $keys.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
368
369
        // Clear the legend index.
370
        $this->legendIndex = null;
371
372
        // Clear the linecap.
373
        $this->linecap = null;
374
375
        // Clear the name.
376
        $this->name = null;
377
378
        // Clear the overshoot.
379
        $this->overshoot = null;
380
381
        // Clear the point.
382
        if (null !== $this->point) {
383
            $this->point->clear();
384
        }
385
386
        // Clear the point description formatter.
387
        $this->pointDescriptionFormatter = null;
388
389
        // Clear the rounded.
390
        $this->rounded = null;
391
392
        // Clear the selected.
393
        $this->selected = null;
394
395
        // Clear the show checkbox.
396
        $this->showCheckbox = null;
397
398
        // Clear the show in legend.
399
        $this->showInLegend = null;
400
401
        // Clear the skip keyboard navigation.
402
        $this->skipKeyboardNavigation = null;
403
404
        // Clear the sticky tracking.
405
        $this->stickyTracking = null;
406
407
        // Clear the threshold.
408
        $this->threshold = null;
409
410
        // Clear the tooltip.
411
        $this->tooltip = null;
0 ignored issues
show
Documentation Bug introduced by
It seems like null of type null is incompatible with the declared type array of property $tooltip.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
412
413
        // Clear the type.
414
        $this->type = null;
415
416
        // Clear the visible.
417
        $this->visible = null;
418
419
        // Clear the wrap.
420
        $this->wrap = null;
421
422
        // Clear the x axis.
423
        $this->xAxis = null;
424
425
        // Clear the y axis.
426
        $this->yAxis = null;
427
428
        // Clear the z index.
429
        $this->zIndex = null;
430
    }
431
432
    /**
433
     * Get the animation.
434
     *
435
     * @return boolean Returns the animation.
436
     */
437
    public function getAnimation() {
438
        return $this->animation;
439
    }
440
441
    /**
442
     * Get the animation limit.
443
     *
444
     * @return integer Returns the animation limit.
445
     */
446
    public function getAnimationLimit() {
447
        return $this->animationLimit;
448
    }
449
450
    /**
451
     * Get the class name.
452
     *
453
     * @return string Returns the class name.
454
     */
455
    public function getClassName() {
456
        return $this->className;
457
    }
458
459
    /**
460
     * Get the color index.
461
     *
462
     * @return integer Returns the color index.
463
     */
464
    public function getColorIndex() {
465
        return $this->colorIndex;
466
    }
467
468
    /**
469
     * Get the cursor.
470
     *
471
     * @return string Returns the cursor.
472
     */
473
    public function getCursor() {
474
        return $this->cursor;
475
    }
476
477
    /**
478
     * Get the data.
479
     *
480
     * @return array Returns the data.
481
     */
482
    public function getData() {
483
        return $this->data;
484
    }
485
486
    /**
487
     * Get the data labels.
488
     *
489
     * @return array Returns the data labels.
490
     */
491
    public function getDataLabels() {
492
        return $this->dataLabels;
493
    }
494
495
    /**
496
     * Get the description.
497
     *
498
     * @return string Returns the description.
499
     */
500
    public function getDescription() {
501
        return $this->description;
502
    }
503
504
    /**
505
     * Get the enable mouse tracking.
506
     *
507
     * @return boolean Returns the enable mouse tracking.
508
     */
509
    public function getEnableMouseTracking() {
510
        return $this->enableMouseTracking;
511
    }
512
513
    /**
514
     * Get the events.
515
     *
516
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\Solidgauge\HighchartsEvents Returns the events.
517
     */
518
    public function getEvents() {
519
        return $this->events;
520
    }
521
522
    /**
523
     * Get the expose element to a11y.
524
     *
525
     * @return boolean Returns the expose element to a11y.
526
     */
527
    public function getExposeElementToA11y() {
528
        return $this->exposeElementToA11y;
529
    }
530
531
    /**
532
     * Get the find nearest point by.
533
     *
534
     * @return string Returns the find nearest point by.
535
     */
536
    public function getFindNearestPointBy() {
537
        return $this->findNearestPointBy;
538
    }
539
540
    /**
541
     * Get the get extremes from all.
542
     *
543
     * @return boolean Returns the get extremes from all.
544
     */
545
    public function getGetExtremesFromAll() {
546
        return $this->getExtremesFromAll;
547
    }
548
549
    /**
550
     * Get the id.
551
     *
552
     * @return string Returns the id.
553
     */
554
    public function getId() {
555
        return $this->id;
556
    }
557
558
    /**
559
     * Get the index.
560
     *
561
     * @return integer Returns the index.
562
     */
563
    public function getIndex() {
564
        return $this->index;
565
    }
566
567
    /**
568
     * Get the keys.
569
     *
570
     * @return array Returns the keys.
571
     */
572
    public function getKeys() {
573
        return $this->keys;
574
    }
575
576
    /**
577
     * Get the legend index.
578
     *
579
     * @return integer Returns the legend index.
580
     */
581
    public function getLegendIndex() {
582
        return $this->legendIndex;
583
    }
584
585
    /**
586
     * Get the linecap.
587
     *
588
     * @return string Returns the linecap.
589
     */
590
    public function getLinecap() {
591
        return $this->linecap;
592
    }
593
594
    /**
595
     * Get the name.
596
     *
597
     * @return string Returns the name.
598
     */
599
    public function getName() {
600
        return $this->name;
601
    }
602
603
    /**
604
     * Get the overshoot.
605
     *
606
     * @return integer Returns the overshoot.
607
     */
608
    public function getOvershoot() {
609
        return $this->overshoot;
610
    }
611
612
    /**
613
     * Get the point.
614
     *
615
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\Solidgauge\HighchartsPoint Returns the point.
616
     */
617
    public function getPoint() {
618
        return $this->point;
619
    }
620
621
    /**
622
     * Get the point description formatter.
623
     *
624
     * @return string Returns the point description formatter.
625
     */
626
    public function getPointDescriptionFormatter() {
627
        return $this->pointDescriptionFormatter;
628
    }
629
630
    /**
631
     * Get the rounded.
632
     *
633
     * @return boolean Returns the rounded.
634
     */
635
    public function getRounded() {
636
        return $this->rounded;
637
    }
638
639
    /**
640
     * Get the selected.
641
     *
642
     * @return boolean Returns the selected.
643
     */
644
    public function getSelected() {
645
        return $this->selected;
646
    }
647
648
    /**
649
     * Get the show checkbox.
650
     *
651
     * @return boolean Returns the show checkbox.
652
     */
653
    public function getShowCheckbox() {
654
        return $this->showCheckbox;
655
    }
656
657
    /**
658
     * Get the show in legend.
659
     *
660
     * @return boolean Returns the show in legend.
661
     */
662
    public function getShowInLegend() {
663
        return $this->showInLegend;
664
    }
665
666
    /**
667
     * Get the skip keyboard navigation.
668
     *
669
     * @return boolean Returns the skip keyboard navigation.
670
     */
671
    public function getSkipKeyboardNavigation() {
672
        return $this->skipKeyboardNavigation;
673
    }
674
675
    /**
676
     * Get the sticky tracking.
677
     *
678
     * @return boolean Returns the sticky tracking.
679
     */
680
    public function getStickyTracking() {
681
        return $this->stickyTracking;
682
    }
683
684
    /**
685
     * Get the threshold.
686
     *
687
     * @return integer Returns the threshold.
688
     */
689
    public function getThreshold() {
690
        return $this->threshold;
691
    }
692
693
    /**
694
     * Get the tooltip.
695
     *
696
     * @return array Returns the tooltip.
697
     */
698
    public function getTooltip() {
699
        return $this->tooltip;
700
    }
701
702
    /**
703
     * Get the type.
704
     *
705
     * @return string Returns the type.
706
     */
707
    public function getType() {
708
        return $this->type;
709
    }
710
711
    /**
712
     * Get the visible.
713
     *
714
     * @return boolean Returns the visible.
715
     */
716
    public function getVisible() {
717
        return $this->visible;
718
    }
719
720
    /**
721
     * Get the wrap.
722
     *
723
     * @return boolean Returns the wrap.
724
     */
725
    public function getWrap() {
726
        return $this->wrap;
727
    }
728
729
    /**
730
     * Get the x axis.
731
     *
732
     * @return integer|string Returns the x axis.
733
     */
734
    public function getXAxis() {
735
        return $this->xAxis;
736
    }
737
738
    /**
739
     * Get the y axis.
740
     *
741
     * @return integer|string Returns the y axis.
742
     */
743
    public function getYAxis() {
744
        return $this->yAxis;
745
    }
746
747
    /**
748
     * Get the z index.
749
     *
750
     * @return integer Returns the z index.
751
     */
752
    public function getZIndex() {
753
        return $this->zIndex;
754
    }
755
756
    /**
757
     * Serialize this instance.
758
     *
759
     * @return array Returns an array representing this instance.
760
     */
761
    public function jsonSerialize() {
762
        return $this->toArray();
763
    }
764
765
    /**
766
     * Create a new events.
767
     *
768
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\Solidgauge\HighchartsEvents Returns the events.
769
     */
770
    public function newEvents() {
771
        $this->events = new \WBW\Bundle\HighchartsBundle\API\Chart\Series\Solidgauge\HighchartsEvents();
772
        return $this->events;
773
    }
774
775
    /**
776
     * Create a new point.
777
     *
778
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\Solidgauge\HighchartsPoint Returns the point.
779
     */
780
    public function newPoint() {
781
        $this->point = new \WBW\Bundle\HighchartsBundle\API\Chart\Series\Solidgauge\HighchartsPoint();
782
        return $this->point;
783
    }
784
785
    /**
786
     * Set the animation.
787
     *
788
     * @param boolean $animation The animation.
789
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
790
     */
791
    public function setAnimation($animation) {
792
        $this->animation = $animation;
793
        return $this;
794
    }
795
796
    /**
797
     * Set the animation limit.
798
     *
799
     * @param integer $animationLimit The animation limit.
800
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
801
     */
802
    public function setAnimationLimit($animationLimit) {
803
        $this->animationLimit = $animationLimit;
804
        return $this;
805
    }
806
807
    /**
808
     * Set the class name.
809
     *
810
     * @param string $className The class name.
811
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
812
     */
813
    public function setClassName($className) {
814
        $this->className = $className;
815
        return $this;
816
    }
817
818
    /**
819
     * Set the color index.
820
     *
821
     * @param integer $colorIndex The color index.
822
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
823
     */
824
    public function setColorIndex($colorIndex) {
825
        $this->colorIndex = $colorIndex;
826
        return $this;
827
    }
828
829
    /**
830
     * Set the cursor.
831
     *
832
     * @param string $cursor The cursor.
833
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
834
     */
835
    public function setCursor($cursor) {
836
        switch ($cursor) {
837
            case null:
838
            case "crosshair":
839
            case "default":
840
            case "help":
841
            case "none":
842
            case "pointer":
843
            $this->cursor = $cursor;
844
            break;
845
        }
846
        return $this;
847
    }
848
849
    /**
850
     * Set the data.
851
     *
852
     * @param array $data The data.
853
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
854
     */
855
    public function setData(array $data = null) {
856
        $this->data = $data;
0 ignored issues
show
Documentation Bug introduced by
It seems like $data can be null. However, the property $data is declared as array. Maybe change the type of the property to array|null or add a type check?

Our type inference engine has found an assignment of a scalar value (like a string, an integer or null) to a property which is an array.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property.

To type hint that a parameter can be either an array or null, you can set a type hint of array and a default value of null. The PHP interpreter will then accept both an array or null for that parameter.

function aContainsB(array $needle = null, array  $haystack) {
    if (!$needle) {
        return false;
    }

    return array_intersect($haystack, $needle) == $haystack;
}

The function can be called with either null or an array for the parameter $needle but will only accept an array as $haystack.

Loading history...
857
        return $this;
858
    }
859
860
    /**
861
     * Set the data labels.
862
     *
863
     * @param array $dataLabels The data labels.
864
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
865
     */
866
    public function setDataLabels(array $dataLabels = null) {
867
        $this->dataLabels = $dataLabels;
0 ignored issues
show
Documentation Bug introduced by
It seems like $dataLabels can be null. However, the property $dataLabels is declared as array. Maybe change the type of the property to array|null or add a type check?

Our type inference engine has found an assignment of a scalar value (like a string, an integer or null) to a property which is an array.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property.

To type hint that a parameter can be either an array or null, you can set a type hint of array and a default value of null. The PHP interpreter will then accept both an array or null for that parameter.

function aContainsB(array $needle = null, array  $haystack) {
    if (!$needle) {
        return false;
    }

    return array_intersect($haystack, $needle) == $haystack;
}

The function can be called with either null or an array for the parameter $needle but will only accept an array as $haystack.

Loading history...
868
        return $this;
869
    }
870
871
    /**
872
     * Set the description.
873
     *
874
     * @param string $description The description.
875
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
876
     */
877
    public function setDescription($description) {
878
        $this->description = $description;
879
        return $this;
880
    }
881
882
    /**
883
     * Set the enable mouse tracking.
884
     *
885
     * @param boolean $enableMouseTracking The enable mouse tracking.
886
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
887
     */
888
    public function setEnableMouseTracking($enableMouseTracking) {
889
        $this->enableMouseTracking = $enableMouseTracking;
890
        return $this;
891
    }
892
893
    /**
894
     * Set the events.
895
     *
896
     * @param \WBW\Bundle\HighchartsBundle\API\Chart\Series\Solidgauge\HighchartsEvents $events The events.
897
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
898
     */
899
    public function setEvents(\WBW\Bundle\HighchartsBundle\API\Chart\Series\Solidgauge\HighchartsEvents $events = null) {
900
        $this->events = $events;
901
        return $this;
902
    }
903
904
    /**
905
     * Set the expose element to a11y.
906
     *
907
     * @param boolean $exposeElementToA11y The expose element to a11y.
908
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
909
     */
910
    public function setExposeElementToA11y($exposeElementToA11y) {
911
        $this->exposeElementToA11y = $exposeElementToA11y;
912
        return $this;
913
    }
914
915
    /**
916
     * Set the find nearest point by.
917
     *
918
     * @param string $findNearestPointBy The find nearest point by.
919
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
920
     */
921
    public function setFindNearestPointBy($findNearestPointBy) {
922
        switch ($findNearestPointBy) {
923
            case "x":
924
            case "xy":
925
            $this->findNearestPointBy = $findNearestPointBy;
926
            break;
927
        }
928
        return $this;
929
    }
930
931
    /**
932
     * Set the get extremes from all.
933
     *
934
     * @param boolean $getExtremesFromAll The get extremes from all.
935
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
936
     */
937
    public function setGetExtremesFromAll($getExtremesFromAll) {
938
        $this->getExtremesFromAll = $getExtremesFromAll;
939
        return $this;
940
    }
941
942
    /**
943
     * Set the id.
944
     *
945
     * @param string $id The id.
946
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
947
     */
948
    public function setId($id) {
949
        $this->id = $id;
950
        return $this;
951
    }
952
953
    /**
954
     * Set the index.
955
     *
956
     * @param integer $index The index.
957
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
958
     */
959
    public function setIndex($index) {
960
        $this->index = $index;
961
        return $this;
962
    }
963
964
    /**
965
     * Set the keys.
966
     *
967
     * @param array $keys The keys.
968
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
969
     */
970
    public function setKeys(array $keys = null) {
971
        $this->keys = $keys;
0 ignored issues
show
Documentation Bug introduced by
It seems like $keys can be null. However, the property $keys is declared as array. Maybe change the type of the property to array|null or add a type check?

Our type inference engine has found an assignment of a scalar value (like a string, an integer or null) to a property which is an array.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property.

To type hint that a parameter can be either an array or null, you can set a type hint of array and a default value of null. The PHP interpreter will then accept both an array or null for that parameter.

function aContainsB(array $needle = null, array  $haystack) {
    if (!$needle) {
        return false;
    }

    return array_intersect($haystack, $needle) == $haystack;
}

The function can be called with either null or an array for the parameter $needle but will only accept an array as $haystack.

Loading history...
972
        return $this;
973
    }
974
975
    /**
976
     * Set the legend index.
977
     *
978
     * @param integer $legendIndex The legend index.
979
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
980
     */
981
    public function setLegendIndex($legendIndex) {
982
        $this->legendIndex = $legendIndex;
983
        return $this;
984
    }
985
986
    /**
987
     * Set the linecap.
988
     *
989
     * @param string $linecap The linecap.
990
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
991
     */
992
    public function setLinecap($linecap) {
993
        switch ($linecap) {
994
            case "round":
995
            case "square":
996
            $this->linecap = $linecap;
997
            break;
998
        }
999
        return $this;
1000
    }
1001
1002
    /**
1003
     * Set the name.
1004
     *
1005
     * @param string $name The name.
1006
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1007
     */
1008
    public function setName($name) {
1009
        $this->name = $name;
1010
        return $this;
1011
    }
1012
1013
    /**
1014
     * Set the overshoot.
1015
     *
1016
     * @param integer $overshoot The overshoot.
1017
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1018
     */
1019
    public function setOvershoot($overshoot) {
1020
        $this->overshoot = $overshoot;
1021
        return $this;
1022
    }
1023
1024
    /**
1025
     * Set the point.
1026
     *
1027
     * @param \WBW\Bundle\HighchartsBundle\API\Chart\Series\Solidgauge\HighchartsPoint $point The point.
1028
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1029
     */
1030
    public function setPoint(\WBW\Bundle\HighchartsBundle\API\Chart\Series\Solidgauge\HighchartsPoint $point = null) {
1031
        $this->point = $point;
1032
        return $this;
1033
    }
1034
1035
    /**
1036
     * Set the point description formatter.
1037
     *
1038
     * @param string $pointDescriptionFormatter The point description formatter.
1039
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1040
     */
1041
    public function setPointDescriptionFormatter($pointDescriptionFormatter) {
1042
        $this->pointDescriptionFormatter = $pointDescriptionFormatter;
1043
        return $this;
1044
    }
1045
1046
    /**
1047
     * Set the rounded.
1048
     *
1049
     * @param boolean $rounded The rounded.
1050
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1051
     */
1052
    public function setRounded($rounded) {
1053
        switch ($rounded) {
1054
            case false:
1055
            case true:
1056
            $this->rounded = $rounded;
1057
            break;
1058
        }
1059
        return $this;
1060
    }
1061
1062
    /**
1063
     * Set the selected.
1064
     *
1065
     * @param boolean $selected The selected.
1066
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1067
     */
1068
    public function setSelected($selected) {
1069
        $this->selected = $selected;
1070
        return $this;
1071
    }
1072
1073
    /**
1074
     * Set the show checkbox.
1075
     *
1076
     * @param boolean $showCheckbox The show checkbox.
1077
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1078
     */
1079
    public function setShowCheckbox($showCheckbox) {
1080
        $this->showCheckbox = $showCheckbox;
1081
        return $this;
1082
    }
1083
1084
    /**
1085
     * Set the show in legend.
1086
     *
1087
     * @param boolean $showInLegend The show in legend.
1088
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1089
     */
1090
    public function setShowInLegend($showInLegend) {
1091
        $this->showInLegend = $showInLegend;
1092
        return $this;
1093
    }
1094
1095
    /**
1096
     * Set the skip keyboard navigation.
1097
     *
1098
     * @param boolean $skipKeyboardNavigation The skip keyboard navigation.
1099
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1100
     */
1101
    public function setSkipKeyboardNavigation($skipKeyboardNavigation) {
1102
        $this->skipKeyboardNavigation = $skipKeyboardNavigation;
1103
        return $this;
1104
    }
1105
1106
    /**
1107
     * Set the sticky tracking.
1108
     *
1109
     * @param boolean $stickyTracking The sticky tracking.
1110
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1111
     */
1112
    public function setStickyTracking($stickyTracking) {
1113
        $this->stickyTracking = $stickyTracking;
1114
        return $this;
1115
    }
1116
1117
    /**
1118
     * Set the threshold.
1119
     *
1120
     * @param integer $threshold The threshold.
1121
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1122
     */
1123
    public function setThreshold($threshold) {
1124
        $this->threshold = $threshold;
1125
        return $this;
1126
    }
1127
1128
    /**
1129
     * Set the tooltip.
1130
     *
1131
     * @param array $tooltip The tooltip.
1132
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1133
     */
1134
    public function setTooltip(array $tooltip = null) {
1135
        $this->tooltip = $tooltip;
0 ignored issues
show
Documentation Bug introduced by
It seems like $tooltip can be null. However, the property $tooltip is declared as array. Maybe change the type of the property to array|null or add a type check?

Our type inference engine has found an assignment of a scalar value (like a string, an integer or null) to a property which is an array.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property.

To type hint that a parameter can be either an array or null, you can set a type hint of array and a default value of null. The PHP interpreter will then accept both an array or null for that parameter.

function aContainsB(array $needle = null, array  $haystack) {
    if (!$needle) {
        return false;
    }

    return array_intersect($haystack, $needle) == $haystack;
}

The function can be called with either null or an array for the parameter $needle but will only accept an array as $haystack.

Loading history...
1136
        return $this;
1137
    }
1138
1139
    /**
1140
     * Set the type.
1141
     *
1142
     * @param string $type The type.
1143
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1144
     */
1145
    public function setType($type) {
1146
        switch ($type) {
1147
            case null:
1148
            case "area":
1149
            case "arearange":
1150
            case "areaspline":
1151
            case "areasplinerange":
1152
            case "boxplot":
1153
            case "bubble":
1154
            case "column":
1155
            case "columnrange":
1156
            case "errorbar":
1157
            case "funnel":
1158
            case "gauge":
1159
            case "line":
1160
            case "pie":
1161
            case "scatter":
1162
            case "spline":
1163
            case "waterfall":
1164
            $this->type = $type;
1165
            break;
1166
        }
1167
        return $this;
1168
    }
1169
1170
    /**
1171
     * Set the visible.
1172
     *
1173
     * @param boolean $visible The visible.
1174
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1175
     */
1176
    public function setVisible($visible) {
1177
        $this->visible = $visible;
1178
        return $this;
1179
    }
1180
1181
    /**
1182
     * Set the wrap.
1183
     *
1184
     * @param boolean $wrap The wrap.
1185
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1186
     */
1187
    public function setWrap($wrap) {
1188
        $this->wrap = $wrap;
1189
        return $this;
1190
    }
1191
1192
    /**
1193
     * Set the x axis.
1194
     *
1195
     * @param integer|string $xAxis The x axis.
1196
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1197
     */
1198
    public function setXAxis($xAxis) {
1199
        $this->xAxis = $xAxis;
1200
        return $this;
1201
    }
1202
1203
    /**
1204
     * Set the y axis.
1205
     *
1206
     * @param integer|string $yAxis The y axis.
1207
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1208
     */
1209
    public function setYAxis($yAxis) {
1210
        $this->yAxis = $yAxis;
1211
        return $this;
1212
    }
1213
1214
    /**
1215
     * Set the z index.
1216
     *
1217
     * @param integer $zIndex The z index.
1218
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\Series\HighchartsSolidgauge Returns the highcharts solidgauge.
1219
     */
1220
    public function setZIndex($zIndex) {
1221
        $this->zIndex = $zIndex;
1222
        return $this;
1223
    }
1224
1225
    /**
1226
     * Convert into an array representing this instance.
1227
     *
1228
     * @return array Returns an array representing this instance.
1229
     */
1230
    public function toArray() {
1231
1232
        // Initialize the output.
1233
        $output = [];
1234
1235
        // Set the animation.
1236
        ArrayUtility::set($output, "animation", $this->animation, [null]);
1237
1238
        // Set the animation limit.
1239
        ArrayUtility::set($output, "animationLimit", $this->animationLimit, [null]);
1240
1241
        // Set the class name.
1242
        ArrayUtility::set($output, "className", $this->className, [null]);
1243
1244
        // Set the color index.
1245
        ArrayUtility::set($output, "colorIndex", $this->colorIndex, [null]);
1246
1247
        // Set the cursor.
1248
        ArrayUtility::set($output, "cursor", $this->cursor, [null]);
1249
1250
        // Set the data.
1251
        ArrayUtility::set($output, "data", $this->data, [null]);
1252
1253
        // Set the data labels.
1254
        ArrayUtility::set($output, "dataLabels", $this->dataLabels, [null]);
1255
1256
        // Set the description.
1257
        ArrayUtility::set($output, "description", $this->description, [null]);
1258
1259
        // Set the enable mouse tracking.
1260
        ArrayUtility::set($output, "enableMouseTracking", $this->enableMouseTracking, [null]);
1261
1262
        // Set the events.
1263
        if (null !== $this->events) {
1264
            ArrayUtility::set($output, "events", $this->events->toArray(), []);
1265
        }
1266
1267
        // Set the expose element to a11y.
1268
        ArrayUtility::set($output, "exposeElementToA11y", $this->exposeElementToA11y, [null]);
1269
1270
        // Set the find nearest point by.
1271
        ArrayUtility::set($output, "findNearestPointBy", $this->findNearestPointBy, [null]);
1272
1273
        // Set the get extremes from all.
1274
        ArrayUtility::set($output, "getExtremesFromAll", $this->getExtremesFromAll, [null]);
1275
1276
        // Set the id.
1277
        ArrayUtility::set($output, "id", $this->id, [null]);
1278
1279
        // Set the index.
1280
        ArrayUtility::set($output, "index", $this->index, [null]);
1281
1282
        // Set the keys.
1283
        ArrayUtility::set($output, "keys", $this->keys, [null]);
1284
1285
        // Set the legend index.
1286
        ArrayUtility::set($output, "legendIndex", $this->legendIndex, [null]);
1287
1288
        // Set the linecap.
1289
        ArrayUtility::set($output, "linecap", $this->linecap, [null]);
1290
1291
        // Set the name.
1292
        ArrayUtility::set($output, "name", $this->name, [null]);
1293
1294
        // Set the overshoot.
1295
        ArrayUtility::set($output, "overshoot", $this->overshoot, [null]);
1296
1297
        // Set the point.
1298
        if (null !== $this->point) {
1299
            ArrayUtility::set($output, "point", $this->point->toArray(), []);
1300
        }
1301
1302
        // Set the point description formatter.
1303
        ArrayUtility::set($output, "pointDescriptionFormatter", $this->pointDescriptionFormatter, [null]);
1304
1305
        // Set the rounded.
1306
        ArrayUtility::set($output, "rounded", $this->rounded, [null]);
1307
1308
        // Set the selected.
1309
        ArrayUtility::set($output, "selected", $this->selected, [null]);
1310
1311
        // Set the show checkbox.
1312
        ArrayUtility::set($output, "showCheckbox", $this->showCheckbox, [null]);
1313
1314
        // Set the show in legend.
1315
        ArrayUtility::set($output, "showInLegend", $this->showInLegend, [null]);
1316
1317
        // Set the skip keyboard navigation.
1318
        ArrayUtility::set($output, "skipKeyboardNavigation", $this->skipKeyboardNavigation, [null]);
1319
1320
        // Set the sticky tracking.
1321
        ArrayUtility::set($output, "stickyTracking", $this->stickyTracking, [null]);
1322
1323
        // Set the threshold.
1324
        ArrayUtility::set($output, "threshold", $this->threshold, [null]);
1325
1326
        // Set the tooltip.
1327
        ArrayUtility::set($output, "tooltip", $this->tooltip, [null]);
1328
1329
        // Set the type.
1330
        ArrayUtility::set($output, "type", $this->type, [null]);
1331
1332
        // Set the visible.
1333
        ArrayUtility::set($output, "visible", $this->visible, [null]);
1334
1335
        // Set the wrap.
1336
        ArrayUtility::set($output, "wrap", $this->wrap, [null]);
1337
1338
        // Set the x axis.
1339
        ArrayUtility::set($output, "xAxis", $this->xAxis, [null]);
1340
1341
        // Set the y axis.
1342
        ArrayUtility::set($output, "yAxis", $this->yAxis, [null]);
1343
1344
        // Set the z index.
1345
        ArrayUtility::set($output, "zIndex", $this->zIndex, [null]);
1346
1347
        // Return the output.
1348
        return $output;
1349
    }
1350
1351
}
1352