FlatpickrAsset   A
last analyzed

Complexity

Total Complexity 6

Size/Duplication

Total Lines 49
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 15
c 1
b 0
f 0
dl 0
loc 49
ccs 12
cts 12
cp 1
rs 10
wmc 6

3 Methods

Rating   Name   Duplication   Size   Complexity  
A registerThemeFile() 0 4 2
A registerLanguageFile() 0 4 3
A registerAssetFiles() 0 6 1
1
<?php
2
/**
3
 * @link https://github.com/codenix-sv/yii2-flatpickr
4
 * @copyright Copyright (c) 2017 codenix-sv
5
 * @license https://github.com/codenix-sv/yii2-flatpickr/blob/master/LICENSE
6
 */
7
8
namespace codenixsv\flatpickr\assets;
9
10
use yii\web\AssetBundle;
11
12
/**
13
 * Class FlatpickrAsset
14
 * @package codenixsv\flatpickr\assets
15
 */
16
class FlatpickrAsset extends AssetBundle
17
{
18
    /** @var string */
19
    public $sourcePath = '@npm/flatpickr/dist';
20
21
   /** @var array */
22
    public $js = [
23
        'flatpickr.min.js',
24
    ];
25
26
   /** @var array */
27
    public $css = [
28
        'flatpickr.min.css',
29
    ];
30
31
    /** @var string */
32
    public $theme;
33
34
    /** @var string */
35
    public $locale;
36
37
    /**
38
     * @inheritdoc
39
     */
40 3
    public function registerAssetFiles($view)
41
    {
42 3
        $this->registerLanguageFile();
43 3
        $this->registerThemeFile();
44
45 3
        parent::registerAssetFiles($view);
46 3
    }
47
48
    /**
49
     * Registers language file
50
     */
51 3
    private function registerLanguageFile()
52
    {
53 3
        if (!empty($this->locale) && ($this->locale !== 'en')) {
54 1
            $this->js[] = 'l10n/' . $this->locale . '.js';
55
        }
56 3
    }
57
58
    /**
59
     * Registers theme
60
     */
61 3
    private function registerThemeFile()
62
    {
63 3
        if (!empty($this->theme)) {
64 1
            $this->css[] = 'themes/' . $this->theme . '.css';
65
        }
66 3
    }
67
}
68