PluginProbe
WPBot – AI ChatBot for Live Support, Lead Generation, WordPress Automation, AI Services / 4.3.7
WPBot – AI ChatBot for Live Support, Lead Generation, WordPress Automation, AI Services v4.3.7
8.7.8 8.7.7 8.7.6 8.7.5 8.7.4 8.7.3 8.7.2 8.7.1 8.7.0 8.6.9 8.6.8 8.6.7 8.6.6 8.6.5 8.6.4 8.6.2 8.6.1 8.6.0 8.5.9 8.5.8 8.5.7 8.5.6 8.5.5 8.5.4 8.5.3 All 534 releases
← All changes | functions.php +461 -381 8.6.54.3.7 View file →
@@ -3,75 +3,20 @@
3 3 * @param $type
4 4 * Display wpwBot Icon ball
5 5 */
6 6 if (!defined('ABSPATH')) exit; // Exit if accessed directly
7 -
8 -
9 -function qcld_custom_search_form( $form ) {
10 - // Add a hidden input to limit search to 'product' post type
11 - if (get_option('wp_chatbot_agent_image') == "custom-agent.png") {
12 - $wp_chatbot_custom_agent_path = get_option('wp_chatbot_custom_agent_path');
13 - } else if (get_option('wp_chatbot_agent_image') != "custom-agent.png") {
14 - $wp_chatbot_custom_agent_path = QCLD_wpCHATBOT_IMG_URL . get_option('wp_chatbot_agent_image');
15 - } else {
16 - $wp_chatbot_custom_agent_path = QCLD_wpCHATBOT_IMG_URL . 'custom-agent.png';
17 - }
18 - $hidden_field = '<a class="wp-chatbot qc_wpbot_chat_link" id="wp-chatbot-search-btn" data-search-type="product" data-search-term="" style="max-height: 50px; margin-left: 10px;padding: 0 !important;position: absolute;top: -9px;right: -60px;"><img src="'. esc_url($wp_chatbot_custom_agent_path) .'" alt=""></a>';
19 - $block_content = str_replace( '</form>', $hidden_field . '</form>', $form );
20 - return $block_content;
21 -}
22 -if(get_option('wpbot_enable_on_search') == 1 && (get_option('disable_floating_button') != '1') && get_option('disable_wp_chatbot') != 1 ){
23 - add_filter( 'get_search_form', 'qcld_custom_search_form' );
24 - add_filter( 'render_block_core/search', 'qcld_modify_gutenberg_search_block', 10, 2 );
25 -}
26 -
27 -
28 -function qcld_modify_gutenberg_search_block( $block_content, $block ) {
29 - // Add a hidden input to limit search to 'product' post type
30 - if (get_option('wp_chatbot_agent_image') == "custom-agent.png") {
31 - $wp_chatbot_custom_agent_path = get_option('wp_chatbot_custom_agent_path');
32 - } else if (get_option('wp_chatbot_agent_image') != "custom-agent.png") {
33 - $wp_chatbot_custom_agent_path = QCLD_wpCHATBOT_IMG_URL . get_option('wp_chatbot_agent_image');
34 - } else {
35 - $wp_chatbot_custom_agent_path = QCLD_wpCHATBOT_IMG_URL . 'custom-agent.png';
36 - }
37 - $hidden_field = '<button type="button" class="wp-chatbot qc_wpbot_chat_link" id="wp-chatbot-search-btn" data-search-type="product" data-search-term="" style="max-height: 50px; margin-left: 10px;padding: 0 !important"><img src="'. esc_url($wp_chatbot_custom_agent_path) .'" alt=""></button>';
38 - // Inject the hidden field before the closing </form> tag
39 - $block_content = str_replace( '</div></form>', $hidden_field . '</div></form>', $block_content );
40 - return $block_content;
41 -}
42 -if(get_option('disable_floating_button') != '1'){
43 - add_action('wp_footer', 'wp_chatbot_load_footer_html');
44 -}
45 -add_action( 'admin_footer', 'qcld_style_for_hide_iframe');
46 -function qcld_style_for_hide_iframe(){
47 -?>
48 - <script>
49 - jQuery( document ).ready(function() {
50 - setInterval(function(){
51 - if(document.querySelector('.wp-block-legacy-widget__edit-preview-iframe')){
52 - document.querySelector('.wp-block-legacy-widget__edit-preview-iframe').addEventListener("load", ev => {
53 - jQuery('.wp-block-legacy-widget__edit-preview-iframe').contents().find('#wp-chatbot-chat-container').hide();
54 - });
55 -
56 - }
57 - }, 500);
58 - });
59 - </script>
60 -<?php
61 -}
7 +add_action('wp_footer', 'wp_chatbot_load_footer_html');
62 8 function wp_chatbot_load_footer_html(){
63 - if ( get_option('disable_wp_chatbot') != 1 && wp_chatbot_load_controlling() === true) {
9 +
10 + if (get_option('disable_wp_chatbot') != 1 && wp_chatbot_load_controlling() === true) {
64 11
65 12 ?>
66 13 <style>
67 14 <?php if(get_option('wp_chatbot_custom_css')!="") {
68 -
69 - echo wp_strip_all_tags( get_option('wp_chatbot_custom_css') );// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
15 + echo get_option('wp_chatbot_custom_css');
70 16 }
71 17 ?>
72 18 </style>
73 -
74 19 <?php if (get_option('qcld_wb_chatbot_change_bg') == 1) {
75 20 if (get_option('qcld_wb_chatbot_board_bg_path') != "") {
76 21 $qcld_wb_chatbot_board_bg_path = get_option('qcld_wb_chatbot_board_bg_path');
77 22 } else {
@@ -79,46 +24,47 @@
79 24 }
80 25 ?>
81 26 <style>
82 27 .wp-chatbot-container {
83 - background-image: url(<?php echo esc_url($qcld_wb_chatbot_board_bg_path); ?>) !important;
28 + background-image: url(<?php echo $qcld_wb_chatbot_board_bg_path;
29 +?>) !important;
84 30 }
85 31 </style>
86 32 <?php }
87 33 $wp_chatbot_enable_rtl = "";
88 - if (get_option('enable_wp_chatbot_rtl') == '1') {
34 + if (get_option('enable_wp_chatbot_rtl')) {
89 35 $wp_chatbot_enable_rtl .= "wp-chatbot-rtl";
90 36 }
91 37 $wp_chatbot_enable_mobile_screen = "";
92 - // if (get_option('enable_wp_chatbot_mobile_full_screen')==1) {
38 + if (get_option('enable_wp_chatbot_mobile_full_screen')==1) {
93 39 $wp_chatbot_enable_mobile_screen .= "wp-chatbot-mobile-full-screen";
94 - // }
40 + }
95 41 ?>
96 - <div id="wp-chatbot-chat-container" class="<?php echo esc_attr($wp_chatbot_enable_rtl .' '.$wp_chatbot_enable_mobile_screen); ?>" style="<?php if(get_option('disable_floating_button') == '1'){ echo 'display:none';} ?>">
42 + <div id="wp-chatbot-chat-container" class="<?php echo $wp_chatbot_enable_rtl .' '.$wp_chatbot_enable_mobile_screen; ?>">
97 43 <div id="wp-chatbot-integration-container">
98 44 <div class="wp-chatbot-integration-button-container">
99 45 <?php if (get_option('enable_wp_chatbot_skype_floating_icon') == 1) { ?>
100 - <a href="skype:<?php echo esc_attr(get_option('enable_wp_chatbot_skype_id')); ?>?chat"><span
101 - class="inetegration-skype-btn" title="<?php esc_attr_e('Skype', 'chatbot'); ?>"> </span></a>
46 + <a href="skype:<?php echo get_option('enable_wp_chatbot_skype_id'); ?>?chat"><span
47 + class="inetegration-skype-btn" title="<?php esc_html_e('Skype', 'wpchatbot'); ?>"> </span></a>
102 48 <?php } ?>
103 49 <?php if (get_option('enable_wp_chatbot_floating_whats') == 1) { ?>
104 - <a href="<?php echo esc_url('https://api.whatsapp.com/send?phone=' . get_option('qlcd_wp_chatbot_whats_num')); ?>"
50 + <a href="<?php echo 'https://api.whatsapp.com/send?phone=' . get_option('qlcd_wp_chatbot_whats_num'); ?>"
105 51 target="_blank"><span class="intergration-whats"
106 - title="<?php esc_html_e('WhatsApp', 'chatbot'); ?>"></span></a>
52 + title="<?php esc_html_e('WhatsApp', 'wpchatbot'); ?>"></span></a>
107 53 <?php } ?>
108 54 <?php if (get_option('enable_wp_chatbot_floating_viber') == 1) { ?>
109 - <a href="<?php echo esc_url('https://live.viber.com/#/' . get_option('qlcd_wp_chatbot_viber_acc')); ?>"
55 + <a href="<?php echo 'https://live.viber.com/#/' . get_option('qlcd_wp_chatbot_viber_acc'); ?>"
110 56 target="_blank"><span class="intergration-viber"
111 - title="<?php esc_html_e('Viber', 'chatbot'); ?>"></span></a>
57 + title="<?php esc_html_e('Viber', 'wpchatbot'); ?>"></span></a>
112 58 <?php } ?>
113 59 <?php if (get_option('enable_wp_chatbot_floating_phone') == 1 && get_option('qlcd_wp_chatbot_phone') != "") { ?>
114 - <a href="tel:<?php echo esc_attr(get_option('qlcd_wp_chatbot_phone')); ?>"><span
60 + <a href="tel:<?php echo get_option('qlcd_wp_chatbot_phone'); ?>"><span
115 61 class="intergration-phone"
116 - title="<?php esc_html_e('Phone', 'chatbot'); ?>"> </span></a>
62 + title="<?php esc_html_e('Phone', 'wpchatbot'); ?>"> </span></a>
117 63 <?php } ?>
118 64 <?php if (get_option('enable_wp_chatbot_floating_link') == 1 && get_option('qlcd_wp_chatbot_weblink') != "") { ?>
119 - <a href="<?php echo esc_url(get_option('qlcd_wp_chatbot_weblink')); ?>" target="_blank"><span
120 - class="intergration-weblink" title="<?php esc_html_e('Web Link', 'chatbot'); ?>"></span></a>
65 + <a href="<?php echo get_option('qlcd_wp_chatbot_weblink'); ?>" target="_blank"><span
66 + class="intergration-weblink" title="<?php esc_html_e('Web Link', 'wpchatbot'); ?>"></span></a>
121 67 <?php } ?>
122 68 </div>
123 69 </div>
124 70 <?php
@@ -131,9 +77,9 @@
131 77 }
132 78 if (file_exists(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . '/templates/' . $qcld_wb_chatbot_theme . '/template.php')) {
133 79 require_once(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . '/templates/' . $qcld_wb_chatbot_theme . '/template.php');
134 80 } else {
135 - echo "<h2>" . esc_html__('No wpWBot Theme Found!', 'chatbot') . "</h2>";
81 + echo "<h2>" . __('No wpWBot Theme Found!', 'wpchatbot') . "</h2>";
136 82 }
137 83 ?>
138 84 <?php
139 85 if (get_option('disable_wp_chatbot_notification') != 1) {
@@ -138,13 +84,11 @@
138 84 <?php
139 85 if (get_option('disable_wp_chatbot_notification') != 1) {
140 86 ?>
141 87 <div id="wp-chatbot-notification-container" class="wp-chatbot-notification-container">
142 - <div class="wp-chatbot-notification-controller">
143 - <span class="wp-chatbot-notification-close">
144 - <?php esc_html_e('X', 'chatbot'); ?>
145 - </span>
146 - </div>
88 + <div class="wp-chatbot-notification-controller"> <span class="wp-chatbot-notification-close">
89 + <?php esc_html_e('X', 'wpchatbot'); ?>
90 + </span></div>
147 91 <?php
148 92 $testingTip="";
149 93 if (get_option('wp_chatbot_agent_image') == "custom-agent.png") {
150 94 $wp_chatbot_custom_agent_path = get_option('wp_chatbot_custom_agent_path');
@@ -155,18 +99,18 @@
155 99 }
156 100 ?>
157 101 <div class="wp-chatbot-notification-agent-profile">
158 102 <div class="wp-chatbot-notification-widget-avatar" ><img
159 - src="<?php echo esc_url($wp_chatbot_custom_agent_path); ?>" alt=""></div>
160 - <div class="wp-chatbot-notification-welcome"><?php echo wp_kses_post(wpb_randmom_message_handle(maybe_unserialize(get_option('qlcd_wp_chatbot_welcome')))) . ' <strong>' . esc_html(get_option('qlcd_wp_chatbot_host')) . '</strong>'; ?></div>
103 + src="<?php echo $wp_chatbot_custom_agent_path; ?>" alt=""></div>
104 + <div class="wp-chatbot-notification-welcome"><?php echo wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_welcome'))) . ' <strong>' . get_option('qlcd_wp_chatbot_host') . '</strong>'; ?></div>
161 105 </div>
162 106 <?php
163 107 //update_option('qlcd_wp_chatbot_notifications','Welcome to WpBot');
164 - $notifications = qcld_wb_chatbot_func_str_replace(wp_kses_post(maybe_unserialize(get_option('qlcd_wp_chatbot_notifications'))));
108 + $notifications = qcld_wb_chatbot_func_str_replace(unserialize(get_option('qlcd_wp_chatbot_notifications')));
165 109
166 110 ?>
167 111
168 - <div class="wp-chatbot-notification-message"><?php echo esc_html($notifications[0]); ?></div>
112 + <div class="wp-chatbot-notification-message"><?php echo $notifications[0]; ?></div>
169 113 </div>
170 114 <?php } ?>
171 115 <!--wp-chatbot-board-container-->
172 116 <div id="wp-chatbot-ball" class="">
@@ -173,10 +117,9 @@
173 117 <div class="wp-chatbot-ball">
174 118 <div class="wp-chatbot-ball-animator wp-chatbot-ball-animation-switch"></div>
175 119 <?php
176 120 if (get_option('wp_chatbot_icon') == "custom.png") {
177 - $wp_chatbot_custom_icon_path = (!empty(get_option('wp_chatbot_custom_icon_path'))) ? get_option('wp_chatbot_custom_icon_path') : QCLD_wpCHATBOT_IMG_URL . 'icon-1.png';
178 -
121 + $wp_chatbot_custom_icon_path = get_option('wp_chatbot_custom_icon_path');
179 122 } else if (get_option('wp_chatbot_icon') != "custom.png") {
180 123 $wp_chatbot_custom_icon_path = QCLD_wpCHATBOT_IMG_URL . get_option('wp_chatbot_icon');
181 124 } else {
182 125 $wp_chatbot_custom_icon_path = QCLD_wpCHATBOT_IMG_URL . 'custom.png';
@@ -181,9 +124,9 @@
181 124 } else {
182 125 $wp_chatbot_custom_icon_path = QCLD_wpCHATBOT_IMG_URL . 'custom.png';
183 126 }
184 127 ?>
185 - <img src="<?php echo esc_url($wp_chatbot_custom_icon_path); ?>"
128 + <img src="<?php echo $wp_chatbot_custom_icon_path; ?>"
186 129 alt="wpChatIcon" qcld_agent="<?php echo esc_url($wp_chatbot_custom_icon_path); ?>" >
187 130
188 131 </div>
189 132 </div>
@@ -196,18 +139,16 @@
196 139 if (get_option('enable_wp_chatbot_messenger') == 1 && get_option('enable_wp_chatbot_messenger_floating_icon') == 1) {
197 140 ?>
198 141 <!-- wp-chatbot-board-container-->
199 142 <script>
200 -
201 143 window.fbAsyncInit = function () {
202 144 FB.init({
203 - appId: '<?php echo esc_js($fb_app_id); ?>',
145 + appId: '<?php echo $fb_app_id;?>',
204 146 autoLogAppEvents: true,
205 147 xfbml: true,
206 148 version: 'v2.12'
207 149 });
208 150 };
209 -
210 151 (function (d, s, id) {
211 152 var js, fjs = d.getElementsByTagName(s)[0];
212 153 if (d.getElementById(id)) return;
213 154 js = d.createElement(s);
@@ -216,13 +157,13 @@
216 157 fjs.parentNode.insertBefore(js, fjs);
217 158 }(document, 'script', 'facebook-jssdk'));
218 159 </script>
219 160 <div class="fb-customerchat"
220 - page_id="<?php echo esc_attr($fb_page_id); ?>"
161 + page_id="<?php echo $fb_page_id; ?>"
221 162 greeting_dialog_display="hide"
222 - theme_color="<?php echo esc_attr($fb_mgs_color); ?>"
223 - logged_in_greeting="<?php echo esc_attr($fb_mgs_in); ?>"
224 - logged_out_greeting="<?php echo esc_attr($fb_mgs_out); ?>"></div>
163 + theme_color="<?php echo $fb_mgs_color; ?>"
164 + logged_in_greeting="<?php echo $fb_mgs_in; ?>"
165 + logged_out_greeting="<?php echo $fb_mgs_out; ?>"></div>
225 166 <?php
226 167 }
227 168 ?>
228 169 <!--container-->
@@ -230,11 +171,11 @@
230 171 </div>
231 172
232 173 <?php
233 174
234 - if ( get_transient( 'qcld_bot_clear_cache' ) ) {
175 + if ( get_transient( 'bot_clear_cache' ) ) {
235 176 echo '<script type="text/javascript">var wpbot_clear_cache = 1 </script>';
236 - delete_transient( 'qcld_bot_clear_cache' );
177 + delete_transient( 'bot_clear_cache' );
237 178 }
238 179
239 180 }else{
240 181 ?>
@@ -304,9 +245,9 @@
304 245 return $wp_chatbot_load;
305 246 }
306 247 //checking Devices
307 248 function wp_chatbot_is_mobile(){
308 - $useragent = isset( $_SERVER['HTTP_USER_AGENT'] ) ? $_SERVER['HTTP_USER_AGENT'] : '';
249 + $useragent = $_SERVER['HTTP_USER_AGENT'];
309 250 if (preg_match('/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i', $useragent) || preg_match('/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i', substr($useragent, 0, 4))) {
310 251 return true;
311 252 } else {
312 253 return false;
@@ -313,13 +254,13 @@
313 254 }
314 255 }
315 256 //Checking wpwbot opening hour
316 257 function wp_chatbot_check_opening_hours(){
317 - $curent_day=strtolower(gmdate('l',strtotime(current_time( 'mysql' ))));
318 - $current_time=gmdate('H:i',strtotime(current_time( 'mysql')));
258 + $curent_day=strtolower(date('l',strtotime(current_time( 'mysql' ))));
259 + $current_time=date('H:i',strtotime(current_time( 'mysql')));
319 260 $is_wpwbot_open =false;
320 261 if(get_option('wpwbot_hours')) {
321 - $wpwbot_times = wp_kses_post(unserialize(get_option('wpwbot_hours')));
262 + $wpwbot_times = unserialize(get_option('wpwbot_hours'));
322 263 if (isset($wpwbot_times[$curent_day])) {
323 264 $day_times = $wpwbot_times[$curent_day];
324 265 if (!empty($day_times)) {
325 266 foreach ($day_times as $day_time) {
@@ -331,8 +272,183 @@
331 272 }
332 273 }
333 274 return $is_wpwbot_open;
334 275 }
276 +//wpwBot shortcode.
277 +add_shortcode('wpwbot', 'wp_chatbot_short_code');
278 +function wp_chatbot_short_code($atts = []){
279 + ob_start();
280 + wp_chatbot_shortcode_dom($atts);
281 + $content = ob_get_clean();
282 + return $content;
283 +}
284 +function wp_chatbot_shortcode_dom($atts){
285 + //Defaults & Set Parameters for shortcode
286 + extract(shortcode_atts(
287 + array(
288 + 'template' => '01',
289 + ), $atts
290 + ));
291 + ?>
292 + <style>
293 + <?php if(get_option('wp_chatbot_custom_css')!=""){echo get_option('wp_chatbot_custom_css'); } ?>
294 + </style>
295 + <?php if (get_option('qcld_wb_chatbot_change_bg') == 1) {
296 + if (get_option('qcld_wb_chatbot_board_bg_path') != "") {
297 + $qcld_wb_chatbot_board_bg_path = get_option('qcld_wb_chatbot_board_bg_path');
298 + } else {
299 + $qcld_wb_chatbot_board_bg_path = QCLD_wpCHATBOT_IMG_URL . 'background/background.png';
300 + }
301 + ?>
302 + <style>
303 + .wp-chatbot-container {
304 + background: url(<?php echo $qcld_wb_chatbot_board_bg_path ;?>) no-repeat top right !important;
305 + }
306 + </style>
307 +<?php }
308 + $wp_chatbot_enable_rtl = "";
309 + if (get_option('enable_wp_chatbot_rtl')) {
310 + $wp_chatbot_enable_rtl .= "wp-chatbot-rtl";
311 + }
312 + ?>
313 + <div id="wp-chatbot-chat-container" class="<?php echo $wp_chatbot_enable_rtl; ?>">
314 + <?php
315 + //Get wpcommerce cart
316 +
317 + $qcld_wb_chatbot_theme = 'template-' . $template;
318 + if (file_exists(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . '/templates/' . $qcld_wb_chatbot_theme . '/style.css')) {
319 + wp_register_style('qcld-wp-chatbot-style', plugins_url(basename(plugin_dir_path(__FILE__)) . '/templates/' . $qcld_wb_chatbot_theme . '/style.css', basename(__FILE__)), '', QCLD_wpCHATBOT_VERSION, 'screen');
320 + wp_enqueue_style('qcld-wp-chatbot-style');
321 + }
322 + if (file_exists(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . '/templates/' . $qcld_wb_chatbot_theme . '/template.php')) {
323 + require_once(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . '/templates/' . $qcld_wb_chatbot_theme . '/template.php');
324 + } else {
325 + echo "<h2>" . __('No wpWBot Theme Found!', 'wpchatbot') . "</h2>";
326 + }
327 + ?>
328 + <?php if (get_option('disable_wp_chatbot') != 1): ?>
329 + <div id="wp-chatbot-notification-container" class="wp-chatbot-notification-container">
330 + <div class="wp-chatbot-notification-controller"> <span class="wp-chatbot-notification-close">X</span> </div>
331 + <?php
332 + if (get_option('wp_chatbot_custom_agent_path') != "" && get_option('wp_chatbot_agent_image') == "custom-agent.png") {
333 + $wp_chatbot_custom_icon_path = get_option('wp_chatbot_custom_agent_path');
334 + } else if (get_option('wp_chatbot_custom_agent_path') != "" && get_option('wp_chatbot_agent_image') != "custom-agent.png") {
335 + $wp_chatbot_custom_icon_path = QCLD_wpCHATBOT_IMG_URL . get_option('wp_chatbot_agent_image');
336 + } else {
337 + $wp_chatbot_custom_icon_path = QCLD_wpCHATBOT_IMG_URL . 'custom-agent.png';
338 + }
339 + ?>
340 + <div class="wp-chatbot-notification-agent-profile">
341 + <div class="wp-chatbot-notification-widget-avatar"><img
342 + src="<?php echo $wp_chatbot_custom_icon_path; ?>" alt=""></div>
343 + <div class="wp-chatbot-notification-welcome"><?php echo wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_welcome'))) . ' <strong>' . get_option('qlcd_wp_chatbot_host') . '</strong>'; ?></div>
344 + </div>
345 + <div class="wp-chatbot-notification-message"><?php echo wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_notifications'))); ?></div>
346 + </div>
347 + <!--wp-chatbot-board-container-->
348 + <div id="wp-chatbot-ball" class="">
349 + <div class="wp-chatbot-ball">
350 + <div class="wp-chatbot-ball-animator wp-chatbot-ball-animation-switch"></div>
351 + <?php
352 + if (get_option('wp_chatbot_custom_icon_path') != "" && get_option('wp_chatbot_icon') == "custom.png") {
353 + $wp_chatbot_custom_icon_path = get_option('wp_chatbot_custom_icon_path');
354 + } else if (get_option('wp_chatbot_custom_icon_path') != "" && get_option('wp_chatbot_icon') != "custom.png") {
355 + $wp_chatbot_custom_icon_path = QCLD_wpCHATBOT_IMG_URL . get_option('wp_chatbot_icon');
356 + } else {
357 + $wp_chatbot_custom_icon_path = QCLD_wpCHATBOT_IMG_URL . 'custom.png';
358 + }
359 + ?>
360 + <img src="<?php echo $wp_chatbot_custom_icon_path; ?>"
361 + alt="wpChatIcon"> <!--<span class="wp-chatbot-ball-cart-items"><?php echo $cart_items_number; ?></span>--> </div>
362 + </div>
363 + <!-- wp-chatbot-board-container-->
364 + <?php endif; ?>
365 + <!--container-->
366 + <!--wp-chatbot-ball-wrapper-->
367 + </div>
368 +<?php } ?>
369 +<?php
370 +//Create shortcode for wpwBot for pages.
371 +add_shortcode('wpbot-page', 'wp_chatbot_page_short_code');
372 +function wp_chatbot_page_short_code(){
373 + ob_start();
374 + wp_chatbot_page_dom();
375 + $content = ob_get_clean();
376 + return $content;
377 +}
378 +function wp_chatbot_page_dom(){ ?>
379 + <style>
380 + <?php if(get_option('wp_chatbot_custom_css')!=""){echo get_option('wp_chatbot_custom_css'); } ?>
381 + </style>
382 + <?php
383 + //Get wpcommerce cart
384 +
385 + $qcld_wb_chatbot_theme = get_option('qcld_wb_chatbot_theme');
386 + $wp_chatbot_enable_rtl = "";
387 + if (get_option('enable_wp_chatbot_rtl') == 1) {
388 + $wp_chatbot_enable_rtl .= "wp-chatbot-rtl";
389 + }
390 + if (file_exists(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . '/templates/' . $qcld_wb_chatbot_theme . '/shortcode.php')) {
391 + require_once(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . '/templates/' . $qcld_wb_chatbot_theme . '/shortcode.php');
392 + } else {
393 + echo "<h2>" . __('No WPBot ShortCode Theme Found!', 'wpchatbot') . "</h2>";
394 + }
395 +}
396 +//shortcode for wpWBot mobile app
397 +add_shortcode('wpwbot_app', 'wp_chatbot_mobile_app_short_code');
398 +function wp_chatbot_mobile_app_short_code(){ ?>
399 + <style>
400 + <?php if(get_option('wp_chatbot_custom_css')!=""){echo get_option('wp_chatbot_custom_css'); } ?>
401 + </style>
402 + <?php if (get_option('qcld_wb_chatbot_change_bg') == 1) {
403 + if (get_option('qcld_wb_chatbot_board_bg_path') != "") {
404 + $qcld_wb_chatbot_board_bg_path = get_option('qcld_wb_chatbot_board_bg_path');
405 + } else {
406 + $qcld_wb_chatbot_board_bg_path = QCLD_wpCHATBOT_IMG_URL . 'background/background.png';
407 + }
408 + ?>
409 + <style>
410 + .wp-chatbot-container {
411 + background: url(<?php echo $qcld_wb_chatbot_board_bg_path ;?>) no-repeat top right !important;
412 + }
413 + </style>
414 +<?php }
415 + $wp_chatbot_enable_rtl = "";
416 + if (get_option('enable_wp_chatbot_rtl')) {
417 + $wp_chatbot_enable_rtl .= "wp-chatbot-rtl";
418 + }
419 + ?>
420 + <div id="wp-chatbot-chat-app-shortcode-container" class="<?php echo $wp_chatbot_enable_rtl; ?>">
421 + <?php
422 + // keep traking app template.
423 + $template_app = 'yes';
424 + //Get wpcommerce cart
425 +
426 + //Handling shortcode enqeue and remove features part.
427 + define('wpCOMMERCE', true);
428 + wp_enqueue_script('jquery');
429 +
430 +
431 + wp_enqueue_script('wc-address-i18n');
432 + wp_enqueue_script('wc-country-select');
433 +
434 +
435 + // add the action
436 + if (isset($_GET['from']) && $_GET['from'] == 'app') {
437 + if (!isset($_COOKIE['from_app'])) {
438 + setcookie('from_app', 'yes', time() + 3600);
439 + }
440 + }
441 + $qcld_wb_chatbot_theme = get_option('qcld_wb_chatbot_theme');
442 + if (file_exists(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . '/templates/' . $qcld_wb_chatbot_theme . '/template.php')) {
443 + require_once(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . '/templates/' . $qcld_wb_chatbot_theme . '/template.php');
444 + } else {
445 + echo "<h2>" . __('No WPBot Theme Found!', 'wpchatbot') . "</h2>";
446 + }
447 + ?>
448 + </div>
449 + <?php
450 +}
335 451
336 452 /**
337 453 * wpwBot Search keyword product
338 454 */
@@ -338,20 +454,13 @@
338 454 */
339 455 add_action('wp_ajax_qcld_wb_chatbot_keyword', 'qcld_wb_chatbot_keyword');
340 456 add_action('wp_ajax_nopriv_qcld_wb_chatbot_keyword', 'qcld_wb_chatbot_keyword');
341 457 function qcld_wb_chatbot_keyword(){
342 - // Verify nonce for security
343 - $nonce = isset($_POST['security']) ? sanitize_text_field(wp_unslash($_POST['security'])) : (isset($_POST['nonce']) ? sanitize_text_field(wp_unslash($_POST['nonce'])) : '');
344 - if ( ! wp_verify_nonce( $nonce, 'wp_chatbot' ) && ! wp_verify_nonce( $nonce, 'qcsecretbotnonceval123qc' ) ) {
345 - wp_send_json_error( array( 'status' => 'fail', 'message' => 'Security check failed.' ) );
346 - wp_die();
347 - }
348 -
349 - $keyword = sanitize_text_field(wp_unslash($_POST['keyword']));
458 + $keyword = sanitize_text_field($_POST['keyword']);
350 459 $product_per_page = get_option('qlcd_wp_chatbot_ppp') != '' ? get_option('qlcd_wp_chatbot_ppp') : 10;
351 460 if (get_option('qlcd_wp_chatbot_search_option') == 'standard') {
352 - $product_orderby = sanitize_text_field(get_option('qlcd_wp_chatbot_product_orderby') != '' ? get_option('qlcd_wp_chatbot_product_orderby') : 'title');
353 - $product_order = sanitize_text_field(get_option('qlcd_wp_chatbot_product_order') != '' ? get_option('qlcd_wp_chatbot_product_order') : 'ASC');
461 + $product_orderby = get_option('qlcd_wp_chatbot_product_orderby') != '' ? get_option('qlcd_wp_chatbot_product_orderby') : 'title';
462 + $product_order = get_option('qlcd_wp_chatbot_product_order') != '' ? get_option('qlcd_wp_chatbot_product_order') : 'ASC';
354 463 //Merging all query together.
355 464 $argu_params = array(
356 465 'post_type' => 'product',
357 466 'post_status' => 'publish',
@@ -393,9 +502,9 @@
393 502 endwhile;
394 503 wp_reset_postdata();
395 504 $html .= '</ul>';
396 505 if ($total_product_num > $product_per_page && $product_per_page > 0 ) {
397 - $html .= '<p style="text-align: center"><button type="button" id="wp-chatbot-loadmore" data-offset="' . $product_per_page . '" data-search-type="product" data-search-term="' . esc_attr($keyword) . '" >' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_load_more')))) . ' <span id="wp-chatbot-loadmore-loader"></span></button> </p>';
506 + $html .= '<p style="text-align: center"><button type="button" id="wp-chatbot-loadmore" data-offset="' . $product_per_page . '" data-search-type="product" data-search-term="' . $keyword . '" >' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_load_more'))) . ' <span id="wp-chatbot-loadmore-loader"></span></button> </p>';
398 507 }
399 508 }
400 509 $html .= '</div>';
401 510 } else if (get_option('qlcd_wp_chatbot_search_option') == 'advanced') {
@@ -423,16 +532,16 @@
423 532 }
424 533 }
425 534 $html .= '</ul>';
426 535 if ($total_product_num > $product_per_page && $product_per_page > 0) {
427 - $html .= '<p style="text-align: center"><button type="button" id="wp-chatbot-loadmore" data-offset="' . $product_per_page . '" data-search-type="product" data-search-term="' . esc_attr($more_product_ids) . '" >' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_load_more')))) . ' <span id="wp-chatbot-loadmore-loader"></span></button> </p>';
536 + $html .= '<p style="text-align: center"><button type="button" id="wp-chatbot-loadmore" data-offset="' . $product_per_page . '" data-search-type="product" data-search-term="' . $more_product_ids . '" >' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_load_more'))) . ' <span id="wp-chatbot-loadmore-loader"></span></button> </p>';
428 537 }
429 538 }
430 539 $html .= '</div>';
431 540 }
432 541 $response = array('html' => $html, 'product_num' => $total_product_num, 'per_page' => $product_per_page);
433 - wp_send_json($response);
434 -
542 + echo wp_send_json($response);
543 + wp_die();
435 544 }
436 545 /**
437 546 * wpwBot Categories
438 547 */
@@ -440,22 +549,23 @@
440 549 add_action('wp_ajax_nopriv_qcld_wb_chatbot_category', 'qcld_wb_chatbot_category');
441 550 function qcld_wb_chatbot_category(){
442 551 $category_type="common";
443 552 if (get_option('wp_chatbot_show_parent_category') != "") {
444 - $terms = get_terms( array( 'taxonomy' => 'product_cat', 'parent' => 0, 'hide_empty' => true, 'fields' => 'all' ) );
553 + $terms = get_terms('product_cat', array('parent' => 0, 'hide_empty' => true, 'fields' => 'all'));
554 +
445 555 } else {
446 - $terms = get_terms( array( 'taxonomy' => 'product_cat', 'hide_empty' => true, 'fields' => 'all' ) );
556 + $terms = get_terms('product_cat', array('hide_empty' => true, 'fields' => 'all'));
447 557 }
448 558 $html = "";
449 559 foreach ($terms as $term) {
450 - $child_terms=get_terms( array( 'taxonomy' => 'product_cat', 'parent' => $term->term_id, 'hide_empty' => true, 'fields' => 'all' ) );
560 + $child_terms=get_terms('product_cat', array('parent' => $term->term_id, 'hide_empty' => true, 'fields' => 'all'));
451 561 if(get_option('wp_chatbot_show_sub_category')==1 && count($child_terms) >0){
452 562 $category_type="hasChilds";
453 563 }
454 564 $html .= '<span class="qcld-chatbot-product-category" data-category-type="' . $category_type . '" data-category-slug="' . $term->slug . '" data-category-id="' . $term->term_id . '">' . $term->name . '</span>';
455 565 }
456 - wp_send_json($html);
457 -
566 + echo wp_send_json($html);
567 + wp_die();
458 568 }
459 569 /**
460 570 * wpwBot Sub categories
461 571 */
@@ -461,16 +571,16 @@
461 571 */
462 572 add_action('wp_ajax_qcld_wb_chatbot_sub_category', 'qcld_wb_chatbot_sub_category');
463 573 add_action('wp_ajax_nopriv_qcld_wb_chatbot_sub_category', 'qcld_wb_chatbot_sub_category');
464 574 function qcld_wb_chatbot_sub_category(){
465 - $parent_id = intval( wp_unslash( $_POST['parent_id'] ) );
466 - $terms = get_terms( array( 'taxonomy' => 'product_cat', 'parent' => $parent_id, 'hide_empty' => true, 'fields' => 'all' ) );
575 + $parent_id = stripslashes($_POST['parent_id']);
576 + $terms = get_terms('product_cat', array('parent' => $parent_id, 'hide_empty' => true, 'fields' => 'all'));
467 577 $html = "";
468 578 foreach ($terms as $term) {
469 579 $html .= '<span class="qcld-chatbot-product-category" data-category-type="common" data-category-slug="' . $term->slug . '" data-category-id="' . $term->term_id . '">' . $term->name . '</span>';
470 580 }
471 - wp_send_json($html);
472 -
581 + echo wp_send_json($html);
582 + wp_die();
473 583 }
474 584 /**
475 585 * wpwBot category product
476 586 */
@@ -476,12 +586,12 @@
476 586 */
477 587 add_action('wp_ajax_qcld_wb_chatbot_category_products', 'qcld_wb_chatbot_category_products');
478 588 add_action('wp_ajax_nopriv_qcld_wb_chatbot_category_products', 'qcld_wb_chatbot_category_products');
479 589 function qcld_wb_chatbot_category_products(){
480 - $category_id = intval( wp_unslash( $_POST['category'] ) );
481 - $product_per_page = sanitize_text_field(get_option('qlcd_wp_chatbot_ppp') != '' ? get_option('qlcd_wp_chatbot_ppp') : 10);
482 - $product_orderby = sanitize_text_field(get_option('qlcd_wp_chatbot_product_orderby') != '' ? get_option('qlcd_wp_chatbot_product_orderby') : 'title');
483 - $product_order = sanitize_text_field(get_option('qlcd_wp_chatbot_product_order') != '' ? get_option('qlcd_wp_chatbot_product_order') : 'ASC');
590 + $category_id = stripslashes($_POST['category']);
591 + $product_per_page = get_option('qlcd_wp_chatbot_ppp') != '' ? get_option('qlcd_wp_chatbot_ppp') : 10;
592 + $product_orderby = get_option('qlcd_wp_chatbot_product_orderby') != '' ? get_option('qlcd_wp_chatbot_product_orderby') : 'title';
593 + $product_order = get_option('qlcd_wp_chatbot_product_order') != '' ? get_option('qlcd_wp_chatbot_product_order') : 'ASC';
484 594 //Merging all query together.
485 595 $argu_params = array(
486 596 'post_type' => 'product',
487 597 'post_status' => 'publish',
@@ -543,9 +653,9 @@
543 653 endwhile;
544 654 wp_reset_postdata();
545 655 $html .= '</ul>';
546 656 if ($total_product_num > $product_per_page && $product_per_page >0) {
547 - $html .= '<p style="text-align: center"><button type="button" id="wp-chatbot-loadmore" data-offset="' . $product_per_page . '" data-search-type="category" data-search-term="' . $category_id . '" >' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_load_more')))) . ' <span id="wp-chatbot-loadmore-loader"></span></button> </p>';
657 + $html .= '<p style="text-align: center"><button type="button" id="wp-chatbot-loadmore" data-offset="' . $product_per_page . '" data-search-type="category" data-search-term="' . $category_id . '" >' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_load_more'))) . ' <span id="wp-chatbot-loadmore-loader"></span></button> </p>';
548 658 }
549 659 $html .= '</div>';
550 660 } else {
551 661 $html = '';
@@ -550,9 +660,10 @@
550 660 } else {
551 661 $html = '';
552 662 }
553 663 $response = array('html' => $html, 'product_num' => $total_product_num, 'per_page' => $product_per_page);
554 - wp_send_json($response);
664 + echo wp_send_json($response);
665 + wp_die();
555 666 }
556 667 /**
557 668 * wpwBot latest, featured, recent product
558 669 */
@@ -558,11 +669,11 @@
558 669 */
559 670 add_action('wp_ajax_qcld_wb_chatbot_featured_products', 'qcld_wb_chatbot_featured_products');
560 671 add_action('wp_ajax_nopriv_qcld_wb_chatbot_featured_products', 'qcld_wb_chatbot_featured_products');
561 672 function qcld_wb_chatbot_featured_products(){
562 - $product_per_page = sanitize_text_field(get_option('qlcd_wp_chatbot_ppp') != '' ? get_option('qlcd_wp_chatbot_ppp') : 10);
563 - $product_orderby = sanitize_text_field(get_option('qlcd_wp_chatbot_product_orderby') != '' ? get_option('qlcd_wp_chatbot_product_orderby') : 'title');
564 - $product_order = sanitize_text_field(get_option('qlcd_wp_chatbot_product_order') != '' ? get_option('qlcd_wp_chatbot_product_order') : 'ASC');
673 + $product_per_page = get_option('qlcd_wp_chatbot_ppp') != '' ? get_option('qlcd_wp_chatbot_ppp') : 10;
674 + $product_orderby = get_option('qlcd_wp_chatbot_product_orderby') != '' ? get_option('qlcd_wp_chatbot_product_orderby') : 'title';
675 + $product_order = get_option('qlcd_wp_chatbot_product_order') != '' ? get_option('qlcd_wp_chatbot_product_order') : 'ASC';
565 676 //get featured products query.
566 677 $argu_params = array('post_status' => 'publish',
567 678 'posts_per_page' => $product_per_page,
568 679 'post_type' => 'product',
@@ -606,14 +717,15 @@
606 717 endwhile;
607 718 wp_reset_postdata();
608 719 $html .= '</ul>';
609 720 if ($total_product_num > $product_per_page) {
610 - $html .= '<p style="text-align: center"><button type="button" id="wp-chatbot-loadmore" data-offset="' . $product_per_page . '" data-search-type="product" data-search-term="featured" >' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_load_more')))) . ' <span id="wp-chatbot-loadmore-loader"></span></button> </p>';
721 + $html .= '<p style="text-align: center"><button type="button" id="wp-chatbot-loadmore" data-offset="' . $product_per_page . '" data-search-type="product" data-search-term="featured" >' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_load_more'))) . ' <span id="wp-chatbot-loadmore-loader"></span></button> </p>';
611 722 }
612 723 }
613 724 $html .= '</div>';
614 725 $response = array('html' => $html, 'product_num' => $total_product_num, 'per_page' => $product_per_page);
615 - wp_send_json($response);
726 + echo wp_send_json($response);
727 + wp_die();
616 728 }
617 729 //Product display controll
618 730 function wp_chatbot_product_controlling($product_id){
619 731 $display_product = true;
@@ -628,11 +740,11 @@
628 740 //Get Sale products
629 741 add_action('wp_ajax_qcld_wb_chatbot_sale_products', 'qcld_wb_chatbot_sale_products');
630 742 add_action('wp_ajax_nopriv_qcld_wb_chatbot_sale_products', 'qcld_wb_chatbot_sale_products');
631 743 function qcld_wb_chatbot_sale_products(){
632 - $product_per_page = sanitize_text_field(get_option('qlcd_wp_chatbot_ppp') != '' ? get_option('qlcd_wp_chatbot_ppp') : 10);
633 - $product_orderby = sanitize_text_field(get_option('qlcd_wp_chatbot_product_orderby') != '' ? get_option('qlcd_wp_chatbot_product_orderby') : 'title');
634 - $product_order = sanitize_text_field(get_option('qlcd_wp_chatbot_product_order') != '' ? get_option('qlcd_wp_chatbot_product_order') : 'ASC');
744 + $product_per_page = get_option('qlcd_wp_chatbot_ppp') != '' ? get_option('qlcd_wp_chatbot_ppp') : 10;
745 + $product_orderby = get_option('qlcd_wp_chatbot_product_orderby') != '' ? get_option('qlcd_wp_chatbot_product_orderby') : 'title';
746 + $product_order = get_option('qlcd_wp_chatbot_product_order') != '' ? get_option('qlcd_wp_chatbot_product_order') : 'ASC';
635 747 //get sale products query.
636 748 $argu_params = array(
637 749 'post_type' => 'product',
638 750 'post_status' => 'publish',
@@ -704,25 +816,26 @@
704 816 endwhile;
705 817 wp_reset_postdata();
706 818 $html .= '</ul>';
707 819 if ($total_product_num > $product_per_page) {
708 - $html .= '<p style="text-align: center"><button type="button" id="wp-chatbot-loadmore" data-offset="' . $product_per_page . '" data-search-type="product" data-search-term="sale" >' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_load_more')))) . ' <span id="wp-chatbot-loadmore-loader"></span></button> </p>';
820 + $html .= '<p style="text-align: center"><button type="button" id="wp-chatbot-loadmore" data-offset="' . $product_per_page . '" data-search-type="product" data-search-term="sale" >' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_load_more'))) . ' <span id="wp-chatbot-loadmore-loader"></span></button> </p>';
709 821 }
710 822 }
711 823 $html .= '</div>';
712 824 $response = array('html' => $html, 'product_num' => $total_product_num, 'per_page' => $product_per_page);
713 - wp_send_json($response);
825 + echo wp_send_json($response);
826 + wp_die();
714 827 }
715 828 //load more
716 829 add_action('wp_ajax_qcld_wb_chatbot_load_more', 'qcld_wb_chatbot_load_more');
717 830 add_action('wp_ajax_nopriv_qcld_wb_chatbot_load_more', 'qcld_wb_chatbot_load_more');
718 831 function qcld_wb_chatbot_load_more(){
719 - $offset = intval( wp_unslash( $_POST['offset'] ) );
720 - $search_type = sanitize_text_field( wp_unslash( $_POST['search_type'] ) );
721 - $search_term = sanitize_text_field( wp_unslash( $_POST['search_term'] ) );
722 - $product_per_page = sanitize_text_field(get_option('qlcd_wp_chatbot_ppp') != '' ? get_option('qlcd_wp_chatbot_ppp') : 10);
723 - $product_orderby = sanitize_text_field(get_option('qlcd_wp_chatbot_product_orderby') != '' ? get_option('qlcd_wp_chatbot_product_orderby') : 'title');
724 - $product_order = sanitize_text_field(get_option('qlcd_wp_chatbot_product_order') != '' ? get_option('qlcd_wp_chatbot_product_order') : 'ASC');
832 + $offset = stripslashes($_POST['offset']);
833 + $search_type = stripslashes($_POST['search_type']);
834 + $search_term = stripslashes($_POST['search_term']);
835 + $product_per_page = get_option('qlcd_wp_chatbot_ppp') != '' ? get_option('qlcd_wp_chatbot_ppp') : 10;
836 + $product_orderby = get_option('qlcd_wp_chatbot_product_orderby') != '' ? get_option('qlcd_wp_chatbot_product_orderby') : 'title';
837 + $product_order = get_option('qlcd_wp_chatbot_product_order') != '' ? get_option('qlcd_wp_chatbot_product_order') : 'ASC';
725 838 $next_offset = intval($product_per_page + $offset);
726 839 if ($search_type == 'product' && $search_term != 'featured' && $search_term != 'sale' && get_option('qlcd_wp_chatbot_search_option') == 'advanced') {
727 840 //if have multiple ids then explode else have single need to array push
728 841 if (strpos($search_term, ',') !== false) {
@@ -844,15 +957,16 @@
844 957 $html .= '';
845 958 }
846 959 $response = array('html' => $html, 'product_num' => $product_num, 'search_term' => $search_term, 'offset' => $next_offset, 'per_page' => $product_per_page);
847 960 }
848 - wp_send_json($response);
961 + echo wp_send_json($response);
962 + wp_die();
849 963 }
850 964 //product details
851 965 add_action('wp_ajax_qcld_wb_chatbot_product_details', 'qcld_wb_chatbot_product_details');
852 966 add_action('wp_ajax_nopriv_qcld_wb_chatbot_product_details', 'qcld_wb_chatbot_product_details');
853 967 function qcld_wb_chatbot_product_details(){
854 - $product_id = intval( wp_unslash( $_POST['wp_chatbot_pid'] ) );
968 + $product_id = stripslashes($_POST['wp_chatbot_pid']);
855 969 //Tracking product view from chat board
856 970 wp_chatbot_view_track_product_by_id($product_id);
857 971 //wpcommerce product factory
858 972 $wc_pf = new WC_Product_Factory();
@@ -880,9 +994,9 @@
880 994 }
881 995 }
882 996 $product_image .= '</ul></div>';
883 997 $product_price = '<p class="wp-chatbot-product-price" id="wp-chatbot-product-price">' . $product->get_price_html() . '</p>';
884 - $product_sku = '<p class="wp-chatbot-product-sku"> ' . __('SKU', 'chatbot') . ' : ' . $product->get_sku() . '</p>';
998 + $product_sku = '<p class="wp-chatbot-product-sku"> ' . __('SKU', 'wpchatbot') . ' : ' . $product->get_sku() . '</p>';
885 999 //if ( $product->is_in_stock() || $product->is_purchasable() )
886 1000 //Handle variable product start
887 1001 $variations = "";
888 1002 $add_cart_button = "";
@@ -923,13 +1037,12 @@
923 1037 } else {
924 1038 $variations .= '<div class="wp-chatbot-variable-' . sanitize_title($name) . '">';
925 1039 $variations .= '<label for="' . sanitize_title($name) . '">' . $title . '</label>';
926 1040 $variations .= '<select id="' . esc_attr(sanitize_title($name)) . '" name="attribute_' . sanitize_title($name) . '" data-attribute_name="attribute_' . sanitize_title($name) . '" class="each_attribute">';
927 - $variations .= '<option value="">' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_choose_option')))) . '</option>';
1041 + $variations .= '<option value="">' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_choose_option'))) . '</option>';
928 1042 foreach ($values as $value) {
929 - $attr_key = 'attribute_' . sanitize_title( $name );
930 - if ( isset( $_REQUEST[ $attr_key ] ) ) { // phpcs:ignore WordPress.Security.NonceVerification
931 - $selected_value = sanitize_text_field( wp_unslash( $_REQUEST[ $attr_key ] ) );
1043 + if (isset($_REQUEST['attribute_' . sanitize_title($name)])) {
1044 + $selected_value = $_REQUEST['attribute_' . sanitize_title($name)];
932 1045 } else {
933 1046 $selected_value = '';
934 1047 }
935 1048 $variations .= '<option value="' . esc_attr(strtolower($value)) . '"' . selected($selected_value, $value, false) . '>' . apply_filters('wpcommerce_variation_option_name', $value) . '</option>';
@@ -936,29 +1049,30 @@
936 1049 }
937 1050 $variations .= '</select></div>';
938 1051 }
939 1052 }
940 - $add_cart_button .= '<input type="button" id="wp-chatbot-variation-add-to-cart" wp-chatbot-product-id="' . $product_id . '" value="' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_add_to_cart')))) . '" variation_id="" />';
1053 + $add_cart_button .= '<input type="button" id="wp-chatbot-variation-add-to-cart" wp-chatbot-product-id="' . $product_id . '" value="' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_add_to_cart'))) . '" variation_id="" />';
941 1054 $add_cart_button .= "<input type='hidden' id='wp-chatbot-variation-data' data-product-variation='" . $variations_data . "' />";
942 1055 } else {
943 - $add_cart_button .= '<input type="button" id="wp-chatbot-add-cart-button" wp-chatbot-product-id="' . $product_id . '" value="' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_add_to_cart')))) . '" />';
1056 + $add_cart_button .= '<input type="button" id="wp-chatbot-add-cart-button" wp-chatbot-product-id="' . $product_id . '" value="' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_add_to_cart'))) . '" />';
944 1057 }
945 1058 //Handle variable product end.
946 - $product_quantity .= '<label for="">' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_quantity')))) . '</label>
1059 + $product_quantity .= '<label for="">' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_quantity'))) . '</label>
947 1060 <input type="number" id="vPQuantity" value="1" />';
948 1061 }
949 1062 //$response=$full_size_image;
950 1063 $response = array('title' => $product_title, 'description' => $product_desc, 'image' => $product_image, 'price' => $product_price, 'sku' => $product_sku, 'quantity' => $product_quantity, 'buttton' => $add_cart_button, 'variation' => $variations, 'type' => $product_type, 'debug' => $debug);
951 - wp_send_json($response);
1064 + echo wp_send_json($response);
1065 + wp_die();
952 1066 }
953 1067 //Add to cart for variable product.
954 -add_action('wp_ajax_qcld_variable_add_to_cart', 'qcld_variable_add_to_cart');
955 -add_action('wp_ajax_nopriv_qcld_variable_add_to_cart', 'qcld_variable_add_to_cart');
956 -function qcld_variable_add_to_cart(){
957 - $product_id = intval( wp_unslash( $_POST['p_id'] ) );
958 - $quantity = intval( wp_unslash( $_POST['quantity'] ) );
959 - $variations_id = intval( wp_unslash( $_POST['variations_id'] ) );
960 - $attrs = isset( $_POST['attributes'] ) ? array_map( 'sanitize_text_field', wp_unslash( (array) $_POST['attributes'] ) ) : array();
1068 +add_action('wp_ajax_variable_add_to_cart', 'qcld_wb_chatbot_variable_add_to_cart');
1069 +add_action('wp_ajax_nopriv_variable_add_to_cart', 'qcld_wb_chatbot_variable_add_to_cart');
1070 +function qcld_wb_chatbot_variable_add_to_cart(){
1071 + $product_id = stripslashes($_POST['p_id']);
1072 + $quantity = stripslashes($_POST['quantity']);
1073 + $variations_id = stripslashes($_POST['variations_id']);
1074 + $attrs = stripslashes($_POST['attributes']);
961 1075 //echo wp_send_json(array('p_id'=>$product_id,'qnty'=>$quantity,'id'=>$variations_id,'att'=>$attrs));
962 1076 $attributes = array();
963 1077 foreach ($attrs as $attr) {
964 1078 $single = explode("#", $attr);
@@ -969,46 +1083,44 @@
969 1083 }
970 1084 global $wpcommerce;
971 1085 $result = $wpcommerce->cart->add_to_cart($product_id, $quantity, $variations_id, $attributes, null);
972 1086 if ($result != false) {
973 - wp_send_json('variable');
1087 + echo wp_send_json('variable');
974 1088 } else {
975 - wp_send_json('error');
1089 + echo wp_send_json('error');
976 1090 }
1091 + wp_die();
977 1092 }
978 1093 //Add to cart for simple product.
979 1094 add_action('wp_ajax_qcld_wb_chatbot_add_to_cart', 'qcld_wb_chatbot_add_to_cart');
980 1095 add_action('wp_ajax_nopriv_qcld_wb_chatbot_add_to_cart', 'qcld_wb_chatbot_add_to_cart');
981 1096 function qcld_wb_chatbot_add_to_cart(){
982 - $product_id = intval( wp_unslash( $_POST['product_id'] ) );
983 - $product_quantity = intval( wp_unslash( $_POST['quantity'] ) );
1097 + $product_id = stripslashes($_POST['product_id']);
1098 + $product_quantity = stripslashes($_POST['quantity']);
984 1099 global $wpcommerce;
985 1100 $result = $wpcommerce->cart->add_to_cart($product_id, $product_quantity);
986 1101 if ($result != false) {
987 - wp_send_json('simple');
1102 + echo wp_send_json('simple');
988 1103 } else {
989 - wp_send_json('error');
1104 + echo wp_send_json('error');
990 1105 }
1106 + wp_die();
991 1107 }
992 1108 //Support part
993 1109 add_action('wp_ajax_qcld_wb_chatbot_support_email', 'qcld_wb_chatbot_support_email');
994 1110 add_action('wp_ajax_nopriv_qcld_wb_chatbot_support_email', 'qcld_wb_chatbot_support_email');
995 1111 function qcld_wb_chatbot_support_email(){
996 - $nonce = isset( $_POST['nonce'] ) ? sanitize_text_field( wp_unslash( $_POST['nonce'] ) ) : '';
997 - if ( ! wp_verify_nonce( $nonce, 'qcsecretbotnonceval123qc' ) ) {
998 - wp_send_json_error( array( 'error' => esc_html__( 'Error: Invalid nonce verification.', 'chatbot' ) ) );
999 - }
1000 - $name = trim(sanitize_text_field(wp_unslash($_POST['name'])));
1001 - $email = sanitize_email(wp_unslash($_POST['email']));
1002 - $message = sanitize_text_field(wp_unslash($_POST['message']));
1003 - $subject = sanitize_text_field(get_option('qlcd_wp_chatbot_email_sub') != '' ? get_option('qlcd_wp_chatbot_email_sub') : 'Support Email from wpWBot by Client');
1112 + $name = trim(sanitize_text_field($_POST['name']));
1113 + $email = sanitize_email($_POST['email']);
1114 + $message = sanitize_text_field($_POST['message']);
1115 + $subject = get_option('qlcd_wp_chatbot_email_sub') != '' ? get_option('qlcd_wp_chatbot_email_sub') : 'Support Email from wpWBot by Client';
1004 1116 //Extract Domain
1005 1117 $url = get_site_url();
1006 - $url = wp_parse_url($url);
1118 + $url = parse_url($url);
1007 1119 $domain = $url['host'];
1008 1120 //$admin_email = "admin@" . $domain;
1009 - $admin_email = sanitize_email(get_option('admin_email'));
1010 - $toEmail = sanitize_email(get_option('qlcd_wp_chatbot_admin_email') != '' ? get_option('qlcd_wp_chatbot_admin_email') : $admin_email);
1121 + $admin_email = get_option('admin_email');
1122 + $toEmail = get_option('qlcd_wp_chatbot_admin_email') != '' ? get_option('qlcd_wp_chatbot_admin_email') : $admin_email;
1011 1123
1012 1124
1013 1125 if(get_option('qlcd_wp_chatbot_from_email') && get_option('qlcd_wp_chatbot_from_email')!=''){
1014 1126 $fromEmail = get_option('qlcd_wp_chatbot_from_email');
@@ -1014,23 +1126,24 @@
1014 1126 $fromEmail = get_option('qlcd_wp_chatbot_from_email');
1015 1127 }else{
1016 1128 $fromEmail = "wordpress@" . $domain;
1017 1129 }
1130 +
1018 1131 //Starting messaging and status.
1019 1132 $response['status'] = 'fail';
1020 - $response['message'] = str_replace('\\', '',wp_kses_post(get_option('qlcd_wp_chatbot_email_fail')));
1133 + $response['message'] = str_replace('\\', '',get_option('qlcd_wp_chatbot_email_fail'));
1021 1134 if (filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
1022 - $response['message'] = wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_invalid_email'))));
1135 + $response['message'] = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_invalid_email')));
1023 1136 $response['status'] = 'fail';
1024 1137 } else {
1025 1138 //build email body
1026 1139 $bodyContent = "";
1027 - $bodyContent .= '<p><strong>' . __('Support Request Details', 'chatbot') . ':</strong></p><hr>';
1028 - $bodyContent .= '<p>' . __('Name', 'chatbot') . ' : ' . $name . '</p>';
1029 - $bodyContent .= '<p>' . __('Email', 'chatbot') . ' : ' . $email . '</p>';
1030 - $bodyContent .= '<p>' . __('Subject', 'chatbot') . ' : ' . $subject . '</p>';
1031 - $bodyContent .= '<p>' . __('Message', 'chatbot') . ' : ' . $message . '</p>';
1032 - $bodyContent .= '<p>' . __('Mail Generated on', 'chatbot') . ': ' . current_time('F j, Y, g:i a') . '</p>';
1140 + $bodyContent .= '<p><strong>' . __('Support Request Details', 'wpchatbot') . ':</strong></p><hr>';
1141 + $bodyContent .= '<p>' . __('Name', 'wpchatbot') . ' : ' . $name . '</p>';
1142 + $bodyContent .= '<p>' . __('Email', 'wpchatbot') . ' : ' . $email . '</p>';
1143 + $bodyContent .= '<p>' . __('Subject', 'wpchatbot') . ' : ' . $subject . '</p>';
1144 + $bodyContent .= '<p>' . __('Message', 'wpchatbot') . ' : ' . $message . '</p>';
1145 + $bodyContent .= '<p>' . __('Mail Generated on', 'wpchatbot') . ': ' . current_time('F j, Y, g:i a') . '</p>';
1033 1146 $to = $toEmail;
1034 1147 $body = $bodyContent;
1035 1148 $headers = array();
1036 1149 $headers[] = 'Content-Type: text/html; charset=UTF-8';
@@ -1038,13 +1151,13 @@
1038 1151 $headers[] = 'Reply-To: ' . $name . ' <' . $email . '>';
1039 1152 $result = wp_mail($to, $subject, $body, $headers);
1040 1153 if ($result) {
1041 1154 $response['status'] = 'success';
1042 - $response['message'] = str_replace('\\', '',wp_kses_post(get_option('qlcd_wp_chatbot_email_sent')));
1155 + $response['message'] = str_replace('\\', '',get_option('qlcd_wp_chatbot_email_sent'));
1043 1156 }
1044 1157
1045 1158 }
1046 - echo wp_json_encode($response);
1159 + echo json_encode($response);
1047 1160 die();
1048 1161 }
1049 1162 //Support Phone
1050 1163 add_action('wp_ajax_qcld_wb_chatbot_support_phone', 'qcld_wb_chatbot_support_phone');
@@ -1049,37 +1162,36 @@
1049 1162 //Support Phone
1050 1163 add_action('wp_ajax_qcld_wb_chatbot_support_phone', 'qcld_wb_chatbot_support_phone');
1051 1164 add_action('wp_ajax_nopriv_qcld_wb_chatbot_support_phone', 'qcld_wb_chatbot_support_phone');
1052 1165 function qcld_wb_chatbot_support_phone(){
1053 - check_ajax_referer('qcsecretbotnonceval123qc', 'nonce');
1054 - $name = trim(sanitize_text_field(wp_unslash($_POST['name'])));
1055 - $phone =sanitize_text_field(wp_unslash($_POST['phone']));
1166 + $name = trim(sanitize_text_field($_POST['name']));
1167 + $phone =sanitize_text_field($_POST['phone']);
1056 1168 $subject = 'WPBot Support Mail Request for Call Back';
1057 1169 //Extract Domain
1058 1170 $url = get_site_url();
1059 - $url = wp_parse_url($url);
1171 + $url = parse_url($url);
1060 1172 $domain = $url['host'];
1061 1173 //$admin_email = "admin@" . $domain;
1062 1174 $admin_email = get_option('admin_email');
1063 - $toEmail = sanitize_email(get_option('qlcd_wp_chatbot_admin_email') != '' ? get_option('qlcd_wp_chatbot_admin_email') : $admin_email);
1175 + $toEmail = get_option('qlcd_wp_chatbot_admin_email') != '' ? get_option('qlcd_wp_chatbot_admin_email') : $admin_email;
1064 1176
1065 1177
1066 1178 if(get_option('qlcd_wp_chatbot_from_email') && get_option('qlcd_wp_chatbot_from_email')!=''){
1067 - $fromEmail = sanitize_email(get_option('qlcd_wp_chatbot_from_email'));
1179 + $fromEmail = get_option('qlcd_wp_chatbot_from_email');
1068 1180 }else{
1069 1181 $fromEmail = "wordpress@" . $domain;
1070 1182 }
1071 1183 //Starting messaging and status.
1072 1184 $response['status'] = 'fail';
1073 - $response['message'] = str_replace('\\', '',wp_kses_post(get_option('qlcd_wp_chatbot_phone_fail')));
1185 + $response['message'] = str_replace('\\', '',get_option('qlcd_wp_chatbot_phone_fail'));
1074 1186 //build email body
1075 1187 $bodyContent = "";
1076 - $bodyContent .= '<p><strong>' . __('Support Request Details', 'chatbot') . ':</strong></p><hr>';
1077 - $bodyContent .= '<p>' . __('Name', 'chatbot') . ' : ' . $name . '</p>';
1078 - $bodyContent .= '<p>' . __('Phone', 'chatbot') . ' : ' . $phone . '</p>';
1079 - $bodyContent .= '<p>' . __('Subject', 'chatbot') . ' : ' . $subject . '</p>';
1080 - $bodyContent .= '<p>' . __('Message', 'chatbot') . ' : ' . __(' Call me at ', 'chatbot'). $phone . '</p>';
1081 - $bodyContent .= '<p>' . __('Mail Generated on', 'chatbot') . ': ' . current_time('F j, Y, g:i a') . '</p>';
1188 + $bodyContent .= '<p><strong>' . __('Support Request Details', 'wpchatbot') . ':</strong></p><hr>';
1189 + $bodyContent .= '<p>' . __('Name', 'wpchatbot') . ' : ' . $name . '</p>';
1190 + $bodyContent .= '<p>' . __('Phone', 'wpchatbot') . ' : ' . $phone . '</p>';
1191 + $bodyContent .= '<p>' . __('Subject', 'wpchatbot') . ' : ' . $subject . '</p>';
1192 + $bodyContent .= '<p>' . __('Message', 'wpchatbot') . ' : ' . __(' Call me at ', 'wpchatbot'). $phone . '</p>';
1193 + $bodyContent .= '<p>' . __('Mail Generated on', 'wpchatbot') . ': ' . current_time('F j, Y, g:i a') . '</p>';
1082 1194 $to = $toEmail;
1083 1195 $body = $bodyContent;
1084 1196 $headers = array();
1085 1197 $headers[] = 'Content-Type: text/html; charset=UTF-8';
@@ -1087,17 +1199,38 @@
1087 1199 $headers[] = 'Reply-To: ' . $name . ' <' . $fromEmail . '>';
1088 1200 $result = wp_mail($to, $subject, $body, $headers);
1089 1201 if ($result) {
1090 1202 $response['status'] = 'success';
1091 - $response['message'] = str_replace('\\', '',wp_kses_post(get_option('qlcd_wp_chatbot_phone_sent')));
1203 + $response['message'] = str_replace('\\', '',get_option('qlcd_wp_chatbot_phone_sent'));
1092 1204 }
1093 - echo wp_json_encode($response);
1205 + echo json_encode($response);
1094 1206 die();
1095 1207 }
1096 -// Order Status part. removed
1097 -
1208 +// Order Status part.
1209 +add_action('wp_ajax_qcld_wb_chatbot_check_user', 'qcld_wb_chatbot_check_user');
1210 +add_action('wp_ajax_nopriv_qcld_wb_chatbot_check_user', 'qcld_wb_chatbot_check_user');
1211 +function qcld_wb_chatbot_check_user(){
1212 + global $wpcommerce;
1213 + $user_name = trim(sanitize_text_field($_POST['user_name']));
1214 + $response = array();
1215 + $response['message'] = "";
1216 + if (username_exists($user_name)) {
1217 + if (get_option('qlcd_wp_chatbot_order_user') == 'login') {
1218 + $response['status'] = "success";
1219 + $response['message'] .= wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_order_username_thanks')));
1220 + $response['html'] .= '<p>' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_order_username_password'))) . '</p>';
1221 + } else if (get_option('qlcd_wp_chatbot_order_user') == 'not_login') {
1222 + $response = get_order_by_username($user_name);
1223 + }
1224 + } else {
1225 + $response['status'] = "fail";
1226 + $response['message'] .= '<strong>' . $user_name . '</strong> ' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_order_username_not_exist')));
1227 + }
1228 + echo wp_send_json($response);
1229 + die();
1230 +}
1098 1231 function wpb_randmom_message_handle($items){
1099 - return $items[wp_rand(0, count($items) - 1)];
1232 + return $items[rand(0, count($items) - 1)];
1100 1233 }
1101 1234 function qcld_wb_chatbot_func_str_replace($messages = array()){
1102 1235 $refined_mesgses = array();
1103 1236 foreach ($messages as $message) {
@@ -1112,21 +1245,22 @@
1112 1245 // First check the nonce, if it fails the function will break
1113 1246 check_ajax_referer('wpwbot-order-nonce', 'security');
1114 1247 // Nonce is checked, get the POST data and sign user on
1115 1248 $info = array();
1116 - $info['user_login'] = trim(sanitize_text_field(wp_unslash($_POST['user_name'])));
1117 - $info['user_password'] = trim(sanitize_text_field(wp_unslash($_POST['user_pass'])));
1249 + $info['user_login'] = trim(sanitize_text_field($_POST['user_name']));
1250 + $info['user_password'] = trim(sanitize_text_field($_POST['user_pass']));
1118 1251 $info['remember'] = true;
1119 1252 $user_signon = wp_signon($info, false);
1120 1253 $response = array();
1121 1254 if (is_wp_error($user_signon)) {
1122 1255 $response['status'] = "fail";
1123 - $response['message'] = wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_order_password_incorrect'))));
1256 + $response['message'] = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_order_password_incorrect')));
1124 1257 } else {
1125 1258 $response = get_order_by_username($info['user_login']);
1126 1259 $response['status'] = "success";
1127 1260 }
1128 - wp_send_json($response);
1261 + echo wp_send_json($response);
1262 + die();
1129 1263 }
1130 1264 add_action('wp_ajax_qcld_wb_chatbot_loged_in_user_orders', 'qcld_wb_chatbot_loged_in_user_orders');
1131 1265 add_action('wp_ajax_nopriv_qcld_wb_chatbot_loged_in_user_orders', 'qcld_wb_chatbot_loged_in_user_orders');
1132 1266 function qcld_wb_chatbot_loged_in_user_orders(){
@@ -1132,9 +1266,10 @@
1132 1266 function qcld_wb_chatbot_loged_in_user_orders(){
1133 1267 $current_user = wp_get_current_user();
1134 1268 $user_name = $current_user->user_login;
1135 1269 $response = get_order_by_username($user_name);
1136 - wp_send_json($response);
1270 + echo wp_send_json($response);
1271 + die();
1137 1272 }
1138 1273 function get_order_by_username($user_name){
1139 1274 global $post;
1140 1275 $response = array();
@@ -1152,28 +1287,28 @@
1152 1287 ));
1153 1288 $response['order_num'] = count($customer_orders);
1154 1289 $order_html = '';
1155 1290 if ($response['order_num'] > 0) {
1156 - $response['message'] .= wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_order_found'))));
1291 + $response['message'] .= wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_order_found')));
1157 1292 $order_html .= '<div class="wp-chatbot-orders-container">
1158 1293 <div class="wp-chatbot-orders-header">
1159 - <div class="order-id">' . __('ID', 'chatbot') . '</div>
1160 - <div class="order-date">' . __('Date', 'chatbot') . ' </div>
1161 - <div class="order-items">' . __('Items', 'chatbot') . '</div>
1162 - <div class="order-status">' . __('Status', 'chatbot') . '</div>
1294 + <div class="order-id">' . __('ID', 'wpchatbot') . '</div>
1295 + <div class="order-date">' . __('Date', 'wpchatbot') . ' </div>
1296 + <div class="order-items">' . __('Items', 'wpchatbot') . '</div>
1297 + <div class="order-status">' . __('Status', 'wpchatbot') . '</div>
1163 1298 </div>';
1164 1299 foreach ($customer_orders as $order) {
1165 1300 //Formatting order summery
1166 1301 if (isset($_COOKIE['from_app']) && $_COOKIE['from_app'] == 'yes') {
1167 - $thanks_page_id = sanitize_text_field(get_option('wp_chatbot_app_order_thankyou'));
1302 + $thanks_page_id = get_option('wp_chatbot_app_order_thankyou');
1168 1303 $thanks_parmanlink = esc_url(get_permalink($thanks_page_id));
1169 1304 $order_url = '<a href="' . $thanks_parmanlink . '?order_id=' . $order->ID . '" >' . $order->ID . '</a>';
1170 1305 } else {
1171 - $order_url = '<a href="' . get_url(get_permalink(get_option('wpcommerce_myaccount_page_id')) . '/view-order/' . $order->ID) . '" target="_blank" >' . $order->ID . '</a>';
1306 + $order_url = '<a href="' . get_permalink(get_option('wpcommerce_myaccount_page_id')) . '/view-order/' . $order->ID . '" target="_blank" >' . $order->ID . '</a>';
1172 1307 }
1173 1308 $order_html .= '<div class="wp-chatbot-orders-single">
1174 1309 <div class="order-id"> ' . $order_url . '</div>
1175 - <div class="order-date"> <p>' . gmdate("m/d/Y", strtotime($order->post_date)) . '</p> </div>
1310 + <div class="order-date"> <p>' . date("m/d/Y", strtotime($order->post_date)) . '</p> </div>
1176 1311 <div class="order-items">';
1177 1312 $singleOrder = new WC_Order($order->ID);
1178 1313 $items = $singleOrder->get_items();
1179 1314 foreach ($items as $item) {
@@ -1186,9 +1321,9 @@
1186 1321 }
1187 1322 $order_html .= '</div>';
1188 1323 } else {
1189 1324 $response['message'] .= get_option('qlcd_wp_chatbot_sorry') . '! <strong>' . $user_name . '</strong>';
1190 - $order_html .= '<p>' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_order_not_found')))) . '</p>';
1325 + $order_html .= '<p>' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_order_not_found'))) . '</p>';
1191 1326 }
1192 1327 $response['html'] = $order_html;
1193 1328 return $response;
1194 1329 }
@@ -1224,10 +1359,10 @@
1224 1359 function qcld_wb_chatbot_recently_viewed_products(){
1225 1360 // Get wpCommerce Global
1226 1361 $_pf = new WC_Product_Factory();
1227 1362 //show post per page.
1228 - $product_per_page = sanitize_text_field(get_option('qlcd_wp_chatbot_ppp') != '' ? get_option('qlcd_wp_chatbot_ppp') : 10);
1229 - $wp_chatbot_product_title = wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_latest_product_welcome'))));
1363 + $product_per_page = get_option('qlcd_wp_chatbot_ppp') != '' ? get_option('qlcd_wp_chatbot_ppp') : 10;
1364 + $wp_chatbot_product_title = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_latest_product_welcome')));
1230 1365 // Get recently viewed product cookies data
1231 1366 $viewed_products = !empty($_COOKIE['wp_chatbot_wpcommerce_recently_viewed']) ? (array)explode('|', $_COOKIE['wp_chatbot_wpcommerce_recently_viewed']) : array();
1232 1367 $viewed_products = array_filter(array_map('absint', $viewed_products));
1233 1368 //get featured products if has.
@@ -1233,9 +1368,9 @@
1233 1368 //get featured products if has.
1234 1369 $featured_products = new WP_Query(array('post_status' => 'publish', 'posts_per_page' => $product_per_page, 'post_type' => 'product', 'tax_query' => array(array('taxonomy' => 'product_visibility', 'field' => 'name', 'terms' => 'featured'))));
1235 1370 //Getting recently vieew products.
1236 1371 if (!empty($viewed_products)) {
1237 - $wp_chatbot_product_title = wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_viewed_product_welcome'))));
1372 + $wp_chatbot_product_title = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_viewed_product_welcome')));
1238 1373 $product_query = new WP_Query(array(
1239 1374 'posts_per_page' => $product_per_page,
1240 1375 'no_found_rows' => 1,
1241 1376 'post_status' => 'publish',
@@ -1243,15 +1378,16 @@
1243 1378 'post__in' => $viewed_products,
1244 1379 ));
1245 1380 //Getting featured products
1246 1381 } else if ($featured_products->post_count > 0) {
1247 - $wp_chatbot_product_title = wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_featured_product_welcome'))));
1382 + $wp_chatbot_product_title = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_featured_product_welcome')));
1248 1383 $product_query = $featured_products;
1249 1384 } else {
1250 - $wp_chatbot_product_title = wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_latest_product_welcome'))));
1385 + $wp_chatbot_product_title = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_latest_product_welcome')));
1251 1386 //Getting recent products
1252 1387 $product_query = new WP_Query(array('post_status' => 'publish', 'posts_per_page' => $product_per_page, 'post_type' => 'product', 'orderby' => 'date', 'order' => 'DESC'));
1253 1388 }
1389 + //$html = '<div class="wp-chatbot-widget-bubble">'.wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_viewed_product_welcome'))).'</div>';
1254 1390 if (get_option('wp_chatbot_custom_agent_path') != "" && get_option('wp_chatbot_agent_image') == "custom-agent.png") {
1255 1391 $wp_chatbot_custom_icon_path = get_option('wp_chatbot_custom_agent_path');
1256 1392 } else if (get_option('wp_chatbot_custom_agent_path') != "" && get_option('wp_chatbot_agent_image') != "custom-agent.png") {
1257 1393 $wp_chatbot_custom_icon_path = QCLD_wpCHATBOT_IMG_URL . get_option('wp_chatbot_agent_image');
@@ -1258,10 +1394,10 @@
1258 1394 } else {
1259 1395 $wp_chatbot_custom_icon_path = QCLD_wpCHATBOT_IMG_URL . 'custom-agent.png';
1260 1396 }
1261 1397 $html = '<div class="wp-chatbot-agent-profile">
1262 - <div class="wp-chatbot-widget-avatar"><img src="' . esc_url($wp_chatbot_custom_icon_path) . '" alt=""></div>
1263 - <div class="wp-chatbot-widget-agent">' . esc_html(get_option('qlcd_wp_chatbot_agent')) . '</div>
1398 + <div class="wp-chatbot-widget-avatar"><img src="' . $wp_chatbot_custom_icon_path . '" alt=""></div>
1399 + <div class="wp-chatbot-widget-agent">' . get_option('qlcd_wp_chatbot_agent') . '</div>
1264 1400 <div class="wp-chatbot-bubble">' . $wp_chatbot_product_title . '</div>
1265 1401 </div>';
1266 1402 if ($product_query->post_count > 0) {
1267 1403 $html .= '<div class="wp-chatbot-products-area">';
@@ -1273,9 +1409,9 @@
1273 1409 $html .= get_the_post_thumbnail(get_the_ID(), 'shop_catalog') . '
1274 1410 <div class="wp-chatbot-product-summary">
1275 1411 <div class="wp-chatbot-product-table">
1276 1412 <div class="wp-chatbot-product-table-cell">
1277 - <h3 class="wp-chatbot-product-title">' . esc_html($product->post->post_title) . '</h3>
1413 + <h3 class="wp-chatbot-product-title">' . $product->post->post_title . '</h3>
1278 1414 <div class="price">' . $product->get_price_html() . '</div>';
1279 1415 $html .= ' </div>
1280 1416 </div>
1281 1417 </div></a>
@@ -1288,9 +1424,10 @@
1288 1424 $html .= '<div class="wp-chatbot-products-area">';
1289 1425 $html .= '<p style="text-align: center">You have no products !';
1290 1426 $html .= '</div>';
1291 1427 }
1292 - wp_send_json($html);
1428 + echo wp_send_json($html);
1429 + die();
1293 1430 }
1294 1431 //Recently viewed product shortcode
1295 1432 add_shortcode('wpwbot_products', 'qcld_wb_chatbot_recently_viewed_shortcode');
1296 1433 function qcld_wb_chatbot_recently_viewed_shortcode(){
@@ -1295,10 +1432,10 @@
1295 1432 add_shortcode('wpwbot_products', 'qcld_wb_chatbot_recently_viewed_shortcode');
1296 1433 function qcld_wb_chatbot_recently_viewed_shortcode(){
1297 1434 // Get wpCommerce Global
1298 1435 $_pf = new WC_Product_Factory();
1299 - $product_per_page = sanitize_text_field(get_option('qlcd_wp_chatbot_ppp') != '' ? get_option('qlcd_wp_chatbot_ppp') : 10);
1300 - $wp_chatbot_product_title = wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_latest_product_welcome'))));
1436 + $product_per_page = get_option('qlcd_wp_chatbot_ppp') != '' ? get_option('qlcd_wp_chatbot_ppp') : 10;
1437 + $wp_chatbot_product_title = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_latest_product_welcome')));
1301 1438 // Get recently viewed product cookies data
1302 1439 $viewed_products = !empty($_COOKIE['wp_chatbot_wpcommerce_recently_viewed']) ? (array)explode('|', $_COOKIE['wp_chatbot_wpcommerce_recently_viewed']) : array();
1303 1440 $viewed_products = array_filter(array_map('absint', $viewed_products));
1304 1441 //get featured products if has.
@@ -1304,9 +1441,9 @@
1304 1441 //get featured products if has.
1305 1442 $featured_products = new WP_Query(array('post_status' => 'publish', 'posts_per_page' => $product_per_page, 'post_type' => 'product', 'tax_query' => array(array('taxonomy' => 'product_visibility', 'field' => 'name', 'terms' => 'featured'))));
1306 1443 //Getting recently vieew products.
1307 1444 if (!empty($viewed_products)) {
1308 - $wp_chatbot_product_title = wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_viewed_product_welcome'))));
1445 + $wp_chatbot_product_title = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_viewed_product_welcome')));
1309 1446 $product_query = new WP_Query(array(
1310 1447 'posts_per_page' => $product_per_page,
1311 1448 'no_found_rows' => 1,
1312 1449 'post_status' => 'publish',
@@ -1314,15 +1451,16 @@
1314 1451 'post__in' => $viewed_products,
1315 1452 ));
1316 1453 //implementing featured products
1317 1454 } else if ($featured_products->post_count > 0) {
1318 - $wp_chatbot_product_title = wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_featured_product_welcome'))));
1455 + $wp_chatbot_product_title = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_featured_product_welcome')));
1319 1456 $product_query = $featured_products;
1320 1457 } else {
1321 - $wp_chatbot_product_title = wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_latest_product_welcome'))));
1458 + $wp_chatbot_product_title = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_latest_product_welcome')));
1322 1459 //Getting recent products
1323 1460 $product_query = new WP_Query(array('post_status' => 'publish', 'posts_per_page' => $product_per_page, 'post_type' => 'product', 'orderby' => 'date', 'order' => 'DESC'));
1324 1461 }
1462 + //$html = '<div class="wp-chatbot-widget-bubble">'.wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_viewed_product_welcome'))).'</div>';
1325 1463 if (get_option('wp_chatbot_custom_agent_path') != "" && get_option('wp_chatbot_agent_image') == "custom-agent.png") {
1326 1464 $wp_chatbot_custom_icon_path = get_option('wp_chatbot_custom_agent_path');
1327 1465 } else if (get_option('wp_chatbot_custom_agent_path') != "" && get_option('wp_chatbot_agent_image') != "custom-agent.png") {
1328 1466 $wp_chatbot_custom_icon_path = QCLD_wpCHATBOT_IMG_URL . get_option('wp_chatbot_agent_image');
@@ -1329,11 +1467,11 @@
1329 1467 } else {
1330 1468 $wp_chatbot_custom_icon_path = QCLD_wpCHATBOT_IMG_URL . 'custom-agent.png';
1331 1469 }
1332 1470 $html = '<div class="wp-chatbot-agent-profile">
1333 - <div class="wp-chatbot-widget-avatar"><img src="' . esc_url($wp_chatbot_custom_icon_path) . '" alt=""></div>
1334 - <div class="wp-chatbot-widget-agent">' . esc_html(get_option('qlcd_wp_chatbot_agent')) . '</div>
1335 - <div class="wp-chatbot-bubble">' . esc_html($wp_chatbot_product_title) . '</div>
1471 + <div class="wp-chatbot-widget-avatar"><img src="' . $wp_chatbot_custom_icon_path . '" alt=""></div>
1472 + <div class="wp-chatbot-widget-agent">' . get_option('qlcd_wp_chatbot_agent') . '</div>
1473 + <div class="wp-chatbot-bubble">' . $wp_chatbot_product_title . '</div>
1336 1474 </div>';
1337 1475 if ($product_query->post_count > 0) {
1338 1476 $html .= '<div class="wp-chatbot-products-area">';
1339 1477 $html .= '<ul class="wp-chatbot-products">';
@@ -1344,9 +1482,9 @@
1344 1482 $html .= get_the_post_thumbnail(get_the_ID(), 'shop_catalog') . '
1345 1483 <div class="wp-chatbot-product-summary">
1346 1484 <div class="wp-chatbot-product-table">
1347 1485 <div class="wp-chatbot-product-table-cell">
1348 - <h3 class="wp-chatbot-product-title">' . esc_html($product->post->post_title) . '</h3>
1486 + <h3 class="wp-chatbot-product-title">' . $product->post->post_title . '</h3>
1349 1487 <div class="price">' . $product->get_price_html() . '</div>';
1350 1488 $html .= ' </div>
1351 1489 </div>
1352 1490 </div></a>
@@ -1356,9 +1494,9 @@
1356 1494 wp_reset_postdata();
1357 1495 $html .= '</ul></div>';
1358 1496 } else {
1359 1497 $html .= '<div class="wp-chatbot-products-area">';
1360 - $html .= '<p style="text-align: center">' . __('You have no products', 'chatbot') . ' !';
1498 + $html .= '<p style="text-align: center">' . __('You have no products', 'wpchatbot') . ' !';
1361 1499 $html .= '</div>';
1362 1500 }
1363 1501 return $html;
1364 1502 }
@@ -1372,10 +1510,11 @@
1372 1510 $checkout_url = wc_get_checkout_url();
1373 1511 //$checkout_url = $wpcommerce->cart->get_checkout_url();
1374 1512 $items = $wpcommerce->cart->get_cart();
1375 1513 $itemCount = $wpcommerce->cart->cart_contents_count;
1376 - $cart_title = wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_shopping_cart'))));
1377 - $no_cart_item_msg = wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_no_cart_items'))));
1514 + $cart_title = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_shopping_cart')));
1515 + $no_cart_item_msg = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_no_cart_items')));
1516 + //$html = '<div class="wp-chatbot-widget-bubble">'.wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_welcome'))).'</div>';
1378 1517 if (get_option('wp_chatbot_custom_agent_path') != "" && get_option('wp_chatbot_agent_image') == "custom-agent.png") {
1379 1518 $wp_chatbot_custom_icon_path = get_option('wp_chatbot_custom_agent_path');
1380 1519 } else if (get_option('wp_chatbot_custom_agent_path') != "" && get_option('wp_chatbot_agent_image') != "custom-agent.png") {
1381 1520 $wp_chatbot_custom_icon_path = QCLD_wpCHATBOT_IMG_URL . get_option('wp_chatbot_agent_image');
@@ -1382,15 +1521,15 @@
1382 1521 } else {
1383 1522 $wp_chatbot_custom_icon_path = QCLD_wpCHATBOT_IMG_URL . 'custom-agent.png';
1384 1523 }
1385 1524 $html = '<div class="wp-chatbot-agent-profile">
1386 - <div class="wp-chatbot-widget-avatar"><img src="' . esc_url($wp_chatbot_custom_icon_path) . '" alt=""></div>
1387 - <div class="wp-chatbot-widget-agent">' . esc_html(get_option('qlcd_wp_chatbot_agent')) . '</div>
1388 - <div class="wp-chatbot-bubble">' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_welcome')))) . '</div>
1525 + <div class="wp-chatbot-widget-avatar"><img src="' . $wp_chatbot_custom_icon_path . '" alt=""></div>
1526 + <div class="wp-chatbot-widget-agent">' . get_option('qlcd_wp_chatbot_agent') . '</div>
1527 + <div class="wp-chatbot-bubble">' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_welcome'))) . '</div>
1389 1528 </div>';
1390 1529 if ($itemCount >= 1) {
1391 1530 $html .= '<div class ="wp-chatbot-cart-container">';
1392 - $html .= '<div class="wp-chatbot-cart-header"><div class="qcld-wp-chatbot-cell">' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_title')))) . '</div><div class="qcld-wp-chatbot-cell">' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_quantity')))) . '</div><div class="qcld-wp-chatbot-cell">' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_price')))) . '</div><div class="qcld-wp-chatbot-cell"></div></div>';
1531 + $html .= '<div class="wp-chatbot-cart-header"><div class="qcld-wp-chatbot-cell">' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_title'))) . '</div><div class="qcld-wp-chatbot-cell">' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_quantity'))) . '</div><div class="qcld-wp-chatbot-cell">' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_price'))) . '</div><div class="qcld-wp-chatbot-cell"></div></div>';
1393 1532 $html .= '<div class ="wp-chatbot-cart-body">';
1394 1533 foreach ($items as $item => $values) {
1395 1534 $cart_item= apply_filters('wpcommerce_cart_item_product', $values['data'], $values, $item);
1396 1535 //product image
@@ -1408,9 +1547,9 @@
1408 1547 <div class="qcld-wp-chatbot-cell"></div>
1409 1548 <div class="qcld-wp-chatbot-cell"><strong>Total</strong></div>
1410 1549 <div class="qcld-wp-chatbot-cell"><strong>' . $wpcommerce->cart->get_cart_total() . '</strong></div>
1411 1550 </div>';
1412 - $html .= '<div class="wp-chatbot-cart-footer"><div class="qcld-wp-chatbot-cart-page"><a class="wp-chatbot-cart-link" href="' . $cart_url . '" target="_blank" >' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_link')))) . '</a></div><div class="qcld-wp-chatbot-checkout"><a class="wp-chatbot-checkout-link" href="' . $checkout_url . '" target="_blank" >' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_checkout_link')))) . '</a></div></div>';
1551 + $html .= '<div class="wp-chatbot-cart-footer"><div class="qcld-wp-chatbot-cart-page"><a class="wp-chatbot-cart-link" href="' . $cart_url . '" target="_blank" >' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_link'))) . '</a></div><div class="qcld-wp-chatbot-checkout"><a class="wp-chatbot-checkout-link" href="' . $checkout_url . '" target="_blank" >' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_checkout_link'))) . '</a></div></div>';
1413 1552 $html .= ' </div>';
1414 1553 } else {
1415 1554 $html .= '<div class="wp-chatbot-cart-container">';
1416 1555 $html .= '<div><p style="text-align:center">' . $no_cart_item_msg . '</p></div>';
@@ -1416,9 +1555,10 @@
1416 1555 $html .= '<div><p style="text-align:center">' . $no_cart_item_msg . '</p></div>';
1417 1556 $html .= '</div>';
1418 1557 }
1419 1558 $response = array('html' => $html, 'items' => $itemCount);
1420 - wp_send_json($response);
1559 + echo wp_send_json($response);
1560 + wp_die();
1421 1561 }
1422 1562 //cart onley for wp chatbot
1423 1563 add_action('wp_ajax_qcld_wb_chatbot_only_cart', 'qcld_wb_chatbot_only_cart');
1424 1564 add_action('wp_ajax_nopriv_qcld_wb_chatbot_only_cart', 'qcld_wb_chatbot_only_cart');
@@ -1429,14 +1569,14 @@
1429 1569 $checkout_url = wc_get_checkout_url();
1430 1570 //$checkout_url = $wpcommerce->cart->get_checkout_url();
1431 1571 $items = $wpcommerce->cart->get_cart();
1432 1572 $itemCount = $wpcommerce->cart->cart_contents_count;
1433 - $no_cart_item_msg = wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_no_cart_items'))));
1573 + $no_cart_item_msg = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_no_cart_items')));
1434 1574
1435 1575 $html = '';
1436 1576 if ($itemCount >= 1) {
1437 1577 $html .= '<div class ="wp-chatbot-cart-container">';
1438 - $html .= '<div class="wp-chatbot-cart-header"><div class="qcld-wp-chatbot-cell">' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_title')))) . '</div><div class="qcld-wp-chatbot-cell">' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_quantity')))) . '</div><div class="qcld-wp-chatbot-cell">' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_price')))) . '</div><div class="qcld-wp-chatbot-cell"></div></div>';
1578 + $html .= '<div class="wp-chatbot-cart-header"><div class="qcld-wp-chatbot-cell">' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_title'))) . '</div><div class="qcld-wp-chatbot-cell">' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_quantity'))) . '</div><div class="qcld-wp-chatbot-cell">' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_price'))) . '</div><div class="qcld-wp-chatbot-cell"></div></div>';
1439 1579 $html .= '<div class ="wp-chatbot-cart-body">';
1440 1580 foreach ($items as $item => $values) {
1441 1581 $cart_item= apply_filters('wpcommerce_cart_item_product', $values['data'], $values, $item);
1442 1582 //product image
@@ -1454,17 +1594,18 @@
1454 1594 <div class="qcld-wp-chatbot-cell"></div>
1455 1595 <div class="qcld-wp-chatbot-cell"><strong>Total</strong></div>
1456 1596 <div class="qcld-wp-chatbot-cell"><strong>' . $wpcommerce->cart->get_cart_total() . '</strong></div>
1457 1597 </div>';
1458 - $html .= '<div class="wp-chatbot-cart-footer"><div class="qcld-wp-chatbot-cart-page"><a class="wp-chatbot-cart-link" href="' . $cart_url . '" target="_blank" >' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_link')))) . '</a></div><div class="qcld-wp-chatbot-checkout"><a class="wp-chatbot-checkout-link" href="' . $checkout_url . '" target="_blank" >' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_checkout_link')))) . '</a></div></div>';
1598 + $html .= '<div class="wp-chatbot-cart-footer"><div class="qcld-wp-chatbot-cart-page"><a class="wp-chatbot-cart-link" href="' . $cart_url . '" target="_blank" >' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_link'))) . '</a></div><div class="qcld-wp-chatbot-checkout"><a class="wp-chatbot-checkout-link" href="' . $checkout_url . '" target="_blank" >' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_checkout_link'))) . '</a></div></div>';
1459 1599 $html .= ' </div>';
1460 1600 } else {
1461 1601 $html .= '<div class="wp-chatbot-cart-container">';
1462 - $html .= '<div><p style="text-align:center">' . esc_html($no_cart_item_msg) . '</p></div>';
1602 + $html .= '<div><p style="text-align:center">' . $no_cart_item_msg . '</p></div>';
1463 1603 $html .= '</div>';
1464 1604 }
1465 1605 $response = array('html' => $html, 'items' => $itemCount);
1466 - wp_send_json($response);
1606 + echo wp_send_json($response);
1607 + wp_die();
1467 1608 }
1468 1609 //Cart show Shortcode
1469 1610 add_shortcode('wpwbot_cart', 'qcld_wb_chatbot_cart_shortcode');
1470 1611 function qcld_wb_chatbot_cart_shortcode(){
@@ -1470,10 +1611,11 @@
1470 1611 function qcld_wb_chatbot_cart_shortcode(){
1471 1612 global $wpcommerce;
1472 1613 $items = $wpcommerce->cart->get_cart();
1473 1614 $itemCount = $wpcommerce->cart->cart_contents_count;
1474 - $cart_title = wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_shopping_cart'))));
1475 - $no_cart_item_msg = wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_no_cart_items'))));
1615 + $cart_title = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_shopping_cart')));
1616 + $no_cart_item_msg = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_no_cart_items')));
1617 + // $html = '<div class="wp-chatbot-widget-bubble">'.wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_welcome'))).'</div>';
1476 1618 if (get_option('wp_chatbot_custom_agent_path') != "" && get_option('wp_chatbot_agent_image') == "custom-agent.png") {
1477 1619 $wp_chatbot_custom_icon_path = get_option('wp_chatbot_custom_agent_path');
1478 1620 } else if (get_option('wp_chatbot_custom_agent_path') != "" && get_option('wp_chatbot_agent_image') != "custom-agent.png") {
1479 1621 $wp_chatbot_custom_icon_path = QCLD_wpCHATBOT_IMG_URL . get_option('wp_chatbot_agent_image');
@@ -1480,15 +1622,15 @@
1480 1622 } else {
1481 1623 $wp_chatbot_custom_icon_path = QCLD_wpCHATBOT_IMG_URL . 'custom-agent.png';
1482 1624 }
1483 1625 $html = '<div class="wp-chatbot-agent-profile">
1484 - <div class="wp-chatbot-widget-avatar"><img src="' . esc_url($wp_chatbot_custom_icon_path) . '" alt=""></div>
1485 - <div class="wp-chatbot-widget-agent">' . esc_html(get_option('qlcd_wp_chatbot_agent')) . '</div>
1486 - <div class="wp-chatbot-bubble">' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_welcome')))) . '</div>
1626 + <div class="wp-chatbot-widget-avatar"><img src="' . $wp_chatbot_custom_icon_path . '" alt=""></div>
1627 + <div class="wp-chatbot-widget-agent">' . get_option('qlcd_wp_chatbot_agent') . '</div>
1628 + <div class="wp-chatbot-bubble">' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_welcome'))) . '</div>
1487 1629 </div>';
1488 1630 if ($itemCount >= 1) {
1489 1631 $html .= '<div class ="wp-chatbot-cart-container">';
1490 - $html .= '<div class="wp-chatbot-cart-header"><div class="qcld-wp-chatbot-cell">' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_title')))) . '</div><div class="qcld-wp-chatbot-cell">' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_quantity')))) . '</div><div class="qcld-wp-chatbot-cell">' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_price')))) . '</div> <div class="qcld-wp-chatbot-cell"></div> </div>';
1632 + $html .= '<div class="wp-chatbot-cart-header"><div class="qcld-wp-chatbot-cell">' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_title'))) . '</div><div class="qcld-wp-chatbot-cell">' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_quantity'))) . '</div><div class="qcld-wp-chatbot-cell">' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_price'))) . '</div> <div class="qcld-wp-chatbot-cell"></div> </div>';
1491 1633 $html .= '<div class ="wp-chatbot-cart-body">';
1492 1634 foreach ($items as $item => $values) {
1493 1635 $cart_item = apply_filters('wpcommerce_cart_item_product', $values['data'], $values, $item);
1494 1636 //product image
@@ -1506,9 +1648,9 @@
1506 1648 <div class="qcld-wp-chatbot-cell"></div>
1507 1649 <div class="qcld-wp-chatbot-cell"><strong>Total</strong></div>
1508 1650 <div class="qcld-wp-chatbot-cell"><strong>' . $wpcommerce->cart->get_cart_total() . '</strong></div>
1509 1651 </div>';
1510 - $html .= '<div class="wp-chatbot-cart-footer"><div class="qcld-wp-chatbot-cart-page"><a href="' . site_url() . '/cart" target="_blank" >' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_link')))) . '</a></div><div class="qcld-wp-chatbot-checkout"><a href="' . site_url() . '/checkout" target="_blank">' . wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_checkout_link')))) . '</a></div></div>';
1652 + $html .= '<div class="wp-chatbot-cart-footer"><div class="qcld-wp-chatbot-cart-page"><a href="' . site_url() . '/cart" target="_blank" >' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_cart_link'))) . '</a></div><div class="qcld-wp-chatbot-checkout"><a href="' . site_url() . '/checkout" target="_blank">' . wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_checkout_link'))) . '</a></div></div>';
1511 1653 $html .= ' </div>';
1512 1654 } else {
1513 1655 $html .= '<div class="wp-chatbot-cart-container">';
1514 1656 $html .= '<div><p style="text-align:center">' . $no_cart_item_msg . '</p></div>';
@@ -1520,26 +1662,26 @@
1520 1662 //Updating the cart items.
1521 1663 add_action('wp_ajax_qcld_wb_chatbot_update_cart_item_number', 'qcld_wb_chatbot_update_cart_item_number');
1522 1664 add_action('wp_ajax_nopriv_qcld_wb_chatbot_update_cart_item_number', 'qcld_wb_chatbot_update_cart_item_number');
1523 1665 function qcld_wb_chatbot_update_cart_item_number(){
1524 - check_ajax_referer( 'wp_chatbot', 'nonce' );
1525 1666 //getting cart items n
1526 - $cart_item_key = sanitize_text_field(wp_unslash($_POST['cart_item_key']));
1527 - $qnty = sanitize_text_field(wp_unslash($_POST['qnty']));
1667 + $cart_item_key = sanitize_text_field($_POST['cart_item_key']);
1668 + $qnty = sanitize_text_field($_POST['qnty']);
1528 1669 global $wpcommerce;
1529 1670 $result = $wpcommerce->cart->set_quantity($cart_item_key, $qnty);
1530 - wp_send_json($result);
1671 + echo wp_send_json($result);
1672 + wp_die();
1531 1673 }
1532 1674 //Show item after removing from cart page.
1533 1675 add_action('wp_ajax_qcld_wb_chatbot_cart_item_remove', 'qcld_wb_chatbot_cart_item_remove');
1534 1676 add_action('wp_ajax_nopriv_qcld_wb_chatbot_cart_item_remove', 'qcld_wb_chatbot_cart_item_remove');
1535 1677 function qcld_wb_chatbot_cart_item_remove(){
1536 - check_ajax_referer( 'wp_chatbot', 'nonce' );
1537 1678 //getting cart items n
1538 - $cart_item_key = sanitize_text_field(wp_unslash($_POST['cart_item']));
1679 + $cart_item_key = sanitize_text_field($_POST['cart_item']);
1539 1680 global $wpcommerce;
1540 1681 $result = $wpcommerce->cart->remove_cart_item($cart_item_key);
1541 - wp_send_json($result);
1682 + echo wp_send_json($result);
1683 + wp_die();
1542 1684 }
1543 1685 //Show cart page by shortcode.
1544 1686 add_action('wp_ajax_qcld_wb_chatbot_cart_page', 'qcld_wb_chatbot_cart_page');
1545 1687 add_action('wp_ajax_nopriv_qcld_wb_chatbot_cart_page', 'qcld_wb_chatbot_cart_page');
@@ -1547,13 +1689,14 @@
1547 1689 global $wpcommerce;
1548 1690 $itemCount = $wpcommerce->cart->cart_contents_count;
1549 1691 $html = "";
1550 1692 if ($itemCount < 0) {
1551 - $html .= wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_no_cart_items'))));
1693 + $html .= wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_no_cart_items')));
1552 1694 } else {
1553 1695 $html .= do_shortcode("[wpcommerce_cart]");
1554 1696 }
1555 - wp_send_json($html);
1697 + echo wp_send_json($html);
1698 + wp_die();
1556 1699 }
1557 1700 //Show checkout page by shortcode.
1558 1701 add_action('wp_ajax_qcld_wb_chatbot_checkout_page', 'qcld_wb_chatbot_checkout_page');
1559 1702 add_action('wp_ajax_nopriv_qcld_wb_chatbot_checkout_page', 'qcld_wb_chatbot_checkout_page');
@@ -1562,9 +1705,9 @@
1562 1705 $itemCount = $wpcommerce->cart->cart_contents_count;
1563 1706 $html = "";
1564 1707 if ($itemCount < 0) {
1565 1708 $status = 'no';
1566 - $html .= wp_kses_post(wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_no_cart_items'))));
1709 + $html .= wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_no_cart_items')));
1567 1710 } else {
1568 1711 $status = 'yes';
1569 1712 $checkout_page_id = get_option('wp_chatbot_app_checkout');
1570 1713 $checkout_parmanlink = esc_url(get_permalink($checkout_page_id));
@@ -1570,12 +1713,13 @@
1570 1713 $checkout_parmanlink = esc_url(get_permalink($checkout_page_id));
1571 1714 $html .= $checkout_parmanlink;
1572 1715 }
1573 1716 $response = array('status' => $status, 'html' => $html);
1574 - wp_send_json($response);
1717 + echo wp_send_json($response);
1718 + wp_die();
1575 1719 }
1576 1720 //_dynamic_intent
1577 -function qcld_dynamic_intent(){
1721 +function qc_dynamic_intent(){
1578 1722 global $wpdb;
1579 1723 $intents = array();
1580 1724
1581 1725 $ai_df = get_option('enable_wp_chatbot_dailogflow');
@@ -1592,10 +1736,9 @@
1592 1736
1593 1737 if(class_exists('Qcformbuilder_Forms_Admin')){
1594 1738
1595 1739
1596 - $results = $wpdb->get_results($wpdb->prepare("SELECT * FROM ". $wpdb->prefix."wfb_forms WHERE type= %s",'primary')); // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching
1597 -
1740 + $results = $wpdb->get_results("SELECT * FROM ". $wpdb->prefix."wfb_forms where 1 and type='primary'");
1598 1741 if(!empty($results)){
1599 1742
1600 1743 foreach($results as $result){
1601 1744 $form = maybe_unserialize($result->config);
@@ -1613,28 +1756,30 @@
1613 1756
1614 1757 }
1615 1758
1616 1759 //User login on Checkout page.
1617 -// add_action('wp_ajax_qcld_wb_chatbot_checkout_user_login', 'qcld_wb_chatbot_checkout_user_login');
1618 -// add_action('wp_ajax_nopriv_qcld_wb_chatbot_checkout_user_login', 'qcld_wb_chatbot_checkout_user_login');
1619 -// function qcld_wb_chatbot_checkout_user_login(){
1620 -// // Nonce is checked, get the POST data and sign user on
1621 -// $info = array();
1622 -// //$info['nonce'] = $_POST['nonce_val'];
1623 -// $info['user_login'] = trim(sanitize_text_field(wp_unslash($_POST['user_name'])));
1624 -// $info['user_password'] = trim(sanitize_text_field(wp_unslash($_POST['user_pass'])));
1625 -// $info['remember'] = true;
1626 -// $user_signon = wp_signon($info, false);
1627 -// // $response=$info;
1628 -// $response = array();
1629 -// if (is_wp_error($user_signon)) {
1630 -// // $response['status'] = "fail";
1631 -// $response = "no";
1632 -// } else {
1633 -// $response = "yes";
1634 -// }
1635 -// wp_send_json($response);
1636 -// }
1760 +add_action('wp_ajax_qcld_wb_chatbot_checkout_user_login', 'qcld_wb_chatbot_checkout_user_login');
1761 +add_action('wp_ajax_nopriv_qcld_wb_chatbot_checkout_user_login', 'qcld_wb_chatbot_checkout_user_login');
1762 +function qcld_wb_chatbot_checkout_user_login(){
1763 + // Nonce is checked, get the POST data and sign user on
1764 + $info = array();
1765 + //$info['nonce'] = $_POST['nonce_val'];
1766 + $info['user_login'] = trim(sanitize_text_field($_POST['user_name']));
1767 + $info['user_password'] = trim(sanitize_text_field($_POST['user_pass']));
1768 + $info['remember'] = true;
1769 + $user_signon = wp_signon($info, false);
1770 + // $response=$info;
1771 + $response = array();
1772 + if (is_wp_error($user_signon)) {
1773 + // $response['status'] = "fail";
1774 + // $response['message'] = wpb_randmom_message_handle(unserialize(get_option('qlcd_wp_chatbot_order_password_incorrect')));
1775 + $response = "no";
1776 + } else {
1777 + $response = "yes";
1778 + }
1779 + echo wp_send_json($response);
1780 + die();
1781 +}
1637 1782 // Load template for App Order Thank You page url
1638 1783 function wp_chatbot_load_app_template($template){
1639 1784 if (is_page('wpwbot-mobile-app')) {
1640 1785 return dirname(__FILE__) . '/templates/app-templates/app.php';
@@ -1663,16 +1808,15 @@
1663 1808 add_action('init', 'wp_chatbot_create_app_checkout_thankyou_page');
1664 1809 function wp_chatbot_create_app_checkout_thankyou_page(){
1665 1810 if (get_option('wp_chatbot_app_pages') == 1) {
1666 1811 //Mobile App page create
1667 - $existing_app = new WP_Query( array( 'post_type' => 'page', 'name' => 'wpwbot-mobile-app', 'post_status' => 'publish', 'posts_per_page' => 1 ) );
1668 - if ( ! $existing_app->have_posts() ) {
1812 + if (get_page_by_title('wpwBot Mobile App') == NULL) {
1669 1813 //post status and options
1670 1814 $app_page = array(
1671 1815 'comment_status' => 'closed',
1672 1816 'ping_status' => 'closed',
1673 1817 'post_author' => get_current_user_id(),
1674 - 'post_date' => gmdate('Y-m-d H:i:s'),
1818 + 'post_date' => date('Y-m-d H:i:s'),
1675 1819 'post_status' => 'publish',
1676 1820 'post_title' => 'wpwBot Mobile App',
1677 1821 'post_name' => 'wpwbot-mobile-app',
1678 1822 'post_type' => 'page',
@@ -1682,16 +1826,15 @@
1682 1826 //save the id in the database
1683 1827 update_option('wp_chatbot_app_checkout', $wpwbot_app);
1684 1828 }
1685 1829 //App checkout page create
1686 - $existing_checkout = new WP_Query( array( 'post_type' => 'page', 'name' => 'wpwbot-app-checkout', 'post_status' => 'publish', 'posts_per_page' => 1 ) );
1687 - if ( ! $existing_checkout->have_posts() ) {
1830 + if (get_page_by_title('wpwBot App Checkout') == NULL) {
1688 1831 //post status and options
1689 1832 $checkout_page = array(
1690 1833 'comment_status' => 'closed',
1691 1834 'ping_status' => 'closed',
1692 1835 'post_author' => get_current_user_id(),
1693 - 'post_date' => gmdate('Y-m-d H:i:s'),
1836 + 'post_date' => date('Y-m-d H:i:s'),
1694 1837 'post_status' => 'publish',
1695 1838 'post_title' => 'wpwBot App Checkout',
1696 1839 'post_name' => 'wpwbot-app-checkout',
1697 1840 'post_type' => 'page',
@@ -1701,16 +1844,15 @@
1701 1844 //save the id in the database
1702 1845 update_option('wp_chatbot_app_checkout', $app_checkout);
1703 1846 }
1704 1847 //App Order thank you page create
1705 - $existing_thankyou = new WP_Query( array( 'post_type' => 'page', 'name' => 'wpwbot-app-order-thankyou', 'post_status' => 'publish', 'posts_per_page' => 1 ) );
1706 - if ( ! $existing_thankyou->have_posts() ) {
1848 + if (get_page_by_title('wpwBot App Order Thank You') == NULL) {
1707 1849 //post status and options
1708 1850 $thankyou_page = array(
1709 1851 'comment_status' => 'closed',
1710 1852 'ping_status' => 'closed',
1711 1853 'post_author' => get_current_user_id(),
1712 - 'post_date' => gmdate('Y-m-d H:i:s'),
1854 + 'post_date' => date('Y-m-d H:i:s'),
1713 1855 'post_status' => 'publish',
1714 1856 'post_title' => 'wpwBot App Order Thank You',
1715 1857 'post_name' => 'wpwbot-app-order-thankyou',
1716 1858 'post_type' => 'page',
@@ -1721,9 +1863,9 @@
1721 1863 update_option('wp_chatbot_app_order_thankyou', $app_order_thankyou);
1722 1864 }
1723 1865 }
1724 1866 //Keep tracking from App by cookies
1725 - if ( isset( $_GET['from'] ) && sanitize_text_field( wp_unslash( $_GET['from'] ) ) === 'app' ) { // phpcs:ignore WordPress.Security.NonceVerification
1867 + if (isset($_GET['from']) && $_GET['from'] == 'app') {
1726 1868 if (!isset($_COOKIE['from_app'])) {
1727 1869 setcookie('from_app', 'yes', (time() + 3600), '/');
1728 1870 }
1729 1871 }
@@ -1737,9 +1879,9 @@
1737 1879 global $wp;
1738 1880 if (is_checkout() && !empty($wp->query_vars['order-received'])) {
1739 1881 $thanks_page_id = get_option('wp_chatbot_app_order_thankyou');
1740 1882 $thanks_parmanlink = esc_url(get_permalink($thanks_page_id));
1741 - wp_safe_redirect($thanks_parmanlink . '?order_id=' . $order_get_id);
1883 + wp_redirect($thanks_parmanlink . '?order_id=' . $order_get_id);
1742 1884 exit;
1743 1885 }
1744 1886 } else {
1745 1887 remove_action('wpcommerce_thankyou', 'qcld_wb_chatbot__redirect_after_purchase');
@@ -1747,12 +1889,9 @@
1747 1889 }
1748 1890 }
1749 1891
1750 1892 function qcld_choose_random($array){
1751 - if (is_array($array) && !empty($array)) {
1752 - return $array[array_rand($array)];
1753 - }
1754 - return $array;
1893 + return $array[array_rand($array)];
1755 1894 }
1756 1895
1757 1896 //User session count
1758 1897 add_action('wp_ajax_qcld_wb_chatbot_session_count', 'qcld_wb_chatbot_session_count');
@@ -1758,9 +1897,8 @@
1758 1897 add_action('wp_ajax_qcld_wb_chatbot_session_count', 'qcld_wb_chatbot_session_count');
1759 1898 add_action('wp_ajax_nopriv_qcld_wb_chatbot_session_count', 'qcld_wb_chatbot_session_count');
1760 1899 function qcld_wb_chatbot_session_count(){
1761 1900 // Nonce is checked, get the POST data and sign user on
1762 - check_ajax_referer( 'wp_chatbot', 'nonce' );
1763 1901 global $wpdb;
1764 1902 $wpdb->show_errors = true;
1765 1903 $tableuser = $wpdb->prefix.'wpbot_sessions';
1766 1904 $response = array();
@@ -1765,12 +1903,11 @@
1765 1903 $tableuser = $wpdb->prefix.'wpbot_sessions';
1766 1904 $response = array();
1767 1905
1768 1906
1769 - $session_exists = $wpdb->get_row($wpdb->prepare("select * from {$tableuser} where 1 and id = %d",1)); // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching, PluginCheck.Security.DirectDB.UnescapedDBParameter
1770 -
1907 + $session_exists = $wpdb->get_row("select * from $tableuser where 1 and id = '1'");
1771 1908 if(empty($session_exists)){
1772 - $wpdb->insert( // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery
1909 + $wpdb->insert(
1773 1910 $tableuser,
1774 1911 array(
1775 1912 'session' => 1,
1776 1913 )
@@ -1777,10 +1914,9 @@
1777 1914 );
1778 1915 }else{
1779 1916
1780 1917 $session_id = $session_exists->id;
1781 -
1782 - $wpdb->update( // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching
1918 + $wpdb->update(
1783 1919 $tableuser,
1784 1920 array(
1785 1921 'session'=>($session_exists->session+1),
1786 1922 ),
@@ -1789,18 +1925,18 @@
1789 1925 '%d',
1790 1926 ),
1791 1927 array('%d')
1792 1928 );
1793 -
1794 1929 }
1795 1930
1796 - wp_send_json($response);
1931 + echo wp_send_json($response);
1932 + die();
1797 1933 }
1798 1934
1799 1935 /* WPBot Chat History Addon check */
1800 1936 function qcld_wpbot_is_active_chat_history(){
1801 1937
1802 - if(function_exists('qcwp_chat_session_menu_fnc') || function_exists('qcwp_chat_session_menu_fnc_free') || function_exists( 'qcpdcs_chat_session_menu_fnc' ) ){
1938 + if(function_exists('qcwp_chat_session_menu_fnc') || function_exists( 'qcpdcs_chat_session_menu_fnc' ) ){
1803 1939 return 1;
1804 1940 }else{
1805 1941 return 0;
1806 1942 }
@@ -1806,9 +1942,9 @@
1806 1942 }
1807 1943
1808 1944 }
1809 1945
1810 -function qcld_wpbot_input_validation( $data ) {
1946 +function qc_wpbot_input_validation( $data ) {
1811 1947 $data = html_entity_decode($data);
1812 1948 $data = trim($data);
1813 1949 $data = stripslashes($data);
1814 1950 $data = htmlspecialchars($data);
@@ -1813,23 +1949,16 @@
1813 1949 $data = stripslashes($data);
1814 1950 $data = htmlspecialchars($data);
1815 1951 return $data;
1816 1952 }
1817 -add_action('wp_ajax_qcld_small_talk_import', 'qcld_small_talk_import');
1818 -function qcld_small_talk_import(){
1819 - if ( ! current_user_can( 'manage_options' ) ) {
1820 - wp_die();
1821 - }
1953 +add_action('wp_ajax_small_talk_import', 'small_talk_import');
1954 +function small_talk_import(){
1822 1955 global $wpdb;
1823 -
1824 1956 $table = $wpdb->prefix.'wpbot_response';
1825 -
1826 1957 $csvFile = file(QCLD_wpCHATBOT_PLUGIN_DIR_PATH . 'small_talk.csv');
1827 -
1828 1958 foreach ($csvFile as $line) {
1829 1959 $line = str_getcsv($line, ',', '"');
1830 - $wpdb->insert( // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery
1831 - $table, array(
1960 + $wpdb->insert($table, array(
1832 1961 'query' => $line[0],
1833 1962 'keyword' => $line[1],
1834 1963 'response' => $line[2],
1835 1964 'category'=> $line[3],
@@ -1836,60 +1965,11 @@
1836 1965 'intent'=> '',
1837 1966 //'lang'=> 'en_US',
1838 1967 ));
1839 1968 }
1840 -
1841 1969 $table2 = $wpdb->prefix.'wpbot_response_category';
1842 -
1843 - $wpdb->insert( // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery
1844 - $table2, array(
1970 + $wpdb->insert($table2, array(
1845 1971 'name' => 'smalltalk',
1846 1972 ));
1847 -
1848 1973 update_option( 'qcld_small_talk_imported', 'yes' );
1849 1974
1850 -}
1851 -function sanitize_array( &$array ) {
1852 - if (!empty($array)) {
1853 - foreach ($array as &$value) {
1854 - if( !is_array($value) )
1855 - // sanitize if value is not an array
1856 - $value = sanitize_text_field( esc_html($value) );
1857 - else
1858 - // go inside this function again
1859 - sanitize_array(esc_html($value));
1860 - }
1861 - }
1862 - return $array;
1863 -}
1864 -function qcld_wpbot_meta_tags() {
1865 - echo '<!-- "This site uses ChatBot for WordPress - WPBot from https://www.wpbot.pro/" -->';
1866 -}
1867 -add_action('wp_footer', 'qcld_wpbot_meta_tags', 100);
1868 -
1869 -if ( ! function_exists( 'qcld_change_language_from_center' ) ) {
1870 - add_action( 'wp_ajax_qcld_change_language_from_center', 'qcld_change_language_from_center' );
1871 - add_action( 'wp_ajax_nopriv_qcld_change_language_from_center', 'qcld_change_language_from_center' );
1872 - function qcld_change_language_from_center() {
1873 - if ( ! current_user_can( 'manage_options' ) ) {
1874 - wp_send_json_error( array( 'message' => 'Unauthorized.' ) );
1875 - }
1876 - $nonce = isset( $_POST['nonce'] ) ? sanitize_text_field( wp_unslash( $_POST['nonce'] ) ) : '';
1877 - if ( ! wp_verify_nonce( $nonce, 'wp_chatbot' ) ) {
1878 - wp_send_json_error( array( 'message' => 'Invalid nonce.' ) );
1879 - }
1880 - $plugin_path = plugin_dir_path( __FILE__ );
1881 - include $plugin_path . 'includes/admin/settings-fields.php';
1882 - $json_file_path = $plugin_path . 'includes/language-center.json';
1883 -
1884 - $json_string = file_get_contents( $json_file_path );
1885 - if ( isset( $_POST['language'] ) ) {
1886 - $language = sanitize_text_field( wp_unslash( $_POST['language'] ) );
1887 - $language_array= json_decode($json_string)->$language;
1888 - update_option( 'wp_chatbot_language_center_language', $language );
1889 - wp_send_json_success( array( 'message' => true, 'data' => $language_array, 'language' => $language ) );
1890 - } else {
1891 - wp_send_json_error( array( 'message' => 'Language not specified.' ) );
1892 -
1893 - }
1894 - }
1895 -}
1975 +}