RealtimeReportWidgetAsset   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 49
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 18
c 1
b 0
f 0
dl 0
loc 49
rs 10
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A init() 0 23 1
A registerAssetFiles() 0 13 1
1
<?php
2
/**
3
 * @link      https://dukt.net/analytics/
4
 * @copyright Copyright (c) 2022, Dukt
5
 * @license   https://github.com/dukt/analytics/blob/master/LICENSE.md
6
 */
7
8
namespace dukt\analytics\web\assets\realtimereportwidget;
9
10
use craft\web\AssetBundle;
11
use craft\web\assets\cp\CpAsset;
12
use craft\web\View;
13
use dukt\analytics\web\assets\analytics\AnalyticsAsset;
14
use dukt\analytics\web\assets\googlecharts\GoogleChartsAsset;
15
16
/**
17
 * Realtime report widget asset bundle.
18
 */
19
class RealtimeReportWidgetAsset extends AssetBundle
20
{
21
    // Public Methods
22
    // =========================================================================
23
24
    /**
25
     * @inheritdoc
26
     */
27
    public function init()
28
    {
29
        // define the path that your publishable resources live
30
        $this->sourcePath = __DIR__.'/dist';
31
32
        // define the dependencies
33
        $this->depends = [
34
            CpAsset::class,
35
            GoogleChartsAsset::class,
36
            AnalyticsAsset::class,
37
        ];
38
39
        // define the relative path to CSS/JS files that should be registered with the page
40
        // when this asset bundle is registered
41
        $this->js = [
42
            'RealtimeWidget.js',
43
        ];
44
45
        $this->css = [
46
            'RealtimeWidget.css',
47
        ];
48
49
        parent::init();
50
    }
51
52
    /**
53
     * @inheritdoc
54
     */
55
    public function registerAssetFiles($view)
56
    {
57
        parent::registerAssetFiles($view);
58
59
        $js = "if(typeof AnalyticsRealtime == 'undefined') {";
60
61
        $js .= 'var AnalyticsRealtime = {};';
62
        $js .= 'AnalyticsRealtime.GoogleVisualizationCalled = false;';
63
        $js .= 'AnalyticsRealtime.GoogleVisualizationReady = false;';
64
65
        $js .= '}';
66
67
        $view->registerJs($js, View::POS_BEGIN);
68
    }
69
}