Test Failed
Push — develop ( 872656...e23a48 )
by Paul
07:41
created

Controller::enqueueBuilderStyles()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 32
Code Lines 10

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 10
dl 0
loc 32
rs 9.9332
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
3
namespace GeminiLabs\SiteReviews\Integrations\FusionBuilder;
4
5
use GeminiLabs\SiteReviews\Controllers\AbstractController;
6
use GeminiLabs\SiteReviews\Helper;
7
8
class Controller extends AbstractController
9
{
10
    /**
11
     * @action fusion_builder_enqueue_live_scripts
12
     */
13
    public function enqueueBuilderStyles(): void
14
    {
15
        $iconForm = Helper::svg('assets/images/icons/fusion/fusion-form.svg', true);
16
        $iconReview = Helper::svg('assets/images/icons/fusion/fusion-review.svg', true);
17
        $iconReviews = Helper::svg('assets/images/icons/fusion/fusion-reviews.svg', true);
18
        $iconSummary = Helper::svg('assets/images/icons/fusion/fusion-summary.svg', true);
19
        $css = "
20
            [class*=\"fusion-glsr-\"]::before {
21
                background-color: currentColor;
22
                content: '.';
23
                display: block;
24
                mask-position: center;
25
                mask-size: 36px;
26
            }
27
            .fusion-glsr-form::before {
28
                -webkit-mask-image: url(\"{$iconForm}\");mask-image: url(\"{$iconForm}\");
29
                -webkit-mask-repeat: no-repeat;mask-repeat: no-repeat;
30
            }
31
            .fusion-glsr-review::before {
32
                -webkit-mask-image: url(\"{$iconReview}\");mask-image: url(\"{$iconReview}\");
33
                -webkit-mask-repeat: no-repeat;mask-repeat: no-repeat;
34
            }
35
            .fusion-glsr-reviews::before {
36
                -webkit-mask-image: url(\"{$iconReviews}\");mask-image: url(\"{$iconReviews}\");
37
                -webkit-mask-repeat: no-repeat;mask-repeat: no-repeat;
38
            }
39
            .fusion-glsr-summary::before {
40
                -webkit-mask-image: url(\"{$iconSummary}\");mask-image: url(\"{$iconSummary}\");
41
                -webkit-mask-repeat: no-repeat;mask-repeat: no-repeat;
42
            }
43
        ";
44
        wp_add_inline_style('fusion-builder-frame-builder-css', $css);
45
    }
46
47
    /**
48
     * @filter site-reviews/defaults/style-classes/defaults
49
     */
50
    public function filterButtonClass(array $defaults): array
51
    {
52
        if ('default' !== glsr_get_option('general.style')) {
53
            return $defaults;
54
        }
55
        if (!defined('AVADA_VERSION')) {
56
            return $defaults;
57
        }
58
        $defaults['button'] = 'glsr-button fusion-button fusion-button-default fusion-button-default-size fusion-button-default-span fusion-button-default-type';
59
        return $defaults;
60
    }
61
62
    /**
63
     * @filter site-reviews/enqueue/public/inline-script/after
64
     */
65
    public function filterPublicInlineScript(string $script): string
66
    {
67
        $script .= '"undefined"!==typeof jQuery&&(';
68
        $script .= 'jQuery(window).on("load fusion-element-render-site_review fusion-element-render-site_reviews fusion-element-render-site_reviews_form fusion-element-render-site_reviews_summary",function(){';
69
        $script .= 'jQuery(".fusion-builder-live").length&&(GLSR.Event.trigger("site-reviews/init"))';
70
        $script .= '})';
71
        $script .= ');';
72
        return $script;
73
    }
74
75
    /**
76
     * @action site-reviews/activated
77
     */
78
    public function onActivated(): void
79
    {
80
        if (function_exists('fusion_builder_auto_activate_element')) {
81
            fusion_builder_auto_activate_element('site_review');
82
            fusion_builder_auto_activate_element('site_reviews');
83
            fusion_builder_auto_activate_element('site_reviews_form');
84
            fusion_builder_auto_activate_element('site_reviews_summary');
85
         }
86
    }
87
88
    /**
89
     * @action fusion_builder_before_init
90
     */
91
    public function registerFusionElements(): void
92
    {
93
        if (class_exists('Fusion_Element')) {
94
            FusionSiteReview::registerElement();
95
            FusionSiteReviews::registerElement();
96
            FusionSiteReviewsForm::registerElement();
97
            FusionSiteReviewsSummary::registerElement();
98
        }
99
    }
100
}
101