PluginProbe
Tagembed: Social Media Feeds and Customer Reviews Widget / 8.1
Tagembed: Social Media Feeds and Customer Reviews Widget v8.1
8.1 7.9 8.0 7.8 7.5 7.6 7.7 7.4 trunk 3.10 3.9 4.0 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 5.0 5.1 5.2 5.3 All 46 releases
← All changes | tagembed.php +42 -28 7.9 → 8.1 View file →
@@ -3,9 +3,9 @@
3 3 /**
4 4 * Plugin Name: Tagembed: Social Media Feeds and Customer Reviews Widget
5 5 * Plugin URI: https://tagembed.com/
6 6 * Description: Display social media feeds and user-generated content in an interactive widget.
7 - * Version: 7.9
7 + * Version: 8.1
8 8 * Author: Tagembed
9 9 * Author URI: https://tagembed.com/
10 10 * License: GPLv3
11 11 * License URI: https://www.gnu.org/licenses/gpl-3.0.html
@@ -15,9 +15,9 @@
15 15 die;
16 16 endif;
17 17
18 18 /* --Start-- Create Constant */
19 -!defined('TAGEMBED_PLUGIN_VERSION') && define('TAGEMBED_PLUGIN_VERSION', '7.9');
19 +!defined('TAGEMBED_PLUGIN_VERSION') && define('TAGEMBED_PLUGIN_VERSION', '8.1');
20 20 !defined('TAGEMBED_PLUGIN_DIR_PATH') && define('TAGEMBED_PLUGIN_DIR_PATH', plugin_dir_path(__FILE__));
21 21 !defined('TAGEMBED_PLUGIN_URL') && define('TAGEMBED_PLUGIN_URL', plugin_dir_url(__FILE__));
22 22 !defined('TAGEMBED_PLUGIN_REDIRECT_URL') && define('TAGEMBED_PLUGIN_REDIRECT_URL', get_admin_url(null, 'admin.php?page='));
23 23
@@ -180,8 +180,9 @@
180 180 $param['emailId'] = sanitize_email($data->emailId);
181 181 $param['password'] = $data->password;
182 182 $param['contact_no'] = $data->contact_no;
183 183 $param['calling_code'] = $data->calling_code;
184 + $param['timezone'] = !empty($data->timezone) ? sanitize_text_field($data->timezone) : '';
184 185 $param['platform'] = TAGEMBED_PLUGIN_PLATFORM;
185 186 /* --End-- Manage Param Data */
186 187 $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/register', $param, []);
187 188 $response = ___tagembed__manageApiResponse($response);
@@ -254,8 +255,30 @@
254 255 unset($param);
255 256 $response = ___tagembed__manageApiResponse($response);
256 257 return ___tagembed__exitWithSuccess($response);
257 258 break;
259 + case '__tagembed__get_cards':
260 + if (empty($__tagembed__user_details)) :
261 + return ___tagembed__exitWithDanger();
262 + endif;
263 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
264 + $param['platform'] = TAGEMBED_PLUGIN_PLATFORM;
265 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/getcards', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
266 + unset($param);
267 + $response = ___tagembed__manageApiResponse($response);
268 + return ___tagembed__exitWithSuccess($response);
269 + break;
270 + case '__tagembed__card_session':
271 + if (empty($__tagembed__user_details)) :
272 + return ___tagembed__exitWithDanger();
273 + endif;
274 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
275 + $param['platform'] = TAGEMBED_PLUGIN_PLATFORM;
276 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/cardsession', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
277 + unset($param);
278 + $response = ___tagembed__manageApiResponse($response);
279 + return ___tagembed__exitWithSuccess($response);
280 + break;
258 281 case '__tagembed__get_plan_status':
259 282 if (empty($__tagembed__user_details)) :
260 283 return ___tagembed__exitWithDanger();
261 284 endif;
@@ -739,44 +762,35 @@
739 762 endswitch;
740 763 break;
741 764 case 10:
742 765 if (in_array($__tagembed__feed_filter_id, [1, 16, 17])) :
743 - if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) :
766 + if (!preg_match('/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) :
744 767 return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']);
745 768 endif;
746 769 endif;
747 770 switch ($__tagembed__feed_filter_id):
748 771 case 16:
749 - $postUrl = parse_url($data->feed);
750 - if (!strstr($postUrl['host'], 'linkedin')) :
751 - return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Linkedin Post Url']);
772 + $__tagembed__postHostUrl = wp_parse_url($data->feed, PHP_URL_HOST);
773 + $__tagembed__postHostUrl = is_string($__tagembed__postHostUrl) ? strtolower($__tagembed__postHostUrl) : '';
774 + if ($__tagembed__postHostUrl === 'lnkd.in' || substr($__tagembed__postHostUrl, -8) === '.lnkd.in') :
775 + $__tagembed__expandedPostUrl = ___tagembed__expandLinkedinShortUrl($data->feed);
776 + if (!empty($__tagembed__expandedPostUrl)) :
777 + $data->feed = $__tagembed__expandedPostUrl;
778 + $__tagembed__postHostUrl = wp_parse_url($data->feed, PHP_URL_HOST);
779 + $__tagembed__postHostUrl = is_string($__tagembed__postHostUrl) ? strtolower($__tagembed__postHostUrl) : '';
780 + endif;
752 781 endif;
753 - $postUrl = $data->feed;
754 - $postUrl = rtrim($postUrl, '/');
755 - preg_match('/[^\/]+$/', $postUrl, $postId);
756 - $postId = $postId[0];
757 - $postId = (explode('?', $postId)[0]);
758 - $value1 = 'LinkedIn';
759 - if (stripos($postId, 'activity') !== false) :
760 - $postId = (explode('activity', $postId)[1]);
761 - $value2 = 'activity';
762 - elseif (stripos($postId, 'ugcPost') !== false) :
763 - $postId = (explode('ugcPost', $postId)[1]);
764 - $value2 = 'ugcPost';
765 - else :
782 + if (!strstr($__tagembed__postHostUrl, 'linkedin')) :
766 783 return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Linkedin Post Url']);
767 784 endif;
768 - preg_match_all('!\d+!', $postId, $postId);
769 - if (isset($postId[0][0]) && empty($postId[0][0])) :
785 + $__tagembed__parsedPost = ___tagembed__parseLinkedinPostUrl($data->feed);
786 + if (empty($__tagembed__parsedPost['value2']) || empty($__tagembed__parsedPost['value3'])) :
770 787 return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Linkedin Post Url']);
771 788 endif;
772 - $value3 = $postId[0][0];
773 - if (empty($value1) || empty($value2) || empty($value3)) :
774 - return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Linkedin Post Url']);
775 - endif;
776 - $__tagembed__feed_input_data['value1'] = $value1;
777 - $__tagembed__feed_input_data['value2'] = $value2;
778 - $__tagembed__feed_input_data['value3'] = $value3;
789 + $__tagembed__feed_input_data['feed'] = sanitize_text_field($data->feed);
790 + $__tagembed__feed_input_data['value1'] = 'LinkedIn';
791 + $__tagembed__feed_input_data['value2'] = $__tagembed__parsedPost['value2'];
792 + $__tagembed__feed_input_data['value3'] = $__tagembed__parsedPost['value3'];
779 793 break;
780 794 case 1:
781 795 case 17:
782 796 $url = parse_url($data->feed);