3.6.15
easy
3.0.11
2011-03-11
1.0
2011-03-11
1.1
2011-03-16
1.2
2011-03-25
1.2.1
2011-04-03
1.3.1
2011-04-06
1.3.2
2011-05-14
1.4.1
2011-06-18
1.4.2
2011-07-02
2.1.1
2011-07-09
2.2.1
2011-07-13
2.2.2
2011-07-20
2.2.3
2011-08-07
2.3.1
2011-08-13
2.4.1
2011-09-05
2.5.1
2011-11-12
2.6.1
2011-12-11
2.6.2
2011-12-25
2.7.2
2012-01-05
2.7.3
2012-02-28
2.8.3
2012-03-01
2.8.4
2012-03-23
2.9.4
2012-05-03
3.0.4
2012-06-19
3.1.4
2012-07-05
3.2.4
2012-08-20
3.3.4
2012-08-28
3.3.5
2012-08-30
3.3.6
2012-10-15
3.4.6
2012-10-22
3.4.7
2012-11-05
3.4.8
2012-11-09
3.4.9
2012-12-03
3.5.9
2012-12-19
3.5.10
2013-01-26
3.6.11
2013-01-30
3.6.12
2013-02-04
3.6.13
2013-02-20
3.6.14
2013-04-01
3.6.15
Russian language
allow))
$data['force_approved_state'] = $ct_result->allow;
if (isset($ct_result) && $ct_result->errno > 0)
$data['force_approved_state'] = false;
// End: cleantalk.ru moderation]]>
allow))
{
$data['force_approved_state'] = $ct_result->allow;
}
if (isset($ct_result) && $ct_result->errno > 0)
{
$data['force_approved_state'] = false;
}
// End: cleantalk.ru moderation]]>
sql_escape($ct_cleantalk_id) . '" WHERE post_id="' . $db->sql_escape($data['post_id']) . '"';
$db->sql_query($sql);
$db->sql_freeresult($result);
}
// End: cleantalk.ru moderation]]>
sql_query($sql);
$db->sql_freeresult($result);
}
// End: cleantalk.ru moderation]]>
sql_query($sql);
$row = $db->sql_fetchrow($result);
$ct_request_id = $row['ct_request_id'];
if (!empty($ct_request_id))
{
if (!class_exists('Cleantalk'))
{
require $phpbb_root_path . 'includes/cleantalk.' . $phpEx;
require $phpbb_root_path . 'includes/cleantalk.class.' . $phpEx;
}
$ct = new Cleantalk();
$ct->work_url = $config['ct_work_url'];
$ct->server_url = $config['ct_server_url'];
$ct->server_ttl = $config['ct_server_ttl'];
$ct->server_changed = $config['ct_server_changed'];
$ct_request = new CleantalkRequest();
$ct_request->auth_key = $config['ct_auth_key'];
$ct_request->feedback = $ct_request_id . ':0';
$ct_result = $ct->sendFeedback($ct_request);
if ($ct->server_change)
{
set_config('ct_work_url', $ct->work_url);
set_config('ct_server_ttl', $ct->server_ttl);
set_config('ct_server_changed', time());
}
if ($ct_result->errno > 0)
{
ct_error_mail($ct_result->errstr);
}
}
// End: cleantalk.ru moderation]]>
sql_query($sql);
$row = $db->sql_fetchrow($result);
$ct_request_id = $row['ct_request_id'];
if (!empty($ct_request_id))
{
if (!class_exists('Cleantalk'))
{
require $phpbb_root_path . 'includes/cleantalk.' . $phpEx;
require $phpbb_root_path . 'includes/cleantalk.class.' . $phpEx;
}
$ct = new Cleantalk();
$ct->work_url = $config['ct_work_url'];
$ct->server_url = $config['ct_server_url'];
$ct->server_ttl = $config['ct_server_ttl'];
$ct->server_changed = $config['ct_server_changed'];
$ct_request = new CleantalkRequest();
$ct_request->auth_key = $config['ct_auth_key'];
$ct_request->feedback = $ct_request_id . ':0';
$ct_result = $ct->sendFeedback($ct_request);
if ($ct->server_change)
{
set_config('ct_work_url', $ct->work_url);
set_config('ct_server_ttl', $ct->server_ttl);
set_config('ct_server_changed', time());
}
if ($ct_result->errno > 0)
{
ct_error_mail($ct_result->errstr);
}
}
// End: cleantalk.ru moderation]]>
work_url = $config['ct_work_url'];
$ct->server_url = $config['ct_server_url'];
$ct->server_ttl = $config['ct_server_ttl'];
$ct->server_changed = $config['ct_server_changed'];
$ct_request = new CleantalkRequest();
$ct_feedback_moderate = null;
$ct_post_ids = implode(',', $post_ids);
$sql = 'SELECT ct_request_id
FROM ' . POSTS_TABLE . '
WHERE post_id IN (' . $ct_post_ids . ')';
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
if (!empty($row['ct_request_id']))
{
$ct_feedback_moderate .= $row['ct_request_id'] . ':0;';
}
}
$ct_request->feedback = $ct_feedback_moderate;
$ct_request->auth_key = $config['ct_auth_key'];
$ct_result = $ct->sendFeedback($ct_request);
if ($ct->server_change)
{
set_config('ct_work_url', $ct->work_url);
set_config('ct_server_ttl', $ct->server_ttl);
set_config('ct_server_changed', time());
}
if ($ct_result->errno > 0)
{
ct_error_mail($ct_result->errstr);
}
// End: cleantalk.ru moderation]]>
work_url = $config['ct_work_url'];
$ct->server_url = $config['ct_server_url'];
$ct->server_ttl = $config['ct_server_ttl'];
$ct->server_changed = $config['ct_server_changed'];
$ct_request = new CleantalkRequest();
$ct_feedback_moderate = null;
$ct_post_ids = implode(',', $post_ids);
$sql = 'SELECT ct_request_id
FROM ' . POSTS_TABLE . '
WHERE ' . $db->sql_in_set('post_id', $ct_post_ids);
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
if (!empty($row['ct_request_id']))
{
$ct_feedback_moderate .= $row['ct_request_id'] . ':0;';
}
}
$ct_request->feedback = $ct_feedback_moderate;
$ct_request->auth_key = $config['ct_auth_key'];
$ct_result = $ct->sendFeedback($ct_request);
if ($ct->server_change)
{
set_config('ct_work_url', $ct->work_url);
set_config('ct_server_ttl', $ct->server_ttl);
set_config('ct_server_changed', time());
}
if ($ct_result->errno > 0)
{
ct_error_mail($ct_result->errstr);
}
// End: cleantalk.ru moderation
]]>
data['ct_submit_time']) && preg_match("/^\d+$/", $user->data['ct_submit_time']))
{
$submit_time = time() - $user->data['ct_submit_time'];
}
if (function_exists('get_sender_info'))
{
$sender_info = get_sender_info();
}
else
{
$sender_info = null;
}
$ct_request = new CleantalkRequest();
$ct_request->auth_key = $config['ct_auth_key'];
$ct_request->sender_email = $data['email'];
$ct_request->sender_nickname = $data['username'];
$ct_request->sender_ip = ct_session_ip($user->data['session_ip']);
$ct_request->agent = 'ct-phpbb-' . preg_replace("/(\d)\.(\d)\.(\d)/", "$1$2$3", $config['ct_version']);
$ct_request->response_lang = $config['ct_response_lang'];
$ct_request->submit_time = $submit_time;
$ct_request->js_on = $ct_checkjs;
$ct_request->tz = $data['tz'];
$ct_request->phone = $ct_phone;
$ct_request->sender_info = $sender_info;
$ct = new Cleantalk();
$ct->work_url = $config['ct_work_url'];
$ct->server_url = $config['ct_server_url'];
$ct->server_ttl = $config['ct_server_ttl'];
$ct->server_changed = $config['ct_server_changed'];
$ct_result = $ct->isAllowUser($ct_request);
if ($ct->server_change)
{
set_config('ct_work_url', $ct->work_url);
set_config('ct_server_ttl', $ct->server_ttl);
set_config('ct_server_changed', time());
}
if ($ct_result->errno > 0)
{
ct_error_mail($ct_result->errstr);
}
if ($ct_result->allow === 0 && !isset($ct_result->sms_allow))
{
$error[] = $ct_result->comment;
add_log('user', null, sprintf($user->lang['CT_USER_DENY'], $data['username'], $data['email']) . ' ' . $ct_result->comment);
}
}
if (!sizeof($error) && $config['ct_sms_check'] &&
($ct_status == 1 || $ct_status == 2))
{
// begin: for hidden fields
$s_hidden_fields = array(
'agreed' => 'true',
'change_lang' => 0,
);
if ($config['coppa_enable'])
{
$s_hidden_fields['coppa'] = $coppa;
}
if ($config['enable_confirm'])
{
$s_hidden_fields = array_merge($s_hidden_fields, $captcha->get_hidden_fields());
}
$s_hidden_fields = build_hidden_fields($s_hidden_fields);
$confirm_image = '';
// Visual Confirmation - Show images
if ($config['enable_confirm'])
{
$template->assign_vars(array(
'CAPTCHA_TEMPLATE' => $captcha->get_template(),
));
}
$l_reg_cond = '';
switch ($config['require_activation'])
{
case USER_ACTIVATION_SELF:
$l_reg_cond = $user->lang['UCP_EMAIL_ACTIVATE'];
break;
case USER_ACTIVATION_ADMIN:
$l_reg_cond = $user->lang['UCP_ADMIN_ACTIVATE'];
break;
}
$template->assign_vars(array(
'ERROR' => (sizeof($error)) ? implode('
', $error) : '',
'USERNAME' => $data['username'],
'PASSWORD' => $data['new_password'],
'PASSWORD_CONFIRM' => $data['password_confirm'],
'EMAIL' => $data['email'],
'EMAIL_CONFIRM' => $data['email_confirm'],
'L_REG_COND' => $l_reg_cond,
'L_USERNAME_EXPLAIN' => sprintf($user->lang[$config['allow_name_chars'] . '_EXPLAIN'], $config['min_name_chars'], $config['max_name_chars']),
'L_PASSWORD_EXPLAIN' => sprintf($user->lang[$config['pass_complex'] . '_EXPLAIN'], $config['min_pass_chars'], $config['max_pass_chars']),
'S_LANG_OPTIONS' => language_select($data['lang']),
'S_TZ_OPTIONS' => tz_select($data['tz']),
'S_CONFIRM_REFRESH' => ($config['enable_confirm'] && $config['confirm_refresh']) ? true : false,
'S_REGISTRATION' => true,
'S_COPPA' => $coppa,
'S_HIDDEN_FIELDS' => $s_hidden_fields,
'S_UCP_ACTION' => append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=register'),
));
// end: for hidden fields
if (isset($ct_result->sms_allow))
{
if ($ct_result->sms_allow == '-1')
{
$ct_activation_admin = true;
$ct_activation_comment = $ct_result->sms_error_text;
$config['email_enable'] = 1;
$config['require_activation'] = USER_ACTIVATION_ADMIN;
}
elseif (isset($ct_result->sms_error_text) && !empty($ct_result->sms_error_text))
{
$error[] = $ct_result->sms_error_text;
$template->assign_vars(array(
'ERROR' => (sizeof($error)) ? implode('
', $error) : ''
));
$this->tpl_name = 'ucp_register';
}
else
{
$data['ct_request_id'] = $ct_result->id;
$data = array_merge($data, array(
'sender_ip' => $ct_request->sender_ip,
'submit_time' => $ct_request->submit_time,
'js_on' => $ct_request->js_on,
));
$ct_data['data'] = $data;
$ct_data['cp_data'] = $cp_data;
$sql = "UPDATE " . SESSIONS_TABLE . "
SET ct_register_form_data = '" . $db->sql_escape(serialize($ct_data)) . "',
ct_register_form_data_time = '" . time() . "'
WHERE session_id = '" . $db->sql_escape($user->session_id) . "'";
$db->sql_query($sql);
$this->tpl_name = '../../cleantalk_forms/ucp_check_sms';
return;
}
}
if ($ct_status == 2)
{
if (strlen($data['ct_sms_code']) != 4)
{
$error[] = $user->lang['CT_SMS_CODE_ERROR'];
$template->assign_vars(array(
'ERROR' => (sizeof($error)) ? implode('
', $error) : ''
));
$this->tpl_name = '../../cleantalk_forms/ucp_check_sms';
return;
}
$ct = new Cleantalk();
$ct->work_url = $config['ct_work_url'];
$ct->server_url = $config['ct_server_url'];
$ct->server_ttl = $config['ct_server_ttl'];
$ct->server_changed = $config['ct_server_changed'];
$ct->stay_on_server = true;
$ct_request = new CleantalkRequest();
$ct_request->auth_key = $config['ct_auth_key'];
$ct_request->feedback = $data['ct_request_id'] . ':' . $data['ct_sms_code'];
$ct_result = $ct->sendFeedback($ct_request);
$sms_error_text = (isset($ct_result->sms_error_text[$data['ct_request_id']])) ? $ct_result->sms_error_text[$data['ct_request_id']] : null;
if ($ct_result->errno > 0 || $ct_result->sms[$data['ct_request_id']] == 0)
{
if ((isset($data['ct_attempt_send_code']) && $data['ct_attempt_send_code'] == 3) || $ct_result->errno > 0) {
$data['ct_attempt_send_code'] = 0;
$ct_request = new CleantalkRequest();
$ct_request->auth_key = $config['ct_auth_key'];
$ct_request->sender_email = $data['email'];
$ct_request->sender_nickname = $data['username'];
$ct_request->sender_ip = $data['sender_ip'];
$ct_request->agent = 'ct-phpbb-' . preg_replace("/(\d)\.(\d)\.(\d)/", "$1$2$3", $config['ct_version']);
$ct_request->response_lang = $config['ct_response_lang'];
$ct_request->submit_time = $data['submit_time'];
$ct_request->js_on = $data['js_on'];
$ct_request->tz = $data['tz'];
$ct_request->phone = $ct_phone;
$ct = new Cleantalk();
$ct->work_url = $config['ct_work_url'];
$ct->server_url = $config['ct_server_url'];
$ct->server_ttl = $config['ct_server_ttl'];
$ct->server_changed = $config['ct_server_changed'];
$ct->stay_on_server = false;
$ct_result = $ct->isAllowUser($ct_request);
if ($ct->server_change)
{
set_config('ct_work_url', $ct->work_url);
set_config('ct_server_ttl', $ct->server_ttl);
set_config('ct_server_changed', time());
}
$data['ct_request_id'] = $ct_result->id;
$ct_data['data'] = $data;
$ct_data['cp_data'] = $cp_data;
$sql = "UPDATE " . SESSIONS_TABLE . "
SET ct_register_form_data = '" . $db->sql_escape(serialize($ct_data)) . "',
ct_register_form_data_time = '" . time() . "'
WHERE session_id = '" . $db->sql_escape($user->session_id) . "'";
$db->sql_query($sql);
if (isset($ct_result->sms_allow))
{
if ($ct_result->sms_allow == '-1')
{
$ct_activation_admin = true;
$ct_activation_comment = $ct_result->sms_error_text;
$config['email_enable'] = 1;
$config['require_activation'] = USER_ACTIVATION_ADMIN;
}
elseif (isset($ct_result->sms_error_text) && !empty($ct_result->sms_error_text))
{
$error[] = $ct_result->sms_error_text;
$template->assign_vars(array(
'ERROR' => (sizeof($error)) ? implode('
', $error) : ''
));
$this->tpl_name = 'ucp_register';
}
else
{
if (!empty($sms_error_text))
{
$error[] = $sms_error_text;
}
else
{
$error[] = $user->lang['CT_SERVER_NOT_AVAILABLE'];
}
$template->assign_vars(array(
'ERROR' => (sizeof($error)) ? implode('
', $error) : ''
));
$data['ct_request_id'] = $ct_result->id;
$data = array_merge($data, array(
'sender_ip' => $ct_request->sender_ip,
'submit_time' => $ct_request->submit_time,
'js_on' => $ct_request->js_on,
));
$ct_data['data'] = $data;
$ct_data['cp_data'] = $cp_data;
$sql = "UPDATE " . SESSIONS_TABLE . "
SET ct_register_form_data = '" . $db->sql_escape(serialize($ct_data)) . "',
ct_register_form_data_time = '" . time() . "'
WHERE session_id = '" . $db->sql_escape($user->session_id) . "'";
$db->sql_query($sql);
$this->tpl_name = '../../cleantalk_forms/ucp_check_sms';
return;
}
}
$this->tpl_name = 'ucp_register';
} else {
$data['ct_attempt_send_code'] = (isset($data['ct_attempt_send_code'])) ?
(int)$data['ct_attempt_send_code']+1 : 1;
$error[] = $sms_error_text;
$template->assign_vars(array(
'ERROR' => (sizeof($error)) ? implode('
', $error) : ''
));
$ct_data['data'] = $data;
$ct_data['cp_data'] = $cp_data;
$sql = "UPDATE " . SESSIONS_TABLE . "
SET ct_register_form_data = '" . $db->sql_escape(serialize($ct_data)) . "',
ct_register_form_data_time = '" . time() . "'
WHERE session_id = '" . $db->sql_escape($user->session_id) . "'";
$db->sql_query($sql);
$this->tpl_name = '../../cleantalk_forms/ucp_check_sms';
return;
}
}
if ($ct_result->sms[$data['ct_request_id']] == 1)
{
$sql = 'UPDATE ' . SESSIONS_TABLE . '
SET ct_register_form_data = "",
ct_register_form_data_time = "0"
WHERE session_id = \'' . $db->sql_escape($user->session_id) . '\'';
$db->sql_query($sql);
$ct_result->id = $data['ct_request_id'];
}
if ($ct->server_change)
{
set_config('ct_work_url', $ct->work_url);
set_config('ct_server_ttl', $ct->server_ttl);
set_config('ct_server_changed', time());
}
}
}
}
// End: cleantalk.ru moderation]]>
data['ct_submit_time']) && preg_match("/^\d+$/", $user->data['ct_submit_time']))
{
$submit_time = time() - $user->data['ct_submit_time'];
}
if (function_exists('get_sender_info'))
{
$sender_info = get_sender_info();
}
else
{
$sender_info = null;
}
$ct_request = new CleantalkRequest();
$ct_request->auth_key = $config['ct_auth_key'];
$ct_request->sender_email = $data['email'];
$ct_request->sender_nickname = $data['username'];
$ct_request->sender_ip = ct_session_ip($user->data['session_ip']);
$ct_request->agent = 'ct-phpbb-' . preg_replace("/(\d)\.(\d)\.(\d)/", "$1$2$3", $config['ct_version']);
$ct_request->response_lang = $config['ct_response_lang'];
$ct_request->submit_time = $submit_time;
$ct_request->js_on = $ct_checkjs;
$ct_request->tz = $data['tz'];
$ct_request->phone = $ct_phone;
$ct_request->sender_info = $sender_info;
$ct = new Cleantalk();
$ct->work_url = $config['ct_work_url'];
$ct->server_url = $config['ct_server_url'];
$ct->server_ttl = $config['ct_server_ttl'];
$ct->server_changed = $config['ct_server_changed'];
$ct_result = $ct->isAllowUser($ct_request);
if ($ct->server_change)
{
set_config('ct_work_url', $ct->work_url);
set_config('ct_server_ttl', $ct->server_ttl);
set_config('ct_server_changed', time());
}
if ($ct_result->errno > 0)
{
ct_error_mail($ct_result->errstr);
}
if ($ct_result->allow === 0 && !isset($ct_result->sms_allow))
{
$error[] = $ct_result->comment;
add_log('user', null, sprintf($user->lang['CT_USER_DENY'], $data['username'], $data['email']) . ' ' . $ct_result->comment);
}
}
if (!sizeof($error) && $config['ct_sms_check'] &&
($ct_status == 1 || $ct_status == 2))
{
// begin: for hidden fields
$s_hidden_fields = array(
'agreed' => 'true',
'change_lang' => 0,
);
if ($config['coppa_enable'])
{
$s_hidden_fields['coppa'] = $coppa;
}
if ($config['enable_confirm'])
{
$s_hidden_fields = array_merge($s_hidden_fields, $captcha->get_hidden_fields());
}
$s_hidden_fields = build_hidden_fields($s_hidden_fields);
$confirm_image = '';
// Visual Confirmation - Show images
if ($config['enable_confirm'])
{
$template->assign_vars(array(
'CAPTCHA_TEMPLATE' => $captcha->get_template(),
));
}
$l_reg_cond = '';
switch ($config['require_activation'])
{
case USER_ACTIVATION_SELF:
$l_reg_cond = $user->lang['UCP_EMAIL_ACTIVATE'];
break;
case USER_ACTIVATION_ADMIN:
$l_reg_cond = $user->lang['UCP_ADMIN_ACTIVATE'];
break;
}
$template->assign_vars(array(
'ERROR' => (sizeof($error)) ? implode('
', $error) : '',
'USERNAME' => $data['username'],
'PASSWORD' => $data['new_password'],
'PASSWORD_CONFIRM' => $data['password_confirm'],
'EMAIL' => $data['email'],
'EMAIL_CONFIRM' => $data['email_confirm'],
'L_REG_COND' => $l_reg_cond,
'L_USERNAME_EXPLAIN' => sprintf($user->lang[$config['allow_name_chars'] . '_EXPLAIN'], $config['min_name_chars'], $config['max_name_chars']),
'L_PASSWORD_EXPLAIN' => sprintf($user->lang[$config['pass_complex'] . '_EXPLAIN'], $config['min_pass_chars'], $config['max_pass_chars']),
'S_LANG_OPTIONS' => language_select($data['lang']),
'S_TZ_OPTIONS' => tz_select($data['tz']),
'S_CONFIRM_REFRESH' => ($config['enable_confirm'] && $config['confirm_refresh']) ? true : false,
'S_REGISTRATION' => true,
'S_COPPA' => $coppa,
'S_HIDDEN_FIELDS' => $s_hidden_fields,
'S_UCP_ACTION' => append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=register'),
));
// end: for hidden fields
if (isset($ct_result->sms_allow))
{
if ($ct_result->sms_allow == '-1')
{
$ct_activation_admin = true;
$ct_activation_comment = $ct_result->sms_error_text;
$config['email_enable'] = 1;
$config['require_activation'] = USER_ACTIVATION_ADMIN;
}
elseif (isset($ct_result->sms_error_text) && !empty($ct_result->sms_error_text))
{
$error[] = $ct_result->sms_error_text;
$template->assign_vars(array(
'ERROR' => (sizeof($error)) ? implode('
', $error) : ''
));
$this->tpl_name = 'ucp_register';
}
else
{
$data['ct_request_id'] = $ct_result->id;
$data = array_merge($data, array(
'sender_ip' => $ct_request->sender_ip,
'submit_time' => $ct_request->submit_time,
'js_on' => $ct_request->js_on,
));
$ct_data['data'] = $data;
$ct_data['cp_data'] = $cp_data;
$sql = "UPDATE " . SESSIONS_TABLE . "
SET ct_register_form_data = '" . $db->sql_escape(serialize($ct_data)) . "',
ct_register_form_data_time = '" . time() . "'
WHERE session_id = '" . $db->sql_escape($user->session_id) . "'";
$db->sql_query($sql);
$this->tpl_name = '../../prosilver/template/ucp_check_sms';
return;
}
}
if ($ct_status == 2)
{
if (strlen($data['ct_sms_code']) != 4)
{
$error[] = $user->lang['CT_SMS_CODE_ERROR'];
$template->assign_vars(array(
'ERROR' => (sizeof($error)) ? implode('
', $error) : ''
));
$this->tpl_name = '../../prosilver/template/ucp_check_sms';
return;
}
$ct = new Cleantalk();
$ct->work_url = $config['ct_work_url'];
$ct->server_url = $config['ct_server_url'];
$ct->server_ttl = $config['ct_server_ttl'];
$ct->server_changed = $config['ct_server_changed'];
$ct->stay_on_server = true;
$ct_request = new CleantalkRequest();
$ct_request->auth_key = $config['ct_auth_key'];
$ct_request->feedback = $data['ct_request_id'] . ':' . $data['ct_sms_code'];
$ct_result = $ct->sendFeedback($ct_request);
$sms_error_text = (isset($ct_result->sms_error_text[$data['ct_request_id']])) ? $ct_result->sms_error_text[$data['ct_request_id']] : null;
if ($ct_result->errno > 0 || $ct_result->sms[$data['ct_request_id']] == 0)
{
if ((isset($data['ct_attempt_send_code']) && $data['ct_attempt_send_code'] == 3) || $ct_result->errno > 0) {
$data['ct_attempt_send_code'] = 0;
$ct_request = new CleantalkRequest();
$ct_request->auth_key = $config['ct_auth_key'];
$ct_request->sender_email = $data['email'];
$ct_request->sender_nickname = $data['username'];
$ct_request->sender_ip = $data['sender_ip'];
$ct_request->agent = 'ct-phpbb-' . preg_replace("/(\d)\.(\d)\.(\d)/", "$1$2$3", $config['ct_version']);
$ct_request->response_lang = $config['ct_response_lang'];
$ct_request->submit_time = $data['submit_time'];
$ct_request->js_on = $data['js_on'];
$ct_request->tz = $data['tz'];
$ct_request->phone = $ct_phone;
$ct = new Cleantalk();
$ct->work_url = $config['ct_work_url'];
$ct->server_url = $config['ct_server_url'];
$ct->server_ttl = $config['ct_server_ttl'];
$ct->server_changed = $config['ct_server_changed'];
$ct->stay_on_server = false;
$ct_result = $ct->isAllowUser($ct_request);
if ($ct->server_change)
{
set_config('ct_work_url', $ct->work_url);
set_config('ct_server_ttl', $ct->server_ttl);
set_config('ct_server_changed', time());
}
$data['ct_request_id'] = $ct_result->id;
$ct_data['data'] = $data;
$ct_data['cp_data'] = $cp_data;
$sql = "UPDATE " . SESSIONS_TABLE . "
SET ct_register_form_data = '" . $db->sql_escape(serialize($ct_data)) . "',
ct_register_form_data_time = '" . time() . "'
WHERE session_id = '" . $db->sql_escape($user->session_id) . "'";
$db->sql_query($sql);
if (isset($ct_result->sms_allow))
{
if ($ct_result->sms_allow == '-1')
{
$ct_activation_admin = true;
$ct_activation_comment = $ct_result->sms_error_text;
$config['email_enable'] = 1;
$config['require_activation'] = USER_ACTIVATION_ADMIN;
}
elseif (isset($ct_result->sms_error_text) && !empty($ct_result->sms_error_text))
{
$error[] = $ct_result->sms_error_text;
$template->assign_vars(array(
'ERROR' => (sizeof($error)) ? implode('
', $error) : ''
));
$this->tpl_name = 'ucp_register';
}
else
{
if (!empty($sms_error_text))
{
$error[] = $sms_error_text;
}
else
{
$error[] = $user->lang['CT_SERVER_NOT_AVAILABLE'];
}
$template->assign_vars(array(
'ERROR' => (sizeof($error)) ? implode('
', $error) : ''
));
$data['ct_request_id'] = $ct_result->id;
$data = array_merge($data, array(
'sender_ip' => $ct_request->sender_ip,
'submit_time' => $ct_request->submit_time,
'js_on' => $ct_request->js_on,
));
$ct_data['data'] = $data;
$ct_data['cp_data'] = $cp_data;
$sql = "UPDATE " . SESSIONS_TABLE . "
SET ct_register_form_data = '" . $db->sql_escape(serialize($ct_data)) . "',
ct_register_form_data_time = '" . time() . "'
WHERE session_id = '" . $db->sql_escape($user->session_id) . "'";
$db->sql_query($sql);
$this->tpl_name = '../../prosilver/template/ucp_check_sms';
return;
}
}
$this->tpl_name = 'ucp_register';
} else {
$data['ct_attempt_send_code'] = (isset($data['ct_attempt_send_code'])) ?
(int)$data['ct_attempt_send_code']+1 : 1;
$error[] = $sms_error_text;
$template->assign_vars(array(
'ERROR' => (sizeof($error)) ? implode('
', $error) : ''
));
$ct_data['data'] = $data;
$ct_data['cp_data'] = $cp_data;
$sql = "UPDATE " . SESSIONS_TABLE . "
SET ct_register_form_data = '" . $db->sql_escape(serialize($ct_data)) . "',
ct_register_form_data_time = '" . time() . "'
WHERE session_id = '" . $db->sql_escape($user->session_id) . "'";
$db->sql_query($sql);
$this->tpl_name = '../../prosilver/template/ucp_check_sms';
return;
}
}
if ($ct_result->sms[$data['ct_request_id']] == 1)
{
$sql = 'UPDATE ' . SESSIONS_TABLE . '
SET ct_register_form_data = "",
ct_register_form_data_time = "0"
WHERE session_id = \'' . $db->sql_escape($user->session_id) . '\'';
$db->sql_query($sql);
$ct_result->id = $data['ct_request_id'];
}
if ($ct->server_change)
{
set_config('ct_work_url', $ct->work_url);
set_config('ct_server_ttl', $ct->server_ttl);
set_config('ct_server_changed', time());
}
}
}
}
// End: cleantalk.ru moderation
]]>
CLEANTALK -> Settings -> Cleantalk. Spam protect
4. Enable New users check at the same place.
5. Enable moderation for selected forums,
ACP -> Forums -> Manage forums -> FORUM_NAME -> Cleantalk. Spam protect
6. Register a new user to check registration proccess.
7. Post a message to forum where have enabled Cleantalk.]]>