Zeile 16 | Zeile 16 |
---|
$nosession['avatar'] = 1;
$templatelist = "member_register,member_register_hiddencaptcha,member_register_coppa,member_register_agreement_coppa,member_register_agreement,member_register_customfield,member_register_requiredfields,member_profile_findthreads";
|
$nosession['avatar'] = 1;
$templatelist = "member_register,member_register_hiddencaptcha,member_register_coppa,member_register_agreement_coppa,member_register_agreement,member_register_customfield,member_register_requiredfields,member_profile_findthreads";
|
$templatelist .= ",member_loggedin_notice,member_profile_away,member_register_regimage,member_register_regimage_recaptcha_invisible,member_register_regimage_nocaptcha,post_captcha_hidden,post_captcha,member_register_referrer"; $templatelist .= ",member_profile_email,member_profile_offline,member_profile_reputation,member_profile_warn,member_profile_warninglevel,member_profile_customfields_field,member_profile_customfields,member_profile_adminoptions,member_profile"; $templatelist .= ",member_profile_signature,member_profile_avatar,member_profile_groupimage,member_profile_referrals,member_profile_website,member_profile_reputation_vote,member_activate,member_lostpw,member_register_additionalfields";
| $templatelist .= ",member_loggedin_notice,member_profile_away,member_register_regimage,member_register_regimage_recaptcha_invisible,member_register_regimage_nocaptcha,post_captcha_hcaptcha_invisible,post_captcha_hcaptcha,post_captcha_hidden,post_captcha,member_register_referrer"; $templatelist .= ",member_profile_email,member_profile_offline,member_profile_reputation,member_profile_warn,member_profile_warninglevel,member_profile_warninglevel_link,member_profile_customfields_field,member_profile_customfields,member_profile_adminoptions_manageban,member_profile_adminoptions,member_profile"; $templatelist .= ",member_profile_signature,member_profile_avatar,member_profile_groupimage,member_referrals_link,member_profile_referrals,member_profile_website,member_profile_reputation_vote,member_activate,member_lostpw,member_register_additionalfields";
|
$templatelist .= ",member_profile_modoptions_manageuser,member_profile_modoptions_editprofile,member_profile_modoptions_banuser,member_profile_modoptions_viewnotes,member_profile_modoptions_editnotes,member_profile_modoptions_purgespammer"; $templatelist .= ",usercp_profile_profilefields_select_option,usercp_profile_profilefields_multiselect,usercp_profile_profilefields_select,usercp_profile_profilefields_textarea,usercp_profile_profilefields_radio,member_viewnotes"; $templatelist .= ",member_register_question,member_register_question_refresh,usercp_options_timezone,usercp_options_timezone_option,usercp_options_language_option,member_profile_customfields_field_multi_item,member_profile_customfields_field_multi";
| $templatelist .= ",member_profile_modoptions_manageuser,member_profile_modoptions_editprofile,member_profile_modoptions_banuser,member_profile_modoptions_viewnotes,member_profile_modoptions_editnotes,member_profile_modoptions_purgespammer"; $templatelist .= ",usercp_profile_profilefields_select_option,usercp_profile_profilefields_multiselect,usercp_profile_profilefields_select,usercp_profile_profilefields_textarea,usercp_profile_profilefields_radio,member_viewnotes"; $templatelist .= ",member_register_question,member_register_question_refresh,usercp_options_timezone,usercp_options_timezone_option,usercp_options_language_option,member_profile_customfields_field_multi_item,member_profile_customfields_field_multi";
|
Zeile 31 | Zeile 31 |
---|
require_once MYBB_ROOT."inc/functions_post.php"; require_once MYBB_ROOT."inc/functions_user.php"; require_once MYBB_ROOT."inc/class_parser.php";
|
require_once MYBB_ROOT."inc/functions_post.php"; require_once MYBB_ROOT."inc/functions_user.php"; require_once MYBB_ROOT."inc/class_parser.php";
|
| require_once MYBB_ROOT."inc/functions_modcp.php";
|
$parser = new postParser;
// Load global language phrases
| $parser = new postParser;
// Load global language phrases
|
Zeile 89 | Zeile 90 |
---|
} }
|
} }
|
| $fromreg = 0;
|
if($mybb->input['action'] == "do_register" && $mybb->request_method == "post") { $plugins->run_hooks("member_do_register_start");
| if($mybb->input['action'] == "do_register" && $mybb->request_method == "post") { $plugins->run_hooks("member_do_register_start");
|
Zeile 300 | Zeile 302 |
---|
$db->update_query("questions", $update_question, "qid='{$question['qid']}'"); }
|
$db->update_query("questions", $update_question, "qid='{$question['qid']}'"); }
|
$db->delete_query("questionsessions", "sid='{$sid}'");
| $db->delete_query("questionsessions", "sid='{$question_id}'");
|
} }
|
} }
|
| $regerrors = '';
|
if(!empty($errors)) { $username = htmlspecialchars_uni($mybb->get_input('username'));
| if(!empty($errors)) { $username = htmlspecialchars_uni($mybb->get_input('username'));
|
Zeile 597 | Zeile 600 |
---|
// Verify if we have permissions to access user-users require_once MYBB_ROOT.$mybb->config['admin_dir']."/modules/user/module_meta.php";
|
// Verify if we have permissions to access user-users require_once MYBB_ROOT.$mybb->config['admin_dir']."/modules/user/module_meta.php";
|
if(function_exists("user_admin_permissions")) {
| |
// Get admin permissions $adminperms = get_admin_permissions($recipient['uid']);
|
// Get admin permissions $adminperms = get_admin_permissions($recipient['uid']);
|
$permissions = user_admin_permissions(); if(array_key_exists('users', $permissions['permissions']) && $adminperms['user']['users'] != 1)
| if(empty($adminperms['user']['users']) || $adminperms['user']['users'] != 1)
|
{ continue; // No permissions }
|
{ continue; // No permissions }
|
}
| |
}
// Load language
| }
// Load language
|
Zeile 670 | Zeile 668 |
---|
$plugins->run_hooks("member_do_register_end");
redirect("index.php", $lang->redirect_registered);
|
$plugins->run_hooks("member_do_register_end");
redirect("index.php", $lang->redirect_registered);
|
} } }
| } } }
|
if($mybb->input['action'] == "coppa_form") {
| if($mybb->input['action'] == "coppa_form") {
|
Zeile 718 | Zeile 716 |
---|
if($birthday_year == 0) { $birthday_year = '';
|
if($birthday_year == 0) { $birthday_year = '';
|
}
| }
|
// Is COPPA checking enabled? if($mybb->settings['coppa'] != "disabled" && !isset($mybb->input['step']))
| // Is COPPA checking enabled? if($mybb->settings['coppa'] != "disabled" && !isset($mybb->input['step']))
|
Zeile 735 | Zeile 733 |
---|
}
$bdaytime = @mktime(0, 0, 0, $mybb->input['bday2'], $mybb->input['bday1'], $birthday_year);
|
}
$bdaytime = @mktime(0, 0, 0, $mybb->input['bday2'], $mybb->input['bday1'], $birthday_year);
|
|
|
// Store DOB in cookie so we can save it with the registration my_setcookie("coppadob", "{$mybb->input['bday1']}-{$mybb->input['bday2']}-{$birthday_year}", -1);
// User is <= 13, we mark as a coppa user if($bdaytime >= mktime(0, 0, 0, my_date('n'), my_date('d'), my_date('Y')-13))
|
// Store DOB in cookie so we can save it with the registration my_setcookie("coppadob", "{$mybb->input['bday1']}-{$mybb->input['bday2']}-{$birthday_year}", -1);
// User is <= 13, we mark as a coppa user if($bdaytime >= mktime(0, 0, 0, my_date('n'), my_date('d'), my_date('Y')-13))
|
{
| {
|
my_setcookie("coppauser", 1, -0); $under_thirteen = true; }
| my_setcookie("coppauser", 1, -0); $under_thirteen = true; }
|
Zeile 789 | Zeile 787 |
---|
{ $lang->js_validator_username_length = $lang->sprintf($lang->js_validator_username_length, $mybb->settings['minnamelength'], $mybb->settings['maxnamelength']); }
|
{ $lang->js_validator_username_length = $lang->sprintf($lang->js_validator_username_length, $mybb->settings['minnamelength'], $mybb->settings['maxnamelength']); }
|
$validator_javascript = "<script type=\"text/javascript\"> $(function() { $('#registration_form').validate({ rules: { username: { required: true, minlength: {$mybb->settings['minnamelength']}, maxlength: {$mybb->settings['maxnamelength']}, remote: { url: 'xmlhttp.php?action=username_availability', type: 'post', dataType: 'json', data: { my_post_key: my_post_key }, }, }, email: { required: true, email: true, remote: { url: 'xmlhttp.php?action=email_availability', type: 'post', dataType: 'json', data: { my_post_key: my_post_key }, }, }, email2: { required: true, email: true, equalTo: '#email' }, }, messages: { username: { minlength: '{$lang->js_validator_username_length}', maxlength: '{$lang->js_validator_username_length}', }, email: '{$lang->js_validator_invalid_email}', email2: '{$lang->js_validator_email_match}', }, errorPlacement: function(error, element) { if(element.is(':checkbox') || element.is(':radio')) error.insertAfter($('input[name=\"' + element.attr('name') + '\"]').last().next('span')); else error.insertAfter(element); } });\n";
| |
if(isset($mybb->input['timezoneoffset'])) {
| if(isset($mybb->input['timezoneoffset'])) {
|
Zeile 894 | Zeile 839 |
---|
$ref['username'] = htmlspecialchars_uni($ref['username']); $referrername = $ref['username']; }
|
$ref['username'] = htmlspecialchars_uni($ref['username']); $referrername = $ref['username']; }
|
elseif(isset($referrer))
| elseif(!empty($referrer))
|
{ $query = $db->simple_select("users", "username", "uid='".(int)$referrer['uid']."'"); $ref = $db->fetch_array($query);
| { $query = $db->simple_select("users", "username", "uid='".(int)$referrer['uid']."'"); $ref = $db->fetch_array($query);
|
Zeile 945 | Zeile 890 |
---|
if(is_array($pfcache)) {
|
if(is_array($pfcache)) {
|
| $jsvar_reqfields = array();
|
foreach($pfcache as $profilefield) { if($profilefield['required'] != 1 && $profilefield['registration'] != 1 || !is_member($profilefield['editableby'], array('usergroup' => $mybb->user['usergroup'], 'additionalgroups' => $usergroup)))
| foreach($pfcache as $profilefield) { if($profilefield['required'] != 1 && $profilefield['registration'] != 1 || !is_member($profilefield['editableby'], array('usergroup' => $mybb->user['usergroup'], 'additionalgroups' => $usergroup)))
|
Zeile 955 | Zeile 901 |
---|
$code = $select = $val = $options = $expoptions = $useropts = ''; $seloptions = array(); $profilefield['type'] = htmlspecialchars_uni($profilefield['type']);
|
$code = $select = $val = $options = $expoptions = $useropts = ''; $seloptions = array(); $profilefield['type'] = htmlspecialchars_uni($profilefield['type']);
|
$thing = explode("\n", $profilefield['type'], "2");
| $thing = explode("\n", $profilefield['type'], 2);
|
$type = trim($thing[0]);
|
$type = trim($thing[0]);
|
$options = $thing[1];
| $options = isset($thing[1]) ? $thing[1] : null;
|
$select = ''; $field = "fid{$profilefield['fid']}"; $profilefield['description'] = htmlspecialchars_uni($profilefield['description']); $profilefield['name'] = htmlspecialchars_uni($profilefield['name']);
|
$select = ''; $field = "fid{$profilefield['fid']}"; $profilefield['description'] = htmlspecialchars_uni($profilefield['description']); $profilefield['name'] = htmlspecialchars_uni($profilefield['name']);
|
if($errors && isset($mybb->input['profile_fields'][$field]))
| if(!empty($errors) && isset($mybb->input['profile_fields'][$field]))
|
{ $userfield = $mybb->input['profile_fields'][$field]; }
| { $userfield = $mybb->input['profile_fields'][$field]; }
|
Zeile 972 | Zeile 918 |
---|
} if($type == "multiselect") {
|
} if($type == "multiselect") {
|
if($errors)
| if(!empty($errors))
|
{ $useropts = $userfield; }
| { $useropts = $userfield; }
|
Zeile 1055 | Zeile 1001 |
---|
} elseif($type == "checkbox") {
|
} elseif($type == "checkbox") {
|
if($errors)
| if(!empty($errors))
|
{ $useropts = $userfield; }
| { $useropts = $userfield; }
|
Zeile 1107 | Zeile 1053 |
---|
// JS validator extra, choose correct selectors for everything except single select which always has value if($type != 'select') {
|
// JS validator extra, choose correct selectors for everything except single select which always has value if($type != 'select') {
|
if($type == "textarea") { $inp_selector = "$('textarea[name=\"profile_fields[{$field}]\"]')"; } elseif($type == "multiselect") { $inp_selector = "$('select[name=\"profile_fields[{$field}][]\"]')"; } elseif($type == "checkbox") { $inp_selector = "$('input[name=\"profile_fields[{$field}][]\"]')"; } else { $inp_selector = "$('input[name=\"profile_fields[{$field}]\"]')"; }
$validator_javascript .= " {$inp_selector}.rules('add', { required: true, messages: { required: '{$lang->js_validator_not_empty}' } });\n"; }
| $jsvar_reqfields[] = array( 'type' => $type, 'fid' => $field, ); }
|
eval("\$requiredfields .= \"".$templates->get("member_register_customfield")."\";"); }
| eval("\$requiredfields .= \"".$templates->get("member_register_customfield")."\";"); }
|
Zeile 1139 | Zeile 1065 |
---|
{ eval("\$customfields .= \"".$templates->get("member_register_customfield")."\";"); }
|
{ eval("\$customfields .= \"".$templates->get("member_register_customfield")."\";"); }
|
}
| }
|
if($requiredfields) { eval("\$requiredfields = \"".$templates->get("member_register_requiredfields")."\";");
| if($requiredfields) { eval("\$requiredfields = \"".$templates->get("member_register_requiredfields")."\";");
|
Zeile 1149 | Zeile 1075 |
---|
if($customfields) { eval("\$customfields = \"".$templates->get("member_register_additionalfields")."\";");
|
if($customfields) { eval("\$customfields = \"".$templates->get("member_register_additionalfields")."\";");
|
} }
if(!isset($fromreg))
| } }
if(!isset($fromreg) || $fromreg == 0)
|
{ $allownoticescheck = "checked=\"checked\""; $hideemailcheck = '';
| { $allownoticescheck = "checked=\"checked\""; $hideemailcheck = '';
|
Zeile 1170 | Zeile 1096 |
---|
$regerrors = ''; } // Spambot registration image thingy
|
$regerrors = ''; } // Spambot registration image thingy
|
| $captcha_html = 0; $regimage = '';
|
if($mybb->settings['captchaimage']) { require_once MYBB_ROOT.'inc/class_captcha.php';
| if($mybb->settings['captchaimage']) { require_once MYBB_ROOT.'inc/class_captcha.php';
|
Zeile 1177 | Zeile 1105 |
---|
if($captcha->html) {
|
if($captcha->html) {
|
| $captcha_html = 1;
|
$regimage = $captcha->html;
|
$regimage = $captcha->html;
|
if($mybb->settings['captchaimage'] == 1) { // JS validator extra for our default CAPTCHA $validator_javascript .= " $('#imagestring').rules('add', { required: true, remote:{ url: 'xmlhttp.php?action=validate_captcha', type: 'post', dataType: 'json', data: { imagehash: function () { return $('#imagehash').val(); }, my_post_key: my_post_key }, }, messages: { remote: '{$lang->js_validator_no_image_text}' } });\n"; }
| |
} }
// Security Question $questionbox = '';
|
} }
// Security Question $questionbox = '';
|
| $question_exists = 0;
|
if($mybb->settings['securityquestion']) { $sid = generate_question();
| if($mybb->settings['securityquestion']) { $sid = generate_question();
|
Zeile 1218 | Zeile 1124 |
---|
"); if($db->num_rows($query) > 0) {
|
"); if($db->num_rows($query) > 0) {
|
| $question_exists = 1;
|
$question = $db->fetch_array($query);
|
$question = $db->fetch_array($query);
|
|
|
//Set parser options for security question $parser_options = array( "allow_html" => 0,
| //Set parser options for security question $parser_options = array( "allow_html" => 0,
|
Zeile 1247 | Zeile 1154 |
---|
}
eval("\$questionbox = \"".$templates->get("member_register_question")."\";");
|
}
eval("\$questionbox = \"".$templates->get("member_register_question")."\";");
|
$validator_javascript .= " $('#answer').rules('add', { required: true, remote:{ url: 'xmlhttp.php?action=validate_question', type: 'post', dataType: 'json', data: { question: function () { return $('#question_id').val(); }, my_post_key: my_post_key }, }, messages: { remote: '{$lang->js_validator_no_security_question}' } });\n"; }
| }
|
}
$hiddencaptcha = '';
| }
$hiddencaptcha = '';
|
Zeile 1282 | Zeile 1169 |
---|
{ // JS validator extra $lang->js_validator_password_length = $lang->sprintf($lang->js_validator_password_length, $mybb->settings['minpasswordlength']);
|
{ // JS validator extra $lang->js_validator_password_length = $lang->sprintf($lang->js_validator_password_length, $mybb->settings['minpasswordlength']);
|
$validator_javascript .= " $.validator.addMethod('passwordSecurity', function(value, element, param) { return !( ($('#email').val() != '' && value == $('#email').val()) || ($('#username').val() != '' && value == $('#username').val()) || ($('#email').val() != '' && value.indexOf($('#email').val()) > -1) || ($('#username').val() != '' && value.indexOf($('#username').val()) > -1) || ($('#email').val() != '' && $('#email').val().indexOf(value) > -1) || ($('#username').val() != '' && $('#username').val().indexOf(value) > -1) ); }, '{$lang->js_validator_bad_password_security}');\n";
|
|
// See if the board has "require complex passwords" enabled. if($mybb->settings['requirecomplexpasswords'] == 1)
|
// See if the board has "require complex passwords" enabled. if($mybb->settings['requirecomplexpasswords'] == 1)
|
{
| {
|
$lang->password = $lang->complex_password = $lang->sprintf($lang->complex_password, $mybb->settings['minpasswordlength']);
|
$lang->password = $lang->complex_password = $lang->sprintf($lang->complex_password, $mybb->settings['minpasswordlength']);
|
$validator_javascript .= " $('#password').rules('add', { required: true, minlength: {$mybb->settings['minpasswordlength']}, remote:{ url: 'xmlhttp.php?action=complex_password', type: 'post', dataType: 'json', data: { my_post_key: my_post_key }, }, passwordSecurity: '', messages: { minlength: '{$lang->js_validator_password_length}', required: '{$lang->js_validator_password_length}', remote: '{$lang->js_validator_no_image_text}' } });\n"; } else { $validator_javascript .= " $('#password').rules('add', { required: true, minlength: {$mybb->settings['minpasswordlength']}, passwordSecurity: '', messages: { minlength: '{$lang->js_validator_password_length}', required: '{$lang->js_validator_password_length}' } });\n";
| |
}
|
}
|
$validator_javascript .= " $('#password2').rules('add', { required: true, minlength: {$mybb->settings['minpasswordlength']}, equalTo: '#password', messages: { minlength: '{$lang->js_validator_password_length}', required: '{$lang->js_validator_password_length}', equalTo: '{$lang->js_validator_password_matches}' } });\n";
| |
eval("\$passboxes = \"".$templates->get("member_register_password")."\";"); }
| eval("\$passboxes = \"".$templates->get("member_register_password")."\";"); }
|
Zeile 1375 | Zeile 1203 |
---|
$plugins->run_hooks("member_register_end");
|
$plugins->run_hooks("member_register_end");
|
$validator_javascript .= " }); </script>\n";
| $jsvar_reqfields = json_encode($jsvar_reqfields);
$validator_javascript = "<script type=\"text/javascript\"> var regsettings = { requiredfields: '{$jsvar_reqfields}', minnamelength: '{$mybb->settings['minnamelength']}', maxnamelength: '{$mybb->settings['maxnamelength']}', minpasswordlength: '{$mybb->settings['minpasswordlength']}', captchaimage: '{$mybb->settings['captchaimage']}', captchahtml: '{$captcha_html}', securityquestion: '{$mybb->settings['securityquestion']}', questionexists: '{$question_exists}', requirecomplexpasswords: '{$mybb->settings['requirecomplexpasswords']}', regtype: '{$mybb->settings['regtype']}', hiddencaptchaimage: '{$mybb->settings['hiddencaptchaimage']}' };
lang.js_validator_no_username = '{$lang->js_validator_no_username}'; lang.js_validator_username_length = '{$lang->js_validator_username_length}'; lang.js_validator_invalid_email = '{$lang->js_validator_invalid_email}'; lang.js_validator_email_match = '{$lang->js_validator_email_match}'; lang.js_validator_not_empty = '{$lang->js_validator_not_empty}'; lang.js_validator_password_length = '{$lang->js_validator_password_length}'; lang.js_validator_password_matches = '{$lang->js_validator_password_matches}'; lang.js_validator_no_image_text = '{$lang->js_validator_no_image_text}'; lang.js_validator_no_security_question = '{$lang->js_validator_no_security_question}'; lang.js_validator_bad_password_security = '{$lang->js_validator_bad_password_security}'; </script>\n";
|
eval("\$registration = \"".$templates->get("member_register")."\";"); output_page($registration);
| eval("\$registration = \"".$templates->get("member_register")."\";"); output_page($registration);
|
Zeile 1387 | Zeile 1240 |
---|
if($mybb->input['action'] == "activate") { $plugins->run_hooks("member_activate_start");
|
if($mybb->input['action'] == "activate") { $plugins->run_hooks("member_activate_start");
|
if(isset($mybb->input['username'])) { $mybb->input['username'] = $mybb->get_input('username'); $options = array( 'username_method' => $mybb->settings['username_method'], 'fields' => '*', ); $user = get_user_by_username($mybb->input['username'], $options); if(!$user) { switch($mybb->settings['username_method']) { case 0: error($lang->error_invalidpworusername); break; case 1: error($lang->error_invalidpworusername1); break;
| if(isset($mybb->input['username'])) { $mybb->input['username'] = $mybb->get_input('username'); $options = array( 'username_method' => $mybb->settings['username_method'], 'fields' => '*', ); $user = get_user_by_username($mybb->input['username'], $options); if(!$user) { switch($mybb->settings['username_method']) { case 0: error($lang->error_invalidpworusername); break; case 1: error($lang->error_invalidpworusername1); break;
|
case 2: error($lang->error_invalidpworusername2); break;
| case 2: error($lang->error_invalidpworusername2); break;
|
Zeile 1519 | Zeile 1372 |
---|
$query = $db->query(" SELECT u.uid, u.username, u.usergroup, u.email, a.code, a.type, a.validated FROM ".TABLE_PREFIX."users u
|
$query = $db->query(" SELECT u.uid, u.username, u.usergroup, u.email, a.code, a.type, a.validated FROM ".TABLE_PREFIX."users u
|
LEFT JOIN ".TABLE_PREFIX."awaitingactivation a ON (a.uid=u.uid AND a.type='r' OR a.type='b')
| LEFT JOIN ".TABLE_PREFIX."awaitingactivation a ON (a.uid=u.uid AND (a.type='r' OR a.type='b'))
|
WHERE u.email='".$db->escape_string($mybb->get_input('email'))."' "); $numusers = $db->num_rows($query);
| WHERE u.email='".$db->escape_string($mybb->get_input('email'))."' "); $numusers = $db->num_rows($query);
|
Zeile 1659 | Zeile 1512 |
---|
} }
|
} }
|
$email = $db->escape_string($email);
| |
$query = $db->simple_select("users", "*", "email='".$db->escape_string($mybb->get_input('email'))."'"); $numusers = $db->num_rows($query); if($numusers < 1)
| $query = $db->simple_select("users", "*", "email='".$db->escape_string($mybb->get_input('email'))."'"); $numusers = $db->num_rows($query); if($numusers < 1)
|
Zeile 1909 | Zeile 1761 |
---|
);
$user_loginattempts = get_user_by_username($user['username'], $options);
|
);
$user_loginattempts = get_user_by_username($user['username'], $options);
|
$user['loginattempts'] = (int)$user_loginattempts['loginattempts'];
| if(!empty($user_loginattempts)) { $user['loginattempts'] = (int)$user_loginattempts['loginattempts']; }
|
$loginhandler->set_data($user); $validated = $loginhandler->validate_login();
|
$loginhandler->set_data($user); $validated = $loginhandler->validate_login();
|
|
|
if(!$validated) { $mybb->input['action'] = "login"; $mybb->request_method = "get";
|
if(!$validated) { $mybb->input['action'] = "login"; $mybb->request_method = "get";
|
$login_user = get_user_by_username($user['username'], array('fields' => 'uid'));
| $login_user_uid = 0; if(!empty($loginhandler->login_data)) { $login_user_uid = (int)$loginhandler->login_data['uid']; $user['loginattempts'] = (int)$loginhandler->login_data['loginattempts']; }
|
// Is a fatal call if user has had too many tries
|
// Is a fatal call if user has had too many tries
|
$logins = login_attempt_check($login_user['uid']);
| $logins = login_attempt_check($login_user_uid);
|
|
|
$db->update_query("users", array('loginattempts' => 'loginattempts+1'), "uid='".(int)$loginhandler->login_data['uid']."'", 1, true);
| $db->update_query("users", array('loginattempts' => 'loginattempts+1'), "uid='".$login_user_uid."'", 1, true);
|
$errors = $loginhandler->get_friendly_errors();
|
$errors = $loginhandler->get_friendly_errors();
|
$user['loginattempts'] = (int)$loginhandler->login_data['loginattempts'];
| |
// If we need a captcha set it here
|
// If we need a captcha set it here
|
if($mybb->settings['failedcaptchalogincount'] > 0 && ($user['loginattempts'] > $mybb->settings['failedcaptchalogincount'] || (int)$mybb->cookies['loginattempts'] > $mybb->settings['failedcaptchalogincount']))
| if( $mybb->settings['failedcaptchalogincount'] > 0 && ( ( isset($user['loginattempts']) && $user['loginattempts'] > $mybb->settings['failedcaptchalogincount'] ) || ( isset($mybb->cookies['loginattempts']) && (int)$mybb->cookies['loginattempts'] > $mybb->settings['failedcaptchalogincount'] ) ) )
|
{ $do_captcha = true; $correct = $loginhandler->captcha_verified;
| { $do_captcha = true; $correct = $loginhandler->captcha_verified;
|
Zeile 1956 | Zeile 1826 |
---|
if((my_strpos(basename($mybb->input['url']), 'newthread.php') !== false || my_strpos(basename($mybb->input['url']), 'newreply.php') !== false) && my_strpos($mybb->input['url'], '&processed=1') !== false) { $mybb->input['url'] = str_replace('&processed=1', '', $mybb->input['url']);
|
if((my_strpos(basename($mybb->input['url']), 'newthread.php') !== false || my_strpos(basename($mybb->input['url']), 'newreply.php') !== false) && my_strpos($mybb->input['url'], '&processed=1') !== false) { $mybb->input['url'] = str_replace('&processed=1', '', $mybb->input['url']);
|
}
$mybb->input['url'] = str_replace('&', '&', $mybb->input['url']);
| }
$mybb->input['url'] = str_replace('&', '&', $mybb->input['url']);
|
if(my_strpos($mybb->input['url'], $mybb->settings['bburl'].'/') !== 0) {
| if(my_strpos($mybb->input['url'], $mybb->settings['bburl'].'/') !== 0) {
|
Zeile 1968 | Zeile 1838 |
---|
} $url_segments = explode('/', $mybb->input['url']); $mybb->input['url'] = $mybb->settings['bburl'].'/'.end($url_segments);
|
} $url_segments = explode('/', $mybb->input['url']); $mybb->input['url'] = $mybb->settings['bburl'].'/'.end($url_segments);
|
}
| }
|
// Redirect to the URL if it is not member.php redirect($mybb->input['url'], $lang->redirect_loggedin); }
| // Redirect to the URL if it is not member.php redirect($mybb->input['url'], $lang->redirect_loggedin); }
|
Zeile 2017 | Zeile 1887 |
---|
require_once MYBB_ROOT.'inc/class_captcha.php'; $login_captcha = new captcha(false, "post_captcha");
|
require_once MYBB_ROOT.'inc/class_captcha.php'; $login_captcha = new captcha(false, "post_captcha");
|
if($login_captcha->type == 1)
| if($login_captcha->type == captcha::DEFAULT_CAPTCHA)
|
{ if(!$correct) {
| { if(!$correct) {
|
Zeile 2026 | Zeile 1896 |
---|
else { $captcha = $login_captcha->build_hidden_captcha();
|
else { $captcha = $login_captcha->build_hidden_captcha();
|
}
| } } elseif(in_array($login_captcha->type, array(captcha::NOCAPTCHA_RECAPTCHA, captcha::RECAPTCHA_INVISIBLE, captcha::RECAPTCHA_V3))) { $login_captcha->build_recaptcha();
|
}
|
}
|
elseif(in_array($login_captcha->type, array(2, 4, 5)))
| elseif(in_array($login_captcha->type, array(captcha::HCAPTCHA, captcha::HCAPTCHA_INVISIBLE)))
|
{
|
{
|
$login_captcha->build_recaptcha();
| $login_captcha->build_hcaptcha();
|
}
if($login_captcha->html)
| }
if($login_captcha->html)
|
Zeile 2143 | Zeile 2017 |
---|
if($mybb->input['action'] == "profile") {
|
if($mybb->input['action'] == "profile") {
|
$plugins->run_hooks("member_profile_start");
| |
if($mybb->usergroup['canviewprofiles'] == 0)
|
if($mybb->usergroup['canviewprofiles'] == 0)
|
{
| {
|
error_no_permission();
|
error_no_permission();
|
}
| }
|
$uid = $mybb->get_input('uid', MyBB::INPUT_INT); if($uid) { $memprofile = get_user($uid); } elseif($mybb->user['uid'])
|
$uid = $mybb->get_input('uid', MyBB::INPUT_INT); if($uid) { $memprofile = get_user($uid); } elseif($mybb->user['uid'])
|
{
| {
|
$memprofile = $mybb->user; } else { $memprofile = false;
|
$memprofile = $mybb->user; } else { $memprofile = false;
|
}
| }
|
if(!$memprofile) { error($lang->error_nomember); }
$uid = $memprofile['uid'];
|
if(!$memprofile) { error($lang->error_nomember); }
$uid = $memprofile['uid'];
|
| $plugins->run_hooks("member_profile_start");
|
$me_username = $memprofile['username']; $memprofile['username'] = htmlspecialchars_uni($memprofile['username']);
| $me_username = $memprofile['username']; $memprofile['username'] = htmlspecialchars_uni($memprofile['username']);
|
Zeile 2219 | Zeile 2093 |
---|
{ $bgcolor = alt_trow(); eval("\$sendemail = \"".$templates->get("member_profile_email")."\";");
|
{ $bgcolor = alt_trow(); eval("\$sendemail = \"".$templates->get("member_profile_email")."\";");
|
}
| }
|
if($mybb->settings['enablepms'] != 0 && $uid != $mybb->user['uid'] && $mybb->usergroup['canusepms'] == 1 && (($memprofile['receivepms'] != 0 && $memperms['canusepms'] != 0 && my_strpos(",".$memprofile['ignorelist'].",", ",".$mybb->user['uid'].",") === false) || $mybb->usergroup['canoverridepm'] == 1)) { $bgcolor = alt_trow();
| if($mybb->settings['enablepms'] != 0 && $uid != $mybb->user['uid'] && $mybb->usergroup['canusepms'] == 1 && (($memprofile['receivepms'] != 0 && $memperms['canusepms'] != 0 && my_strpos(",".$memprofile['ignorelist'].",", ",".$mybb->user['uid'].",") === false) || $mybb->usergroup['canoverridepm'] == 1)) { $bgcolor = alt_trow();
|
Zeile 2275 | Zeile 2149 |
---|
$sig_parser['nofollow_on'] = 1; }
|
$sig_parser['nofollow_on'] = 1; }
|
if($mybb->user['showimages'] != 1 && $mybb->user['uid'] != 0 || $mybb->settings['guestimages'] != 1 && $mybb->user['uid'] == 0)
| if($mybb->user['uid'] != 0 && $mybb->user['showimages'] != 1 || $mybb->settings['guestimages'] != 1 && $mybb->user['uid'] == 0)
|
{ $sig_parser['allow_imgcode'] = 0; }
| { $sig_parser['allow_imgcode'] = 0; }
|
Zeile 2337 | Zeile 2211 |
---|
}
if($thread_percent > 100)
|
}
if($thread_percent > 100)
|
{
| {
|
$thread_percent = 100; }
| $thread_percent = 100; }
|
Zeile 2468 | Zeile 2342 |
---|
{ $membday = $lang->not_specified; $membdayage = '';
|
{ $membday = $lang->not_specified; $membdayage = '';
|
}
| }
|
// Get the user title for this user
|
// Get the user title for this user
|
unset($usertitle);
| |
unset($stars);
|
unset($stars);
|
| $usertitle = '';
|
$starimage = ''; if(trim($memprofile['usertitle']) != '') {
| $starimage = ''; if(trim($memprofile['usertitle']) != '') {
|
Zeile 2483 | Zeile 2357 |
---|
{ // User has group title $usertitle = $memperms['usertitle'];
|
{ // User has group title $usertitle = $memperms['usertitle'];
|
}
| }
|
else {
|
else {
|
| if(!isset($usertitles)) { $usertitles = $cache->read('usertitles'); }
|
// No usergroup title so get a default one
|
// No usergroup title so get a default one
|
$usertitles = $cache->read('usertitles');
| |
if(is_array($usertitles)) { foreach($usertitles as $title)
| if(is_array($usertitles)) { foreach($usertitles as $title)
|
Zeile 2496 | Zeile 2373 |
---|
if($memprofile['postnum'] >= $title['posts']) { $usertitle = $title['title'];
|
if($memprofile['postnum'] >= $title['posts']) { $usertitle = $title['title'];
|
$stars = $title['stars']; $starimage = $title['starimage'];
break; } } } }
| $stars = $title['stars']; $starimage = $title['starimage'];
break; } } } }
|
$usertitle = htmlspecialchars_uni($usertitle);
if($memperms['stars'] || $memperms['usertitle'])
| $usertitle = htmlspecialchars_uni($usertitle);
if($memperms['stars'] || $memperms['usertitle'])
|
Zeile 2512 | Zeile 2389 |
---|
// Set the number of stars if display group has constant number of stars $stars = $memperms['stars']; }
|
// Set the number of stars if display group has constant number of stars $stars = $memperms['stars']; }
|
elseif(!$stars)
| elseif(!isset($stars))
|
{
|
{
|
if(!is_array($usertitles)) {
| if(!isset($usertitles)) {
|
$usertitles = $cache->read('usertitles');
|
$usertitles = $cache->read('usertitles');
|
}
| }
|
// This is for cases where the user has a title, but the group has no defined number of stars (use number of stars as per default usergroups) if(is_array($usertitles))
|
// This is for cases where the user has a title, but the group has no defined number of stars (use number of stars as per default usergroups) if(is_array($usertitles))
|
{
| {
|
foreach($usertitles as $title) { if($memprofile['postnum'] >= $title['posts'])
| foreach($usertitles as $title) { if($memprofile['postnum'] >= $title['posts'])
|
Zeile 2531 | Zeile 2408 |
---|
break; } }
|
break; } }
|
| }
if(!isset($stars)) { $stars = 0;
|
} }
| } }
|
Zeile 2600 | Zeile 2482 |
---|
$activity = fetch_wol_activity($session['location'], $session['nopermission']); $location = build_friendly_wol_location($activity); $location_time = my_date($mybb->settings['timeformat'], $last_seen);
|
$activity = fetch_wol_activity($session['location'], $session['nopermission']); $location = build_friendly_wol_location($activity); $location_time = my_date($mybb->settings['timeformat'], $last_seen);
|
|
|
eval("\$online_status = \"".$templates->get("member_profile_online")."\";"); } } }
if(!isset($online_status))
|
eval("\$online_status = \"".$templates->get("member_profile_online")."\";"); } } }
if(!isset($online_status))
|
{
| {
|
eval("\$online_status = \"".$templates->get("member_profile_offline")."\";"); }
| eval("\$online_status = \"".$templates->get("member_profile_offline")."\";"); }
|
Zeile 2663 | Zeile 2545 |
---|
$warning_level = 100; }
|
$warning_level = 100; }
|
$warn_user = ''; $warning_link = 'usercp.php';
| |
$warning_level = get_colored_warning_level($warning_level);
|
$warning_level = get_colored_warning_level($warning_level);
|
if($mybb->usergroup['canwarnusers'] != 0 && $memprofile['uid'] != $mybb->user['uid'])
| if($mybb->usergroup['canwarnusers'] != 0)
|
{ eval("\$warn_user = \"".$templates->get("member_profile_warn")."\";");
|
{ eval("\$warn_user = \"".$templates->get("member_profile_warn")."\";");
|
$warning_link = "warnings.php?uid={$memprofile['uid']}";
| eval("\$warning_level = \"".$templates->get("member_profile_warninglevel_link")."\";"); } else { eval("\$warning_level = \"".$templates->get("member_profile_warninglevel")."\";");
|
}
|
}
|
eval("\$warning_level = \"".$templates->get("member_profile_warninglevel")."\";");
| |
}
$bgcolor = $alttrow = 'trow1';
| }
$bgcolor = $alttrow = 'trow1';
|
Zeile 2680 | Zeile 2562 |
---|
$query = $db->simple_select("userfields", "*", "ufid = '{$uid}'"); $userfields = $db->fetch_array($query);
|
$query = $db->simple_select("userfields", "*", "ufid = '{$uid}'"); $userfields = $db->fetch_array($query);
|
|
|
// If this user is an Administrator or a Moderator then we wish to show all profile fields $pfcache = $cache->read('profilefields');
| // If this user is an Administrator or a Moderator then we wish to show all profile fields $pfcache = $cache->read('profilefields');
|
Zeile 2692 | Zeile 2574 |
---|
{ continue; }
|
{ continue; }
|
|
|
$thing = explode("\n", $customfield['type'], "2"); $type = trim($thing[0]);
| $thing = explode("\n", $customfield['type'], "2"); $type = trim($thing[0]);
|
Zeile 2704 | Zeile 2586 |
---|
$useropts = explode("\n", $userfields[$field]); $customfieldval = $comma = ''; if(is_array($useropts) && ($type == "multiselect" || $type == "checkbox"))
|
$useropts = explode("\n", $userfields[$field]); $customfieldval = $comma = ''; if(is_array($useropts) && ($type == "multiselect" || $type == "checkbox"))
|
{
| {
|
foreach($useropts as $val) { if($val != '')
| foreach($useropts as $val) { if($val != '')
|
Zeile 2736 | Zeile 2618 |
---|
else { $parser_options['nl2br'] = 0;
|
else { $parser_options['nl2br'] = 0;
|
}
| }
|
|
|
if($mybb->user['showimages'] != 1 && $mybb->user['uid'] != 0 || $mybb->settings['guestimages'] != 1 && $mybb->user['uid'] == 0)
| if($mybb->user['uid'] != 0 && $mybb->user['showimages'] != 1 || $mybb->settings['guestimages'] != 1 && $mybb->user['uid'] == 0)
|
{ $parser_options['allow_imgcode'] = 0; }
| { $parser_options['allow_imgcode'] = 0; }
|
Zeile 2774 | Zeile 2656 |
---|
{ // Fetch details on their ban $query = $db->simple_select('banned b LEFT JOIN '.TABLE_PREFIX.'users a ON (b.admin=a.uid)', 'b.*, a.username AS adminuser', "b.uid='{$uid}'", array('limit' => 1));
|
{ // Fetch details on their ban $query = $db->simple_select('banned b LEFT JOIN '.TABLE_PREFIX.'users a ON (b.admin=a.uid)', 'b.*, a.username AS adminuser', "b.uid='{$uid}'", array('limit' => 1));
|
$memban = $db->fetch_array($query);
| |
|
|
if($memban['reason'])
| if($db->num_rows($query))
|
{
|
{
|
$memban['reason'] = htmlspecialchars_uni($parser->parse_badwords($memban['reason'])); } else { $memban['reason'] = $lang->na; }
if($memban['lifted'] == 'perm' || $memban['lifted'] == '' || $memban['bantime'] == 'perm' || $memban['bantime'] == '---') { $banlength = $lang->permanent; $timeremaining = $lang->na; } else { // Set up the array of ban times. $bantimes = fetch_ban_times();
$banlength = $bantimes[$memban['bantime']]; $remaining = $memban['lifted']-TIME_NOW;
$timeremaining = nice_time($remaining, array('short' => 1, 'seconds' => false))."";
$banned_class = ''; if($remaining < 3600) { $banned_class = "high_banned"; } else if($remaining < 86400)
| $memban = $db->fetch_array($query);
if($memban['reason']) { $memban['reason'] = htmlspecialchars_uni($parser->parse_badwords($memban['reason'])); } else { $memban['reason'] = $lang->na; }
if($memban['lifted'] == 'perm' || $memban['lifted'] == '' || $memban['bantime'] == 'perm' || $memban['bantime'] == '---')
|
{
|
{
|
$banned_class = "moderate_banned"; } else if($remaining < 604800) { $banned_class = "low_banned";
| $banlength = $lang->permanent; $timeremaining = $lang->na; $banned_class = "normal_banned";
|
} else {
|
} else {
|
$banned_class = "normal_banned"; }
| // Set up the array of ban times. $bantimes = fetch_ban_times();
$banlength = $bantimes[$memban['bantime']]; $remaining = $memban['lifted']-TIME_NOW;
$timeremaining = nice_time($remaining, array('short' => 1, 'seconds' => false))."";
|
|
|
| $banned_class = ''; if($remaining < 3600) { $banned_class = "high_banned"; } else if($remaining < 86400) { $banned_class = "moderate_banned"; } else if($remaining < 604800) { $banned_class = "low_banned"; } else { $banned_class = "normal_banned"; } }
|
eval('$timeremaining = "'.$templates->get('member_profile_banned_remaining').'";');
|
eval('$timeremaining = "'.$templates->get('member_profile_banned_remaining').'";');
|
}
$memban['adminuser'] = build_profile_link(htmlspecialchars_uni($memban['adminuser']), $memban['admin']);
| |
|
|
// Display a nice warning to the user eval('$bannedbit = "'.$templates->get('member_profile_banned').'";');
| $memban['adminuser'] = build_profile_link(htmlspecialchars_uni($memban['adminuser']), $memban['admin']);
// Display a nice warning to the user eval('$bannedbit = "'.$templates->get('member_profile_banned').'";'); } else { // TODO: more specific output for converted/merged boards where no ban record is merged. $bannedbit = ''; }
|
}
$adminoptions = ''; if($mybb->usergroup['cancp'] == 1 && $mybb->config['hide_admin_links'] != 1) {
|
}
$adminoptions = ''; if($mybb->usergroup['cancp'] == 1 && $mybb->config['hide_admin_links'] != 1) {
|
eval("\$adminoptions = \"".$templates->get("member_profile_adminoptions")."\";");
| if($memperms['isbannedgroup'] == 1) { eval("\$adminoptions = \"".$templates->get("member_profile_adminoptions_manageban")."\";"); } else { eval("\$adminoptions = \"".$templates->get("member_profile_adminoptions")."\";"); }
|
}
$modoptions = $viewnotes = $editnotes = $editprofile = $banuser = $manageban = $manageuser = '';
| }
$modoptions = $viewnotes = $editnotes = $editprofile = $banuser = $manageban = $manageuser = '';
|
Zeile 2841 | Zeile 2739 |
---|
{ $memprofile['regip'] = my_inet_ntop($db->unescape_binary($memprofile['regip'])); $memprofile['lastip'] = my_inet_ntop($db->unescape_binary($memprofile['lastip']));
|
{ $memprofile['regip'] = my_inet_ntop($db->unescape_binary($memprofile['regip'])); $memprofile['lastip'] = my_inet_ntop($db->unescape_binary($memprofile['lastip']));
|
|
|
eval("\$ipaddress = \"".$templates->get("member_profile_modoptions_ipaddress")."\";"); }
| eval("\$ipaddress = \"".$templates->get("member_profile_modoptions_ipaddress")."\";"); }
|
Zeile 2853 | Zeile 2751 |
---|
{ eval("\$viewnotes = \"".$templates->get("member_profile_modoptions_viewnotes")."\";"); $memprofile['usernotes'] = my_substr($memprofile['usernotes'], 0, 100)."... {$viewnotes}";
|
{ eval("\$viewnotes = \"".$templates->get("member_profile_modoptions_viewnotes")."\";"); $memprofile['usernotes'] = my_substr($memprofile['usernotes'], 0, 100)."... {$viewnotes}";
|
} } else { $memprofile['usernotes'] = $lang->no_usernotes;
| }
|
}
|
}
|
if($mybb->usergroup['caneditprofiles'] == 1)
| else
|
{
|
{
|
eval("\$editprofile = \"".$templates->get("member_profile_modoptions_editprofile")."\";"); eval("\$editnotes = \"".$templates->get("member_profile_modoptions_editnotes")."\";"); }
if($mybb->usergroup['canbanusers'] == 1 && (!$memban['uid'] || $memban['uid'] && ($mybb->user['uid'] == $memban['admin']) || $mybb->usergroup['issupermod'] == 1 || $mybb->usergroup['cancp'] == 1)) { if($memperms['isbannedgroup'] == 1 && $mybb->usergroup['canbanusers'] == 1) { eval("\$manageban = \"".$templates->get("member_profile_modoptions_manageban")."\";");
| $memprofile['usernotes'] = $lang->no_usernotes; }
if($mybb->usergroup['caneditprofiles'] == 1 && modcp_can_manage_user($memprofile['uid'])) { if(modcp_can_manage_user($memprofile['uid'])) { eval("\$editprofile = \"".$templates->get("member_profile_modoptions_editprofile")."\";"); eval("\$editnotes = \"".$templates->get("member_profile_modoptions_editnotes")."\";");
|
}
|
}
|
else
| }
if($memperms['isbannedgroup'] == 1 && $mybb->usergroup['canbanusers'] == 1 && modcp_can_manage_user($memprofile['uid'])) { eval("\$manageban = \"".$templates->get("member_profile_modoptions_manageban")."\";"); } elseif(modcp_can_manage_user($memprofile['uid']) && $mybb->usergroup['canbanusers'] == 1) { if(modcp_can_manage_user($memprofile['uid']) && $mybb->usergroup['canbanusers'] == 1)
|
{ eval("\$banuser = \"".$templates->get("member_profile_modoptions_banuser")."\";"); } }
|
{ eval("\$banuser = \"".$templates->get("member_profile_modoptions_banuser")."\";"); } }
|
| $purgespammer = '';
|
if($can_purge_spammer) { eval("\$purgespammer = \"".$templates->get('member_profile_modoptions_purgespammer')."\";");
|
if($can_purge_spammer) { eval("\$purgespammer = \"".$templates->get('member_profile_modoptions_purgespammer')."\";");
|
}
| }
|
if(!empty($editprofile) || !empty($banuser) || !empty($manageban) || !empty($purgespammer)) { eval("\$manageuser = \"".$templates->get("member_profile_modoptions_manageuser")."\";");
| if(!empty($editprofile) || !empty($banuser) || !empty($manageban) || !empty($purgespammer)) { eval("\$manageuser = \"".$templates->get("member_profile_modoptions_manageuser")."\";");
|
Zeile 2894 | Zeile 2797 |
---|
$add_remove_options = array(); $buddy_options = $ignore_options = $report_options = ''; if($mybb->user['uid'] != $memprofile['uid'] && $mybb->user['uid'] != 0)
|
$add_remove_options = array(); $buddy_options = $ignore_options = $report_options = ''; if($mybb->user['uid'] != $memprofile['uid'] && $mybb->user['uid'] != 0)
|
{
| {
|
$buddy_list = explode(',', $mybb->user['buddylist']); $ignore_list = explode(',', $mybb->user['ignorelist']);
| $buddy_list = explode(',', $mybb->user['buddylist']); $ignore_list = explode(',', $mybb->user['ignorelist']);
|
Zeile 2959 | Zeile 2862 |
---|
verify_post_check($mybb->get_input('my_post_key'));
$plugins->run_hooks("member_do_emailuser_start");
|
verify_post_check($mybb->get_input('my_post_key'));
$plugins->run_hooks("member_do_emailuser_start");
|
// Guests or those without permission can't email other users if($mybb->usergroup['cansendemail'] == 0) { error_no_permission(); }
// Check group limits if($mybb->usergroup['maxemails'] > 0) { if($mybb->user['uid'] > 0) { $user_check = "fromuid='{$mybb->user['uid']}'"; } else { $user_check = "ipaddress=".$db->escape_binary($session->packedip); }
$query = $db->simple_select("maillogs", "COUNT(*) AS sent_count", "{$user_check} AND dateline >= '".(TIME_NOW - (60*60*24))."'"); $sent_count = $db->fetch_field($query, "sent_count"); if($sent_count >= $mybb->usergroup['maxemails']) { $lang->error_max_emails_day = $lang->sprintf($lang->error_max_emails_day, $mybb->usergroup['maxemails']); error($lang->error_max_emails_day); } }
// Check email flood control if($mybb->usergroup['emailfloodtime'] > 0) { if($mybb->user['uid'] > 0) { $user_check = "fromuid='{$mybb->user['uid']}'"; } else { $user_check = "ipaddress=".$db->escape_binary($session->packedip); }
$timecut = TIME_NOW-$mybb->usergroup['emailfloodtime']*60;
$query = $db->simple_select("maillogs", "mid, dateline", "{$user_check} AND dateline > '{$timecut}'", array('order_by' => "dateline", 'order_dir' => "DESC")); $last_email = $db->fetch_array($query);
// Users last email was within the flood time, show the error if($last_email['mid']) { $remaining_time = ($mybb->usergroup['emailfloodtime']*60)-(TIME_NOW-$last_email['dateline']);
if($remaining_time == 1) { $lang->error_emailflooding = $lang->sprintf($lang->error_emailflooding_1_second, $mybb->usergroup['emailfloodtime']); } elseif($remaining_time < 60)
| // Guests or those without permission can't email other users if($mybb->usergroup['cansendemail'] == 0) { error_no_permission(); }
// Check group limits if($mybb->usergroup['maxemails'] > 0) { if($mybb->user['uid'] > 0) { $user_check = "fromuid='{$mybb->user['uid']}'"; } else { $user_check = "ipaddress=".$db->escape_binary($session->packedip); }
$query = $db->simple_select("maillogs", "COUNT(*) AS sent_count", "{$user_check} AND dateline >= '".(TIME_NOW - (60*60*24))."'"); $sent_count = $db->fetch_field($query, "sent_count"); if($sent_count >= $mybb->usergroup['maxemails']) { $lang->error_max_emails_day = $lang->sprintf($lang->error_max_emails_day, $mybb->usergroup['maxemails']); error($lang->error_max_emails_day); } }
// Check email flood control if($mybb->usergroup['emailfloodtime'] > 0) { if($mybb->user['uid'] > 0) { $user_check = "fromuid='{$mybb->user['uid']}'"; } else { $user_check = "ipaddress=".$db->escape_binary($session->packedip); }
$timecut = TIME_NOW-$mybb->usergroup['emailfloodtime']*60;
$query = $db->simple_select("maillogs", "mid, dateline", "{$user_check} AND dateline > '{$timecut}'", array('order_by' => "dateline", 'order_dir' => "DESC")); $last_email = $db->fetch_array($query);
// Users last email was within the flood time, show the error if($last_email['mid']) { $remaining_time = ($mybb->usergroup['emailfloodtime']*60)-(TIME_NOW-$last_email['dateline']);
if($remaining_time == 1) { $lang->error_emailflooding = $lang->sprintf($lang->error_emailflooding_1_second, $mybb->usergroup['emailfloodtime']); } elseif($remaining_time < 60)
|
{ $lang->error_emailflooding = $lang->sprintf($lang->error_emailflooding_seconds, $mybb->usergroup['emailfloodtime'], $remaining_time); } elseif($remaining_time > 60 && $remaining_time < 120)
|
{ $lang->error_emailflooding = $lang->sprintf($lang->error_emailflooding_seconds, $mybb->usergroup['emailfloodtime'], $remaining_time); } elseif($remaining_time > 60 && $remaining_time < 120)
|
{
| {
|
$lang->error_emailflooding = $lang->sprintf($lang->error_emailflooding_1_minute, $mybb->usergroup['emailfloodtime']); } else
| $lang->error_emailflooding = $lang->sprintf($lang->error_emailflooding_1_minute, $mybb->usergroup['emailfloodtime']); } else
|
Zeile 3037 | Zeile 2940 |
---|
if(!$to_user['username']) { error($lang->error_invalidusername);
|
if(!$to_user['username']) { error($lang->error_invalidusername);
|
}
| }
|
if($to_user['hideemail'] != 0) {
| if($to_user['hideemail'] != 0) {
|
Zeile 3050 | Zeile 2953 |
---|
{ $mybb->input['fromemail'] = $mybb->user['email']; $mybb->input['fromname'] = $mybb->user['username'];
|
{ $mybb->input['fromemail'] = $mybb->user['email']; $mybb->input['fromname'] = $mybb->user['username'];
|
}
| }
|
if(!validate_email_format($mybb->input['fromemail'])) { $errors[] = $lang->error_invalidfromemail;
| if(!validate_email_format($mybb->input['fromemail'])) { $errors[] = $lang->error_invalidfromemail;
|
Zeile 3068 | Zeile 2971 |
---|
}
if(empty($mybb->input['message']))
|
}
if(empty($mybb->input['message']))
|
{
| {
|
$errors[] = $lang->error_no_email_message; }
if($mybb->settings['captchaimage'] && $mybb->user['uid'] == 0)
|
$errors[] = $lang->error_no_email_message; }
if($mybb->settings['captchaimage'] && $mybb->user['uid'] == 0)
|
{
| {
|
require_once MYBB_ROOT.'inc/class_captcha.php'; $captcha = new captcha;
if($captcha->validate_captcha() == false)
|
require_once MYBB_ROOT.'inc/class_captcha.php'; $captcha = new captcha;
if($captcha->validate_captcha() == false)
|
{
| {
|
// CAPTCHA validation failed foreach($captcha->get_errors() as $error) {
| // CAPTCHA validation failed foreach($captcha->get_errors() as $error) {
|
Zeile 3088 | Zeile 2991 |
---|
}
if(count($errors) == 0)
|
}
if(count($errors) == 0)
|
{ if($mybb->settings['mail_handler'] == 'smtp') {
| { if($mybb->settings['mail_handler'] == 'smtp') {
|
$from = $mybb->input['fromemail'];
|
$from = $mybb->input['fromemail'];
|
}
| }
|
else { $from = "{$mybb->input['fromname']} <{$mybb->input['fromemail']}>";
|
else { $from = "{$mybb->input['fromname']} <{$mybb->input['fromemail']}>";
|
}
| }
|
$message = $lang->sprintf($lang->email_emailuser, $to_user['username'], $mybb->input['fromname'], $mybb->settings['bbname'], $mybb->settings['bburl'], $mybb->get_input('message')); my_mail($to_user['email'], $mybb->get_input('subject'), $message, '', '', '', false, 'text', '', $from);
| $message = $lang->sprintf($lang->email_emailuser, $to_user['username'], $mybb->input['fromname'], $mybb->settings['bbname'], $mybb->settings['bburl'], $mybb->get_input('message')); my_mail($to_user['email'], $mybb->get_input('subject'), $message, '', '', '', false, 'text', '', $from);
|
Zeile 3126 | Zeile 3029 |
---|
else { $mybb->input['action'] = "emailuser";
|
else { $mybb->input['action'] = "emailuser";
|
} }
| } }
|
if($mybb->input['action'] == "emailuser") { $plugins->run_hooks("member_emailuser_start");
| if($mybb->input['action'] == "emailuser") { $plugins->run_hooks("member_emailuser_start");
|
Zeile 3205 | Zeile 3108 |
---|
}
$query = $db->simple_select("users", "uid, username, email, hideemail, ignorelist", "uid='".$mybb->get_input('uid', MyBB::INPUT_INT)."'");
|
}
$query = $db->simple_select("users", "uid, username, email, hideemail, ignorelist", "uid='".$mybb->get_input('uid', MyBB::INPUT_INT)."'");
|
$to_user = $db->fetch_array($query);
| $to_user = $db->fetch_array($query);
|
$to_user['username'] = htmlspecialchars_uni($to_user['username']); $lang->email_user = $lang->sprintf($lang->email_user, $to_user['username']);
|
$to_user['username'] = htmlspecialchars_uni($to_user['username']); $lang->email_user = $lang->sprintf($lang->email_user, $to_user['username']);
|
|
|
if(!$to_user['uid']) { error($lang->error_invaliduser);
|
if(!$to_user['uid']) { error($lang->error_invaliduser);
|
}
| }
|
if($to_user['hideemail'] != 0) { error($lang->error_hideemail);
|
if($to_user['hideemail'] != 0) { error($lang->error_hideemail);
|
}
| }
|
if($to_user['ignorelist'] && (my_strpos(",".$to_user['ignorelist'].",", ",".$mybb->user['uid'].",") !== false && $mybb->usergroup['cansendemailoverride'] != 1)) { error_no_permission();
|
if($to_user['ignorelist'] && (my_strpos(",".$to_user['ignorelist'].",", ",".$mybb->user['uid'].",") !== false && $mybb->usergroup['cansendemailoverride'] != 1)) { error_no_permission();
|
}
| }
|
if(isset($errors) && count($errors) > 0) { $errors = inline_error($errors);
| if(isset($errors) && count($errors) > 0) { $errors = inline_error($errors);
|
Zeile 3234 | Zeile 3137 |
---|
$message = htmlspecialchars_uni($mybb->get_input('message')); } else
|
$message = htmlspecialchars_uni($mybb->get_input('message')); } else
|
{
| {
|
$errors = ''; $fromname = ''; $fromemail = '';
| $errors = ''; $fromname = ''; $fromemail = '';
|
Zeile 3244 | Zeile 3147 |
---|
// Generate CAPTCHA? if($mybb->settings['captchaimage'] && $mybb->user['uid'] == 0)
|
// Generate CAPTCHA? if($mybb->settings['captchaimage'] && $mybb->user['uid'] == 0)
|
{
| {
|
require_once MYBB_ROOT.'inc/class_captcha.php'; $post_captcha = new captcha(true, "post_captcha");
| require_once MYBB_ROOT.'inc/class_captcha.php'; $post_captcha = new captcha(true, "post_captcha");
|
Zeile 3256 | Zeile 3159 |
---|
else { $captcha = '';
|
else { $captcha = '';
|
}
| }
|
$from_email = ''; if($mybb->user['uid'] == 0) { eval("\$from_email = \"".$templates->get("member_emailuser_guest")."\";");
|
$from_email = ''; if($mybb->user['uid'] == 0) { eval("\$from_email = \"".$templates->get("member_emailuser_guest")."\";");
|
}
| }
|
$plugins->run_hooks("member_emailuser_end");
| $plugins->run_hooks("member_emailuser_end");
|
Zeile 3276 | Zeile 3179 |
---|
$uid = $mybb->get_input('uid', MyBB::INPUT_INT); if(!$uid)
|
$uid = $mybb->get_input('uid', MyBB::INPUT_INT); if(!$uid)
|
{
| {
|
error($lang->referrals_no_user_specified);
|
error($lang->referrals_no_user_specified);
|
}
| }
|
$user = get_user($uid);
|
$user = get_user($uid);
|
| if(!$user['$uid']) { error($lang->referrals_invalid_user); }
|
$lang->nav_referrals = $lang->sprintf($lang->nav_referrals, $user['username']); add_breadcrumb($lang->nav_referrals);
| $lang->nav_referrals = $lang->sprintf($lang->nav_referrals, $user['username']); add_breadcrumb($lang->nav_referrals);
|