1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
<?php namespace Elementor;
if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly. }
/** * Elementor alert control. * * A base control for creating alerts in the Editor panels. * * @since 3.19.0 */ class Control_Alert extends Base_UI_Control {
/** * Get alert control type. * * Retrieve the control type, in this case `alert`. * * @since 3.19.0 * @access public * * @return string Control type. */ public function get_type() { return 'alert'; }
/** * Render alert control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 3.19.0 * @access public */ public function content_template() { ?> <# const validAlertTypes = [ 'info', 'success', 'warning', 'danger' ]; if ( ! validAlertTypes.includes( data.alert_type ) ) { data.alert_type = 'info'; } data.content = elementor.compileTemplate( data.content, { view } ); #> <div class="elementor-control-alert elementor-panel-alert elementor-panel-alert-{{ data.alert_type }}"> <# if ( data.heading ) { #> <div class="elementor-control-alert-heading">{{{ data.heading }}}</div> <# } #> <# if ( data.content ) { #> <div class="elementor-control-alert-content ">{{{ data.content }}}</div> <# } #> </div> <?php }
/** * Get alert control default settings. * * Retrieve the default settings of the alert control. Used to return the * default settings while initializing the alert control. * * @since 3.19.0 * @access protected * * @return array Control default settings. */ protected function get_default_settings() { return [ 'alert_type' => '', // info, success, warning, danger. 'heading' => '', 'content' => '', ]; } }
|