PluginProbe
Copy Anything to Clipboard for WordPress – Copy Button, Copy Text & Copy Code / 3.4.3
Copy Anything to Clipboard for WordPress – Copy Button, Copy Text & Copy Code v3.4.3
5.5.3 3.1.0 3.2.0 3.2.1 3.3.0 3.4.0 3.4.1 3.4.2 3.4.3 3.5.0 3.5.1 3.5.2 3.6.0 3.7.0 3.8.0 3.8.1 3.8.2 3.8.3 4.0.0 4.0.2 4.0.3 4.0.4 4.0.5 4.1.0 4.1.1 All 78 releases
copy-the-code / classes / elementor / widgets / wish / widget.php

widget.php in Copy Anything to Clipboard for WordPress – Copy Button, Copy Text & Copy Code 3.4.3, at classes/elementor/widgets/wish/widget.php

198 lines 4.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 /**
4 * Elementor Wish Block
5 *
6 * @package Copy the Code
7 * @since 3.1.0
8 */
9 namespace CopyTheCode\Elementor\Block;
10
11 use CopyTheCode\Helpers ;
12 use Elementor\Widget_Base ;
13 use Elementor\Controls_Manager ;
14 /**
15 * Wish Block
16 *
17 * @since 3.1.0
18 */
19 class Wish extends Widget_Base
20 {
21 /**
22 * Constructor
23 *
24 * @param array $data
25 * @param array $args
26 *
27 * @since 3.1.0
28 */
29 public function __construct( $data = array(), $args = null )
30 {
31 parent::__construct( $data, $args );
32 // Core.
33 wp_enqueue_style(
34 'ctc-blocks-core',
35 COPY_THE_CODE_URI . 'classes/blocks/assets/css/style.css',
36 [],
37 COPY_THE_CODE_VER,
38 'all'
39 );
40 wp_enqueue_script(
41 'ctc-clipboard',
42 COPY_THE_CODE_URI . 'assets/js/clipboard.js',
43 [ 'jquery' ],
44 COPY_THE_CODE_VER,
45 true
46 );
47 wp_enqueue_script(
48 'ctc-blocks-core',
49 COPY_THE_CODE_URI . 'classes/blocks/assets/js/core.js',
50 [ 'ctc-clipboard' ],
51 COPY_THE_CODE_VER,
52 true
53 );
54 // Block.
55 wp_enqueue_style(
56 'ctc-el-wish',
57 COPY_THE_CODE_URI . 'classes/elementor/widgets/wish/style.css',
58 [ 'ctc-blocks-core' ],
59 COPY_THE_CODE_VER,
60 'all'
61 );
62 }
63
64 /**
65 * Get script dependencies
66 */
67 public function get_script_depends()
68 {
69 return [ 'ctc-el-wish' ];
70 }
71
72 /**
73 * Get style dependencies
74 */
75 public function get_style_depends()
76 {
77 return [ 'ctc-clipboard', 'ctc-blocks-core' ];
78 }
79
80 /**
81 * Get name
82 */
83 public function get_name()
84 {
85 return 'ctc_wish';
86 }
87
88 /**
89 * Get title
90 */
91 public function get_title()
92 {
93 return esc_html__( 'Wish', 'copy-the-code' );
94 }
95
96 /**
97 * Get icon
98 */
99 public function get_icon()
100 {
101 return 'eicon-columns';
102 }
103
104 /**
105 * Get categories
106 */
107 public function get_categories()
108 {
109 return Helpers::get_categories();
110 }
111
112 /**
113 * Get keywords
114 */
115 public function get_keywords()
116 {
117 return Helpers::get_keywords( [ 'wish' ] );
118 }
119
120 /**
121 * Render
122 */
123 public function render()
124 {
125 $wish = $this->get_settings_for_display( 'wish' );
126 if ( empty($wish) ) {
127 return;
128 }
129 $wish = wpautop( $wish );
130 ?>
131 <div class="ctc-block ctc-wish">
132 <div class="ctc-block-content">
133 <div class="ctc-wish-box">
134 <div class="ctc-wish-text"><?php
135 echo wp_kses_post( $wish ) ;
136 ?></div>
137 </div>
138 </div>
139 <div class="ctc-block-actions">
140 <?php
141 Helpers::render_copy_button( $this );
142 ?>
143 </div>
144 <?php
145 Helpers::render_copy_content( $this );
146 ?>
147 </div>
148 <?php
149 }
150
151 /**
152 * Register controls
153 */
154 protected function _register_controls()
155 {
156 $default = 'Wishing you a very happy and prosperous Diwali.
157
158 May the light of Diwali fill your home with light of joy and happiness.
159
160 On this great day, I wish you a happy Diwali.';
161 Helpers::register_copy_content_section( $this, [
162 'default' => $default,
163 ] );
164 /**
165 * Group: Wish Section
166 */
167 $this->start_controls_section( 'wish_section', [
168 'label' => esc_html__( 'Wish', 'copy-the-code' ),
169 ] );
170 // Two paragraph gap in pixcel.
171 $this->add_responsive_control( 'line_gap', [
172 'label' => esc_html__( 'Line Gap', 'copy-the-code' ),
173 'type' => Controls_Manager::SLIDER,
174 'size_units' => [ 'px', 'em' ],
175 'range' => [
176 'px' => [
177 'min' => 0,
178 'max' => 100,
179 ],
180 ],
181 'selectors' => [
182 '{{WRAPPER}} .ctc-wish-text p' => 'margin-bottom: {{SIZE}}{{UNIT}};',
183 ],
184 ] );
185 $this->add_control( 'wish', [
186 'label' => esc_html__( 'Wish', 'copy-the-code' ),
187 'type' => Controls_Manager::WYSIWYG,
188 'default' => $default,
189 ] );
190 $this->end_controls_section();
191 Helpers::register_copy_button_section( $this, [
192 'button_text' => esc_html__( 'Copy Wish', 'copy-the-code' ),
193 ] );
194 Helpers::register_pro_sections( $this, [ 'Wish Box', 'Wish' ] );
195 Helpers::register_copy_button_style_section( $this );
196 }
197
198 }