Vergleich member.php - 1.8.23 - 1.8.38

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 17Zeile 17

$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_hcaptcha_invisible,post_captcha_hcaptcha,post_captcha_hidden,post_captcha,member_register_referrer";


$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_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_customfields_field,member_profile_customfields,member_profile_adminoptions_manageban,member_profile_adminoptions,member_profile";

$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_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";

Zeile 31Zeile 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 89Zeile 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 300Zeile 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 388Zeile 391
			$captcha->invalidate_captcha();
}


			$captcha->invalidate_captcha();
}


		if($mybb->settings['regtype'] != "randompass" && !isset($mybb->cookies['coppauser']))

		if($mybb->settings['regtype'] != "randompass" && empty($mybb->cookies['coppauser']))

		{
// Log them in
my_setcookie("mybbuser", $user_info['uid']."_".$user_info['loginkey'], null, true, "lax");
}


		{
// Log them in
my_setcookie("mybbuser", $user_info['uid']."_".$user_info['loginkey'], null, true, "lax");
}


		if(isset($mybb->cookies['coppauser']))

		if(!empty($mybb->cookies['coppauser']))

		{
$lang->redirect_registered_coppa_activate = $lang->sprintf($lang->redirect_registered_coppa_activate, $mybb->settings['bbname'], htmlspecialchars_uni($user_info['username']));
my_unsetcookie("coppauser");

		{
$lang->redirect_registered_coppa_activate = $lang->sprintf($lang->redirect_registered_coppa_activate, $mybb->settings['bbname'], htmlspecialchars_uni($user_info['username']));
my_unsetcookie("coppauser");

Zeile 597Zeile 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 666Zeile 664
		else
{
$lang->redirect_registered = $lang->sprintf($lang->redirect_registered, $mybb->settings['bbname'], htmlspecialchars_uni($user_info['username']));

		else
{
$lang->redirect_registered = $lang->sprintf($lang->redirect_registered, $mybb->settings['bbname'], htmlspecialchars_uni($user_info['username']));





			$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);

Zeile 720Zeile 718
		$birthday_year = '';
}


		$birthday_year = '';
}


 
	$under_thirteen = false;


	// 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 730Zeile 730

$months = get_bdays($birthday_year);
if($mybb->input['bday2'] < 1 || $mybb->input['bday2'] > 12 || $birthday_year < (date("Y")-100) || $birthday_year > date("Y") || $mybb->input['bday1'] > $months[$mybb->input['bday2']-1])


$months = get_bdays($birthday_year);
if($mybb->input['bday2'] < 1 || $mybb->input['bday2'] > 12 || $birthday_year < (date("Y")-100) || $birthday_year > date("Y") || $mybb->input['bday1'] > $months[$mybb->input['bday2']-1])

			{

			{

				error($lang->error_invalid_birthday);

				error($lang->error_invalid_birthday);

			}


			}


			$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

			$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

Zeile 744Zeile 744
			{
my_setcookie("coppauser", 1, -0);
$under_thirteen = true;

			{
my_setcookie("coppauser", 1, -0);
$under_thirteen = true;

 
			}
else
{
my_setcookie("coppauser", 0, -0);

			}
$mybb->request_method = "";
}

			}
$mybb->request_method = "";
}

Zeile 758Zeile 762
			eval("\$coppa = \"".$templates->get("member_register_coppa")."\";");
output_page($coppa);
exit;

			eval("\$coppa = \"".$templates->get("member_register_coppa")."\";");
output_page($coppa);
exit;

		}
}

		}
}


if((!isset($mybb->input['agree']) && !isset($mybb->input['regsubmit'])) && $fromreg == 0 || $mybb->request_method != "post")
{
$coppa_agreement = '';
// Is this user a COPPA user? We need to show the COPPA agreement too


if((!isset($mybb->input['agree']) && !isset($mybb->input['regsubmit'])) && $fromreg == 0 || $mybb->request_method != "post")
{
$coppa_agreement = '';
// Is this user a COPPA user? We need to show the COPPA agreement too

		if($mybb->settings['coppa'] != "disabled" && ($mybb->cookies['coppauser'] == 1 || $under_thirteen))

		if($mybb->settings['coppa'] != "disabled" && (!empty($mybb->cookies['coppauser']) || $under_thirteen))

		{
if($mybb->settings['coppa'] == "deny")
{

		{
if($mybb->settings['coppa'] == "deny")
{

Zeile 824Zeile 828
			if(is_array($explodedppp))
{
foreach($explodedppp as $val)

			if(is_array($explodedppp))
{
foreach($explodedppp as $val)

				{

				{

					$val = trim($val);
$ppp_option = $lang->sprintf($lang->ppp_option, $val);
eval("\$pppoptions .= \"".$templates->get("usercp_options_pppselect_option")."\";");

					$val = trim($val);
$ppp_option = $lang->sprintf($lang->ppp_option, $val);
eval("\$pppoptions .= \"".$templates->get("usercp_options_pppselect_option")."\";");

				}

				}

			}
eval("\$pppselect = \"".$templates->get("usercp_options_pppselect")."\";");
}

			}
eval("\$pppselect = \"".$templates->get("usercp_options_pppselect")."\";");
}

Zeile 837Zeile 841
			if(isset($mybb->cookies['mybb']['referrer']))
{
$query = $db->simple_select("users", "uid,username", "uid='".(int)$mybb->cookies['mybb']['referrer']."'");

			if(isset($mybb->cookies['mybb']['referrer']))
{
$query = $db->simple_select("users", "uid,username", "uid='".(int)$mybb->cookies['mybb']['referrer']."'");

				$ref = $db->fetch_array($query);
$ref['username'] = htmlspecialchars_uni($ref['username']);
$referrername = $ref['username'];
}
elseif(isset($referrer))

				$ref = $db->fetch_array($query);
$ref['username'] = htmlspecialchars_uni($ref['username']);
$referrername = $ref['username'];
}
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 849Zeile 853
				$referrername = $ref['username'];
}
elseif(!empty($referrername))

				$referrername = $ref['username'];
}
elseif(!empty($referrername))

			{

			{

				$ref = get_user_by_username($referrername);

				$ref = get_user_by_username($referrername);

				if(!$ref['uid'])

				if(!$ref)

				{
$errors[] = $lang->error_badreferrer;
}

				{
$errors[] = $lang->error_badreferrer;
}

Zeile 859Zeile 863
			else
{
$referrername = '';

			else
{
$referrername = '';

			}

			}

			if(isset($quickreg))
{
$refbg = "trow1";

			if(isset($quickreg))
{
$refbg = "trow1";

Zeile 903Zeile 907
				$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 919Zeile 923
					$userfield = '';
}
if($type == "multiselect")

					$userfield = '';
}
if($type == "multiselect")

				{
if($errors)
{
$useropts = $userfield;
}
else
{
$useropts = explode("\n", $userfield);
}
if(is_array($useropts))

				{
if(!empty($errors))
{
$useropts = $userfield;
}
else
{
$useropts = explode("\n", $userfield);
}
if(is_array($useropts))

					{
foreach($useropts as $key => $val)
{
$seloptions[$val] = $val;

					{
foreach($useropts as $key => $val)
{
$seloptions[$val] = $val;

						}

						}

					}
$expoptions = explode("\n", $options);
if(is_array($expoptions))

					}
$expoptions = explode("\n", $options);
if(is_array($expoptions))

Zeile 960Zeile 964
					}
}
elseif($type == "select")

					}
}
elseif($type == "select")

				{
$expoptions = explode("\n", $options);
if(is_array($expoptions))
{
foreach($expoptions as $key => $val)
{

				{
$expoptions = explode("\n", $options);
if(is_array($expoptions))
{
foreach($expoptions as $key => $val)
{

							$val = trim($val);
$val = str_replace("\n", "\\n", $val);
$sel = "";

							$val = trim($val);
$val = str_replace("\n", "\\n", $val);
$sel = "";

							if($val == $userfield)

							if($val == $userfield)

							{
$sel = ' selected="selected"';
}

							{
$sel = ' selected="selected"';
}





							eval("\$select .= \"".$templates->get("usercp_profile_profilefields_select_option")."\";");
}
if(!$profilefield['length'])

							eval("\$select .= \"".$templates->get("usercp_profile_profilefields_select_option")."\";");
}
if(!$profilefield['length'])

						{

						{

							$profilefield['length'] = 1;
}


							$profilefield['length'] = 1;
}


Zeile 993Zeile 997
						{
$checked = "";
if($val == $userfield)

						{
$checked = "";
if($val == $userfield)

							{

							{

								$checked = 'checked="checked"';
}


								$checked = 'checked="checked"';
}


Zeile 1003Zeile 1007
				}
elseif($type == "checkbox")
{

				}
elseif($type == "checkbox")
{

					if($errors)

					if(!empty($errors))

					{
$useropts = $userfield;
}

					{
$useropts = $userfield;
}

Zeile 1080Zeile 1084
			}
}


			}
}


		if(!isset($fromreg))

		if(!isset($fromreg) || $fromreg == 0)

		{
$allownoticescheck = "checked=\"checked\"";
$hideemailcheck = '';

		{
$allownoticescheck = "checked=\"checked\"";
$hideemailcheck = '';

Zeile 1099Zeile 1103
		}
// Spambot registration image thingy
$captcha_html = 0;

		}
// 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 1124Zeile 1129
				WHERE q.active='1' AND s.sid='{$sid}'
");
if($db->num_rows($query) > 0)

				WHERE q.active='1' AND s.sid='{$sid}'
");
if($db->num_rows($query) > 0)

			{

			{

				$question_exists = 1;
$question = $db->fetch_array($query);


				$question_exists = 1;
$question = $db->fetch_array($query);


Zeile 1155Zeile 1160
				}

eval("\$questionbox = \"".$templates->get("member_register_question")."\";");

				}

eval("\$questionbox = \"".$templates->get("member_register_question")."\";");

			}

			}

		}

$hiddencaptcha = '';

		}

$hiddencaptcha = '';

Zeile 1170Zeile 1175
		{
// 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']);





			// 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)
{

Zeile 1178Zeile 1183
			}
eval("\$passboxes = \"".$templates->get("member_register_password")."\";");
}

			}
eval("\$passboxes = \"".$templates->get("member_register_password")."\";");
}





		$languages = $lang->get_languages();
$langoptions = $boardlanguage = '';
if(count($languages) > 1)

		$languages = $lang->get_languages();
$langoptions = $boardlanguage = '';
if(count($languages) > 1)

Zeile 1186Zeile 1191
			foreach($languages as $name => $language)
{
$language = htmlspecialchars_uni($language);

			foreach($languages as $name => $language)
{
$language = htmlspecialchars_uni($language);





				$sel = '';
if($mybb->get_input('language') == $name)
{

				$sel = '';
if($mybb->get_input('language') == $name)
{

Zeile 1195Zeile 1200

eval('$langoptions .= "'.$templates->get('usercp_options_language_option').'";');
}


eval('$langoptions .= "'.$templates->get('usercp_options_language_option').'";');
}





			eval('$boardlanguage = "'.$templates->get('member_register_language').'";');
}


			eval('$boardlanguage = "'.$templates->get('member_register_language').'";');
}


Zeile 1203Zeile 1208
		$time = TIME_NOW;

$plugins->run_hooks("member_register_end");

		$time = TIME_NOW;

$plugins->run_hooks("member_register_end");

		



		$jsvar_reqfields = json_encode($jsvar_reqfields);

$validator_javascript = "<script type=\"text/javascript\">

		$jsvar_reqfields = json_encode($jsvar_reqfields);

$validator_javascript = "<script type=\"text/javascript\">

Zeile 1220Zeile 1225
				regtype: '{$mybb->settings['regtype']}',
hiddencaptchaimage: '{$mybb->settings['hiddencaptchaimage']}'
};

				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_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}';

Zeile 1277Zeile 1283
	{
$query = $db->simple_select("awaitingactivation", "*", "uid='".$user['uid']."' AND (type='r' OR type='e' OR type='b')");
$activation = $db->fetch_array($query);

	{
$query = $db->simple_select("awaitingactivation", "*", "uid='".$user['uid']."' AND (type='r' OR type='e' OR type='b')");
$activation = $db->fetch_array($query);

		if(!$activation['uid'])

		if(!$activation)

		{
error($lang->error_alreadyactivated);

		{
error($lang->error_alreadyactivated);

		}
if($activation['code'] !== $mybb->get_input('code'))

		}
if($activation['code'] !== $mybb->get_input('code'))

		{
error($lang->error_badactivationcode);
}

		{
error($lang->error_badactivationcode);
}

Zeile 1375Zeile 1381
		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'))."'
");

		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);
if($numusers < 1)
{
error($lang->error_invalidemail);
}
else
{
if(count($errors) == 0)
{
while($user = $db->fetch_array($query))
{

	$numusers = $db->num_rows($query);
if($numusers < 1)
{
error($lang->error_invalidemail);
}
else
{
if(count($errors) == 0)
{
while($user = $db->fetch_array($query))
{

				if($user['type'] == "b" && $user['validated'] == 1)
{
error($lang->error_activated_by_admin);

				if($user['type'] == "b" && $user['validated'] == 1)
{
error($lang->error_activated_by_admin);

Zeile 1456Zeile 1462
	$query = $db->simple_select("awaitingactivation", "*", "uid='".$mybb->user['uid']."' AND type='b'");
$activation = $db->fetch_array($query);


	$query = $db->simple_select("awaitingactivation", "*", "uid='".$mybb->user['uid']."' AND type='b'");
$activation = $db->fetch_array($query);


	if($activation['validated'] == 1)

	if($activation && $activation['validated'] == 1)

	{
error($lang->error_activated_by_admin);
}

	{
error($lang->error_activated_by_admin);
}

Zeile 1512Zeile 1518
		}
}


		}
}


	$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 1661Zeile 1666
		require_once MYBB_ROOT.'inc/datahandlers/user.php';
$userhandler = new UserDataHandler('update');


		require_once MYBB_ROOT.'inc/datahandlers/user.php';
$userhandler = new UserDataHandler('update');


		while(!$userhandler->verify_password())

		do

		{
$password = random_str($password_length, $mybb->settings['requirecomplexpasswords']);


		{
$password = random_str($password_length, $mybb->settings['requirecomplexpasswords']);


Zeile 1674Zeile 1679

$userhandler->set_validated(true);
$userhandler->errors = array();


$userhandler->set_validated(true);
$userhandler->errors = array();

		}

		} while(!$userhandler->verify_password());


$userhandler->update_user();


$userhandler->update_user();





		$logindetails = array(
'salt' => $userhandler->data['salt'],

		$logindetails = array(
'salt' => $userhandler->data['salt'],

			'password'	=> $userhandler->data['saltedpw'],

			'password'	=> $userhandler->data['password'],

			'loginkey'	=> $userhandler->data['loginkey'],
);

$email = $user['email'];

			'loginkey'	=> $userhandler->data['loginkey'],
);

$email = $user['email'];





		$plugins->run_hooks("member_resetpassword_process");

		$plugins->run_hooks("member_resetpassword_process");





		$emailsubject = $lang->sprintf($lang->emailsubject_passwordreset, $mybb->settings['bbname']);
$emailmessage = $lang->sprintf($lang->email_passwordreset, $username, $mybb->settings['bbname'], $password);
my_mail($email, $emailsubject, $emailmessage);

		$emailsubject = $lang->sprintf($lang->emailsubject_passwordreset, $mybb->settings['bbname']);
$emailmessage = $lang->sprintf($lang->email_passwordreset, $username, $mybb->settings['bbname'], $password);
my_mail($email, $emailsubject, $emailmessage);

Zeile 1699Zeile 1704
	else
{
$plugins->run_hooks("member_resetpassword_form");

	else
{
$plugins->run_hooks("member_resetpassword_form");





		switch($mybb->settings['username_method'])
{
case 0:

		switch($mybb->settings['username_method'])
{
case 0:

Zeile 1717Zeile 1722
		}

$code = htmlspecialchars_uni($mybb->get_input('code'));

		}

$code = htmlspecialchars_uni($mybb->get_input('code'));


if(!isset($mybb->input['username']))
{
$input_username = '';
}
$input_username = htmlspecialchars_uni($mybb->input['username']);

		
$input_username = htmlspecialchars_uni($mybb->get_input('username'));






eval("\$activate = \"".$templates->get("member_resetpassword")."\";");
output_page($activate);


eval("\$activate = \"".$templates->get("member_resetpassword")."\";");
output_page($activate);

Zeile 1762Zeile 1763
	);

$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();

Zeile 1772Zeile 1776
		$mybb->input['action'] = "login";
$mybb->request_method = "get";


		$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']);

$db->update_query("users", array('loginattempts' => 'loginattempts+1'), "uid='".(int)$loginhandler->login_data['uid']."'", 1, true);

		$logins = login_attempt_check($login_user_uid);







		$errors = $loginhandler->get_friendly_errors();

		$db->update_query("users", array('loginattempts' => 'loginattempts+1'), "uid='".$login_user_uid."'", 1, true);





		$user['loginattempts'] = (int)$loginhandler->login_data['loginattempts'];

		$errors = $loginhandler->get_friendly_errors();


// 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 1870Zeile 1889
		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 1881Zeile 1900
				$captcha = $login_captcha->build_hidden_captcha();
}
}

				$captcha = $login_captcha->build_hidden_captcha();
}
}

		elseif(in_array($login_captcha->type, array(4, 5, 8)))

		elseif(in_array($login_captcha->type, array(captcha::NOCAPTCHA_RECAPTCHA, captcha::RECAPTCHA_INVISIBLE, captcha::RECAPTCHA_V3)))

		{
$login_captcha->build_recaptcha();
}

		{
$login_captcha->build_recaptcha();
}

		elseif(in_array($login_captcha->type, array(6, 7)))

		elseif(in_array($login_captcha->type, array(captcha::HCAPTCHA, captcha::HCAPTCHA_INVISIBLE)))

		{
$login_captcha->build_hcaptcha();
}

		{
$login_captcha->build_hcaptcha();
}

Zeile 2132Zeile 2151
			$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 2180Zeile 2199
	if($tpd > $memprofile['threadnum'])
{
$tpd = $memprofile['threadnum'];

	if($tpd > $memprofile['threadnum'])
{
$tpd = $memprofile['threadnum'];

	}

	}


$numthreads = $stats['numthreads'];
if($numthreads == 0)


$numthreads = $stats['numthreads'];
if($numthreads == 0)

	{

	{

		$thread_percent = "0";
}
else

		$thread_percent = "0";
}
else

Zeile 2206Zeile 2225
			eval("\$findposts = \"".$templates->get("member_profile_findposts")."\";");
}
if(!empty($memprofile['threadnum']))

			eval("\$findposts = \"".$templates->get("member_profile_findposts")."\";");
}
if(!empty($memprofile['threadnum']))

		{

		{

			eval("\$findthreads = \"".$templates->get("member_profile_findthreads")."\";");
}
}

			eval("\$findthreads = \"".$templates->get("member_profile_findthreads")."\";");
}
}

Zeile 2282Zeile 2301
	$localtime = $lang->sprintf($lang->local_time_format, $memlocaldate, $memlocaltime);

if($memprofile['birthday'])

	$localtime = $lang->sprintf($lang->local_time_format, $memlocaldate, $memlocaltime);

if($memprofile['birthday'])

	{

	{

		$membday = explode("-", $memprofile['birthday']);

if($memprofile['birthdayprivacy'] != 'none')

		$membday = explode("-", $memprofile['birthday']);

if($memprofile['birthdayprivacy'] != 'none')

Zeile 2328Zeile 2347
	}

// 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 2343Zeile 2362
	}
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 2353Zeile 2375
				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);



$usertitle = htmlspecialchars_uni($usertitle);


Zeile 2369Zeile 2391
		// 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 2388Zeile 2410
					break;
}
}

					break;
}
}

 
		}

if(!isset($stars))
{
$stars = 0;

		}
}


		}
}


Zeile 2520Zeile 2547
			$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 2572Zeile 2599
					if($customfield_val != '')
{
eval("\$customfieldval = \"".$templates->get("member_profile_customfields_field_multi")."\";");

					if($customfield_val != '')
{
eval("\$customfieldval = \"".$templates->get("member_profile_customfields_field_multi")."\";");

					}
}

					}
}

				else
{
$parser_options = array(

				else
{
$parser_options = array(

Zeile 2595Zeile 2622
						$parser_options['nl2br'] = 0;
}


						$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 2631Zeile 2658
	{
// 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'])
{
$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";



		if($db->num_rows($query))
{
$memban = $db->fetch_array($query);

if($memban['reason'])
{
$memban['reason'] = htmlspecialchars_uni($parser->parse_badwords($memban['reason']));
}
else
{
$memban['reason'] = $lang->na;

			}

			}

			else if($remaining < 86400)



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']);

			$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').'";');







			// 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)

	{

	{

		if($memperms['isbannedgroup'] == 1)

		if($memperms['isbannedgroup'] == 1)

		{

		{

			eval("\$adminoptions = \"".$templates->get("member_profile_adminoptions_manageban")."\";");
}
else

			eval("\$adminoptions = \"".$templates->get("member_profile_adminoptions_manageban")."\";");
}
else

Zeile 2696Zeile 2732
			eval("\$adminoptions = \"".$templates->get("member_profile_adminoptions")."\";");
}
}

			eval("\$adminoptions = \"".$templates->get("member_profile_adminoptions")."\";");
}
}





	$modoptions = $viewnotes = $editnotes = $editprofile = $banuser = $manageban = $manageuser = '';
$can_purge_spammer = purgespammer_show($memprofile['postnum'], $memprofile['usergroup'], $memprofile['uid']);
if($mybb->usergroup['canmodcp'] == 1 || $can_purge_spammer)

	$modoptions = $viewnotes = $editnotes = $editprofile = $banuser = $manageban = $manageuser = '';
$can_purge_spammer = purgespammer_show($memprofile['postnum'], $memprofile['usergroup'], $memprofile['uid']);
if($mybb->usergroup['canmodcp'] == 1 || $can_purge_spammer)

Zeile 2707Zeile 2743
			$memprofile['lastip'] = my_inet_ntop($db->unescape_binary($memprofile['lastip']));

eval("\$ipaddress = \"".$templates->get("member_profile_modoptions_ipaddress")."\";");

			$memprofile['lastip'] = my_inet_ntop($db->unescape_binary($memprofile['lastip']));

eval("\$ipaddress = \"".$templates->get("member_profile_modoptions_ipaddress")."\";");

		}


		}


		$memprofile['usernotes'] = nl2br(htmlspecialchars_uni($memprofile['usernotes']));

if(!empty($memprofile['usernotes']))
{
if(strlen($memprofile['usernotes']) > 100)

		$memprofile['usernotes'] = nl2br(htmlspecialchars_uni($memprofile['usernotes']));

if(!empty($memprofile['usernotes']))
{
if(strlen($memprofile['usernotes']) > 100)

			{

			{

				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;

		}
else
{
$memprofile['usernotes'] = $lang->no_usernotes;

		}

if($mybb->usergroup['caneditprofiles'] == 1)
{
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($mybb->usergroup['caneditprofiles'] == 1 && modcp_can_manage_user($memprofile['uid']))

		{

		{

			if($memperms['isbannedgroup'] == 1 && $mybb->usergroup['canbanusers'] == 1)

			if(modcp_can_manage_user($memprofile['uid']))

			{

			{

				eval("\$manageban = \"".$templates->get("member_profile_modoptions_manageban")."\";");



				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')."\";");

Zeile 2869Zeile 2910
		$last_email = $db->fetch_array($query);

// Users last email was within the flood time, show the error

		$last_email = $db->fetch_array($query);

// Users last email was within the flood time, show the error

		if($last_email['mid'])

		if(isset($last_email['mid']))

		{
$remaining_time = ($mybb->usergroup['emailfloodtime']*60)-(TIME_NOW-$last_email['dateline']);


		{
$remaining_time = ($mybb->usergroup['emailfloodtime']*60)-(TIME_NOW-$last_email['dateline']);


Zeile 3042Zeile 3083
		$last_email = $db->fetch_array($query);

// Users last email was within the flood time, show the error

		$last_email = $db->fetch_array($query);

// Users last email was within the flood time, show the error

		if($last_email['mid'])

		if(isset($last_email['mid']))

		{
$remaining_time = ($mybb->usergroup['emailfloodtime']*60)-(TIME_NOW-$last_email['dateline']);


		{
$remaining_time = ($mybb->usergroup['emailfloodtime']*60)-(TIME_NOW-$last_email['dateline']);