Version Description
2015-12-10 = * Improved spam checking mechanism * Added "Collect browser details" option for better antispam protection * Fixed custom contact forms checking for AJAX requests * Minor translations fixes
Download this release
Release Info
Developer | Vlad Cleantalk |
Plugin | Spam protection, AntiSpam, FireWall by CleanTalk |
Version | 5.34 |
Comparing to | |
See all releases |
Code changes from version 5.33.1 to 5.34
- cleantalk.php +14 -6
- i18n/cleantalk-da_DK.mo +0 -0
- i18n/cleantalk-de_DE.mo +0 -0
- i18n/cleantalk-es_ES.mo +0 -0
- i18n/cleantalk-fr_FR.mo +0 -0
- i18n/cleantalk-pl_PL.mo +0 -0
- i18n/cleantalk-pt_PT.mo +0 -0
- i18n/cleantalk-ru_RU.mo +0 -0
- inc/cleantalk-admin.php +65 -14
- inc/cleantalk-ajax.php +24 -1
- inc/cleantalk-common.php +17 -3
- inc/cleantalk-public.php +51 -8
- readme.txt +14 -2
cleantalk.php
CHANGED
@@ -3,11 +3,11 @@
|
|
3 |
Plugin Name: Anti-Spam by CleanTalk
|
4 |
Plugin URI: http://cleantalk.org
|
5 |
Description: Max power, all-in-one, captcha less, premium anti-spam plugin. No comment spam, no registration spam, no contact spam, protects any WordPress forms.
|
6 |
-
Version: 5.
|
7 |
Author: СleanTalk <welcome@cleantalk.org>
|
8 |
Author URI: http://cleantalk.org
|
9 |
*/
|
10 |
-
$cleantalk_plugin_version='5.
|
11 |
$cleantalk_executed=false;
|
12 |
|
13 |
if(defined('CLEANTALK_AJAX_USE_BUFFER'))
|
@@ -48,10 +48,12 @@ if(!defined('CLEANTALK_PLUGIN_DIR')){
|
|
48 |
{
|
49 |
$value=0;
|
50 |
}
|
51 |
-
|
|
|
52 |
{
|
53 |
$is_sfw_check=true;
|
54 |
$ip=cleantalk_get_ip();
|
|
|
55 |
for($i=0;$i<sizeof($ip);$i++)
|
56 |
{
|
57 |
if(isset($_COOKIE['ct_sfw_pass_key']) && $_COOKIE['ct_sfw_pass_key']==md5($ip[$i].$ct_options['apikey']))
|
@@ -130,7 +132,8 @@ if(!defined('CLEANTALK_PLUGIN_DIR')){
|
|
130 |
register_deactivation_hook( __FILE__, 'ct_deactivation' );
|
131 |
|
132 |
// After plugin loaded - to load locale as described in manual
|
133 |
-
add_action( '
|
|
|
134 |
|
135 |
if(isset($ct_options['use_ajax']))
|
136 |
{
|
@@ -188,8 +191,13 @@ if(!defined('CLEANTALK_PLUGIN_DIR')){
|
|
188 |
}
|
189 |
if (defined( 'DOING_AJAX' ) && DOING_AJAX||isset($_POST['cma-action']))
|
190 |
{
|
|
|
191 |
require_once(CLEANTALK_PLUGIN_DIR . 'inc/cleantalk-public.php');
|
192 |
require_once(CLEANTALK_PLUGIN_DIR . 'inc/cleantalk-ajax.php');
|
|
|
|
|
|
|
|
|
193 |
}
|
194 |
|
195 |
add_action('admin_enqueue_scripts', 'ct_enqueue_scripts');
|
@@ -334,7 +342,7 @@ function ct_add_nocache_script_header()
|
|
334 |
{
|
335 |
global $ct_options;
|
336 |
$ct_options=ct_get_options();
|
337 |
-
if(
|
338 |
{
|
339 |
$ct_info_flag="var ct_info_flag=true;\n";
|
340 |
}
|
@@ -350,7 +358,7 @@ function ct_inject_nocache_script($html)
|
|
350 |
{
|
351 |
global $test_external_forms, $cleantalk_plugin_version, $ct_options;
|
352 |
$ct_options=ct_get_options();
|
353 |
-
if(
|
354 |
{
|
355 |
$ct_info_flag="var ct_info_flag=true;\n";
|
356 |
}
|
3 |
Plugin Name: Anti-Spam by CleanTalk
|
4 |
Plugin URI: http://cleantalk.org
|
5 |
Description: Max power, all-in-one, captcha less, premium anti-spam plugin. No comment spam, no registration spam, no contact spam, protects any WordPress forms.
|
6 |
+
Version: 5.34
|
7 |
Author: СleanTalk <welcome@cleantalk.org>
|
8 |
Author URI: http://cleantalk.org
|
9 |
*/
|
10 |
+
$cleantalk_plugin_version='5.34';
|
11 |
$cleantalk_executed=false;
|
12 |
|
13 |
if(defined('CLEANTALK_AJAX_USE_BUFFER'))
|
48 |
{
|
49 |
$value=0;
|
50 |
}
|
51 |
+
|
52 |
+
if($value==1 && !is_admin() && stripos($_SERVER['REQUEST_URI'],'/wp-admin/')===false || $value==1 && defined( 'DOING_AJAX' ) && DOING_AJAX)
|
53 |
{
|
54 |
$is_sfw_check=true;
|
55 |
$ip=cleantalk_get_ip();
|
56 |
+
|
57 |
for($i=0;$i<sizeof($ip);$i++)
|
58 |
{
|
59 |
if(isset($_COOKIE['ct_sfw_pass_key']) && $_COOKIE['ct_sfw_pass_key']==md5($ip[$i].$ct_options['apikey']))
|
132 |
register_deactivation_hook( __FILE__, 'ct_deactivation' );
|
133 |
|
134 |
// After plugin loaded - to load locale as described in manual
|
135 |
+
add_action( 'ct_init', 'ct_plugin_loaded' );
|
136 |
+
ct_plugin_loaded();
|
137 |
|
138 |
if(isset($ct_options['use_ajax']))
|
139 |
{
|
191 |
}
|
192 |
if (defined( 'DOING_AJAX' ) && DOING_AJAX||isset($_POST['cma-action']))
|
193 |
{
|
194 |
+
$cleantalk_hooked_actions=Array();
|
195 |
require_once(CLEANTALK_PLUGIN_DIR . 'inc/cleantalk-public.php');
|
196 |
require_once(CLEANTALK_PLUGIN_DIR . 'inc/cleantalk-ajax.php');
|
197 |
+
if(isset($_POST['action'])&&!in_array($_POST['action'],$cleantalk_hooked_actions))
|
198 |
+
{
|
199 |
+
ct_ajax_hook();
|
200 |
+
}
|
201 |
}
|
202 |
|
203 |
add_action('admin_enqueue_scripts', 'ct_enqueue_scripts');
|
342 |
{
|
343 |
global $ct_options;
|
344 |
$ct_options=ct_get_options();
|
345 |
+
if(@intval($ct_options['collect_details'])==1)
|
346 |
{
|
347 |
$ct_info_flag="var ct_info_flag=true;\n";
|
348 |
}
|
358 |
{
|
359 |
global $test_external_forms, $cleantalk_plugin_version, $ct_options;
|
360 |
$ct_options=ct_get_options();
|
361 |
+
if(@intval($ct_options['collect_details'])==1)
|
362 |
{
|
363 |
$ct_info_flag="var ct_info_flag=true;\n";
|
364 |
}
|
i18n/cleantalk-da_DK.mo
CHANGED
Binary file
|
i18n/cleantalk-de_DE.mo
CHANGED
Binary file
|
i18n/cleantalk-es_ES.mo
CHANGED
Binary file
|
i18n/cleantalk-fr_FR.mo
CHANGED
Binary file
|
i18n/cleantalk-pl_PL.mo
CHANGED
Binary file
|
i18n/cleantalk-pt_PT.mo
CHANGED
Binary file
|
i18n/cleantalk-ru_RU.mo
CHANGED
Binary file
|
inc/cleantalk-admin.php
CHANGED
@@ -143,7 +143,7 @@ function ct_admin_init()
|
|
143 |
cleantalk_update_sfw();
|
144 |
}
|
145 |
|
146 |
-
|
147 |
if (isset($_COOKIE[$ct_notice_trial_label]))
|
148 |
{
|
149 |
if ($_COOKIE[$ct_notice_trial_label] == 1)
|
@@ -158,7 +158,7 @@ function ct_admin_init()
|
|
158 |
{
|
159 |
$show_ct_notice_renew = true;
|
160 |
}
|
161 |
-
}
|
162 |
$show_ct_notice_autokey = false;
|
163 |
if (isset($_COOKIE[$ct_notice_autokey_label]) && !empty($_COOKIE[$ct_notice_autokey_label]))
|
164 |
{
|
@@ -221,13 +221,14 @@ function ct_admin_init()
|
|
221 |
setcookie($ct_notice_autokey_label, (string) base64_encode(sprintf(__('Unable to connect to %s.', 'cleantalk'), 'api.cleantalk.org')), 0, '/');
|
222 |
}
|
223 |
}
|
224 |
-
|
225 |
if (time() > $ct_data['next_account_status_check']||
|
226 |
-
isset($_POST['
|
227 |
{
|
228 |
$result = false;
|
229 |
-
|
230 |
-
|
|
|
231 |
if(!function_exists('noticePaidTill'))
|
232 |
{
|
233 |
require_once('cleantalk.class.php');
|
@@ -259,16 +260,20 @@ function ct_admin_init()
|
|
259 |
{
|
260 |
$notice_check_timeout = $trial_notice_check_timeout;
|
261 |
$show_ct_notice_trial = true;
|
|
|
262 |
}
|
263 |
if ($result['show_notice'] == 1 && isset($result['renew']) && $result['renew'] == 1)
|
264 |
{
|
265 |
$notice_check_timeout = $account_notice_check_timeout;
|
266 |
$show_ct_notice_renew = true;
|
|
|
267 |
}
|
268 |
|
269 |
if ($result['show_notice'] == 0)
|
270 |
{
|
271 |
-
$notice_check_timeout = $account_notice_check_timeout;
|
|
|
|
|
272 |
}
|
273 |
}
|
274 |
|
@@ -281,9 +286,9 @@ function ct_admin_init()
|
|
281 |
// Save next status request time
|
282 |
$ct_data['next_account_status_check'] = time()+86400;
|
283 |
update_option('cleantalk_data', $ct_data);
|
284 |
-
}
|
285 |
|
286 |
-
if ($result)
|
287 |
{
|
288 |
if($show_ct_notice_trial == true)
|
289 |
{
|
@@ -293,7 +298,7 @@ function ct_admin_init()
|
|
293 |
{
|
294 |
setcookie($ct_notice_renew_label, (string) $show_ct_notice_renew, strtotime("+$renew_notice_showtime minutes"), '/');
|
295 |
}
|
296 |
-
}
|
297 |
}
|
298 |
|
299 |
$show_ct_notice_online = '';
|
@@ -390,8 +395,9 @@ function ct_admin_init()
|
|
390 |
add_settings_field('cleantalk_check_external', __('Protect external forms', 'cleantalk'), 'ct_input_check_external', 'cleantalk', 'cleantalk_settings_anti_spam');
|
391 |
add_settings_field('cleantalk_check_comments_number', __("Don't check comments", 'cleantalk'), 'ct_input_check_comments_number', 'cleantalk', 'cleantalk_settings_anti_spam');
|
392 |
//add_settings_field('cleantalk_check_messages_number', __("Don't check messages", 'cleantalk'), 'ct_input_check_messages_number', 'cleantalk', 'cleantalk_settings_anti_spam');
|
|
|
|
|
393 |
add_settings_field('cleantalk_show_link', __('', 'cleantalk'), 'ct_input_show_link', 'cleantalk', 'cleantalk_settings_banner');
|
394 |
-
add_settings_field('cleantalk_spam_firewall', __('', 'cleantalk'), 'ct_input_spam_firewall', 'cleantalk', 'cleantalk_settings_anti_spam');
|
395 |
}
|
396 |
}
|
397 |
|
@@ -785,6 +791,33 @@ function ct_input_check_comments_number() {
|
|
785 |
@admin_addDescriptionsFields(sprintf(__("Dont't check comments for users with above $comments_check_number comments", 'cleantalk'), $ct_options['check_comments_number']));
|
786 |
}
|
787 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
788 |
function ct_input_check_messages_number() {
|
789 |
global $ct_options, $ct_data;
|
790 |
|
@@ -882,7 +915,7 @@ function ct_input_spam_firewall() {
|
|
882 |
|
883 |
echo "<div id='cleantalk_anchor1' style='display:none'></div><input type=hidden name='cleantalk_settings[spam_firewall]' value='0' />";
|
884 |
echo "<input type='checkbox' id='cleantalk_spam_firewall1' name='cleantalk_settings[spam_firewall]' value='1' " . ($value == '1' ? 'checked' : '') . " /><label for='cleantalk_spam_firewall1'> " . __('SpamFireWall') . "</label>";
|
885 |
-
@admin_addDescriptionsFields(sprintf(__("
|
886 |
echo "<script>
|
887 |
jQuery(document).ready(function(){
|
888 |
jQuery('#cleantalk_anchor1').parent().parent().children().first().hide();
|
@@ -1026,8 +1059,17 @@ function cleantalk_admin_notice_message(){
|
|
1026 |
echo '<div class="error"><h3>' . sprintf(__("Please enter Access Key in %s settings to enable anti spam protection!", 'cleantalk'), "<a href=\"options-general.php?page=cleantalk\">CleanTalk plugin</a>") . '</h3></div>';
|
1027 |
$show_notice = false;
|
1028 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1029 |
|
1030 |
-
if ($show_notice && $show_ct_notice_trial && $value==1 && (is_network_admin() || is_admin())) {
|
1031 |
echo '<div class="error"><h3>' . sprintf(__("%s trial period ends, please upgrade to %s!", 'cleantalk'), "<a href=\"options-general.php?page=cleantalk\">$ct_plugin_name</a>", "<a href=\"http://cleantalk.org/my/bill/recharge?utm_source=wp-backend&utm_medium=cpc&utm_campaign=WP%20backend%20trial$user_token\" target=\"_blank\"><b>premium version</b></a>") . '</h3></div>';
|
1032 |
$show_notice = false;
|
1033 |
}
|
@@ -1050,8 +1092,17 @@ function cleantalk_admin_notice_message(){
|
|
1050 |
{
|
1051 |
$link="?close_notice=1";
|
1052 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1053 |
|
1054 |
-
if ($show_notice && $show_ct_notice_renew && $value==1 &&
|
1055 |
$button_html = "<a href=\"http://cleantalk.org/my/bill/recharge?utm_source=wp-backend&utm_medium=cpc&utm_campaign=WP%20backend%20renew$user_token\" target=\"_blank\">" . '<input type="button" class="button button-primary" value="' . __('RENEW ANTI-SPAM', 'cleantalk') . '" />' . "</a>";
|
1056 |
echo '<div class="updated"><a href="'.$link.'" style="text-decoration:none;float:right;font-size:16px;margin-top:5px;"><b>X</b></a><h3>' . sprintf(__("Please renew your anti-spam license for %s.", 'cleantalk'), "<a href=\"http://cleantalk.org/my/bill/recharge?utm_source=wp-backend&utm_medium=cpc&utm_campaign=WP%20backend%20renew$user_token\" target=\"_blank\"><b>" . __('next year', 'cleantalk') ."</b></a>") . '<br /><br />' . $button_html . '</h3></div>';
|
1057 |
$show_notice = false;
|
143 |
cleantalk_update_sfw();
|
144 |
}
|
145 |
|
146 |
+
/*$show_ct_notice_trial = false;
|
147 |
if (isset($_COOKIE[$ct_notice_trial_label]))
|
148 |
{
|
149 |
if ($_COOKIE[$ct_notice_trial_label] == 1)
|
158 |
{
|
159 |
$show_ct_notice_renew = true;
|
160 |
}
|
161 |
+
}*/
|
162 |
$show_ct_notice_autokey = false;
|
163 |
if (isset($_COOKIE[$ct_notice_autokey_label]) && !empty($_COOKIE[$ct_notice_autokey_label]))
|
164 |
{
|
221 |
setcookie($ct_notice_autokey_label, (string) base64_encode(sprintf(__('Unable to connect to %s.', 'cleantalk'), 'api.cleantalk.org')), 0, '/');
|
222 |
}
|
223 |
}
|
224 |
+
|
225 |
if (time() > $ct_data['next_account_status_check']||
|
226 |
+
isset($_POST['cleantalk_settings']['apikey']))
|
227 |
{
|
228 |
$result = false;
|
229 |
+
|
230 |
+
//if (true)
|
231 |
+
//{
|
232 |
if(!function_exists('noticePaidTill'))
|
233 |
{
|
234 |
require_once('cleantalk.class.php');
|
260 |
{
|
261 |
$notice_check_timeout = $trial_notice_check_timeout;
|
262 |
$show_ct_notice_trial = true;
|
263 |
+
$ct_data['show_ct_notice_trial']=1;
|
264 |
}
|
265 |
if ($result['show_notice'] == 1 && isset($result['renew']) && $result['renew'] == 1)
|
266 |
{
|
267 |
$notice_check_timeout = $account_notice_check_timeout;
|
268 |
$show_ct_notice_renew = true;
|
269 |
+
$ct_data['show_ct_notice_renew']=1;
|
270 |
}
|
271 |
|
272 |
if ($result['show_notice'] == 0)
|
273 |
{
|
274 |
+
$notice_check_timeout = $account_notice_check_timeout;
|
275 |
+
$ct_data['show_ct_notice_trial']=0;
|
276 |
+
$ct_data['show_ct_notice_renew']=0;
|
277 |
}
|
278 |
}
|
279 |
|
286 |
// Save next status request time
|
287 |
$ct_data['next_account_status_check'] = time()+86400;
|
288 |
update_option('cleantalk_data', $ct_data);
|
289 |
+
//}
|
290 |
|
291 |
+
/*if ($result)
|
292 |
{
|
293 |
if($show_ct_notice_trial == true)
|
294 |
{
|
298 |
{
|
299 |
setcookie($ct_notice_renew_label, (string) $show_ct_notice_renew, strtotime("+$renew_notice_showtime minutes"), '/');
|
300 |
}
|
301 |
+
}*/
|
302 |
}
|
303 |
|
304 |
$show_ct_notice_online = '';
|
395 |
add_settings_field('cleantalk_check_external', __('Protect external forms', 'cleantalk'), 'ct_input_check_external', 'cleantalk', 'cleantalk_settings_anti_spam');
|
396 |
add_settings_field('cleantalk_check_comments_number', __("Don't check comments", 'cleantalk'), 'ct_input_check_comments_number', 'cleantalk', 'cleantalk_settings_anti_spam');
|
397 |
//add_settings_field('cleantalk_check_messages_number', __("Don't check messages", 'cleantalk'), 'ct_input_check_messages_number', 'cleantalk', 'cleantalk_settings_anti_spam');
|
398 |
+
add_settings_field('cleantalk_spam_firewall', __('', 'cleantalk'), 'ct_input_spam_firewall', 'cleantalk', 'cleantalk_settings_banner');
|
399 |
+
add_settings_field('cleantalk_collect_details', __('Collect details about browsers', 'cleantalk'), 'ct_input_collect_details', 'cleantalk', 'cleantalk_settings_banner');
|
400 |
add_settings_field('cleantalk_show_link', __('', 'cleantalk'), 'ct_input_show_link', 'cleantalk', 'cleantalk_settings_banner');
|
|
|
401 |
}
|
402 |
}
|
403 |
|
791 |
@admin_addDescriptionsFields(sprintf(__("Dont't check comments for users with above $comments_check_number comments", 'cleantalk'), $ct_options['check_comments_number']));
|
792 |
}
|
793 |
|
794 |
+
function ct_input_collect_details() {
|
795 |
+
global $ct_options, $ct_data;
|
796 |
+
|
797 |
+
$ct_options = ct_get_options();
|
798 |
+
$ct_data = ct_get_data();
|
799 |
+
|
800 |
+
if(isset($ct_options['collect_details']))
|
801 |
+
{
|
802 |
+
$value = @intval($ct_options['collect_details']);
|
803 |
+
}
|
804 |
+
else
|
805 |
+
{
|
806 |
+
$value=0;
|
807 |
+
}
|
808 |
+
|
809 |
+
echo "<div id='cleantalk_anchor2' style='display:none'></div><input type=hidden name='cleantalk_settings[collect_details]' value='0' />";
|
810 |
+
echo "<input type='checkbox' id='collect_details1' name='cleantalk_settings[collect_details]' value='1' " . ($value == '1' ? 'checked' : '') . " /><label for='collect_details1'> " . __('Collect details about browsers') . "</label>";
|
811 |
+
@admin_addDescriptionsFields(sprintf(__("Checking this box you allow plugin store information about screen size and browser plugins of website visitors. The option in a beta state.", 'cleantalk'), $ct_options['spam_firewall']));
|
812 |
+
echo "<script>
|
813 |
+
jQuery(document).ready(function(){
|
814 |
+
jQuery('#cleantalk_anchor2').parent().parent().children().first().hide();
|
815 |
+
jQuery('#cleantalk_anchor2').parent().css('padding-left','0px');
|
816 |
+
jQuery('#cleantalk_anchor2').parent().attr('colspan', '2');
|
817 |
+
});
|
818 |
+
</script>";
|
819 |
+
}
|
820 |
+
|
821 |
function ct_input_check_messages_number() {
|
822 |
global $ct_options, $ct_data;
|
823 |
|
915 |
|
916 |
echo "<div id='cleantalk_anchor1' style='display:none'></div><input type=hidden name='cleantalk_settings[spam_firewall]' value='0' />";
|
917 |
echo "<input type='checkbox' id='cleantalk_spam_firewall1' name='cleantalk_settings[spam_firewall]' value='1' " . ($value == '1' ? 'checked' : '') . " /><label for='cleantalk_spam_firewall1'> " . __('SpamFireWall') . "</label>";
|
918 |
+
@admin_addDescriptionsFields(sprintf(__("This option allows to filter spam bots before they access website. Also reduces CPU usage on hosting server and accelerates pages load time.", 'cleantalk'), $ct_options['spam_firewall']));
|
919 |
echo "<script>
|
920 |
jQuery(document).ready(function(){
|
921 |
jQuery('#cleantalk_anchor1').parent().parent().children().first().hide();
|
1059 |
echo '<div class="error"><h3>' . sprintf(__("Please enter Access Key in %s settings to enable anti spam protection!", 'cleantalk'), "<a href=\"options-general.php?page=cleantalk\">CleanTalk plugin</a>") . '</h3></div>';
|
1060 |
$show_notice = false;
|
1061 |
}
|
1062 |
+
|
1063 |
+
if(isset($ct_data['show_ct_notice_trial']))
|
1064 |
+
{
|
1065 |
+
$show_ct_notice_trial = intval($ct_data['show_ct_notice_trial']);
|
1066 |
+
}
|
1067 |
+
else
|
1068 |
+
{
|
1069 |
+
$show_ct_notice_trial = 0;
|
1070 |
+
}
|
1071 |
|
1072 |
+
if ($show_notice && $show_ct_notice_trial ==1 && $value==1 && (is_network_admin() || is_admin())) {
|
1073 |
echo '<div class="error"><h3>' . sprintf(__("%s trial period ends, please upgrade to %s!", 'cleantalk'), "<a href=\"options-general.php?page=cleantalk\">$ct_plugin_name</a>", "<a href=\"http://cleantalk.org/my/bill/recharge?utm_source=wp-backend&utm_medium=cpc&utm_campaign=WP%20backend%20trial$user_token\" target=\"_blank\"><b>premium version</b></a>") . '</h3></div>';
|
1074 |
$show_notice = false;
|
1075 |
}
|
1092 |
{
|
1093 |
$link="?close_notice=1";
|
1094 |
}
|
1095 |
+
|
1096 |
+
if(isset($ct_data['show_ct_notice_renew']))
|
1097 |
+
{
|
1098 |
+
$show_ct_notice_renew = intval($ct_data['show_ct_notice_renew']);
|
1099 |
+
}
|
1100 |
+
else
|
1101 |
+
{
|
1102 |
+
$show_ct_notice_renew = 0;
|
1103 |
+
}
|
1104 |
|
1105 |
+
if ($show_notice && $show_ct_notice_renew == 1 && $value==1 && (is_network_admin() || is_admin())) {
|
1106 |
$button_html = "<a href=\"http://cleantalk.org/my/bill/recharge?utm_source=wp-backend&utm_medium=cpc&utm_campaign=WP%20backend%20renew$user_token\" target=\"_blank\">" . '<input type="button" class="button button-primary" value="' . __('RENEW ANTI-SPAM', 'cleantalk') . '" />' . "</a>";
|
1107 |
echo '<div class="updated"><a href="'.$link.'" style="text-decoration:none;float:right;font-size:16px;margin-top:5px;"><b>X</b></a><h3>' . sprintf(__("Please renew your anti-spam license for %s.", 'cleantalk'), "<a href=\"http://cleantalk.org/my/bill/recharge?utm_source=wp-backend&utm_medium=cpc&utm_campaign=WP%20backend%20renew$user_token\" target=\"_blank\"><b>" . __('next year', 'cleantalk') ."</b></a>") . '<br /><br />' . $button_html . '</h3></div>';
|
1108 |
$show_notice = false;
|
inc/cleantalk-ajax.php
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
<?php
|
2 |
-
|
3 |
/*
|
4 |
AJAX functions
|
5 |
*/
|
@@ -7,6 +7,7 @@ AJAX functions
|
|
7 |
/*hooks for AJAX Login & Register email validation*/
|
8 |
add_action( 'wp_ajax_nopriv_validate_email', 'ct_validate_email_ajaxlogin',1 );
|
9 |
add_action( 'wp_ajax_validate_email', 'ct_validate_email_ajaxlogin',1 );
|
|
|
10 |
|
11 |
/*hooks for user registration*/
|
12 |
add_action( 'user_register', 'ct_user_register_ajaxlogin',1 );
|
@@ -16,24 +17,28 @@ add_action( 'user_register', 'ct_user_register_ajaxlogin',1 );
|
|
16 |
//add_action( 'wp_ajax_wpuf_submit_register', 'ct_wpuf_submit_register',1 );
|
17 |
add_action( 'wp_ajax_nopriv_wpuf_submit_register', 'ct_ajax_hook',1 );
|
18 |
add_action( 'wp_ajax_wpuf_submit_register', 'ct_ajax_hook',1 );
|
|
|
19 |
|
20 |
/*hooks for MyMail */
|
21 |
//add_action( 'wp_ajax_nopriv_mymail_form_submit', 'ct_mymail_form_submit',1 );
|
22 |
//add_action( 'wp_ajax_mymail_form_submit', 'ct_mymail_form_submit',1 );
|
23 |
add_action( 'wp_ajax_nopriv_mymail_form_submit', 'ct_ajax_hook',1 );
|
24 |
add_action( 'wp_ajax_mymail_form_submit', 'ct_ajax_hook',1 );
|
|
|
25 |
|
26 |
/*hooks for MailPoet */
|
27 |
//add_action( 'wp_ajax_nopriv_wysija_ajax', 'ct_wysija_ajax',1 );
|
28 |
//add_action( 'wp_ajax_wysija_ajax', 'ct_wysija_ajax',1 );
|
29 |
add_action( 'wp_ajax_nopriv_wysija_ajax', 'ct_ajax_hook',1 );
|
30 |
add_action( 'wp_ajax_wysija_ajax', 'ct_ajax_hook',1 );
|
|
|
31 |
|
32 |
/*hooks for cs_registration_validation */
|
33 |
//add_action( 'wp_ajax_nopriv_cs_registration_validation', 'ct_cs_registration_validation',1 );
|
34 |
//add_action( 'wp_ajax_cs_registration_validation', 'ct_cs_registration_validation',1 );
|
35 |
add_action( 'wp_ajax_nopriv_cs_registration_validation', 'ct_ajax_hook',1 );
|
36 |
add_action( 'wp_ajax_cs_registration_validation', 'ct_ajax_hook',1 );
|
|
|
37 |
|
38 |
/*hooks for send_message and request_appointment */
|
39 |
//add_action( 'wp_ajax_nopriv_send_message', 'ct_sm_ra',1 );
|
@@ -44,39 +49,48 @@ add_action( 'wp_ajax_nopriv_send_message', 'ct_ajax_hook',1 );
|
|
44 |
add_action( 'wp_ajax_send_message', 'ct_ajax_hook',1 );
|
45 |
add_action( 'wp_ajax_nopriv_request_appointment', 'ct_ajax_hook',1 );
|
46 |
add_action( 'wp_ajax_request_appointment', 'ct_ajax_hook',1 );
|
|
|
|
|
47 |
|
48 |
/*hooks for zn_do_login */
|
49 |
//add_action( 'wp_ajax_nopriv_zn_do_login', 'ct_zn_do_login',1 );
|
50 |
//add_action( 'wp_ajax_zn_do_login', 'ct_zn_do_login',1 );
|
51 |
add_action( 'wp_ajax_nopriv_zn_do_login', 'ct_ajax_hook',1 );
|
52 |
add_action( 'wp_ajax_zn_do_login', 'ct_ajax_hook',1 );
|
|
|
53 |
|
54 |
/*hooks for zn_do_login */
|
55 |
//add_action( 'wp_ajax_nopriv_cscf-submitform', 'ct_cscf_submitform',1 );
|
56 |
//add_action( 'wp_ajax_cscf-submitform', 'ct_cscf_submitform',1 );
|
57 |
add_action( 'wp_ajax_nopriv_cscf-submitform', 'ct_ajax_hook',1 );
|
58 |
add_action( 'wp_ajax_cscf-submitform', 'ct_ajax_hook',1 );
|
|
|
59 |
|
60 |
/*hooks for stats */
|
61 |
add_action( 'wp_ajax_nopriv_ajax_get_stats', 'ct_get_stats',1 );
|
62 |
add_action( 'wp_ajax_ajax_get_stats', 'ct_get_stats',1 );
|
|
|
63 |
|
64 |
/*hooks for visual form builder */
|
65 |
//add_action( 'wp_ajax_nopriv_vfb_submit', 'ct_vfb_submit',1 );
|
66 |
//add_action( 'wp_ajax_vfb_submit', 'ct_vfb_submit',1 );
|
67 |
add_action( 'wp_ajax_nopriv_vfb_submit', 'ct_ajax_hook',1 );
|
68 |
add_action( 'wp_ajax_vfb_submit', 'ct_ajax_hook',1 );
|
|
|
69 |
|
70 |
/*hooks for woocommerce_checkout*/
|
71 |
add_action( 'wp_ajax_nopriv_woocommerce_checkout', 'ct_ajax_hook',1 );
|
72 |
add_action( 'wp_ajax_woocommerce_checkout', 'ct_ajax_hook',1 );
|
|
|
73 |
|
74 |
/*hooks for frm_action*/
|
75 |
add_action( 'wp_ajax_nopriv_frm_entries_create', 'ct_ajax_hook',1 );
|
76 |
add_action( 'wp_ajax_frm_entries_create', 'ct_ajax_hook',1 );
|
|
|
77 |
|
78 |
add_action( 'wp_ajax_nopriv_td_mod_register', 'ct_ajax_hook',1 );
|
79 |
add_action( 'wp_ajax_td_mod_register', 'ct_ajax_hook',1 );
|
|
|
80 |
|
81 |
/*hooks for tevolution theme*/
|
82 |
add_action( 'wp_ajax_nopriv_tmpl_ajax_check_user_email', 'ct_ajax_hook',1 );
|
@@ -85,6 +99,9 @@ add_action( 'wp_ajax_nopriv_tevolution_submit_from_preview', 'ct_ajax_hook',1 )
|
|
85 |
add_action( 'wp_ajax_tevolution_submit_from_preview', 'ct_ajax_hook',1 );
|
86 |
add_action( 'wp_ajax_nopriv_submit_form_recaptcha_validation', 'ct_ajax_hook',1 );
|
87 |
add_action( 'wp_ajax_tmpl_submit_form_recaptcha_validation', 'ct_ajax_hook',1 );
|
|
|
|
|
|
|
88 |
|
89 |
/**hooks for cm answers pro */
|
90 |
add_action( 'template_redirect', 'ct_ajax_hook',1 );
|
@@ -92,6 +109,7 @@ add_action( 'template_redirect', 'ct_ajax_hook',1 );
|
|
92 |
/* hooks for ninja forms ajax*/
|
93 |
add_action( 'wp_ajax_nopriv_ninja_forms_ajax_submit', 'ct_ajax_hook',1 );
|
94 |
add_action( 'wp_ajax_ninja_forms_ajax_submit', 'ct_ajax_hook',1 );
|
|
|
95 |
|
96 |
function ct_get_stats()
|
97 |
{
|
@@ -455,6 +473,11 @@ function ct_ajax_hook()
|
|
455 |
print '{"form_id":'.$_POST['_form_id'].',"errors":false,"success":{"success_msg-Success":"'.$ct_result->comment.'"}}';
|
456 |
die();
|
457 |
}
|
|
|
|
|
|
|
|
|
|
|
458 |
}
|
459 |
}
|
460 |
}
|
1 |
<?php
|
2 |
+
global $cleantalk_hooked_actions;
|
3 |
/*
|
4 |
AJAX functions
|
5 |
*/
|
7 |
/*hooks for AJAX Login & Register email validation*/
|
8 |
add_action( 'wp_ajax_nopriv_validate_email', 'ct_validate_email_ajaxlogin',1 );
|
9 |
add_action( 'wp_ajax_validate_email', 'ct_validate_email_ajaxlogin',1 );
|
10 |
+
$cleantalk_hooked_actions[]='validate_email';
|
11 |
|
12 |
/*hooks for user registration*/
|
13 |
add_action( 'user_register', 'ct_user_register_ajaxlogin',1 );
|
17 |
//add_action( 'wp_ajax_wpuf_submit_register', 'ct_wpuf_submit_register',1 );
|
18 |
add_action( 'wp_ajax_nopriv_wpuf_submit_register', 'ct_ajax_hook',1 );
|
19 |
add_action( 'wp_ajax_wpuf_submit_register', 'ct_ajax_hook',1 );
|
20 |
+
$cleantalk_hooked_actions[]='submit_register';
|
21 |
|
22 |
/*hooks for MyMail */
|
23 |
//add_action( 'wp_ajax_nopriv_mymail_form_submit', 'ct_mymail_form_submit',1 );
|
24 |
//add_action( 'wp_ajax_mymail_form_submit', 'ct_mymail_form_submit',1 );
|
25 |
add_action( 'wp_ajax_nopriv_mymail_form_submit', 'ct_ajax_hook',1 );
|
26 |
add_action( 'wp_ajax_mymail_form_submit', 'ct_ajax_hook',1 );
|
27 |
+
$cleantalk_hooked_actions[]='form_submit';
|
28 |
|
29 |
/*hooks for MailPoet */
|
30 |
//add_action( 'wp_ajax_nopriv_wysija_ajax', 'ct_wysija_ajax',1 );
|
31 |
//add_action( 'wp_ajax_wysija_ajax', 'ct_wysija_ajax',1 );
|
32 |
add_action( 'wp_ajax_nopriv_wysija_ajax', 'ct_ajax_hook',1 );
|
33 |
add_action( 'wp_ajax_wysija_ajax', 'ct_ajax_hook',1 );
|
34 |
+
$cleantalk_hooked_actions[]='wysija_ajax';
|
35 |
|
36 |
/*hooks for cs_registration_validation */
|
37 |
//add_action( 'wp_ajax_nopriv_cs_registration_validation', 'ct_cs_registration_validation',1 );
|
38 |
//add_action( 'wp_ajax_cs_registration_validation', 'ct_cs_registration_validation',1 );
|
39 |
add_action( 'wp_ajax_nopriv_cs_registration_validation', 'ct_ajax_hook',1 );
|
40 |
add_action( 'wp_ajax_cs_registration_validation', 'ct_ajax_hook',1 );
|
41 |
+
$cleantalk_hooked_actions[]='cs_registration_validation';
|
42 |
|
43 |
/*hooks for send_message and request_appointment */
|
44 |
//add_action( 'wp_ajax_nopriv_send_message', 'ct_sm_ra',1 );
|
49 |
add_action( 'wp_ajax_send_message', 'ct_ajax_hook',1 );
|
50 |
add_action( 'wp_ajax_nopriv_request_appointment', 'ct_ajax_hook',1 );
|
51 |
add_action( 'wp_ajax_request_appointment', 'ct_ajax_hook',1 );
|
52 |
+
$cleantalk_hooked_actions[]='send_message';
|
53 |
+
$cleantalk_hooked_actions[]='request_appointment';
|
54 |
|
55 |
/*hooks for zn_do_login */
|
56 |
//add_action( 'wp_ajax_nopriv_zn_do_login', 'ct_zn_do_login',1 );
|
57 |
//add_action( 'wp_ajax_zn_do_login', 'ct_zn_do_login',1 );
|
58 |
add_action( 'wp_ajax_nopriv_zn_do_login', 'ct_ajax_hook',1 );
|
59 |
add_action( 'wp_ajax_zn_do_login', 'ct_ajax_hook',1 );
|
60 |
+
$cleantalk_hooked_actions[]='zn_do_login';
|
61 |
|
62 |
/*hooks for zn_do_login */
|
63 |
//add_action( 'wp_ajax_nopriv_cscf-submitform', 'ct_cscf_submitform',1 );
|
64 |
//add_action( 'wp_ajax_cscf-submitform', 'ct_cscf_submitform',1 );
|
65 |
add_action( 'wp_ajax_nopriv_cscf-submitform', 'ct_ajax_hook',1 );
|
66 |
add_action( 'wp_ajax_cscf-submitform', 'ct_ajax_hook',1 );
|
67 |
+
$cleantalk_hooked_actions[]='cscf-submitform';
|
68 |
|
69 |
/*hooks for stats */
|
70 |
add_action( 'wp_ajax_nopriv_ajax_get_stats', 'ct_get_stats',1 );
|
71 |
add_action( 'wp_ajax_ajax_get_stats', 'ct_get_stats',1 );
|
72 |
+
$cleantalk_hooked_actions[]='ajax_get_stats';
|
73 |
|
74 |
/*hooks for visual form builder */
|
75 |
//add_action( 'wp_ajax_nopriv_vfb_submit', 'ct_vfb_submit',1 );
|
76 |
//add_action( 'wp_ajax_vfb_submit', 'ct_vfb_submit',1 );
|
77 |
add_action( 'wp_ajax_nopriv_vfb_submit', 'ct_ajax_hook',1 );
|
78 |
add_action( 'wp_ajax_vfb_submit', 'ct_ajax_hook',1 );
|
79 |
+
$cleantalk_hooked_actions[]='vfb_submit';
|
80 |
|
81 |
/*hooks for woocommerce_checkout*/
|
82 |
add_action( 'wp_ajax_nopriv_woocommerce_checkout', 'ct_ajax_hook',1 );
|
83 |
add_action( 'wp_ajax_woocommerce_checkout', 'ct_ajax_hook',1 );
|
84 |
+
$cleantalk_hooked_actions[]='woocommerce_checkout';
|
85 |
|
86 |
/*hooks for frm_action*/
|
87 |
add_action( 'wp_ajax_nopriv_frm_entries_create', 'ct_ajax_hook',1 );
|
88 |
add_action( 'wp_ajax_frm_entries_create', 'ct_ajax_hook',1 );
|
89 |
+
$cleantalk_hooked_actions[]='frm_entries_create';
|
90 |
|
91 |
add_action( 'wp_ajax_nopriv_td_mod_register', 'ct_ajax_hook',1 );
|
92 |
add_action( 'wp_ajax_td_mod_register', 'ct_ajax_hook',1 );
|
93 |
+
$cleantalk_hooked_actions[]='td_mod_register';
|
94 |
|
95 |
/*hooks for tevolution theme*/
|
96 |
add_action( 'wp_ajax_nopriv_tmpl_ajax_check_user_email', 'ct_ajax_hook',1 );
|
99 |
add_action( 'wp_ajax_tevolution_submit_from_preview', 'ct_ajax_hook',1 );
|
100 |
add_action( 'wp_ajax_nopriv_submit_form_recaptcha_validation', 'ct_ajax_hook',1 );
|
101 |
add_action( 'wp_ajax_tmpl_submit_form_recaptcha_validation', 'ct_ajax_hook',1 );
|
102 |
+
$cleantalk_hooked_actions[]='tmpl_ajax_check_user_email';
|
103 |
+
$cleantalk_hooked_actions[]='tevolution_submit_from_preview';
|
104 |
+
$cleantalk_hooked_actions[]='submit_form_recaptcha_validation';
|
105 |
|
106 |
/**hooks for cm answers pro */
|
107 |
add_action( 'template_redirect', 'ct_ajax_hook',1 );
|
109 |
/* hooks for ninja forms ajax*/
|
110 |
add_action( 'wp_ajax_nopriv_ninja_forms_ajax_submit', 'ct_ajax_hook',1 );
|
111 |
add_action( 'wp_ajax_ninja_forms_ajax_submit', 'ct_ajax_hook',1 );
|
112 |
+
$cleantalk_hooked_actions[]='ninja_forms_ajax_submit';
|
113 |
|
114 |
function ct_get_stats()
|
115 |
{
|
473 |
print '{"form_id":'.$_POST['_form_id'].',"errors":false,"success":{"success_msg-Success":"'.$ct_result->comment.'"}}';
|
474 |
die();
|
475 |
}
|
476 |
+
else
|
477 |
+
{
|
478 |
+
print $ct_result->comment;
|
479 |
+
die();
|
480 |
+
}
|
481 |
}
|
482 |
}
|
483 |
}
|
inc/cleantalk-common.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
$ct_agent_version = 'wordpress-
|
4 |
$ct_plugin_name = 'Anti-spam by CleanTalk';
|
5 |
$ct_checkjs_frm = 'ct_checkjs_frm';
|
6 |
$ct_checkjs_register_form = 'ct_checkjs_register_form';
|
@@ -101,7 +101,8 @@ $ct_data=ct_get_data();
|
|
101 |
* Public action 'plugins_loaded' - Loads locale, see http://codex.wordpress.org/Function_Reference/load_plugin_textdomain
|
102 |
*/
|
103 |
function ct_plugin_loaded() {
|
104 |
-
|
|
|
105 |
}
|
106 |
|
107 |
/**
|
@@ -176,8 +177,10 @@ function ct_base_call($params = array()) {
|
|
176 |
$ct_request->last_error_time=$ct_data['last_error_time'];
|
177 |
$ct_request->last_error_text=$ct_data['last_error_text'];
|
178 |
}
|
|
|
|
|
179 |
|
180 |
-
$ct_result =
|
181 |
if ($ct->server_change) {
|
182 |
update_option(
|
183 |
'cleantalk_server', array(
|
@@ -256,6 +259,7 @@ function get_sender_info() {
|
|
256 |
if (isset($_COOKIE['ct_checkjs'])) {
|
257 |
$checkjs_data_cookies = $_COOKIE['ct_checkjs'];
|
258 |
}
|
|
|
259 |
|
260 |
$checkjs_data_post = null;
|
261 |
if (count($_POST) > 0) {
|
@@ -284,6 +288,15 @@ function get_sender_info() {
|
|
284 |
$js_info=stripslashes(rawurldecode($_COOKIE['ct_user_info']));
|
285 |
$js_info=mb_convert_encoding($js_info, "UTF-8", "Windows-1252");
|
286 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
287 |
|
288 |
return $sender_info = array(
|
289 |
'page_url' => htmlspecialchars(@$_SERVER['SERVER_NAME'].@$_SERVER['REQUEST_URI']),
|
@@ -298,6 +311,7 @@ function get_sender_info() {
|
|
298 |
'ct_options' => json_encode($options2server),
|
299 |
'fields_number' => sizeof($_POST),
|
300 |
'js_info' => $js_info,
|
|
|
301 |
);
|
302 |
}
|
303 |
|
1 |
<?php
|
2 |
|
3 |
+
$ct_agent_version = 'wordpress-534';
|
4 |
$ct_plugin_name = 'Anti-spam by CleanTalk';
|
5 |
$ct_checkjs_frm = 'ct_checkjs_frm';
|
6 |
$ct_checkjs_register_form = 'ct_checkjs_register_form';
|
101 |
* Public action 'plugins_loaded' - Loads locale, see http://codex.wordpress.org/Function_Reference/load_plugin_textdomain
|
102 |
*/
|
103 |
function ct_plugin_loaded() {
|
104 |
+
$dir=plugin_basename( dirname( __FILE__ ) ) . '/../i18n';
|
105 |
+
$loaded=load_plugin_textdomain('cleantalk', false, $dir);
|
106 |
}
|
107 |
|
108 |
/**
|
177 |
$ct_request->last_error_time=$ct_data['last_error_time'];
|
178 |
$ct_request->last_error_text=$ct_data['last_error_text'];
|
179 |
}
|
180 |
+
|
181 |
+
|
182 |
|
183 |
+
$ct_result = @$ct->isAllowMessage($ct_request);
|
184 |
if ($ct->server_change) {
|
185 |
update_option(
|
186 |
'cleantalk_server', array(
|
259 |
if (isset($_COOKIE['ct_checkjs'])) {
|
260 |
$checkjs_data_cookies = $_COOKIE['ct_checkjs'];
|
261 |
}
|
262 |
+
|
263 |
|
264 |
$checkjs_data_post = null;
|
265 |
if (count($_POST) > 0) {
|
288 |
$js_info=stripslashes(rawurldecode($_COOKIE['ct_user_info']));
|
289 |
$js_info=mb_convert_encoding($js_info, "UTF-8", "Windows-1252");
|
290 |
}
|
291 |
+
|
292 |
+
if (isset($_COOKIE['ct_first_referer']))
|
293 |
+
{
|
294 |
+
$ct_first_referer = $_COOKIE['ct_first_referer'];
|
295 |
+
}
|
296 |
+
else
|
297 |
+
{
|
298 |
+
$ct_first_referer = 'null';
|
299 |
+
}
|
300 |
|
301 |
return $sender_info = array(
|
302 |
'page_url' => htmlspecialchars(@$_SERVER['SERVER_NAME'].@$_SERVER['REQUEST_URI']),
|
311 |
'ct_options' => json_encode($options2server),
|
312 |
'fields_number' => sizeof($_POST),
|
313 |
'js_info' => $js_info,
|
314 |
+
'ct_first_referer' => $ct_first_referer,
|
315 |
);
|
316 |
}
|
317 |
|
inc/cleantalk-public.php
CHANGED
@@ -9,6 +9,18 @@ function ct_init() {
|
|
9 |
|
10 |
$ct_options=ct_get_options();
|
11 |
$ct_data=ct_get_data();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
|
13 |
//fix for EPM registration form
|
14 |
if(isset($_POST) && isset($_POST['reg_email']) && shortcode_exists( 'epm_registration_form' ))
|
@@ -1004,9 +1016,19 @@ function ct_test_registration($nickname, $email, $ip){
|
|
1004 |
|
1005 |
$ct_result = $ct->isAllowUser($ct_request);
|
1006 |
|
1007 |
-
if
|
1008 |
{
|
1009 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1010 |
}
|
1011 |
|
1012 |
$result=Array(
|
@@ -1122,13 +1144,23 @@ function ct_registration_errors($errors, $sanitized_user_login = null, $user_ema
|
|
1122 |
|
1123 |
$ct_signup_done = true;
|
1124 |
|
1125 |
-
if ($ct_result->errno != 0 && $ct_options['notice_api_errors']) {
|
1126 |
ct_send_error_notice($ct_result->comment);
|
1127 |
return $errors;
|
1128 |
-
}
|
1129 |
-
if
|
1130 |
{
|
1131 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1132 |
}
|
1133 |
|
1134 |
if ($ct_result->inactive != 0) {
|
@@ -1672,8 +1704,19 @@ function ct_s2member_registration_test() {
|
|
1672 |
);
|
1673 |
}
|
1674 |
|
1675 |
-
if
|
1676 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1677 |
}
|
1678 |
|
1679 |
// Restart submit form counter for failed requests
|
9 |
|
10 |
$ct_options=ct_get_options();
|
11 |
$ct_data=ct_get_data();
|
12 |
+
|
13 |
+
if(!isset($_COOKIE['ct_first_referer']))
|
14 |
+
{
|
15 |
+
if(isset($_SERVER['HTTP_REFERER']))
|
16 |
+
{
|
17 |
+
setcookie("ct_first_referer", $_SERVER['HTTP_REFERER'], 0, '/');
|
18 |
+
}
|
19 |
+
else
|
20 |
+
{
|
21 |
+
setcookie("ct_first_referer", "null", 0, '/');
|
22 |
+
}
|
23 |
+
}
|
24 |
|
25 |
//fix for EPM registration form
|
26 |
if(isset($_POST) && isset($_POST['reg_email']) && shortcode_exists( 'epm_registration_form' ))
|
1016 |
|
1017 |
$ct_result = $ct->isAllowUser($ct_request);
|
1018 |
|
1019 |
+
if(@intval($ct_result->errno) != 0)
|
1020 |
{
|
1021 |
+
if($params['checkjs']!=1)
|
1022 |
+
{
|
1023 |
+
$ct_result->allow = 0;
|
1024 |
+
$ct_result->spam = 1;
|
1025 |
+
$ct_result->comment=__( 'Forbidden. Please, enable Javascript.', 'cleantalk' );
|
1026 |
+
}
|
1027 |
+
else
|
1028 |
+
{
|
1029 |
+
$ct_result->allow = 1;
|
1030 |
+
$ct_result->comment=__( 'Allow', 'cleantalk' );
|
1031 |
+
}
|
1032 |
}
|
1033 |
|
1034 |
$result=Array(
|
1144 |
|
1145 |
$ct_signup_done = true;
|
1146 |
|
1147 |
+
/*if ($ct_result->errno != 0 && $ct_options['notice_api_errors']) {
|
1148 |
ct_send_error_notice($ct_result->comment);
|
1149 |
return $errors;
|
1150 |
+
}*/
|
1151 |
+
if(@intval($ct_result->errno) != 0)
|
1152 |
{
|
1153 |
+
if($params['checkjs']!=1)
|
1154 |
+
{
|
1155 |
+
$ct_result->allow = 0;
|
1156 |
+
$ct_result->spam = 1;
|
1157 |
+
$ct_result->comment=__( 'Forbidden. Please, enable Javascript.', 'cleantalk' );
|
1158 |
+
}
|
1159 |
+
else
|
1160 |
+
{
|
1161 |
+
$ct_result->allow = 1;
|
1162 |
+
$ct_result->comment=__( 'Allow', 'cleantalk' );
|
1163 |
+
}
|
1164 |
}
|
1165 |
|
1166 |
if ($ct_result->inactive != 0) {
|
1704 |
);
|
1705 |
}
|
1706 |
|
1707 |
+
if(@intval($ct_result->errno) != 0)
|
1708 |
+
{
|
1709 |
+
if($params['checkjs']!=1)
|
1710 |
+
{
|
1711 |
+
$ct_result->allow = 0;
|
1712 |
+
$ct_result->spam = 1;
|
1713 |
+
$ct_result->comment=__( 'Forbidden. Please, enable Javascript.', 'cleantalk' );
|
1714 |
+
}
|
1715 |
+
else
|
1716 |
+
{
|
1717 |
+
$ct_result->allow = 1;
|
1718 |
+
$ct_result->comment=__( 'Allow', 'cleantalk' );
|
1719 |
+
}
|
1720 |
}
|
1721 |
|
1722 |
// Restart submit form counter for failed requests
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: znaeff, shagimuratov, vlad-cleantalk
|
|
3 |
Tags: anti-spam, antispam, bbpress, buddypress, captcha, capcha, captha, catcha, cf7 spam, comments, contact form spam, signup, spam, spammers, spammy, woocommerce, wordpress spam, booking, order, subscription, gravity spam, jetpack, bots, contact form 7, contact form, registrations, ninja, Fast Secure Contact, Gravity forms, formidable, mailchimp, s2member, protection, protect, email, akismet, plugin, contact, recaptcha, google captcha, math, security, login, blacklist, cache, prevent, wordpress, User Frontend, bulk delete, bulk remove, cloudflare, widget, review, auth forms, firewall, ddos, cleantalk, mailpoet, profile builder, comment spam, registration spam, spam comments, comment moderation, spam bots, block spam, signup spam, spam blocker, spam filter, user registration spam,pingback,trackback
|
4 |
Requires at least: 3.0
|
5 |
Tested up to: 4.4
|
6 |
-
Stable tag: 5.
|
7 |
License: GPLv2
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
@@ -80,7 +80,7 @@ https://s.w.org/plugins/cleantalk-spam-protect/screenshot-5.png?r=1288723
|
|
80 |
|
81 |
The team CleanTalk has been developing a cloud spam protection system for 5 years and has created a truly reliable anti spam service designed for you to ensure your safety.
|
82 |
|
83 |
-
= Spam attacks log =
|
84 |
Service CleanTalk (this plugin is a client application for CleanTalk anti-spam service) records all filtered comments, registration and other spam attacks in the "Log of spam attacks" and stores the data in the log up to 45 days. Using the log, you can ensure reliable protection of your website from spam and no false/positive filtering.
|
85 |
|
86 |
= Spam FireWall =
|
@@ -415,6 +415,12 @@ WordPress 3.0 at least. PHP 5 with CURL or file_get_contents() function and enab
|
|
415 |
1. CleanTalk works faster than most of the other anti-spam plugins.
|
416 |
|
417 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
418 |
= 5.33.1 2015-12-04 =
|
419 |
* Fixed issue with BBPress: restored old user permission checking mechanism
|
420 |
* Fixed anti-spam comments checking: sometimes get_comments returned wrong comments number
|
@@ -931,6 +937,12 @@ WordPress 3.0 at least. PHP 5 with CURL or file_get_contents() function and enab
|
|
931 |
* First version
|
932 |
|
933 |
== Upgrade Notice ==
|
|
|
|
|
|
|
|
|
|
|
|
|
934 |
= 5.33.1 2015-12-04 =
|
935 |
* Fixed issue with BBPress
|
936 |
* Fixed anti-spam comments checking
|
3 |
Tags: anti-spam, antispam, bbpress, buddypress, captcha, capcha, captha, catcha, cf7 spam, comments, contact form spam, signup, spam, spammers, spammy, woocommerce, wordpress spam, booking, order, subscription, gravity spam, jetpack, bots, contact form 7, contact form, registrations, ninja, Fast Secure Contact, Gravity forms, formidable, mailchimp, s2member, protection, protect, email, akismet, plugin, contact, recaptcha, google captcha, math, security, login, blacklist, cache, prevent, wordpress, User Frontend, bulk delete, bulk remove, cloudflare, widget, review, auth forms, firewall, ddos, cleantalk, mailpoet, profile builder, comment spam, registration spam, spam comments, comment moderation, spam bots, block spam, signup spam, spam blocker, spam filter, user registration spam,pingback,trackback
|
4 |
Requires at least: 3.0
|
5 |
Tested up to: 4.4
|
6 |
+
Stable tag: 5.34
|
7 |
License: GPLv2
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
80 |
|
81 |
The team CleanTalk has been developing a cloud spam protection system for 5 years and has created a truly reliable anti spam service designed for you to ensure your safety.
|
82 |
|
83 |
+
= Spam attacks log =
|
84 |
Service CleanTalk (this plugin is a client application for CleanTalk anti-spam service) records all filtered comments, registration and other spam attacks in the "Log of spam attacks" and stores the data in the log up to 45 days. Using the log, you can ensure reliable protection of your website from spam and no false/positive filtering.
|
85 |
|
86 |
= Spam FireWall =
|
415 |
1. CleanTalk works faster than most of the other anti-spam plugins.
|
416 |
|
417 |
== Changelog ==
|
418 |
+
= 5.34 2015-12-10 =
|
419 |
+
* Improved spam checking mechanism
|
420 |
+
* Added "Collect browser details" option for better antispam protection
|
421 |
+
* Fixed custom contact forms checking for AJAX requests
|
422 |
+
* Minor translations fixes
|
423 |
+
|
424 |
= 5.33.1 2015-12-04 =
|
425 |
* Fixed issue with BBPress: restored old user permission checking mechanism
|
426 |
* Fixed anti-spam comments checking: sometimes get_comments returned wrong comments number
|
937 |
* First version
|
938 |
|
939 |
== Upgrade Notice ==
|
940 |
+
= 5.34 2015-12-10 =
|
941 |
+
* Improved spam checking mechanism
|
942 |
+
* Added "Collect browser details" option for better antispam protection
|
943 |
+
* Fixed custom contact forms checking for AJAX requests
|
944 |
+
* Minor translations fixes
|
945 |
+
|
946 |
= 5.33.1 2015-12-04 =
|
947 |
* Fixed issue with BBPress
|
948 |
* Fixed anti-spam comments checking
|