Test Failed
Push — develop ( 4db3e8...c07ba6 )
by Paul
08:09
created

FusionSiteReviewsForm::shortcodeClass()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 1
c 0
b 0
f 0
dl 0
loc 3
rs 10
cc 1
nc 1
nop 0
1
<?php
2
3
namespace GeminiLabs\SiteReviews\Integrations\FusionBuilder;
4
5
use GeminiLabs\SiteReviews\Shortcodes\SiteReviewsFormShortcode;
6
7
class FusionSiteReviewsForm extends FusionElement
8
{
9
    public static function elementParameters(): array
10
    {
11
        return [
12
            'assigned_posts' => [
13
                'default' => '',
14
                'heading' => esc_attr_x('Assign Review to a Page', 'admin-text', 'site-reviews'),
15
                'param_name' => 'assigned_posts',
16
                'type' => 'multiple_select',
17
                'placeholder_text' => esc_attr_x('Select or Leave Blank', 'admin-text', 'site-reviews'),
18
                'value' => [
19
                    'custom' => esc_attr_x('Specific Post ID', 'admin-text', 'site-reviews'),
20
                    'post_id' => esc_attr_x('The Current Page', 'admin-text', 'site-reviews'),
21
                    'parent_id' => esc_attr_x('The Parent Page', 'admin-text', 'site-reviews'),
22
                ],
23
            ],
24
            'assigned_posts_custom' => [
25
                'heading' => esc_attr_x('Assigned Post IDs', 'admin-text', 'site-reviews'),
26
                'description' => esc_attr_x('Separate values with a comma.', 'admin-text', 'site-reviews'),
27
                'param_name' => 'assigned_posts_custom',
28
                'type' => 'textfield',
29
                'value' => '',
30
                'dependency' => [
31
                    [
32
                        'element' => 'assigned_posts',
33
                        'value' => 'custom',
34
                        'operator' => 'contains',
35
                    ],
36
                ],
37
            ],
38
            'assigned_terms' => static::optionAssignedTerms(esc_attr_x('Assign Review to Categories', 'admin-text', 'site-reviews')),
39
            'assigned_users' => [
40
                'default' => '',
41
                'heading' => esc_attr_x('Assign Review to a User', 'admin-text', 'site-reviews'),
42
                'param_name' => 'assigned_users',
43
                'placeholder_text' => esc_attr_x('Select or Leave Blank', 'admin-text', 'site-reviews'),
44
                'type' => 'multiple_select',
45
                'value' => [
46
                    'custom' => esc_attr_x('Specific User ID', 'admin-text', 'site-reviews'),
47
                    'user_id' => esc_attr_x('The Logged-in user', 'admin-text', 'site-reviews'),
48
                    'author_id' => esc_attr_x('The Page author', 'admin-text', 'site-reviews'),
49
                    'profile_id' => esc_attr_x('The Profile user (BuddyPress/Ultimate Member)', 'admin-text', 'site-reviews'),
50
                ],
51
            ],
52
            'assigned_users_custom' => [
53
                'heading' => esc_attr_x('Assigned User IDs', 'admin-text', 'site-reviews'),
54
                'description' => esc_attr_x('Separate values with a comma.', 'admin-text', 'site-reviews'),
55
                'param_name' => 'assigned_users_custom',
56
                'type' => 'textfield',
57
                'value' => '',
58
                'dependency' => [
59
                    [
60
                        'element' => 'assigned_users',
61
                        'value' => 'custom',
62
                        'operator' => 'contains',
63
                    ],
64
                ],
65
            ],
66
            'hide' => [
67
                'default' => '',
68
                'heading' => esc_html_x('Hide Fields', 'admin-text', 'site-reviews'),
69
                'param_name' => 'hide',
70
                'placeholder_text' => esc_attr_x('Select Fields to Hide', 'admin-text', 'site-reviews'),
71
                'type' => 'multiple_select',
72
                'value' => glsr(static::shortcodeClass())->options('hide'),
73
            ],
74
            'class' => [
75
                'heading' => esc_attr_x('CSS Class', 'admin-text', 'site-reviews'),
76
                'description' => esc_attr_x('Add a class to the wrapping HTML element.', 'admin-text', 'site-reviews'),
77
                'param_name' => 'class',
78
                'type' => 'textfield',
79
                'value' => '',
80
            ],
81
            'id' => [
82
                'heading' => esc_attr_x('CSS ID', 'admin-text', 'site-reviews'),
83
                'description' => esc_attr_x('Add an ID to the wrapping HTML element.', 'admin-text', 'site-reviews'),
84
                'param_name' => 'id',
85
                'type' => 'textfield',
86
                'value' => '',
87
            ],
88
            'reviews_id' => [
89
                'heading' => esc_attr_x('Reviews CSS ID', 'admin-text', 'site-reviews'),
90
                'description' => esc_attr_x('Enter the CSS ID of a Latest Reviews element where the review should be displayed after submission.', 'admin-text', 'site-reviews'),
91
                'param_name' => 'reviews_id',
92
                'type' => 'textfield',
93
                'value' => '',
94
            ],
95
        ];
96
    }
97
98
    public static function shortcodeClass(): string
99
    {
100
        return SiteReviewsFormShortcode::class;
101
    }
102
103
    protected static function shortcodeIcon(): string
104
    {
105
        return 'fusion-glsr-form';
106
    }
107
}
108