PluginProbe
Tagembed: Social Media Feeds and Customer Reviews Widget / 7.8
Tagembed: Social Media Feeds and Customer Reviews Widget v7.8
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 5.4 5.5 5.6 All 43 releases
← All changes | tagembed.php +1623 -1191 4.07.8 View file →
@@ -1,1191 +1,1623 @@
1 -<?php
2 -/**
3 - * Plugin Name: Tagembed Widget
4 - * Plugin URI: https://tagembed.com/
5 - * Description: Display Facebook feed, Instagram feed, Twitter feed, YouTube Videos and more social feeds from 15+ social networks on any page, posts or widgets using shortcode. Beautifully clean, customizable, and responsive Social Media Feed Widget Plugin for WordPress.
6 - * Version: 4.0
7 - * Author: Tagembed
8 - * Author URI: https://tagembed.com/
9 - */
10 -if (!defined('WPINC'))
11 - die;
12 -/* --Start-- Create Constant */
13 -!defined('TAGEMBED_PLUGIN_VERSION') && define('TAGEMBED_PLUGIN_VERSION', '4.0');
14 -!defined('TAGEMBED_PLUGIN_DIR_PATH') && define('TAGEMBED_PLUGIN_DIR_PATH', plugin_dir_path(__FILE__));
15 -!defined('TAGEMBED_PLUGIN_URL') && define('TAGEMBED_PLUGIN_URL', plugin_dir_url(__FILE__));
16 -!defined('TAGEMBED_PLUGIN_REDIRECT_URL') && define('TAGEMBED_PLUGIN_REDIRECT_URL', get_admin_url(null, 'admin.php?page='));
17 -!defined('TAGEMBED_PLUGIN_API_URL') && define('TAGEMBED_PLUGIN_API_URL', "https://api.tagembed.com/app/");
18 -!defined('TAGEMBED_PLUGIN_CALL_BACK_URL') && define('TAGEMBED_PLUGIN_CALL_BACK_URL', admin_url() . "admin.php?page=tagembed");
19 -/* --End-- Create Constant */
20 -/* --Start--Include Files */
21 -include_once TAGEMBED_PLUGIN_DIR_PATH . "helper/helper.php";
22 -/* --End--Include Files */
23 -/* --Start-- Add Js And Css */
24 -function tagembed_plugin_scripts_css() {
25 - wp_enqueue_script('__tagembed__embbedJs', 'https://widget.tagembed.com/embed.min.js', ['jquery'], TAGEMBED_PLUGIN_VERSION, true);
26 - if (is_admin()):
27 - /* CSS */
28 - wp_enqueue_style('__tagembed__commonCss', TAGEMBED_PLUGIN_URL . '/assets/css/common.css', '', TAGEMBED_PLUGIN_VERSION);
29 - wp_enqueue_style('__tagembed__toastCss', TAGEMBED_PLUGIN_URL . '/assets/css/toast.css', '', TAGEMBED_PLUGIN_VERSION);
30 - wp_enqueue_style('__tagembed__confirmDialogCss', TAGEMBED_PLUGIN_URL . '/assets/css/confirm_dialog.css', '', TAGEMBED_PLUGIN_VERSION);
31 - wp_enqueue_style('__tagembed__tagembedloaderCss', TAGEMBED_PLUGIN_URL . '/assets/css/loader.css', '', TAGEMBED_PLUGIN_VERSION);
32 - wp_enqueue_style('__tagembed__popupCss', TAGEMBED_PLUGIN_URL . '/assets/css/styles.css', '', TAGEMBED_PLUGIN_VERSION);
33 - wp_enqueue_style('__tagembed__editorCss', TAGEMBED_PLUGIN_URL . '/assets/css/editor/editor.css', '', TAGEMBED_PLUGIN_VERSION);
34 - /* JS */
35 - wp_enqueue_script('__tagembed__faJs', TAGEMBED_PLUGIN_URL . '/assets/js/fa.js', ['jquery'], TAGEMBED_PLUGIN_VERSION);
36 - wp_enqueue_script('__tagembed__toastJs', TAGEMBED_PLUGIN_URL . '/assets/js/toast.js', ['jquery'], TAGEMBED_PLUGIN_VERSION, true);
37 - wp_enqueue_script('__tagembed__confirmDialogJs', TAGEMBED_PLUGIN_URL . '/assets/js/confirm_dialog.js', ['jquery'], TAGEMBED_PLUGIN_VERSION, true);
38 - wp_enqueue_script('__tagembed__tagemedLoaderJs', TAGEMBED_PLUGIN_URL . '/assets/js/loader.js', ['jquery'], TAGEMBED_PLUGIN_VERSION, true);
39 - wp_enqueue_script('__tagembed__deactive-js', TAGEMBED_PLUGIN_URL . '/assets/js/tagembed.deactive.js', ['jquery'], TAGEMBED_PLUGIN_VERSION, true);
40 - wp_enqueue_script('__tagembed__tagembedDialogFormJs', TAGEMBED_PLUGIN_URL . '/assets/js/dialog.form.js', ["jquery"], TAGEMBED_PLUGIN_VERSION, true);
41 - /* --Start-- Gutenberge */
42 - if (!function_exists("register_block_type")):
43 - return;
44 - else:
45 - wp_register_script("__editor-js", TAGEMBED_PLUGIN_URL . '/assets/js/editor/editor.js', ["wp-blocks", "wp-element", "wp-editor", "wp-components", "wp-i18n", "wp-data", "wp-compose"], TAGEMBED_PLUGIN_VERSION);
46 - register_block_type("tagembed-block/tagembed", ["editor_script" => "__editor-js", "editor_style" => "__editor-css", "style" => "__editor-style-css"]);
47 - endif;
48 - /* --End-- Gutenberge */
49 - endif;
50 -}
51 -add_action("init", "tagembed_plugin_scripts_css");
52 -add_filter('script_loader_tag', function ($tag, $handle) {
53 - if ('embbedJs' !== $handle)
54 - return $tag;
55 - return str_replace(' src', ' defer src', $tag);
56 -}, 10, 2);
57 -/* --End-- Add Js And Css */
58 -/* --Start-- Add Menus */
59 -function __tagembed__plugin_menus() {
60 - ob_start();
61 - ?>
62 - <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 200 200" style="enable-background:new 0 0 200 200;" xml:space="preserve">
63 - <title>Tagembed Icon</title>
64 - <g transform="translate(-211 -31)"><g id="Group_3576" transform="translate(211 31)">
65 - <path id="Path_5098" fill="#00E9FF" d="M64.3,119.1c5.4-25.2,10.2-49.2,15.6-73.8c0.6-3.6,1.2-7.2,1.8-10.8c0.6-10.8-6.6-19.8-17.4-21.6c-10.8-2.4-21,4.2-23.4,15C33,63.3,25.2,99.3,18,134.7c-3,14.4,7.2,25.2,22.8,25.2c32.4,1.2,65.4,1.8,97.8,2.4c6.6,0,12.6-0.6,18.6-3c7.8-4.2,12-13.2,9.6-22.2c-2.4-9.6-10.8-16.2-20.4-16.2c-21-0.6-42.6-1.2-63.6-1.8C76.9,119.1,70.9,119.1,64.3,119.1z"/>
66 - <path id="Path_5099" fill="#4179FF" d="M136.9,81.9c-25.8,0-50.4,0-75,0c-3.6,0-7.2,0-10.8-0.6c-10.8-1.8-18-10.8-18-21.6s9-19.8,19.8-19.8c36,0,72.6,0,109.2,0c14.4,0,22.8,12,19.8,27.6c-6,31.8-12,64.2-18,96c-1.2,6.6-3.6,12.6-7.2,17.4c-6,6.6-15.6,8.4-23.4,4.8c-9-4.2-13.2-13.8-11.4-23.4c3.6-21,7.8-41.4,11.4-62.4C134.5,94.5,135.7,87.9,136.9,81.9z"/>
67 - <g id="Group_3575" transform="translate(16.61 16.942)"><g><g><defs><polygon id="SVGID_1_" points="113.1,97 101.1,148.7 147.3,148.7 158.1,103.6"/></defs><clipPath id="SVGID_2_"><use xlink:href="#SVGID_1_" style="overflow:visible;"/></clipPath><g id="Group_3574" class="st2" clip-path="url(#SVGID_2_)"><path id="Path_5100" fill="#00E9FF" d="M47.7,101.8C53.1,76.6,57.9,52.6,63.3,28c0.6-3.6,1.2-7.2,1.8-10.8C65.7,6.4,58.5-2.6,47.7-4.4c-10.8-1.8-21,4.8-23.4,15.6C16.5,46.6,8.7,82,1.5,118.1c-3,14.4,7.2,25.2,22.8,25.2c33,0.6,65.4,1.8,98.4,2.4c6.6,0,12.6-0.6,18.6-3c7.8-4.2,12-13.2,9.6-22.2c-2.4-9.6-10.8-16.2-21-16.2c-21-0.6-42-1.2-63-1.8C60.3,102.4,54.3,102.4,47.7,101.8z"/></g></g></g></g></g></g></svg>
68 - <?php
69 - $svg = ob_get_clean();
70 - add_menu_page('Tagembed', 'Tagembed', 'manage_options', 'tagembed', '__tagembed__view', 'data:image/svg+xml;base64,' . base64_encode($svg));
71 -}
72 -add_action("admin_menu", '__tagembed__plugin_menus');
73 -/* --End-- Add Menus */
74 -/* --Start-- Add & Manage Views */
75 -function __tagembed__view() {
76 - if (!empty(__tagembed__user()->isLogin) && __tagembed__user()->isLogin == 'yes'):
77 - $__tagembed__menus = __tagembed__menus(['__tagembed__menu_condation' => 'STATUS = 1']);
78 - if (empty($__tagembed__menus)):
79 - include_once TAGEMBED_PLUGIN_DIR_PATH . "views/widget/widgetView.php";
80 - else:
81 - include_once TAGEMBED_PLUGIN_DIR_PATH . "views/" . $__tagembed__menus[0]->path . ".php";
82 - endif;
83 - else:
84 - include_once TAGEMBED_PLUGIN_DIR_PATH . "views/account/accountView.php";
85 - endif;
86 -}
87 -/* --End-- Add & Manage Views */
88 -/* --Start-- Manage Ajax Calls */
89 -add_action("wp_ajax_data", "__tagembed__dataAjaxHandler");
90 -function __tagembed__dataAjaxHandler() {
91 - if (empty($_REQUEST['__tagembed__ajax_action']))
92 - return FALSE;
93 - $data = __tagembed__sanitizeRequestData($_REQUEST);
94 - $data = (object) $data;
95 - /* --Start__ Sanetize All Input */
96 - foreach ($data as $key => $value):
97 - if (!in_array($key, ['emailId', 'password', 'youtubePlaylist']))
98 - inputSanetize($value);
99 - endforeach;
100 - /* --End__ Sanetize All Input */
101 - $param = [];
102 - global $wpdb;
103 - $action = $data->__tagembed__ajax_action;
104 - $__tagembed__user_details = __tagembed__user();
105 - switch ($action):
106 - case "__tagembed__register":
107 - if (empty($data->emailId) || empty($data->password) || empty($data->fullName))
108 - return __tagembed__exitWithDanger();
109 - /* --Start-- Manage Param Data */
110 - $param['fullName'] = sanitize_text_field($data->fullName);
111 - $param['emailId'] = sanitize_email($data->emailId);
112 - $param['password'] = $data->password;
113 - /* --End-- Manage Param Data */
114 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/register', $param);
115 - $response = __tagembed__manageApiResponse($response);
116 - unset($param);
117 - $param = ['userId' => sanitize_key($response->userId)];
118 - __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/create', $param, ['Authorization:' . $response->accessToken]);
119 - if (__tagembed__login($response) == true)
120 - return __tagembed__exitWithSuccess(["redirectUrl" => TAGEMBED_PLUGIN_CALL_BACK_URL]);
121 - return __tagembed__exitWithDanger();
122 - break;
123 - case "__tagembed__login":
124 - if (empty($data->emailId) || empty($data->password))
125 - return __tagembed__exitWithDanger();
126 - /* --Start-- Manage Param Data */
127 - $param['emailId'] = sanitize_email($data->emailId);
128 - $param['password'] = $data->password;
129 - /* --End-- Manage Param Data */
130 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/login', $param, []);
131 - unset($param);
132 - $response = __tagembed__manageApiResponse($response);
133 - if (__tagembed__login($response) == true)
134 - return __tagembed__exitWithSuccess(["redirectUrl" => TAGEMBED_PLUGIN_CALL_BACK_URL]);
135 - return __tagembed__exitWithDanger();
136 - break;
137 - case "__tagembed__logout":
138 - if (tagembed_logout())
139 - __tagembed__exitWithSuccess(["redirectUrl" => TAGEMBED_PLUGIN_REDIRECT_URL . 'tagembed']);
140 - return __tagembed__exitWithDanger();
141 - break;
142 - case "__tagembed__get_account_details":
143 - $data->auth = !empty($data->auth) ? 1 : 0;
144 - if (empty($__tagembed__user_details))
145 - return __tagembed__exitWithDanger();
146 - /* --Start-- Manage Param Data */
147 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
148 - /* --End-- Manage Param Data */
149 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/getdetails', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
150 - unset($param);
151 - $response = __tagembed__manageApiResponse($response);
152 - return __tagembed__exitWithSuccess($response);
153 - break;
154 - case "__tagembed__manage_active_widget":
155 - if (empty($data->widgetId))
156 - return __tagembed__exitWithDanger();
157 - if (__tagembed__manageActiveWidget($data->widgetId))
158 - __tagembed__exitWithSuccess();
159 - return __tagembed__exitWithDanger();
160 - break;
161 - case "__tagembed__menue":
162 - if (empty($data->menueId))
163 - return __tagembed__exitWithDanger();
164 - if (__tagembed__menus(['__tagembed__menu_id' => $data->menueId]))
165 - __tagembed__exitWithSuccess(["redirectUrl" => TAGEMBED_PLUGIN_REDIRECT_URL . 'tagembed']);
166 - return __tagembed__exitWithDanger();
167 - break;
168 - case "__tagembed__create_widget":
169 - if (empty($__tagembed__user_details) || empty($data->name))
170 - return __tagembed__exitWithDanger("Validation Error", ['name' => 'Widget name is required']);
171 - $data->profanity = (isset($data->profanity)) ? 0 : 1;
172 - /* --Start-- Manage Param Data */
173 - $param['name'] = sanitize_text_field($data->name);
174 - $param['profanity'] = sanitize_key($data->profanity);
175 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
176 - /* --End-- Manage Param Data */
177 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/create', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
178 - unset($param);
179 - $response = __tagembed__manageApiResponse($response);
180 - $response = !empty($response->message) ? $response->message : 'Done';
181 - return __tagembed__exitWithSuccess(["message" => $response, "redirectUrl" => TAGEMBED_PLUGIN_CALL_BACK_URL]);
182 - break;
183 - case "__tagembed__edit_widget":
184 - if (empty($__tagembed__user_details) || empty($data->name) || empty($data->widgetId))
185 - return __tagembed__exitWithDanger("Validation Error", ['name' => 'Widget name is required']);
186 - /* --Start-- Manage Param Data */
187 - $param['name'] = sanitize_text_field($data->name);
188 - $param['widgetId'] = sanitize_key($data->widgetId);
189 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
190 - /* --End-- Manage Param Data */
191 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/edit', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
192 - unset($param);
193 - $response = __tagembed__manageApiResponse($response);
194 - $response = !empty($response->message) ? $response->message : 'Done';
195 - return __tagembed__exitWithSuccess(["message" => $response, "redirectUrl" => TAGEMBED_PLUGIN_CALL_BACK_URL]);
196 - break;
197 - case "__tagembed__update_widget_status":
198 - if (empty($__tagembed__user_details) || empty($data->widgetId))
199 - return __tagembed__exitWithDanger();
200 - /* --Start-- Manage Param Data */
201 - $param['status'] = sanitize_key($data->status);
202 - $param['widgetId'] = sanitize_key($data->widgetId);
203 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
204 - /* --End-- Manage Param Data */
205 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/status', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
206 - unset($param);
207 - $response = __tagembed__manageApiResponse($response);
208 - $response = !empty($response->message) ? $response->message : 'Done';
209 - return __tagembed__exitWithSuccess(["message" => $response]);
210 - break;
211 - case "__tagembed__delete_widget":
212 - if (empty($__tagembed__user_details) || empty($data->widgetId))
213 - return __tagembed__exitWithDanger();
214 - /* --Start-- Manage Param Data */
215 - $param['widgetId'] = sanitize_key($data->widgetId);
216 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
217 - /* --End-- Manage Param Data */
218 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/delete', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
219 - unset($param);
220 - $response = __tagembed__manageApiResponse($response);
221 - $response = !empty($response->message) ? $response->message : 'Done';
222 - return __tagembed__exitWithSuccess(["message" => $response]);
223 - break;
224 - case "__tagembed__source_networks":
225 - $data->auth = !empty($data->auth) ? 1 : 0;
226 - if (empty($__tagembed__user_details))
227 - return __tagembed__exitWithDanger();
228 - /* --Start-- Manage Param Data */
229 - $param['auth'] = sanitize_key($data->auth);
230 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
231 - /* --End-- Manage Param Data */
232 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apinetwork/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
233 - unset($param);
234 - $response = __tagembed__manageApiResponse($response);
235 - return __tagembed__exitWithSuccess($response);
236 - break;
237 - case "__tagembed__get_themes":
238 - if (empty($__tagembed__user_details) || empty($data->widgetId))
239 - return __tagembed__exitWithDanger();
240 - /* --Start-- Manage Param Data */
241 - $param['widgetId'] = sanitize_key($data->widgetId);
242 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
243 - /* --End-- Manage Param Data */
244 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'Apitheme/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
245 - unset($param);
246 - $response = __tagembed__manageApiResponse($response);
247 - return __tagembed__exitWithSuccess($response);
248 - break;
249 - case "__tagembed__edit_themes":
250 - if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->themeId))
251 - return __tagembed__exitWithDanger();
252 - /* --Start-- Manage Param Data */
253 - $param['themeId'] = sanitize_key($data->themeId);
254 - $param['widgetId'] = sanitize_key($data->widgetId);
255 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
256 - /* --End-- Manage Param Data */
257 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'Apitheme/edit', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
258 - unset($param);
259 - $response = __tagembed__manageApiResponse($response);
260 - return __tagembed__exitWithSuccess($response);
261 - break;
262 - case "__tagembed__get_network_filter":
263 - if (empty($__tagembed__user_details) || empty($data->networkId))
264 - return __tagembed__exitWithDanger();
265 - /* --Start-- Manage Param Data */
266 - $param['networkId'] = sanitize_key($data->networkId);
267 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
268 - /* --End-- Manage Param Data */
269 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apinetwork/filter', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
270 - unset($param);
271 - $response = __tagembed__manageApiResponse($response);
272 - return __tagembed__exitWithSuccess($response);
273 - break;
274 - case "__tagembed__get_already_exist_accounts":
275 - if (empty($__tagembed__user_details))
276 - return __tagembed__exitWithDanger();
277 - /* --Start-- Manage Param Data */
278 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
279 - /* --End-- Manage Param Data */
280 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/getalreadyexistaccounts', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
281 - unset($param);
282 - $response = __tagembed__manageApiResponse($response);
283 - return __tagembed__exitWithSuccess($response);
284 - break;
285 - case "__tagembed__add_or_update_account":
286 - if (empty($__tagembed__user_details) || empty($data->networkId) || empty($data->type))
287 - return __tagembed__exitWithDanger();
288 - /* --Start-- Manage Param Data */
289 - $param['connectedAccountId'] = $data->connectedAccountId;
290 - $param['feedId'] = sanitize_key($data->feedId);
291 - $param['type'] = sanitize_text_field($data->type);
292 - $param['networkId'] = sanitize_key($data->networkId);
293 - $param['filterId'] = sanitize_key($data->filterId);
294 - $param['otherData'] = $data->otherData;
295 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
296 - /* --End-- Manage Param Data */
297 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/addorupdate', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
298 - unset($param);
299 - $response = __tagembed__manageApiResponse($response);
300 - return __tagembed__exitWithSuccess(["__tagembed__requestCallBackUrl" => TAGEMBED_PLUGIN_CALL_BACK_URL, "redirectUrl" => TAGEMBED_PLUGIN_API_URL . "apiauth/getauth", "__tagembed__feedData" => $response->__tagembed__feedData]);
301 - break;
302 - case "__tagembed__delete_account":
303 - if (empty($__tagembed__user_details) || empty($data->networkId) || empty($data->parentId))
304 - return __tagembed__exitWithDanger();
305 - /* --Start-- Manage Param Data */
306 - $param['parentId'] = sanitize_key($data->parentId);
307 - $param['networkId'] = sanitize_key($data->networkId);
308 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
309 - /* --End-- Manage Param Data */
310 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/delete', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
311 - unset($param);
312 - $response = __tagembed__manageApiResponse($response);
313 - $response = !empty($response->message) ? $response->message : 'Done';
314 - return __tagembed__exitWithSuccess(["message" => $response]);
315 - break;
316 - case "__tagembed__get_already_exist_auth":
317 - if (empty($__tagembed__user_details) || empty($data->networkId))
318 - return __tagembed__exitWithDanger();
319 - /* --Start-- Manage Param Data */
320 - $param['networkId'] = sanitize_key($data->networkId);
321 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
322 - /* --End-- Manage Param Data */
323 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
324 - unset($param);
325 - $response = __tagembed__manageApiResponse($response);
326 - return __tagembed__exitWithSuccess($response);
327 - break;
328 - case "__tagembed__search_google_location":
329 - if (empty($__tagembed__user_details) || empty($data->googleLocationName))
330 - return __tagembed__exitWithDanger();
331 - /* --Start-- Manage Param Data */
332 - $param['googleLocationName'] = $data->googleLocationName;
333 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
334 - /* --End-- Manage Param Data */
335 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/searchgooglelocation', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
336 - unset($param);
337 - $response = __tagembed__manageApiResponse($response);
338 - return __tagembed__exitWithSuccess($response);
339 - break;
340 - case "__tagembed__get_facebook_page_albums":
341 - if (empty($__tagembed__user_details) || empty($data->connectedAccountsId))
342 - return __tagembed__exitWithDanger();
343 - /* --Start-- Manage Param Data */
344 - $param['connectedAccountsId'] = sanitize_key($data->connectedAccountsId);
345 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
346 - /* --End-- Manage Param Data */
347 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/apiauthfacebookpagealbums', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
348 - unset($param);
349 - $response = __tagembed__manageApiResponse($response);
350 - return __tagembed__exitWithSuccess($response);
351 - break;
352 - case "__tagembed__search_youtube_channel":
353 - if (empty($__tagembed__user_details) || empty($data->youtubeChannelData))
354 - return __tagembed__exitWithDanger();
355 - /* --Start-- Manage Param Data */
356 - $param['youtubeChannelData'] = $data->youtubeChannelData;
357 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
358 - /* --End-- Manage Param Data */
359 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/searchyoutubechannel', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
360 - unset($param);
361 - $response = __tagembed__manageApiResponse($response);
362 - return __tagembed__exitWithSuccess($response);
363 - break;
364 - case "__tagembed__get_youtube_playlist":
365 - if (empty($__tagembed__user_details) || empty($data->youtubeId))
366 - return __tagembed__exitWithDanger();
367 - /* --Start-- Manage Param Data */
368 - $param['youtubeId'] = $data->youtubeId;
369 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
370 - /* --End-- Manage Param Data */
371 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/getyoutubeplaylist', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
372 - unset($param);
373 - $response = __tagembed__manageApiResponse($response);
374 - return __tagembed__exitWithSuccess($response);
375 - break;
376 - case "__tagembed__get_feed":
377 - if (empty($__tagembed__user_details) || empty($data->widgetId))
378 - return __tagembed__exitWithDanger();
379 - /* --Start-- Manage Param Data */
380 - $param['widgetId'] = sanitize_key($data->widgetId);
381 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
382 - /* --End-- Manage Param Data */
383 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
384 - unset($param);
385 - $response = __tagembed__manageApiResponse($response);
386 - return __tagembed__exitWithSuccess($response);
387 - break;
388 - case "__tagembed__update_feed_status":
389 - if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->feedId))
390 - return __tagembed__exitWithDanger();
391 - /* --Start-- Manage Param Data */
392 - $param['feedId'] = sanitize_key($data->feedId);
393 - $param['status'] = sanitize_key($data->status);
394 - $param['widgetId'] = sanitize_key($data->widgetId);
395 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
396 - /* --End-- Manage Param Data */
397 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/status', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
398 - unset($param);
399 - $response = __tagembed__manageApiResponse($response);
400 - $response = !empty($response->message) ? $response->message : 'Done';
401 - return __tagembed__exitWithSuccess(["message" => $response]);
402 - break;
403 - case "__tagembed__delete_feed":
404 - if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->feedId))
405 - return __tagembed__exitWithDanger();
406 - /* --Start-- Manage Param Data */
407 - $param['feedId'] = sanitize_key($data->feedId);
408 - $param['widgetId'] = sanitize_key($data->widgetId);
409 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
410 - /* --End-- Manage Param Data */
411 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/delete', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
412 - unset($param);
413 - $response = __tagembed__manageApiResponse($response);
414 - $response = !empty($response->message) ? $response->message : 'Done';
415 - return __tagembed__exitWithSuccess(["message" => $response]);
416 - break;
417 - case "__tagembed__create_feed":
418 - if (empty($__tagembed__user_details) || empty($data->widgetName) || empty($data->networkName) || empty($data->filterName) || empty($data->widgetId) || empty($data->networkId) || empty($data->filterId))
419 - return __tagembed__exitWithDanger();
420 - $__tagembed__feed_input_data = ["feed" => sanitize_text_field($data->feed), "userId" => sanitize_key($__tagembed__user_details->userId), "moderation" => sanitize_key(isset($data->moderation) ? 1 : 0), "widgetName" => sanitize_text_field($data->widgetName), "networkName" => sanitize_text_field($data->networkName), "filterName" => sanitize_text_field($data->filterName), "widgetId" => sanitize_key($data->widgetId), "networkId" => sanitize_key($data->networkId), "filterId" => sanitize_key($data->filterId), "auth" => 0, "authId" => isset($data->authId) ? sanitize_key($data->authId) : 0];
421 - $__tagembed__feed_input_data["feed"] = !empty($data->feed) ? sanitize_text_field($data->feed) : '__tagembed__feed';
422 - $__tagembed__feed_filter_id = $data->filterId;
423 - switch ($__tagembed__feed_input_data['networkId']):
424 - case 1:
425 - $__tagembed__feed_input_data['auth'] = 1;
426 - $__tagembed__feed_input_data['multiplePhoto'] = sanitize_key(isset($data->multiplePhoto) ? 1 : 0);
427 - $__tagembed__feed_input_data['excludeRetweet'] = sanitize_key(isset($data->excludeRetweet) ? 1 : 0);
428 - if (!empty($data->list))
429 - $__tagembed__feed_input_data['list'] = sanitize_key($data->list);
430 - break;
431 - case 2:
432 - $__tagembed__feed_input_data['auth'] = 1;
433 - break;
434 - case 3:
435 - $__tagembed__feed_input_data['auth'] = 1;
436 - switch ($__tagembed__feed_filter_id):
437 - case 65:
438 - $__tagembed__feed_input_data['accountAlbumType'] = sanitize_key(isset($data->accountAlbumType) ? $data->accountAlbumType : "");
439 - $__tagembed__feed_input_data['accountAlbumData'] = sanitize_text_field(isset($data->accountAlbumData) ? $data->accountAlbumData : "");
440 - break;
441 - endswitch;
442 - break;
443 - case 4:
444 - if ($__tagembed__feed_filter_id == 29):
445 - $__tagembed__feed_input_data['auth'] = 1;
446 - else:
447 - $__tagembed__feed_input_data['placeId'] = $data->placeId;
448 - $__tagembed__feed_input_data['placeName'] = $data->placeName;
449 - endif;
450 - break;
451 - case 5:
452 - switch ($__tagembed__feed_filter_id):
453 - case 1:
454 - case 72:
455 - break;
456 - case 12:
457 - if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i", $data->feed))
458 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Enter Valid URL"]);
459 - $pintrestHeaders = explode("/", parse_url($data->feed)['path']);
460 - $__tagembed__feed_input_data['value1'] = strtolower($pintrestHeaders[1]);
461 - $__tagembed__feed_input_data['value2'] = strtolower($pintrestHeaders[2]);
462 - break;
463 - endswitch;
464 - break;
465 - case 7:
466 - if (in_array($__tagembed__feed_filter_id, [1, 71])):
467 - $isUrl = false;
468 - if (preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i", $data->feed))
469 - $isUrl = true;
470 - if ((empty($data->youtubeId) || empty($data->youtubeName)) && !$isUrl)
471 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Enter Valid Channel URL Or Tab On Search Icon"]);
472 - if ($isUrl):
473 - $data->youtubeId = explode('/', $data->feed);
474 - $data->youtubeId = $data->youtubeId[4];
475 - $data->youtubeName = "youtube";
476 - if (empty($data->youtubeId) || empty($data->youtubeName))
477 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Enter Valid Channel URL"]);
478 - endif;
479 - endif;
480 - switch ($__tagembed__feed_filter_id):
481 - case 1:
482 - case 71:
483 - $__tagembed__feed_input_data['youtubeId'] = $data->youtubeId;
484 - $__tagembed__feed_input_data['youtubeName'] = $data->youtubeName;
485 - break;
486 - case 11:
487 - if (empty($data->youtubePlaylist) && empty($data->youtubeId)):
488 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Enter Valid Channel URL Or Tab On Search Icon"]);
489 - elseif (empty($data->youtubePlaylist) && !empty($data->youtubeId)):
490 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Play List Not Found"]);
491 - endif;
492 - $data->youtubePlaylist = explode("#", $data->youtubePlaylist);
493 - $__tagembed__feed_input_data['youtubeId'] = $data->youtubePlaylist[0];
494 - $__tagembed__feed_input_data['youtubeName'] = $data->youtubePlaylist[1];
495 - $__tagembed__feed_input_data['feed'] = $data->youtubePlaylist[1];
496 - unset($data->youtubePlaylist);
497 - break;
498 - endswitch;
499 - break;
500 - case 10:
501 - if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i", $data->feed))
502 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Enter Valid URL"]);
503 - switch ($__tagembed__feed_filter_id):
504 - case 16:
505 - $postUrl = parse_url($data->feed);
506 - if (!strstr($postUrl['host'], 'linkedin'))
507 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Enter Linkedin Post Url"]);
508 - $postUrl = $data->feed;
509 - $postUrl = rtrim($postUrl, '/');
510 - preg_match("/[^\/]+$/", $postUrl, $postId);
511 - $postId = $postId[0];
512 - $postId = (explode("?", $postId)[0]);
513 - $value1 = 'LinkedIn';
514 - if (stripos($postId, "activity") !== false):
515 - $postId = (explode("activity", $postId)[1]);
516 - $value2 = "activity";
517 - elseif (stripos($postId, "ugcPost") !== false):
518 - $postId = (explode("ugcPost", $postId)[1]);
519 - $value2 = "ugcPost";
520 - else:
521 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Enter Linkedin Post Url"]);
522 - endif;
523 - preg_match_all('!\d+!', $postId, $postId);
524 - if (isset($postId[0][0]) && empty($postId[0][0]))
525 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Enter Linkedin Post Url"]);
526 - $value3 = $postId[0][0];
527 - if (empty($value1) || empty($value2) || empty($value3))
528 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Enter Linkedin Post Url"]);
529 - $__tagembed__feed_input_data['value1'] = $value1;
530 - $__tagembed__feed_input_data['value2'] = $value2;
531 - $__tagembed__feed_input_data['value3'] = $value3;
532 - break;
533 - case 1:
534 - case 17:
535 - $url = parse_url($data->feed);
536 - $companyPageUrl = $url['scheme'] . "://" . $url['host'];
537 - $url = explode("/", $url['path']);
538 - $companyPageUrl = $companyPageUrl . "/" . $url[1] . "/" . $url[2] . "/";
539 - $__tagembed__feed_input_data['feed'] = $companyPageUrl;
540 - $url[2] = str_replace("-", " ", "$url[2]");
541 - $__tagembed__feed_input_data['page'] = ucwords($url[2], " ");
542 - break;
543 - endswitch;
544 - break;
545 - case 12:
546 - if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i", $data->feed))
547 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Enter Valid URL"]);
548 - $__tagembed__feed_input_data['name'] = $data->name;
549 - break;
550 - case 18:
551 - switch ($__tagembed__feed_filter_id):
552 - case 26:
553 - $__tagembed__feed_input_data['hashtagCaption'] = sanitize_key(isset($data->hashtagCaption) ? 1 : 0);
554 - $__tagembed__feed_input_data['hashtagOlder'] = sanitize_key(isset($data->hashtagOlder) ? 1 : 0);
555 - break;
556 - endswitch;
557 - if (!in_array($__tagembed__feed_filter_id, [34]))
558 - $__tagembed__feed_input_data['auth'] = 1;
559 - break;
560 - case 23:
561 - if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i", $data->feed))
562 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Enter Valid URL"]);
563 - $airbnbListUrl = parse_url($data->feed);
564 - if (strstr($airbnbListUrl['host'], 'airbnb')):
565 - preg_match("/[^\/]+$/", $data->feed, $matches);
566 - $__tagembed__feed_input_data['listId'] = explode("?", $matches[0])[0];
567 - else:
568 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "'Enter Airbnb Url"]);
569 - endif;
570 - $__tagembed__feed_input_data['name'] = $data->name;
571 - break;
572 - case 33:
573 - if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i", $data->feed))
574 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Enter Valid URL"]);
575 - preg_match("/[^\/]+$/", "$data->feed", $matches);
576 - $__tagembed__feed_input_data['name'] = $__tagembed__feed_input_data['feed'] = $matches[0];
577 - break;
578 - case 28:
579 - if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i", $data->feed))
580 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Enter Valid URL"]);
581 - $capeterraCompanyUrl = parse_url($data->feed);
582 - if (!strstr($capeterraCompanyUrl['host'], 'capterra'))
583 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "'Enter Capeterra Company Url"]);
584 - $__tagembed__feed_input_data['name'] = explode("/", $capeterraCompanyUrl['path'])['3'];
585 - $__tagembed__feed_input_data['feed'] = explode("/", $capeterraCompanyUrl['path'])['2'];
586 - break;
587 - case 29:
588 - if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i", $data->feed))
589 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Enter Valid URL"]);
590 - $etsyShopUrl = parse_url($data->feed);
591 - if (!strstr($etsyShopUrl['host'], 'etsy'))
592 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "'Enter Etsy Shop Url"]);
593 - $__tagembed__feed_input_data['feed'] = $__tagembed__feed_input_data['name'] = explode('/shop/', $etsyShopUrl['path'])[1];
594 - break;
595 - case 19:
596 - if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i", $data->feed))
597 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "Enter Valid URL"]);
598 - $yelpBusinessUrl = parse_url($data->feed);
599 - if (!strstr($yelpBusinessUrl['host'], 'yelp'))
600 - return __tagembed__exitWithDanger("Validation Error", ["feed" => "'Enter Yelp Business Url"]);
601 - $__tagembed__feed_input_data['feed'] = $__tagembed__feed_input_data['name'] = explode('/', $yelpBusinessUrl['path'])[2];
602 - break;
603 - case 11:
604 - switch ($__tagembed__feed_filter_id):
605 - case 1:
606 - case 2:
607 - $__tagembed__feed_input_data['feed'] = $__tagembed__feed_input_data['name'] = $data->feed;
608 - break;
609 - endswitch;
610 - break;
611 - endswitch;
612 - unset($data);
613 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/create', ['feedData' => $__tagembed__feed_input_data], ['Authorization:' . $__tagembed__user_details->accessToken]);
614 - $response = __tagembed__manageApiResponse($response);
615 - return __tagembed__exitWithSuccess(["__tagembed__requestCallBackUrl" => TAGEMBED_PLUGIN_CALL_BACK_URL, "redirectUrl" => TAGEMBED_PLUGIN_API_URL . "apiauth/getauth", "__tagembed__feedData" => $response->__tagembed__feedData]);
616 - break;
617 - case "__tagembed__make_payment":
618 - if (empty($__tagembed__user_details) || empty($data->plan) || empty($data->price))
619 - return __tagembed__exitWithDanger();
620 - /* --Start-- Manage Param Data */
621 - $param['plan'] = sanitize_key($data->plan);
622 - $param['price'] = sanitize_key($data->price);
623 - /* --Start-- Manage Param Data */
624 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
625 - $param['email'] = $__tagembed__user_details->email;
626 - $param['name'] = $__tagembed__user_details->name;
627 - /* --End-- Manage Param Data */
628 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/getpaymentdetails', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
629 - unset($param);
630 - $response = __tagembed__manageApiResponse($response);
631 - return __tagembed__exitWithSuccess(["__tagembed__requestCallBackUrl" => TAGEMBED_PLUGIN_CALL_BACK_URL, "redirectUrl" => TAGEMBED_PLUGIN_API_URL . "apiaccount/makepayment", "__tagembed__paymentData" => $response->__tagembed__paymentData]);
632 - break;
633 - case "__tagembed__cancel_subscription":
634 - if (empty($__tagembed__user_details) || empty($data->plan))
635 - return __tagembed__exitWithDanger();
636 - /* --Start-- Manage Param Data */
637 - $param['plan'] = sanitize_key($data->plan);
638 - /* --Start-- Manage Param Data */
639 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
640 - $param['email'] = $__tagembed__user_details->email;
641 - $param['name'] = $__tagembed__user_details->name;
642 - /* --End-- Manage Param Data */
643 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/cancelsubscription', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
644 - unset($param);
645 - $response = __tagembed__manageApiResponse($response);
646 - $response = !empty($response->message) ? $response->message : 'Done';
647 - return __tagembed__exitWithSuccess(["message" => $response]);
648 - break;
649 - case "__tagembed__get_post":
650 - if (empty($__tagembed__user_details) || empty($data->widgetId) || !isset($data->perPage) || !isset($data->offset) || !isset($data->postStatus))
651 - return __tagembed__exitWithDanger();
652 - /* --Start-- Manage Param Data */
653 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
654 - $param['widgetId'] = sanitize_key($data->widgetId);
655 - $param['perPage'] = sanitize_key($data->perPage);
656 - $param['offset'] = sanitize_key($data->offset);
657 - $param['postStatus'] = sanitize_key($data->postStatus);
658 - $param['feedIds'] = $data->feedIds;
659 - $param['postType'] = $data->postType;
660 - $param['highlightFilter'] = sanitize_key($data->highlightFilter);
661 - $param['pinFilter'] = sanitize_key($data->pinFilter);
662 - $param['recentFilter'] = sanitize_key($data->recentFilter);
663 - $param['retweetFilter'] = sanitize_key($data->retweetFilter);
664 - $param['searchText'] = sanitize_text_field($data->searchText);
665 - /* --End-- Manage Param Data */
666 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifilter/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
667 - unset($param);
668 - $response = __tagembed__manageApiResponse($response);
669 - return __tagembed__exitWithSuccess($response);
670 - break;
671 - case "__tagembed__manage_post_status":
672 - if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->postIds) || empty($data->postStatus))
673 - return __tagembed__exitWithDanger();
674 - /* --Start-- Manage Param Data */
675 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
676 - $param['widgetId'] = sanitize_key($data->widgetId);
677 - $param['postIds'] = $data->postIds;
678 - $param['postStatus'] = sanitize_key($data->postStatus);
679 - /* --End-- Manage Param Data */
680 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifilter/status', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
681 - unset($param);
682 - $response = __tagembed__manageApiResponse($response);
683 - $response = !empty($response->message) ? $response->message : 'Done';
684 - return __tagembed__exitWithSuccess(["message" => $response]);
685 - break;
686 - case "__tagembed__feed_for_search":
687 - if (empty($__tagembed__user_details) || empty($data->widgetId))
688 - return __tagembed__exitWithDanger();
689 - /* --Start-- Manage Param Data */
690 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
691 - $param['widgetId'] = sanitize_key($data->widgetId);
692 - /* --End-- Manage Param Data */
693 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifilter/getfeeds', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
694 - unset($param);
695 - $response = __tagembed__manageApiResponse($response);
696 - return __tagembed__exitWithSuccess($response);
697 - break;
698 - case "__tagembed__manage_post_pin":
699 - if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->postId) || !isset($data->pin))
700 - return __tagembed__exitWithDanger();
701 - /* --Start-- Manage Param Data */
702 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
703 - $param['widgetId'] = sanitize_key($data->widgetId);
704 - $param['postId'] = $data->postId;
705 - $param['pin'] = sanitize_key($data->pin);
706 - /* --End-- Manage Param Data */
707 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifilter/pin', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
708 - unset($param);
709 - $response = __tagembed__manageApiResponse($response);
710 - $response = !empty($response->message) ? $response->message : 'Done';
711 - return __tagembed__exitWithSuccess(["message" => $response]);
712 - break;
713 - case "__tagembed__manage_post_highlight":
714 - if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->postId) || !isset($data->highlight))
715 - return __tagembed__exitWithDanger();
716 - /* --Start-- Manage Param Data */
717 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
718 - $param['widgetId'] = sanitize_key($data->widgetId);
719 - $param['postId'] = $data->postId;
720 - $param['highlight'] = sanitize_key($data->highlight);
721 - /* --End-- Manage Param Data */
722 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifilter/highlight', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
723 - unset($param);
724 - $response = __tagembed__manageApiResponse($response);
725 - $response = !empty($response->message) ? $response->message : 'Done';
726 - return __tagembed__exitWithSuccess(["message" => $response]);
727 - break;
728 - case "__tagembed__plugin_version":
729 - /* --Start-- Manage Param Data */
730 - $param = [];
731 - /* --End-- Manage Param Data */
732 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/pluginversion', $param, ['Authorization: __tagembed__']);
733 - $response = __tagembed__manageApiResponse($response);
734 - unset($param);
735 - $installedPluginVersion = get_file_data(__FILE__, ['Version' => 'Version'], false);
736 - $installedPluginVersion = $installedPluginVersion['Version'];
737 - $response->installedPluginVersion = $installedPluginVersion;
738 - $response->pluginUpgradeURL = admin_url() . "plugins.php";
739 - return __tagembed__exitWithSuccess($response);
740 - break;
741 - case "__tagembed__get_en_user_id":
742 - if (empty($__tagembed__user_details))
743 - return __tagembed__exitWithDanger();
744 - /* --Start-- Manage Param Data */
745 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
746 - /* --End-- Manage Param Data */
747 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/enuserid', $param, ['Authorization: __tagembed__']);
748 - $response = __tagembed__manageApiResponse($response);
749 - unset($param);
750 - if (!empty($response->userId))
751 - return __tagembed__exitWithSuccess(["shareLink" => "https://app.tagembed.com/apiauth/connections/" . $response->userId]);
752 - return __tagembed__exitWithDanger();
753 - break;
754 - case "__tagembed__share_link":
755 - if (empty($__tagembed__user_details) || empty($data->emailIds) || empty($data->enUserId))
756 - return __tagembed__exitWithDanger();
757 - /* --Start-- Manage Param Data */
758 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
759 - $param['userEmailId'] = sanitize_email($__tagembed__user_details->email);
760 - $param['userName'] = sanitize_text_field($__tagembed__user_details->name);
761 - $param['emailIds'] = sanitize_text_field($data->emailIds);
762 - $param['enUserId'] = sanitize_key($data->enUserId);
763 - /* --End-- Manage Param Data */
764 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/sendconnectionemail', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
765 - $response = __tagembed__manageApiResponse($response);
766 - unset($param);
767 - return __tagembed__exitWithSuccess($response);
768 - break;
769 - case "__tagembed__check_user_token":
770 - if (empty($__tagembed__user_details))
771 - return __tagembed__exitWithDanger();
772 - /* --Start-- Manage Param Data */
773 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
774 - /* --End-- Manage Param Data */
775 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/checkusertoken', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
776 - if ($response->head->code == 401 && !$response->head->status)
777 - tagembed_logout();
778 - unset($param);
779 - return __tagembed__exitWithSuccess($response);
780 - break;
781 - case "__tagembed__plugin_deactivate":
782 - /* --Start-- Manage Param Data */
783 - $__tagembed__user_details = __tagembed__userData();
784 - $param = [];
785 - $param['userId'] = !empty($__tagembed__user_details) ? sanitize_key($__tagembed__user_details->userId) : "";
786 - $param['userName'] = !empty($__tagembed__user_details) ? sanitize_text_field($__tagembed__user_details->name) : "";
787 - $param['userEmail'] = !empty($__tagembed__user_details) ? sanitize_email($__tagembed__user_details->email) : "";
788 - $param['pluginDeactivateReason'] = sanitize_text_field($data->pluginDeactivateReason);
789 - $param['otherReason'] = sanitize_text_field($data->otherReason);
790 - $param['betterPlugin'] = sanitize_text_field($data->betterPlugin);
791 - $param['userWebsiteUrl'] = get_site_url();
792 - /* --End-- Manage Param Data */
793 - __tagembed__dropDatabaseTablesForPlugin();
794 - deactivate_plugins(plugin_basename(__FILE__), true);
795 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/deactivateuserdata', $param, ['Authorization: __tagembed__']);
796 - $response = __tagembed__manageApiResponse($response);
797 - unset($param);
798 - return __tagembed__exitWithSuccess();
799 - break;
800 - case "__tagembed__get_customization_option":
801 - if (empty($__tagembed__user_details) || empty($data->widgetId))
802 - return __tagembed__exitWithDanger();
803 - /* --Start-- Manage Param Data */
804 - $param['widgetId'] = sanitize_key($data->widgetId);
805 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
806 - /* --End-- Manage Param Data */
807 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apicustomization/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
808 - unset($param);
809 - $response = __tagembed__manageApiResponse($response);
810 - return __tagembed__exitWithSuccess($response);
811 - break;
812 - case "__tagembed__update_layout_customization_option":
813 - /* --Start-- Manage Param Data */
814 - $param['widgetId'] = sanitize_key($data->widgetId);
815 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
816 - $param['personalizationId'] = sanitize_key($data->personalizationId);
817 - $param['themeRuleId'] = sanitize_key($data->themeRuleId);
818 - $param['numberOfPosts'] = sanitize_key($data->numberOfPosts);
819 - $param['padding'] = sanitize_key($data->padding);
820 - $param['minimumPostWidth'] = sanitize_key($data->minimumPostWidth);
821 - $param['columnCount'] = sanitize_key($data->columnCount);
822 - $param['columnCountMobile'] = sanitize_key($data->columnCountMobile);
823 - $param['loadMoreStatus'] = sanitize_key($data->loadMoreStatus);
824 - $param['postText'] = sanitize_key($data->postText);
825 - $param['trimcontent'] = sanitize_key($data->trimcontent);
826 - $param['mobilePopup'] = sanitize_key($data->mobilePopup);
827 - $param['postFeatured'] = sanitize_key($data->postFeatured);
828 - /* --End-- Manage Param Data */
829 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apicustomization/layout', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
830 - unset($param);
831 - $response = __tagembed__manageApiResponse($response);
832 - return __tagembed__exitWithSuccess($response);
833 - break;
834 - case "__tagembed__update_card_customization_option":
835 - /* --Start-- Manage Param Data */
836 - $param['widgetId'] = sanitize_key($data->widgetId);
837 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
838 - $param['personalizationId'] = sanitize_key($data->personalizationId);
839 - $param['themeRuleId'] = sanitize_key($data->themeRuleId);
840 - $param['fontColor'] = $data->fontColor;
841 - $param['authorColor'] = $data->authorColor;
842 - $param['cardColor'] = $data->cardColor;
843 - $param['fontSize'] = sanitize_key($data->fontSize);
844 - $param['font'] = sanitize_key($data->font);
845 - $param['shareOption'] = sanitize_key($data->shareOption);
846 - $param['hideContent'] = sanitize_key($data->hideContent);
847 - $param['postAuthor'] = sanitize_key($data->postAuthor);
848 - $param['postTime'] = sanitize_key($data->postTime);
849 - $param['lineTrim'] = sanitize_key($data->lineTrim);
850 - $param['aspectImageRatio'] = $data->aspectImageRatio;
851 - $param['textAlignment'] = $data->textAlignment;
852 - $param['cardCurve'] = $data->cardCurve;
853 - $param['colorType'] = $data->colorType;
854 - /* --End-- Manage Param Data */
855 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apicustomization/card', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
856 - unset($param);
857 - $response = __tagembed__manageApiResponse($response);
858 - return __tagembed__exitWithSuccess($response);
859 - break;
860 - case "__tagembed__update_other_customization_option":
861 - /* --Start-- Manage Param Data */
862 - $param['widgetId'] = sanitize_key($data->widgetId);
863 - $param['userId'] = sanitize_key($__tagembed__user_details->userId);
864 - $param['personalizationId'] = sanitize_key($data->personalizationId);
865 - $param['themeRuleId'] = sanitize_key($data->themeRuleId);
866 - $param['css'] = $data->css;
867 - /* --End-- Manage Param Data */
868 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apicustomization/other', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
869 - unset($param);
870 - $response = __tagembed__manageApiResponse($response);
871 - return __tagembed__exitWithSuccess($response);
872 - break;
873 - default:
874 - return __tagembed__exitWithDanger();
875 - endswitch;
876 -}
877 -/* --End-- Manage Ajax Calls */
878 -/* --Start-- Login */
879 -function __tagembed__login($response) {
880 - global $wpdb;
881 - $return = false;
882 - $user = __tagembed__user($response->emailId);
883 - if (empty($user->email)) {
884 - if ($wpdb->insert('wp_tagembed_user', ["userId" => $response->userId, "name" => $response->name, "email" => $response->emailId, "accessToken" => $response->accessToken, "isLogin" => "yes"]))
885 - $return = true;
886 - } else {
887 - if ($wpdb->update('wp_tagembed_user', ["userId" => $response->userId, "name" => $response->name, "email" => $response->emailId, "accessToken" => $response->accessToken, "isLogin" => "yes",], ['email' => $response->emailId]))
888 - $return = true;
889 - }
890 - if ($return):
891 - if (count($response->collaboratorlist)):
892 - __tagembed__manageCollaborator($response->collaboratorlist, $response->userId);
893 - endif;
894 - __tagembed__manageActiveWidgetsUser($response->userId);
895 - endif;
896 - return $return;
897 -}
898 -/* --End-- Login */
899 -/* --Start-- Logout */
900 -function tagembed_logout() {
901 - global $wpdb;
902 - if ($wpdb->update('wp_tagembed_user', ["isLogin" => "no"], ["isLogin" => "yes"]))
903 - return true;
904 - return false;
905 -}
906 -/* --End-- Logout */
907 -/* --Start--Manage Menues */
908 -function __tagembed__menus($__tagembed__menu_condatation = []) {
909 - global $wpdb;
910 - if (empty($__tagembed__menu_condatation))
911 - return $wpdb->get_results("SELECT * FROM wp_tagembed_menus");
912 - if (array_key_exists('__tagembed__menu_condation', $__tagembed__menu_condatation))
913 - return $wpdb->get_results("SELECT * FROM wp_tagembed_menus WHERE " . $__tagembed__menu_condatation['__tagembed__menu_condation']);
914 - if (array_key_exists('__tagembed__menu_id', $__tagembed__menu_condatation)):
915 - if ($wpdb->update('wp_tagembed_menus', ["status" => 0], ["status" => 1]) && $wpdb->update('wp_tagembed_menus', ["status" => 1], ["id" => $__tagembed__menu_condatation['__tagembed__menu_id']]))
916 - return true;
917 - return false;
918 - endif;
919 -}
920 -/* --End--Manage Menues */
921 -/* --Start-- Get User Details */
922 -function __tagembed__user($email = null) {
923 - global $wpdb;
924 - $__tagembed__userResponse = "";
925 - if (empty($email)):
926 - $__tagembed__userResponse = $wpdb->get_results("SELECT * FROM wp_tagembed_user WHERE(isLogin = 'yes')");
927 - else:
928 - $__tagembed__userResponse = $wpdb->get_results("SELECT * FROM wp_tagembed_user WHERE(email = '" . $email . "')");
929 - endif;
930 - if (!empty($__tagembed__userResponse))
931 - return $__tagembed__userResponse[0];
932 - return;
933 -}
934 -function __tagembed__userData() {
935 - global $wpdb;
936 - $__tagembed__user_dataResponse = "";
937 - $__tagembed__user_dataResponse = $wpdb->get_results("SELECT * FROM wp_tagembed_user");
938 - if (!empty($__tagembed__user_dataResponse))
939 - return $__tagembed__user_dataResponse[0];
940 - return;
941 -}
942 -/* --End-- Get User Details */
943 -/* --Start-- Get Collaborator Details */
944 -function __tagembed__collaborator($userId) {
945 - global $wpdb;
946 - return $wpdb->get_results("SELECT * FROM wp_tagembed_collaborator WHERE(userId = '" . $userId . "')");
947 -}
948 -/* --End-- Get Collaborator Details */
949 -/* --Start-- Manage Collaborator */
950 -function __tagembed__manageCollaborator($collaboratorList, $userId) {
951 - global $wpdb;
952 - $prevCollaboratorList = __tagembed__convertObjectToArray(__tagembed__collaborator($userId));
953 - $collaboratorList = __tagembed__convertObjectToArray($collaboratorList);
954 - $collaboratorListIds = [];
955 - if (is_array($collaboratorList))
956 - $collaboratorListIds = array_column($collaboratorList, 'id');
957 - $prevCollaboratorListIds = [];
958 - if (is_array($prevCollaboratorList)):
959 - $prevCollaboratorListIds = array_column($prevCollaboratorList, 'collaboratorId');
960 - $commonCollaboratorIds = array_intersect($prevCollaboratorListIds, $collaboratorListIds);
961 - $prevCollaboratorListIds = array_diff($prevCollaboratorListIds, $commonCollaboratorIds);
962 - $collaboratorListIds = array_diff($collaboratorListIds, $commonCollaboratorIds);
963 - endif;
964 - if (count($prevCollaboratorListIds)):
965 - foreach ($prevCollaboratorListIds as $delId):
966 - if ($wpdb->delete('wp_tagembed_collaborator', ["collaboratorId" => $delId, "userId" => $userId]))
967 - $wpdb->delete('wp_tagembed_widget', ["userId" => $delId]);
968 - endforeach;
969 - endif;
970 - foreach ($collaboratorList as $key => $collaborator):
971 - if (in_array($collaborator['id'], $collaboratorListIds)):
972 - $wpdb->insert('wp_tagembed_collaborator', ["userId" => $userId, "collaboratorId" => $collaboratorList[$key]['id'], "name" => $collaboratorList[$key]['name']]);
973 - elseif (in_array($collaborator['id'], $commonCollaboratorIds)):
974 - $wpdb->update('wp_tagembed_collaborator', ["userId" => $userId, "name" => $collaboratorList[$key]['name'],], ['collaboratorId' => $collaborator['id'], "userId" => $userId]);
975 - endif;
976 - endforeach;
977 - return true;
978 -}
979 -/* --End-- Manage Collaborator */
980 -/* --Start-- Get Widget */
981 -function __tagembed__widgets() {
982 - $returnWidgetData = [];
983 - $__tagembed__user_details = __tagembed__user();
984 - if (!empty($__tagembed__user_details)):
985 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/get', ['userId' => sanitize_key($__tagembed__user_details->userId)], ['Authorization:' . $__tagembed__user_details->accessToken]);
986 - if (!$response->head->status || $response->head->code != 200 || !$response->body || empty($response->body))
987 - return $returnWidgetData;
988 - $returnWidgetData = $response->body;
989 - endif;
990 - return $returnWidgetData;
991 -}
992 -/* --End-- Get Widget */
993 -/* --Start-- Get Active Widget */
994 -function __tagembed__activeWidget() {
995 - global $wpdb;
996 - $__tagembed__activeWidgetResponse = "";
997 - $__tagembed__activeWidgetResponse = $wpdb->get_results("SELECT * FROM wp_tagembed_active_widget");
998 - if (!empty($__tagembed__activeWidgetResponse))
999 - return $__tagembed__activeWidgetResponse[0]->widgetId;
1000 - return;
1001 -}
1002 -/* --End-- Get Active Widget */
1003 -/* --Start-- Manage Active Widget User */
1004 -function __tagembed__manageActiveWidget($widgetId) {
1005 - global $wpdb;
1006 - $return = '';
1007 - $activeWidgetUserId = __tagembed__activeWidget();
1008 - if ($activeWidgetUserId == $widgetId)
1009 - return true;
1010 - if (empty($activeWidgetUserId)):
1011 - $wpdb->insert('wp_tagembed_active_widget', ["widgetId" => $widgetId]);
1012 - return true;
1013 - else:
1014 - $wpdb->update('wp_tagembed_active_widget', ["widgetId" => $widgetId], ['id' => 1]);
1015 - return true;
1016 - endif;
1017 - return false;
1018 -}
1019 -/* --End-- Manage Active Widget User */
1020 -/* --Start-- Get Active Widget User */
1021 -function __tagembed__activeWidgetUser() {
1022 - global $wpdb;
1023 - $__tagembed__activeWidgetUserResponse = "";
1024 - $__tagembed__activeWidgetUserResponse = $wpdb->get_results("SELECT * FROM wp_tagembed_active_widget_user");
1025 - if (!empty($__tagembed__activeWidgetUserResponse))
1026 - return $__tagembed__activeWidgetUserResponse[0]->userId;
1027 - return;
1028 -}
1029 -/* --End-- Get Active Widget User */
1030 -/* --Start-- Manage Active Widget User */
1031 -function __tagembed__manageActiveWidgetsUser($userId) {
1032 - global $wpdb;
1033 - $return = '';
1034 - $activeWidgetUserId = __tagembed__activeWidgetUser();
1035 - if ($activeWidgetUserId == $userId)
1036 - return true;
1037 - if (empty($activeWidgetUserId)):
1038 - $wpdb->insert('wp_tagembed_active_widget_user', ["userId" => $userId]);
1039 - return true;
1040 - else:
1041 - $wpdb->update('wp_tagembed_active_widget_user', ["userId" => $userId], ['id' => 1]);
1042 - return true;
1043 - endif;
1044 - return false;
1045 -}
1046 -/* --End-- Manage Active Widget User */
1047 -/* * ** DATABASE *** */
1048 -/* --Start-- Manage Database */
1049 -function __tagembed__createDatabaseTableForPlugin() {
1050 - global $wpdb;
1051 - require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
1052 - $wpdb->query("CREATE TABLE IF NOT EXISTS `wp_tagembed_user` (`id` int(11) NOT NULL AUTO_INCREMENT,`userId` varchar(100) NOT NULL,`name` varchar(100) NOT NULL,`email` varchar(100) NOT NULL,`accessToken` varchar(255) NOT NULL,`isLogin` enum('no', 'yes') NOT NULL,PRIMARY KEY(`id`)) ENGINE = InnoDB DEFAULT CHARSET = latin1");
1053 - $wpdb->query("CREATE TABLE IF NOT EXISTS `wp_tagembed_collaborator` (`id` int(11) NOT NULL AUTO_INCREMENT,`userId` varchar(100) NOT NULL,`collaboratorId` varchar(100) NOT NULL,`name` varchar(100) NOT NULL,PRIMARY KEY(`id`)) ENGINE = InnoDB DEFAULT CHARSET = latin1");
1054 - $wpdb->query("CREATE TABLE IF NOT EXISTS `wp_tagembed_active_widget_user` (`id` int(11) NOT NULL AUTO_INCREMENT,`userId` varchar(100) NOT NULL,PRIMARY KEY(`id`)) ENGINE = InnoDB DEFAULT CHARSET = latin1");
1055 - $wpdb->query("CREATE TABLE IF NOT EXISTS `wp_tagembed_menus` (`id` int(11) NOT NULL AUTO_INCREMENT,`name` varchar(100) NOT NULL,`status` tinyint(2) NOT NULL,`path` varchar(255) NOT NULL,PRIMARY KEY(`id`)) ENGINE = InnoDB DEFAULT CHARSET = latin1");
1056 - $wpdb->query("CREATE TABLE IF NOT EXISTS `wp_tagembed_active_widget` (`id` int(11) NOT NULL AUTO_INCREMENT,`widgetId` varchar(100) NOT NULL,PRIMARY KEY(`id`)) ENGINE = InnoDB DEFAULT CHARSET = latin1");
1057 - /* Manage Tagembed Plugin Menus */
1058 - $__tagembed__menus = [['name' => 'Widget', 'status' => 0, 'path' => 'widget/widgetView'], ['name' => 'Feed', 'status' => 1, 'path' => 'feed/addView'], ['name' => 'Choose Theme', 'status' => 0, 'path' => 'theme/themeView'], ['name' => 'Filter', 'status' => 0, 'path' => 'filter/filterView'], ['name' => 'Customize', 'status' => 0, 'path' => 'customize/customizeView'], ['name' => 'Display', 'status' => 0, 'path' => 'display/displayView'], ['name' => 'Social Accounts', 'status' => 0, 'path' => 'socialAccount/socialAccountView'], ['name' => 'Support', 'status' => 0, 'path' => 'support/supportView'], ['name' => 'Upgrade', 'status' => 0, 'path' => 'upgrade/upgradeView']];
1059 - foreach ($__tagembed__menus as $__tagembed__menu)
1060 - $wpdb->insert('wp_tagembed_menus', ["name" => $__tagembed__menu['name'], "status" => $__tagembed__menu['status'], "path" => $__tagembed__menu['path']]);
1061 -}
1062 -function __tagembed__dropDatabaseTablesForPlugin() {
1063 - global $wpdb;
1064 - $wpdb->query("DROP table IF EXISTS wp_tagembed_user");
1065 - $wpdb->query("DROP table IF EXISTS wp_tagembed_collaborator");
1066 - $wpdb->query("DROP table IF EXISTS wp_tagembed_active_widget_user");
1067 - $wpdb->query("DROP table IF EXISTS wp_tagembed_active_widget");
1068 - $wpdb->query("DROP table IF EXISTS wp_tagembed_menus");
1069 -}
1070 -/* --End-- Manage Database */
1071 -/* --Start-- Manage Active Deactive And Uninstall Webhook */
1072 -register_activation_hook(__FILE__, '__tagembed__pluginActivate');
1073 -function __tagembed__pluginActivate() {
1074 - __tagembed__createDatabaseTableForPlugin();
1075 - add_action('activated_plugin', '__tagembed__plginActivationRedirect');
1076 -}
1077 -register_uninstall_hook(__FILE__, '__tagembed__pluginUnistall');
1078 -function __tagembed__pluginUnistall() {
1079 - __tagembed__dropDatabaseTablesForPlugin();
1080 -}
1081 -/* register_deactivation_hook(__FILE__, '__tagembed__pluginDeactivate');
1082 - function __tagembed__pluginDeactivate() {
1083 - __tagembed__dropDatabaseTablesForPlugin();
1084 - } */
1085 -/* --End-- Manage Active Deactive And Uninstall Webhook */
1086 -/* --Start--Manage Redirect After Plugin Activate */
1087 -function __tagembed__plginActivationRedirect() {
1088 - exit(wp_redirect(TAGEMBED_PLUGIN_CALL_BACK_URL));
1089 -}
1090 -/* --End--Manage Redirect After Plugin Activate */
1091 -/* --Start--Manage Setting Link */
1092 -function __tagembed__settingsLink($links) {
1093 - array_unshift($links, '<a href=' . TAGEMBED_PLUGIN_CALL_BACK_URL . '>Settings</a>');
1094 - return $links;
1095 -}
1096 -add_filter("plugin_action_links_" . plugin_basename(__FILE__), '__tagembed__settingsLink');
1097 -/* --End--Manage Setting Link */
1098 -/* --Start--Manage Database On Plugin Update Time */
1099 -function __tagembed__manageDatabaseOnPluginUpdateTime() {
1100 - __tagembed__dropDatabaseTablesForPlugin();
1101 - __tagembed__createDatabaseTableForPlugin();
1102 -}
1103 -add_action('upgrader_process_complete', '__tagembed__manageDatabaseOnPluginUpdateTime', 10, 2);
1104 -/* --End--Manage Database On Plugin Update Time */
1105 -/* --Sart--Manage Chat Hide And Show */
1106 -function __tagembed__chat() {
1107 - $returnData = false;
1108 - TRY {
1109 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/chat', ['pluginName' => 'wordpress'], ['Authorization: __tagembed__']);
1110 - if ($response->head->status):
1111 - $response = __tagembed__manageApiResponse($response);
1112 - if (!empty($response->chat) && is_array($response->chat)):
1113 - foreach ($response->chat as $chat):
1114 - if ($chat->location == "all"):
1115 - $returnData = "all";
1116 - elseif ($chat->location == "inner"):
1117 - $returnData = "inner";
1118 - endif;
1119 - endforeach;
1120 - endif;
1121 - endif;
1122 - } CATCH (Exception $e) {
1123 -
1124 - }
1125 - return $returnData;
1126 -}
1127 -/* --End--Manage Chat Hide And Show */
1128 -/* --Start-- Manage Hide And Show Admin Notificationa */
1129 -function __tagembed__generalAdminNotice() {
1130 - $__tagmebed__page_name = "";
1131 - if (!empty($_GET['page'])):
1132 - $__tagmebed__page_name = __tagembed__sanitizeRequestData($_GET);
1133 - $__tagmebed__page_name = $__tagmebed__page_name['page'];
1134 - endif;
1135 - TRY {
1136 - $response = __tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/notification', ['callBy' => 'wordpress'], ['Authorization: __tagembed__']);
1137 - if ($response->head->status):
1138 - $response = __tagembed__manageApiResponse($response);
1139 - if (!empty($response->notifications) && is_array($response->notifications)):
1140 - $htmlData = "";
1141 - foreach ($response->notifications as $notifications):
1142 - if ($notifications->location == "tagembed" || $notifications->location == "inner"):
1143 - if ($__tagmebed__page_name != "tagembed")
1144 - continue;
1145 - $htmlData .= '<div class="notice notice-' . esc_html($notifications->type) . ' is-dismissible">';
1146 - $htmlData .= '<p>' . $notifications->message . '</p>';
1147 - $htmlData .= '</div>';
1148 - elseif ($notifications->location == "all"):
1149 - $htmlData .= '<div class="notice notice-' . esc_html($notifications->type) . ' is-dismissible">';
1150 - $htmlData .= '<p>' . $notifications->message . '</p>';
1151 - $htmlData .= '</div>';
1152 - endif;
1153 - endforeach;
1154 - echo $htmlData;
1155 - endif;
1156 - endif;
1157 - } CATCH (Exception $e) {
1158 -
1159 - }
1160 -}
1161 -add_action('in_admin_header', '__tagembed__hideGeneralAdminNotice');
1162 -function __tagembed__hideGeneralAdminNotice() {
1163 - $__tagmebed__page_name = "";
1164 - if (!empty($_GET['page'])):
1165 - $__tagmebed__page_name = __tagembed__sanitizeRequestData($_GET);
1166 - $__tagmebed__page_name = $__tagmebed__page_name['page'];
1167 - endif;
1168 - if ($__tagmebed__page_name == "tagembed"):
1169 - remove_all_actions('admin_notices');
1170 - remove_all_actions('all_admin_notices');
1171 - endif;
1172 - add_action('admin_notices', '__tagembed__generalAdminNotice');
1173 -}
1174 -/* --End-- Manage Hide And Show Admin Notificationa */
1175 -/* --End-- Drop Database Table */
1176 -/* --Start-- Create Short Code */
1177 -add_shortcode("tagembed", "__tagembed__PluginShortCode");
1178 -function __tagembed__PluginShortCode($attr) {
1179 - $widgetId = (isset($attr[1]) ? $attr[1] : '');
1180 - $width = (isset($attr['width']) ? $attr['width'] : '');
1181 - $height = (isset($attr['height']) ? $attr['height'] : '');
1182 - $code = '<span class=""></span>';
1183 - $code .= '<div style="width:' . $width . '; height:' . $height . ';overflow: auto;" class="tagembed-container">';
1184 - $code .= '<div style="width:100%; height:100%;" class="tagembed-socialwall tagembed-analystic" data-wall-id="' . $widgetId . '" view-url="https://widget.tagembed.com/' . $widgetId . '"></div>';
1185 - $code .= '</div>';
1186 - return $code;
1187 -}
1188 -/* --End-- Create Short Code */
1189 -
1190 -
1191 -
1 +<?php
2 +
3 +/**
4 + * Plugin Name: Tagembed: Social Media Feeds and Customer Reviews Widget
5 + * Plugin URI: https://tagembed.com/
6 + * Description: Display social media feeds and user-generated content in an interactive widget.
7 + * Version: 7.8
8 + * Author: Tagembed
9 + * Author URI: https://tagembed.com/
10 + * License: GPLv3
11 + * License URI: https://www.gnu.org/licenses/gpl-3.0.html
12 + * Text Domain: tagembed-widget
13 + */
14 +if (!defined('WPINC')) :
15 + die;
16 +endif;
17 +
18 +/* --Start-- Create Constant */
19 +!defined('TAGEMBED_PLUGIN_VERSION') && define('TAGEMBED_PLUGIN_VERSION', '7.8');
20 +!defined('TAGEMBED_PLUGIN_DIR_PATH') && define('TAGEMBED_PLUGIN_DIR_PATH', plugin_dir_path(__FILE__));
21 +!defined('TAGEMBED_PLUGIN_URL') && define('TAGEMBED_PLUGIN_URL', plugin_dir_url(__FILE__));
22 +!defined('TAGEMBED_PLUGIN_REDIRECT_URL') && define('TAGEMBED_PLUGIN_REDIRECT_URL', get_admin_url(null, 'admin.php?page='));
23 +
24 +!defined('TAGEMBED_PLUGIN_API_URL') && define('TAGEMBED_PLUGIN_API_URL', 'https://api.tagembed.com/app/');
25 +!defined('TAGEMBED_PLUGIN_SERVER_URL') && define('TAGEMBED_PLUGIN_SERVER_URL', 'https://api.tagembed.com/app/');
26 +
27 +!defined('TAGEMBED_PLUGIN_REACT_URL') && define('TAGEMBED_PLUGIN_REACT_URL', 'https://widget.tagembed.com/');
28 +!defined('TAGEMBED_PLUGIN_CALL_BACK_URL') && define('TAGEMBED_PLUGIN_CALL_BACK_URL', admin_url() . 'admin.php?page=tagembed');
29 +!defined('TAGEMBED_PLUGIN_PLATFORM') && define('TAGEMBED_PLUGIN_PLATFORM', 'tagembed');
30 +
31 +/* --End-- Create Constant */
32 +
33 +/* --Start--Include Files */
34 +require_once TAGEMBED_PLUGIN_DIR_PATH . 'helper/helper.php';
35 +/* --End--Include Files */
36 +
37 +/* --Start-- Add Js And Css */
38 +function tagembed_plugin_scripts_css()
39 +{
40 + wp_enqueue_script('__tagembed__embbedJs', TAGEMBED_PLUGIN_REACT_URL . 'embed.min.js', ['jquery'], TAGEMBED_PLUGIN_VERSION, true);
41 + if (is_admin()) :
42 + /* CSS */
43 + wp_enqueue_style('__tagembed__commonCss', TAGEMBED_PLUGIN_URL . '/assets/css/common.css', '', TAGEMBED_PLUGIN_VERSION);
44 + wp_enqueue_style('__tagembed__toastCss', TAGEMBED_PLUGIN_URL . '/assets/css/toast.css', '', TAGEMBED_PLUGIN_VERSION);
45 + wp_enqueue_style('__tagembed__confirmDialogCss', TAGEMBED_PLUGIN_URL . '/assets/css/confirm_dialog.css', '', TAGEMBED_PLUGIN_VERSION);
46 + wp_enqueue_style('__tagembed__tagembedloaderCss', TAGEMBED_PLUGIN_URL . '/assets/css/loader.css', '', TAGEMBED_PLUGIN_VERSION);
47 + wp_enqueue_style('__tagembed__popupCss', TAGEMBED_PLUGIN_URL . '/assets/css/styles.css', '', TAGEMBED_PLUGIN_VERSION);
48 + /* JS */
49 + wp_enqueue_script('__tagembed__toastJs', TAGEMBED_PLUGIN_URL . '/assets/js/toast.js', ['jquery'], TAGEMBED_PLUGIN_VERSION, true);
50 + wp_enqueue_script('__tagembed__confirmDialogJs', TAGEMBED_PLUGIN_URL . '/assets/js/confirm_dialog.js', ['jquery'], TAGEMBED_PLUGIN_VERSION, true);
51 + wp_enqueue_script('__tagembed__tagemedLoaderJs', TAGEMBED_PLUGIN_URL . '/assets/js/loader.js', ['jquery'], TAGEMBED_PLUGIN_VERSION, true);
52 + wp_localize_script('__tagembed__tagemedLoaderJs', '__tagembed__pluginLoaderImageUrlObj', ['__tagembed__pluginLoaderImageUrl' => TAGEMBED_PLUGIN_URL]);
53 + wp_enqueue_script('__tagembed__deactive-js', TAGEMBED_PLUGIN_URL . '/assets/js/tagembed.deactive.js', ['jquery'], TAGEMBED_PLUGIN_VERSION, true);
54 + $__tagembed__ajax_call_security_nones = wp_create_nonce('__tagembed__ajax_call_security_nones');
55 + wp_localize_script('__tagembed__deactive-js', '__tagembed__ajax_call_security_nones_object', ['__tagembed__ajax_call_security_nones' => $__tagembed__ajax_call_security_nones]);
56 + wp_enqueue_script('__tagembed__tagembedDialogFormJs', TAGEMBED_PLUGIN_URL . '/assets/js/dialog.form.js', ['jquery'], TAGEMBED_PLUGIN_VERSION, true);
57 + /* --Start-- Gutenberge */
58 + if (!function_exists('register_block_type')) :
59 + return;
60 + else :
61 + wp_enqueue_style('__tagembed__editorCss', TAGEMBED_PLUGIN_URL . '/assets/css/editor/editor.css', '', TAGEMBED_PLUGIN_VERSION);
62 + wp_register_script('__tagembed__editor-js', TAGEMBED_PLUGIN_URL . '/assets/js/editor/editor.js', ['wp-block-editor', 'wp-blocks', 'wp-element', 'wp-components', 'wp-i18n', 'wp-data', 'wp-compose'], TAGEMBED_PLUGIN_VERSION);
63 + register_block_type('tagembed-block/tagembed', ['editor_script' => '__tagembed__editor-js', 'editor_style' => '__tagembed__editorCss', 'style' => '']);
64 + endif;
65 + /* --End-- Gutenberge */
66 + endif;
67 +}
68 +add_action('init', 'tagembed_plugin_scripts_css');
69 +add_filter(
70 + 'script_loader_tag',
71 + function ($tag, $handle) {
72 + if ('embbedJs' !== $handle) :
73 + return $tag;
74 + else :
75 + return str_replace('src', 'defer src', $tag);
76 + endif;
77 + },
78 + 10,
79 + 2
80 +);
81 +/* --End-- Add Js And Css */
82 +
83 +/* --Start-- Add Menus */
84 +function ___tagembed__plugin_menus()
85 +{
86 + ob_start();
87 +?>
88 + <svg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 200 200' style='enable-background:new 0 0 200 200;' xml:space='preserve'>
89 + <title>Tagembed Icon</title>
90 + <g transform='translate(-211 -31)'>
91 + <g id='Group_3576' transform='translate(211 31)'>
92 + <path id='Path_5098' fill='#00E9FF' d='M64.3,119.1c5.4-25.2,10.2-49.2,15.6-73.8c0.6-3.6,1.2-7.2,1.8-10.8c0.6-10.8-6.6-19.8-17.4-21.6c-10.8-2.4-21,4.2-23.4,15C33,63.3,25.2,99.3,18,134.7c-3,14.4,7.2,25.2,22.8,25.2c32.4,1.2,65.4,1.8,97.8,2.4c6.6,0,12.6-0.6,18.6-3c7.8-4.2,12-13.2,9.6-22.2c-2.4-9.6-10.8-16.2-20.4-16.2c-21-0.6-42.6-1.2-63.6-1.8C76.9,119.1,70.9,119.1,64.3,119.1z' />
93 + <path id='Path_5099' fill='#4179FF' d='M136.9,81.9c-25.8,0-50.4,0-75,0c-3.6,0-7.2,0-10.8-0.6c-10.8-1.8-18-10.8-18-21.6s9-19.8,19.8-19.8c36,0,72.6,0,109.2,0c14.4,0,22.8,12,19.8,27.6c-6,31.8-12,64.2-18,96c-1.2,6.6-3.6,12.6-7.2,17.4c-6,6.6-15.6,8.4-23.4,4.8c-9-4.2-13.2-13.8-11.4-23.4c3.6-21,7.8-41.4,11.4-62.4C134.5,94.5,135.7,87.9,136.9,81.9z' />
94 + <g id='Group_3575' transform='translate(16.61 16.942)'>
95 + <g>
96 + <g>
97 + <defs>
98 + <polygon id='SVGID_1_' points='113.1,97 101.1,148.7 147.3,148.7 158.1,103.6' />
99 + </defs>
100 + <clipPath id='SVGID_2_'>
101 + <use xlink:href='#SVGID_1_' style='overflow:visible;' />
102 + </clipPath>
103 + <g id='Group_3574' class='st2' clip-path='url(#SVGID_2_)'>
104 + <path id='Path_5100' fill='#00E9FF' d='M47.7,101.8C53.1,76.6,57.9,52.6,63.3,28c0.6-3.6,1.2-7.2,1.8-10.8C65.7,6.4,58.5-2.6,47.7-4.4c-10.8-1.8-21,4.8-23.4,15.6C16.5,46.6,8.7,82,1.5,118.1c-3,14.4,7.2,25.2,22.8,25.2c33,0.6,65.4,1.8,98.4,2.4c6.6,0,12.6-0.6,18.6-3c7.8-4.2,12-13.2,9.6-22.2c-2.4-9.6-10.8-16.2-21-16.2c-21-0.6-42-1.2-63-1.8C60.3,102.4,54.3,102.4,47.7,101.8z' />
105 + </g>
106 + </g>
107 + </g>
108 + </g>
109 + </g>
110 + </g>
111 + </svg>
112 +<?php
113 + $svg = ob_get_clean();
114 + add_menu_page('Tagembed', 'Tagembed', 'manage_options', 'tagembed', '___tagembed__view', 'data:image/svg+xml;base64,' . base64_encode($svg));
115 +}
116 +add_action('admin_menu', '___tagembed__plugin_menus');
117 +/* --End-- Add Menus */
118 +
119 +/* --Start-- Add & Manage Views */
120 +function ___tagembed__view()
121 +{
122 + if (!empty(___tagembed__user()->isLogin) && ___tagembed__user()->isLogin == 'yes') :
123 + $__tagembed__menus = ___tagembed__menus(['__tagembed__menu_condation' => 1]);
124 + if (empty($__tagembed__menus)) :
125 + include_once TAGEMBED_PLUGIN_DIR_PATH . 'views/widget/widgetView.php';
126 + else :
127 + include_once TAGEMBED_PLUGIN_DIR_PATH . 'views/' . $__tagembed__menus[0]->path . '.php';
128 + endif;
129 + else :
130 + include_once TAGEMBED_PLUGIN_DIR_PATH . 'views/account/accountView.php';
131 + endif;
132 +}
133 +/* --End-- Add & Manage Views */
134 +
135 +/* --Start-- Manage Ajax Calls */
136 +add_action('wp_ajax_tagembed_data', '___tagembed__dataAjaxHandler');
137 +function ___tagembed__dataAjaxHandler()
138 +{
139 + if (!current_user_can('manage_options')) :
140 + return ___tagembed__exitWithDanger('You do not have sufficient permissions to access this page.');
141 + endif;
142 + /* --Start-- Manage Ajax call Request Security (Verified Before Any Other Request Data Is Used) */
143 + $__tagembed__ajaxCallSecurityNones = isset($_REQUEST['__tagembed__ajax_call_nones']) ? sanitize_text_field(wp_unslash($_REQUEST['__tagembed__ajax_call_nones'])) : '';
144 + if (!wp_verify_nonce($__tagembed__ajaxCallSecurityNones, '__tagembed__ajax_call_security_nones')) :
145 + return ___tagembed__exitWithDanger();
146 + endif;
147 + /* --End-- Manage Ajax call Request Security */
148 + if (empty($_REQUEST['__tagembed__ajax_action'])) :
149 + return false;
150 + endif;
151 + $data = ___tagembed__sanitizeRequestData(wp_unslash($_REQUEST));
152 + $data = (object)$data;
153 + /* --Start__ Sanetize All Input */
154 + foreach ($data as $key => $value) :
155 + if (!in_array($key, ['emailId', 'password', 'youtubePlaylist'])) :
156 + ___tagembed__inputSanetize($value);
157 + endif;
158 + endforeach;
159 + /* --End__ Sanetize All Input */
160 +
161 + $param = [];
162 + $action = $data->__tagembed__ajax_action;
163 + $__tagembed__user_details = ___tagembed__user();
164 + switch ($action):
165 + case '__tagembed__getCallingCode':
166 + /* --Start-- Manage Param Data */
167 + $param['platform'] = TAGEMBED_PLUGIN_PLATFORM;
168 + /* --End-- Manage Param Data */
169 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/getCallingCode', $param, []);
170 + $response = ___tagembed__manageApiResponse($response);
171 + unset($param);
172 + return ___tagembed__exitWithSuccess(['callingCode' => $response]);
173 + break;
174 + case '__tagembed__register':
175 + if (empty($data->emailId) || empty($data->password) || empty($data->fullName)) :
176 + return ___tagembed__exitWithDanger();
177 + endif;
178 + /* --Start-- Manage Param Data */
179 + $param['fullName'] = sanitize_text_field($data->fullName);
180 + $param['emailId'] = sanitize_email($data->emailId);
181 + $param['password'] = $data->password;
182 + $param['contact_no'] = $data->contact_no;
183 + $param['calling_code'] = $data->calling_code;
184 + $param['platform'] = TAGEMBED_PLUGIN_PLATFORM;
185 + /* --End-- Manage Param Data */
186 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/register', $param, []);
187 + $response = ___tagembed__manageApiResponse($response);
188 + unset($param);
189 + $param = ['userId' => sanitize_key($response->userId), 'inheritStyles' => 1];
190 + ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/create', $param, ['Authorization:' . $response->access_token]);
191 + if (___tagembed__login($response) == true) :
192 + return ___tagembed__exitWithSuccess(['redirectUrl' => TAGEMBED_PLUGIN_CALL_BACK_URL]);
193 + else :
194 + return ___tagembed__exitWithDanger();
195 + endif;
196 + break;
197 + case '__tagembed__login':
198 + if (empty($data->emailId) || empty($data->password)) :
199 + return ___tagembed__exitWithDanger();
200 + endif;
201 + /* --Start-- Manage Param Data */
202 + $param['emailId'] = sanitize_email($data->emailId);
203 + $param['password'] = $data->password;
204 + $param['platform'] = TAGEMBED_PLUGIN_PLATFORM;
205 + /* --End-- Manage Param Data */
206 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/login', $param, []);
207 + unset($param);
208 + $response = ___tagembed__manageApiResponse($response);
209 + if (___tagembed__login($response) == true) :
210 + return ___tagembed__exitWithSuccess(['redirectUrl' => TAGEMBED_PLUGIN_CALL_BACK_URL]);
211 + else :
212 + return ___tagembed__exitWithDanger();
213 + endif;
214 + break;
215 + case '__tagembed__google_auth_url':
216 + $__tagembed__google_state = wp_generate_password(32, false, false);
217 + $__tagembed__google_verifier = wp_generate_password(64, false, false);
218 + set_transient('__tagembed__google_' . $__tagembed__google_state, ['verifier' => $__tagembed__google_verifier, 'userId' => get_current_user_id()], 10 * MINUTE_IN_SECONDS);
219 + $param['platform'] = TAGEMBED_PLUGIN_PLATFORM;
220 + $param['state'] = $__tagembed__google_state;
221 + $param['challenge'] = hash('sha256', $__tagembed__google_verifier);
222 + $param['returnUrl'] = TAGEMBED_PLUGIN_CALL_BACK_URL;
223 + $__tagembed__google_auth_url = TAGEMBED_PLUGIN_API_URL . 'apiaccount/googleauth?' . http_build_query($param, '', '&');
224 + unset($param);
225 + return ___tagembed__exitWithSuccess(['authUrl' => $__tagembed__google_auth_url]);
226 + break;
227 + case '__tagembed__logout':
228 + if (tagembed_logout()) :
229 + return ___tagembed__exitWithSuccess(['redirectUrl' => TAGEMBED_PLUGIN_REDIRECT_URL . 'tagembed']);
230 + else :
231 + return ___tagembed__exitWithDanger();
232 + endif;
233 + break;
234 + case '__tagembed__check_plan_premium_feature':
235 + if (empty($__tagembed__user_details)) :
236 + return ___tagembed__exitWithDanger();
237 + endif;
238 + /* --Start-- Manage Param Data */
239 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
240 + /* --End-- Manage Param Data */
241 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/checkPlanPremiumFeature', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
242 + unset($param);
243 + $response = ___tagembed__manageApiResponse($response);
244 + return ___tagembed__exitWithSuccess($response);
245 + break;
246 + case '__tagembed__check_user_accout_status':
247 + if (empty($__tagembed__user_details)) :
248 + return ___tagembed__exitWithDanger();
249 + endif;
250 + /* --Start-- Manage Param Data */
251 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
252 + /* --End-- Manage Param Data */
253 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/checkUserAccountStatus', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
254 + unset($param);
255 + $response = ___tagembed__manageApiResponse($response);
256 + return ___tagembed__exitWithSuccess($response);
257 + break;
258 + case '__tagembed__get_account_details':
259 + $data->auth = !empty($data->auth) ? 1 : 0;
260 + if (empty($__tagembed__user_details)) :
261 + return ___tagembed__exitWithDanger();
262 + endif;
263 + /* --Start-- Manage Param Data */
264 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
265 + $param['platform'] = TAGEMBED_PLUGIN_PLATFORM;
266 + /* --End-- Manage Param Data */
267 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/getdetails', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
268 + unset($param);
269 + $response = ___tagembed__manageApiResponse($response);
270 + return ___tagembed__exitWithSuccess($response);
271 + break;
272 +
273 + case '__tagembed__manage_active_widget':
274 + if (empty($data->widgetId)) :
275 + return ___tagembed__exitWithDanger();
276 + endif;
277 + if (___tagembed__manageActiveWidget($data->widgetId)) :
278 + return ___tagembed__exitWithSuccess();
279 + else :
280 + return ___tagembed__exitWithDanger();
281 + endif;
282 + break;
283 + case '__tagembed__menue':
284 + if (empty($data->menueId)) :
285 + return ___tagembed__exitWithDanger();
286 + endif;
287 + if (___tagembed__menus(['__tagembed__menu_id' => $data->menueId])) :
288 + return ___tagembed__exitWithSuccess(['redirectUrl' => TAGEMBED_PLUGIN_REDIRECT_URL . 'tagembed']);
289 + else :
290 + return ___tagembed__exitWithDanger();
291 + endif;
292 + break;
293 + case '__tagembed__create_widget':
294 + if (empty($__tagembed__user_details) || empty($data->name)) :
295 + return ___tagembed__exitWithDanger('Validation Error', ['name' => 'Widget name is required']);
296 + endif;
297 + $data->profanity = (isset($data->profanity)) ? 0 : 1;
298 + /* --Start-- Manage Param Data */
299 + $param['name'] = sanitize_text_field($data->name);
300 + $param['profanity'] = sanitize_key($data->profanity);
301 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
302 + $param['inheritStyles'] = 1;
303 + /* --End-- Manage Param Data */
304 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/create', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
305 + unset($param);
306 + $response = ___tagembed__manageApiResponse($response);
307 + $response = !empty($response->message) ? $response->message : 'Done';
308 + return ___tagembed__exitWithSuccess(['message' => $response, 'redirectUrl' => TAGEMBED_PLUGIN_CALL_BACK_URL]);
309 + break;
310 + case '__tagembed__edit_widget':
311 + if (empty($__tagembed__user_details) || empty($data->name) || empty($data->widgetId)) :
312 + return ___tagembed__exitWithDanger('Validation Error', ['name' => 'Widget name is required']);
313 + endif;
314 + /* --Start-- Manage Param Data */
315 + $param['name'] = sanitize_text_field($data->name);
316 + $param['widgetId'] = sanitize_key($data->widgetId);
317 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
318 + /* --End-- Manage Param Data */
319 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/edit', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
320 + unset($param);
321 + $response = ___tagembed__manageApiResponse($response);
322 + $response = !empty($response->message) ? $response->message : 'Done';
323 + return ___tagembed__exitWithSuccess(['message' => $response, 'redirectUrl' => TAGEMBED_PLUGIN_CALL_BACK_URL]);
324 + break;
325 + case '__tagembed__update_widget_status':
326 + if (empty($__tagembed__user_details) || empty($data->widgetId)) :
327 + return ___tagembed__exitWithDanger();
328 + endif;
329 + /* --Start-- Manage Param Data */
330 + $param['status'] = sanitize_key($data->status);
331 + $param['widgetId'] = sanitize_key($data->widgetId);
332 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
333 + /* --End-- Manage Param Data */
334 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/status', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
335 + unset($param);
336 + $response = ___tagembed__manageApiResponse($response);
337 + $response = !empty($response->message) ? $response->message : 'Done';
338 + return ___tagembed__exitWithSuccess(['message' => $response]);
339 + break;
340 + case '__tagembed__delete_widget':
341 + if (empty($__tagembed__user_details) || empty($data->widgetId)) :
342 + return ___tagembed__exitWithDanger();
343 + endif;
344 + /* --Start-- Manage Param Data */
345 + $param['widgetId'] = sanitize_key($data->widgetId);
346 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
347 + /* --End-- Manage Param Data */
348 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/delete', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
349 + unset($param);
350 + $response = ___tagembed__manageApiResponse($response);
351 + $response = !empty($response->message) ? $response->message : 'Done';
352 + return ___tagembed__exitWithSuccess(['message' => $response]);
353 + break;
354 + case '__tagembed__source_networks':
355 + $data->auth = !empty($data->auth) ? 1 : 0;
356 + if (empty($__tagembed__user_details)) :
357 + return ___tagembed__exitWithDanger();
358 + endif;
359 + /* --Start-- Manage Param Data */
360 + $param['auth'] = sanitize_key($data->auth);
361 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
362 + /* --End-- Manage Param Data */
363 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apinetwork/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
364 + unset($param);
365 + $response = ___tagembed__manageApiResponse($response);
366 + return ___tagembed__exitWithSuccess($response);
367 + break;
368 + case '__tagembed__get_themes':
369 + if (empty($__tagembed__user_details) || empty($data->widgetId)) :
370 + return ___tagembed__exitWithDanger();
371 + endif;
372 + /* --Start-- Manage Param Data */
373 + $param['widgetId'] = sanitize_key($data->widgetId);
374 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
375 + /* --End-- Manage Param Data */
376 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'Apitheme/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
377 + unset($param);
378 + $response = ___tagembed__manageApiResponse($response);
379 + return ___tagembed__exitWithSuccess($response);
380 + break;
381 + case '__tagembed__edit_themes':
382 + if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->themeId)) :
383 + return ___tagembed__exitWithDanger();
384 + endif;
385 + /* --Start-- Manage Param Data */
386 + $param['themeId'] = sanitize_key($data->themeId);
387 + $param['widgetId'] = sanitize_key($data->widgetId);
388 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
389 + /* --End-- Manage Param Data */
390 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'Apitheme/edit', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
391 + unset($param);
392 + $response = ___tagembed__manageApiResponse($response);
393 + return ___tagembed__exitWithSuccess($response);
394 + break;
395 + case '__tagembed__get_network_filter':
396 + if (empty($__tagembed__user_details) || empty($data->networkId)) :
397 + return ___tagembed__exitWithDanger();
398 + endif;
399 + /* --Start-- Manage Param Data */
400 + $param['networkId'] = sanitize_key($data->networkId);
401 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
402 + /* --End-- Manage Param Data */
403 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apinetwork/filter', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
404 + unset($param);
405 + $response = ___tagembed__manageApiResponse($response);
406 + return ___tagembed__exitWithSuccess($response);
407 + break;
408 + case '__tagembed__get_already_exist_accounts':
409 + if (empty($__tagembed__user_details)) :
410 + return ___tagembed__exitWithDanger();
411 + endif;
412 + /* --Start-- Manage Param Data */
413 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
414 + /* --End-- Manage Param Data */
415 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/getalreadyexistaccounts', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
416 + unset($param);
417 + $response = ___tagembed__manageApiResponse($response);
418 + return ___tagembed__exitWithSuccess($response);
419 + break;
420 + case '__tagembed__add_or_update_account':
421 + if (empty($__tagembed__user_details) || empty($data->networkId) || empty($data->type)) :
422 + return ___tagembed__exitWithDanger();
423 + endif;
424 + /* --Start-- Manage Param Data */
425 + $param['connectedAccountId'] = $data->connectedAccountId;
426 + $param['feedId'] = sanitize_key($data->feedId);
427 + $param['type'] = sanitize_text_field($data->type);
428 + $param['networkId'] = sanitize_key($data->networkId);
429 + $param['filterId'] = sanitize_key($data->filterId);
430 + $param['otherData'] = $data->otherData;
431 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
432 + /* --End-- Manage Param Data */
433 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/addorupdate', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
434 + unset($param);
435 + $response = ___tagembed__manageApiResponse($response);
436 + return ___tagembed__exitWithSuccess(['__tagembed__requestCallBackUrl' => TAGEMBED_PLUGIN_CALL_BACK_URL, 'redirectUrl' => TAGEMBED_PLUGIN_API_URL . 'apiauth/getauth', '__tagembed__feedData' => $response->__tagembed__feedData]);
437 + break;
438 + case '__tagembed__delete_account':
439 + if (empty($__tagembed__user_details) || empty($data->networkId) || empty($data->parentId)) :
440 + return ___tagembed__exitWithDanger();
441 + endif;
442 + /* --Start-- Manage Param Data */
443 + $param['parentId'] = sanitize_key($data->parentId);
444 + $param['networkId'] = sanitize_key($data->networkId);
445 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
446 + /* --End-- Manage Param Data */
447 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/delete', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
448 + unset($param);
449 + $response = ___tagembed__manageApiResponse($response);
450 + $response = !empty($response->message) ? $response->message : 'Done';
451 + return ___tagembed__exitWithSuccess(['message' => $response]);
452 + break;
453 + case '__tagembed__get_already_exist_auth':
454 + if (empty($__tagembed__user_details) || empty($data->networkId)) :
455 + return ___tagembed__exitWithDanger();
456 + endif;
457 + /* --Start-- Manage Param Data */
458 + $param['networkId'] = sanitize_key($data->networkId);
459 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
460 + /* --End-- Manage Param Data */
461 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
462 + unset($param);
463 + $response = ___tagembed__manageApiResponse($response);
464 + return ___tagembed__exitWithSuccess($response);
465 + break;
466 + case '__tagembed__search_google_location':
467 + if (empty($__tagembed__user_details) || empty($data->googleLocationName)) :
468 + return ___tagembed__exitWithDanger();
469 + endif;
470 + /* --Start-- Manage Param Data */
471 + $param['googleLocationName'] = $data->googleLocationName;
472 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
473 + /* --End-- Manage Param Data */
474 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/searchgooglelocation', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
475 + unset($param);
476 + $response = ___tagembed__manageApiResponse($response);
477 + return ___tagembed__exitWithSuccess($response);
478 + break;
479 + case '__tagembed__search_vk_communities':
480 + if (empty($__tagembed__user_details) || empty($data->vkCommunitiesName)) :
481 + return ___tagembed__exitWithDanger();
482 + endif;
483 + /* --Start-- Manage Param Data */
484 + $param['vkCommunitiesName'] = $data->vkCommunitiesName;
485 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
486 + /* --End-- Manage Param Data */
487 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/searchVkCommunities', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
488 + unset($param);
489 + $response = ___tagembed__manageApiResponse($response);
490 + return ___tagembed__exitWithSuccess($response);
491 + break;
492 + case '__tagembed__search_facebook_page':
493 + if (empty($data->facebookPageData)) :
494 + return ___tagembed__exitWithDanger();
495 + endif;
496 + /* --Start-- Manage Param Data */
497 + $param['facebookPageData'] = $data->facebookPageData;
498 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
499 + /* --End-- Manage Param Data */
500 + /* --Start-- Call And Manage Api Call */
501 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/searchfacebookpage', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
502 + unset($param);
503 + $response = ___tagembed__manageApiResponse($response);
504 + return ___tagembed__exitWithSuccess($response);
505 + break;
506 + case '__tagembed__get_facebook_page_albums':
507 + if (empty($__tagembed__user_details) || empty($data->connectedAccountsId)) :
508 + return ___tagembed__exitWithDanger();
509 + endif;
510 + /* --Start-- Manage Param Data */
511 + $param['connectedAccountsId'] = sanitize_key($data->connectedAccountsId);
512 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
513 + /* --End-- Manage Param Data */
514 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/apiauthfacebookpagealbums', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
515 + unset($param);
516 + $response = ___tagembed__manageApiResponse($response);
517 + return ___tagembed__exitWithSuccess($response);
518 + break;
519 + case '__tagembed__search_youtube_channel':
520 + if (empty($__tagembed__user_details) || empty($data->youtubeChannelData)) :
521 + return ___tagembed__exitWithDanger();
522 + endif;
523 + /* --Start-- Manage Param Data */
524 + $param['youtubeChannelData'] = $data->youtubeChannelData;
525 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
526 + /* --End-- Manage Param Data */
527 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/searchyoutubechannel', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
528 + unset($param);
529 + $response = ___tagembed__manageApiResponse($response);
530 + return ___tagembed__exitWithSuccess($response);
531 + break;
532 + case '__tagembed__get_youtube_playlist':
533 + if (empty($__tagembed__user_details) || empty($data->youtubeId)) :
534 + return ___tagembed__exitWithDanger();
535 + endif;
536 + /* --Start-- Manage Param Data */
537 + $param['youtubeId'] = $data->youtubeId;
538 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
539 + /* --End-- Manage Param Data */
540 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/getyoutubeplaylist', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
541 + unset($param);
542 + $response = ___tagembed__manageApiResponse($response);
543 + return ___tagembed__exitWithSuccess($response);
544 + break;
545 + case '__tagembed__get_slack_channel_list':
546 + if (empty($data->connectedAccountsId)) :
547 + return ___tagembed__exitWithDanger();
548 + endif;
549 + /* --Start-- Manage Param Data */
550 + $param['connectedAccountsId'] = $data->connectedAccountsId;
551 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
552 + /* --End-- Manage Param Data */
553 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/getslackchannellist', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
554 + unset($param);
555 + $response = ___tagembed__manageApiResponse($response);
556 + return ___tagembed__exitWithSuccess($response);
557 + break;
558 + case '__tagembed__get_feed':
559 + if (empty($__tagembed__user_details) || empty($data->widgetId)) :
560 + return ___tagembed__exitWithDanger();
561 + endif;
562 + /* --Start-- Manage Param Data */
563 + $param['widgetId'] = sanitize_key($data->widgetId);
564 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
565 + /* --End-- Manage Param Data */
566 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
567 + unset($param);
568 + $response = ___tagembed__manageApiResponse($response);
569 + return ___tagembed__exitWithSuccess($response);
570 + break;
571 + case '__tagembed__update_feed_status':
572 + if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->feedId)) :
573 + return ___tagembed__exitWithDanger();
574 + endif;
575 + /* --Start-- Manage Param Data */
576 + $param['feedId'] = sanitize_key($data->feedId);
577 + $param['status'] = sanitize_key($data->status);
578 + $param['widgetId'] = sanitize_key($data->widgetId);
579 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
580 + /* --End-- Manage Param Data */
581 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/status', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
582 + unset($param);
583 + $response = ___tagembed__manageApiResponse($response);
584 + $response = !empty($response->message) ? $response->message : 'Done';
585 + return ___tagembed__exitWithSuccess(['message' => $response]);
586 + break;
587 + case '__tagembed__delete_feed':
588 + if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->feedId)) :
589 + return ___tagembed__exitWithDanger();
590 + endif;
591 + /* --Start-- Manage Param Data */
592 + $param['feedId'] = sanitize_key($data->feedId);
593 + $param['widgetId'] = sanitize_key($data->widgetId);
594 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
595 + /* --End-- Manage Param Data */
596 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/delete', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
597 + unset($param);
598 + $response = ___tagembed__manageApiResponse($response);
599 + $response = !empty($response->message) ? $response->message : 'Done';
600 + return ___tagembed__exitWithSuccess(['message' => $response]);
601 + break;
602 + case '__tagembed__create_feed':
603 + if (empty($__tagembed__user_details) || empty($data->widgetName) || empty($data->networkName) || empty($data->filterName) || empty($data->widgetId) || empty($data->networkId) || empty($data->filterId)) :
604 + return ___tagembed__exitWithDanger();
605 + endif;
606 + $__tagembed__feed_input_data = ['feed' => sanitize_text_field($data->feed), 'userId' => sanitize_key($__tagembed__user_details->userId), 'moderation' => sanitize_key(isset($data->moderation) ? 1 : 0), 'widgetName' => sanitize_text_field($data->widgetName), 'networkName' => sanitize_text_field($data->networkName), 'filterName' => sanitize_text_field($data->filterName), 'widgetId' => sanitize_key($data->widgetId), 'networkId' => sanitize_key($data->networkId), 'filterId' => sanitize_key($data->filterId), 'auth' => 0, 'authId' => isset($data->authId) ? sanitize_key($data->authId) : 0];
607 + $__tagembed__feed_input_data['feed'] = !empty($data->feed) ? sanitize_text_field($data->feed) : '__tagembed__feed';
608 + $__tagembed__feed_filter_id = $data->filterId;
609 + switch ($__tagembed__feed_input_data['networkId']):
610 + case 1:
611 + $__tagembed__feed_input_data['auth'] = 1;
612 + $__tagembed__feed_input_data['multiplePhoto'] = sanitize_key(isset($data->multiplePhoto) ? 1 : 0);
613 + $__tagembed__feed_input_data['excludeRetweet'] = sanitize_key(isset($data->excludeRetweet) ? 1 : 0);
614 + if (!empty($data->list)) :
615 + $__tagembed__feed_input_data['list'] = sanitize_key($data->list);
616 + endif;
617 + break;
618 + case 2:
619 + $__tagembed__feed_input_data['auth'] = 1;
620 + break;
621 + case 3:
622 + $__tagembed__feed_input_data['auth'] = 1;
623 + switch ($__tagembed__feed_filter_id):
624 + case 65:
625 + $__tagembed__feed_input_data['accountAlbumType'] = sanitize_key(isset($data->accountAlbumType) ? $data->accountAlbumType : '');
626 + $__tagembed__feed_input_data['accountAlbumData'] = sanitize_text_field(isset($data->accountAlbumData) ? $data->accountAlbumData : '');
627 + break;
628 + endswitch;
629 + break;
630 + case 4:
631 + if ($__tagembed__feed_filter_id == 29) :
632 + $__tagembed__feed_input_data['auth'] = 1;
633 + else :
634 + $__tagembed__feed_input_data['placeId'] = $data->placeId;
635 + $__tagembed__feed_input_data['placeName'] = $data->placeName;
636 + endif;
637 + break;
638 + case 5:
639 + switch ($__tagembed__feed_filter_id):
640 + case 1:
641 + case 71:
642 + break;
643 + case 12:
644 + if (!preg_match('/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) :
645 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']);
646 + endif;
647 + $pintrestHeaders = explode('/', parse_url($data->feed)['path']);
648 + $__tagembed__feed_input_data['value1'] = strtolower($pintrestHeaders[1]);
649 + $__tagembed__feed_input_data['value2'] = strtolower($pintrestHeaders[2]);
650 + break;
651 + endswitch;
652 + break;
653 + case 6:
654 + switch ($__tagembed__feed_filter_id):
655 + case 1:
656 + case 2:
657 + $__tagembed__feed_input_data['feed'] = $__tagembed__feed_input_data['name'] = $data->feed;
658 + break;
659 + endswitch;
660 + break;
661 + case 7:
662 + if (in_array($__tagembed__feed_filter_id, [1, 71])) :
663 + $isUrl = false;
664 + if (preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) :
665 + $isUrl = true;
666 + endif;
667 + if ((empty($data->youtubeId) || empty($data->youtubeName)) && !$isUrl) :
668 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid Channel URL Or Tab On Search Icon']);
669 + endif;
670 + if ($isUrl) :
671 + $data->youtubeId = explode('/', $data->feed);
672 + $data->youtubeId = $data->youtubeId[4];
673 + $data->youtubeName = 'youtube';
674 + if (empty($data->youtubeId) || empty($data->youtubeName)) :
675 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid Channel URL']);
676 + endif;
677 + endif;
678 + endif;
679 + switch ($__tagembed__feed_filter_id):
680 + case 1:
681 + case 75:
682 + $__tagembed__feed_input_data['youtubeId'] = $data->youtubeId;
683 + $__tagembed__feed_input_data['youtubeName'] = $data->youtubeName;
684 + break;
685 + case 11:
686 + if (empty($data->youtubePlaylist) && empty($data->youtubeId)) :
687 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid Channel URL Or Tab On Search Icon']);
688 + elseif (empty($data->youtubePlaylist) && !empty($data->youtubeId)) :
689 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Play List Not Found']);
690 + endif;
691 + $data->youtubePlaylist = explode('#', $data->youtubePlaylist);
692 + $__tagembed__feed_input_data['youtubeId'] = $data->youtubePlaylist[0];
693 + $__tagembed__feed_input_data['youtubeName'] = $data->youtubePlaylist[1];
694 + $__tagembed__feed_input_data['feed'] = $data->youtubePlaylist[1];
695 + unset($data->youtubePlaylist);
696 + break;
697 + endswitch;
698 + break;
699 + case 8:
700 + switch ($__tagembed__feed_filter_id):
701 + case 1:
702 + case 2:
703 + $__tagembed__feed_input_data['auth'] = 1;
704 + break;
705 + endswitch;
706 + break;
707 + case 10:
708 + if (in_array($__tagembed__feed_filter_id, [1, 16, 17])) :
709 + if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) :
710 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']);
711 + endif;
712 + endif;
713 + switch ($__tagembed__feed_filter_id):
714 + case 16:
715 + $postUrl = parse_url($data->feed);
716 + if (!strstr($postUrl['host'], 'linkedin')) :
717 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Linkedin Post Url']);
718 + endif;
719 + $postUrl = $data->feed;
720 + $postUrl = rtrim($postUrl, '/');
721 + preg_match('/[^\/]+$/', $postUrl, $postId);
722 + $postId = $postId[0];
723 + $postId = (explode('?', $postId)[0]);
724 + $value1 = 'LinkedIn';
725 + if (stripos($postId, 'activity') !== false) :
726 + $postId = (explode('activity', $postId)[1]);
727 + $value2 = 'activity';
728 + elseif (stripos($postId, 'ugcPost') !== false) :
729 + $postId = (explode('ugcPost', $postId)[1]);
730 + $value2 = 'ugcPost';
731 + else :
732 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Linkedin Post Url']);
733 + endif;
734 + preg_match_all('!\d+!', $postId, $postId);
735 + if (isset($postId[0][0]) && empty($postId[0][0])) :
736 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Linkedin Post Url']);
737 + endif;
738 + $value3 = $postId[0][0];
739 + if (empty($value1) || empty($value2) || empty($value3)) :
740 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Linkedin Post Url']);
741 + endif;
742 + $__tagembed__feed_input_data['value1'] = $value1;
743 + $__tagembed__feed_input_data['value2'] = $value2;
744 + $__tagembed__feed_input_data['value3'] = $value3;
745 + break;
746 + case 1:
747 + case 17:
748 + $url = parse_url($data->feed);
749 + $companyPageUrl = $url['scheme'] . '://' . $url['host'];
750 + $url = explode('/', $url['path']);
751 + $companyPageUrl = $companyPageUrl . '/' . $url[1] . '/' . $url[2] . '/';
752 + $__tagembed__feed_input_data['feed'] = $companyPageUrl;
753 + $url[2] = str_replace('-', ' ', '$url[2]');
754 + $__tagembed__feed_input_data['page'] = ucwords($url[2], ' ');
755 + break;
756 + case 2:
757 + $__tagembed__feed_input_data['feed'] = $__tagembed__feed_input_data['name'] = $data->feed;
758 + break;
759 + endswitch;
760 + break;
761 + case 11:
762 + switch ($__tagembed__feed_filter_id):
763 + case 1:
764 + case 2:
765 + $__tagembed__feed_input_data['feed'] = $__tagembed__feed_input_data['name'] = $data->feed;
766 + break;
767 + endswitch;
768 + break;
769 + case 12:
770 + if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) :
771 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']);
772 + endif;
773 + $__tagembed__feed_input_data['name'] = $data->name;
774 + break;
775 + case 18:
776 + switch ($__tagembed__feed_filter_id):
777 + case 23:
778 + if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) :
779 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']);
780 + endif;
781 + break;
782 + case 26:
783 + $__tagembed__feed_input_data['hashtagCaption'] = sanitize_key(isset($data->hashtagCaption) ? 1 : 0);
784 + $__tagembed__feed_input_data['hashtagOlder'] = sanitize_key(isset($data->hashtagOlder) ? 1 : 0);
785 + break;
786 + endswitch;
787 + $__tagembed__feed_input_data['auth'] = 1;
788 + break;
789 + case 19:
790 + if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) :
791 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']);
792 + endif;
793 + $yelpBusinessUrl = parse_url($data->feed);
794 + if (!strstr($yelpBusinessUrl['host'], 'yelp')) :
795 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Yelp Business Url']);
796 + endif;
797 + $yelpBusinessPath = explode('/', $yelpBusinessUrl['path']);
798 + $__tagembed__feed_input_data['feed'] = $yelpBusinessPath[2];
799 + $__tagembed__feed_input_data['name'] = $yelpBusinessPath[2];
800 + break;
801 + case 20:
802 + $__tagembed__feed_input_data['auth'] = 1;
803 + $slackData = isset($data->slackChannelList) ? $data->slackChannelList : '';
804 + if (!empty($slackData)) :
805 + $slackData = explode('#', $slackData);
806 + $__tagembed__feed_input_data['name'] = $slackData[1];
807 + $__tagembed__feed_input_data['feed'] = $slackData[0];
808 + endif;
809 + break;
810 + case 23:
811 + if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) :
812 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']);
813 + endif;
814 + $airbnbListUrl = parse_url($data->feed);
815 + if (strstr($airbnbListUrl['host'], 'airbnb')) :
816 + preg_match('/[^\/]+$/', $data->feed, $matches);
817 + $__tagembed__feed_input_data['listId'] = explode('?', $matches[0])[0];
818 + else :
819 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Airbnb Url']);
820 + endif;
821 + $__tagembed__feed_input_data['name'] = $data->name;
822 + break;
823 + case 36:
824 + if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) :
825 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']);
826 + endif;
827 + $etsyShopUrl = parse_url($data->feed);
828 + if (!strstr($etsyShopUrl['host'], 'etsy')) :
829 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Etsy Shop Url']);
830 + endif;
831 + $__tagembed__feed_input_data['feed'] = $__tagembed__feed_input_data['name'] = explode('/shop/', $etsyShopUrl['path'])[1];
832 + break;
833 + case 28:
834 + switch ($__tagembed__feed_filter_id):
835 + case 72:
836 + $__tagembed__feed_input_data['feed'] = $data->feed;
837 + $__tagembed__feed_input_data['name'] = $data->feed;
838 + break;
839 + endswitch;
840 + if (!in_array($__tagembed__feed_filter_id, [72])) :
841 + $__tagembed__feed_input_data['auth'] = 1;
842 + endif;
843 + break;
844 + case 30:
845 + switch ($__tagembed__feed_filter_id):
846 + case 2:
847 + $__tagembed__feed_input_data['feed'] = $data->feed;
848 + $__tagembed__feed_input_data['name'] = $data->feed;
849 + break;
850 + case 75:
851 + $__tagembed__feed_input_data['communitiesName'] = $data->communitiesName;
852 + $__tagembed__feed_input_data['communitiesId'] = $data->communitiesId;
853 + break;
854 + endswitch;
855 + if (!in_array($__tagembed__feed_filter_id, [2, 75])) :
856 + $__tagembed__feed_input_data['auth'] = 1;
857 + endif;
858 + break;
859 + case 33:
860 + if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) :
861 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']);
862 + endif;
863 + preg_match('/[^\/]+$/', '$data->feed', $matches);
864 + $__tagembed__feed_input_data['feed'] = $matches[0];
865 + $__tagembed__feed_input_data['name'] = $matches[0];
866 + break;
867 + case 34:
868 + if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) :
869 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']);
870 + endif;
871 + $__tagembed__feed_input_data['name'] = explode('/', $data->feed)[3];
872 + $__tagembed__feed_input_data['feed'] = $data->feed;
873 + break;
874 + case 35:
875 + if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) :
876 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']);
877 + endif;
878 + $__tagembed__feed_input_data['name'] = explode('Reviews-', $data->feed)[1];
879 + $__tagembed__feed_input_data['name'] = explode('.html', $__tagembed__feed_input_data['name'])[0];
880 + $__tagembed__feed_input_data['feed'] = $data->feed;
881 + break;
882 + case 37:
883 + $data->feed = explode('.html', $data->feed)[0];
884 + if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) :
885 + return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']);
886 + endif;
887 + $__tagembed__feed_input_data['name'] = $data->feed;
888 + $__tagembed__feed_input_data['feed'] = explode('item/', $data->feed)[1];
889 + break;
890 + endswitch;
891 + unset($data);
892 +
893 + /* --Start-- Manage Api Calling */
894 + $byApiCall = 0;
895 + if (empty($__tagembed__feed_input_data['authId'])) :
896 + switch ($__tagembed__feed_input_data['networkId']):
897 + case 4:
898 + if (33 == $__tagembed__feed_filter_id) :
899 + $byApiCall = 1;
900 + $__tagembed__feed_input_data['byApiCall'] = 1;
901 + endif;
902 + break;
903 + case 5:
904 + case 7:
905 + case 6:
906 + case 10:
907 + case 11:
908 + case 12:
909 + case 19:
910 + case 23:
911 + case 28:
912 + case 29:
913 + case 33:
914 + case 34:
915 + case 35:
916 + case 37:
917 + $byApiCall = 1;
918 + $__tagembed__feed_input_data['byApiCall'] = 1;
919 + break;
920 + case 31:
921 + if (2 == $__tagembed__feed_filter_id) :
922 + $byApiCall = 1;
923 + $__tagembed__feed_input_data['byApiCall'] = 1;
924 + endif;
925 + break;
926 + case 32:
927 + if (in_array($__tagembed__feed_filter_id, [2, 75])) :
928 + $byApiCall = 1;
929 + $__tagembed__feed_input_data['byApiCall'] = 1;
930 + endif;
931 + break;
932 + endswitch;
933 + else :
934 + $byApiCall = 1;
935 + $__tagembed__feed_input_data['byApiCall'] = 1;
936 + endif;
937 + $__tagembed__feed_input_data['appUser'] = 1;
938 + $__tagembed__feed_input_data['platform'] = TAGEMBED_PLUGIN_PLATFORM;
939 + /* --End-- Manage Api Calling */
940 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/create', ['feedData' => $__tagembed__feed_input_data], ['Authorization:' . $__tagembed__user_details->accessToken]);
941 + $response = ___tagembed__manageApiResponse($response);
942 + return ___tagembed__exitWithSuccess(['byapiCall' => $byApiCall, '__tagembed__requestCallBackUrl' => TAGEMBED_PLUGIN_CALL_BACK_URL, 'redirectUrl' => TAGEMBED_PLUGIN_API_URL . 'apiauth/getauth', '__tagembed__feedData' => $response->__tagembed__feedData]);
943 + break;
944 + case '__tagembed__make_payment':
945 +
946 + if (empty($__tagembed__user_details) || empty($data->planId)) :
947 + return ___tagembed__exitWithDanger();
948 + endif;
949 + /* --Start-- Manage Param Data */
950 + $param['planId'] = sanitize_key($data->planId);
951 + $param['priceCode'] = $data->priceCode;
952 + /* --Start-- Manage Param Data */
953 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
954 + $param['email'] = $__tagembed__user_details->email;
955 + $param['name'] = $__tagembed__user_details->name;
956 + $param['platform'] = TAGEMBED_PLUGIN_PLATFORM;
957 + /* --End-- Manage Param Data */
958 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/getpaymentdetails', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
959 + unset($param);
960 + $response = ___tagembed__manageApiResponse($response);
961 + return ___tagembed__exitWithSuccess(['__tagembed__requestCallBackUrl' => TAGEMBED_PLUGIN_CALL_BACK_URL, 'redirectUrl' => TAGEMBED_PLUGIN_API_URL . 'apiaccount/makepayment', '__tagembed__paymentData' => $response->__tagembed__paymentData]);
962 + break;
963 + case '__tagembed__cancel_subscription':
964 + if (empty($__tagembed__user_details) || empty($data->planId)) :
965 + return ___tagembed__exitWithDanger();
966 + endif;
967 + /* --Start-- Manage Param Data */
968 + $param['planId'] = sanitize_key($data->planId);
969 + /* --Start-- Manage Param Data */
970 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
971 + $param['email'] = $__tagembed__user_details->email;
972 + $param['name'] = $__tagembed__user_details->name;
973 + $param['platform'] = TAGEMBED_PLUGIN_PLATFORM;
974 + /* --End-- Manage Param Data */
975 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/cancelsubscription', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
976 + unset($param);
977 + $response = ___tagembed__manageApiResponse($response);
978 + $response = !empty($response->message) ? $response->message : 'Done';
979 + return ___tagembed__exitWithSuccess(['message' => $response]);
980 + break;
981 + case '__tagembed__get_post':
982 + if (empty($__tagembed__user_details) || empty($data->widgetId) || !isset($data->perPage) || !isset($data->offset) || !isset($data->postStatus)) :
983 + return ___tagembed__exitWithDanger();
984 + endif;
985 + /* --Start-- Manage Param Data */
986 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
987 + $param['widgetId'] = sanitize_key($data->widgetId);
988 + $param['perPage'] = sanitize_key($data->perPage);
989 + $param['offset'] = sanitize_key($data->offset);
990 + $param['postStatus'] = sanitize_key($data->postStatus);
991 + $param['feedIds'] = $data->feedIds;
992 + $param['postType'] = $data->postType;
993 + $param['highlightFilter'] = sanitize_key($data->highlightFilter);
994 + $param['pinFilter'] = sanitize_key($data->pinFilter);
995 + $param['recentFilter'] = sanitize_key($data->recentFilter);
996 + $param['retweetFilter'] = sanitize_key($data->retweetFilter);
997 + $param['searchText'] = sanitize_text_field($data->searchText);
998 + /* --End-- Manage Param Data */
999 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifilter/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
1000 + unset($param);
1001 + $response = ___tagembed__manageApiResponse($response);
1002 + return ___tagembed__exitWithSuccess($response);
1003 + break;
1004 + case '__tagembed__manage_post_status':
1005 + if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->postIds) || empty($data->postStatus)) :
1006 + return ___tagembed__exitWithDanger();
1007 + endif;
1008 + /* --Start-- Manage Param Data */
1009 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
1010 + $param['widgetId'] = sanitize_key($data->widgetId);
1011 + $param['postIds'] = $data->postIds;
1012 + $param['postStatus'] = sanitize_key($data->postStatus);
1013 + /* --End-- Manage Param Data */
1014 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifilter/status', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
1015 + unset($param);
1016 + $response = ___tagembed__manageApiResponse($response);
1017 + $response = !empty($response->message) ? $response->message : 'Done';
1018 + return ___tagembed__exitWithSuccess(['message' => $response]);
1019 + break;
1020 + case '__tagembed__feed_for_search':
1021 + if (empty($__tagembed__user_details) || empty($data->widgetId)) :
1022 + return ___tagembed__exitWithDanger();
1023 + endif;
1024 + /* --Start-- Manage Param Data */
1025 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
1026 + $param['widgetId'] = sanitize_key($data->widgetId);
1027 + /* --End-- Manage Param Data */
1028 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifilter/getfeeds', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
1029 + unset($param);
1030 + $response = ___tagembed__manageApiResponse($response);
1031 + return ___tagembed__exitWithSuccess($response);
1032 + break;
1033 + case '__tagembed__manage_post_pin':
1034 + if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->postId) || !isset($data->pin)) :
1035 + return ___tagembed__exitWithDanger();
1036 + endif;
1037 + /* --Start-- Manage Param Data */
1038 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
1039 + $param['widgetId'] = sanitize_key($data->widgetId);
1040 + $param['postId'] = $data->postId;
1041 + $param['pin'] = sanitize_key($data->pin);
1042 + /* --End-- Manage Param Data */
1043 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifilter/pin', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
1044 + unset($param);
1045 + $response = ___tagembed__manageApiResponse($response);
1046 + $response = !empty($response->message) ? $response->message : 'Done';
1047 + return ___tagembed__exitWithSuccess(['message' => $response]);
1048 + break;
1049 + case '__tagembed__manage_post_highlight':
1050 + if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->postId) || !isset($data->highlight)) :
1051 + return ___tagembed__exitWithDanger();
1052 + endif;
1053 + /* --Start-- Manage Param Data */
1054 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
1055 + $param['widgetId'] = sanitize_key($data->widgetId);
1056 + $param['postId'] = $data->postId;
1057 + $param['highlight'] = sanitize_key($data->highlight);
1058 + /* --End-- Manage Param Data */
1059 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifilter/highlight', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
1060 + unset($param);
1061 + $response = ___tagembed__manageApiResponse($response);
1062 + $response = !empty($response->message) ? $response->message : 'Done';
1063 + return ___tagembed__exitWithSuccess(['message' => $response]);
1064 + break;
1065 + case '__tagembed__plugin_version':
1066 + /* --Start-- Manage Param Data */
1067 + $param = [];
1068 + $param['platform'] = TAGEMBED_PLUGIN_PLATFORM;
1069 + /* --End-- Manage Param Data */
1070 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/pluginversion', $param, []);
1071 + $response = ___tagembed__manageApiResponse($response);
1072 + unset($param);
1073 + $installedPluginVersion = get_file_data(__FILE__, ['Version' => 'Version'], false);
1074 + $installedPluginVersion = $installedPluginVersion['Version'];
1075 + $response->installedPluginVersion = $installedPluginVersion;
1076 + $response->pluginUpgradeURL = admin_url() . 'plugins.php';
1077 + return ___tagembed__exitWithSuccess($response);
1078 + break;
1079 + case '__tagembed__check_user_token':
1080 + if (empty($__tagembed__user_details)) :
1081 + return ___tagembed__exitWithDanger();
1082 + endif;
1083 + /* --Start-- Manage Param Data */
1084 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
1085 + /* --End-- Manage Param Data */
1086 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/checkusertoken', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
1087 + if (!empty($response->head) && 401 == $response->head->code && empty($response->head->status)) :
1088 + tagembed_logout();
1089 + endif;
1090 + unset($param);
1091 + return ___tagembed__exitWithSuccess($response);
1092 + break;
1093 + case '__tagembed__plugin_deactivate':
1094 + /* --Start-- Manage Param Data */
1095 + $__tagembed__user_details = ___tagembed__userData();
1096 + $param = [];
1097 + $param['userId'] = !empty($__tagembed__user_details) ? sanitize_key($__tagembed__user_details->userId) : '';
1098 + $param['userName'] = !empty($__tagembed__user_details) ? sanitize_text_field($__tagembed__user_details->name) : '';
1099 + $param['userEmail'] = !empty($__tagembed__user_details) ? sanitize_email($__tagembed__user_details->email) : '';
1100 + $param['pluginDeactivateReason'] = sanitize_text_field($data->pluginDeactivateReason);
1101 + $param['otherReason'] = sanitize_text_field($data->otherReason);
1102 + $param['betterPlugin'] = sanitize_text_field($data->betterPlugin);
1103 + $param['userWebsiteUrl'] = get_site_url();
1104 + $param['platform'] = TAGEMBED_PLUGIN_PLATFORM;
1105 + /* --End-- Manage Param Data */
1106 + ___tagembed__dropDatabaseTablesForPlugin();
1107 + deactivate_plugins(plugin_basename(__FILE__), true);
1108 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/deactivateuserdata', $param, []);
1109 + $response = ___tagembed__manageApiResponse($response);
1110 + unset($param);
1111 + return ___tagembed__exitWithSuccess();
1112 + break;
1113 + case '__tagembed__get_customization_option':
1114 + if (empty($__tagembed__user_details) || empty($data->widgetId)) :
1115 + return ___tagembed__exitWithDanger();
1116 + endif;
1117 + /* --Start-- Manage Param Data */
1118 + $param['widgetId'] = sanitize_key($data->widgetId);
1119 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
1120 + /* --End-- Manage Param Data */
1121 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apicustomization/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
1122 + unset($param);
1123 + $response = ___tagembed__manageApiResponse($response);
1124 + return ___tagembed__exitWithSuccess($response);
1125 + break;
1126 + case '__tagembed__update_footer_customization_option':
1127 + /* --Start-- Manage Param Data */
1128 + $param['widgetId'] = sanitize_key($data->widgetId);
1129 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
1130 + $param['personalizationId'] = sanitize_key($data->personalizationId);
1131 + $param['themeRuleId'] = sanitize_key($data->themeRuleId);
1132 + $param['loadMoreStatus'] = sanitize_key($data->loadMoreStatus);
1133 + $param['autoScrollStatus'] = sanitize_key($data->autoScrollStatus);
1134 + /* --End-- Manage Param Data */
1135 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apicustomization/footer', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
1136 + unset($param);
1137 + $response = ___tagembed__manageApiResponse($response);
1138 + return ___tagembed__exitWithSuccess($response);
1139 + break;
1140 + case '__tagembed__update_layout_customization_option':
1141 + /* --Start-- Manage Param Data */
1142 + $param['widgetId'] = sanitize_key($data->widgetId);
1143 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
1144 + $param['personalizationId'] = sanitize_key($data->personalizationId);
1145 + $param['themeRuleId'] = sanitize_key($data->themeRuleId);
1146 + $param['numberOfPosts'] = sanitize_key($data->numberOfPosts);
1147 + $param['padding'] = sanitize_key($data->padding);
1148 + $param['minimumPostWidth'] = sanitize_key($data->minimumPostWidth);
1149 + $param['columnCount'] = sanitize_key($data->columnCount);
1150 + $param['columnCountMobile'] = sanitize_key($data->columnCountMobile);
1151 + $param['postText'] = sanitize_key($data->postText);
1152 + $param['mobilePopup'] = sanitize_key($data->mobilePopup);
1153 + $param['postFeatured'] = sanitize_key($data->postFeatured);
1154 + /* --End-- Manage Param Data */
1155 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apicustomization/layout', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
1156 + unset($param);
1157 + $response = ___tagembed__manageApiResponse($response);
1158 + return ___tagembed__exitWithSuccess($response);
1159 + break;
1160 + case '__tagembed__update_card_customization_option':
1161 + /* --Start-- Manage Param Data */
1162 + $param['widgetId'] = sanitize_key($data->widgetId);
1163 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
1164 + $param['personalizationId'] = sanitize_key($data->personalizationId);
1165 + $param['inheritStyles'] = sanitize_key($data->inheritStyles);
1166 + $param['themeRuleId'] = sanitize_key($data->themeRuleId);
1167 + $param['fontColor'] = $data->fontColor;
1168 + $param['authorColor'] = $data->authorColor;
1169 + $param['cardColor'] = $data->cardColor;
1170 + $param['fontSize'] = sanitize_key($data->fontSize);
1171 + $param['shareOption'] = sanitize_key($data->shareOption);
1172 + $param['hideContent'] = sanitize_key($data->hideContent);
1173 + $param['postAuthor'] = sanitize_key($data->postAuthor);
1174 + $param['postTime'] = sanitize_key($data->postTime);
1175 + $param['lineTrim'] = sanitize_key($data->lineTrim);
1176 + $param['aspectImageRatio'] = $data->aspectImageRatio;
1177 + $param['textAlignment'] = $data->textAlignment;
1178 + $param['roundEdge'] = $data->roundEdge;
1179 + /* --End-- Manage Param Data */
1180 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apicustomization/card', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
1181 + unset($param);
1182 + $response = ___tagembed__manageApiResponse($response);
1183 + return ___tagembed__exitWithSuccess($response);
1184 + break;
1185 + case '__tagembed__update_other_customization_option':
1186 + /* --Start-- Manage Param Data */
1187 + $param['widgetId'] = sanitize_key($data->widgetId);
1188 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
1189 + $param['personalizationId'] = sanitize_key($data->personalizationId);
1190 + $param['themeRuleId'] = sanitize_key($data->themeRuleId);
1191 + $param['css'] = $data->css;
1192 + /* --End-- Manage Param Data */
1193 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apicustomization/other', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
1194 + unset($param);
1195 + $response = ___tagembed__manageApiResponse($response);
1196 + return ___tagembed__exitWithSuccess($response);
1197 + break;
1198 + case '__tagembed__get_and_manage_intercom_chat_setting':
1199 + if (empty($__tagembed__user_details)) :
1200 + return ___tagembed__exitWithDanger();
1201 + endif;
1202 + /* --Start-- Manage Param Data */
1203 + $param['userId'] = sanitize_key($__tagembed__user_details->userId);
1204 + /* --End-- Manage Param Data */
1205 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/getIntercomSettingData', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
1206 + unset($param);
1207 + $response = ___tagembed__manageApiResponse($response);
1208 + return ___tagembed__exitWithSuccess($response);
1209 + break;
1210 + default:
1211 + return ___tagembed__exitWithDanger();
1212 + endswitch;
1213 +}
1214 +/* --End-- Manage Ajax Calls */
1215 +
1216 +add_action('admin_init', '___tagembed__googleAuthListener');
1217 +function ___tagembed__googleAuthListener()
1218 +{
1219 + if (empty($_GET['__tb_google_state'])) :
1220 + return;
1221 + endif;
1222 + if (empty($_GET['page']) || 'tagembed' !== sanitize_key(wp_unslash($_GET['page']))) :
1223 + return;
1224 + endif;
1225 + if (!current_user_can('manage_options')) :
1226 + return;
1227 + endif;
1228 + $__tagembed__google_state = isset($_GET['__tb_google_state']) ? sanitize_text_field(wp_unslash($_GET['__tb_google_state'])) : '';
1229 + if ('' === $__tagembed__google_state || !preg_match('/^[A-Za-z0-9]{16,64}$/', $__tagembed__google_state)) :
1230 + return;
1231 + endif;
1232 + $__tagembed__google_session = get_transient('__tagembed__google_' . $__tagembed__google_state);
1233 + delete_transient('__tagembed__google_' . $__tagembed__google_state);
1234 + if (empty($__tagembed__google_session['verifier']) || (int) $__tagembed__google_session['userId'] !== get_current_user_id()) :
1235 + return ___tagembed__googleAuthFailed('expired');
1236 + endif;
1237 + if (empty($_GET['__tb_google_code'])) :
1238 + $__tagembed__google_error_code = isset($_GET['__tb_google_error']) ? sanitize_text_field(wp_unslash($_GET['__tb_google_error'])) : 'failed';
1239 + return ___tagembed__googleAuthFailed($__tagembed__google_error_code);
1240 + endif;
1241 + $param = [
1242 + 'token' => sanitize_text_field(wp_unslash($_GET['__tb_google_code'])),
1243 + 'verifier' => $__tagembed__google_session['verifier'],
1244 + 'platform' => TAGEMBED_PLUGIN_PLATFORM,
1245 + ];
1246 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/googleexchange', $param, []);
1247 + unset($param);
1248 + if (empty($response->head) || empty($response->head->status) || empty($response->body->userId) || empty($response->body->emailId) || empty($response->body->access_token)) :
1249 + return ___tagembed__googleAuthFailed('failed');
1250 + endif;
1251 + $__tagembed__google_user = $response->body;
1252 + if (!empty($__tagembed__google_user->createFirstWidget)) :
1253 + ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/create', ['userId' => sanitize_key($__tagembed__google_user->userId), 'inheritStyles' => 1], ['Authorization:' . $__tagembed__google_user->access_token]);
1254 + endif;
1255 + if (___tagembed__login($__tagembed__google_user) !== true) :
1256 + return ___tagembed__googleAuthFailed('failed');
1257 + endif;
1258 + wp_safe_redirect(TAGEMBED_PLUGIN_CALL_BACK_URL);
1259 + exit;
1260 +}
1261 +function ___tagembed__googleAuthFailed($errorCode)
1262 +{
1263 + $__tagembed__google_errors = [
1264 + 'cancelled' => 'Google sign in was cancelled. Please try again.',
1265 + 'expired' => 'Google sign in session has expired. Please try again.',
1266 + 'email' => 'Your Google account email could not be verified. Please use another account.',
1267 + 'account' => 'Your account is not active. Please contact support.',
1268 + 'register' => 'We could not create an account with this Google email. Please sign up with your email instead.',
1269 + 'process' => 'Your registration is already in progress. Please wait a moment and try again.',
1270 + 'failed' => 'Google sign in failed. Please try again.',
1271 + ];
1272 + $__tagembed__google_message = isset($__tagembed__google_errors[$errorCode]) ? $__tagembed__google_errors[$errorCode] : $__tagembed__google_errors['failed'];
1273 + set_transient('__tagembed__google_error_' . get_current_user_id(), $__tagembed__google_message, MINUTE_IN_SECONDS);
1274 + wp_safe_redirect(TAGEMBED_PLUGIN_CALL_BACK_URL);
1275 + exit;
1276 +}
1277 +/* --Start-- Login */
1278 +function ___tagembed__login($response)
1279 +{
1280 + global $wpdb;
1281 + $return = false;
1282 + $user = ___tagembed__user($response->emailId);
1283 + if (empty($user->email)) :
1284 + if ($wpdb->query($wpdb->prepare('INSERT INTO wp_tagembed_user (userId, name, email, accessToken, isLogin) VALUES (%d, %s, %s, %s, %s)', $response->userId, $response->name, $response->emailId, $response->access_token, 'yes'))) :
1285 + $return = true;
1286 + endif;
1287 + else :
1288 + if ($wpdb->query($wpdb->prepare('UPDATE wp_tagembed_user SET userId = %d, name = %s, email = %s, accessToken = %s, isLogin = %s WHERE email = %s', $response->userId, $response->name, $response->emailId, $response->access_token, 'yes', $response->emailId))) :
1289 + $return = true;
1290 + endif;
1291 + endif;
1292 + ___tagembed__manageActiveOptions($response->emailId, 'yes'); /* Manage Active Options */
1293 + if ($return) :
1294 + ___tagembed__manageActiveWidgetsUser($response->userId);
1295 + endif;
1296 + return $return;
1297 +}
1298 +/* --End-- Login */
1299 +
1300 +/* --Start-- Manage Active Options */
1301 +function ___tagembed__manageActiveOptions($email = null, $other = null)
1302 +{
1303 + global $wpdb;
1304 + if (null == $email && null != $other) :
1305 + $wpdb->query($wpdb->prepare('UPDATE wp_tagembed_active_options SET isLogin = %s WHERE id = %d', $other, 1));
1306 + else :
1307 + $__tagembed__activeOptions = $wpdb->get_results($wpdb->prepare('SELECT email FROM wp_tagembed_active_options WHERE id = %d', 1));
1308 + if (empty($__tagembed__activeOptions[0]->email)) :
1309 + $wpdb->query($wpdb->prepare('INSERT INTO wp_tagembed_active_options (email, isLogin) VALUES (%s, %s)', $email, $other));
1310 + else :
1311 + $wpdb->query($wpdb->prepare('UPDATE wp_tagembed_active_options SET email = %s, isLogin = %s WHERE id = %d', $email, $other, 1));
1312 + endif;
1313 + endif;
1314 +}
1315 +/* --End-- Manage Active Options */
1316 +
1317 +/* --Start-- Logout */
1318 +function tagembed_logout()
1319 +{
1320 + global $wpdb;
1321 + if ($wpdb->query($wpdb->prepare('UPDATE wp_tagembed_user SET isLogin = %s WHERE isLogin = %s', 'no', 'yes'))) :
1322 + ___tagembed__manageActiveOptions(null, 'no'); /* Manage Active Options */
1323 + return true;
1324 + endif;
1325 + return false;
1326 +}
1327 +/* --End-- Logout */
1328 +
1329 +/* --Start--Manage Menues */
1330 +function ___tagembed__menus($__tagembed__menu_condatation = [])
1331 +{
1332 + global $wpdb;
1333 + if (empty($__tagembed__menu_condatation)) :
1334 + return $wpdb->get_results('SELECT * FROM wp_tagembed_menus');
1335 + endif;
1336 + if (array_key_exists('__tagembed__menu_condation', $__tagembed__menu_condatation)) :
1337 + return $wpdb->get_results($wpdb->prepare('SELECT * FROM wp_tagembed_menus WHERE status = %s', $__tagembed__menu_condatation['__tagembed__menu_condation']));
1338 + endif;
1339 + if (array_key_exists('__tagembed__menu_id', $__tagembed__menu_condatation)) :
1340 + if ($wpdb->query($wpdb->prepare('UPDATE wp_tagembed_menus SET status = %d WHERE status = %d', 0, 1)) && $wpdb->query($wpdb->prepare('UPDATE wp_tagembed_menus SET status = %d WHERE id = %d', 1, $__tagembed__menu_condatation['__tagembed__menu_id']))) :
1341 + return true;
1342 + else :
1343 + return false;
1344 + endif;
1345 + endif;
1346 +}
1347 +/* --End--Manage Menues */
1348 +
1349 +/* --Start-- Get User Details */
1350 +function ___tagembed__user($email = null)
1351 +{
1352 + global $wpdb;
1353 + $__tagembed__userResponse = '';
1354 + if (empty($email)) :
1355 + $__tagembed__userResponse = $wpdb->get_results($wpdb->prepare('SELECT * FROM wp_tagembed_user WHERE isLogin = %s', 'yes'));
1356 + else :
1357 + $__tagembed__userResponse = $wpdb->get_results($wpdb->prepare('SELECT * FROM wp_tagembed_user WHERE email = %s', $email));
1358 + endif;
1359 + if (!empty($__tagembed__userResponse)) :
1360 + return $__tagembed__userResponse[0];
1361 + else :
1362 + return;
1363 + endif;
1364 +}
1365 +function ___tagembed__userData()
1366 +{
1367 + global $wpdb;
1368 + $__tagembed__user_dataResponse = '';
1369 + $__tagembed__user_dataResponse = $wpdb->get_results('SELECT * FROM wp_tagembed_user');
1370 + if (!empty($__tagembed__user_dataResponse)) :
1371 + return $__tagembed__user_dataResponse[0];
1372 + else :
1373 + return;
1374 + endif;
1375 +}
1376 +/* --End-- Get User Details */
1377 +
1378 +/* --Start-- Get Widget */
1379 +function ___tagembed__widgets()
1380 +{
1381 + $returnWidgetData = [];
1382 + $__tagembed__user_details = ___tagembed__user();
1383 + if (!empty($__tagembed__user_details)) :
1384 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/get', ['userId' => sanitize_key($__tagembed__user_details->userId)], ['Authorization:' . $__tagembed__user_details->accessToken]);
1385 + if (!isset($response->head->status)) :
1386 + return $returnWidgetData;
1387 + endif;
1388 + if (false == $response->head->status || 200 != $response->head->code || false == $response->body || empty($response->body)) :
1389 + return $returnWidgetData;
1390 + endif;
1391 + $returnWidgetData = $response->body;
1392 + endif;
1393 + return $returnWidgetData;
1394 +}
1395 +/* --End-- Get Widget */
1396 +
1397 +/* --Start-- Get Active Widget */
1398 +function ___tagembed__activeWidget()
1399 +{
1400 + global $wpdb;
1401 + $__tagembed__activeWidgetResponse = '';
1402 + $__tagembed__activeWidgetResponse = $wpdb->get_results('SELECT * FROM wp_tagembed_active_widget');
1403 + if (!empty($__tagembed__activeWidgetResponse)) :
1404 + return $__tagembed__activeWidgetResponse[0]->widgetId;
1405 + else :
1406 + return;
1407 + endif;
1408 +}
1409 +/* --End-- Get Active Widget */
1410 +
1411 +/* --Start-- Manage Active Widget User */
1412 +function ___tagembed__manageActiveWidget($widgetId)
1413 +{
1414 + global $wpdb;
1415 + $activeWidgetUserId = ___tagembed__activeWidget();
1416 + if ($activeWidgetUserId == $widgetId) :
1417 + return true;
1418 + endif;
1419 + if (empty($activeWidgetUserId)) :
1420 + $wpdb->query($wpdb->prepare('INSERT INTO wp_tagembed_active_widget (widgetId) VALUES (%s)', $widgetId));
1421 + return true;
1422 + else :
1423 + $wpdb->query($wpdb->prepare('UPDATE wp_tagembed_active_widget SET widgetId = %s WHERE id = %d', $widgetId, 1));
1424 + return true;
1425 + endif;
1426 + return false;
1427 +}
1428 +/* --End-- Manage Active Widget User */
1429 +
1430 +/* --Start-- Get Active Widget User */
1431 +function ___tagembed__activeWidgetUser()
1432 +{
1433 + global $wpdb;
1434 + $__tagembed__activeWidgetUserResponse = '';
1435 + $__tagembed__activeWidgetUserResponse = $wpdb->get_results('SELECT * FROM wp_tagembed_active_widget_user');
1436 + if (!empty($__tagembed__activeWidgetUserResponse)) :
1437 + return $__tagembed__activeWidgetUserResponse[0]->userId;
1438 + endif;
1439 + return;
1440 +}
1441 +/* --End-- Get Active Widget User */
1442 +
1443 +/* --Start-- Manage Active Widget User */
1444 +function ___tagembed__manageActiveWidgetsUser($userId)
1445 +{
1446 + global $wpdb;
1447 + $activeWidgetUserId = ___tagembed__activeWidgetUser();
1448 + if ($activeWidgetUserId == $userId) :
1449 + return true;
1450 + endif;
1451 + if (empty($activeWidgetUserId)) :
1452 + $wpdb->query($wpdb->prepare('INSERT INTO wp_tagembed_active_widget_user (userId) VALUES (%d)', $userId));
1453 + return true;
1454 + else :
1455 + $wpdb->query($wpdb->prepare('UPDATE wp_tagembed_active_widget_user SET userId = %d WHERE id = %d', $userId, 1));
1456 + return true;
1457 + endif;
1458 + return false;
1459 +}
1460 +/* --End-- Manage Active Widget User */
1461 +
1462 +/* * ** DATABASE *** */
1463 +/* --Start-- Manage Database */
1464 +function ___tagembed__createDatabaseTableForPlugin()
1465 +{
1466 + global $wpdb;
1467 + include_once ABSPATH . 'wp-admin/includes/upgrade.php';
1468 + $wpdb->query('CREATE TABLE IF NOT EXISTS `wp_tagembed_user` (`id` int(11) NOT NULL AUTO_INCREMENT,`userId` varchar(100) NOT NULL,`name` varchar(100) NOT NULL,`email` varchar(100) NOT NULL,`accessToken` varchar(255) NOT NULL,`isLogin` enum(\'no\', \'yes\') NOT NULL,PRIMARY KEY(`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci');
1469 + $wpdb->query('CREATE TABLE IF NOT EXISTS `wp_tagembed_active_widget_user` (`id` int(11) NOT NULL AUTO_INCREMENT,`userId` varchar(100) NOT NULL,PRIMARY KEY(`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci');
1470 + $wpdb->query('CREATE TABLE IF NOT EXISTS `wp_tagembed_menus` (`id` int(11) NOT NULL AUTO_INCREMENT,`name` varchar(100) NOT NULL,`status` tinyint(2) NOT NULL,`path` varchar(255) NOT NULL,PRIMARY KEY(`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci');
1471 + $wpdb->query('CREATE TABLE IF NOT EXISTS `wp_tagembed_active_widget` (`id` int(11) NOT NULL AUTO_INCREMENT,`widgetId` varchar(100) NOT NULL,PRIMARY KEY(`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci');
1472 + $wpdb->query('CREATE TABLE IF NOT EXISTS `wp_tagembed_active_options` (`id` int(11) NOT NULL AUTO_INCREMENT,`email` varchar(500) NOT NULL,`isLogin` enum(\'no\', \'yes\'),PRIMARY KEY(`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci');
1473 + /* --Start-- Manage Tagembed Plugin Menus */
1474 + $__tagembed__checkAlreadyExistMenusDataExistOrNot = $wpdb->get_results('SELECT id FROM wp_tagembed_menus');
1475 + if (empty($__tagembed__checkAlreadyExistMenusDataExistOrNot)) :
1476 + $__tagembed__menus = [['name' => 'Widget', 'status' => 0, 'path' => 'widget/widgetView'], ['name' => 'Feed', 'status' => 1, 'path' => 'feed/addView'], ['name' => 'Choose Theme', 'status' => 0, 'path' => 'theme/themeView'], ['name' => 'Filter', 'status' => 0, 'path' => 'filter/filterView'], ['name' => 'Customize', 'status' => 0, 'path' => 'customize/customizeView'], ['name' => 'Display', 'status' => 0, 'path' => 'display/displayView'], ['name' => 'Social Accounts', 'status' => 0, 'path' => 'socialAccount/socialAccountView'], ['name' => 'Support', 'status' => 0, 'path' => 'support/supportView'], ['name' => 'Upgrade', 'status' => 0, 'path' => 'upgrade/upgradeView'], ['name' => 'Analytics', 'status' => 0, 'path' => 'analytics/analyticsView']];
1477 + foreach ($__tagembed__menus as $__tagembed__menu) :
1478 + $wpdb->query($wpdb->prepare('INSERT INTO wp_tagembed_menus (name, status, path) VALUES (%s, %s, %s)', $__tagembed__menu['name'], $__tagembed__menu['status'], $__tagembed__menu['path']));
1479 + endforeach;
1480 + endif;
1481 + /* --End-- Manage Tagembed Plugin Menus */
1482 +}
1483 +function ___tagembed__dropDatabaseTablesForPlugin()
1484 +{
1485 + global $wpdb;
1486 + $wpdb->query('DROP table IF EXISTS wp_tagembed_active_widget_user');
1487 + $wpdb->query('DROP table IF EXISTS wp_tagembed_active_widget');
1488 + $wpdb->query('DROP table IF EXISTS wp_tagembed_menus');
1489 +}
1490 +/* --End-- Manage Database */
1491 +
1492 +/* --Start-- Manage Active Deactive And Uninstall Webhook */
1493 +register_activation_hook(__FILE__, '___tagembed__pluginActivate');
1494 +function ___tagembed__pluginActivate()
1495 +{
1496 + ___tagembed__createDatabaseTableForPlugin();
1497 + add_action('activated_plugin', '___tagembed__plginActivationRedirect');
1498 +}
1499 +register_uninstall_hook(__FILE__, '___tagembed__pluginUnistall');
1500 +function ___tagembed__pluginUnistall()
1501 +{
1502 + ___tagembed__dropDatabaseTablesForPlugin();
1503 + global $wpdb;
1504 + $wpdb->query('DROP table IF EXISTS wp_tagembed_active_options');
1505 + $wpdb->query('DROP table IF EXISTS wp_tagembed_user');
1506 +}
1507 +/* --End-- Manage Active Deactive And Uninstall Webhook */
1508 +
1509 +/* --Start--Manage Redirect After Plugin Activate */
1510 +function ___tagembed__plginActivationRedirect()
1511 +{
1512 + $__tagembed__activeUserData = wp_get_current_user();
1513 + if (empty($__tagembed__activeUserData->roles)) :
1514 + return false;
1515 + endif;
1516 + $__tagembed__pluginCallbackUrl = esc_url(TAGEMBED_PLUGIN_CALL_BACK_URL);
1517 + wp_safe_redirect($__tagembed__pluginCallbackUrl);
1518 + exit;
1519 +}
1520 +/* --End--Manage Redirect After Plugin Activate */
1521 +
1522 +/* --Start--Manage Setting Link */
1523 +function ___tagembed__settingsLink($links)
1524 +{
1525 + array_unshift($links, '<a href=' . TAGEMBED_PLUGIN_CALL_BACK_URL . '>Settings</a>');
1526 + return $links;
1527 +}
1528 +add_filter('plugin_action_links_' . plugin_basename(__FILE__), '___tagembed__settingsLink');
1529 +/* --End--Manage Setting Link */
1530 +
1531 +/* --Start--Manage Database On Plugin Update Time */
1532 +function ___tagembed__manageDatabaseOnPluginUpdateTime()
1533 +{
1534 + ___tagembed__dropDatabaseTablesForPlugin();
1535 + ___tagembed__createDatabaseTableForPlugin();
1536 +}
1537 +add_action('upgrader_process_complete', '___tagembed__manageDatabaseOnPluginUpdateTime', 10, 2);
1538 +/* --End--Manage Database On Plugin Update Time */
1539 +
1540 +/* --Sart--Get And Manage Social Accout Id */
1541 +function ___tagembed__get_user_social_account_id()
1542 +{
1543 + $__tagembed__user_details = ___tagembed__user();
1544 + $param['userId'] = $__tagembed__user_details->userId;
1545 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/getsocialaccountid', $param, ['Authorization:' . $__tagembed__user_details->accessToken]);
1546 + if (!empty($response->head->status)) :
1547 + if (!empty($response->body->userId)) :
1548 + return $response->body->userId;
1549 + endif;
1550 + endif;
1551 + return false;
1552 +}
1553 +/* --End--Get And Manage Social Accout Id */
1554 +
1555 +/* --Start-- Show Admin General Notification After Login And Register */
1556 +function ___tagembed__generalAdminNotice()
1557 +{
1558 + $__tagmebed__page_name = '';
1559 + if (!empty($_GET['page'])) :
1560 + $__tagmebed__page_name = ___tagembed__sanitizeRequestData($_GET);
1561 + $__tagmebed__page_name = $__tagmebed__page_name['page'];
1562 + endif;
1563 + $response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/notification', ['callBy' => 'wordpress'], []);
1564 + if (!is_wp_error($response)) :
1565 + if (!empty($response->head->status) && !empty($response->body)) :
1566 + $response = $response->body;
1567 + if (!empty($response->notifications) && is_array($response->notifications)) :
1568 + $htmlData = '';
1569 + foreach ($response->notifications as $notifications) :
1570 + if ('tagembed' == $notifications->location || 'inner' == $notifications->location) :
1571 + if ('tagembed' != $__tagmebed__page_name) :
1572 + continue;
1573 + endif;
1574 + $htmlData .= '<div class=\'notice notice-' . esc_attr($notifications->type) . ' is-dismissible\'>';
1575 + $htmlData .= '<p>' . $notifications->message . '</p>';
1576 + $htmlData .= '</div>';
1577 + elseif ('all' == $notifications->location) :
1578 + $htmlData .= '<div class=\'notice notice-' . esc_attr($notifications->type) . ' is-dismissible\'>';
1579 + $htmlData .= '<p>' . $notifications->message . '</p>';
1580 + $htmlData .= '</div>';
1581 + endif;
1582 + endforeach;
1583 + echo wp_kses_post($htmlData);
1584 + endif;
1585 + endif;
1586 + endif;
1587 +}
1588 +add_action('in_admin_header', '___tagembed__hideGeneralAdminNotice');
1589 +function ___tagembed__hideGeneralAdminNotice()
1590 +{
1591 + $__tagmebed__page_name = '';
1592 + if (!empty($_GET['page'])) :
1593 + $__tagmebed__page_name = ___tagembed__sanitizeRequestData($_GET);
1594 + $__tagmebed__page_name = $__tagmebed__page_name['page'];
1595 + endif;
1596 + if ('tagembed' == $__tagmebed__page_name) :
1597 + remove_all_actions('admin_notices');
1598 + remove_all_actions('all_admin_notices');
1599 + endif;
1600 + if (!empty(___tagembed__user())) :
1601 + add_action('admin_notices', '___tagembed__generalAdminNotice');
1602 + endif;
1603 +}
1604 +/* --End-- Show Admin General Notification After Login And Register */
1605 +/* --End-- Drop Database Table */
1606 +
1607 +/* --Start-- Create Short Code */
1608 +function ___tagembed__PluginShortCode($__tagembed__shortCodeAttr)
1609 +{
1610 + $__tagembed__shortCodeDefaultAttr = ['width' => '', 'height' => '', 1 => ''];
1611 + $__tagembed__shortCodeAttr = shortcode_atts($__tagembed__shortCodeDefaultAttr, $__tagembed__shortCodeAttr, 'tagembed');
1612 + $width = isset($__tagembed__shortCodeAttr['width']) ? sanitize_text_field($__tagembed__shortCodeAttr['width']) : '';
1613 + $height = isset($__tagembed__shortCodeAttr['height']) ? sanitize_text_field($__tagembed__shortCodeAttr['height']) : '';
1614 + $widgetId = isset($__tagembed__shortCodeAttr[1]) ? sanitize_text_field($__tagembed__shortCodeAttr[1]) : '';
1615 + if (!empty($widgetId) && is_numeric($widgetId) && (('' === $width || preg_match('/^\d+(px|%|)$/', $width)) && ('' === $height || preg_match('/^\d+(px|%|)$/', $height)))) :
1616 + $output = '<div class=\'tagembed-widget\' style=\'width:' . esc_attr($width) . '; height:' . esc_attr($height) . ';\' data-widget-id=\'' . esc_attr($widgetId) . '\' view-url=\'https://widget.tagembed.com/' . esc_attr($widgetId) . '\'></div>';
1617 + else :
1618 + $output = '<span style=\'display: block; text-align: center; border: 1px solid #eee; padding: 5px 15px; background-color: #fafafa;\'>Invalid Parameters Provided In The Tagembed Shortcode.</span>';
1619 + endif;
1620 + return $output;
1621 +}
1622 +add_shortcode('tagembed', '___tagembed__PluginShortCode');
1623 +/* --End-- Create Short Code */