Vergleich member.php - 1.8.5 - 1.8.11

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 14Zeile 14
define("ALLOWABLE_PAGE", "register,do_register,login,do_login,logout,lostpw,do_lostpw,activate,resendactivation,do_resendactivation,resetpassword,viewnotes");

$nosession['avatar'] = 1;

define("ALLOWABLE_PAGE", "register,do_register,login,do_login,logout,lostpw,do_lostpw,activate,resendactivation,do_resendactivation,resetpassword,viewnotes");

$nosession['avatar'] = 1;

$templatelist = "member_register,member_register_hiddencaptcha,member_coppa_form,member_register_coppa,member_register_agreement_coppa,member_register_agreement,usercp_options_tppselect,usercp_options_pppselect,member_register_referrer,member_register_customfield,member_register_requiredfields";
$templatelist .= ",member_resetpassword,member_loggedin_notice,member_profile_away,member_emailuser,member_register_regimage,member_register_regimage_recaptcha,member_register_regimage_nocaptcha,member_register_regimage_ayah,post_captcha_hidden,post_captcha,post_captcha_recaptcha,post_captcha_ayah,member_profile_addremove,member_emailuser_guest";
$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,member_login,member_profile_online,member_viewnotes";
$templatelist .= ",member_profile_signature,member_profile_avatar,member_profile_groupimage,member_profile_referrals,member_profile_website,member_profile_reputation_vote,member_activate,member_resendactivation,member_lostpw,member_register_additionalfields,member_register_password,usercp_options_pppselect_option";
$templatelist .= ",member_profile_modoptions_manageuser,member_profile_modoptions_editprofile,member_profile_modoptions_banuser,member_profile_modoptions_viewnotes,member_profile_modoptions,member_profile_modoptions_editnotes,member_profile_modoptions_purgespammer,postbit_reputation_formatted,postbit_warninglevel_formatted";
$templatelist .= ",usercp_profile_profilefields_select_option,usercp_profile_profilefields_multiselect,usercp_profile_profilefields_select,usercp_profile_profilefields_textarea,usercp_profile_profilefields_radio,usercp_profile_profilefields_checkbox,usercp_profile_profilefields_text,usercp_options_tppselect_option";
$templatelist .= ",member_register_question,member_register_question_refresh,usercp_options_timezone,usercp_options_timezone_option,usercp_options_language_option,member_register_language,member_profile_userstar,member_profile_customfields_field_multi_item,member_profile_customfields_field_multi,member_register_day";



$templatelist = "member_register,member_register_hiddencaptcha,member_coppa_form,member_register_coppa,member_register_agreement_coppa,member_register_agreement,member_register_customfield,member_register_requiredfields,member_register_password";
$templatelist .= ",member_loggedin_notice,member_profile_away,member_register_regimage,member_register_regimage_recaptcha,member_register_regimage_nocaptcha,post_captcha_hidden,post_captcha,post_captcha_recaptcha,member_viewnotes,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_resendactivation,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,usercp_profile_profilefields_checkbox";
$templatelist .= ",member_register_question,member_register_question_refresh,usercp_options_timezone,usercp_options_timezone_option,usercp_options_language_option,member_register_language,member_profile_customfields_field_multi_item,member_profile_customfields_field_multi";

$templatelist .= ",member_profile_contact_fields_aim,member_profile_contact_fields_google,member_profile_contact_fields_icq,member_profile_contact_fields_skype,member_profile_contact_fields_yahoo,member_profile_pm,member_profile_contact_details,member_profile_banned";

$templatelist .= ",member_profile_contact_fields_aim,member_profile_contact_fields_google,member_profile_contact_fields_icq,member_profile_contact_fields_skype,member_profile_contact_fields_yahoo,member_profile_pm,member_profile_contact_details,member_profile_banned";

 
$templatelist .= ",member_profile_banned_remaining,member_profile_addremove,member_emailuser_guest,member_register_day,usercp_options_tppselect_option,postbit_warninglevel_formatted,member_profile_userstar,member_profile_findposts,member_profile_findthreads";
$templatelist .= ",usercp_options_tppselect,usercp_options_pppselect,member_resetpassword,member_login,member_profile_online,usercp_options_pppselect_option,postbit_reputation_formatted,member_emailuser,member_profile_modoptions,usercp_profile_profilefields_text";


require_once "./global.php";
require_once MYBB_ROOT."inc/functions_post.php";


require_once "./global.php";
require_once MYBB_ROOT."inc/functions_post.php";

Zeile 49Zeile 52
		break;
case "lostpw":
add_breadcrumb($lang->nav_lostpw);

		break;
case "lostpw":
add_breadcrumb($lang->nav_lostpw);

		break;

		break;

	case "resetpassword":
add_breadcrumb($lang->nav_resetpassword);
break;

	case "resetpassword":
add_breadcrumb($lang->nav_resetpassword);
break;

Zeile 59Zeile 62
	case "emailuser":
add_breadcrumb($lang->nav_emailuser);
break;

	case "emailuser":
add_breadcrumb($lang->nav_emailuser);
break;

}


}


if(($mybb->input['action'] == "register" || $mybb->input['action'] == "do_register") && $mybb->usergroup['cancp'] != 1)
{
if($mybb->settings['disableregs'] == 1)

if(($mybb->input['action'] == "register" || $mybb->input['action'] == "do_register") && $mybb->usergroup['cancp'] != 1)
{
if($mybb->settings['disableregs'] == 1)

Zeile 70Zeile 73
	if($mybb->user['uid'] != 0)
{
error($lang->error_alreadyregistered);

	if($mybb->user['uid'] != 0)
{
error($lang->error_alreadyregistered);

	}

	}

	if($mybb->settings['betweenregstime'] && $mybb->settings['maxregsbetweentime'])
{
$time = TIME_NOW;

	if($mybb->settings['betweenregstime'] && $mybb->settings['maxregsbetweentime'])
{
$time = TIME_NOW;

Zeile 100Zeile 103

// See if they registered faster than normal
if($timetook < $mybb->settings['regtime'])


// See if they registered faster than normal
if($timetook < $mybb->settings['regtime'])

			{

			{

				// This user registered pretty quickly, bot detected!
$lang->error_spam_deny_time = $lang->sprintf($lang->error_spam_deny_time, $mybb->settings['regtime'], $timetook);
error($lang->error_spam_deny_time);
}
}
else

				// This user registered pretty quickly, bot detected!
$lang->error_spam_deny_time = $lang->sprintf($lang->error_spam_deny_time, $mybb->settings['regtime'], $timetook);
error($lang->error_spam_deny_time);
}
}
else

		{
error($lang->error_spam_deny);
}

		{
error($lang->error_spam_deny);
}

	}

// If we have hidden CATPCHA enabled and it's filled, deny registration

	}

// If we have hidden CATPCHA enabled and it's filled, deny registration

Zeile 118Zeile 121
		$string = $mybb->settings['hiddencaptchaimagefield'];

if(!empty($mybb->input[$string]))

		$string = $mybb->settings['hiddencaptchaimagefield'];

if(!empty($mybb->input[$string]))

		{

		{

			error($lang->error_spam_deny);
}
}

if($mybb->settings['regtype'] == "randompass")
{

			error($lang->error_spam_deny);
}
}

if($mybb->settings['regtype'] == "randompass")
{

		$mybb->input['password'] = random_str();









$password_length = (int)$mybb->settings['minpasswordlength'];
if($password_length < 8)
{
$password_length = min(8, (int)$mybb->settings['maxpasswordlength']);
}

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

		$mybb->input['password2'] = $mybb->input['password'];
}


		$mybb->input['password2'] = $mybb->input['password'];
}


Zeile 220Zeile 230
							'stopforumspam_check_emails',
'stopforumspam_check_ips'
))));

							'stopforumspam_check_emails',
'stopforumspam_check_ips'
))));

			}

			}

		}
catch (Exception $e)
{
if($mybb->settings['stopforumspam_block_on_error'])

		}
catch (Exception $e)
{
if($mybb->settings['stopforumspam_block_on_error'])

			{

			{

				error($lang->error_stop_forum_spam_fetching);

				error($lang->error_stop_forum_spam_fetching);

			}
}
}


			}
}
}


	if($mybb->settings['captchaimage'])
{
require_once MYBB_ROOT.'inc/class_captcha.php';
$captcha = new captcha;

	if($mybb->settings['captchaimage'])
{
require_once MYBB_ROOT.'inc/class_captcha.php';
$captcha = new captcha;





		if($captcha->validate_captcha() == false)
{
// CAPTCHA validation failed

		if($captcha->validate_captcha() == false)
{
// CAPTCHA validation failed

Zeile 245Zeile 255
			}
}
}

			}
}
}





	// If we have a security question, check to see if answer is correct
if($mybb->settings['securityquestion'])
{

	// If we have a security question, check to see if answer is correct
if($mybb->settings['securityquestion'])
{

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

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

		{

		{

			$question = $db->fetch_array($query);
$valid_answers = explode("\n", $question['answer']);
$validated = 0;

			$question = $db->fetch_array($query);
$valid_answers = explode("\n", $question['answer']);
$validated = 0;

Zeile 273Zeile 283
			}

if($validated != 1)

			}

if($validated != 1)

			{
$update_question = array(

			{
$update_question = array(

					"incorrect" => $question['incorrect'] + 1
);
$db->update_query("questions", $update_question, "qid='{$question['qid']}'");

					"incorrect" => $question['incorrect'] + 1
);
$db->update_query("questions", $update_question, "qid='{$question['qid']}'");

Zeile 299Zeile 309
		$email = htmlspecialchars_uni($mybb->get_input('email'));
$email2 = htmlspecialchars_uni($mybb->get_input('email2'));
$referrername = htmlspecialchars_uni($mybb->get_input('referrername'));

		$email = htmlspecialchars_uni($mybb->get_input('email'));
$email2 = htmlspecialchars_uni($mybb->get_input('email2'));
$referrername = htmlspecialchars_uni($mybb->get_input('referrername'));





		$allownoticescheck = $hideemailcheck = $no_auto_subscribe_selected = $instant_email_subscribe_selected = $instant_pm_subscribe_selected = $no_subscribe_selected = '';
$receivepmscheck = $pmnoticecheck = $pmnotifycheck = $invisiblecheck = $dst_auto_selected = $dst_enabled_selected = $dst_disabled_selected = '';


		$allownoticescheck = $hideemailcheck = $no_auto_subscribe_selected = $instant_email_subscribe_selected = $instant_pm_subscribe_selected = $no_subscribe_selected = '';
$receivepmscheck = $pmnoticecheck = $pmnotifycheck = $invisiblecheck = $dst_auto_selected = $dst_enabled_selected = $dst_disabled_selected = '';


Zeile 311Zeile 321
		if($mybb->get_input('hideemail', MyBB::INPUT_INT) == 1)
{
$hideemailcheck = "checked=\"checked\"";

		if($mybb->get_input('hideemail', MyBB::INPUT_INT) == 1)
{
$hideemailcheck = "checked=\"checked\"";

		}


		}


		if($mybb->get_input('subscriptionmethod', MyBB::INPUT_INT) == 1)
{
$no_subscribe_selected = "selected=\"selected\"";

		if($mybb->get_input('subscriptionmethod', MyBB::INPUT_INT) == 1)
{
$no_subscribe_selected = "selected=\"selected\"";

Zeile 322Zeile 332
			$instant_email_subscribe_selected = "selected=\"selected\"";
}
else if($mybb->get_input('subscriptionmethod', MyBB::INPUT_INT) == 3)

			$instant_email_subscribe_selected = "selected=\"selected\"";
}
else if($mybb->get_input('subscriptionmethod', MyBB::INPUT_INT) == 3)

		{

		{

			$instant_pm_subscribe_selected = "selected=\"selected\"";
}
else

			$instant_pm_subscribe_selected = "selected=\"selected\"";
}
else

		{

		{

			$no_auto_subscribe_selected = "selected=\"selected\"";
}

if($mybb->get_input('receivepms', MyBB::INPUT_INT) == 1)

			$no_auto_subscribe_selected = "selected=\"selected\"";
}

if($mybb->get_input('receivepms', MyBB::INPUT_INT) == 1)

		{

		{

			$receivepmscheck = "checked=\"checked\"";

			$receivepmscheck = "checked=\"checked\"";

		}

		}


if($mybb->get_input('pmnotice', MyBB::INPUT_INT) == 1)


if($mybb->get_input('pmnotice', MyBB::INPUT_INT) == 1)

		{
$pmnoticecheck = " checked=\"checked\"";
}

		{
$pmnoticecheck = " checked=\"checked\"";
}


if($mybb->get_input('pmnotify', MyBB::INPUT_INT) == 1)
{
$pmnotifycheck = "checked=\"checked\"";


if($mybb->get_input('pmnotify', MyBB::INPUT_INT) == 1)
{
$pmnotifycheck = "checked=\"checked\"";

		}

		}


if($mybb->get_input('invisible', MyBB::INPUT_INT) == 1)
{
$invisiblecheck = "checked=\"checked\"";


if($mybb->get_input('invisible', MyBB::INPUT_INT) == 1)
{
$invisiblecheck = "checked=\"checked\"";

		}

		}


if($mybb->get_input('dstcorrection', MyBB::INPUT_INT) == 2)
{
$dst_auto_selected = "selected=\"selected\"";


if($mybb->get_input('dstcorrection', MyBB::INPUT_INT) == 2)
{
$dst_auto_selected = "selected=\"selected\"";

		}

		}

		else if($mybb->get_input('dstcorrection', MyBB::INPUT_INT) == 1)
{
$dst_enabled_selected = "selected=\"selected\"";

		else if($mybb->get_input('dstcorrection', MyBB::INPUT_INT) == 1)
{
$dst_enabled_selected = "selected=\"selected\"";

Zeile 378Zeile 388
		}

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

		}

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

		{

		{

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

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

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

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

			$lang->redirect_registered_coppa_activate = $lang->sprintf($lang->redirect_registered_coppa_activate, $mybb->settings['bbname'], $user_info['username']);

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

			my_unsetcookie("coppauser");
my_unsetcookie("coppadob");
$plugins->run_hooks("member_do_register_end");

			my_unsetcookie("coppauser");
my_unsetcookie("coppadob");
$plugins->run_hooks("member_do_register_end");

Zeile 400Zeile 410
				"dateline" => TIME_NOW,
"code" => $activationcode,
"type" => "r"

				"dateline" => TIME_NOW,
"code" => $activationcode,
"type" => "r"

			);
$db->insert_query("awaitingactivation", $activationarray);
$emailsubject = $lang->sprintf($lang->emailsubject_activateaccount, $mybb->settings['bbname']);
switch($mybb->settings['username_method'])
{
case 0:
$emailmessage = $lang->sprintf($lang->email_activateaccount, $user_info['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user_info['uid'], $activationcode);
break;
case 1:
$emailmessage = $lang->sprintf($lang->email_activateaccount1, $user_info['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user_info['uid'], $activationcode);
break;
case 2:
$emailmessage = $lang->sprintf($lang->email_activateaccount2, $user_info['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user_info['uid'], $activationcode);
break;
default:
$emailmessage = $lang->sprintf($lang->email_activateaccount, $user_info['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user_info['uid'], $activationcode);
break;
}
my_mail($user_info['email'], $emailsubject, $emailmessage);

$lang->redirect_registered_activation = $lang->sprintf($lang->redirect_registered_activation, $mybb->settings['bbname'], $user_info['username']);


			);
$db->insert_query("awaitingactivation", $activationarray);
$emailsubject = $lang->sprintf($lang->emailsubject_activateaccount, $mybb->settings['bbname']);
switch($mybb->settings['username_method'])
{
case 0:
$emailmessage = $lang->sprintf($lang->email_activateaccount, $user_info['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user_info['uid'], $activationcode);
break;
case 1:
$emailmessage = $lang->sprintf($lang->email_activateaccount1, $user_info['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user_info['uid'], $activationcode);
break;
case 2:
$emailmessage = $lang->sprintf($lang->email_activateaccount2, $user_info['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user_info['uid'], $activationcode);
break;
default:
$emailmessage = $lang->sprintf($lang->email_activateaccount, $user_info['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user_info['uid'], $activationcode);
break;
}
my_mail($user_info['email'], $emailsubject, $emailmessage);

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


			$plugins->run_hooks("member_do_register_end");

error($lang->redirect_registered_activation);

			$plugins->run_hooks("member_do_register_end");

error($lang->redirect_registered_activation);

		}

		}

		else if($mybb->settings['regtype'] == "randompass")
{
$emailsubject = $lang->sprintf($lang->emailsubject_randompassword, $mybb->settings['bbname']);
switch($mybb->settings['username_method'])

		else if($mybb->settings['regtype'] == "randompass")
{
$emailsubject = $lang->sprintf($lang->emailsubject_randompassword, $mybb->settings['bbname']);
switch($mybb->settings['username_method'])

			{

			{

				case 0:
$emailmessage = $lang->sprintf($lang->email_randompassword, $user['username'], $mybb->settings['bbname'], $user_info['username'], $user_info['password']);
break;

				case 0:
$emailmessage = $lang->sprintf($lang->email_randompassword, $user['username'], $mybb->settings['bbname'], $user_info['username'], $user_info['password']);
break;

Zeile 445Zeile 455
					break;
}
my_mail($user_info['email'], $emailsubject, $emailmessage);

					break;
}
my_mail($user_info['email'], $emailsubject, $emailmessage);




























































































$plugins->run_hooks("member_do_register_end");

error($lang->redirect_registered_passwordsent);
}
else if($mybb->settings['regtype'] == "admin")
{
$groups = $cache->read("usergroups");
$admingroups = array();
if(!empty($groups)) // Shouldn't be...
{
foreach($groups as $group)
{
if($group['cancp'] == 1)
{
$admingroups[] = (int)$group['gid'];
}
}
}

if(!empty($admingroups))
{
$sqlwhere = 'usergroup IN ('.implode(',', $admingroups).')';
foreach($admingroups as $admingroup)
{
switch($db->type)
{
case 'pgsql':
case 'sqlite':
$sqlwhere .= " OR ','||additionalgroups||',' LIKE '%,{$admingroup},%'";
break;
default:
$sqlwhere .= " OR CONCAT(',',additionalgroups,',') LIKE '%,{$admingroup},%'";
break;
}
}
$q = $db->simple_select('users', 'uid,username,email,language', $sqlwhere);
while($recipient = $db->fetch_array($q))
{
// First we check if the user's a super admin: if yes, we don't care about permissions
$is_super_admin = is_super_admin($recipient['uid']);
if(!$is_super_admin)
{
// Include admin functions
if(!file_exists(MYBB_ROOT.$mybb->config['admin_dir']."/inc/functions.php"))
{
continue;
}

require_once MYBB_ROOT.$mybb->config['admin_dir']."/inc/functions.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']);

$permissions = user_admin_permissions();
if(array_key_exists('users', $permissions['permissions']) && $adminperms['user']['users'] != 1)
{
continue; // No permissions
}
}
}

// Load language
if($recipient['language'] != $lang->language && $lang->language_exists($recipient['language']))
{
$reset_lang = true;
$lang->set_language($recipient['language']);
$lang->load("member");
}

$subject = $lang->sprintf($lang->newregistration_subject, $mybb->settings['bbname']);
$message = $lang->sprintf($lang->newregistration_message, $recipient['username'], $mybb->settings['bbname'], $user['username']);
my_mail($recipient['email'], $subject, $message);
}

// Reset language
if(isset($reset_lang))
{
$lang->set_language($mybb->settings['bblanguage']);
$lang->load("member");
}
}

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


			$plugins->run_hooks("member_do_register_end");


			$plugins->run_hooks("member_do_register_end");


			error($lang->redirect_registered_passwordsent);

			error($lang->redirect_registered_admin_activate);

		}

		}

		else if($mybb->settings['regtype'] == "admin")

		else if($mybb->settings['regtype'] == "both")

		{
$groups = $cache->read("usergroups");
$admingroups = array();

		{
$groups = $cache->read("usergroups");
$admingroups = array();

Zeile 459Zeile 557
				foreach($groups as $group)
{
if($group['cancp'] == 1)

				foreach($groups as $group)
{
if($group['cancp'] == 1)

					{

					{

						$admingroups[] = (int)$group['gid'];
}
}

						$admingroups[] = (int)$group['gid'];
}
}

Zeile 512Zeile 610
					}

// Load language

					}

// Load language

					if($recipient['language'] != $mybb->user['language'] && $lang->language_exists($recipient['language']))

					if($recipient['language'] != $lang->language && $lang->language_exists($recipient['language']))

					{
$reset_lang = true;
$lang->set_language($recipient['language']);

					{
$reset_lang = true;
$lang->set_language($recipient['language']);

Zeile 527Zeile 625
				// Reset language
if(isset($reset_lang))
{

				// Reset language
if(isset($reset_lang))
{

					$lang->set_language($mybb->user['language']);
$lang->load("member");
}
}

$lang->redirect_registered_admin_activate = $lang->sprintf($lang->redirect_registered_admin_activate, $mybb->settings['bbname'], $user_info['username']);

$plugins->run_hooks("member_do_register_end");

error($lang->redirect_registered_admin_activate);
}
else if($mybb->settings['regtype'] == "both")
{
$groups = $cache->read("usergroups");
$admingroups = array();
if(!empty($groups)) // Shouldn't be...
{
foreach($groups as $group)
{
if($group['cancp'] == 1)
{
$admingroups[] = (int)$group['gid'];
}
}
}

if(!empty($admingroups))
{
$sqlwhere = 'usergroup IN ('.implode(',', $admingroups).')';
foreach($admingroups as $admingroup)
{
switch($db->type)
{
case 'pgsql':
case 'sqlite':
$sqlwhere .= " OR ','||additionalgroups||',' LIKE '%,{$admingroup},%'";
break;
default:
$sqlwhere .= " OR CONCAT(',',additionalgroups,',') LIKE '%,{$admingroup},%'";
break;
}
}
$q = $db->simple_select('users', 'uid,username,email,language', $sqlwhere);
while($recipient = $db->fetch_array($q))
{
// First we check if the user's a super admin: if yes, we don't care about permissions
$is_super_admin = is_super_admin($recipient['uid']);
if(!$is_super_admin)
{
// Include admin functions
if(!file_exists(MYBB_ROOT.$mybb->config['admin_dir']."/inc/functions.php"))
{
continue;
}

require_once MYBB_ROOT.$mybb->config['admin_dir']."/inc/functions.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']);

$permissions = user_admin_permissions();
if(array_key_exists('users', $permissions['permissions']) && $adminperms['user']['users'] != 1)
{
continue; // No permissions
}
}
}

// Load language
if($recipient['language'] != $mybb->user['language'] && $lang->language_exists($recipient['language']))
{
$reset_lang = true;
$lang->set_language($recipient['language']);
$lang->load("member");
}

$subject = $lang->sprintf($lang->newregistration_subject, $mybb->settings['bbname']);
$message = $lang->sprintf($lang->newregistration_message, $recipient['username'], $mybb->settings['bbname'], $user['username']);
my_mail($recipient['email'], $subject, $message);
}

// Reset language
if(isset($reset_lang))
{
$lang->set_language($mybb->user['language']);

					$lang->set_language($mybb->settings['bblanguage']);

























































































					$lang->load("member");
}
}

					$lang->load("member");
}
}

Zeile 646Zeile 656
			}
my_mail($user_info['email'], $emailsubject, $emailmessage);


			}
my_mail($user_info['email'], $emailsubject, $emailmessage);


			$lang->redirect_registered_activation = $lang->sprintf($lang->redirect_registered_activation, $mybb->settings['bbname'], $user_info['username']);

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


$plugins->run_hooks("member_do_register_end");



$plugins->run_hooks("member_do_register_end");


Zeile 654Zeile 664
		}
else
{

		}
else
{

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

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


$plugins->run_hooks("member_do_register_end");



$plugins->run_hooks("member_do_register_end");


Zeile 664Zeile 674
}

if($mybb->input['action'] == "coppa_form")

}

if($mybb->input['action'] == "coppa_form")

{

{

	if(!$mybb->settings['faxno'])
{
$mybb->settings['faxno'] = "&nbsp;";

	if(!$mybb->settings['faxno'])
{
$mybb->settings['faxno'] = "&nbsp;";

Zeile 783Zeile 793
			$timezoneoffset = $mybb->settings['timezoneoffset'];
}
$tzselect = build_timezone_select("timezoneoffset", $timezoneoffset, true);

			$timezoneoffset = $mybb->settings['timezoneoffset'];
}
$tzselect = build_timezone_select("timezoneoffset", $timezoneoffset, true);





		$stylelist = build_theme_select("style");

if($mybb->settings['usertppoptions'])

		$stylelist = build_theme_select("style");

if($mybb->settings['usertppoptions'])

		{

		{

			$tppoptions = '';
$explodedtpp = explode(",", $mybb->settings['usertppoptions']);
if(is_array($explodedtpp))

			$tppoptions = '';
$explodedtpp = explode(",", $mybb->settings['usertppoptions']);
if(is_array($explodedtpp))

Zeile 797Zeile 807
					$val = trim($val);
$tpp_option = $lang->sprintf($lang->tpp_option, $val);
eval("\$tppoptions .= \"".$templates->get("usercp_options_tppselect_option")."\";");

					$val = trim($val);
$tpp_option = $lang->sprintf($lang->tpp_option, $val);
eval("\$tppoptions .= \"".$templates->get("usercp_options_tppselect_option")."\";");

				}

				}

			}
eval("\$tppselect = \"".$templates->get("usercp_options_tppselect")."\";");
}

			}
eval("\$tppselect = \"".$templates->get("usercp_options_tppselect")."\";");
}

Zeile 806Zeile 816
			$pppoptions = '';
$explodedppp = explode(",", $mybb->settings['userpppoptions']);
if(is_array($explodedppp))

			$pppoptions = '';
$explodedppp = explode(",", $mybb->settings['userpppoptions']);
if(is_array($explodedppp))

			{

			{

				foreach($explodedppp as $val)
{
$val = trim($val);

				foreach($explodedppp as $val)
{
$val = trim($val);

Zeile 821Zeile 831
			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);
$referrername = $ref['username'];
}


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

			elseif(isset($referrer))
{
$query = $db->simple_select("users", "username", "uid='".(int)$referrer['uid']."'");
$ref = $db->fetch_array($query);

			elseif(isset($referrer))
{
$query = $db->simple_select("users", "username", "uid='".(int)$referrer['uid']."'");
$ref = $db->fetch_array($query);

 
				$ref['username'] = htmlspecialchars_uni($ref['username']);

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

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

Zeile 881Zeile 893
					continue;
}


					continue;
}


				$code = $select = $val = $options = $expoptions = $useropts = $seloptions = '';


				$code = $select = $val = $options = $expoptions = $useropts = '';
$seloptions = array();

				$profilefield['type'] = htmlspecialchars_uni($profilefield['type']);
$thing = explode("\n", $profilefield['type'], "2");
$type = trim($thing[0]);
$options = $thing[1];
$select = '';
$field = "fid{$profilefield['fid']}";

				$profilefield['type'] = htmlspecialchars_uni($profilefield['type']);
$thing = explode("\n", $profilefield['type'], "2");
$type = trim($thing[0]);
$options = $thing[1];
$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]))
{
$userfield = $mybb->input['profile_fields'][$field];

				if($errors && isset($mybb->input['profile_fields'][$field]))
{
$userfield = $mybb->input['profile_fields'][$field];

Zeile 903Zeile 918
						$useropts = $userfield;
}
else

						$useropts = $userfield;
}
else

					{

					{

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

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

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





							$sel = "";
if(isset($seloptions[$val]) && $val == $seloptions[$val])
{

							$sel = "";
if(isset($seloptions[$val]) && $val == $seloptions[$val])
{

Zeile 938Zeile 953
					}
}
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"';
}

eval("\$select .= \"".$templates->get("usercp_profile_profilefields_select_option")."\";");

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

eval("\$select .= \"".$templates->get("usercp_profile_profilefields_select_option")."\";");

						}

						}

						if(!$profilefield['length'])
{
$profilefield['length'] = 1;
}

						if(!$profilefield['length'])
{
$profilefield['length'] = 1;
}





						eval("\$code = \"".$templates->get("usercp_profile_profilefields_select")."\";");
}
}
elseif($type == "radio")

						eval("\$code = \"".$templates->get("usercp_profile_profilefields_select")."\";");
}
}
elseif($type == "radio")

				{

				{

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

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

Zeile 982Zeile 997
				elseif($type == "checkbox")
{
if($errors)

				elseif($type == "checkbox")
{
if($errors)

					{

					{

						$useropts = $userfield;
}
else

						$useropts = $userfield;
}
else

Zeile 1057Zeile 1072
								required: '{$lang->js_validator_not_empty}'
}
});\n";

								required: '{$lang->js_validator_not_empty}'
}
});\n";

					}

					}


eval("\$requiredfields .= \"".$templates->get("member_register_customfield")."\";");
}


eval("\$requiredfields .= \"".$templates->get("member_register_customfield")."\";");
}

Zeile 1082Zeile 1097
		{
$allownoticescheck = "checked=\"checked\"";
$hideemailcheck = '';

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

			$emailnotifycheck = '';

 
			$receivepmscheck = "checked=\"checked\"";
$pmnoticecheck = " checked=\"checked\"";
$pmnotifycheck = '';

			$receivepmscheck = "checked=\"checked\"";
$pmnoticecheck = " checked=\"checked\"";
$pmnotifycheck = '';

Zeile 1170Zeile 1184
							question: function () {
return $('#question_id').val();
},

							question: function () {
return $('#question_id').val();
},

							my_post_key: my_post_key
},

							my_post_key: my_post_key
},

					},
messages: {
remote: '{$lang->js_validator_no_security_question}'

					},
messages: {
remote: '{$lang->js_validator_no_security_question}'

Zeile 1285Zeile 1299
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;


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 1:
error($lang->error_invalidpworusername1);
break;

Zeile 1315Zeile 1329
		$uid = $user['uid'];
}
else

		$uid = $user['uid'];
}
else

	{

	{

		$user = get_user($mybb->get_input('uid', MyBB::INPUT_INT));
}
if(isset($mybb->input['code']) && $user)

		$user = get_user($mybb->get_input('uid', MyBB::INPUT_INT));
}
if(isset($mybb->input['code']) && $user)

Zeile 1334Zeile 1348
		if($activation['type'] == "b" && $activation['validated'] == 1)
{
error($lang->error_alreadyvalidated);

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

		}

$db->delete_query("awaitingactivation", "uid='".$user['uid']."' AND (type='r' OR type='e')");

if($user['usergroup'] == 5 && $activation['type'] != "e" && $activation['type'] != "b")

		}

$db->delete_query("awaitingactivation", "uid='".$user['uid']."' AND (type='r' OR type='e')");

if($user['usergroup'] == 5 && $activation['type'] != "e" && $activation['type'] != "b")

		{
$db->update_query("users", array("usergroup" => 2), "uid='".$user['uid']."'");

$cache->update_awaitingactivation();

		{
$db->update_query("users", array("usergroup" => 2), "uid='".$user['uid']."'");

$cache->update_awaitingactivation();

		}

		}

		if($activation['type'] == "e")
{
$newemail = array(
"email" => $db->escape_string($activation['misc']),

		if($activation['type'] == "e")
{
$newemail = array(
"email" => $db->escape_string($activation['misc']),

			);

			);

			$db->update_query("users", $newemail, "uid='".$user['uid']."'");
$plugins->run_hooks("member_activate_emailupdated");


			$db->update_query("users", $newemail, "uid='".$user['uid']."'");
$plugins->run_hooks("member_activate_emailupdated");


Zeile 1375Zeile 1389
	{
$plugins->run_hooks("member_activate_form");


	{
$plugins->run_hooks("member_activate_form");


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


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


		if(!isset($user['username']))
{
$user['username'] = '';
}

		if(!isset($user['username']))
{
$user['username'] = '';
}

 
		$user['username'] = htmlspecialchars_uni($user['username']);


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


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

	}

	}

}

if($mybb->input['action'] == "resendactivation")

}

if($mybb->input['action'] == "resendactivation")

Zeile 1392Zeile 1407
	$plugins->run_hooks("member_resendactivation");

if($mybb->settings['regtype'] == "admin")

	$plugins->run_hooks("member_resendactivation");

if($mybb->settings['regtype'] == "admin")

	{
error($lang->error_activated_by_admin);

	{
error($lang->error_activated_by_admin);

	}
if($mybb->user['uid'] && $mybb->user['usergroup'] != 5)
{

	}
if($mybb->user['uid'] && $mybb->user['usergroup'] != 5)
{

Zeile 1402Zeile 1417

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


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





	if($activation['validated'] == 1)
{
error($lang->error_activated_by_admin);
}

	if($activation['validated'] == 1)
{
error($lang->error_activated_by_admin);
}





	$plugins->run_hooks("member_resendactivation_end");

	$plugins->run_hooks("member_resendactivation_end");





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

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

}


}


if($mybb->input['action'] == "do_resendactivation" && $mybb->request_method == "post")
{
$plugins->run_hooks("member_do_resendactivation_start");

if($mybb->input['action'] == "do_resendactivation" && $mybb->request_method == "post")
{
$plugins->run_hooks("member_do_resendactivation_start");

Zeile 1523Zeile 1538
			$email = $user['email'];
$activationcode = $user['activationcode'];
$emailsubject = $lang->sprintf($lang->emailsubject_lostpw, $mybb->settings['bbname']);

			$email = $user['email'];
$activationcode = $user['activationcode'];
$emailsubject = $lang->sprintf($lang->emailsubject_lostpw, $mybb->settings['bbname']);

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

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

					$emailmessage = $lang->sprintf($lang->email_lostpw, $username, $mybb->settings['bbname'], $mybb->settings['bburl'], $uid, $activationcode);
break;
case 1:

					$emailmessage = $lang->sprintf($lang->email_lostpw, $username, $mybb->settings['bbname'], $mybb->settings['bburl'], $uid, $activationcode);
break;
case 1:

Zeile 1581Zeile 1596
	{
$user = get_user($mybb->get_input('uid', MyBB::INPUT_INT));
}

	{
$user = get_user($mybb->get_input('uid', MyBB::INPUT_INT));
}

 


	if(isset($mybb->input['code']) && $user)
{
$query = $db->simple_select("awaitingactivation", "code", "uid='".$user['uid']."' AND type='p'");

	if(isset($mybb->input['code']) && $user)
{
$query = $db->simple_select("awaitingactivation", "code", "uid='".$user['uid']."' AND type='p'");

Zeile 1592Zeile 1608
		}
$db->delete_query("awaitingactivation", "uid='".$user['uid']."' AND type='p'");
$username = $user['username'];

		}
$db->delete_query("awaitingactivation", "uid='".$user['uid']."' AND type='p'");
$username = $user['username'];





		// Generate a new password, then update it
$password_length = (int)$mybb->settings['minpasswordlength'];

		// Generate a new password, then update it
$password_length = (int)$mybb->settings['minpasswordlength'];





		if($password_length < 8)
{

		if($password_length < 8)
{

			$password_length = 8;




















			$password_length = min(8, (int)$mybb->settings['maxpasswordlength']);
}

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

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

$userhandler->set_data(array(
'uid' => $user['uid'],
'username' => $user['username'],
'email' => $user['email'],
'password' => $password
));

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

		}


		}


		$password = random_str($password_length);
$logindetails = update_password($user['uid'], md5($password), $user['salt']);






		$userhandler->update_user();

$logindetails = array(
'salt' => $userhandler->data['salt'],
'password' => $userhandler->data['saltedpw'],
'loginkey' => $userhandler->data['loginkey'],
);


$email = $user['email'];



$email = $user['email'];


Zeile 1642Zeile 1682
		{
$user['username'] = '';
}

		{
$user['username'] = '';
}

 
		$user['username'] = htmlspecialchars_uni($user['username']);


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


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

Zeile 1719Zeile 1760

$mybb->input['url'] = $mybb->get_input('url');



$mybb->input['url'] = $mybb->get_input('url');


		if(!empty($mybb->input['url']) && my_strpos(basename($mybb->input['url']), 'member.php') === false)

		if(!empty($mybb->input['url']) && my_strpos(basename($mybb->input['url']), 'member.php') === false && !preg_match('#^javascript:#i', $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)
{

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

Zeile 1729Zeile 1770
			$mybb->input['url'] = str_replace('&amp;', '&', $mybb->input['url']);

// Redirect to the URL if it is not member.php

			$mybb->input['url'] = str_replace('&amp;', '&', $mybb->input['url']);

// Redirect to the URL if it is not member.php

			redirect(htmlentities($mybb->input['url']), $lang->redirect_loggedin);

			redirect($mybb->input['url'], $lang->redirect_loggedin);

		}
else
{

		}
else
{

Zeile 1748Zeile 1789
	$member_loggedin_notice = "";
if($mybb->user['uid'] != 0)
{

	$member_loggedin_notice = "";
if($mybb->user['uid'] != 0)
{

 
		$mybb->user['username'] = htmlspecialchars_uni($mybb->user['username']);

		$lang->already_logged_in = $lang->sprintf($lang->already_logged_in, build_profile_link($mybb->user['username'], $mybb->user['uid']));
eval("\$member_loggedin_notice = \"".$templates->get("member_loggedin_notice")."\";");
}

		$lang->already_logged_in = $lang->sprintf($lang->already_logged_in, build_profile_link($mybb->user['username'], $mybb->user['uid']));
eval("\$member_loggedin_notice = \"".$templates->get("member_loggedin_notice")."\";");
}

Zeile 1788Zeile 1830
		{
$login_captcha->build_recaptcha();
}

		{
$login_captcha->build_recaptcha();
}

		elseif($login_captcha->type == 3)
{
$login_captcha->build_ayah();
}








		if($login_captcha->html)
{
$captcha = $login_captcha->html;
}

		if($login_captcha->html)
{
$captcha = $login_captcha->html;
}

	}

	}


$username = "";
$password = "";
if(isset($mybb->input['username']) && $mybb->request_method == "post")
{
$username = htmlspecialchars_uni($mybb->get_input('username'));


$username = "";
$password = "";
if(isset($mybb->input['username']) && $mybb->request_method == "post")
{
$username = htmlspecialchars_uni($mybb->get_input('username'));

	}

	}


if(isset($mybb->input['password']) && $mybb->request_method == "post")
{
$password = htmlspecialchars_uni($mybb->get_input('password'));


if(isset($mybb->input['password']) && $mybb->request_method == "post")
{
$password = htmlspecialchars_uni($mybb->get_input('password'));

	}


	}


	if(!empty($errors))
{
$mybb->input['action'] = "login";

	if(!empty($errors))
{
$mybb->input['action'] = "login";

Zeile 1847Zeile 1885
	}

// Check session ID if we have one

	}

// Check session ID if we have one

	if(isset($mybb->input['sid']) && $mybb->get_input('sid') != $session->sid)

	if(isset($mybb->input['sid']) && $mybb->get_input('sid') !== $session->sid)

	{
error($lang->error_notloggedout);
}
// Otherwise, check logoutkey

	{
error($lang->error_notloggedout);
}
// Otherwise, check logoutkey

	else if(!isset($mybb->input['sid']) && $mybb->get_input('logoutkey') != $mybb->user['logoutkey'])

	else if(!isset($mybb->input['sid']) && $mybb->get_input('logoutkey') !== $mybb->user['logoutkey'])

	{
error($lang->error_notloggedout);
}

	{
error($lang->error_notloggedout);
}

Zeile 1866Zeile 1904
		// Run this after the shutdown query from session system
$db->shutdown_query("UPDATE ".TABLE_PREFIX."users SET lastvisit='{$time}', lastactive='{$time}' WHERE uid='{$mybb->user['uid']}'");
$db->delete_query("sessions", "sid = '{$session->sid}'");

		// Run this after the shutdown query from session system
$db->shutdown_query("UPDATE ".TABLE_PREFIX."users SET lastvisit='{$time}', lastactive='{$time}' WHERE uid='{$mybb->user['uid']}'");
$db->delete_query("sessions", "sid = '{$session->sid}'");

	}

$plugins->run_hooks("member_logout_end");

	}

$plugins->run_hooks("member_logout_end");


redirect("index.php", $lang->redirect_loggedout);
}


redirect("index.php", $lang->redirect_loggedout);
}

Zeile 1877Zeile 1915
{
$uid = $mybb->get_input('uid', MyBB::INPUT_INT);
$user = get_user($uid);

{
$uid = $mybb->get_input('uid', MyBB::INPUT_INT);
$user = get_user($uid);





	// Make sure we are looking at a real user here.
if(!$user)

	// Make sure we are looking at a real user here.
if(!$user)

	{

	{

		error($lang->error_nomember);
}

if($mybb->user['uid'] == 0 || $mybb->usergroup['canmodcp'] != 1)

		error($lang->error_nomember);
}

if($mybb->user['uid'] == 0 || $mybb->usergroup['canmodcp'] != 1)

	{

	{

		error_no_permission();
}


		error_no_permission();
}


 
	$user['username'] = htmlspecialchars_uni($user['username']);

	$lang->view_notes_for = $lang->sprintf($lang->view_notes_for, $user['username']);

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

	$lang->view_notes_for = $lang->sprintf($lang->view_notes_for, $user['username']);

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

Zeile 1903Zeile 1942
if($mybb->input['action'] == "profile")
{
$plugins->run_hooks("member_profile_start");

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)


$uid = $mybb->get_input('uid', MyBB::INPUT_INT);
if($uid)

	{

	{

		$memprofile = get_user($uid);
}
elseif($mybb->user['uid'])

		$memprofile = get_user($uid);
}
elseif($mybb->user['uid'])

Zeile 1921Zeile 1960
	else
{
$memprofile = false;

	else
{
$memprofile = false;

	}

	}


if(!$memprofile)


if(!$memprofile)

	{

	{

		error($lang->error_nomember);

		error($lang->error_nomember);

	}

	}


$uid = $memprofile['uid'];



$uid = $memprofile['uid'];


 
	$me_username = $memprofile['username'];
$memprofile['username'] = htmlspecialchars_uni($memprofile['username']);

	$lang->profile = $lang->sprintf($lang->profile, $memprofile['username']);

// Get member's permissions

	$lang->profile = $lang->sprintf($lang->profile, $memprofile['username']);

// Get member's permissions

Zeile 1937Zeile 1978

$lang->nav_profile = $lang->sprintf($lang->nav_profile, $memprofile['username']);
add_breadcrumb($lang->nav_profile);


$lang->nav_profile = $lang->sprintf($lang->nav_profile, $memprofile['username']);
add_breadcrumb($lang->nav_profile);





	$lang->users_forum_info = $lang->sprintf($lang->users_forum_info, $memprofile['username']);
$lang->users_contact_details = $lang->sprintf($lang->users_contact_details, $memprofile['username']);

	$lang->users_forum_info = $lang->sprintf($lang->users_forum_info, $memprofile['username']);
$lang->users_contact_details = $lang->sprintf($lang->users_contact_details, $memprofile['username']);


if($mybb->settings['enablepms'] != 0 && (($memprofile['receivepms'] != 0 && $memperms['canusepms'] != 0 && my_strpos(",".$memprofile['ignorelist'].",", ",".$mybb->user['uid'].",") === false) || $mybb->usergroup['canoverridepm'] == 1))
{
$lang->send_pm = $lang->sprintf($lang->send_pm, $memprofile['username']);
}
else
{
$lang->send_pm = '';
}

	$lang->send_pm = $lang->sprintf($lang->send_pm, $memprofile['username']);









	$lang->away_note = $lang->sprintf($lang->away_note, $memprofile['username']);
$lang->users_additional_info = $lang->sprintf($lang->users_additional_info, $memprofile['username']);
$lang->users_signature = $lang->sprintf($lang->users_signature, $memprofile['username']);

	$lang->away_note = $lang->sprintf($lang->away_note, $memprofile['username']);
$lang->users_additional_info = $lang->sprintf($lang->users_additional_info, $memprofile['username']);
$lang->users_signature = $lang->sprintf($lang->users_signature, $memprofile['username']);

Zeile 1959Zeile 1992

$website = $sendemail = $sendpm = $contact_details = '';



$website = $sendemail = $sendpm = $contact_details = '';


	if($memprofile['website'] && !is_member($mybb->settings['hidewebsite']) && $memperms['canchangewebsite'] == 1)

	if(my_validate_url($memprofile['website']) && !is_member($mybb->settings['hidewebsite']) && $memperms['canchangewebsite'] == 1)

	{
$memprofile['website'] = htmlspecialchars_uni($memprofile['website']);
$bgcolor = alt_trow();
eval("\$website = \"".$templates->get("member_profile_website")."\";");

	{
$memprofile['website'] = htmlspecialchars_uni($memprofile['website']);
$bgcolor = alt_trow();
eval("\$website = \"".$templates->get("member_profile_website")."\";");

	}

	}

	
if($memprofile['hideemail'] != 1 && (my_strpos(",".$memprofile['ignorelist'].",", ",".$mybb->user['uid'].",") === false || $mybb->usergroup['cansendemailoverride'] != 0))
{

	
if($memprofile['hideemail'] != 1 && (my_strpos(",".$memprofile['ignorelist'].",", ",".$mybb->user['uid'].",") === false || $mybb->usergroup['cansendemailoverride'] != 0))
{

Zeile 1972Zeile 2005
		eval("\$sendemail = \"".$templates->get("member_profile_email")."\";");
}


		eval("\$sendemail = \"".$templates->get("member_profile_email")."\";");
}


	if($mybb->settings['enablepms'] == 1 && $memprofile['receivepms'] != 0 && $mybb->usergroup['cansendpms'] == 1 && my_strpos(",".$memprofile['ignorelist'].",", ",".$mybb->user['uid'].",") === false)

	if($mybb->settings['enablepms'] != 0 && (($memprofile['receivepms'] != 0 && $memperms['canusepms'] != 0 && my_strpos(",".$memprofile['ignorelist'].",", ",".$mybb->user['uid'].",") === false) || $mybb->usergroup['canoverridepm'] == 1))

	{
$bgcolor = alt_trow();
eval('$sendpm = "'.$templates->get("member_profile_pm").'";');

	{
$bgcolor = alt_trow();
eval('$sendpm = "'.$templates->get("member_profile_pm").'";');

Zeile 2017Zeile 2050
			"allow_mycode" => $mybb->settings['sigmycode'],
"allow_smilies" => $mybb->settings['sigsmilies'],
"allow_imgcode" => $mybb->settings['sigimgcode'],

			"allow_mycode" => $mybb->settings['sigmycode'],
"allow_smilies" => $mybb->settings['sigsmilies'],
"allow_imgcode" => $mybb->settings['sigimgcode'],

			"me_username" => $memprofile['username'],

			"me_username" => $me_username,

			"filter_badwords" => 1
);


			"filter_badwords" => 1
);


Zeile 2066Zeile 2099
	if($post_percent > 100)
{
$post_percent = 100;

	if($post_percent > 100)
{
$post_percent = 100;

	}


	}


	// Format thread count, per day count and percent of total
$tpd = $memprofile['threadnum'] / $daysreg;
$tpd = round($tpd, 2);
if($tpd > $memprofile['threadnum'])
{
$tpd = $memprofile['threadnum'];

	// Format thread count, per day count and percent of total
$tpd = $memprofile['threadnum'] / $daysreg;
$tpd = round($tpd, 2);
if($tpd > $memprofile['threadnum'])
{
$tpd = $memprofile['threadnum'];

	}

	}


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


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

Zeile 2090Zeile 2123
	if($thread_percent > 100)
{
$thread_percent = 100;

	if($thread_percent > 100)
{
$thread_percent = 100;

 
	}

$findposts = $findthreads = '';
if($mybb->usergroup['cansearch'] == 1)
{
eval("\$findposts = \"".$templates->get("member_profile_findposts")."\";");
eval("\$findthreads = \"".$templates->get("member_profile_findthreads")."\";");

	}

$awaybit = '';

	}

$awaybit = '';

Zeile 2101Zeile 2141
		{
$reason = $parser->parse_badwords($memprofile['awayreason']);
$awayreason = htmlspecialchars_uni($reason);

		{
$reason = $parser->parse_badwords($memprofile['awayreason']);
$awayreason = htmlspecialchars_uni($reason);

		}
else
{

		}
else
{

			$awayreason = $lang->away_no_reason;
}
if($memprofile['returndate'] == '')

			$awayreason = $lang->away_no_reason;
}
if($memprofile['returndate'] == '')

Zeile 2113Zeile 2153
		else
{
$returnhome = explode("-", $memprofile['returndate']);

		else
{
$returnhome = explode("-", $memprofile['returndate']);





			// PHP native date functions use integers so timestamps for years after 2038 will not work
// Thus we use adodb_mktime
if($returnhome[2] >= 2038)

			// PHP native date functions use integers so timestamps for years after 2038 will not work
// Thus we use adodb_mktime
if($returnhome[2] >= 2038)

Zeile 2123Zeile 2163
				$returndate = my_date($mybb->settings['dateformat'], $returnmkdate, "", 1, true);
}
else

				$returndate = my_date($mybb->settings['dateformat'], $returnmkdate, "", 1, true);
}
else

			{

			{

				$returnmkdate = mktime(0, 0, 0, $returnhome[1], $returnhome[0], $returnhome[2]);
$returndate = my_date($mybb->settings['dateformat'], $returnmkdate);
}

				$returnmkdate = mktime(0, 0, 0, $returnhome[1], $returnhome[0], $returnhome[2]);
$returndate = my_date($mybb->settings['dateformat'], $returnmkdate);
}

Zeile 2142Zeile 2182
		if($memprofile['away'] == 1)
{
eval("\$awaybit = \"".$templates->get("member_profile_away")."\";");

		if($memprofile['away'] == 1)
{
eval("\$awaybit = \"".$templates->get("member_profile_away")."\";");

		}

		}

	}

	}

	




$memprofile['timezone'] = (float)$memprofile['timezone'];


	if($memprofile['dst'] == 1)

	if($memprofile['dst'] == 1)

	{

	{

		$memprofile['timezone']++;
if(my_substr($memprofile['timezone'], 0, 1) != "-")
{

		$memprofile['timezone']++;
if(my_substr($memprofile['timezone'], 0, 1) != "-")
{

Zeile 2165Zeile 2207
		$memlastvisitdate = my_date($mybb->settings['dateformat'], $memprofile['lastactive']);
$memlastvisitsep = $lang->comma;
$memlastvisittime = my_date($mybb->settings['timeformat'], $memprofile['lastactive']);

		$memlastvisitdate = my_date($mybb->settings['dateformat'], $memprofile['lastactive']);
$memlastvisitsep = $lang->comma;
$memlastvisittime = my_date($mybb->settings['timeformat'], $memprofile['lastactive']);

	}

	}

	else
{
$memlastvisitdate = $lang->lastvisit_never;

	else
{
$memlastvisitdate = $lang->lastvisit_never;

Zeile 2180Zeile 2222
		if($memprofile['birthdayprivacy'] != 'none')
{
if($membday[0] && $membday[1] && $membday[2])

		if($memprofile['birthdayprivacy'] != 'none')
{
if($membday[0] && $membday[1] && $membday[2])

			{

			{

				$lang->membdayage = $lang->sprintf($lang->membdayage, get_age($memprofile['birthday']));


				$lang->membdayage = $lang->sprintf($lang->membdayage, get_age($memprofile['birthday']));


				if($membday[2] >= 1970)
{
$w_day = date("l", mktime(0, 0, 0, $membday[1], $membday[0], $membday[2]));
$membday = format_bdays($mybb->settings['dateformat'], $membday[1], $membday[0], $membday[2], $w_day);
}
else
{
$bdayformat = fix_mktime($mybb->settings['dateformat'], $membday[2]);
$membday = mktime(0, 0, 0, $membday[1], $membday[0], $membday[2]);
$membday = date($bdayformat, $membday);
}

				$bdayformat = fix_mktime($mybb->settings['dateformat'], $membday[2]);
$membday = mktime(0, 0, 0, $membday[1], $membday[0], $membday[2]);
$membday = date($bdayformat, $membday);









				$membdayage = $lang->membdayage;

				$membdayage = $lang->membdayage;

			}

			}

			elseif($membday[2])
{
$membday = mktime(0, 0, 0, 1, 1, $membday[2]);
$membday = date("Y", $membday);

			elseif($membday[2])
{
$membday = mktime(0, 0, 0, 1, 1, $membday[2]);
$membday = date("Y", $membday);

				$membdayage = '';

				$membdayage = '';

			}
else
{

			}
else
{

Zeile 2229Zeile 2264
	if(!$memprofile['displaygroup'])
{
$memprofile['displaygroup'] = $memprofile['usergroup'];

	if(!$memprofile['displaygroup'])
{
$memprofile['displaygroup'] = $memprofile['usergroup'];

	}

	}


// Grab the following fields from the user's displaygroup
$displaygroupfields = array(


// Grab the following fields from the user's displaygroup
$displaygroupfields = array(

Zeile 2268Zeile 2303
				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;

				}
}
}

				}
}
}

Zeile 2389Zeile 2424
		{
// We have had at least some active time, hide it instead
$memlastvisitdate = $lang->lastvisit_hidden;

		{
// We have had at least some active time, hide it instead
$memlastvisitdate = $lang->lastvisit_hidden;

		}


		}


		$timeonline = $lang->timeonline_hidden;
}


		$timeonline = $lang->timeonline_hidden;
}


Zeile 2400Zeile 2435
	// Build Referral
$referrals = '';
if($mybb->settings['usereferrals'] == 1)

	// Build Referral
$referrals = '';
if($mybb->settings['usereferrals'] == 1)

	{

	{

		$bg_color = alt_trow();

		$bg_color = alt_trow();





		eval("\$referrals = \"".$templates->get("member_profile_referrals")."\";");

		eval("\$referrals = \"".$templates->get("member_profile_referrals")."\";");

	}


	}


	// Fetch the reputation for this user
$reputation = '';
if($memperms['usereputationsystem'] == 1 && $displaygroup['usereputationsystem'] == 1 && $mybb->settings['enablereputation'] == 1)

	// Fetch the reputation for this user
$reputation = '';
if($memperms['usereputationsystem'] == 1 && $displaygroup['usereputationsystem'] == 1 && $mybb->settings['enablereputation'] == 1)

	{
$bg_color = alt_trow();

	{
$bg_color = alt_trow();

		$reputation = get_reputation($memprofile['reputation']);

// If this user has permission to give reputations show the vote link

		$reputation = get_reputation($memprofile['reputation']);

// If this user has permission to give reputations show the vote link

Zeile 2429Zeile 2464
		$bg_color = alt_trow();

if($mybb->settings['maxwarningpoints'] < 1)

		$bg_color = alt_trow();

if($mybb->settings['maxwarningpoints'] < 1)

		{

		{

			$mybb->settings['maxwarningpoints'] = 10;
}


			$mybb->settings['maxwarningpoints'] = 10;
}


Zeile 2465Zeile 2500
	{
foreach($pfcache as $customfield)
{

	{
foreach($pfcache as $customfield)
{

			if($mybb->usergroup['cancp'] != 1 && $mybb->usergroup['issupermod'] != 1 && $mybb->usergroup['canmodcp'] != 1 && !is_member($customfield['viewableby']))

			if($mybb->usergroup['cancp'] != 1 && $mybb->usergroup['issupermod'] != 1 && $mybb->usergroup['canmodcp'] != 1 && !is_member($customfield['viewableby']) || !$customfield['profile'])

			{
continue;
}

			{
continue;
}

Zeile 2509Zeile 2544
					if($customfield['type'] == "textarea")
{
$parser_options['me_username'] = $memprofile['username'];

					if($customfield['type'] == "textarea")
{
$parser_options['me_username'] = $memprofile['username'];

					}

					}

					else
{
$parser_options['nl2br'] = 0;

					else
{
$parser_options['nl2br'] = 0;

Zeile 2577Zeile 2612

$timeremaining = nice_time($remaining, array('short' => 1, 'seconds' => false))."";



$timeremaining = nice_time($remaining, array('short' => 1, 'seconds' => false))."";


 
			$banned_class = '';

			if($remaining < 3600)
{

			if($remaining < 3600)
{

				$timeremaining = "<span style=\"color: red;\">({$timeremaining} {$lang->ban_remaining})</span>";

				$banned_class = "high_banned";

			}
else if($remaining < 86400)
{

			}
else if($remaining < 86400)
{

				$timeremaining = "<span style=\"color: maroon;\">({$timeremaining} {$lang->ban_remaining})</span>";

				$banned_class = "moderate_banned";

			}
else if($remaining < 604800)
{

			}
else if($remaining < 604800)
{

				$timeremaining = "<span style=\"color: green;\">({$timeremaining} {$lang->ban_remaining})</span>";

				$banned_class = "low_banned";

			}
else
{

			}
else
{

				$timeremaining = "({$timeremaining} {$lang->ban_remaining})";

				$banned_class = "normal_banned";

			}

			}

 

eval('$timeremaining = "'.$templates->get('member_profile_banned_remaining').'";');

		}


		}


		$memban['adminuser'] = build_profile_link($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').'";');

Zeile 2952Zeile 2990
	$query = $db->simple_select("users", "uid, username, email, hideemail, ignorelist", "uid='".$mybb->get_input('uid', MyBB::INPUT_INT)."'");
$to_user = $db->fetch_array($query);


	$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['username'] = htmlspecialchars_uni($to_user['username']);

	$lang->email_user = $lang->sprintf($lang->email_user, $to_user['username']);

if(!$to_user['uid'])

	$lang->email_user = $lang->sprintf($lang->email_user, $to_user['username']);

if(!$to_user['uid'])