Changeset 3404647
- Timestamp:
- 11/28/2025 05:57:54 AM (2 weeks ago)
- Location:
- form-masks-for-elementor
- Files:
-
- 10 edited
- 1 copied
-
tags/2.5.8 (copied) (copied from form-masks-for-elementor/trunk)
-
tags/2.5.8/admin/class-cfef-admin.php (modified) (3 diffs)
-
tags/2.5.8/admin/views/form-elements.php (modified) (4 diffs)
-
tags/2.5.8/assets/js/admin-script.js (modified) (4 diffs)
-
tags/2.5.8/form-masks-for-elementor.php (modified) (5 diffs)
-
tags/2.5.8/readme.txt (modified) (2 diffs)
-
trunk/admin/class-cfef-admin.php (modified) (3 diffs)
-
trunk/admin/views/form-elements.php (modified) (4 diffs)
-
trunk/assets/js/admin-script.js (modified) (4 diffs)
-
trunk/form-masks-for-elementor.php (modified) (5 diffs)
-
trunk/readme.txt (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
form-masks-for-elementor/tags/2.5.8/admin/class-cfef-admin.php
r3348867 r3404647 202 202 } 203 203 204 public function add_to_cfkef_enabled_elements( $new_items ) { 205 $current = get_option( 'cfkef_enabled_elements', [] ); 206 $merged = array_unique( array_merge( $current, (array) $new_items ) ); 207 update_option( 'cfkef_enabled_elements', $merged ); 208 } 209 204 210 /** 205 211 * Register the settings for form elements. … … 216 222 register_setting( 'cfkef_form_elements_group', 'cfkef_toggle_all' ); 217 223 register_setting( 'cfkef_form_elements_group', 'country_code' ); 218 register_setting( 'cfkef_form_elements_group', 'cond tional_logic' );224 register_setting( 'cfkef_form_elements_group', 'conditional_logic' ); 219 225 register_setting( 'cfkef_form_elements_group', 'form_input_mask' ); 220 226 register_setting( 'cfkef_form_elements_group', 'input_mask' ); … … 224 230 register_setting( 'cfkef_form_elements_group', 'cfkef_enable_elementor_pro_form' ); 225 231 226 if (!get_option('ccfef_plugin_initialized')) { 227 // Get current enabled elements or empty array 228 update_option( 'country_code', true ); 229 230 // Set initialization flag to avoid repeating 231 update_option('ccfef_plugin_initialized', true); 232 } 233 234 if (!get_option('fme_plugin_initialized')) { 235 // Get current enabled elements or empty array 236 237 update_option( 'form_input_mask', true ); 238 239 // Set initialization flag to avoid repeating 240 update_option('fme_plugin_initialized', true); 241 242 } 243 244 if (!get_option('mfe_plugin_initialized')) { 245 // Get current enabled elements or empty array 246 247 update_option( 'input_mask', true ); 248 249 // Set initialization flag to avoid repeating 250 update_option('mfe_plugin_initialized', true); 251 232 if ( ! get_option( 'ccfef_plugin_initialized' ) ) { 233 234 $this->add_to_cfkef_enabled_elements( ['country_code'] ); 235 236 update_option( 'ccfef_plugin_initialized', true ); 237 238 } else { 239 240 if ( ! get_option( 'ccfef_migrate_done' ) ) { 241 242 $val = get_option( 'country_code', null ); 243 244 if ( ! is_null( $val ) && $val ) { 245 // Option exists AND is true 246 $this->add_to_cfkef_enabled_elements( ['country_code'] ); 247 } 248 249 update_option( 'ccfef_migrate_done', true ); 250 } 251 } 252 253 254 /** 255 * 2. FME initialization / migration 256 */ 257 if ( ! get_option( 'fme_plugin_initialized' ) ) { 258 259 $this->add_to_cfkef_enabled_elements( ['form_input_mask'] ); 260 261 update_option( 'fme_plugin_initialized', true ); 262 263 } else { 264 265 if ( ! get_option( 'fme_migrate_done' ) ) { 266 267 $val = get_option( 'form_input_mask', null ); 268 269 if ( ! is_null( $val ) && $val ) { 270 // Option exists AND is true 271 $this->add_to_cfkef_enabled_elements( ['form_input_mask'] ); 272 } 273 274 update_option( 'fme_migrate_done', true ); 275 } 276 } 277 278 279 /** 280 * 3. MFE initialization / migration 281 */ 282 if ( ! get_option( 'mfe_plugin_initialized' ) ) { 283 284 $this->add_to_cfkef_enabled_elements( ['input_mask'] ); 285 286 update_option( 'mfe_plugin_initialized', true ); 287 288 } else { 289 290 if ( ! get_option( 'mfe_migrate_done' ) ) { 291 292 $val = get_option( 'input_mask', null ); 293 294 if ( ! is_null( $val ) && $val ) { 295 // Option exists AND is true 296 $this->add_to_cfkef_enabled_elements( ['input_mask'] ); 297 } 298 299 update_option( 'mfe_migrate_done', true ); 300 } 252 301 } 253 302 } -
form-masks-for-elementor/tags/2.5.8/admin/views/form-elements.php
r3348867 r3404647 183 183 184 184 $condition_plugin_features = array( 185 'cond tional_logic' => array(185 'conditional_logic' => array( 186 186 'label' => __('Conditional Logic', 'cool-formkit'), 187 187 'how_to' => str_replace('utm_source=cfkef_plugin', 'utm_source=' . $first_plugin, 'https://docs.coolplugins.net/doc/elementor-form-conditional-fields/?utm_source=cfkef_plugin&utm_medium=inside&utm_campaign=docs&utm_content=dashboard'), … … 522 522 523 523 <label class="cfkef-toggle-switch" style="<?php echo !$is_condtional_field_active ? 'opacity: 0.2; ' : ''; ?>"> 524 <input type="checkbox" name="<?php echo esc_attr($key); ?>" value="1" <?php checked(get_option('condtional_logic')); 525 ?> class="cfkef-element-toggle" 524 <input type="checkbox" name="cfkef_enabled_elements[]" value="<?php echo esc_attr($key); ?>" <?php checked(in_array($key, $enabled_elements));?> class="cfkef-element-toggle" 526 525 <?php disabled(!$is_condtional_field_active); ?>> 527 526 <?php if (!empty($element['pro'])): ?> … … 724 723 725 724 <label class="cfkef-toggle-switch" style="<?php echo !$is_country_field_active ? 'opacity: 0.2; ' : ''; ?>"> 726 <input type="checkbox" name="<?php echo esc_attr($key); ?>" value="1" <?php checked(get_option('country_code')); 727 ?> class="cfkef-element-toggle" 725 <input type="checkbox" name="cfkef_enabled_elements[]" value="<?php echo esc_attr($key); ?>" <?php checked(in_array($key, $enabled_elements));?> class="cfkef-element-toggle" 728 726 <?php disabled(!$is_country_field_active); ?>> 729 727 <?php if (!empty($element['pro'])): ?> … … 1042 1040 1043 1041 <label class="cfkef-toggle-switch" style="<?php echo !$is_form_mask_active ? 'opacity: 0.2; ' : ''; ?>"> 1044 <input type="checkbox" name="<?php echo esc_attr($key); ?>" value="1" <?php checked(get_option('form_input_mask')); 1045 ?> class="cfkef-element-toggle" 1042 <input type="checkbox" name="cfkef_enabled_elements[]" value="<?php echo esc_attr($key); ?>" <?php checked(in_array($key, $enabled_elements)); ?> class="cfkef-element-toggle" 1046 1043 <?php disabled(!$is_form_mask_active); ?>> 1047 1044 <?php if (!empty($element['pro'])): ?> -
form-masks-for-elementor/tags/2.5.8/assets/js/admin-script.js
r3359005 r3404647 82 82 if (!headerButton || bodyInputs.length === 0) return; 83 83 84 const input1 = wrapper.querySelector('input[ name="condtional_logic"]');85 const input2 = wrapper.querySelector('input[ name="country_code"]');86 const input3 = wrapper.querySelector('input[ name="form_input_mask"]');87 const input4 = wrapper.querySelector('input[ name="input_mask"]');84 const input1 = wrapper.querySelector('input[value="conditional_logic"]'); 85 const input2 = wrapper.querySelector('input[value="country_code"]'); 86 const input3 = wrapper.querySelector('input[value="form_input_mask"]'); 87 const input4 = wrapper.querySelector('input[value="input_mask"]'); 88 88 89 89 … … 95 95 } 96 96 97 97 98 98 99 bodyInputs.forEach(input => { 99 100 100 101 102 101 input.addEventListener('change', function () { 103 102 104 103 105 if (input1 && input. name === 'condtional_logic') {104 if (input1 && input.value === 'conditional_logic') { 106 105 107 106 108 107 if(input1.checked || !input1.checked){ 109 108 110 jQuery('input[ name="condtional_logic"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect');109 jQuery('input[value="conditional_logic"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect'); 111 110 } 112 111 } 113 112 114 else if (input2 && input. name === 'country_code') {113 else if (input2 && input.value === 'country_code') { 115 114 116 115 if(input2.checked || !input2.checked){ 117 116 118 jQuery('input[ name="country_code"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect');119 } 120 } 121 122 else if (input3 && input. name === 'form_input_mask') {117 jQuery('input[value="country_code"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect'); 118 } 119 } 120 121 else if (input3 && input.value === 'form_input_mask') { 123 122 124 123 if(input3.checked || !input3.checked){ 125 124 126 jQuery('input[ name="form_input_mask"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect');127 } 128 } 129 130 else if (input4 && input. name === 'input_mask') {125 jQuery('input[value="form_input_mask"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect'); 126 } 127 } 128 129 else if (input4 && input.value === 'input_mask') { 131 130 132 131 if(input4.checked || !input4.checked){ 133 132 134 jQuery('input[ name="input_mask"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect');133 jQuery('input[value="input_mask"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect'); 135 134 } 136 135 } … … 165 164 // Append button 166 165 if (action === 'activate') { 167 tooltip.innerHTML += `<button class="cfkef-activate-plugin-btn" data-slug="${slug}" data-init="${init}">Activate Plugin</button>`; 166 const button = document.createElement('button'); 167 button.className = 'cfkef-activate-plugin-btn'; 168 button.dataset.slug = slug; 169 button.dataset.init = init; 170 button.textContent = 'Activate Plugin'; 171 tooltip.appendChild(button); 168 172 } else if (action === 'install') { 169 let extraCss; 170 if(el.classList.contains('need-install') && el.dataset.slug === 'elementor-pro'){ 171 extraCss = 'redirect-elementor-page' 172 } 173 let tooltip_text = tooltip.innerHTML; 174 175 tooltip_text = tooltip_text.replace('Install Plugin', ''); 176 177 tooltip.innerHTML = ""; 178 179 tooltip.innerHTML = tooltip_text + `<button class="cfkef-install-plugin-btn ${extraCss}" data-slug="${slug}" data-init="${init}">Install Plugin</button>`; 173 let extraCss = ''; 174 if (el.classList.contains('need-install') && el.dataset.slug === 'elementor-pro') { 175 extraCss = 'redirect-elementor-page'; 176 } 177 178 // Clear tooltip text safely 179 const tooltipText = tooltip.textContent.replace('Install Plugin', ''); 180 tooltip.textContent = tooltipText; 181 182 const button = document.createElement('button'); 183 button.className = `cfkef-install-plugin-btn ${extraCss}`; 184 button.dataset.slug = slug; 185 button.dataset.init = init; 186 button.textContent = 'Install Plugin'; 187 tooltip.appendChild(button); 180 188 } 181 189 } … … 228 236 if (res) { 229 237 window.location.reload(); 230 } 238 } 231 239 }, 232 240 error: function () { -
form-masks-for-elementor/tags/2.5.8/form-masks-for-elementor.php
r3379239 r3404647 6 6 * Author: Cool Plugins 7 7 * Author URI: https://coolplugins.net/?utm_source=fim_plugin&utm_medium=inside&utm_campaign=author_page&utm_content=plugins_list 8 * Version: 2.5. 78 * Version: 2.5.8 9 9 * Requires at least: 5.5 10 10 * Requires PHP: 7.4 … … 13 13 * License URI: http://www.gnu.org/licenses/gpl-2.0.txt 14 14 * Requires Plugins: elementor 15 * Elementor tested up to: 3.3 2.416 * Elementor Pro tested up to: 3.32. 215 * Elementor tested up to: 3.33.2 16 * Elementor Pro tested up to: 3.32.1 17 17 */ 18 18 … … 23 23 } 24 24 25 define( 'FME_VERSION', '2.5. 7' );25 define( 'FME_VERSION', '2.5.8' ); 26 26 define( 'FME_FILE', __FILE__ ); 27 27 define( 'FME_PLUGIN_BASE', plugin_basename( FME_FILE ) ); … … 69 69 } 70 70 } 71 72 private function is_field_enabled($field_key) { 73 $enabled_elements = get_option('cfkef_enabled_elements', array()); 74 return in_array(sanitize_key($field_key), array_map('sanitize_key', $enabled_elements)); 75 } 76 71 77 72 78 public function plugin_loads(){ … … 196 202 private function initialize_plugin() { 197 203 198 if( get_option('form_input_mask', true)){204 if($this->is_field_enabled('form_input_mask')){ 199 205 200 206 require_once FME_PLUGIN_PATH . 'includes/class-fme-plugin.php'; -
form-masks-for-elementor/tags/2.5.8/readme.txt
r3379239 r3404647 4 4 Tags: mask, input masks, elementor form, elementor, elementor form builder 5 5 Requires at least: 5.0 6 Tested up to: 6.8. 26 Tested up to: 6.8.3 7 7 Requires PHP: 7.2 8 Stable tag: 2.5. 78 Stable tag: 2.5.8 9 9 License: GPLv2 or later 10 10 License URI: https://www.gnu.org/licenses/gpl-2.0.html 11 Elementor tested up to: 3.3 2.412 Elementor Pro tested up to: 3.3 2.211 Elementor tested up to: 3.33.2 12 Elementor Pro tested up to: 3.33.1 13 13 14 14 Add input masks to Elementor Pro or Hello Plus form fields - phone, date, time, credit card, CPF, CNPJ, CEP & more for accurate entries. … … 192 192 == Changelog == 193 193 194 = 2.5.8 - Nov 28, 2025 = 195 - Fixed: - Setting ID mismatch causing updates to not reflect in all versions. 196 194 197 = 2.5.7 - Oct 16, 2025 = 195 198 - Fixed: - form submission issue with required hidden mask field. -
form-masks-for-elementor/trunk/admin/class-cfef-admin.php
r3348867 r3404647 202 202 } 203 203 204 public function add_to_cfkef_enabled_elements( $new_items ) { 205 $current = get_option( 'cfkef_enabled_elements', [] ); 206 $merged = array_unique( array_merge( $current, (array) $new_items ) ); 207 update_option( 'cfkef_enabled_elements', $merged ); 208 } 209 204 210 /** 205 211 * Register the settings for form elements. … … 216 222 register_setting( 'cfkef_form_elements_group', 'cfkef_toggle_all' ); 217 223 register_setting( 'cfkef_form_elements_group', 'country_code' ); 218 register_setting( 'cfkef_form_elements_group', 'cond tional_logic' );224 register_setting( 'cfkef_form_elements_group', 'conditional_logic' ); 219 225 register_setting( 'cfkef_form_elements_group', 'form_input_mask' ); 220 226 register_setting( 'cfkef_form_elements_group', 'input_mask' ); … … 224 230 register_setting( 'cfkef_form_elements_group', 'cfkef_enable_elementor_pro_form' ); 225 231 226 if (!get_option('ccfef_plugin_initialized')) { 227 // Get current enabled elements or empty array 228 update_option( 'country_code', true ); 229 230 // Set initialization flag to avoid repeating 231 update_option('ccfef_plugin_initialized', true); 232 } 233 234 if (!get_option('fme_plugin_initialized')) { 235 // Get current enabled elements or empty array 236 237 update_option( 'form_input_mask', true ); 238 239 // Set initialization flag to avoid repeating 240 update_option('fme_plugin_initialized', true); 241 242 } 243 244 if (!get_option('mfe_plugin_initialized')) { 245 // Get current enabled elements or empty array 246 247 update_option( 'input_mask', true ); 248 249 // Set initialization flag to avoid repeating 250 update_option('mfe_plugin_initialized', true); 251 232 if ( ! get_option( 'ccfef_plugin_initialized' ) ) { 233 234 $this->add_to_cfkef_enabled_elements( ['country_code'] ); 235 236 update_option( 'ccfef_plugin_initialized', true ); 237 238 } else { 239 240 if ( ! get_option( 'ccfef_migrate_done' ) ) { 241 242 $val = get_option( 'country_code', null ); 243 244 if ( ! is_null( $val ) && $val ) { 245 // Option exists AND is true 246 $this->add_to_cfkef_enabled_elements( ['country_code'] ); 247 } 248 249 update_option( 'ccfef_migrate_done', true ); 250 } 251 } 252 253 254 /** 255 * 2. FME initialization / migration 256 */ 257 if ( ! get_option( 'fme_plugin_initialized' ) ) { 258 259 $this->add_to_cfkef_enabled_elements( ['form_input_mask'] ); 260 261 update_option( 'fme_plugin_initialized', true ); 262 263 } else { 264 265 if ( ! get_option( 'fme_migrate_done' ) ) { 266 267 $val = get_option( 'form_input_mask', null ); 268 269 if ( ! is_null( $val ) && $val ) { 270 // Option exists AND is true 271 $this->add_to_cfkef_enabled_elements( ['form_input_mask'] ); 272 } 273 274 update_option( 'fme_migrate_done', true ); 275 } 276 } 277 278 279 /** 280 * 3. MFE initialization / migration 281 */ 282 if ( ! get_option( 'mfe_plugin_initialized' ) ) { 283 284 $this->add_to_cfkef_enabled_elements( ['input_mask'] ); 285 286 update_option( 'mfe_plugin_initialized', true ); 287 288 } else { 289 290 if ( ! get_option( 'mfe_migrate_done' ) ) { 291 292 $val = get_option( 'input_mask', null ); 293 294 if ( ! is_null( $val ) && $val ) { 295 // Option exists AND is true 296 $this->add_to_cfkef_enabled_elements( ['input_mask'] ); 297 } 298 299 update_option( 'mfe_migrate_done', true ); 300 } 252 301 } 253 302 } -
form-masks-for-elementor/trunk/admin/views/form-elements.php
r3348867 r3404647 183 183 184 184 $condition_plugin_features = array( 185 'cond tional_logic' => array(185 'conditional_logic' => array( 186 186 'label' => __('Conditional Logic', 'cool-formkit'), 187 187 'how_to' => str_replace('utm_source=cfkef_plugin', 'utm_source=' . $first_plugin, 'https://docs.coolplugins.net/doc/elementor-form-conditional-fields/?utm_source=cfkef_plugin&utm_medium=inside&utm_campaign=docs&utm_content=dashboard'), … … 522 522 523 523 <label class="cfkef-toggle-switch" style="<?php echo !$is_condtional_field_active ? 'opacity: 0.2; ' : ''; ?>"> 524 <input type="checkbox" name="<?php echo esc_attr($key); ?>" value="1" <?php checked(get_option('condtional_logic')); 525 ?> class="cfkef-element-toggle" 524 <input type="checkbox" name="cfkef_enabled_elements[]" value="<?php echo esc_attr($key); ?>" <?php checked(in_array($key, $enabled_elements));?> class="cfkef-element-toggle" 526 525 <?php disabled(!$is_condtional_field_active); ?>> 527 526 <?php if (!empty($element['pro'])): ?> … … 724 723 725 724 <label class="cfkef-toggle-switch" style="<?php echo !$is_country_field_active ? 'opacity: 0.2; ' : ''; ?>"> 726 <input type="checkbox" name="<?php echo esc_attr($key); ?>" value="1" <?php checked(get_option('country_code')); 727 ?> class="cfkef-element-toggle" 725 <input type="checkbox" name="cfkef_enabled_elements[]" value="<?php echo esc_attr($key); ?>" <?php checked(in_array($key, $enabled_elements));?> class="cfkef-element-toggle" 728 726 <?php disabled(!$is_country_field_active); ?>> 729 727 <?php if (!empty($element['pro'])): ?> … … 1042 1040 1043 1041 <label class="cfkef-toggle-switch" style="<?php echo !$is_form_mask_active ? 'opacity: 0.2; ' : ''; ?>"> 1044 <input type="checkbox" name="<?php echo esc_attr($key); ?>" value="1" <?php checked(get_option('form_input_mask')); 1045 ?> class="cfkef-element-toggle" 1042 <input type="checkbox" name="cfkef_enabled_elements[]" value="<?php echo esc_attr($key); ?>" <?php checked(in_array($key, $enabled_elements)); ?> class="cfkef-element-toggle" 1046 1043 <?php disabled(!$is_form_mask_active); ?>> 1047 1044 <?php if (!empty($element['pro'])): ?> -
form-masks-for-elementor/trunk/assets/js/admin-script.js
r3359005 r3404647 82 82 if (!headerButton || bodyInputs.length === 0) return; 83 83 84 const input1 = wrapper.querySelector('input[ name="condtional_logic"]');85 const input2 = wrapper.querySelector('input[ name="country_code"]');86 const input3 = wrapper.querySelector('input[ name="form_input_mask"]');87 const input4 = wrapper.querySelector('input[ name="input_mask"]');84 const input1 = wrapper.querySelector('input[value="conditional_logic"]'); 85 const input2 = wrapper.querySelector('input[value="country_code"]'); 86 const input3 = wrapper.querySelector('input[value="form_input_mask"]'); 87 const input4 = wrapper.querySelector('input[value="input_mask"]'); 88 88 89 89 … … 95 95 } 96 96 97 97 98 98 99 bodyInputs.forEach(input => { 99 100 100 101 102 101 input.addEventListener('change', function () { 103 102 104 103 105 if (input1 && input. name === 'condtional_logic') {104 if (input1 && input.value === 'conditional_logic') { 106 105 107 106 108 107 if(input1.checked || !input1.checked){ 109 108 110 jQuery('input[ name="condtional_logic"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect');109 jQuery('input[value="conditional_logic"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect'); 111 110 } 112 111 } 113 112 114 else if (input2 && input. name === 'country_code') {113 else if (input2 && input.value === 'country_code') { 115 114 116 115 if(input2.checked || !input2.checked){ 117 116 118 jQuery('input[ name="country_code"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect');119 } 120 } 121 122 else if (input3 && input. name === 'form_input_mask') {117 jQuery('input[value="country_code"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect'); 118 } 119 } 120 121 else if (input3 && input.value === 'form_input_mask') { 123 122 124 123 if(input3.checked || !input3.checked){ 125 124 126 jQuery('input[ name="form_input_mask"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect');127 } 128 } 129 130 else if (input4 && input. name === 'input_mask') {125 jQuery('input[value="form_input_mask"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect'); 126 } 127 } 128 129 else if (input4 && input.value === 'input_mask') { 131 130 132 131 if(input4.checked || !input4.checked){ 133 132 134 jQuery('input[ name="input_mask"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect');133 jQuery('input[value="input_mask"]').parent().parent().parent().parent().parent().find(".button-primary").addClass('shake-effect'); 135 134 } 136 135 } … … 165 164 // Append button 166 165 if (action === 'activate') { 167 tooltip.innerHTML += `<button class="cfkef-activate-plugin-btn" data-slug="${slug}" data-init="${init}">Activate Plugin</button>`; 166 const button = document.createElement('button'); 167 button.className = 'cfkef-activate-plugin-btn'; 168 button.dataset.slug = slug; 169 button.dataset.init = init; 170 button.textContent = 'Activate Plugin'; 171 tooltip.appendChild(button); 168 172 } else if (action === 'install') { 169 let extraCss; 170 if(el.classList.contains('need-install') && el.dataset.slug === 'elementor-pro'){ 171 extraCss = 'redirect-elementor-page' 172 } 173 let tooltip_text = tooltip.innerHTML; 174 175 tooltip_text = tooltip_text.replace('Install Plugin', ''); 176 177 tooltip.innerHTML = ""; 178 179 tooltip.innerHTML = tooltip_text + `<button class="cfkef-install-plugin-btn ${extraCss}" data-slug="${slug}" data-init="${init}">Install Plugin</button>`; 173 let extraCss = ''; 174 if (el.classList.contains('need-install') && el.dataset.slug === 'elementor-pro') { 175 extraCss = 'redirect-elementor-page'; 176 } 177 178 // Clear tooltip text safely 179 const tooltipText = tooltip.textContent.replace('Install Plugin', ''); 180 tooltip.textContent = tooltipText; 181 182 const button = document.createElement('button'); 183 button.className = `cfkef-install-plugin-btn ${extraCss}`; 184 button.dataset.slug = slug; 185 button.dataset.init = init; 186 button.textContent = 'Install Plugin'; 187 tooltip.appendChild(button); 180 188 } 181 189 } … … 228 236 if (res) { 229 237 window.location.reload(); 230 } 238 } 231 239 }, 232 240 error: function () { -
form-masks-for-elementor/trunk/form-masks-for-elementor.php
r3379239 r3404647 6 6 * Author: Cool Plugins 7 7 * Author URI: https://coolplugins.net/?utm_source=fim_plugin&utm_medium=inside&utm_campaign=author_page&utm_content=plugins_list 8 * Version: 2.5. 78 * Version: 2.5.8 9 9 * Requires at least: 5.5 10 10 * Requires PHP: 7.4 … … 13 13 * License URI: http://www.gnu.org/licenses/gpl-2.0.txt 14 14 * Requires Plugins: elementor 15 * Elementor tested up to: 3.3 2.416 * Elementor Pro tested up to: 3.32. 215 * Elementor tested up to: 3.33.2 16 * Elementor Pro tested up to: 3.32.1 17 17 */ 18 18 … … 23 23 } 24 24 25 define( 'FME_VERSION', '2.5. 7' );25 define( 'FME_VERSION', '2.5.8' ); 26 26 define( 'FME_FILE', __FILE__ ); 27 27 define( 'FME_PLUGIN_BASE', plugin_basename( FME_FILE ) ); … … 69 69 } 70 70 } 71 72 private function is_field_enabled($field_key) { 73 $enabled_elements = get_option('cfkef_enabled_elements', array()); 74 return in_array(sanitize_key($field_key), array_map('sanitize_key', $enabled_elements)); 75 } 76 71 77 72 78 public function plugin_loads(){ … … 196 202 private function initialize_plugin() { 197 203 198 if( get_option('form_input_mask', true)){204 if($this->is_field_enabled('form_input_mask')){ 199 205 200 206 require_once FME_PLUGIN_PATH . 'includes/class-fme-plugin.php'; -
form-masks-for-elementor/trunk/readme.txt
r3379239 r3404647 4 4 Tags: mask, input masks, elementor form, elementor, elementor form builder 5 5 Requires at least: 5.0 6 Tested up to: 6.8. 26 Tested up to: 6.8.3 7 7 Requires PHP: 7.2 8 Stable tag: 2.5. 78 Stable tag: 2.5.8 9 9 License: GPLv2 or later 10 10 License URI: https://www.gnu.org/licenses/gpl-2.0.html 11 Elementor tested up to: 3.3 2.412 Elementor Pro tested up to: 3.3 2.211 Elementor tested up to: 3.33.2 12 Elementor Pro tested up to: 3.33.1 13 13 14 14 Add input masks to Elementor Pro or Hello Plus form fields - phone, date, time, credit card, CPF, CNPJ, CEP & more for accurate entries. … … 192 192 == Changelog == 193 193 194 = 2.5.8 - Nov 28, 2025 = 195 - Fixed: - Setting ID mismatch causing updates to not reflect in all versions. 196 194 197 = 2.5.7 - Oct 16, 2025 = 195 198 - Fixed: - form submission issue with required hidden mask field.
Note: See TracChangeset
for help on using the changeset viewer.