PluginProbe
WPBot – AI ChatBot for Live Support, Lead Generation, WordPress Automation, AI Services / 7.1.2
WPBot – AI ChatBot for Live Support, Lead Generation, WordPress Automation, AI Services v7.1.2
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 | includes/simple_text_response.php +41 -130 8.6.07.1.2 View file →
@@ -17,13 +17,13 @@
17 17 elseif(isset($_GET['page']) && $_GET['page']=='simple-text-response' && isset($_GET['action']) && $_GET['action']=='import'):
18 18
19 19 do_action('qcld_str_import');
20 20
21 - elseif(isset($_GET['action']) && wp_unslash($_GET['action'])=='manage-categories'):
21 + elseif(isset($_GET['action']) && $_GET['action']=='manage-categories'):
22 22
23 23 include_once(QCLD_wpCHATBOT_PLUGIN_DIR_PATH.'/includes/templates/manage-categories.php');
24 24
25 - elseif(isset($_GET['action']) && wp_unslash($_GET['action'])=='edit'):
25 + elseif(isset($_GET['action']) && $_GET['action']=='edit'):
26 26
27 27 if(class_exists('Qcld_str_pro')):
28 28 do_action('qcld_str_pro_stredit');
29 29 else:
@@ -28,20 +28,19 @@
28 28 do_action('qcld_str_pro_stredit');
29 29 else:
30 30
31 31 $hasEdit = false;
32 - if(isset($_GET['query']) && wp_unslash($_GET['query'])!=''){
32 + if(isset($_GET['query']) && $_GET['query']!=''){
33 33 $hasEdit = true;
34 - $id = sanitize_text_field(wp_unslash($_GET['query']));
34 + $id = sanitize_text_field($_GET['query']);
35 35 $table = $wpdb->prefix.'wpbot_response';
36 - $data = $wpdb->get_row($wpdb->prepare("select * from {$table} where id = %d", $id)); // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching, PluginCheck.Security.DirectDB.UnescapedDBParameter
36 + $data = $wpdb->get_row($wpdb->prepare("select * from $table where id = %d", $id)); //DB Call OK, No Caching OK
37 37 }
38 38 ?>
39 39 <div class="qcld-wp-chatbot-wrap-header">
40 40
41 - <div class="qcld-wp-chatbot-wrap-header-logo"><a href="#" class="qcld-wp-chatbot-wrap-site__logo"><img style="width:100%" src="<?php echo esc_url( QCLD_wpCHATBOT_IMG_URL . '/chatbot.png' ); ?>" alt="Dialogflow CX"> WPBot Control Panel </a>
42 - <p><strong>Core Version:</strong> v<?php echo esc_html( QCLD_wpCHATBOT_VERSION ); ?></p>
43 - </div>
41 + <a href="#" class="qcld-wp-chatbot-wrap-site__logo"><img style="width:100%" src="<?php echo esc_url( QCLD_wpCHATBOT_IMG_URL . '/chatbot.png' ); ?>" alt="Dialogflow CX"> WPBot Control Panel </a>
42 + <p><strong>Core Version:</strong> v<?php echo QCLD_wpCHATBOT_VERSION; ?></p>
44 43 <ul class="qcld-wp-chatbot-wrap-version-wrapper">
45 44 <li>
46 45 <a class="wpchatbot-Upgrade" href="https://www.wpbot.pro/" target="_blank">Upgrade To Pro</a>
47 46
@@ -54,26 +53,26 @@
54 53 <div class="wpbot_dashboard_header "><h1><?php echo ($hasEdit?'Edit':'Add') ?> Response</h1></div>
55 54 <form method="post" action="">
56 55 <div class="wpbot_addons_section ">
57 56 <div class="wpbot_single_addon_wrapper2">
58 - <p><b><?php esc_html_e('Please note the following ', 'chatbot'); ?></b></p>
57 + <p><b><?php esc_html_e('Please note the following ', 'wpbot'); ?></b></p>
59 58 <ul>
60 - <li> <?php esc_html_e('1. The Query, Response and Keywords fields will be searched. Add Keywords for best matches', 'chatbot'); ?></li>
61 - <li> <?php esc_html_e('2. Please clear browser Cache and Cookies both before testing new responses', 'chatbot'); ?></li>
59 + <li> <?php esc_html_e('1. The Query, Response and Keywords fields will be searched. Add Keywords for best matches', 'wpbot'); ?></li>
60 + <li> <?php esc_html_e('2. Please clear browser Cache and Cookies both before testing new responses', 'wpbot'); ?></li>
62 61 </ul>
63 62 <table class="form-table-str form-table">
64 63 <tbody>
65 64 <tr valign="top">
66 - <th scope="row"><?php esc_html_e('Query', 'chatbot'); ?></th>
65 + <th scope="row"><?php esc_html_e('Query', 'wpbot'); ?></th>
67 66 <td>
68 67 <input name="str_nonce" type="hidden" value="<?php echo sanitize_key( wp_create_nonce('str-nonce') ); ?>" />
69 68 <input type="text" name="qc_bot_str_query" value="<?php echo esc_attr($hasEdit?$data->query:''); ?>" style="width: 100%;" required />
70 - <br><i><?php esc_html_e('*Required. Add the query here. ', 'chatbot'); ?></i>
69 + <br><i><?php esc_html_e('*Required. Add the query here. ', 'wpbot'); ?></i>
71 70 </td>
72 71 </tr>
73 72
74 73 <tr valign="top">
75 - <th scope="row"> <?php esc_html_e('Response', 'chatbot'); ?></th>
74 + <th scope="row"> <?php esc_html_e('Response', 'wpbot'); ?></th>
76 75 <td>
77 76 <?php
78 77
79 78 $content = ($hasEdit?$data->response:'');
@@ -82,9 +81,9 @@
82 81
83 82 wp_editor( $content, $editor_id, $settings );
84 83
85 84 ?>
86 - <br><i><?php esc_html_e('*Required. Add the response here. ', 'chatbot'); ?></i>
85 + <br><i><?php esc_html_e('*Required. Add the response here. ', 'wpbot'); ?></i>
87 86 </td>
88 87 </tr>
89 88 <tr valign="top">
90 89 <th scope="row">Keyword</th>
@@ -89,9 +88,9 @@
89 88 <tr valign="top">
90 89 <th scope="row">Keyword</th>
91 90 <td>
92 91 <input type="text" name="qc_bot_str_keyword" value="<?php echo esc_attr($hasEdit?$data->keyword:''); ?>" style="width: 100%;" />
93 - <br><i> <?php esc_html_e('Optional. Add multiple keyword or phrases as comma(,) seperated value. It will help to find the best match result.', 'chatbot'); ?></i>
92 + <br><i> <?php esc_html_e('Optional. Add multiple keyword or phrases as comma(,) seperated value. It will help to find the best match result.', 'wpbot'); ?></i>
94 93 </td>
95 94 </tr>
96 95
97 96
@@ -119,15 +118,14 @@
119 118 </div>
120 119 </div>
121 120 <?php endif; ?>
122 121
123 -
124 122 <?php else: ?>
125 123
126 124 <div class="qcld-wp-chatbot-wrap-header">
127 125
128 126 <a href="#" class="qcld-wp-chatbot-wrap-site__logo"><img style="width:100%" src="<?php echo esc_url( QCLD_wpCHATBOT_IMG_URL . '/chatbot.png' ); ?>" alt="Dialogflow CX"> WPBot Control Panel </a>
129 - <p><strong>Core Version:</strong> v<?php echo esc_html( QCLD_wpCHATBOT_VERSION ); ?></p>
127 + <p><strong>Core Version:</strong> v<?php echo QCLD_wpCHATBOT_VERSION; ?></p>
130 128 <ul class="qcld-wp-chatbot-wrap-version-wrapper">
131 129 <li>
132 130 <a class="wpchatbot-Upgrade" href="https://www.wpbot.pro/" target="_blank">Upgrade To Pro</a>
133 131
@@ -136,16 +134,16 @@
136 134 </div>
137 135
138 136 <div class="qcld-wp-chatbot-wrap-header_inn">
139 137 <div class="qcld-wp-chatbot-wrap-header_inn_heading">
140 - <h1 class="wp-heading-inline"><?php esc_html_e('Simple Text Responses', 'chatbot'); ?></h1>
141 - <a href="<?php echo esc_url( add_query_arg( 'action', 'edit', admin_url('admin.php?page=simple-text-response') ) ); ?>" class="button page-title-action"><?php esc_html_e('Add New', 'chatbot'); ?></a>
138 + <h1 class="wp-heading-inline"><?php esc_html_e('Simple Text Responses', 'wpbot'); ?></h1>
139 + <a href="<?php echo esc_url( add_query_arg( 'action', 'edit', admin_url('admin.php?page=simple-text-response') ) ); ?>" class="button page-title-action"><?php esc_html_e('Add New', 'wpbot'); ?></a>
142 140 </div>
143 141 <?php if(class_exists('Qcld_str_pro')): ?>
144 142
145 - <a href="<?php echo esc_url( add_query_arg( 'action', 'manage-categories', admin_url('admin.php?page=simple-text-response') ) ); ?>" class="button page-title-action"><?php esc_html_e('Manage Categories', 'chatbot'); ?></a>
146 - <a href="<?php echo esc_url( admin_url( 'admin-post.php?action=qc_str_export' ) ); ?>" class="button page-title-action"><?php esc_html_e('Export', 'chatbot'); ?></a>
147 - <a href="<?php echo esc_url( add_query_arg( 'action', 'import', admin_url('admin.php?page=simple-text-response') ) ); ?>" class="button page-title-action"><?php esc_html_e('Import', 'chatbot'); ?></a>
143 + <a href="<?php echo esc_url( add_query_arg( 'action', 'manage-categories', admin_url('admin.php?page=simple-text-response') ) ); ?>" class="button page-title-action"><?php esc_html_e('Manage Categories', 'wpbot'); ?></a>
144 + <a href="<?php echo esc_url( admin_url( 'admin-post.php?action=qc_str_export' ) ); ?>" class="button page-title-action"><?php esc_html_e('Export', 'wpbot'); ?></a>
145 + <a href="<?php echo esc_url( add_query_arg( 'action', 'import', admin_url('admin.php?page=simple-text-response') ) ); ?>" class="button page-title-action"><?php esc_html_e('Import', 'wpbot'); ?></a>
148 146 </div>
149 147 <?php endif; ?>
150 148 <div class="TextResponsesouter">
151 149 <div class="wrap TextResponses">
@@ -153,53 +151,41 @@
153 151 <div id="qcld-show-more-wrapper-box">
154 152 <div class="qcld-show-more-text qcld-show-more-show-more-height">
155 153
156 154 <div class="wrapTexttop">
157 - <p><?php esc_html_e('Create simple text responses and the ChatBot will use advanced search algorithm to answer user questions. This is a simpler alternative to OpenAI or DialogFlow.', 'chatbot'); ?><br>
158 - <b><?php esc_html_e('NB: Simple Text Responses require mySQL Client version 5.6+', 'chatbot'); ?></b></p>
155 + <p><?php esc_html_e('Create simple text responses and the ChatBot will use advanced search algorithm to answer user questions. This is a simpler alternative to OpenAI or DialogFlow.', 'wpbot'); ?><br>
156 + <b><?php esc_html_e('NB: Simple Text Responses require mySQL Client version 5.6+', 'wpbot'); ?></b></p>
159 157 </div>
160 158 <form method="post" action="">
161 159 <table class="form-table-str form-table">
162 160 <tbody>
163 161 <tr valign="top">
164 - <th scope="row"><?php esc_html_e('Phrase matching accuracy', 'chatbot'); ?></th>
162 + <th scope="row"><?php esc_html_e('Phrase matching accuracy', 'wpbot'); ?></th>
165 163 <td>
166 164 <input name="str_nonce" type="hidden" value="<?php echo sanitize_key( wp_create_nonce('str-nonce') ); ?>" />
167 - <input type="text" name="qc_bot_str_weight" value="<?php echo esc_attr( !empty(get_option('qc_bot_str_weight')) ? get_option('qc_bot_str_weight') : '0.4' ); ?>" style="width: 100%;" required />
168 - <br><i><?php esc_html_e('Please enter a value between 0 to 1. Higher value means more exact matching of phrases.', 'chatbot'); ?></i>
165 + <input type="text" name="qc_bot_str_weight" value="<?php esc_attr_e((get_option('qc_bot_str_weight')!=''?get_option('qc_bot_str_weight'):'0.4')); ?>" style="width: 100%;" required />
166 + <br><i><?php esc_html_e('Please enter a value between 0 to 1. Higher value means more exact matching of phrases.', 'wpbot'); ?></i>
169 167 </td>
170 168 </tr>
171 169 <tr valign="top">
172 - <th scope="row"><?php esc_html_e('Search Fields', 'chatbot'); ?></th>
170 + <th scope="row"><?php esc_html_e('Search Fields', 'wpbot'); ?></th>
173 171 <td>
174 172 <?php
175 173 $fields = get_option('qc_bot_str_fields');
176 174 ?>
177 175
178 - <label for="qc_bot_str_field_title"><?php esc_html_e('Title', 'chatbot'); ?></label>
176 + <label for="qc_bot_str_field_title"><?php esc_html_e('Title', 'wpbot'); ?></label>
179 177 <input id="qc_bot_str_field_title" type="checkbox" name="qc_bot_str_fields[]" value="query" <?php echo (!$fields?'checked="checked"':''); ?> <?php echo ($fields && in_array('query', $fields)?'checked="checked"':''); ?> />
180 178
181 - <label for="qc_bot_str_field_keyword"><?php esc_html_e('Keyword', 'chatbot'); ?></label>
179 + <label for="qc_bot_str_field_keyword"><?php esc_html_e('Keyword', 'wpbot'); ?></label>
182 180 <input id="qc_bot_str_field_keyword" type="checkbox" name="qc_bot_str_fields[]" value="keyword" <?php echo (!$fields?'checked="checked"':''); ?> <?php echo ($fields && in_array('keyword', $fields)?'checked="checked"':''); ?> />
183 181
184 - <label for="qc_bot_str_field_response"><?php esc_html_e('Response', 'chatbot'); ?></label>
182 + <label for="qc_bot_str_field_response"><?php esc_html_e('Response', 'wpbot'); ?></label>
185 183 <input id="qc_bot_str_field_response" type="checkbox" name="qc_bot_str_fields[]" value="response" <?php echo (!$fields?'checked="checked"':''); ?> <?php echo ($fields && in_array('response', $fields)?'checked="checked"':''); ?> />
186 - <br><i><?php esc_html_e('Please check/uncheck to allow/disallow searching in that fields', 'chatbot'); ?></i>
184 + <br><i><?php esc_html_e('Please check/uncheck to allow/disallow searching in that fields', 'wpbot'); ?></i>
187 185 </td>
188 186 </tr>
189 - <?php
190 - $current_user = wp_get_current_user();
191 - if ( in_array( 'administrator', $current_user->roles )) {
192 - ?>
193 - <tr valign="top">
194 - <th scope="row"><?php echo esc_html( 'Allow Author & Editor to edit STR' ); ?></th>
195 - <td>
196 - <input id="qc_bot_str_allow_author_editor" type="checkbox" name="qc_bot_str_allow_author_editor" value="1" <?php echo ( get_option( 'qc_bot_str_allow_author_editor' ) && get_option( 'qc_bot_str_allow_author_editor' ) == 1 ? 'checked="checked"' : '' ); ?> />
197 - <label for="qc_bot_str_allow_author_editor"><?php echo esc_html( 'Allow Author & Editor to edit STR' ); ?></label>
198 - <br><i><?php echo esc_html( 'Please enable to allow Author & Editor to edit STR.' ); ?></i>
199 - </td>
200 - </tr>
201 - <?php } ?>
187 +
202 188 <tr valign="top">
203 189 <th scope="row"></th>
204 190 <td>
205 191 <input type="submit" class="button button-primary" name="submit" id="submit" value="Save Settings">
@@ -211,14 +197,14 @@
211 197 <form method="post" action="">
212 198 <table class="form-table-str form-table">
213 199 <tbody>
214 200 <tr valign="top">
215 - <th scope="row"><?php esc_html_e('Re-Index STR', 'chatbot'); ?></th>
201 + <th scope="row"><?php esc_html_e('Re-Index STR', 'wpbot'); ?></th>
216 202 <td>
217 203 <input name="str_nonce" type="hidden" value="<?php echo sanitize_key( wp_create_nonce('str-nonce') ); ?>" />
218 204 <input type="submit" class="button button-primary" name="qc-re-index" id="re-index" value="Re Index">
219 205
220 - <i><?php esc_html_e('Re-Index if results are not as expected.', 'chatbot'); ?></i>
206 + <i><?php esc_html_e('Re-Index if results are not as expected.', 'wpbot'); ?></i>
221 207 </td>
222 208 </tr>
223 209 </tbody>
224 210 </table>
@@ -226,9 +212,9 @@
226 212
227 213
228 214
229 215 </div>
230 - <div class="qcld-show-more-show-more"><div class="Expandmore">Expand for More Options<span>+</span></div></div>
216 + <div class="qcld-show-more-show-more"><i class="fa fa-plus-circle" aria-hidden="true"></i></div>
231 217 </div>
232 218
233 219 <div id="poststuff">
234 220 <div id="post-body" class="metabox-holder">
@@ -235,9 +221,9 @@
235 221 <div id="post-body-content-edit" class="str-form">
236 222 <div class="meta-box-sortables ui-sortable">
237 223 <form method="post">
238 224
239 - <a href="<?php echo esc_url( add_query_arg( 'action', 'edit', admin_url('admin.php?page=simple-text-response') ) ); ?>" class="button page-title-action str-addnew"><?php esc_html_e('Add New', 'chatbot'); ?></a>
225 + <a href="<?php echo esc_url( add_query_arg( 'action', 'edit', admin_url('admin.php?page=simple-text-response') ) ); ?>" class="button page-title-action str-addnew"><?php esc_html_e('Add New', 'wpbot'); ?></a>
240 226 <?php
241 227 $this->response_list->prepare_items();
242 228 $this->response_list->display(); ?>
243 229 </form>
@@ -250,9 +236,8 @@
250 236 </div>
251 237 <?php endif; ?>
252 238
253 239
254 -
255 240 <style>
256 241 body {
257 242 background-color: #F5F7FD;
258 243 font-family: "DM Sans", sans-serif !important;
@@ -307,8 +292,11 @@
307 292 gap: 12px;
308 293 text-decoration: none;
309 294 margin: 0;
310 295 padding: 0;
296 + font-weight: bold;
297 + color: #5b4e96 !important;
298 + font-size: 24px;
311 299 }
312 300
313 301 a{
314 302 text-decoration: none;
@@ -528,95 +516,18 @@
528 516 background: #5B4E96;
529 517 color: #fff;
530 518 border: 2px solid #5B4E96;
531 519 }
532 -.TextResponsesouter table.widefat {
533 - border: 1px solid #ebebeb;
534 -}
535 -.TextResponsesouter .tablenav {
536 - padding: 8px;
537 - background: #5B4E96;
538 -}
539 -.TextResponsesouter span.displaying-num {
540 - color: #fff;
541 -}
542 520
543 -.TextResponsesouter .tablenav #doaction, .TextResponsesouter .tablenav #doaction2 {
544 - border: 1px solid #ffffff !important;
545 - color: #ffffff !important;
546 -}
547 -
548 -
549 -
550 -.qcld-wp-chatbot-wrap-header-logo {
551 - display: flex;
552 - align-items: center;
553 - gap: 10px;
554 -}
555 -
556 -.qcld-wp-chatbot-wrap-header_inn a.button.page-title-action {
557 - padding: 8px 15px;
558 - background: #ffffff;
559 - color: #5B4E96;
560 - border: 2px solid #5B4E96;
561 - border-radius: 6px;
562 - font-weight: bold;
563 - position: absolute;
564 - top: 30px;
565 - left: 280px;
566 - line-height: normal;
567 - min-height: unset;
568 -}
569 -.qcld-wp-chatbot-wrap-header_inn a.button.page-title-action:hover {
570 - padding: 8px 15px;
571 - background: #5B4E96;
572 - color: #fff;
573 - border: 2px solid #5B4E96;
574 - border-radius: 6px;
575 - font-weight: bold;
576 - position: absolute;
577 - top: 30px;
578 - left: 280px;
579 -}
580 -
581 -.Expandmore {
582 - background: #23ab10;
583 - display: inline-block;
584 - padding: 4px 10px;
585 - font-size: 14px;
586 - border-radius: 6px;
587 - position: relative;
588 - top: 0;
589 -}
590 -
591 -.Collapsemore {
592 - background: #ff0000;
593 - display: inline-block;
594 - padding: 4px 10px;
595 - font-size: 14px;
596 - border-radius: 6px;
597 - position: relative;
598 - top: 0;
599 -
600 -}
601 -
602 -.Expandmore span {
603 - color: #fff;
604 - margin: 0 0 0 8px;
605 - padding: 0 5px;
606 - font-size: 18px;
607 -}
608 521 </style>
609 522
610 523 <script type="text/javascript">
611 524 jQuery(".qcld-show-more-show-more").click(function () {
612 525 if(jQuery(".qcld-show-more-text").hasClass("qcld-show-more-show-more-height")) {
613 - jQuery(this).html('<div class="Collapsemore">Collapse Options</div>');
526 + jQuery(this).html('<i class="fa fa-minus-circle" aria-hidden="true"></i>');
614 527 } else {
615 - jQuery(this).html('<div class="Expandmore">Expand for More Options<span>+</span></div>');
528 + jQuery(this).html('<i class="fa fa-plus-circle" aria-hidden="true"></i>');
616 529 }
617 530
618 531 jQuery(".qcld-show-more-text").toggleClass("qcld-show-more-show-more-height");
619 532 });
620 -
621 -
622 533 </script>