Diff: STRATO-apps/wordpress_03/app/wp-content/plugins/tutor-lms-elementor-addons/classes/AddonsTrait.php
Keine Baseline-Datei – Diff nur gegen leer.
1
-
1
+
<?php
2
+
/**
3
+
* TutorLMS Elementor Traits
4
+
*
5
+
* @category Elementor
6
+
* @package TutorLMS_Addons
7
+
* @author Themeum <www.themeum.com>
8
+
* @copyright 2020 Themeum <www.themeum.com>
9
+
* @version Release: @1.0.0
10
+
* @since 1.0.0
11
+
*/
12
+
13
+
namespace TutorLMS\Elementor;
14
+
15
+
defined( 'ABSPATH' ) || exit;
16
+
17
+
trait AddonsTrait {
18
+
19
+
/**
20
+
* Layout for Tutor LMS Elementor.
21
+
*
22
+
* @param string $default_layout default value left (optional).
23
+
*
24
+
* @return array layout options for left,up
25
+
*/
26
+
public function etlms_layout( $default_layout = 'left' ) {
27
+
return array(
28
+
'label' => __( 'Layout', 'tutor-lms-elementor-addons' ),
29
+
'type' => \Elementor\Controls_Manager::CHOOSE,
30
+
'options' => array(
31
+
'left' => array(
32
+
'title' => __( 'Left', 'tutor-lms-elementor-addons' ),
33
+
'icon' => 'eicon-h-align-left',
34
+
),
35
+
'up' => array(
36
+
'title' => __( 'Up', 'tutor-lms-elementor-addons' ),
37
+
'icon' => 'eicon-v-align-top',
38
+
),
39
+
40
+
),
41
+
'prefix_class' => self::$prefix_class_layout . '%s',
42
+
'default' => $default_layout,
43
+
44
+
'toggle' => false,
45
+
);
46
+
}
47
+
48
+
/**
49
+
* Alignment.
50
+
*
51
+
* @param string $default_alignment default value left (optional).
52
+
*
53
+
* @return array layout options for left,right,center
54
+
*/
55
+
public function etlms_alignment( $default_alignment = 'left' ) {
56
+
return array(
57
+
'label' => __( 'Alignment', 'tutor-lms-elementor-addons' ),
58
+
'type' => \Elementor\Controls_Manager::CHOOSE,
59
+
'options' => array(
60
+
'left' => array(
61
+
'title' => __( 'Left', 'tutor-lms-elementor-addons' ),
62
+
'icon' => 'eicon-text-align-left',
63
+
),
64
+
'center' => array(
65
+
'title' => __( 'Center', 'tutor-lms-elementor-addons' ),
66
+
'icon' => 'eicon-text-align-center',
67
+
),
68
+
'right' => array(
69
+
'title' => __( 'Right', 'tutor-lms-elementor-addons' ),
70
+
'icon' => 'eicon-text-align-right',
71
+
),
72
+
),
73
+
'prefix_class' => self::$prefix_class_alignment . '%s',
74
+
'default' => $default_alignment,
75
+
);
76
+
}
77
+
78
+
/**
79
+
* Icon alignment.
80
+
*
81
+
* @param string $prefix_class prefix class.
82
+
* @param string $default_layout default layout.
83
+
*
84
+
* @return array
85
+
*/
86
+
public function etlms_icon_align( $prefix_class, $default_layout = 'right' ) {
87
+
return array(
88
+
'label' => __( 'Icon Position', 'tutor-lms-elementor-addons' ),
89
+
'type' => \Elementor\Controls_Manager::CHOOSE,
90
+
'options' => array(
91
+
'left' => array(
92
+
'title' => __( 'Left', 'tutor-lms-elementor-addons' ),
93
+
'icon' => 'eicon-h-align-left',
94
+
),
95
+
'right' => array(
96
+
'title' => __( 'Right', 'tutor-lms-elementor-addons' ),
97
+
'icon' => 'eicon-h-align-right',
98
+
),
99
+
100
+
),
101
+
'prefix_class' => $prefix_class . '%s',
102
+
'default' => $default_layout,
103
+
104
+
'toggle' => false,
105
+
);
106
+
}
107
+
108
+
/**
109
+
* Align with justify.
110
+
*
111
+
* @param string $default_alignment default alignment.
112
+
*
113
+
* @return array
114
+
*/
115
+
public function etlms_align_with_justify( $default_alignment = 'left' ) {
116
+
return array(
117
+
'label' => __( 'Alignment', 'tutor-lms-elementor-addons' ),
118
+
'type' => \Elementor\Controls_Manager::CHOOSE,
119
+
'options' => array(
120
+
'left' => array(
121
+
'title' => __( 'Left', 'tutor-lms-elementor-addons' ),
122
+
'icon' => 'eicon-text-align-left',
123
+
),
124
+
'center' => array(
125
+
'title' => __( 'Center', 'tutor-lms-elementor-addons' ),
126
+
'icon' => 'eicon-text-align-center',
127
+
),
128
+
'right' => array(
129
+
'title' => __( 'Right', 'tutor-lms-elementor-addons' ),
130
+
'icon' => 'eicon-text-align-right',
131
+
),
132
+
'justify' => array(
133
+
'title' => __( 'Justified', 'tutor-lms-elementor-addons' ),
134
+
'icon' => 'eicon-text-align-justify',
135
+
),
136
+
),
137
+
'prefix_class' => self::$prefix_class_alignment . '%s',
138
+
'default' => $default_alignment,
139
+
);
140
+
}
141
+
142
+
/**
143
+
* Non responsive layout.
144
+
*
145
+
* @param string $default_layout default layout.
146
+
*
147
+
* @return array
148
+
*/
149
+
public function etlms_non_responsive_layout( $default_layout = 'left' ) {
150
+
return array(
151
+
'label' => __( 'Layout', 'tutor-lms-elementor-addons' ),
152
+
'type' => \Elementor\Controls_Manager::CHOOSE,
153
+
'options' => array(
154
+
'left' => array(
155
+
'title' => __( 'Left', 'tutor-lms-elementor-addons' ),
156
+
'icon' => 'eicon-h-align-left',
157
+
),
158
+
'up' => array(
159
+
'title' => __( 'Center', 'tutor-lms-elementor-addons' ),
160
+
'icon' => 'eicon-v-align-top',
161
+
),
162
+
163
+
),
164
+
'prefix_class' => self::$prefix_class_layout,
165
+
'default' => $default_layout,
166
+
167
+
'toggle' => false,
168
+
);
169
+
}
170
+
171
+
/**
172
+
* Non responsive alignment.
173
+
*
174
+
* @param string $default_alignment default alignment.
175
+
*
176
+
* @return array
177
+
*/
178
+
public function etlms_non_responsive_alignment( $default_alignment = 'left' ) {
179
+
return array(
180
+
'label' => __( 'Alignment', 'tutor-lms-elementor-addons' ),
181
+
'type' => \Elementor\Controls_Manager::CHOOSE,
182
+
'options' => array(
183
+
'left' => array(
184
+
'title' => __( 'Left', 'tutor-lms-elementor-addons' ),
185
+
'icon' => 'eicon-text-align-left',
186
+
),
187
+
'center' => array(
188
+
'title' => __( 'Center', 'tutor-lms-elementor-addons' ),
189
+
'icon' => 'eicon-text-align-center',
190
+
),
191
+
'right' => array(
192
+
'title' => __( 'Right', 'tutor-lms-elementor-addons' ),
193
+
'icon' => 'eicon-text-align-right',
194
+
),
195
+
),
196
+
'prefix_class' => self::$prefix_class_alignment,
197
+
'default' => $default_alignment,
198
+
);
199
+
}
200
+
201
+
/**
202
+
* Get alignments with default selectors
203
+
*
204
+
* @param array $selectors CSS selectors.
205
+
* @param string $align alignment.
206
+
*
207
+
* @return array
208
+
*/
209
+
protected function title_alignment_with_selectors( array $selectors, string $align = 'left' ) {
210
+
$align = $this->etlms_alignment( $align );
211
+
$align['selectors'] = $selectors;
212
+
return $align;
213
+
}
214
+
215
+
/**
216
+
* Check is elementor editor mode or not
217
+
*
218
+
* @since v2.0.0
219
+
*
220
+
* return bool, true if editor otherwise false
221
+
*/
222
+
public function is_elementor_editor() {
223
+
return \Elementor\Plugin::instance()->editor->is_edit_mode() ? true : false;
224
+
}
225
+
}
226
+