Version Description
07/02/2022 =
Improved: Data escaping for Security Enhancement
Few minor bug fixes & improvements
Download this release
Release Info
| Developer | wpdevteam |
| Plugin | |
| Version | 5.0.7 |
| Comparing to | |
| See all releases | |
Code changes from version 5.0.6 to 5.0.7
- essential_adons_elementor.php +4 -4
- includes/Classes/Plugin_Usage_Tracker.php +4 -4
- includes/Classes/WPDeveloper_Notice.php +4 -2
- includes/Classes/WPDeveloper_Setup_Wizard.php +1 -1
- includes/Traits/Elements.php +1 -2
- includes/Traits/Facebook_Feed.php +207 -206
- includes/Traits/Generator.php +1 -1
- includes/Traits/Helper.php +5 -4
- languages/essential-addons-for-elementor-lite.pot +16 -16
- readme.txt +6 -1
essential_adons_elementor.php
CHANGED
|
@@ -4,14 +4,14 @@
|
|
| 4 |
* Description: The Essential plugin you install after Elementor! Packed with 40+ stunning free elements including Advanced Data Table, Event Calendar, Filterable Gallery, WooCommerce, and many more.
|
| 5 |
* Plugin URI: https://essential-addons.com/elementor/
|
| 6 |
* Author: WPDeveloper
|
| 7 |
-
* Version: 5.0.
|
| 8 |
* Author URI: https://wpdeveloper.com/
|
| 9 |
* Text Domain: essential-addons-for-elementor-lite
|
| 10 |
* Domain Path: /languages
|
| 11 |
*
|
| 12 |
* WC tested up to: 6.1.1
|
| 13 |
-
* Elementor tested up to: 3.5.
|
| 14 |
-
* Elementor Pro tested up to: 3.
|
| 15 |
*/
|
| 16 |
|
| 17 |
if (!defined('ABSPATH')) {
|
|
@@ -27,7 +27,7 @@ define('EAEL_PLUGIN_FILE', __FILE__);
|
|
| 27 |
define('EAEL_PLUGIN_BASENAME', plugin_basename(__FILE__));
|
| 28 |
define('EAEL_PLUGIN_PATH', trailingslashit(plugin_dir_path(__FILE__)));
|
| 29 |
define('EAEL_PLUGIN_URL', trailingslashit(plugins_url('/', __FILE__)));
|
| 30 |
-
define('EAEL_PLUGIN_VERSION', '5.0.
|
| 31 |
define('EAEL_ASSET_PATH', wp_upload_dir()['basedir'] . '/essential-addons-elementor');
|
| 32 |
define('EAEL_ASSET_URL', wp_upload_dir()['baseurl'] . '/essential-addons-elementor');
|
| 33 |
/**
|
| 4 |
* Description: The Essential plugin you install after Elementor! Packed with 40+ stunning free elements including Advanced Data Table, Event Calendar, Filterable Gallery, WooCommerce, and many more.
|
| 5 |
* Plugin URI: https://essential-addons.com/elementor/
|
| 6 |
* Author: WPDeveloper
|
| 7 |
+
* Version: 5.0.7
|
| 8 |
* Author URI: https://wpdeveloper.com/
|
| 9 |
* Text Domain: essential-addons-for-elementor-lite
|
| 10 |
* Domain Path: /languages
|
| 11 |
*
|
| 12 |
* WC tested up to: 6.1.1
|
| 13 |
+
* Elementor tested up to: 3.5.5
|
| 14 |
+
* Elementor Pro tested up to: 3.6.0
|
| 15 |
*/
|
| 16 |
|
| 17 |
if (!defined('ABSPATH')) {
|
| 27 |
define('EAEL_PLUGIN_BASENAME', plugin_basename(__FILE__));
|
| 28 |
define('EAEL_PLUGIN_PATH', trailingslashit(plugin_dir_path(__FILE__)));
|
| 29 |
define('EAEL_PLUGIN_URL', trailingslashit(plugins_url('/', __FILE__)));
|
| 30 |
+
define('EAEL_PLUGIN_VERSION', '5.0.7');
|
| 31 |
define('EAEL_ASSET_PATH', wp_upload_dir()['basedir'] . '/essential-addons-elementor');
|
| 32 |
define('EAEL_ASSET_URL', wp_upload_dir()['baseurl'] . '/essential-addons-elementor');
|
| 33 |
/**
|
includes/Classes/Plugin_Usage_Tracker.php
CHANGED
|
@@ -619,7 +619,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
| 619 |
$output .= "<script type='text/javascript'>jQuery('.wpinsights-". esc_attr( $this->plugin_name ) ."-collect').on('click', function(e) {e.preventDefault();jQuery('.wpinsights-data').slideToggle('fast');});</script>";
|
| 620 |
$output .= '</div>';
|
| 621 |
|
| 622 |
-
|
| 623 |
}
|
| 624 |
/**
|
| 625 |
* Set all notice options to customized notice.
|
|
@@ -846,7 +846,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
| 846 |
// Fade in spinner
|
| 847 |
$("#wpinsights-goodbye-form-<?php echo $class_plugin_name; ?> .deactivating-spinner").fadeIn();
|
| 848 |
e.preventDefault();
|
| 849 |
-
var checkedInput = $("input[name='wpinsights-<?php echo $class_plugin_name; ?>-goodbye-options']:checked"),
|
| 850 |
checkedInputVal, details;
|
| 851 |
if( checkedInput.length > 0 ) {
|
| 852 |
checkedInputVal = checkedInput.val();
|
|
@@ -861,7 +861,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
| 861 |
}
|
| 862 |
|
| 863 |
var data = {
|
| 864 |
-
'action': 'deactivation_form_<?php echo $class_plugin_name; ?>',
|
| 865 |
'values': checkedInputVal,
|
| 866 |
'details': details,
|
| 867 |
'security': "<?php echo wp_create_nonce ( 'wpins_deactivation_nonce' ); ?>",
|
|
@@ -885,7 +885,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
| 885 |
// If we click outside the form, the form will close
|
| 886 |
$('.wpinsights-goodbye-form-bg').on('click',function(){
|
| 887 |
$("#wpinsights-goodbye-form").fadeOut();
|
| 888 |
-
$('body').removeClass('wpinsights-form-active-<?php echo $class_plugin_name; ?>');
|
| 889 |
});
|
| 890 |
});
|
| 891 |
});
|
| 619 |
$output .= "<script type='text/javascript'>jQuery('.wpinsights-". esc_attr( $this->plugin_name ) ."-collect').on('click', function(e) {e.preventDefault();jQuery('.wpinsights-data').slideToggle('fast');});</script>";
|
| 620 |
$output .= '</div>';
|
| 621 |
|
| 622 |
+
printf( '%1$s', $output );
|
| 623 |
}
|
| 624 |
/**
|
| 625 |
* Set all notice options to customized notice.
|
| 846 |
// Fade in spinner
|
| 847 |
$("#wpinsights-goodbye-form-<?php echo $class_plugin_name; ?> .deactivating-spinner").fadeIn();
|
| 848 |
e.preventDefault();
|
| 849 |
+
var checkedInput = $("input[name='wpinsights-<?php echo esc_attr( $class_plugin_name ); ?>-goodbye-options']:checked"),
|
| 850 |
checkedInputVal, details;
|
| 851 |
if( checkedInput.length > 0 ) {
|
| 852 |
checkedInputVal = checkedInput.val();
|
| 861 |
}
|
| 862 |
|
| 863 |
var data = {
|
| 864 |
+
'action': 'deactivation_form_<?php echo esc_attr( $class_plugin_name ); ?>',
|
| 865 |
'values': checkedInputVal,
|
| 866 |
'details': details,
|
| 867 |
'security': "<?php echo wp_create_nonce ( 'wpins_deactivation_nonce' ); ?>",
|
| 885 |
// If we click outside the form, the form will close
|
| 886 |
$('.wpinsights-goodbye-form-bg').on('click',function(){
|
| 887 |
$("#wpinsights-goodbye-form").fadeOut();
|
| 888 |
+
$('body').removeClass('wpinsights-form-active-<?php echo esc_attr( $class_plugin_name ); ?>');
|
| 889 |
});
|
| 890 |
});
|
| 891 |
});
|
includes/Classes/WPDeveloper_Notice.php
CHANGED
|
@@ -456,7 +456,8 @@ class WPDeveloper_Notice {
|
|
| 456 |
$output .= '<img src="'. esc_url( $this->data['thumbnail'][ $msg_for ] ) .'" alt="">';
|
| 457 |
$output .= '</div>';
|
| 458 |
}
|
| 459 |
-
echo $output;
|
|
|
|
| 460 |
}
|
| 461 |
/**
|
| 462 |
* Has Thumbnail Check
|
|
@@ -598,7 +599,8 @@ class WPDeveloper_Notice {
|
|
| 598 |
}
|
| 599 |
}
|
| 600 |
$output .= '</ul>';
|
| 601 |
-
|
|
|
|
| 602 |
endif;
|
| 603 |
}
|
| 604 |
/**
|
| 456 |
$output .= '<img src="'. esc_url( $this->data['thumbnail'][ $msg_for ] ) .'" alt="">';
|
| 457 |
$output .= '</div>';
|
| 458 |
}
|
| 459 |
+
echo wp_kses_post( $output );
|
| 460 |
+
|
| 461 |
}
|
| 462 |
/**
|
| 463 |
* Has Thumbnail Check
|
| 599 |
}
|
| 600 |
}
|
| 601 |
$output .= '</ul>';
|
| 602 |
+
|
| 603 |
+
printf( '%1$s', $output );
|
| 604 |
endif;
|
| 605 |
}
|
| 606 |
/**
|
includes/Classes/WPDeveloper_Setup_Wizard.php
CHANGED
|
@@ -254,7 +254,7 @@ class WPDeveloper_Setup_Wizard {
|
|
| 254 |
<input data-preferences="<?php echo esc_attr( $preferences ); ?>" type="checkbox"
|
| 255 |
class="eael-element" id="<?php echo esc_attr( $element[ 'key' ] ); ?>"
|
| 256 |
name="eael_element[<?php echo esc_attr( $element[ 'key' ] ); ?>]"
|
| 257 |
-
<?php echo $checked; ?> >
|
| 258 |
<span class="eael-quick-setup-toggler-icons"></span>
|
| 259 |
</label>
|
| 260 |
</div>
|
| 254 |
<input data-preferences="<?php echo esc_attr( $preferences ); ?>" type="checkbox"
|
| 255 |
class="eael-element" id="<?php echo esc_attr( $element[ 'key' ] ); ?>"
|
| 256 |
name="eael_element[<?php echo esc_attr( $element[ 'key' ] ); ?>]"
|
| 257 |
+
<?php echo esc_attr( $checked ); ?> >
|
| 258 |
<span class="eael-quick-setup-toggler-icons"></span>
|
| 259 |
</label>
|
| 260 |
</div>
|
includes/Traits/Elements.php
CHANGED
|
@@ -530,8 +530,7 @@ trait Elements
|
|
| 530 |
}
|
| 531 |
}
|
| 532 |
}
|
| 533 |
-
|
| 534 |
-
echo $html;
|
| 535 |
}
|
| 536 |
|
| 537 |
/**
|
| 530 |
}
|
| 531 |
}
|
| 532 |
}
|
| 533 |
+
printf( '%1$s', $html );
|
|
|
|
| 534 |
}
|
| 535 |
|
| 536 |
/**
|
includes/Traits/Facebook_Feed.php
CHANGED
|
@@ -2,247 +2,248 @@
|
|
| 2 |
|
| 3 |
namespace Essential_Addons_Elementor\Traits;
|
| 4 |
|
| 5 |
-
if (!defined('ABSPATH')) {
|
| 6 |
-
|
| 7 |
} // Exit if accessed directly
|
| 8 |
use \Essential_Addons_Elementor\Classes\Helper as HelperClass;
|
| 9 |
|
| 10 |
-
trait Facebook_Feed
|
| 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 |
-
|
| 80 |
-
|
| 81 |
-
|
| 82 |
-
|
| 83 |
-
|
| 84 |
-
|
| 85 |
-
|
| 86 |
-
|
| 87 |
-
|
| 88 |
-
|
| 89 |
-
|
| 90 |
-
|
| 91 |
-
|
| 92 |
-
|
| 93 |
-
|
| 94 |
-
|
| 95 |
-
|
|
|
|
| 96 |
<div class="eael-facebook-feed-item-inner">
|
| 97 |
<header class="eael-facebook-feed-item-header clearfix">
|
| 98 |
<div class="eael-facebook-feed-item-user clearfix">
|
| 99 |
-
<a href="https://www.facebook.com/' . $page_id . '" target="' . ($settings['eael_facebook_feed_link_target'] == 'yes' ? '_blank' : '_self') . '"><img src="https://graph.facebook.com/v4.0/' . $page_id . '/picture" alt="' . esc_attr( $item['from']['name'] ) . '" class="eael-facebook-feed-avatar"></a>
|
| 100 |
-
<a href="https://www.facebook.com/' . $page_id . '" target="' . ($settings['eael_facebook_feed_link_target'] == 'yes' ? '_blank' : '_self') . '"><p class="eael-facebook-feed-username">' . esc_html( $item['from']['name'] ) . '</p></a>
|
| 101 |
</div>';
|
| 102 |
|
| 103 |
-
|
| 104 |
-
|
| 105 |
-
|
| 106 |
-
|
| 107 |
|
| 108 |
-
|
| 109 |
-
|
| 110 |
-
<p class="eael-facebook-feed-message">' . $this->eael_str_check($message) . '</p>
|
| 111 |
</div>';
|
| 112 |
-
|
| 113 |
|
| 114 |
-
|
| 115 |
-
|
| 116 |
-
|
| 117 |
|
| 118 |
-
|
| 119 |
|
| 120 |
-
|
| 121 |
-
|
| 122 |
-
|
| 123 |
<div class="eael-facebook-feed-preview-overlay"><i class="far fa-play-circle" aria-hidden="true"></i></div>';
|
| 124 |
-
|
| 125 |
-
|
| 126 |
-
|
| 127 |
-
|
| 128 |
-
|
| 129 |
-
|
| 130 |
-
|
| 131 |
-
|
| 132 |
-
|
| 133 |
-
|
| 134 |
-
|
| 135 |
-
|
| 136 |
-
|
| 137 |
-
|
| 138 |
-
|
| 139 |
-
|
| 140 |
-
|
| 141 |
-
|
| 142 |
-
|
| 143 |
-
|
| 144 |
-
|
| 145 |
-
|
| 146 |
-
|
| 147 |
-
|
| 148 |
<img class="eael-facebook-feed-img" src="' . esc_url( $photo ) . '">
|
| 149 |
<div class="eael-facebook-feed-preview-overlay"><i class="far fa-play-circle" aria-hidden="true"></i></div>
|
| 150 |
</a>';
|
| 151 |
-
|
| 152 |
-
|
| 153 |
-
|
| 154 |
|
| 155 |
-
|
| 156 |
<img class="eael-facebook-feed-img" src="' . esc_url( $photo ) . '">
|
| 157 |
</a>';
|
| 158 |
|
| 159 |
-
|
| 160 |
-
|
| 161 |
-
|
| 162 |
-
|
| 163 |
|
| 164 |
|
| 165 |
-
|
| 166 |
-
|
| 167 |
<div class="clearfix">';
|
| 168 |
-
|
| 169 |
-
|
| 170 |
-
|
| 171 |
-
|
| 172 |
-
|
| 173 |
-
|
| 174 |
-
|
| 175 |
</footer>';
|
| 176 |
-
|
| 177 |
-
|
| 178 |
</div>';
|
| 179 |
-
|
| 180 |
-
|
| 181 |
<div class="eael-facebook-feed-item-inner">
|
| 182 |
-
<img class="eael-facebook-feed-img" src="' . (empty($photo) ? EAEL_PLUGIN_URL . 'assets/front-end/img/flexia-preview.jpg' : esc_url( $photo )) . '">';
|
| 183 |
|
| 184 |
-
|
| 185 |
-
|
| 186 |
<div class="eael-facebook-feed-item-overlay-inner">
|
| 187 |
<div class="eael-facebook-feed-meta">';
|
| 188 |
-
|
| 189 |
-
|
| 190 |
-
|
| 191 |
-
|
| 192 |
-
|
| 193 |
-
|
| 194 |
-
|
| 195 |
</div>
|
| 196 |
</div>';
|
| 197 |
-
|
| 198 |
-
|
| 199 |
</a>';
|
| 200 |
-
|
| 201 |
-
|
| 202 |
-
|
| 203 |
-
|
| 204 |
-
|
| 205 |
-
|
| 206 |
-
|
| 207 |
-
|
| 208 |
-
|
| 209 |
-
|
| 210 |
-
|
| 211 |
-
|
| 212 |
-
|
| 213 |
-
|
| 214 |
-
|
| 215 |
-
|
| 216 |
-
|
| 217 |
-
|
| 218 |
-
|
| 219 |
-
|
| 220 |
-
|
| 221 |
-
|
| 222 |
-
|
| 223 |
-
|
| 224 |
-
|
| 225 |
-
|
| 226 |
-
|
| 227 |
-
|
| 228 |
-
public function eael_str_check($textData = '') {
|
| 229 |
$stringText = '';
|
| 230 |
-
if(strlen($textData) > 5) {
|
| 231 |
-
$explodeText = explode(' ', trim($textData));
|
| 232 |
-
for($st = 0; $st < count($explodeText); $st++) {
|
| 233 |
-
$pos = stripos(trim($explodeText[$st]), '#');
|
| 234 |
-
$pos1 = stripos(trim($explodeText[$st]), '@');
|
| 235 |
-
$poshttp = stripos(trim($explodeText[$st]), 'http');
|
| 236 |
-
$poshttps = stripos(trim($explodeText[$st]), 'https');
|
| 237 |
-
|
| 238 |
-
if($pos !== false) {
|
| 239 |
-
$stringText .= '<a href="https://facebook.com/hashtag/' . str_replace('#', '', $explodeText[$st]) . '?source=feed_text" target="_blank"> ' . esc_html( $explodeText[$st] ) . ' </a>';
|
| 240 |
-
} elseif($pos1 !== false) {
|
| 241 |
-
$stringText .= '<a href="https://facebook.com/' . $explodeText[$st] . '/" target="_blank"> ' . esc_html( $explodeText[$st] ) . ' </a>';
|
| 242 |
-
} elseif($poshttp !== false || $poshttps !== false) {
|
| 243 |
-
$stringText .= '<a href="' . esc_url( $explodeText[$st] ) . '" target="_blank"> ' . esc_html( $explodeText[$st] ) . ' </a>';
|
| 244 |
} else {
|
| 245 |
-
$stringText .= ' ' . $explodeText[$st];
|
| 246 |
}
|
| 247 |
}
|
| 248 |
}
|
| 2 |
|
| 3 |
namespace Essential_Addons_Elementor\Traits;
|
| 4 |
|
| 5 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
| 6 |
+
exit;
|
| 7 |
} // Exit if accessed directly
|
| 8 |
use \Essential_Addons_Elementor\Classes\Helper as HelperClass;
|
| 9 |
|
| 10 |
+
trait Facebook_Feed {
|
| 11 |
+
/**
|
| 12 |
+
* Facebook Feed
|
| 13 |
+
*
|
| 14 |
+
* @param array $settings optional widget's settings
|
| 15 |
+
*
|
| 16 |
+
* @return false|string|void
|
| 17 |
+
* @since 3.4.0
|
| 18 |
+
*/
|
| 19 |
+
public function facebook_feed_render_items( $settings = [] ) {
|
| 20 |
+
// check if ajax request
|
| 21 |
+
if ( isset( $_REQUEST['action'] ) && $_REQUEST['action'] == 'facebook_feed_load_more' ) {
|
| 22 |
+
$ajax = wp_doing_ajax();
|
| 23 |
+
// check ajax referer
|
| 24 |
+
check_ajax_referer( 'essential-addons-elementor', 'security' );
|
| 25 |
+
|
| 26 |
+
// init vars
|
| 27 |
+
$page = isset( $_POST['page'] ) ? intval( $_REQUEST['page'], 10 ) : 0;
|
| 28 |
+
if ( ! empty( $_POST['post_id'] ) ) {
|
| 29 |
+
$post_id = intval( $_POST['post_id'], 10 );
|
| 30 |
+
} else {
|
| 31 |
+
$err_msg = __( 'Post ID is missing', 'essential-addons-for-elementor-lite' );
|
| 32 |
+
if ( $ajax ) {
|
| 33 |
+
wp_send_json_error( $err_msg );
|
| 34 |
+
}
|
| 35 |
+
|
| 36 |
+
return false;
|
| 37 |
+
}
|
| 38 |
+
if ( ! empty( $_POST['widget_id'] ) ) {
|
| 39 |
+
$widget_id = sanitize_text_field( $_POST['widget_id'] );
|
| 40 |
+
} else {
|
| 41 |
+
$err_msg = __( 'Widget ID is missing', 'essential-addons-for-elementor-lite' );
|
| 42 |
+
if ( $ajax ) {
|
| 43 |
+
wp_send_json_error( $err_msg );
|
| 44 |
+
}
|
| 45 |
+
|
| 46 |
+
return false;
|
| 47 |
+
}
|
| 48 |
+
$settings = HelperClass::eael_get_widget_settings( $post_id, $widget_id );
|
| 49 |
+
|
| 50 |
+
} else {
|
| 51 |
+
// init vars
|
| 52 |
+
$page = 0;
|
| 53 |
+
$settings = ! empty( $settings ) ? $settings : $this->get_settings_for_display();
|
| 54 |
+
}
|
| 55 |
+
|
| 56 |
+
$html = '';
|
| 57 |
+
$page_id = $settings['eael_facebook_feed_page_id'];
|
| 58 |
+
$token = $settings['eael_facebook_feed_access_token'];
|
| 59 |
+
|
| 60 |
+
if ( empty( $page_id ) || empty( $token ) ) {
|
| 61 |
+
return;
|
| 62 |
+
}
|
| 63 |
+
|
| 64 |
+
$key = 'eael_facebook_feed_' . md5( str_rot13( str_replace( '.', '', $page_id . $token ) ) . $settings['eael_facebook_feed_cache_limit'] );
|
| 65 |
+
$facebook_data = get_transient( $key );
|
| 66 |
+
if ( $facebook_data == false ) {
|
| 67 |
+
$facebook_data = wp_remote_retrieve_body( wp_remote_get( "https://graph.facebook.com/v8.0/{$page_id}/posts?fields=status_type,created_time,from,message,story,full_picture,permalink_url,attachments.limit(1){type,media_type,title,description,unshimmed_url},comments.summary(total_count),reactions.summary(total_count)&limit=99&access_token={$token}", [
|
| 68 |
+
'timeout' => 70,
|
| 69 |
+
] ) );
|
| 70 |
+
$facebook_data = json_decode( $facebook_data, true );
|
| 71 |
+
if ( isset( $facebook_data['data'] ) ) {
|
| 72 |
+
set_transient( $key, $facebook_data, ( $settings['eael_facebook_feed_cache_limit'] * MINUTE_IN_SECONDS ) );
|
| 73 |
+
}
|
| 74 |
+
}
|
| 75 |
+
|
| 76 |
+
if ( ! isset( $facebook_data['data'] ) ) {
|
| 77 |
+
return;
|
| 78 |
+
}
|
| 79 |
+
$facebook_data = $facebook_data['data'];
|
| 80 |
+
|
| 81 |
+
switch ( $settings['eael_facebook_feed_sort_by'] ) {
|
| 82 |
+
case 'least-recent':
|
| 83 |
+
$facebook_data = array_reverse( $facebook_data );
|
| 84 |
+
break;
|
| 85 |
+
}
|
| 86 |
+
$items = array_splice( $facebook_data, ( $page * $settings['eael_facebook_feed_image_count']['size'] ), $settings['eael_facebook_feed_image_count']['size'] );
|
| 87 |
+
foreach ( $items as $item ) {
|
| 88 |
+
$t = 'eael_facebook_feed_message_max_length'; // short it
|
| 89 |
+
$limit = isset( $settings[ $t ] ) && isset( $settings[ $t ]['size'] ) ? $settings[ $t ]['size'] : null;
|
| 90 |
+
$message = wp_trim_words( ( isset( $item['message'] ) ? $item['message'] : ( isset( $item['story'] ) ? $item['story'] : '' ) ), $limit, '...' );
|
| 91 |
+
$photo = ( isset( $item['full_picture'] ) ? esc_url( $item['full_picture'] ) : '' );
|
| 92 |
+
$likes = ( isset( $item['reactions'] ) ? $item['reactions']['summary']['total_count'] : 0 );
|
| 93 |
+
$comments = ( isset( $item['comments'] ) ? $item['comments']['summary']['total_count'] : 0 );
|
| 94 |
+
|
| 95 |
+
if ( $settings['eael_facebook_feed_layout'] == 'card' ) {
|
| 96 |
+
$html .= '<div class="eael-facebook-feed-item">
|
| 97 |
<div class="eael-facebook-feed-item-inner">
|
| 98 |
<header class="eael-facebook-feed-item-header clearfix">
|
| 99 |
<div class="eael-facebook-feed-item-user clearfix">
|
| 100 |
+
<a href="https://www.facebook.com/' . $page_id . '" target="' . ( $settings['eael_facebook_feed_link_target'] == 'yes' ? '_blank' : '_self' ) . '"><img src="https://graph.facebook.com/v4.0/' . $page_id . '/picture" alt="' . esc_attr( $item['from']['name'] ) . '" class="eael-facebook-feed-avatar"></a>
|
| 101 |
+
<a href="https://www.facebook.com/' . $page_id . '" target="' . ( $settings['eael_facebook_feed_link_target'] == 'yes' ? '_blank' : '_self' ) . '"><p class="eael-facebook-feed-username">' . esc_html( $item['from']['name'] ) . '</p></a>
|
| 102 |
</div>';
|
| 103 |
|
| 104 |
+
if ( $settings['eael_facebook_feed_date'] ) {
|
| 105 |
+
$html .= '<a href="' . esc_url( $item['permalink_url'] ) . '" target="' . ( $settings['eael_facebook_feed_link_target'] ? '_blank' : '_self' ) . '" class="eael-facebook-feed-post-time"><i class="far fa-clock" aria-hidden="true"></i> ' . date( "d M Y", strtotime( $item['created_time'] ) ) . '</a>';
|
| 106 |
+
}
|
| 107 |
+
$html .= '</header>';
|
| 108 |
|
| 109 |
+
if ( $settings['eael_facebook_feed_message'] && ! empty( $message ) ) {
|
| 110 |
+
$html .= '<div class="eael-facebook-feed-item-content">
|
| 111 |
+
<p class="eael-facebook-feed-message">' . $this->eael_str_check( $message ) . '</p>
|
| 112 |
</div>';
|
| 113 |
+
}
|
| 114 |
|
| 115 |
+
if ( ! empty( $photo ) || isset( $item['attachments']['data'] ) ) {
|
| 116 |
+
$html .= '<div class="eael-facebook-feed-preview-wrap">';
|
| 117 |
+
if ( $item['status_type'] == 'shared_story' ) {
|
| 118 |
|
| 119 |
+
if ( isset( $settings['eael_facebook_feed_is_show_preview_thumbnail'] ) && 'yes' == $settings['eael_facebook_feed_is_show_preview_thumbnail'] ) {
|
| 120 |
|
| 121 |
+
$html .= '<a href="' . esc_url( $item['permalink_url'] ) . '" target="' . ( $settings['eael_facebook_feed_link_target'] == 'yes' ? '_blank' : '_self' ) . '" class="eael-facebook-feed-preview-img">';
|
| 122 |
+
if ( $item['attachments']['data'][0]['media_type'] == 'video' ) {
|
| 123 |
+
$html .= '<img class="eael-facebook-feed-img" src="' . esc_url( $photo ) . '">
|
| 124 |
<div class="eael-facebook-feed-preview-overlay"><i class="far fa-play-circle" aria-hidden="true"></i></div>';
|
| 125 |
+
} else {
|
| 126 |
+
$html .= '<img class="eael-facebook-feed-img" src="' . esc_url( $photo ) . '">';
|
| 127 |
+
}
|
| 128 |
+
$html .= '</a>';
|
| 129 |
+
}
|
| 130 |
+
|
| 131 |
+
$html .= '<div class="eael-facebook-feed-url-preview">';
|
| 132 |
+
if ( isset( $settings['eael_facebook_feed_is_show_preview_host'] ) && 'yes' == $settings['eael_facebook_feed_is_show_preview_host'] ) {
|
| 133 |
+
$html .= '<p class="eael-facebook-feed-url-host">' . parse_url( $item['attachments']['data'][0]['unshimmed_url'] )['host'] . '</p>';
|
| 134 |
+
}
|
| 135 |
+
if ( isset( $settings['eael_facebook_feed_is_show_preview_title'] ) && 'yes' == $settings['eael_facebook_feed_is_show_preview_title'] ) {
|
| 136 |
+
$html .= '<h2 class="eael-facebook-feed-url-title">' . esc_html( $item['attachments']['data'][0]['title'] ) . '</h2>';
|
| 137 |
+
}
|
| 138 |
+
|
| 139 |
+
if ( isset( $settings['eael_facebook_feed_is_show_preview_description'] ) && 'yes' == $settings['eael_facebook_feed_is_show_preview_description'] ) {
|
| 140 |
+
$description = isset( $item['attachments']['data'][0]['description'] ) ? $item['attachments']['data'][0]['description'] : '';
|
| 141 |
+
$html .= '<p class="eael-facebook-feed-url-description">' . $description . '</p>';
|
| 142 |
+
}
|
| 143 |
+
$html .= '</div>';
|
| 144 |
+
|
| 145 |
+
} else if ( $item['status_type'] == 'added_video' ) {
|
| 146 |
+
if ( isset( $settings['eael_facebook_feed_is_show_preview_thumbnail'] ) && 'yes' == $settings['eael_facebook_feed_is_show_preview_thumbnail'] ) {
|
| 147 |
+
|
| 148 |
+
$html .= '<a href="' . esc_url( $item['permalink_url'] ) . '" target="' . ( $settings['eael_facebook_feed_link_target'] == 'yes' ? '_blank' : '_self' ) . '" class="eael-facebook-feed-preview-img">
|
| 149 |
<img class="eael-facebook-feed-img" src="' . esc_url( $photo ) . '">
|
| 150 |
<div class="eael-facebook-feed-preview-overlay"><i class="far fa-play-circle" aria-hidden="true"></i></div>
|
| 151 |
</a>';
|
| 152 |
+
}
|
| 153 |
+
} else {
|
| 154 |
+
if ( isset( $settings['eael_facebook_feed_is_show_preview_thumbnail'] ) && 'yes' == $settings['eael_facebook_feed_is_show_preview_thumbnail'] ) {
|
| 155 |
|
| 156 |
+
$html .= '<a href="' . esc_url( $item['permalink_url'] ) . '" target="' . ( $settings['eael_facebook_feed_link_target'] == 'yes' ? '_blank' : '_self' ) . '" class="eael-facebook-feed-preview-img">
|
| 157 |
<img class="eael-facebook-feed-img" src="' . esc_url( $photo ) . '">
|
| 158 |
</a>';
|
| 159 |
|
| 160 |
+
}
|
| 161 |
+
}
|
| 162 |
+
$html .= '</div>';
|
| 163 |
+
}
|
| 164 |
|
| 165 |
|
| 166 |
+
if ( $settings['eael_facebook_feed_likes'] || $settings['eael_facebook_feed_comments'] ) {
|
| 167 |
+
$html .= '<footer class="eael-facebook-feed-item-footer">
|
| 168 |
<div class="clearfix">';
|
| 169 |
+
if ( $settings['eael_facebook_feed_likes'] ) {
|
| 170 |
+
$html .= '<span class="eael-facebook-feed-post-likes"><i class="far fa-thumbs-up" aria-hidden="true"></i> ' . esc_html( $likes ) . '</span>';
|
| 171 |
+
}
|
| 172 |
+
if ( $settings['eael_facebook_feed_comments'] ) {
|
| 173 |
+
$html .= '<span class="eael-facebook-feed-post-comments"><i class="far fa-comments" aria-hidden="true"></i> ' . esc_html( $comments ) . '</span>';
|
| 174 |
+
}
|
| 175 |
+
$html .= '</div>
|
| 176 |
</footer>';
|
| 177 |
+
}
|
| 178 |
+
$html .= '</div>
|
| 179 |
</div>';
|
| 180 |
+
} else {
|
| 181 |
+
$html .= '<a href="' . esc_url( $item['permalink_url'] ) . '" target="' . ( $settings['eael_facebook_feed_link_target'] ? '_blank' : '_self' ) . '" class="eael-facebook-feed-item">
|
| 182 |
<div class="eael-facebook-feed-item-inner">
|
| 183 |
+
<img class="eael-facebook-feed-img" src="' . ( empty( $photo ) ? EAEL_PLUGIN_URL . 'assets/front-end/img/flexia-preview.jpg' : esc_url( $photo ) ) . '">';
|
| 184 |
|
| 185 |
+
if ( $settings['eael_facebook_feed_likes'] || $settings['eael_facebook_feed_comments'] ) {
|
| 186 |
+
$html .= '<div class="eael-facebook-feed-item-overlay">
|
| 187 |
<div class="eael-facebook-feed-item-overlay-inner">
|
| 188 |
<div class="eael-facebook-feed-meta">';
|
| 189 |
+
if ( $settings['eael_facebook_feed_likes'] ) {
|
| 190 |
+
$html .= '<span class="eael-facebook-feed-post-likes"><i class="far fa-thumbs-up" aria-hidden="true"></i> ' . esc_html( $likes ) . '</span>';
|
| 191 |
+
}
|
| 192 |
+
if ( $settings['eael_facebook_feed_comments'] ) {
|
| 193 |
+
$html .= '<span class="eael-facebook-feed-post-comments"><i class="far fa-comments" aria-hidden="true"></i> ' . esc_html( $comments ) . '</span>';
|
| 194 |
+
}
|
| 195 |
+
$html .= '</div>
|
| 196 |
</div>
|
| 197 |
</div>';
|
| 198 |
+
}
|
| 199 |
+
$html .= '</div>
|
| 200 |
</a>';
|
| 201 |
+
}
|
| 202 |
+
}
|
| 203 |
+
|
| 204 |
+
if ( isset( $_REQUEST['action'] ) && $_REQUEST['action'] == 'facebook_feed_load_more' ) {
|
| 205 |
+
$data = [
|
| 206 |
+
'num_pages' => ceil( count( $facebook_data ) / $settings['eael_facebook_feed_image_count']['size'] ),
|
| 207 |
+
'html' => $html,
|
| 208 |
+
];
|
| 209 |
+
while ( ob_get_status() ) {
|
| 210 |
+
ob_end_clean();
|
| 211 |
+
}
|
| 212 |
+
if ( function_exists( 'gzencode' ) ) {
|
| 213 |
+
$response = gzencode( wp_json_encode( $data ) );
|
| 214 |
+
header( 'Content-Type: application/json; charset=utf-8' );
|
| 215 |
+
header( 'Content-Encoding: gzip' );
|
| 216 |
+
header( 'Content-Length: ' . strlen( $response ) );
|
| 217 |
+
|
| 218 |
+
printf( '%1$s', $response );
|
| 219 |
+
} else {
|
| 220 |
+
wp_send_json( $data );
|
| 221 |
+
}
|
| 222 |
+
wp_die();
|
| 223 |
+
|
| 224 |
+
}
|
| 225 |
+
|
| 226 |
+
return $html;
|
| 227 |
+
}
|
| 228 |
+
|
| 229 |
+
public function eael_str_check( $textData = '' ) {
|
| 230 |
$stringText = '';
|
| 231 |
+
if ( strlen( $textData ) > 5 ) {
|
| 232 |
+
$explodeText = explode( ' ', trim( $textData ) );
|
| 233 |
+
for ( $st = 0; $st < count( $explodeText ); $st ++ ) {
|
| 234 |
+
$pos = stripos( trim( $explodeText[ $st ] ), '#' );
|
| 235 |
+
$pos1 = stripos( trim( $explodeText[ $st ] ), '@' );
|
| 236 |
+
$poshttp = stripos( trim( $explodeText[ $st ] ), 'http' );
|
| 237 |
+
$poshttps = stripos( trim( $explodeText[ $st ] ), 'https' );
|
| 238 |
+
|
| 239 |
+
if ( $pos !== false ) {
|
| 240 |
+
$stringText .= '<a href="https://facebook.com/hashtag/' . str_replace( '#', '', $explodeText[ $st ] ) . '?source=feed_text" target="_blank"> ' . esc_html( $explodeText[ $st ] ) . ' </a>';
|
| 241 |
+
} elseif ( $pos1 !== false ) {
|
| 242 |
+
$stringText .= '<a href="https://facebook.com/' . $explodeText[ $st ] . '/" target="_blank"> ' . esc_html( $explodeText[ $st ] ) . ' </a>';
|
| 243 |
+
} elseif ( $poshttp !== false || $poshttps !== false ) {
|
| 244 |
+
$stringText .= '<a href="' . esc_url( $explodeText[ $st ] ) . '" target="_blank"> ' . esc_html( $explodeText[ $st ] ) . ' </a>';
|
| 245 |
} else {
|
| 246 |
+
$stringText .= ' ' . $explodeText[ $st ];
|
| 247 |
}
|
| 248 |
}
|
| 249 |
}
|
includes/Traits/Generator.php
CHANGED
|
@@ -236,7 +236,7 @@ trait Generator {
|
|
| 236 |
|
| 237 |
// output custom js as fallback
|
| 238 |
if ( $this->custom_js_strings ) {
|
| 239 |
-
|
| 240 |
}
|
| 241 |
}
|
| 242 |
|
| 236 |
|
| 237 |
// output custom js as fallback
|
| 238 |
if ( $this->custom_js_strings ) {
|
| 239 |
+
printf( '<script>%1$s</script>', $this->custom_js_strings );
|
| 240 |
}
|
| 241 |
}
|
| 242 |
|
includes/Traits/Helper.php
CHANGED
|
@@ -174,9 +174,9 @@ trait Helper
|
|
| 174 |
header( 'Content-Encoding: gzip' );
|
| 175 |
header( 'Content-Length: ' . strlen( $response ) );
|
| 176 |
|
| 177 |
-
|
| 178 |
} else {
|
| 179 |
-
|
| 180 |
}
|
| 181 |
wp_die();
|
| 182 |
}
|
|
@@ -736,7 +736,8 @@ trait Helper
|
|
| 736 |
|
| 737 |
$setPagination .="</ul>";
|
| 738 |
}
|
| 739 |
-
|
|
|
|
| 740 |
wp_die();
|
| 741 |
}
|
| 742 |
|
|
@@ -1018,7 +1019,7 @@ trait Helper
|
|
| 1018 |
$query->the_post();
|
| 1019 |
$html .= HelperClass::include_with_variable( $file_path, [ 'settings' => $settings ] );
|
| 1020 |
}
|
| 1021 |
-
|
| 1022 |
wp_reset_postdata();
|
| 1023 |
}
|
| 1024 |
}
|
| 174 |
header( 'Content-Encoding: gzip' );
|
| 175 |
header( 'Content-Length: ' . strlen( $response ) );
|
| 176 |
|
| 177 |
+
printf( '%1$s', $response );
|
| 178 |
} else {
|
| 179 |
+
echo wp_kses_post( $html );
|
| 180 |
}
|
| 181 |
wp_die();
|
| 182 |
}
|
| 736 |
|
| 737 |
$setPagination .="</ul>";
|
| 738 |
}
|
| 739 |
+
|
| 740 |
+
printf('%1$s', $setPagination);
|
| 741 |
wp_die();
|
| 742 |
}
|
| 743 |
|
| 1019 |
$query->the_post();
|
| 1020 |
$html .= HelperClass::include_with_variable( $file_path, [ 'settings' => $settings ] );
|
| 1021 |
}
|
| 1022 |
+
printf( '%1$s', $html );
|
| 1023 |
wp_reset_postdata();
|
| 1024 |
}
|
| 1025 |
}
|
languages/essential-addons-for-elementor-lite.pot
CHANGED
|
@@ -61,7 +61,7 @@ msgstr ""
|
|
| 61 |
msgid "Install Now!"
|
| 62 |
msgstr ""
|
| 63 |
|
| 64 |
-
#: ../includes/Classes/WPDeveloper_Plugin_Installer.php:151, ../includes/Classes/WPDeveloper_Plugin_Installer.php:169, ../includes/Classes/WPDeveloper_Plugin_Installer.php:188, ../includes/Classes/WPDeveloper_Setup_Wizard.php:517, ../includes/Classes/WPDeveloper_Setup_Wizard.php:543, ../includes/Traits/Admin.php:141, ../includes/Traits/Helper.php:
|
| 65 |
msgid "you are not allowed to do this action"
|
| 66 |
msgstr ""
|
| 67 |
|
|
@@ -197,7 +197,7 @@ msgstr ""
|
|
| 197 |
msgid "Upgrade to PRO"
|
| 198 |
msgstr ""
|
| 199 |
|
| 200 |
-
#: ../includes/Classes/WPDeveloper_Setup_Wizard.php:324, ../includes/Traits/Helper.php:
|
| 201 |
msgid "Install Templately"
|
| 202 |
msgstr ""
|
| 203 |
|
|
@@ -8131,27 +8131,27 @@ msgstr ""
|
|
| 8131 |
msgid "Loading..."
|
| 8132 |
msgstr ""
|
| 8133 |
|
| 8134 |
-
#: ../includes/Traits/Facebook_Feed.php:
|
| 8135 |
msgid "Post ID is missing"
|
| 8136 |
msgstr ""
|
| 8137 |
|
| 8138 |
-
#: ../includes/Traits/Facebook_Feed.php:41, ../includes/Traits/Helper.php:57, ../includes/Traits/Helper.php:
|
| 8139 |
msgid "Widget ID is missing"
|
| 8140 |
msgstr ""
|
| 8141 |
|
| 8142 |
-
#: ../includes/Traits/Helper.php:29, ../includes/Traits/Helper.php:
|
| 8143 |
msgid "Insecure form submitted without security token"
|
| 8144 |
msgstr ""
|
| 8145 |
|
| 8146 |
-
#: ../includes/Traits/Helper.php:37, ../includes/Traits/Helper.php:
|
| 8147 |
msgid "Security token did not match"
|
| 8148 |
msgstr ""
|
| 8149 |
|
| 8150 |
-
#: ../includes/Traits/Helper.php:47, ../includes/Traits/Helper.php:
|
| 8151 |
msgid "Page ID is missing"
|
| 8152 |
msgstr ""
|
| 8153 |
|
| 8154 |
-
#: ../includes/Traits/Helper.php:67, ../includes/Traits/Helper.php:
|
| 8155 |
msgid "Widget settings are not found. Did you save the widget before using load more??"
|
| 8156 |
msgstr ""
|
| 8157 |
|
|
@@ -8163,35 +8163,35 @@ msgstr ""
|
|
| 8163 |
msgid "%s ago"
|
| 8164 |
msgstr ""
|
| 8165 |
|
| 8166 |
-
#: ../includes/Traits/Helper.php:
|
| 8167 |
msgid "1,700+ Stunning Templates"
|
| 8168 |
msgstr ""
|
| 8169 |
|
| 8170 |
-
#: ../includes/Traits/Helper.php:
|
| 8171 |
msgid "Supports Elementor & Gutenberg"
|
| 8172 |
msgstr ""
|
| 8173 |
|
| 8174 |
-
#: ../includes/Traits/Helper.php:
|
| 8175 |
msgid "Powering up 100,000+ Websites"
|
| 8176 |
msgstr ""
|
| 8177 |
|
| 8178 |
-
#: ../includes/Traits/Helper.php:
|
| 8179 |
msgid "Cloud Collaboration with Team"
|
| 8180 |
msgstr ""
|
| 8181 |
|
| 8182 |
-
#: ../includes/Traits/Helper.php:
|
| 8183 |
msgid "Don’t Show This Again"
|
| 8184 |
msgstr ""
|
| 8185 |
|
| 8186 |
-
#: ../includes/Traits/Helper.php:
|
| 8187 |
msgid "Activate Templately"
|
| 8188 |
msgstr ""
|
| 8189 |
|
| 8190 |
-
#: ../includes/Traits/Helper.php:
|
| 8191 |
msgid "Activated Templately"
|
| 8192 |
msgstr ""
|
| 8193 |
|
| 8194 |
-
#: ../includes/Traits/Helper.php:
|
| 8195 |
msgid "Submit"
|
| 8196 |
msgstr ""
|
| 8197 |
|
| 61 |
msgid "Install Now!"
|
| 62 |
msgstr ""
|
| 63 |
|
| 64 |
+
#: ../includes/Classes/WPDeveloper_Plugin_Installer.php:151, ../includes/Classes/WPDeveloper_Plugin_Installer.php:169, ../includes/Classes/WPDeveloper_Plugin_Installer.php:188, ../includes/Classes/WPDeveloper_Setup_Wizard.php:517, ../includes/Classes/WPDeveloper_Setup_Wizard.php:543, ../includes/Traits/Admin.php:141, ../includes/Traits/Helper.php:851, ../includes/Traits/Library.php:158
|
| 65 |
msgid "you are not allowed to do this action"
|
| 66 |
msgstr ""
|
| 67 |
|
| 197 |
msgid "Upgrade to PRO"
|
| 198 |
msgstr ""
|
| 199 |
|
| 200 |
+
#: ../includes/Classes/WPDeveloper_Setup_Wizard.php:324, ../includes/Traits/Helper.php:827, ../includes/templates/admin/general.php:31
|
| 201 |
msgid "Install Templately"
|
| 202 |
msgstr ""
|
| 203 |
|
| 8131 |
msgid "Loading..."
|
| 8132 |
msgstr ""
|
| 8133 |
|
| 8134 |
+
#: ../includes/Traits/Facebook_Feed.php:31
|
| 8135 |
msgid "Post ID is missing"
|
| 8136 |
msgstr ""
|
| 8137 |
|
| 8138 |
+
#: ../includes/Traits/Facebook_Feed.php:41, ../includes/Traits/Helper.php:57, ../includes/Traits/Helper.php:963, ../includes/Traits/Login_Registration.php:62, ../includes/Traits/Login_Registration.php:227, ../includes/Traits/Woo_Product_Comparable.php:2133
|
| 8139 |
msgid "Widget ID is missing"
|
| 8140 |
msgstr ""
|
| 8141 |
|
| 8142 |
+
#: ../includes/Traits/Helper.php:29, ../includes/Traits/Helper.php:935, ../includes/Traits/Login_Registration.php:79, ../includes/Traits/Login_Registration.php:200
|
| 8143 |
msgid "Insecure form submitted without security token"
|
| 8144 |
msgstr ""
|
| 8145 |
|
| 8146 |
+
#: ../includes/Traits/Helper.php:37, ../includes/Traits/Helper.php:943, ../includes/Traits/Login_Registration.php:92, ../includes/Traits/Login_Registration.php:210, ../includes/Traits/Woo_Product_Comparable.php:2170
|
| 8147 |
msgid "Security token did not match"
|
| 8148 |
msgstr ""
|
| 8149 |
|
| 8150 |
+
#: ../includes/Traits/Helper.php:47, ../includes/Traits/Helper.php:953, ../includes/Traits/Login_Registration.php:55, ../includes/Traits/Login_Registration.php:222, ../includes/Traits/Woo_Product_Comparable.php:2128
|
| 8151 |
msgid "Page ID is missing"
|
| 8152 |
msgstr ""
|
| 8153 |
|
| 8154 |
+
#: ../includes/Traits/Helper.php:67, ../includes/Traits/Helper.php:972
|
| 8155 |
msgid "Widget settings are not found. Did you save the widget before using load more??"
|
| 8156 |
msgstr ""
|
| 8157 |
|
| 8163 |
msgid "%s ago"
|
| 8164 |
msgstr ""
|
| 8165 |
|
| 8166 |
+
#: ../includes/Traits/Helper.php:809
|
| 8167 |
msgid "1,700+ Stunning Templates"
|
| 8168 |
msgstr ""
|
| 8169 |
|
| 8170 |
+
#: ../includes/Traits/Helper.php:810
|
| 8171 |
msgid "Supports Elementor & Gutenberg"
|
| 8172 |
msgstr ""
|
| 8173 |
|
| 8174 |
+
#: ../includes/Traits/Helper.php:811
|
| 8175 |
msgid "Powering up 100,000+ Websites"
|
| 8176 |
msgstr ""
|
| 8177 |
|
| 8178 |
+
#: ../includes/Traits/Helper.php:812
|
| 8179 |
msgid "Cloud Collaboration with Team"
|
| 8180 |
msgstr ""
|
| 8181 |
|
| 8182 |
+
#: ../includes/Traits/Helper.php:821
|
| 8183 |
msgid "Don’t Show This Again"
|
| 8184 |
msgstr ""
|
| 8185 |
|
| 8186 |
+
#: ../includes/Traits/Helper.php:833
|
| 8187 |
msgid "Activate Templately"
|
| 8188 |
msgstr ""
|
| 8189 |
|
| 8190 |
+
#: ../includes/Traits/Helper.php:830
|
| 8191 |
msgid "Activated Templately"
|
| 8192 |
msgstr ""
|
| 8193 |
|
| 8194 |
+
#: ../includes/Traits/Helper.php:836, ../includes/templates/admin/popup.php:169
|
| 8195 |
msgid "Submit"
|
| 8196 |
msgstr ""
|
| 8197 |
|
readme.txt
CHANGED
|
@@ -4,7 +4,7 @@ Tags: elementor, elements, addons, elementor addons, elementor widget, elementor
|
|
| 4 |
Requires at least: 5.0
|
| 5 |
Tested up to: 5.9
|
| 6 |
Requires PHP: 5.6
|
| 7 |
-
Stable tag: 5.0.
|
| 8 |
License: GPLv3
|
| 9 |
License URI: https://opensource.org/licenses/GPL-3.0
|
| 10 |
|
|
@@ -241,6 +241,11 @@ Your existing elements/content will work with premium version. So you won't lose
|
|
| 241 |
|
| 242 |
== Changelog ==
|
| 243 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 244 |
= 5.0.6 - 02/02/2022 =
|
| 245 |
|
| 246 |
- Improved: Data sanitization, validation & escaping for Security Enhancement
|
| 4 |
Requires at least: 5.0
|
| 5 |
Tested up to: 5.9
|
| 6 |
Requires PHP: 5.6
|
| 7 |
+
Stable tag: 5.0.7
|
| 8 |
License: GPLv3
|
| 9 |
License URI: https://opensource.org/licenses/GPL-3.0
|
| 10 |
|
| 241 |
|
| 242 |
== Changelog ==
|
| 243 |
|
| 244 |
+
= 5.0.7 - 07/02/2022 =
|
| 245 |
+
|
| 246 |
+
- Improved: Data escaping for Security Enhancement
|
| 247 |
+
- Few minor bug fixes & improvements
|
| 248 |
+
|
| 249 |
= 5.0.6 - 02/02/2022 =
|
| 250 |
|
| 251 |
- Improved: Data sanitization, validation & escaping for Security Enhancement
|
