| 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.6 |
| 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.6'); |
| 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__logout': |
| 216 |
if (tagembed_logout()) : |
| 217 |
return ___tagembed__exitWithSuccess(['redirectUrl' => TAGEMBED_PLUGIN_REDIRECT_URL . 'tagembed']); |
| 218 |
else : |
| 219 |
return ___tagembed__exitWithDanger(); |
| 220 |
endif; |
| 221 |
break; |
| 222 |
case '__tagembed__check_plan_premium_feature': |
| 223 |
if (empty($__tagembed__user_details)) : |
| 224 |
return ___tagembed__exitWithDanger(); |
| 225 |
endif; |
| 226 |
/* --Start-- Manage Param Data */ |
| 227 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 228 |
/* --End-- Manage Param Data */ |
| 229 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/checkPlanPremiumFeature', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 230 |
unset($param); |
| 231 |
$response = ___tagembed__manageApiResponse($response); |
| 232 |
return ___tagembed__exitWithSuccess($response); |
| 233 |
break; |
| 234 |
case '__tagembed__check_user_accout_status': |
| 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/checkUserAccountStatus', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 242 |
unset($param); |
| 243 |
$response = ___tagembed__manageApiResponse($response); |
| 244 |
return ___tagembed__exitWithSuccess($response); |
| 245 |
break; |
| 246 |
case '__tagembed__get_account_details': |
| 247 |
$data->auth = !empty($data->auth) ? 1 : 0; |
| 248 |
if (empty($__tagembed__user_details)) : |
| 249 |
return ___tagembed__exitWithDanger(); |
| 250 |
endif; |
| 251 |
/* --Start-- Manage Param Data */ |
| 252 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 253 |
$param['platform'] = TAGEMBED_PLUGIN_PLATFORM; |
| 254 |
/* --End-- Manage Param Data */ |
| 255 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/getdetails', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 256 |
unset($param); |
| 257 |
$response = ___tagembed__manageApiResponse($response); |
| 258 |
return ___tagembed__exitWithSuccess($response); |
| 259 |
break; |
| 260 |
|
| 261 |
case '__tagembed__manage_active_widget': |
| 262 |
if (empty($data->widgetId)) : |
| 263 |
return ___tagembed__exitWithDanger(); |
| 264 |
endif; |
| 265 |
if (___tagembed__manageActiveWidget($data->widgetId)) : |
| 266 |
return ___tagembed__exitWithSuccess(); |
| 267 |
else : |
| 268 |
return ___tagembed__exitWithDanger(); |
| 269 |
endif; |
| 270 |
break; |
| 271 |
case '__tagembed__menue': |
| 272 |
if (empty($data->menueId)) : |
| 273 |
return ___tagembed__exitWithDanger(); |
| 274 |
endif; |
| 275 |
if (___tagembed__menus(['__tagembed__menu_id' => $data->menueId])) : |
| 276 |
return ___tagembed__exitWithSuccess(['redirectUrl' => TAGEMBED_PLUGIN_REDIRECT_URL . 'tagembed']); |
| 277 |
else : |
| 278 |
return ___tagembed__exitWithDanger(); |
| 279 |
endif; |
| 280 |
break; |
| 281 |
case '__tagembed__create_widget': |
| 282 |
if (empty($__tagembed__user_details) || empty($data->name)) : |
| 283 |
return ___tagembed__exitWithDanger('Validation Error', ['name' => 'Widget name is required']); |
| 284 |
endif; |
| 285 |
$data->profanity = (isset($data->profanity)) ? 0 : 1; |
| 286 |
/* --Start-- Manage Param Data */ |
| 287 |
$param['name'] = sanitize_text_field($data->name); |
| 288 |
$param['profanity'] = sanitize_key($data->profanity); |
| 289 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 290 |
$param['inheritStyles'] = 1; |
| 291 |
/* --End-- Manage Param Data */ |
| 292 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/create', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 293 |
unset($param); |
| 294 |
$response = ___tagembed__manageApiResponse($response); |
| 295 |
$response = !empty($response->message) ? $response->message : 'Done'; |
| 296 |
return ___tagembed__exitWithSuccess(['message' => $response, 'redirectUrl' => TAGEMBED_PLUGIN_CALL_BACK_URL]); |
| 297 |
break; |
| 298 |
case '__tagembed__edit_widget': |
| 299 |
if (empty($__tagembed__user_details) || empty($data->name) || empty($data->widgetId)) : |
| 300 |
return ___tagembed__exitWithDanger('Validation Error', ['name' => 'Widget name is required']); |
| 301 |
endif; |
| 302 |
/* --Start-- Manage Param Data */ |
| 303 |
$param['name'] = sanitize_text_field($data->name); |
| 304 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 305 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 306 |
/* --End-- Manage Param Data */ |
| 307 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/edit', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 308 |
unset($param); |
| 309 |
$response = ___tagembed__manageApiResponse($response); |
| 310 |
$response = !empty($response->message) ? $response->message : 'Done'; |
| 311 |
return ___tagembed__exitWithSuccess(['message' => $response, 'redirectUrl' => TAGEMBED_PLUGIN_CALL_BACK_URL]); |
| 312 |
break; |
| 313 |
case '__tagembed__update_widget_status': |
| 314 |
if (empty($__tagembed__user_details) || empty($data->widgetId)) : |
| 315 |
return ___tagembed__exitWithDanger(); |
| 316 |
endif; |
| 317 |
/* --Start-- Manage Param Data */ |
| 318 |
$param['status'] = sanitize_key($data->status); |
| 319 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 320 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 321 |
/* --End-- Manage Param Data */ |
| 322 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/status', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 323 |
unset($param); |
| 324 |
$response = ___tagembed__manageApiResponse($response); |
| 325 |
$response = !empty($response->message) ? $response->message : 'Done'; |
| 326 |
return ___tagembed__exitWithSuccess(['message' => $response]); |
| 327 |
break; |
| 328 |
case '__tagembed__delete_widget': |
| 329 |
if (empty($__tagembed__user_details) || empty($data->widgetId)) : |
| 330 |
return ___tagembed__exitWithDanger(); |
| 331 |
endif; |
| 332 |
/* --Start-- Manage Param Data */ |
| 333 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 334 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 335 |
/* --End-- Manage Param Data */ |
| 336 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/delete', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 337 |
unset($param); |
| 338 |
$response = ___tagembed__manageApiResponse($response); |
| 339 |
$response = !empty($response->message) ? $response->message : 'Done'; |
| 340 |
return ___tagembed__exitWithSuccess(['message' => $response]); |
| 341 |
break; |
| 342 |
case '__tagembed__source_networks': |
| 343 |
$data->auth = !empty($data->auth) ? 1 : 0; |
| 344 |
if (empty($__tagembed__user_details)) : |
| 345 |
return ___tagembed__exitWithDanger(); |
| 346 |
endif; |
| 347 |
/* --Start-- Manage Param Data */ |
| 348 |
$param['auth'] = sanitize_key($data->auth); |
| 349 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 350 |
/* --End-- Manage Param Data */ |
| 351 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apinetwork/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 352 |
unset($param); |
| 353 |
$response = ___tagembed__manageApiResponse($response); |
| 354 |
return ___tagembed__exitWithSuccess($response); |
| 355 |
break; |
| 356 |
case '__tagembed__get_themes': |
| 357 |
if (empty($__tagembed__user_details) || empty($data->widgetId)) : |
| 358 |
return ___tagembed__exitWithDanger(); |
| 359 |
endif; |
| 360 |
/* --Start-- Manage Param Data */ |
| 361 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 362 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 363 |
/* --End-- Manage Param Data */ |
| 364 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'Apitheme/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 365 |
unset($param); |
| 366 |
$response = ___tagembed__manageApiResponse($response); |
| 367 |
return ___tagembed__exitWithSuccess($response); |
| 368 |
break; |
| 369 |
case '__tagembed__edit_themes': |
| 370 |
if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->themeId)) : |
| 371 |
return ___tagembed__exitWithDanger(); |
| 372 |
endif; |
| 373 |
/* --Start-- Manage Param Data */ |
| 374 |
$param['themeId'] = sanitize_key($data->themeId); |
| 375 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 376 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 377 |
/* --End-- Manage Param Data */ |
| 378 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'Apitheme/edit', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 379 |
unset($param); |
| 380 |
$response = ___tagembed__manageApiResponse($response); |
| 381 |
return ___tagembed__exitWithSuccess($response); |
| 382 |
break; |
| 383 |
case '__tagembed__get_network_filter': |
| 384 |
if (empty($__tagembed__user_details) || empty($data->networkId)) : |
| 385 |
return ___tagembed__exitWithDanger(); |
| 386 |
endif; |
| 387 |
/* --Start-- Manage Param Data */ |
| 388 |
$param['networkId'] = sanitize_key($data->networkId); |
| 389 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 390 |
/* --End-- Manage Param Data */ |
| 391 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apinetwork/filter', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 392 |
unset($param); |
| 393 |
$response = ___tagembed__manageApiResponse($response); |
| 394 |
return ___tagembed__exitWithSuccess($response); |
| 395 |
break; |
| 396 |
case '__tagembed__get_already_exist_accounts': |
| 397 |
if (empty($__tagembed__user_details)) : |
| 398 |
return ___tagembed__exitWithDanger(); |
| 399 |
endif; |
| 400 |
/* --Start-- Manage Param Data */ |
| 401 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 402 |
/* --End-- Manage Param Data */ |
| 403 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/getalreadyexistaccounts', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 404 |
unset($param); |
| 405 |
$response = ___tagembed__manageApiResponse($response); |
| 406 |
return ___tagembed__exitWithSuccess($response); |
| 407 |
break; |
| 408 |
case '__tagembed__add_or_update_account': |
| 409 |
if (empty($__tagembed__user_details) || empty($data->networkId) || empty($data->type)) : |
| 410 |
return ___tagembed__exitWithDanger(); |
| 411 |
endif; |
| 412 |
/* --Start-- Manage Param Data */ |
| 413 |
$param['connectedAccountId'] = $data->connectedAccountId; |
| 414 |
$param['feedId'] = sanitize_key($data->feedId); |
| 415 |
$param['type'] = sanitize_text_field($data->type); |
| 416 |
$param['networkId'] = sanitize_key($data->networkId); |
| 417 |
$param['filterId'] = sanitize_key($data->filterId); |
| 418 |
$param['otherData'] = $data->otherData; |
| 419 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 420 |
/* --End-- Manage Param Data */ |
| 421 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/addorupdate', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 422 |
unset($param); |
| 423 |
$response = ___tagembed__manageApiResponse($response); |
| 424 |
return ___tagembed__exitWithSuccess(['__tagembed__requestCallBackUrl' => TAGEMBED_PLUGIN_CALL_BACK_URL, 'redirectUrl' => TAGEMBED_PLUGIN_API_URL . 'apiauth/getauth', '__tagembed__feedData' => $response->__tagembed__feedData]); |
| 425 |
break; |
| 426 |
case '__tagembed__delete_account': |
| 427 |
if (empty($__tagembed__user_details) || empty($data->networkId) || empty($data->parentId)) : |
| 428 |
return ___tagembed__exitWithDanger(); |
| 429 |
endif; |
| 430 |
/* --Start-- Manage Param Data */ |
| 431 |
$param['parentId'] = sanitize_key($data->parentId); |
| 432 |
$param['networkId'] = sanitize_key($data->networkId); |
| 433 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 434 |
/* --End-- Manage Param Data */ |
| 435 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/delete', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 436 |
unset($param); |
| 437 |
$response = ___tagembed__manageApiResponse($response); |
| 438 |
$response = !empty($response->message) ? $response->message : 'Done'; |
| 439 |
return ___tagembed__exitWithSuccess(['message' => $response]); |
| 440 |
break; |
| 441 |
case '__tagembed__get_already_exist_auth': |
| 442 |
if (empty($__tagembed__user_details) || empty($data->networkId)) : |
| 443 |
return ___tagembed__exitWithDanger(); |
| 444 |
endif; |
| 445 |
/* --Start-- Manage Param Data */ |
| 446 |
$param['networkId'] = sanitize_key($data->networkId); |
| 447 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 448 |
/* --End-- Manage Param Data */ |
| 449 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 450 |
unset($param); |
| 451 |
$response = ___tagembed__manageApiResponse($response); |
| 452 |
return ___tagembed__exitWithSuccess($response); |
| 453 |
break; |
| 454 |
case '__tagembed__search_google_location': |
| 455 |
if (empty($__tagembed__user_details) || empty($data->googleLocationName)) : |
| 456 |
return ___tagembed__exitWithDanger(); |
| 457 |
endif; |
| 458 |
/* --Start-- Manage Param Data */ |
| 459 |
$param['googleLocationName'] = $data->googleLocationName; |
| 460 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 461 |
/* --End-- Manage Param Data */ |
| 462 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/searchgooglelocation', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 463 |
unset($param); |
| 464 |
$response = ___tagembed__manageApiResponse($response); |
| 465 |
return ___tagembed__exitWithSuccess($response); |
| 466 |
break; |
| 467 |
case '__tagembed__search_vk_communities': |
| 468 |
if (empty($__tagembed__user_details) || empty($data->vkCommunitiesName)) : |
| 469 |
return ___tagembed__exitWithDanger(); |
| 470 |
endif; |
| 471 |
/* --Start-- Manage Param Data */ |
| 472 |
$param['vkCommunitiesName'] = $data->vkCommunitiesName; |
| 473 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 474 |
/* --End-- Manage Param Data */ |
| 475 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/searchVkCommunities', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 476 |
unset($param); |
| 477 |
$response = ___tagembed__manageApiResponse($response); |
| 478 |
return ___tagembed__exitWithSuccess($response); |
| 479 |
break; |
| 480 |
case '__tagembed__search_facebook_page': |
| 481 |
if (empty($data->facebookPageData)) : |
| 482 |
return ___tagembed__exitWithDanger(); |
| 483 |
endif; |
| 484 |
/* --Start-- Manage Param Data */ |
| 485 |
$param['facebookPageData'] = $data->facebookPageData; |
| 486 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 487 |
/* --End-- Manage Param Data */ |
| 488 |
/* --Start-- Call And Manage Api Call */ |
| 489 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/searchfacebookpage', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 490 |
unset($param); |
| 491 |
$response = ___tagembed__manageApiResponse($response); |
| 492 |
return ___tagembed__exitWithSuccess($response); |
| 493 |
break; |
| 494 |
case '__tagembed__get_facebook_page_albums': |
| 495 |
if (empty($__tagembed__user_details) || empty($data->connectedAccountsId)) : |
| 496 |
return ___tagembed__exitWithDanger(); |
| 497 |
endif; |
| 498 |
/* --Start-- Manage Param Data */ |
| 499 |
$param['connectedAccountsId'] = sanitize_key($data->connectedAccountsId); |
| 500 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 501 |
/* --End-- Manage Param Data */ |
| 502 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiauth/apiauthfacebookpagealbums', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 503 |
unset($param); |
| 504 |
$response = ___tagembed__manageApiResponse($response); |
| 505 |
return ___tagembed__exitWithSuccess($response); |
| 506 |
break; |
| 507 |
case '__tagembed__search_youtube_channel': |
| 508 |
if (empty($__tagembed__user_details) || empty($data->youtubeChannelData)) : |
| 509 |
return ___tagembed__exitWithDanger(); |
| 510 |
endif; |
| 511 |
/* --Start-- Manage Param Data */ |
| 512 |
$param['youtubeChannelData'] = $data->youtubeChannelData; |
| 513 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 514 |
/* --End-- Manage Param Data */ |
| 515 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/searchyoutubechannel', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 516 |
unset($param); |
| 517 |
$response = ___tagembed__manageApiResponse($response); |
| 518 |
return ___tagembed__exitWithSuccess($response); |
| 519 |
break; |
| 520 |
case '__tagembed__get_youtube_playlist': |
| 521 |
if (empty($__tagembed__user_details) || empty($data->youtubeId)) : |
| 522 |
return ___tagembed__exitWithDanger(); |
| 523 |
endif; |
| 524 |
/* --Start-- Manage Param Data */ |
| 525 |
$param['youtubeId'] = $data->youtubeId; |
| 526 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 527 |
/* --End-- Manage Param Data */ |
| 528 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/getyoutubeplaylist', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 529 |
unset($param); |
| 530 |
$response = ___tagembed__manageApiResponse($response); |
| 531 |
return ___tagembed__exitWithSuccess($response); |
| 532 |
break; |
| 533 |
case '__tagembed__get_slack_channel_list': |
| 534 |
if (empty($data->connectedAccountsId)) : |
| 535 |
return ___tagembed__exitWithDanger(); |
| 536 |
endif; |
| 537 |
/* --Start-- Manage Param Data */ |
| 538 |
$param['connectedAccountsId'] = $data->connectedAccountsId; |
| 539 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 540 |
/* --End-- Manage Param Data */ |
| 541 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/getslackchannellist', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 542 |
unset($param); |
| 543 |
$response = ___tagembed__manageApiResponse($response); |
| 544 |
return ___tagembed__exitWithSuccess($response); |
| 545 |
break; |
| 546 |
case '__tagembed__get_feed': |
| 547 |
if (empty($__tagembed__user_details) || empty($data->widgetId)) : |
| 548 |
return ___tagembed__exitWithDanger(); |
| 549 |
endif; |
| 550 |
/* --Start-- Manage Param Data */ |
| 551 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 552 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 553 |
/* --End-- Manage Param Data */ |
| 554 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 555 |
unset($param); |
| 556 |
$response = ___tagembed__manageApiResponse($response); |
| 557 |
return ___tagembed__exitWithSuccess($response); |
| 558 |
break; |
| 559 |
case '__tagembed__update_feed_status': |
| 560 |
if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->feedId)) : |
| 561 |
return ___tagembed__exitWithDanger(); |
| 562 |
endif; |
| 563 |
/* --Start-- Manage Param Data */ |
| 564 |
$param['feedId'] = sanitize_key($data->feedId); |
| 565 |
$param['status'] = sanitize_key($data->status); |
| 566 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 567 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 568 |
/* --End-- Manage Param Data */ |
| 569 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/status', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 570 |
unset($param); |
| 571 |
$response = ___tagembed__manageApiResponse($response); |
| 572 |
$response = !empty($response->message) ? $response->message : 'Done'; |
| 573 |
return ___tagembed__exitWithSuccess(['message' => $response]); |
| 574 |
break; |
| 575 |
case '__tagembed__delete_feed': |
| 576 |
if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->feedId)) : |
| 577 |
return ___tagembed__exitWithDanger(); |
| 578 |
endif; |
| 579 |
/* --Start-- Manage Param Data */ |
| 580 |
$param['feedId'] = sanitize_key($data->feedId); |
| 581 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 582 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 583 |
/* --End-- Manage Param Data */ |
| 584 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/delete', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 585 |
unset($param); |
| 586 |
$response = ___tagembed__manageApiResponse($response); |
| 587 |
$response = !empty($response->message) ? $response->message : 'Done'; |
| 588 |
return ___tagembed__exitWithSuccess(['message' => $response]); |
| 589 |
break; |
| 590 |
case '__tagembed__create_feed': |
| 591 |
if (empty($__tagembed__user_details) || empty($data->widgetName) || empty($data->networkName) || empty($data->filterName) || empty($data->widgetId) || empty($data->networkId) || empty($data->filterId)) : |
| 592 |
return ___tagembed__exitWithDanger(); |
| 593 |
endif; |
| 594 |
$__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]; |
| 595 |
$__tagembed__feed_input_data['feed'] = !empty($data->feed) ? sanitize_text_field($data->feed) : '__tagembed__feed'; |
| 596 |
$__tagembed__feed_filter_id = $data->filterId; |
| 597 |
switch ($__tagembed__feed_input_data['networkId']): |
| 598 |
case 1: |
| 599 |
$__tagembed__feed_input_data['auth'] = 1; |
| 600 |
$__tagembed__feed_input_data['multiplePhoto'] = sanitize_key(isset($data->multiplePhoto) ? 1 : 0); |
| 601 |
$__tagembed__feed_input_data['excludeRetweet'] = sanitize_key(isset($data->excludeRetweet) ? 1 : 0); |
| 602 |
if (!empty($data->list)) : |
| 603 |
$__tagembed__feed_input_data['list'] = sanitize_key($data->list); |
| 604 |
endif; |
| 605 |
break; |
| 606 |
case 2: |
| 607 |
$__tagembed__feed_input_data['auth'] = 1; |
| 608 |
break; |
| 609 |
case 3: |
| 610 |
$__tagembed__feed_input_data['auth'] = 1; |
| 611 |
switch ($__tagembed__feed_filter_id): |
| 612 |
case 65: |
| 613 |
$__tagembed__feed_input_data['accountAlbumType'] = sanitize_key(isset($data->accountAlbumType) ? $data->accountAlbumType : ''); |
| 614 |
$__tagembed__feed_input_data['accountAlbumData'] = sanitize_text_field(isset($data->accountAlbumData) ? $data->accountAlbumData : ''); |
| 615 |
break; |
| 616 |
endswitch; |
| 617 |
break; |
| 618 |
case 4: |
| 619 |
if ($__tagembed__feed_filter_id == 29) : |
| 620 |
$__tagembed__feed_input_data['auth'] = 1; |
| 621 |
else : |
| 622 |
$__tagembed__feed_input_data['placeId'] = $data->placeId; |
| 623 |
$__tagembed__feed_input_data['placeName'] = $data->placeName; |
| 624 |
endif; |
| 625 |
break; |
| 626 |
case 5: |
| 627 |
switch ($__tagembed__feed_filter_id): |
| 628 |
case 1: |
| 629 |
case 71: |
| 630 |
break; |
| 631 |
case 12: |
| 632 |
if (!preg_match('/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) : |
| 633 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']); |
| 634 |
endif; |
| 635 |
$pintrestHeaders = explode('/', parse_url($data->feed)['path']); |
| 636 |
$__tagembed__feed_input_data['value1'] = strtolower($pintrestHeaders[1]); |
| 637 |
$__tagembed__feed_input_data['value2'] = strtolower($pintrestHeaders[2]); |
| 638 |
break; |
| 639 |
endswitch; |
| 640 |
break; |
| 641 |
case 6: |
| 642 |
switch ($__tagembed__feed_filter_id): |
| 643 |
case 1: |
| 644 |
case 2: |
| 645 |
$__tagembed__feed_input_data['feed'] = $__tagembed__feed_input_data['name'] = $data->feed; |
| 646 |
break; |
| 647 |
endswitch; |
| 648 |
break; |
| 649 |
case 7: |
| 650 |
if (in_array($__tagembed__feed_filter_id, [1, 71])) : |
| 651 |
$isUrl = false; |
| 652 |
if (preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) : |
| 653 |
$isUrl = true; |
| 654 |
endif; |
| 655 |
if ((empty($data->youtubeId) || empty($data->youtubeName)) && !$isUrl) : |
| 656 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid Channel URL Or Tab On Search Icon']); |
| 657 |
endif; |
| 658 |
if ($isUrl) : |
| 659 |
$data->youtubeId = explode('/', $data->feed); |
| 660 |
$data->youtubeId = $data->youtubeId[4]; |
| 661 |
$data->youtubeName = 'youtube'; |
| 662 |
if (empty($data->youtubeId) || empty($data->youtubeName)) : |
| 663 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid Channel URL']); |
| 664 |
endif; |
| 665 |
endif; |
| 666 |
endif; |
| 667 |
switch ($__tagembed__feed_filter_id): |
| 668 |
case 1: |
| 669 |
case 75: |
| 670 |
$__tagembed__feed_input_data['youtubeId'] = $data->youtubeId; |
| 671 |
$__tagembed__feed_input_data['youtubeName'] = $data->youtubeName; |
| 672 |
break; |
| 673 |
case 11: |
| 674 |
if (empty($data->youtubePlaylist) && empty($data->youtubeId)) : |
| 675 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid Channel URL Or Tab On Search Icon']); |
| 676 |
elseif (empty($data->youtubePlaylist) && !empty($data->youtubeId)) : |
| 677 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Play List Not Found']); |
| 678 |
endif; |
| 679 |
$data->youtubePlaylist = explode('#', $data->youtubePlaylist); |
| 680 |
$__tagembed__feed_input_data['youtubeId'] = $data->youtubePlaylist[0]; |
| 681 |
$__tagembed__feed_input_data['youtubeName'] = $data->youtubePlaylist[1]; |
| 682 |
$__tagembed__feed_input_data['feed'] = $data->youtubePlaylist[1]; |
| 683 |
unset($data->youtubePlaylist); |
| 684 |
break; |
| 685 |
endswitch; |
| 686 |
break; |
| 687 |
case 8: |
| 688 |
switch ($__tagembed__feed_filter_id): |
| 689 |
case 1: |
| 690 |
case 2: |
| 691 |
$__tagembed__feed_input_data['auth'] = 1; |
| 692 |
break; |
| 693 |
endswitch; |
| 694 |
break; |
| 695 |
case 10: |
| 696 |
if (in_array($__tagembed__feed_filter_id, [1, 16, 17])) : |
| 697 |
if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) : |
| 698 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']); |
| 699 |
endif; |
| 700 |
endif; |
| 701 |
switch ($__tagembed__feed_filter_id): |
| 702 |
case 16: |
| 703 |
$postUrl = parse_url($data->feed); |
| 704 |
if (!strstr($postUrl['host'], 'linkedin')) : |
| 705 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Linkedin Post Url']); |
| 706 |
endif; |
| 707 |
$postUrl = $data->feed; |
| 708 |
$postUrl = rtrim($postUrl, '/'); |
| 709 |
preg_match('/[^\/]+$/', $postUrl, $postId); |
| 710 |
$postId = $postId[0]; |
| 711 |
$postId = (explode('?', $postId)[0]); |
| 712 |
$value1 = 'LinkedIn'; |
| 713 |
if (stripos($postId, 'activity') !== false) : |
| 714 |
$postId = (explode('activity', $postId)[1]); |
| 715 |
$value2 = 'activity'; |
| 716 |
elseif (stripos($postId, 'ugcPost') !== false) : |
| 717 |
$postId = (explode('ugcPost', $postId)[1]); |
| 718 |
$value2 = 'ugcPost'; |
| 719 |
else : |
| 720 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Linkedin Post Url']); |
| 721 |
endif; |
| 722 |
preg_match_all('!\d+!', $postId, $postId); |
| 723 |
if (isset($postId[0][0]) && empty($postId[0][0])) : |
| 724 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Linkedin Post Url']); |
| 725 |
endif; |
| 726 |
$value3 = $postId[0][0]; |
| 727 |
if (empty($value1) || empty($value2) || empty($value3)) : |
| 728 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Linkedin Post Url']); |
| 729 |
endif; |
| 730 |
$__tagembed__feed_input_data['value1'] = $value1; |
| 731 |
$__tagembed__feed_input_data['value2'] = $value2; |
| 732 |
$__tagembed__feed_input_data['value3'] = $value3; |
| 733 |
break; |
| 734 |
case 1: |
| 735 |
case 17: |
| 736 |
$url = parse_url($data->feed); |
| 737 |
$companyPageUrl = $url['scheme'] . '://' . $url['host']; |
| 738 |
$url = explode('/', $url['path']); |
| 739 |
$companyPageUrl = $companyPageUrl . '/' . $url[1] . '/' . $url[2] . '/'; |
| 740 |
$__tagembed__feed_input_data['feed'] = $companyPageUrl; |
| 741 |
$url[2] = str_replace('-', ' ', '$url[2]'); |
| 742 |
$__tagembed__feed_input_data['page'] = ucwords($url[2], ' '); |
| 743 |
break; |
| 744 |
case 2: |
| 745 |
$__tagembed__feed_input_data['feed'] = $__tagembed__feed_input_data['name'] = $data->feed; |
| 746 |
break; |
| 747 |
endswitch; |
| 748 |
break; |
| 749 |
case 11: |
| 750 |
switch ($__tagembed__feed_filter_id): |
| 751 |
case 1: |
| 752 |
case 2: |
| 753 |
$__tagembed__feed_input_data['feed'] = $__tagembed__feed_input_data['name'] = $data->feed; |
| 754 |
break; |
| 755 |
endswitch; |
| 756 |
break; |
| 757 |
case 12: |
| 758 |
if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) : |
| 759 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']); |
| 760 |
endif; |
| 761 |
$__tagembed__feed_input_data['name'] = $data->name; |
| 762 |
break; |
| 763 |
case 18: |
| 764 |
switch ($__tagembed__feed_filter_id): |
| 765 |
case 23: |
| 766 |
if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) : |
| 767 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']); |
| 768 |
endif; |
| 769 |
break; |
| 770 |
case 26: |
| 771 |
$__tagembed__feed_input_data['hashtagCaption'] = sanitize_key(isset($data->hashtagCaption) ? 1 : 0); |
| 772 |
$__tagembed__feed_input_data['hashtagOlder'] = sanitize_key(isset($data->hashtagOlder) ? 1 : 0); |
| 773 |
break; |
| 774 |
endswitch; |
| 775 |
$__tagembed__feed_input_data['auth'] = 1; |
| 776 |
break; |
| 777 |
case 19: |
| 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 |
$yelpBusinessUrl = parse_url($data->feed); |
| 782 |
if (!strstr($yelpBusinessUrl['host'], 'yelp')) : |
| 783 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Yelp Business Url']); |
| 784 |
endif; |
| 785 |
$yelpBusinessPath = explode('/', $yelpBusinessUrl['path']); |
| 786 |
$__tagembed__feed_input_data['feed'] = $yelpBusinessPath[2]; |
| 787 |
$__tagembed__feed_input_data['name'] = $yelpBusinessPath[2]; |
| 788 |
break; |
| 789 |
case 20: |
| 790 |
$__tagembed__feed_input_data['auth'] = 1; |
| 791 |
$slackData = isset($data->slackChannelList) ? $data->slackChannelList : ''; |
| 792 |
if (!empty($slackData)) : |
| 793 |
$slackData = explode('#', $slackData); |
| 794 |
$__tagembed__feed_input_data['name'] = $slackData[1]; |
| 795 |
$__tagembed__feed_input_data['feed'] = $slackData[0]; |
| 796 |
endif; |
| 797 |
break; |
| 798 |
case 23: |
| 799 |
if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) : |
| 800 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']); |
| 801 |
endif; |
| 802 |
$airbnbListUrl = parse_url($data->feed); |
| 803 |
if (strstr($airbnbListUrl['host'], 'airbnb')) : |
| 804 |
preg_match('/[^\/]+$/', $data->feed, $matches); |
| 805 |
$__tagembed__feed_input_data['listId'] = explode('?', $matches[0])[0]; |
| 806 |
else : |
| 807 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Airbnb Url']); |
| 808 |
endif; |
| 809 |
$__tagembed__feed_input_data['name'] = $data->name; |
| 810 |
break; |
| 811 |
case 36: |
| 812 |
if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) : |
| 813 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']); |
| 814 |
endif; |
| 815 |
$etsyShopUrl = parse_url($data->feed); |
| 816 |
if (!strstr($etsyShopUrl['host'], 'etsy')) : |
| 817 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Etsy Shop Url']); |
| 818 |
endif; |
| 819 |
$__tagembed__feed_input_data['feed'] = $__tagembed__feed_input_data['name'] = explode('/shop/', $etsyShopUrl['path'])[1]; |
| 820 |
break; |
| 821 |
case 28: |
| 822 |
switch ($__tagembed__feed_filter_id): |
| 823 |
case 72: |
| 824 |
$__tagembed__feed_input_data['feed'] = $data->feed; |
| 825 |
$__tagembed__feed_input_data['name'] = $data->feed; |
| 826 |
break; |
| 827 |
endswitch; |
| 828 |
if (!in_array($__tagembed__feed_filter_id, [72])) : |
| 829 |
$__tagembed__feed_input_data['auth'] = 1; |
| 830 |
endif; |
| 831 |
break; |
| 832 |
case 30: |
| 833 |
switch ($__tagembed__feed_filter_id): |
| 834 |
case 2: |
| 835 |
$__tagembed__feed_input_data['feed'] = $data->feed; |
| 836 |
$__tagembed__feed_input_data['name'] = $data->feed; |
| 837 |
break; |
| 838 |
case 75: |
| 839 |
$__tagembed__feed_input_data['communitiesName'] = $data->communitiesName; |
| 840 |
$__tagembed__feed_input_data['communitiesId'] = $data->communitiesId; |
| 841 |
break; |
| 842 |
endswitch; |
| 843 |
if (!in_array($__tagembed__feed_filter_id, [2, 75])) : |
| 844 |
$__tagembed__feed_input_data['auth'] = 1; |
| 845 |
endif; |
| 846 |
break; |
| 847 |
case 33: |
| 848 |
if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) : |
| 849 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']); |
| 850 |
endif; |
| 851 |
preg_match('/[^\/]+$/', '$data->feed', $matches); |
| 852 |
$__tagembed__feed_input_data['feed'] = $matches[0]; |
| 853 |
$__tagembed__feed_input_data['name'] = $matches[0]; |
| 854 |
break; |
| 855 |
case 34: |
| 856 |
if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) : |
| 857 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']); |
| 858 |
endif; |
| 859 |
$__tagembed__feed_input_data['name'] = explode('/', $data->feed)[3]; |
| 860 |
$__tagembed__feed_input_data['feed'] = $data->feed; |
| 861 |
break; |
| 862 |
case 35: |
| 863 |
if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) : |
| 864 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']); |
| 865 |
endif; |
| 866 |
$__tagembed__feed_input_data['name'] = explode('Reviews-', $data->feed)[1]; |
| 867 |
$__tagembed__feed_input_data['name'] = explode('.html', $__tagembed__feed_input_data['name'])[0]; |
| 868 |
$__tagembed__feed_input_data['feed'] = $data->feed; |
| 869 |
break; |
| 870 |
case 37: |
| 871 |
$data->feed = explode('.html', $data->feed)[0]; |
| 872 |
if (!preg_match('/\b(?:(?:https?|ftp) :\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i', $data->feed)) : |
| 873 |
return ___tagembed__exitWithDanger('Validation Error', ['feed' => 'Enter Valid URL']); |
| 874 |
endif; |
| 875 |
$__tagembed__feed_input_data['name'] = $data->feed; |
| 876 |
$__tagembed__feed_input_data['feed'] = explode('item/', $data->feed)[1]; |
| 877 |
break; |
| 878 |
endswitch; |
| 879 |
unset($data); |
| 880 |
|
| 881 |
/* --Start-- Manage Api Calling */ |
| 882 |
$byApiCall = 0; |
| 883 |
if (empty($__tagembed__feed_input_data['authId'])) : |
| 884 |
switch ($__tagembed__feed_input_data['networkId']): |
| 885 |
case 4: |
| 886 |
if (33 == $__tagembed__feed_filter_id) : |
| 887 |
$byApiCall = 1; |
| 888 |
$__tagembed__feed_input_data['byApiCall'] = 1; |
| 889 |
endif; |
| 890 |
break; |
| 891 |
case 5: |
| 892 |
case 7: |
| 893 |
case 6: |
| 894 |
case 10: |
| 895 |
case 11: |
| 896 |
case 12: |
| 897 |
case 19: |
| 898 |
case 23: |
| 899 |
case 28: |
| 900 |
case 29: |
| 901 |
case 33: |
| 902 |
case 34: |
| 903 |
case 35: |
| 904 |
case 37: |
| 905 |
$byApiCall = 1; |
| 906 |
$__tagembed__feed_input_data['byApiCall'] = 1; |
| 907 |
break; |
| 908 |
case 31: |
| 909 |
if (2 == $__tagembed__feed_filter_id) : |
| 910 |
$byApiCall = 1; |
| 911 |
$__tagembed__feed_input_data['byApiCall'] = 1; |
| 912 |
endif; |
| 913 |
break; |
| 914 |
case 32: |
| 915 |
if (in_array($__tagembed__feed_filter_id, [2, 75])) : |
| 916 |
$byApiCall = 1; |
| 917 |
$__tagembed__feed_input_data['byApiCall'] = 1; |
| 918 |
endif; |
| 919 |
break; |
| 920 |
endswitch; |
| 921 |
else : |
| 922 |
$byApiCall = 1; |
| 923 |
$__tagembed__feed_input_data['byApiCall'] = 1; |
| 924 |
endif; |
| 925 |
$__tagembed__feed_input_data['appUser'] = 1; |
| 926 |
$__tagembed__feed_input_data['platform'] = TAGEMBED_PLUGIN_PLATFORM; |
| 927 |
/* --End-- Manage Api Calling */ |
| 928 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifeed/create', ['feedData' => $__tagembed__feed_input_data], ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 929 |
$response = ___tagembed__manageApiResponse($response); |
| 930 |
return ___tagembed__exitWithSuccess(['byapiCall' => $byApiCall, '__tagembed__requestCallBackUrl' => TAGEMBED_PLUGIN_CALL_BACK_URL, 'redirectUrl' => TAGEMBED_PLUGIN_API_URL . 'apiauth/getauth', '__tagembed__feedData' => $response->__tagembed__feedData]); |
| 931 |
break; |
| 932 |
case '__tagembed__make_payment': |
| 933 |
if (empty($__tagembed__user_details) || empty($data->planId) || empty($data->priceCode)) : |
| 934 |
return ___tagembed__exitWithDanger(); |
| 935 |
endif; |
| 936 |
/* --Start-- Manage Param Data */ |
| 937 |
$param['planId'] = sanitize_key($data->planId); |
| 938 |
$param['priceCode'] = $data->priceCode; |
| 939 |
/* --Start-- Manage Param Data */ |
| 940 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 941 |
$param['email'] = $__tagembed__user_details->email; |
| 942 |
$param['name'] = $__tagembed__user_details->name; |
| 943 |
$param['platform'] = TAGEMBED_PLUGIN_PLATFORM; |
| 944 |
/* --End-- Manage Param Data */ |
| 945 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/getpaymentdetails', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 946 |
unset($param); |
| 947 |
$response = ___tagembed__manageApiResponse($response); |
| 948 |
return ___tagembed__exitWithSuccess(['__tagembed__requestCallBackUrl' => TAGEMBED_PLUGIN_CALL_BACK_URL, 'redirectUrl' => TAGEMBED_PLUGIN_API_URL . 'apiaccount/makepayment', '__tagembed__paymentData' => $response->__tagembed__paymentData]); |
| 949 |
break; |
| 950 |
case '__tagembed__cancel_subscription': |
| 951 |
if (empty($__tagembed__user_details) || empty($data->planId)) : |
| 952 |
return ___tagembed__exitWithDanger(); |
| 953 |
endif; |
| 954 |
/* --Start-- Manage Param Data */ |
| 955 |
$param['planId'] = sanitize_key($data->planId); |
| 956 |
/* --Start-- Manage Param Data */ |
| 957 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 958 |
$param['email'] = $__tagembed__user_details->email; |
| 959 |
$param['name'] = $__tagembed__user_details->name; |
| 960 |
$param['platform'] = TAGEMBED_PLUGIN_PLATFORM; |
| 961 |
/* --End-- Manage Param Data */ |
| 962 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/cancelsubscription', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 963 |
unset($param); |
| 964 |
$response = ___tagembed__manageApiResponse($response); |
| 965 |
$response = !empty($response->message) ? $response->message : 'Done'; |
| 966 |
return ___tagembed__exitWithSuccess(['message' => $response]); |
| 967 |
break; |
| 968 |
case '__tagembed__get_post': |
| 969 |
if (empty($__tagembed__user_details) || empty($data->widgetId) || !isset($data->perPage) || !isset($data->offset) || !isset($data->postStatus)) : |
| 970 |
return ___tagembed__exitWithDanger(); |
| 971 |
endif; |
| 972 |
/* --Start-- Manage Param Data */ |
| 973 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 974 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 975 |
$param['perPage'] = sanitize_key($data->perPage); |
| 976 |
$param['offset'] = sanitize_key($data->offset); |
| 977 |
$param['postStatus'] = sanitize_key($data->postStatus); |
| 978 |
$param['feedIds'] = $data->feedIds; |
| 979 |
$param['postType'] = $data->postType; |
| 980 |
$param['highlightFilter'] = sanitize_key($data->highlightFilter); |
| 981 |
$param['pinFilter'] = sanitize_key($data->pinFilter); |
| 982 |
$param['recentFilter'] = sanitize_key($data->recentFilter); |
| 983 |
$param['retweetFilter'] = sanitize_key($data->retweetFilter); |
| 984 |
$param['searchText'] = sanitize_text_field($data->searchText); |
| 985 |
/* --End-- Manage Param Data */ |
| 986 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifilter/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 987 |
unset($param); |
| 988 |
$response = ___tagembed__manageApiResponse($response); |
| 989 |
return ___tagembed__exitWithSuccess($response); |
| 990 |
break; |
| 991 |
case '__tagembed__manage_post_status': |
| 992 |
if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->postIds) || empty($data->postStatus)) : |
| 993 |
return ___tagembed__exitWithDanger(); |
| 994 |
endif; |
| 995 |
/* --Start-- Manage Param Data */ |
| 996 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 997 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 998 |
$param['postIds'] = $data->postIds; |
| 999 |
$param['postStatus'] = sanitize_key($data->postStatus); |
| 1000 |
/* --End-- Manage Param Data */ |
| 1001 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifilter/status', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 1002 |
unset($param); |
| 1003 |
$response = ___tagembed__manageApiResponse($response); |
| 1004 |
$response = !empty($response->message) ? $response->message : 'Done'; |
| 1005 |
return ___tagembed__exitWithSuccess(['message' => $response]); |
| 1006 |
break; |
| 1007 |
case '__tagembed__feed_for_search': |
| 1008 |
if (empty($__tagembed__user_details) || empty($data->widgetId)) : |
| 1009 |
return ___tagembed__exitWithDanger(); |
| 1010 |
endif; |
| 1011 |
/* --Start-- Manage Param Data */ |
| 1012 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 1013 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 1014 |
/* --End-- Manage Param Data */ |
| 1015 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifilter/getfeeds', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 1016 |
unset($param); |
| 1017 |
$response = ___tagembed__manageApiResponse($response); |
| 1018 |
return ___tagembed__exitWithSuccess($response); |
| 1019 |
break; |
| 1020 |
case '__tagembed__manage_post_pin': |
| 1021 |
if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->postId) || !isset($data->pin)) : |
| 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 |
$param['postId'] = $data->postId; |
| 1028 |
$param['pin'] = sanitize_key($data->pin); |
| 1029 |
/* --End-- Manage Param Data */ |
| 1030 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifilter/pin', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 1031 |
unset($param); |
| 1032 |
$response = ___tagembed__manageApiResponse($response); |
| 1033 |
$response = !empty($response->message) ? $response->message : 'Done'; |
| 1034 |
return ___tagembed__exitWithSuccess(['message' => $response]); |
| 1035 |
break; |
| 1036 |
case '__tagembed__manage_post_highlight': |
| 1037 |
if (empty($__tagembed__user_details) || empty($data->widgetId) || empty($data->postId) || !isset($data->highlight)) : |
| 1038 |
return ___tagembed__exitWithDanger(); |
| 1039 |
endif; |
| 1040 |
/* --Start-- Manage Param Data */ |
| 1041 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 1042 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 1043 |
$param['postId'] = $data->postId; |
| 1044 |
$param['highlight'] = sanitize_key($data->highlight); |
| 1045 |
/* --End-- Manage Param Data */ |
| 1046 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apifilter/highlight', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 1047 |
unset($param); |
| 1048 |
$response = ___tagembed__manageApiResponse($response); |
| 1049 |
$response = !empty($response->message) ? $response->message : 'Done'; |
| 1050 |
return ___tagembed__exitWithSuccess(['message' => $response]); |
| 1051 |
break; |
| 1052 |
case '__tagembed__plugin_version': |
| 1053 |
/* --Start-- Manage Param Data */ |
| 1054 |
$param = []; |
| 1055 |
$param['platform'] = TAGEMBED_PLUGIN_PLATFORM; |
| 1056 |
/* --End-- Manage Param Data */ |
| 1057 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/pluginversion', $param, []); |
| 1058 |
$response = ___tagembed__manageApiResponse($response); |
| 1059 |
unset($param); |
| 1060 |
$installedPluginVersion = get_file_data(__FILE__, ['Version' => 'Version'], false); |
| 1061 |
$installedPluginVersion = $installedPluginVersion['Version']; |
| 1062 |
$response->installedPluginVersion = $installedPluginVersion; |
| 1063 |
$response->pluginUpgradeURL = admin_url() . 'plugins.php'; |
| 1064 |
return ___tagembed__exitWithSuccess($response); |
| 1065 |
break; |
| 1066 |
case '__tagembed__check_user_token': |
| 1067 |
if (empty($__tagembed__user_details)) : |
| 1068 |
return ___tagembed__exitWithDanger(); |
| 1069 |
endif; |
| 1070 |
/* --Start-- Manage Param Data */ |
| 1071 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 1072 |
/* --End-- Manage Param Data */ |
| 1073 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/checkusertoken', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 1074 |
if (!empty($response->head) && 401 == $response->head->code && empty($response->head->status)) : |
| 1075 |
tagembed_logout(); |
| 1076 |
endif; |
| 1077 |
unset($param); |
| 1078 |
return ___tagembed__exitWithSuccess($response); |
| 1079 |
break; |
| 1080 |
case '__tagembed__plugin_deactivate': |
| 1081 |
/* --Start-- Manage Param Data */ |
| 1082 |
$__tagembed__user_details = ___tagembed__userData(); |
| 1083 |
$param = []; |
| 1084 |
$param['userId'] = !empty($__tagembed__user_details) ? sanitize_key($__tagembed__user_details->userId) : ''; |
| 1085 |
$param['userName'] = !empty($__tagembed__user_details) ? sanitize_text_field($__tagembed__user_details->name) : ''; |
| 1086 |
$param['userEmail'] = !empty($__tagembed__user_details) ? sanitize_email($__tagembed__user_details->email) : ''; |
| 1087 |
$param['pluginDeactivateReason'] = sanitize_text_field($data->pluginDeactivateReason); |
| 1088 |
$param['otherReason'] = sanitize_text_field($data->otherReason); |
| 1089 |
$param['betterPlugin'] = sanitize_text_field($data->betterPlugin); |
| 1090 |
$param['userWebsiteUrl'] = get_site_url(); |
| 1091 |
$param['platform'] = TAGEMBED_PLUGIN_PLATFORM; |
| 1092 |
/* --End-- Manage Param Data */ |
| 1093 |
___tagembed__dropDatabaseTablesForPlugin(); |
| 1094 |
deactivate_plugins(plugin_basename(__FILE__), true); |
| 1095 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/deactivateuserdata', $param, []); |
| 1096 |
$response = ___tagembed__manageApiResponse($response); |
| 1097 |
unset($param); |
| 1098 |
return ___tagembed__exitWithSuccess(); |
| 1099 |
break; |
| 1100 |
case '__tagembed__get_customization_option': |
| 1101 |
if (empty($__tagembed__user_details) || empty($data->widgetId)) : |
| 1102 |
return ___tagembed__exitWithDanger(); |
| 1103 |
endif; |
| 1104 |
/* --Start-- Manage Param Data */ |
| 1105 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 1106 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 1107 |
/* --End-- Manage Param Data */ |
| 1108 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apicustomization/get', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 1109 |
unset($param); |
| 1110 |
$response = ___tagembed__manageApiResponse($response); |
| 1111 |
return ___tagembed__exitWithSuccess($response); |
| 1112 |
break; |
| 1113 |
case '__tagembed__update_footer_customization_option': |
| 1114 |
/* --Start-- Manage Param Data */ |
| 1115 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 1116 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 1117 |
$param['personalizationId'] = sanitize_key($data->personalizationId); |
| 1118 |
$param['themeRuleId'] = sanitize_key($data->themeRuleId); |
| 1119 |
$param['loadMoreStatus'] = sanitize_key($data->loadMoreStatus); |
| 1120 |
$param['autoScrollStatus'] = sanitize_key($data->autoScrollStatus); |
| 1121 |
/* --End-- Manage Param Data */ |
| 1122 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apicustomization/footer', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 1123 |
unset($param); |
| 1124 |
$response = ___tagembed__manageApiResponse($response); |
| 1125 |
return ___tagembed__exitWithSuccess($response); |
| 1126 |
break; |
| 1127 |
case '__tagembed__update_layout_customization_option': |
| 1128 |
/* --Start-- Manage Param Data */ |
| 1129 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 1130 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 1131 |
$param['personalizationId'] = sanitize_key($data->personalizationId); |
| 1132 |
$param['themeRuleId'] = sanitize_key($data->themeRuleId); |
| 1133 |
$param['numberOfPosts'] = sanitize_key($data->numberOfPosts); |
| 1134 |
$param['padding'] = sanitize_key($data->padding); |
| 1135 |
$param['minimumPostWidth'] = sanitize_key($data->minimumPostWidth); |
| 1136 |
$param['columnCount'] = sanitize_key($data->columnCount); |
| 1137 |
$param['columnCountMobile'] = sanitize_key($data->columnCountMobile); |
| 1138 |
$param['postText'] = sanitize_key($data->postText); |
| 1139 |
$param['mobilePopup'] = sanitize_key($data->mobilePopup); |
| 1140 |
$param['postFeatured'] = sanitize_key($data->postFeatured); |
| 1141 |
/* --End-- Manage Param Data */ |
| 1142 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apicustomization/layout', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 1143 |
unset($param); |
| 1144 |
$response = ___tagembed__manageApiResponse($response); |
| 1145 |
return ___tagembed__exitWithSuccess($response); |
| 1146 |
break; |
| 1147 |
case '__tagembed__update_card_customization_option': |
| 1148 |
/* --Start-- Manage Param Data */ |
| 1149 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 1150 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 1151 |
$param['personalizationId'] = sanitize_key($data->personalizationId); |
| 1152 |
$param['inheritStyles'] = sanitize_key($data->inheritStyles); |
| 1153 |
$param['themeRuleId'] = sanitize_key($data->themeRuleId); |
| 1154 |
$param['fontColor'] = $data->fontColor; |
| 1155 |
$param['authorColor'] = $data->authorColor; |
| 1156 |
$param['cardColor'] = $data->cardColor; |
| 1157 |
$param['fontSize'] = sanitize_key($data->fontSize); |
| 1158 |
$param['shareOption'] = sanitize_key($data->shareOption); |
| 1159 |
$param['hideContent'] = sanitize_key($data->hideContent); |
| 1160 |
$param['postAuthor'] = sanitize_key($data->postAuthor); |
| 1161 |
$param['postTime'] = sanitize_key($data->postTime); |
| 1162 |
$param['lineTrim'] = sanitize_key($data->lineTrim); |
| 1163 |
$param['aspectImageRatio'] = $data->aspectImageRatio; |
| 1164 |
$param['textAlignment'] = $data->textAlignment; |
| 1165 |
$param['borderRadius'] = $data->borderRadius; |
| 1166 |
/* --End-- Manage Param Data */ |
| 1167 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apicustomization/card', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 1168 |
unset($param); |
| 1169 |
$response = ___tagembed__manageApiResponse($response); |
| 1170 |
return ___tagembed__exitWithSuccess($response); |
| 1171 |
break; |
| 1172 |
case '__tagembed__update_other_customization_option': |
| 1173 |
/* --Start-- Manage Param Data */ |
| 1174 |
$param['widgetId'] = sanitize_key($data->widgetId); |
| 1175 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 1176 |
$param['personalizationId'] = sanitize_key($data->personalizationId); |
| 1177 |
$param['themeRuleId'] = sanitize_key($data->themeRuleId); |
| 1178 |
$param['css'] = $data->css; |
| 1179 |
/* --End-- Manage Param Data */ |
| 1180 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apicustomization/other', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 1181 |
unset($param); |
| 1182 |
$response = ___tagembed__manageApiResponse($response); |
| 1183 |
return ___tagembed__exitWithSuccess($response); |
| 1184 |
break; |
| 1185 |
case '__tagembed__get_and_manage_intercom_chat_setting': |
| 1186 |
if (empty($__tagembed__user_details)) : |
| 1187 |
return ___tagembed__exitWithDanger(); |
| 1188 |
endif; |
| 1189 |
/* --Start-- Manage Param Data */ |
| 1190 |
$param['userId'] = sanitize_key($__tagembed__user_details->userId); |
| 1191 |
/* --End-- Manage Param Data */ |
| 1192 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/getIntercomSettingData', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 1193 |
unset($param); |
| 1194 |
$response = ___tagembed__manageApiResponse($response); |
| 1195 |
return ___tagembed__exitWithSuccess($response); |
| 1196 |
break; |
| 1197 |
default: |
| 1198 |
return ___tagembed__exitWithDanger(); |
| 1199 |
endswitch; |
| 1200 |
} |
| 1201 |
/* --End-- Manage Ajax Calls */ |
| 1202 |
|
| 1203 |
/* --Start-- Login */ |
| 1204 |
function ___tagembed__login($response) |
| 1205 |
{ |
| 1206 |
global $wpdb; |
| 1207 |
$return = false; |
| 1208 |
$user = ___tagembed__user($response->emailId); |
| 1209 |
if (empty($user->email)) : |
| 1210 |
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'))) : |
| 1211 |
$return = true; |
| 1212 |
endif; |
| 1213 |
else : |
| 1214 |
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))) : |
| 1215 |
$return = true; |
| 1216 |
endif; |
| 1217 |
endif; |
| 1218 |
___tagembed__manageActiveOptions($response->emailId, 'yes'); /* Manage Active Options */ |
| 1219 |
if ($return) : |
| 1220 |
___tagembed__manageActiveWidgetsUser($response->userId); |
| 1221 |
endif; |
| 1222 |
return $return; |
| 1223 |
} |
| 1224 |
/* --End-- Login */ |
| 1225 |
|
| 1226 |
/* --Start-- Manage Active Options */ |
| 1227 |
function ___tagembed__manageActiveOptions($email = null, $other = null) |
| 1228 |
{ |
| 1229 |
global $wpdb; |
| 1230 |
if (null == $email && null != $other) : |
| 1231 |
$wpdb->query($wpdb->prepare('UPDATE wp_tagembed_active_options SET isLogin = %s WHERE id = %d', $other, 1)); |
| 1232 |
else : |
| 1233 |
$__tagembed__activeOptions = $wpdb->get_results($wpdb->prepare('SELECT email FROM wp_tagembed_active_options WHERE id = %d', 1)); |
| 1234 |
if (empty($__tagembed__activeOptions[0]->email)) : |
| 1235 |
$wpdb->query($wpdb->prepare('INSERT INTO wp_tagembed_active_options (email, isLogin) VALUES (%s, %s)', $email, $other)); |
| 1236 |
else : |
| 1237 |
$wpdb->query($wpdb->prepare('UPDATE wp_tagembed_active_options SET email = %s, isLogin = %s WHERE id = %d', $email, $other, 1)); |
| 1238 |
endif; |
| 1239 |
endif; |
| 1240 |
} |
| 1241 |
/* --End-- Manage Active Options */ |
| 1242 |
|
| 1243 |
/* --Start-- Logout */ |
| 1244 |
function tagembed_logout() |
| 1245 |
{ |
| 1246 |
global $wpdb; |
| 1247 |
if ($wpdb->query($wpdb->prepare('UPDATE wp_tagembed_user SET isLogin = %s WHERE isLogin = %s', 'no', 'yes'))) : |
| 1248 |
___tagembed__manageActiveOptions(null, 'no'); /* Manage Active Options */ |
| 1249 |
return true; |
| 1250 |
endif; |
| 1251 |
return false; |
| 1252 |
} |
| 1253 |
/* --End-- Logout */ |
| 1254 |
|
| 1255 |
/* --Start--Manage Menues */ |
| 1256 |
function ___tagembed__menus($__tagembed__menu_condatation = []) |
| 1257 |
{ |
| 1258 |
global $wpdb; |
| 1259 |
if (empty($__tagembed__menu_condatation)) : |
| 1260 |
return $wpdb->get_results('SELECT * FROM wp_tagembed_menus'); |
| 1261 |
endif; |
| 1262 |
if (array_key_exists('__tagembed__menu_condation', $__tagembed__menu_condatation)) : |
| 1263 |
return $wpdb->get_results($wpdb->prepare('SELECT * FROM wp_tagembed_menus WHERE status = %s', $__tagembed__menu_condatation['__tagembed__menu_condation'])); |
| 1264 |
endif; |
| 1265 |
if (array_key_exists('__tagembed__menu_id', $__tagembed__menu_condatation)) : |
| 1266 |
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']))) : |
| 1267 |
return true; |
| 1268 |
else : |
| 1269 |
return false; |
| 1270 |
endif; |
| 1271 |
endif; |
| 1272 |
} |
| 1273 |
/* --End--Manage Menues */ |
| 1274 |
|
| 1275 |
/* --Start-- Get User Details */ |
| 1276 |
function ___tagembed__user($email = null) |
| 1277 |
{ |
| 1278 |
global $wpdb; |
| 1279 |
$__tagembed__userResponse = ''; |
| 1280 |
if (empty($email)) : |
| 1281 |
$__tagembed__userResponse = $wpdb->get_results($wpdb->prepare('SELECT * FROM wp_tagembed_user WHERE isLogin = %s', 'yes')); |
| 1282 |
else : |
| 1283 |
$__tagembed__userResponse = $wpdb->get_results($wpdb->prepare('SELECT * FROM wp_tagembed_user WHERE email = %s', $email)); |
| 1284 |
endif; |
| 1285 |
if (!empty($__tagembed__userResponse)) : |
| 1286 |
return $__tagembed__userResponse[0]; |
| 1287 |
else : |
| 1288 |
return; |
| 1289 |
endif; |
| 1290 |
} |
| 1291 |
function ___tagembed__userData() |
| 1292 |
{ |
| 1293 |
global $wpdb; |
| 1294 |
$__tagembed__user_dataResponse = ''; |
| 1295 |
$__tagembed__user_dataResponse = $wpdb->get_results('SELECT * FROM wp_tagembed_user'); |
| 1296 |
if (!empty($__tagembed__user_dataResponse)) : |
| 1297 |
return $__tagembed__user_dataResponse[0]; |
| 1298 |
else : |
| 1299 |
return; |
| 1300 |
endif; |
| 1301 |
} |
| 1302 |
/* --End-- Get User Details */ |
| 1303 |
|
| 1304 |
/* --Start-- Get Widget */ |
| 1305 |
function ___tagembed__widgets() |
| 1306 |
{ |
| 1307 |
$returnWidgetData = []; |
| 1308 |
$__tagembed__user_details = ___tagembed__user(); |
| 1309 |
if (!empty($__tagembed__user_details)) : |
| 1310 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiwidget/get', ['userId' => sanitize_key($__tagembed__user_details->userId)], ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 1311 |
if (!isset($response->head->status)) : |
| 1312 |
return $returnWidgetData; |
| 1313 |
endif; |
| 1314 |
if (false == $response->head->status || 200 != $response->head->code || false == $response->body || empty($response->body)) : |
| 1315 |
return $returnWidgetData; |
| 1316 |
endif; |
| 1317 |
$returnWidgetData = $response->body; |
| 1318 |
endif; |
| 1319 |
return $returnWidgetData; |
| 1320 |
} |
| 1321 |
/* --End-- Get Widget */ |
| 1322 |
|
| 1323 |
/* --Start-- Get Active Widget */ |
| 1324 |
function ___tagembed__activeWidget() |
| 1325 |
{ |
| 1326 |
global $wpdb; |
| 1327 |
$__tagembed__activeWidgetResponse = ''; |
| 1328 |
$__tagembed__activeWidgetResponse = $wpdb->get_results('SELECT * FROM wp_tagembed_active_widget'); |
| 1329 |
if (!empty($__tagembed__activeWidgetResponse)) : |
| 1330 |
return $__tagembed__activeWidgetResponse[0]->widgetId; |
| 1331 |
else : |
| 1332 |
return; |
| 1333 |
endif; |
| 1334 |
} |
| 1335 |
/* --End-- Get Active Widget */ |
| 1336 |
|
| 1337 |
/* --Start-- Manage Active Widget User */ |
| 1338 |
function ___tagembed__manageActiveWidget($widgetId) |
| 1339 |
{ |
| 1340 |
global $wpdb; |
| 1341 |
$activeWidgetUserId = ___tagembed__activeWidget(); |
| 1342 |
if ($activeWidgetUserId == $widgetId) : |
| 1343 |
return true; |
| 1344 |
endif; |
| 1345 |
if (empty($activeWidgetUserId)) : |
| 1346 |
$wpdb->query($wpdb->prepare('INSERT INTO wp_tagembed_active_widget (widgetId) VALUES (%s)', $widgetId)); |
| 1347 |
return true; |
| 1348 |
else : |
| 1349 |
$wpdb->query($wpdb->prepare('UPDATE wp_tagembed_active_widget SET widgetId = %s WHERE id = %d', $widgetId, 1)); |
| 1350 |
return true; |
| 1351 |
endif; |
| 1352 |
return false; |
| 1353 |
} |
| 1354 |
/* --End-- Manage Active Widget User */ |
| 1355 |
|
| 1356 |
/* --Start-- Get Active Widget User */ |
| 1357 |
function ___tagembed__activeWidgetUser() |
| 1358 |
{ |
| 1359 |
global $wpdb; |
| 1360 |
$__tagembed__activeWidgetUserResponse = ''; |
| 1361 |
$__tagembed__activeWidgetUserResponse = $wpdb->get_results('SELECT * FROM wp_tagembed_active_widget_user'); |
| 1362 |
if (!empty($__tagembed__activeWidgetUserResponse)) : |
| 1363 |
return $__tagembed__activeWidgetUserResponse[0]->userId; |
| 1364 |
endif; |
| 1365 |
return; |
| 1366 |
} |
| 1367 |
/* --End-- Get Active Widget User */ |
| 1368 |
|
| 1369 |
/* --Start-- Manage Active Widget User */ |
| 1370 |
function ___tagembed__manageActiveWidgetsUser($userId) |
| 1371 |
{ |
| 1372 |
global $wpdb; |
| 1373 |
$activeWidgetUserId = ___tagembed__activeWidgetUser(); |
| 1374 |
if ($activeWidgetUserId == $userId) : |
| 1375 |
return true; |
| 1376 |
endif; |
| 1377 |
if (empty($activeWidgetUserId)) : |
| 1378 |
$wpdb->query($wpdb->prepare('INSERT INTO wp_tagembed_active_widget_user (userId) VALUES (%d)', $userId)); |
| 1379 |
return true; |
| 1380 |
else : |
| 1381 |
$wpdb->query($wpdb->prepare('UPDATE wp_tagembed_active_widget_user SET userId = %d WHERE id = %d', $userId, 1)); |
| 1382 |
return true; |
| 1383 |
endif; |
| 1384 |
return false; |
| 1385 |
} |
| 1386 |
/* --End-- Manage Active Widget User */ |
| 1387 |
|
| 1388 |
/* * ** DATABASE *** */ |
| 1389 |
/* --Start-- Manage Database */ |
| 1390 |
function ___tagembed__createDatabaseTableForPlugin() |
| 1391 |
{ |
| 1392 |
global $wpdb; |
| 1393 |
include_once ABSPATH . 'wp-admin/includes/upgrade.php'; |
| 1394 |
$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'); |
| 1395 |
$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'); |
| 1396 |
$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'); |
| 1397 |
$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'); |
| 1398 |
$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'); |
| 1399 |
/* --Start-- Manage Tagembed Plugin Menus */ |
| 1400 |
$__tagembed__checkAlreadyExistMenusDataExistOrNot = $wpdb->get_results('SELECT id FROM wp_tagembed_menus'); |
| 1401 |
if (empty($__tagembed__checkAlreadyExistMenusDataExistOrNot)) : |
| 1402 |
$__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']]; |
| 1403 |
foreach ($__tagembed__menus as $__tagembed__menu) : |
| 1404 |
$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'])); |
| 1405 |
endforeach; |
| 1406 |
endif; |
| 1407 |
/* --End-- Manage Tagembed Plugin Menus */ |
| 1408 |
} |
| 1409 |
function ___tagembed__dropDatabaseTablesForPlugin() |
| 1410 |
{ |
| 1411 |
global $wpdb; |
| 1412 |
$wpdb->query('DROP table IF EXISTS wp_tagembed_active_widget_user'); |
| 1413 |
$wpdb->query('DROP table IF EXISTS wp_tagembed_active_widget'); |
| 1414 |
$wpdb->query('DROP table IF EXISTS wp_tagembed_menus'); |
| 1415 |
} |
| 1416 |
/* --End-- Manage Database */ |
| 1417 |
|
| 1418 |
/* --Start-- Manage Active Deactive And Uninstall Webhook */ |
| 1419 |
register_activation_hook(__FILE__, '___tagembed__pluginActivate'); |
| 1420 |
function ___tagembed__pluginActivate() |
| 1421 |
{ |
| 1422 |
___tagembed__createDatabaseTableForPlugin(); |
| 1423 |
add_action('activated_plugin', '___tagembed__plginActivationRedirect'); |
| 1424 |
} |
| 1425 |
register_uninstall_hook(__FILE__, '___tagembed__pluginUnistall'); |
| 1426 |
function ___tagembed__pluginUnistall() |
| 1427 |
{ |
| 1428 |
___tagembed__dropDatabaseTablesForPlugin(); |
| 1429 |
global $wpdb; |
| 1430 |
$wpdb->query('DROP table IF EXISTS wp_tagembed_active_options'); |
| 1431 |
$wpdb->query('DROP table IF EXISTS wp_tagembed_user'); |
| 1432 |
} |
| 1433 |
/* --End-- Manage Active Deactive And Uninstall Webhook */ |
| 1434 |
|
| 1435 |
/* --Start--Manage Redirect After Plugin Activate */ |
| 1436 |
function ___tagembed__plginActivationRedirect() |
| 1437 |
{ |
| 1438 |
$__tagembed__activeUserData = wp_get_current_user(); |
| 1439 |
if (empty($__tagembed__activeUserData->roles)) : |
| 1440 |
return false; |
| 1441 |
endif; |
| 1442 |
$__tagembed__pluginCallbackUrl = esc_url(TAGEMBED_PLUGIN_CALL_BACK_URL); |
| 1443 |
wp_safe_redirect($__tagembed__pluginCallbackUrl); |
| 1444 |
exit; |
| 1445 |
} |
| 1446 |
/* --End--Manage Redirect After Plugin Activate */ |
| 1447 |
|
| 1448 |
/* --Start--Manage Setting Link */ |
| 1449 |
function ___tagembed__settingsLink($links) |
| 1450 |
{ |
| 1451 |
array_unshift($links, '<a href=' . TAGEMBED_PLUGIN_CALL_BACK_URL . '>Settings</a>'); |
| 1452 |
return $links; |
| 1453 |
} |
| 1454 |
add_filter('plugin_action_links_' . plugin_basename(__FILE__), '___tagembed__settingsLink'); |
| 1455 |
/* --End--Manage Setting Link */ |
| 1456 |
|
| 1457 |
/* --Start--Manage Database On Plugin Update Time */ |
| 1458 |
function ___tagembed__manageDatabaseOnPluginUpdateTime() |
| 1459 |
{ |
| 1460 |
___tagembed__dropDatabaseTablesForPlugin(); |
| 1461 |
___tagembed__createDatabaseTableForPlugin(); |
| 1462 |
} |
| 1463 |
add_action('upgrader_process_complete', '___tagembed__manageDatabaseOnPluginUpdateTime', 10, 2); |
| 1464 |
/* --End--Manage Database On Plugin Update Time */ |
| 1465 |
|
| 1466 |
/* --Sart--Get And Manage Social Accout Id */ |
| 1467 |
function ___tagembed__get_user_social_account_id() |
| 1468 |
{ |
| 1469 |
$__tagembed__user_details = ___tagembed__user(); |
| 1470 |
$param['userId'] = $__tagembed__user_details->userId; |
| 1471 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/getsocialaccountid', $param, ['Authorization:' . $__tagembed__user_details->accessToken]); |
| 1472 |
if (!empty($response->head->status)) : |
| 1473 |
if (!empty($response->body->userId)) : |
| 1474 |
return $response->body->userId; |
| 1475 |
endif; |
| 1476 |
endif; |
| 1477 |
return false; |
| 1478 |
} |
| 1479 |
/* --End--Get And Manage Social Accout Id */ |
| 1480 |
|
| 1481 |
/* --Start-- Show Admin General Notification After Login And Register */ |
| 1482 |
function ___tagembed__generalAdminNotice() |
| 1483 |
{ |
| 1484 |
$__tagmebed__page_name = ''; |
| 1485 |
if (!empty($_GET['page'])) : |
| 1486 |
$__tagmebed__page_name = ___tagembed__sanitizeRequestData($_GET); |
| 1487 |
$__tagmebed__page_name = $__tagmebed__page_name['page']; |
| 1488 |
endif; |
| 1489 |
$response = ___tagembed__wpApiCall(TAGEMBED_PLUGIN_API_URL . 'apiaccount/notification', ['callBy' => 'wordpress'], []); |
| 1490 |
if (!is_wp_error($response)) : |
| 1491 |
if (!empty($response->head->status) && !empty($response->body)) : |
| 1492 |
$response = $response->body; |
| 1493 |
if (!empty($response->notifications) && is_array($response->notifications)) : |
| 1494 |
$htmlData = ''; |
| 1495 |
foreach ($response->notifications as $notifications) : |
| 1496 |
if ('tagembed' == $notifications->location || 'inner' == $notifications->location) : |
| 1497 |
if ('tagembed' != $__tagmebed__page_name) : |
| 1498 |
continue; |
| 1499 |
endif; |
| 1500 |
$htmlData .= '<div class=\'notice notice-' . esc_attr($notifications->type) . ' is-dismissible\'>'; |
| 1501 |
$htmlData .= '<p>' . $notifications->message . '</p>'; |
| 1502 |
$htmlData .= '</div>'; |
| 1503 |
elseif ('all' == $notifications->location) : |
| 1504 |
$htmlData .= '<div class=\'notice notice-' . esc_attr($notifications->type) . ' is-dismissible\'>'; |
| 1505 |
$htmlData .= '<p>' . $notifications->message . '</p>'; |
| 1506 |
$htmlData .= '</div>'; |
| 1507 |
endif; |
| 1508 |
endforeach; |
| 1509 |
echo wp_kses_post($htmlData); |
| 1510 |
endif; |
| 1511 |
endif; |
| 1512 |
endif; |
| 1513 |
} |
| 1514 |
add_action('in_admin_header', '___tagembed__hideGeneralAdminNotice'); |
| 1515 |
function ___tagembed__hideGeneralAdminNotice() |
| 1516 |
{ |
| 1517 |
$__tagmebed__page_name = ''; |
| 1518 |
if (!empty($_GET['page'])) : |
| 1519 |
$__tagmebed__page_name = ___tagembed__sanitizeRequestData($_GET); |
| 1520 |
$__tagmebed__page_name = $__tagmebed__page_name['page']; |
| 1521 |
endif; |
| 1522 |
if ('tagembed' == $__tagmebed__page_name) : |
| 1523 |
remove_all_actions('admin_notices'); |
| 1524 |
remove_all_actions('all_admin_notices'); |
| 1525 |
endif; |
| 1526 |
if (!empty(___tagembed__user())) : |
| 1527 |
add_action('admin_notices', '___tagembed__generalAdminNotice'); |
| 1528 |
endif; |
| 1529 |
} |
| 1530 |
/* --End-- Show Admin General Notification After Login And Register */ |
| 1531 |
/* --End-- Drop Database Table */ |
| 1532 |
|
| 1533 |
/* --Start-- Create Short Code */ |
| 1534 |
function ___tagembed__PluginShortCode($__tagembed__shortCodeAttr) |
| 1535 |
{ |
| 1536 |
$__tagembed__shortCodeDefaultAttr = ['width' => '', 'height' => '', 1 => '']; |
| 1537 |
$__tagembed__shortCodeAttr = shortcode_atts($__tagembed__shortCodeDefaultAttr, $__tagembed__shortCodeAttr, 'tagembed'); |
| 1538 |
$width = isset($__tagembed__shortCodeAttr['width']) ? sanitize_text_field($__tagembed__shortCodeAttr['width']) : ''; |
| 1539 |
$height = isset($__tagembed__shortCodeAttr['height']) ? sanitize_text_field($__tagembed__shortCodeAttr['height']) : ''; |
| 1540 |
$widgetId = isset($__tagembed__shortCodeAttr[1]) ? sanitize_text_field($__tagembed__shortCodeAttr[1]) : ''; |
| 1541 |
if (!empty($widgetId) && is_numeric($widgetId) && (('' === $width || preg_match('/^\d+(px|%|)$/', $width)) && ('' === $height || preg_match('/^\d+(px|%|)$/', $height)))) : |
| 1542 |
$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>'; |
| 1543 |
else : |
| 1544 |
$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>'; |
| 1545 |
endif; |
| 1546 |
return $output; |
| 1547 |
} |
| 1548 |
add_shortcode('tagembed', '___tagembed__PluginShortCode'); |
| 1549 |
/* --End-- Create Short Code */ |
| 1550 |
|