Vergleich admin/modules/user/users.php - 1.6.10 - 1.6.13

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 166Zeile 166
		}

$mybb->input['avatar'] = str_replace(array("./", ".."), "", $mybb->input['avatar']);

		}

$mybb->input['avatar'] = str_replace(array("./", ".."), "", $mybb->input['avatar']);

		



		if(file_exists("../".$mybb->settings['avatardir']."/".$mybb->input['avatar']))
{
$dimensions = @getimagesize("../".$mybb->settings['avatardir']."/".$mybb->input['avatar']);

		if(file_exists("../".$mybb->settings['avatardir']."/".$mybb->input['avatar']))
{
$dimensions = @getimagesize("../".$mybb->settings['avatardir']."/".$mybb->input['avatar']);

Zeile 177Zeile 177
			);

$db->update_query("users", $updated_avatar, "uid='".$user['uid']."'");

			);

$db->update_query("users", $updated_avatar, "uid='".$user['uid']."'");

			
$plugins->run_hooks("admin_user_users_avatar_gallery_commit");


$plugins->run_hooks("admin_user_users_avatar_gallery_commit");


// Log admin action
log_admin_action($user['uid'], $user['username']);


// Log admin action
log_admin_action($user['uid'], $user['username']);

Zeile 206Zeile 206
	{
$gallery = str_replace(array("..", "\x0"), "", $mybb->input['gallery']);
}

	{
$gallery = str_replace(array("..", "\x0"), "", $mybb->input['gallery']);
}

	



	$breadcrumb = "<a href=\"index.php?module=user-users&amp;action=avatar_gallery&amp;uid={$user['uid']}\">Default Gallery</a>";

$mybb->settings['avatardir'] = "../".$mybb->settings['avatardir'];

	$breadcrumb = "<a href=\"index.php?module=user-users&amp;action=avatar_gallery&amp;uid={$user['uid']}\">Default Gallery</a>";

$mybb->settings['avatardir'] = "../".$mybb->settings['avatardir'];

Zeile 215Zeile 215
	{
$mybb->settings['avatardir'] = "../images/avatars/";
}

	{
$mybb->settings['avatardir'] = "../images/avatars/";
}

	



	// Within a gallery
if(!empty($gallery))
{

	// Within a gallery
if(!empty($gallery))
{

Zeile 256Zeile 256
	// Get a listing of avatars/directories within this gallery
$sub_galleries = $avatars = array();
$files = @scandir($real_path);

	// Get a listing of avatars/directories within this gallery
$sub_galleries = $avatars = array();
$files = @scandir($real_path);

	



	if(is_array($files))
{
foreach($files as $file)

	if(is_array($files))
{
foreach($files as $file)

Zeile 265Zeile 265
			{
continue;
}

			{
continue;
}

			



			// Build friendly name
$friendly_name = str_replace(array("_", "%20"), " ", $file);
$friendly_name = ucwords($friendly_name);

			// Build friendly name
$friendly_name = str_replace(array("_", "%20"), " ", $file);
$friendly_name = ucwords($friendly_name);

Zeile 294Zeile 294
			else if(preg_match("#\.(jpg|jpeg|gif|bmp|png)$#i", $file))
{
$friendly_name = preg_replace("#\.(jpg|jpeg|gif|bmp|png)$#i", "", $friendly_name);

			else if(preg_match("#\.(jpg|jpeg|gif|bmp|png)$#i", $file))
{
$friendly_name = preg_replace("#\.(jpg|jpeg|gif|bmp|png)$#i", "", $friendly_name);

	



				// Fetch dimensions
$dimensions = @getimagesize($real_path."/".$file);

				// Fetch dimensions
$dimensions = @getimagesize($real_path."/".$file);

	



				$avatars[] = array(
"path" => $path.$file,
"friendly_name" => $friendly_name,

				$avatars[] = array(
"path" => $path.$file,
"friendly_name" => $friendly_name,

Zeile 395Zeile 395
	}

$db->update_query("users", $updated_user, "uid='{$user['uid']}'");

	}

$db->update_query("users", $updated_user, "uid='{$user['uid']}'");

	



	$plugins->run_hooks("admin_user_users_coppa_activate_commit");

	$plugins->run_hooks("admin_user_users_coppa_activate_commit");





	// Log admin action
log_admin_action($user['uid'], $user['username']);


	// Log admin action
log_admin_action($user['uid'], $user['username']);


Zeile 406Zeile 406
		if($user['coppauser'])
{
$message = $lang->success_coppa_activated;

		if($user['coppauser'])
{
$message = $lang->success_coppa_activated;

		}
else

		}
else

		{
$message = $lang->success_activated;
}

		{
$message = $lang->success_activated;
}

		



		update_admin_session('flash_message2', array('message' => $message, 'type' => 'success'));
}
else

		update_admin_session('flash_message2', array('message' => $message, 'type' => 'success'));
}
else

Zeile 423Zeile 423
		else
{
flash_message($lang->success_activated, 'success');

		else
{
flash_message($lang->success_activated, 'success');

		}

		}

	}

	}

	



	if($admin_session['data']['last_users_url'])
{
$url = $admin_session['data']['last_users_url'];
update_admin_session('last_users_url', '');

	if($admin_session['data']['last_users_url'])
{
$url = $admin_session['data']['last_users_url'];
update_admin_session('last_users_url', '');

		



		if($mybb->input['from'] == "home")
{
update_admin_session('from', 'home');

		if($mybb->input['from'] == "home")
{
update_admin_session('from', 'home');

Zeile 440Zeile 440
	{
$url = "index.php?module=user-users&action=edit&uid={$user['uid']}";
}

	{
$url = "index.php?module=user-users&action=edit&uid={$user['uid']}";
}

	



	admin_redirect($url);
}

if($mybb->input['action'] == "add")
{
$plugins->run_hooks("admin_user_users_add");

	admin_redirect($url);
}

if($mybb->input['action'] == "add")
{
$plugins->run_hooks("admin_user_users_add");

	



	if($mybb->request_method == "post")
{
// Determine the usergroup stuff

	if($mybb->request_method == "post")
{
// Determine the usergroup stuff

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

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


// Set the data for the new user.


// Set the data for the new user.

		$new_user = array(
"uid" => $mybb->input['uid'],
"username" => $mybb->input['username'],

		$new_user = array(
"uid" => $mybb->input['uid'],
"username" => $mybb->input['username'],

Zeile 498Zeile 498
		else
{
$user_info = $userhandler->insert_user();

		else
{
$user_info = $userhandler->insert_user();

			



			$plugins->run_hooks("admin_user_users_add_commit");

			$plugins->run_hooks("admin_user_users_add_commit");

			



			// Log admin action
log_admin_action($user_info['uid'], $user_info['username']);


			// Log admin action
log_admin_action($user_info['uid'], $user_info['username']);


Zeile 518Zeile 518

$page->add_breadcrumb_item($lang->create_user);
$page->output_header($lang->create_user);


$page->add_breadcrumb_item($lang->create_user);
$page->output_header($lang->create_user);

		



	$form = new Form("index.php?module=user-users&amp;action=add", "post");

	$form = new Form("index.php?module=user-users&amp;action=add", "post");





	$page->output_nav_tabs($sub_tabs, 'create_user');

// If we have any error messages, show them
if($errors)

	$page->output_nav_tabs($sub_tabs, 'create_user');

// If we have any error messages, show them
if($errors)

	{

	{

		$page->output_inline_error($errors);
}
else
{
$mybb->input = array(
"usergroup" => 2

		$page->output_inline_error($errors);
}
else
{
$mybb->input = array(
"usergroup" => 2

		);

		);

	}

$form_container = new FormContainer($lang->required_profile_info);

	}

$form_container = new FormContainer($lang->required_profile_info);

Zeile 540Zeile 540
	$form_container->output_row($lang->password." <em>*</em>", "", $form->generate_password_box('password', $mybb->input['password'], array('id' => 'password', 'autocomplete' => 'off')), 'password');
$form_container->output_row($lang->confirm_password." <em>*</em>", "", $form->generate_password_box('confirm_password', $mybb->input['confirm_password'], array('id' => 'confirm_new_password')), 'confirm_new_password');
$form_container->output_row($lang->email_address." <em>*</em>", "", $form->generate_text_box('email', $mybb->input['email'], array('id' => 'email')), 'email');

	$form_container->output_row($lang->password." <em>*</em>", "", $form->generate_password_box('password', $mybb->input['password'], array('id' => 'password', 'autocomplete' => 'off')), 'password');
$form_container->output_row($lang->confirm_password." <em>*</em>", "", $form->generate_password_box('confirm_password', $mybb->input['confirm_password'], array('id' => 'confirm_new_password')), 'confirm_new_password');
$form_container->output_row($lang->email_address." <em>*</em>", "", $form->generate_text_box('email', $mybb->input['email'], array('id' => 'email')), 'email');





	$display_group_options[0] = $lang->use_primary_user_group;
$options = array();
$query = $db->simple_select("usergroups", "gid, title", "gid != '1'", array('order_by' => 'title'));

	$display_group_options[0] = $lang->use_primary_user_group;
$options = array();
$query = $db->simple_select("usergroups", "gid, title", "gid != '1'", array('order_by' => 'title'));

Zeile 568Zeile 568
if($mybb->input['action'] == "edit")
{
$plugins->run_hooks("admin_user_users_edit");

if($mybb->input['action'] == "edit")
{
$plugins->run_hooks("admin_user_users_edit");

	



	$query = $db->simple_select("users", "*", "uid='".intval($mybb->input['uid'])."'");
$user = $db->fetch_array($query);


	$query = $db->simple_select("users", "*", "uid='".intval($mybb->input['uid'])."'");
$user = $db->fetch_array($query);


Zeile 591Zeile 591
		if(is_array($mybb->input['additionalgroups']))
{
foreach($mybb->input['additionalgroups'] as $key => $gid)

		if(is_array($mybb->input['additionalgroups']))
{
foreach($mybb->input['additionalgroups'] as $key => $gid)

			{

			{

				if($gid == $mybb->input['usergroup'])
{
unset($mybb->input['additionalgroups'][$key]);

				if($gid == $mybb->input['usergroup'])
{
unset($mybb->input['additionalgroups'][$key]);

Zeile 620Zeile 620
			"postnum" => $mybb->input['postnum'],
"usertitle" => $mybb->input['usertitle'],
"timezone" => $mybb->input['timezone'],

			"postnum" => $mybb->input['postnum'],
"usertitle" => $mybb->input['usertitle'],
"timezone" => $mybb->input['timezone'],

			"language" => $mybb->input['language'],

			"language" => $mybb->input['language'],

			"profile_fields" => $mybb->input['profile_fields'],
"profile_fields_editable" => true,
"website" => $mybb->input['website'],

			"profile_fields" => $mybb->input['profile_fields'],
"profile_fields_editable" => true,
"website" => $mybb->input['website'],

Zeile 649Zeile 649
			}
}
if($mybb->input['new_password'])

			}
}
if($mybb->input['new_password'])

		{

		{

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

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

Zeile 676Zeile 676
		if($mybb->settings['usertppoptions'])
{
$updated_user['options']['tpp'] = intval($mybb->input['tpp']);

		if($mybb->settings['usertppoptions'])
{
$updated_user['options']['tpp'] = intval($mybb->input['tpp']);

		}

		}


if($mybb->settings['userpppoptions'])
{


if($mybb->settings['userpppoptions'])
{

Zeile 704Zeile 704
				);
remove_avatars($user['uid']);
}

				);
remove_avatars($user['uid']);
}

			



			// Are we uploading a new avatar?
if($_FILES['avatar_upload']['name'])
{

			// Are we uploading a new avatar?
if($_FILES['avatar_upload']['name'])
{

Zeile 767Zeile 767
					{
list($maxwidth, $maxheight) = explode("x", my_strtolower($mybb->settings['maxavatardims']));
if(($maxwidth && $width > $maxwidth) || ($maxheight && $height > $maxheight))

					{
list($maxwidth, $maxheight) = explode("x", my_strtolower($mybb->settings['maxavatardims']));
if(($maxwidth && $width > $maxwidth) || ($maxheight && $height > $maxheight))

						{

						{

							$lang->error_avatartoobig = $lang->sprintf($lang->error_avatartoobig, $maxwidth, $maxheight);
$avatar_error = $lang->error_avatartoobig;
}
}
}

							$lang->error_avatartoobig = $lang->sprintf($lang->error_avatartoobig, $maxwidth, $maxheight);
$avatar_error = $lang->error_avatartoobig;
}
}
}

				



				if(empty($avatar_error))
{
if($width > 0 && $height > 0)

				if(empty($avatar_error))
{
if($width > 0 && $height > 0)

Zeile 846Zeile 846
					if(!is_array($errors))
{
$suspend_length = fetch_time_length(intval($mybb->input[$option['time']]), $mybb->input[$option['period']]);

					if(!is_array($errors))
{
$suspend_length = fetch_time_length(intval($mybb->input[$option['time']]), $mybb->input[$option['period']]);

	



						if($user[$option['update_field']] == 1 && ($mybb->input[$option['time']] || $mybb->input[$option['period']] == "never"))
{
// We already have a suspension, but entered a new time

						if($user[$option['update_field']] == 1 && ($mybb->input[$option['time']] || $mybb->input[$option['period']] == "never"))
{
// We already have a suspension, but entered a new time

Zeile 864Zeile 864
						elseif(!$user[$option['update_field']])
{
// New suspension for this user... bad user!

						elseif(!$user[$option['update_field']])
{
// New suspension for this user... bad user!

							$extra_user_updates[$option['update_field']] = 1;				

							$extra_user_updates[$option['update_field']] = 1;

							if($suspend_length == "-1")
{
$extra_user_updates[$option['update_length']] = 0;

							if($suspend_length == "-1")
{
$extra_user_updates[$option['update_length']] = 0;

Zeile 887Zeile 887
			{
$user_info = $userhandler->update_user();
$db->update_query("users", $extra_user_updates, "uid='{$user['uid']}'");

			{
$user_info = $userhandler->update_user();
$db->update_query("users", $extra_user_updates, "uid='{$user['uid']}'");

				



				// if we're updating the user's signature preferences, do so now
if($mybb->input['update_posts'] == 'enable' || $mybb->input['update_posts'] == 'disable')
{

				// if we're updating the user's signature preferences, do so now
if($mybb->input['update_posts'] == 'enable' || $mybb->input['update_posts'] == 'disable')
{

Zeile 896Zeile 896
					);
$db->update_query("posts", $update_signature, "uid='{$user['uid']}'");
}

					);
$db->update_query("posts", $update_signature, "uid='{$user['uid']}'");
}

				



				$plugins->run_hooks("admin_user_users_edit_commit");

// Log admin action

				$plugins->run_hooks("admin_user_users_edit_commit");

// Log admin action

Zeile 931Zeile 931
		// We need to fetch this users profile field values
$query = $db->simple_select("userfields", "*", "ufid='{$user['uid']}'");
$mybb->input['profile_fields'] = $db->fetch_array($query);

		// We need to fetch this users profile field values
$query = $db->simple_select("userfields", "*", "ufid='{$user['uid']}'");
$mybb->input['profile_fields'] = $db->fetch_array($query);

	}


	}


	if($mybb->input['bday1'] || $mybb->input['bday2'] || $mybb->input['bday3'])
{
$mybb->input['bday'][0] = $mybb->input['bday1'];

	if($mybb->input['bday1'] || $mybb->input['bday2'] || $mybb->input['bday3'])
{
$mybb->input['bday'][0] = $mybb->input['bday1'];

Zeile 946Zeile 946
		if($user['birthday'])
{
$mybb->input['bday'] = explode('-', $user['birthday']);

		if($user['birthday'])
{
$mybb->input['bday'] = explode('-', $user['birthday']);

		}

		}

	}

// Fetch custom profile fields

	}

// Fetch custom profile fields

Zeile 965Zeile 965

$page->add_breadcrumb_item($lang->edit_user.": ".htmlspecialchars_uni($user['username']));
$page->output_header($lang->edit_user);


$page->add_breadcrumb_item($lang->edit_user.": ".htmlspecialchars_uni($user['username']));
$page->output_header($lang->edit_user);

		



	$sub_tabs['edit_user'] = array(
'title' => $lang->edit_user,
'description' => $lang->edit_user_desc

	$sub_tabs['edit_user'] = array(
'title' => $lang->edit_user,
'description' => $lang->edit_user_desc

Zeile 981Zeile 981
	{
$page->output_inline_error($errors);
}

	{
$page->output_inline_error($errors);
}

	



	// Is this user a COPPA user? We show a warning & activate link
if($user['coppauser'])
{

	// Is this user a COPPA user? We show a warning & activate link
if($user['coppauser'])
{

Zeile 1063Zeile 1063
		if($posts_per_day > $user['postnum'])
{
$posts_per_day = $user['postnum'];

		if($posts_per_day > $user['postnum'])
{
$posts_per_day = $user['postnum'];

		}
}

		}
}

	$stats = $cache->read("stats");
$posts = $stats['numposts'];
if($posts == 0)

	$stats = $cache->read("stats");
$posts = $stats['numposts'];
if($posts == 0)

Zeile 1074Zeile 1074
	else
{
$percent_posts = round($user['postnum']*100/$posts, 2);

	else
{
$percent_posts = round($user['postnum']*100/$posts, 2);

	}

$user_permissions = user_permissions($user['uid']);

	}

$user_permissions = user_permissions($user['uid']);


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


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

Zeile 1096Zeile 1096
			$warning_level = 100;
}
$warning_level = get_colored_warning_level($warning_level);

			$warning_level = 100;
}
$warning_level = get_colored_warning_level($warning_level);

	}


	}


	$age = $lang->na;
if($user['birthday'])
{

	$age = $lang->na;
if($user['birthday'])
{

Zeile 1119Zeile 1119
	$table->construct_row();
$table->construct_cell("<strong>{$lang->percent_of_total_posts}:</strong> {$percent_posts}");
$table->construct_cell("<strong>{$lang->warning_level}:</strong> {$warning_level}");

	$table->construct_row();
$table->construct_cell("<strong>{$lang->percent_of_total_posts}:</strong> {$percent_posts}");
$table->construct_cell("<strong>{$lang->warning_level}:</strong> {$warning_level}");

	$table->construct_row();
$table->construct_cell("<strong>{$lang->registration_ip}:</strong> {$user['regip']}");
$table->construct_cell("<strong>{$lang->last_known_ip}:</strong> {$user['lastip']}");
$table->construct_row();


	$table->construct_row();
$table->construct_cell("<strong>{$lang->registration_ip}:</strong> {$user['regip']}");
$table->construct_cell("<strong>{$lang->last_known_ip}:</strong> {$user['lastip']}");
$table->construct_row();


	$table->output("{$lang->user_overview}: {$user['username']}");
echo "</div>\n";


	$table->output("{$lang->user_overview}: {$user['username']}");
echo "</div>\n";


Zeile 1146Zeile 1146
		$options[$usergroup['gid']] = $usergroup['title'];
$display_group_options[$usergroup['gid']] = $usergroup['title'];
}

		$options[$usergroup['gid']] = $usergroup['title'];
$display_group_options[$usergroup['gid']] = $usergroup['title'];
}

	



	if(!is_array($mybb->input['additionalgroups']))
{
$mybb->input['additionalgroups'] = explode(',', $mybb->input['additionalgroups']);

	if(!is_array($mybb->input['additionalgroups']))
{
$mybb->input['additionalgroups'] = explode(',', $mybb->input['additionalgroups']);

Zeile 1165Zeile 1165
	output_custom_profile_fields($profile_fields['required'], $mybb->input['profile_fields'], $form_container, $form);

$form_container->end();

	output_custom_profile_fields($profile_fields['required'], $mybb->input['profile_fields'], $form_container, $form);

$form_container->end();

	



	$form_container = new FormContainer($lang->optional_profile_info.": {$user['username']}");
$form_container->output_row($lang->custom_user_title, $lang->custom_user_title_desc, $form->generate_text_box('usertitle', $mybb->input['usertitle'], array('id' => 'usertitle')), 'usertitle');
$form_container->output_row($lang->website, "", $form->generate_text_box('website', $mybb->input['website'], array('id' => 'website')), 'website');

	$form_container = new FormContainer($lang->optional_profile_info.": {$user['username']}");
$form_container->output_row($lang->custom_user_title, $lang->custom_user_title_desc, $form->generate_text_box('usertitle', $mybb->input['usertitle'], array('id' => 'usertitle')), 'usertitle');
$form_container->output_row($lang->website, "", $form->generate_text_box('website', $mybb->input['website'], array('id' => 'website')), 'website');

Zeile 1226Zeile 1226
	{
$mybb->input['pmnotice'] = 1;
}

	{
$mybb->input['pmnotice'] = 1;
}

	



	$messaging_options = array(
$form->generate_check_box("allownotices", 1, $lang->recieve_admin_emails, array("checked" => $mybb->input['allownotices'])),
$form->generate_check_box("hideemail", 1, $lang->hide_email_from_others, array("checked" => $mybb->input['hideemail'])),

	$messaging_options = array(
$form->generate_check_box("allownotices", 1, $lang->recieve_admin_emails, array("checked" => $mybb->input['allownotices'])),
$form->generate_check_box("hideemail", 1, $lang->hide_email_from_others, array("checked" => $mybb->input['hideemail'])),

Zeile 1237Zeile 1237
		"<label for=\"subscriptionmethod\">{$lang->default_thread_subscription_mode}:</label><br />".$form->generate_select_box("subscriptionmethod", array($lang->do_not_subscribe, $lang->no_email_notification, $lang->instant_email_notification), $mybb->input['subscriptionmethod'], array('id' => 'subscriptionmethod'))
);
$form_container->output_row($lang->messaging_and_notification, "", "<div class=\"user_settings_bit\">".implode("</div><div class=\"user_settings_bit\">", $messaging_options)."</div>");

		"<label for=\"subscriptionmethod\">{$lang->default_thread_subscription_mode}:</label><br />".$form->generate_select_box("subscriptionmethod", array($lang->do_not_subscribe, $lang->no_email_notification, $lang->instant_email_notification), $mybb->input['subscriptionmethod'], array('id' => 'subscriptionmethod'))
);
$form_container->output_row($lang->messaging_and_notification, "", "<div class=\"user_settings_bit\">".implode("</div><div class=\"user_settings_bit\">", $messaging_options)."</div>");





	$date_format_options = array($lang->use_default);
foreach($date_formats as $key => $format)
{
$date_format_options[$key] = my_date($format, TIME_NOW, "", 0);

	$date_format_options = array($lang->use_default);
foreach($date_formats as $key => $format)
{
$date_format_options[$key] = my_date($format, TIME_NOW, "", 0);

	}


	}


	$time_format_options = array($lang->use_default);
foreach($time_formats as $key => $format)
{

	$time_format_options = array($lang->use_default);
foreach($time_formats as $key => $format)
{

Zeile 1356Zeile 1356
	echo "<div id=\"tab_signature\">\n";
$form_container = new FormContainer("{$lang->signature}: {$user['username']}");
$form_container->output_row($lang->signature, $lang->sprintf($lang->signature_desc, $sig_mycode, $sig_smilies, $sig_imgcode, $sig_html), $signature_editor, 'signature');

	echo "<div id=\"tab_signature\">\n";
$form_container = new FormContainer("{$lang->signature}: {$user['username']}");
$form_container->output_row($lang->signature, $lang->sprintf($lang->signature_desc, $sig_mycode, $sig_smilies, $sig_imgcode, $sig_html), $signature_editor, 'signature');


$periods = array(
"hours" => $lang->expire_hours,
"days" => $lang->expire_days,


$periods = array(
"hours" => $lang->expire_hours,
"days" => $lang->expire_days,

		"weeks" => $lang->expire_weeks,
"months" => $lang->expire_months,
"never" => $lang->expire_permanent

		"weeks" => $lang->expire_weeks,
"months" => $lang->expire_months,
"never" => $lang->expire_permanent

Zeile 1476Zeile 1476
	}

if($mybb->settings['maxavatardims'] != "")

	}

if($mybb->settings['maxavatardims'] != "")

	{

	{

		list($max_width, $max_height) = explode("x", my_strtolower($mybb->settings['maxavatardims']));
$max_size = "<br />{$lang->max_dimensions_are} {$max_width}x{$max_height}";
}

		list($max_width, $max_height) = explode("x", my_strtolower($mybb->settings['maxavatardims']));
$max_size = "<br />{$lang->max_dimensions_are} {$max_width}x{$max_height}";
}

Zeile 1490Zeile 1490
	if($user['avatar'])
{
$remove_avatar = "<br /><br />".$form->generate_check_box("remove_avatar", 1, "<strong>{$lang->remove_avatar}</strong>");

	if($user['avatar'])
{
$remove_avatar = "<br /><br />".$form->generate_check_box("remove_avatar", 1, "<strong>{$lang->remove_avatar}</strong>");

	}


	}


	$table->construct_cell($lang->avatar_desc."{$remove_avatar}<br /><small>{$max_size}</small>");
$table->construct_row();

	$table->construct_cell($lang->avatar_desc."{$remove_avatar}<br /><small>{$max_size}</small>");
$table->construct_row();

	



	$table->output($lang->avatar.": {$user['username']}");

// Custom avatar
if($mybb->settings['avatarresizing'] == "auto")

	$table->output($lang->avatar.": {$user['username']}");

// Custom avatar
if($mybb->settings['avatarresizing'] == "auto")

	{

	{

		$auto_resize = $lang->avatar_auto_resize;
}
else if($mybb->settings['avatarresizing'] == "user")

		$auto_resize = $lang->avatar_auto_resize;
}
else if($mybb->settings['avatarresizing'] == "user")

Zeile 1517Zeile 1517
	echo "<iframe src=\"index.php?module=user-users&amp;action=avatar_gallery&amp;uid={$user['uid']}\" width=\"100%\" height=\"350\" frameborder=\"0\"></iframe>";
echo "</div>";
echo "</div>";

	echo "<iframe src=\"index.php?module=user-users&amp;action=avatar_gallery&amp;uid={$user['uid']}\" width=\"100%\" height=\"350\" frameborder=\"0\"></iframe>";
echo "</div>";
echo "</div>";

	



	//
// MODERATOR OPTIONS
//

	//
// MODERATOR OPTIONS
//

Zeile 1536Zeile 1536
	// Mod posts
// Generate check box
$modpost_options = $form->generate_select_box('modpost_period', $periods, $mybb->input['modpost_period'], array('id' => 'modpost_period'));

	// Mod posts
// Generate check box
$modpost_options = $form->generate_select_box('modpost_period', $periods, $mybb->input['modpost_period'], array('id' => 'modpost_period'));





	// Do we have any existing suspensions here?
$existing_info = '';
if($user['moderateposts'] || ($mybb->input['moderateposting'] && !empty($errors)))

	// Do we have any existing suspensions here?
$existing_info = '';
if($user['moderateposts'] || ($mybb->input['moderateposting'] && !empty($errors)))

Zeile 1550Zeile 1550
		else
{
$existing_info = $lang->moderated_perm;

		else
{
$existing_info = $lang->moderated_perm;

		}
}

		}
}


$modpost_div = '<div id="modpost">'.$existing_info.''.$lang->moderate_for.' '.$form->generate_text_box("modpost_time", $mybb->input['modpost_time'], array('style' => 'width: 2em;')).' '.$modpost_options.'</div>';
$lang->moderate_posts_info = $lang->sprintf($lang->moderate_posts_info, $user['username']);


$modpost_div = '<div id="modpost">'.$existing_info.''.$lang->moderate_for.' '.$form->generate_text_box("modpost_time", $mybb->input['modpost_time'], array('style' => 'width: 2em;')).' '.$modpost_options.'</div>';
$lang->moderate_posts_info = $lang->sprintf($lang->moderate_posts_info, $user['username']);

Zeile 1565Zeile 1565
	if($user['suspendposting'] || ($mybb->input['suspendposting'] && !empty($errors)))
{
$mybb->input['suspendposting'] = 1;

	if($user['suspendposting'] || ($mybb->input['suspendposting'] && !empty($errors)))
{
$mybb->input['suspendposting'] = 1;





		if($user['suspensiontime'] == 0 || $mybb->input['suspost_period'] == "never")
{
$existing_info = $lang->suspended_perm;

		if($user['suspensiontime'] == 0 || $mybb->input['suspost_period'] == "never")
{
$existing_info = $lang->suspended_perm;

Zeile 1581Zeile 1581
	$lang->suspend_posts_info = $lang->sprintf($lang->suspend_posts_info, $user['username']);
$form_container->output_row($form->generate_check_box("suspendposting", 1, $lang->suspend_posts, array("id" => "suspendposting", "onclick" => "toggleBox('suspost');", "checked" => $mybb->input['suspendposting'])), $lang->suspend_posts_info, $suspost_div);


	$lang->suspend_posts_info = $lang->sprintf($lang->suspend_posts_info, $user['username']);
$form_container->output_row($form->generate_check_box("suspendposting", 1, $lang->suspend_posts, array("id" => "suspendposting", "onclick" => "toggleBox('suspost');", "checked" => $mybb->input['suspendposting'])), $lang->suspend_posts_info, $suspost_div);






	$form_container->end();
echo "</div>\n";

$buttons[] = $form->generate_submit_button($lang->save_user);
$form->output_submit_wrapper($buttons);

	$form_container->end();
echo "</div>\n";

$buttons[] = $form->generate_submit_button($lang->save_user);
$form->output_submit_wrapper($buttons);





	$form->end();

	$form->end();





echo '<script type="text/javascript">
<!--

function toggleBox(action)

echo '<script type="text/javascript">
<!--

function toggleBox(action)

{

{

	if(action == "modpost")
{
$("suspendposting").checked = false;
$("suspost").hide();

	if(action == "modpost")
{
$("suspendposting").checked = false;
$("suspost").hide();

		



		if($("moderateposting").checked == true)
{
$("modpost").show();

		if($("moderateposting").checked == true)
{
$("modpost").show();

Zeile 1607Zeile 1607
		else if($("moderateposting").checked == false)
{
$("modpost").hide();

		else if($("moderateposting").checked == false)
{
$("modpost").hide();

		}		

		}

	}
else if(action == "suspost")
{

	}
else if(action == "suspost")
{

Zeile 1617Zeile 1617
		if($("suspendposting").checked == true)
{
$("suspost").show();

		if($("suspendposting").checked == true)
{
$("suspost").show();

		}

		}

		else if($("suspendposting").checked == false)
{
$("suspost").hide();
}
}

		else if($("suspendposting").checked == false)
{
$("suspost").hide();
}
}

}

}


if($("moderateposting").checked == false)


if($("moderateposting").checked == false)

{

{

	$("modpost").hide();

	$("modpost").hide();

}
else
{

}
else
{

	$("modpost").show();
}

if($("suspendposting").checked == false)
{
$("suspost").hide();

	$("modpost").show();
}

if($("suspendposting").checked == false)
{
$("suspost").hide();

}

}

else
{
$("suspost").show();

else
{
$("suspost").show();

Zeile 1650Zeile 1650
}

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

}

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

{

{

	$plugins->run_hooks("admin_user_users_delete");

	$plugins->run_hooks("admin_user_users_delete");

	



	$query = $db->simple_select("users", "*", "uid='".intval($mybb->input['uid'])."'");
$user = $db->fetch_array($query);

	$query = $db->simple_select("users", "*", "uid='".intval($mybb->input['uid'])."'");
$user = $db->fetch_array($query);





	// Does the user not exist?
if(!$user['uid'])
{
flash_message($lang->error_invalid_user, 'error');
admin_redirect("index.php?module=user-users");
}

	// Does the user not exist?
if(!$user['uid'])
{
flash_message($lang->error_invalid_user, 'error');
admin_redirect("index.php?module=user-users");
}

	



	if(is_super_admin($mybb->input['uid']) && $mybb->user['uid'] != $mybb->input['uid'] && !is_super_admin($mybb->user['uid']))
{
flash_message($lang->error_no_perms_super_admin, 'error');

	if(is_super_admin($mybb->input['uid']) && $mybb->user['uid'] != $mybb->input['uid'] && !is_super_admin($mybb->user['uid']))
{
flash_message($lang->error_no_perms_super_admin, 'error');

Zeile 1699Zeile 1699

// Update forums & threads if user is the lastposter
$db->update_query("posts", array('uid' => 0), "uid='{$user['uid']}'");


// Update forums & threads if user is the lastposter
$db->update_query("posts", array('uid' => 0), "uid='{$user['uid']}'");

 
		$db->update_query("threads", array('uid' => 0), "uid='{$user['uid']}'");

		$db->update_query("forums", array("lastposteruid" => 0), "lastposteruid = '{$user['uid']}'");
$db->update_query("threads", array("lastposteruid" => 0), "lastposteruid = '{$user['uid']}'");


		$db->update_query("forums", array("lastposteruid" => 0), "lastposteruid = '{$user['uid']}'");
$db->update_query("threads", array("lastposteruid" => 0), "lastposteruid = '{$user['uid']}'");


Zeile 1733Zeile 1734
if($mybb->input['action'] == "referrers")
{
$plugins->run_hooks("admin_user_users_referrers");

if($mybb->input['action'] == "referrers")
{
$plugins->run_hooks("admin_user_users_referrers");

	



	$page->add_breadcrumb_item($lang->show_referrers);
$page->output_header($lang->show_referrers);

	$page->add_breadcrumb_item($lang->show_referrers);
$page->output_header($lang->show_referrers);

		



	$sub_tabs['referrers'] = array(
'title' => $lang->show_referrers,
'link' => "index.php?module=user-users&amp;action=referrers&amp;uid={$mybb->input['uid']}",
'description' => $lang->show_referrers_desc
);

	$sub_tabs['referrers'] = array(
'title' => $lang->show_referrers,
'link' => "index.php?module=user-users&amp;action=referrers&amp;uid={$mybb->input['uid']}",
'description' => $lang->show_referrers_desc
);

	



	$page->output_nav_tabs($sub_tabs, 'referrers');

	$page->output_nav_tabs($sub_tabs, 'referrers');

	



	// Fetch default admin view
$default_view = fetch_default_view("user");
if(!$default_view)
{
$default_view = "0";

	// Fetch default admin view
$default_view = fetch_default_view("user");
if(!$default_view)
{
$default_view = "0";

	}

	}

	$query = $db->simple_select("adminviews", "*", "type='user' AND (vid='{$default_view}' OR uid=0)", array("order_by" => "uid", "order_dir" => "desc"));
$admin_view = $db->fetch_array($query);


	$query = $db->simple_select("adminviews", "*", "type='user' AND (vid='{$default_view}' OR uid=0)", array("order_by" => "uid", "order_dir" => "desc"));
$admin_view = $db->fetch_array($query);


Zeile 1758Zeile 1759
	{
$admin_view['view_type'] = $mybb->input['type'];
}

	{
$admin_view['view_type'] = $mybb->input['type'];
}

	



	$admin_view['conditions'] = unserialize($admin_view['conditions']);
$admin_view['conditions']['referrer'] = $mybb->input['uid'];


	$admin_view['conditions'] = unserialize($admin_view['conditions']);
$admin_view['conditions']['referrer'] = $mybb->input['uid'];


Zeile 1783Zeile 1784
if($mybb->input['action'] == "ipaddresses")
{
$plugins->run_hooks("admin_user_users_ipaddresses");

if($mybb->input['action'] == "ipaddresses")
{
$plugins->run_hooks("admin_user_users_ipaddresses");

	



	$page->add_breadcrumb_item($lang->ip_addresses);

	$page->add_breadcrumb_item($lang->ip_addresses);

	$page->output_header($lang->ip_addresses);	


	$page->output_header($lang->ip_addresses);


	$sub_tabs['ipaddresses'] = array(
'title' => $lang->show_ip_addresses,
'link' => "index.php?module=user-users&amp;action=ipaddresses&amp;uid={$mybb->input['uid']}",
'description' => $lang->show_ip_addresses_desc
);

	$sub_tabs['ipaddresses'] = array(
'title' => $lang->show_ip_addresses,
'link' => "index.php?module=user-users&amp;action=ipaddresses&amp;uid={$mybb->input['uid']}",
'description' => $lang->show_ip_addresses_desc
);

	



	$page->output_nav_tabs($sub_tabs, 'ipaddresses');

	$page->output_nav_tabs($sub_tabs, 'ipaddresses');

	



	$query = $db->simple_select("users", "uid, regip, username, lastip", "uid='{$mybb->input['uid']}'", array('limit' => 1));
$user = $db->fetch_array($query);

	$query = $db->simple_select("users", "uid, regip, username, lastip", "uid='{$mybb->input['uid']}'", array('limit' => 1));
$user = $db->fetch_array($query);





	// Log admin action
log_admin_action($user['uid'], $user['username']);

	// Log admin action
log_admin_action($user['uid'], $user['username']);

	



	$table = new Table;

	$table = new Table;

	



	$table->construct_header($lang->ip_address);
$table->construct_header($lang->controls, array('width' => 200, 'class' => "align_center"));

	$table->construct_header($lang->ip_address);
$table->construct_header($lang->controls, array('width' => 200, 'class' => "align_center"));

	



	if(empty($user['lastip']))
{
$user['lastip'] = $lang->unknown;

	if(empty($user['lastip']))
{
$user['lastip'] = $lang->unknown;

Zeile 1814Zeile 1815
	else
{
$popup = new PopupMenu("user_last", $lang->options);

	else
{
$popup = new PopupMenu("user_last", $lang->options);

		$popup->add_item($lang->show_users_regged_with_ip, 

		$popup->add_item($lang->show_users_regged_with_ip,

"index.php?module=user-users&amp;action=search&amp;results=1&amp;conditions=".urlencode(serialize(array("regip" => $user['lastip']))));
$popup->add_item($lang->show_users_posted_with_ip, "index.php?module=user-users&amp;results=1&amp;action=search&amp;conditions=".urlencode(serialize(array("postip" => $user['lastip']))));
$popup->add_item($lang->info_on_ip, "{$mybb->settings['bburl']}/modcp.php?action=iplookup&ipaddress={$user['lastip']}", "MyBB.popupWindow('{$mybb->settings['bburl']}/modcp.php?action=iplookup&ipaddress={$user['lastip']}', 'iplookup', 500, 250); return false;");

"index.php?module=user-users&amp;action=search&amp;results=1&amp;conditions=".urlencode(serialize(array("regip" => $user['lastip']))));
$popup->add_item($lang->show_users_posted_with_ip, "index.php?module=user-users&amp;results=1&amp;action=search&amp;conditions=".urlencode(serialize(array("postip" => $user['lastip']))));
$popup->add_item($lang->info_on_ip, "{$mybb->settings['bburl']}/modcp.php?action=iplookup&ipaddress={$user['lastip']}", "MyBB.popupWindow('{$mybb->settings['bburl']}/modcp.php?action=iplookup&ipaddress={$user['lastip']}', 'iplookup', 500, 250); return false;");

Zeile 1842Zeile 1843
	$table->construct_cell("<strong>{$lang->registration_ip}:</strong> {$user['regip']}");
$table->construct_cell($controls, array('class' => "align_center"));
$table->construct_row();

	$table->construct_cell("<strong>{$lang->registration_ip}:</strong> {$user['regip']}");
$table->construct_cell($controls, array('class' => "align_center"));
$table->construct_row();

	



	$counter = 0;

	$counter = 0;

	



	$query = $db->simple_select("posts", "DISTINCT ipaddress", "uid='{$mybb->input['uid']}'");
while($ip = $db->fetch_array($query))
{

	$query = $db->simple_select("posts", "DISTINCT ipaddress", "uid='{$mybb->input['uid']}'");
while($ip = $db->fetch_array($query))
{

Zeile 1855Zeile 1856
		$popup->add_item($lang->info_on_ip, "{$mybb->settings['bburl']}/modcp.php?action=iplookup&ipaddress={$ip['ipaddress']}", "MyBB.popupWindow('{$mybb->settings['bburl']}/modcp.php?action=iplookup&ipaddress={$ip['ipaddress']}', 'iplookup', 500, 250); return false;");
$popup->add_item($lang->ban_ip, "index.php?module=config-banning&amp;filter={$ip['ipaddress']}");
$controls = $popup->fetch();

		$popup->add_item($lang->info_on_ip, "{$mybb->settings['bburl']}/modcp.php?action=iplookup&ipaddress={$ip['ipaddress']}", "MyBB.popupWindow('{$mybb->settings['bburl']}/modcp.php?action=iplookup&ipaddress={$ip['ipaddress']}', 'iplookup', 500, 250); return false;");
$popup->add_item($lang->ban_ip, "index.php?module=config-banning&amp;filter={$ip['ipaddress']}");
$controls = $popup->fetch();

	



		$table->construct_cell($ip['ipaddress']);
$table->construct_cell($controls, array('class' => "align_center"));
$table->construct_row();
}

		$table->construct_cell($ip['ipaddress']);
$table->construct_cell($controls, array('class' => "align_center"));
$table->construct_row();
}

	



	$table->output($lang->ip_address_for." {$user['username']}");

	$table->output($lang->ip_address_for." {$user['username']}");

	



	$page->output_footer();
}

	$page->output_footer();
}





if($mybb->input['action'] == "merge")
{
$plugins->run_hooks("admin_user_users_merge");

if($mybb->input['action'] == "merge")
{
$plugins->run_hooks("admin_user_users_merge");

	



	if($mybb->request_method == "post")
{
$query = $db->simple_select("users", "*", "LOWER(username)='".$db->escape_string(my_strtolower($mybb->input['source_username']))."'");
$source_user = $db->fetch_array($query);
if(!$source_user['uid'])

	if($mybb->request_method == "post")
{
$query = $db->simple_select("users", "*", "LOWER(username)='".$db->escape_string(my_strtolower($mybb->input['source_username']))."'");
$source_user = $db->fetch_array($query);
if(!$source_user['uid'])

		{

		{

			$errors[] = $lang->error_invalid_user_source;
}


			$errors[] = $lang->error_invalid_user_source;
}


Zeile 1885Zeile 1886
		{
$errors[] = $lang->error_invalid_user_destination;
}

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

		



		// If we're not a super admin and we're merging a source super admin or a destination super admin then dissallow this action
if(!is_super_admin($mybb->user['uid']) && (is_super_admin($source_user['uid']) || is_super_admin($destination_user['uid'])))
{

		// If we're not a super admin and we're merging a source super admin or a destination super admin then dissallow this action
if(!is_super_admin($mybb->user['uid']) && (is_super_admin($source_user['uid']) || is_super_admin($destination_user['uid'])))
{

Zeile 1912Zeile 1913
			{
$db->update_query("adminoptions", $uid_update, "uid='{$source_user['uid']}'");
}

			{
$db->update_query("adminoptions", $uid_update, "uid='{$source_user['uid']}'");
}

			



			$db->update_query("adminlog", $uid_update, "uid='{$source_user['uid']}'");
$db->update_query("announcements", $uid_update, "uid='{$source_user['uid']}'");
$db->update_query("events", $uid_update, "uid='{$source_user['uid']}'");

			$db->update_query("adminlog", $uid_update, "uid='{$source_user['uid']}'");
$db->update_query("announcements", $uid_update, "uid='{$source_user['uid']}'");
$db->update_query("events", $uid_update, "uid='{$source_user['uid']}'");

Zeile 1926Zeile 1927
			$db->update_query("reportedposts", $uid_update, "uid='{$source_user['uid']}'");
$db->update_query("threadratings", $uid_update, "uid='{$source_user['uid']}'");
$db->update_query("threads", $uid_update, "uid='{$source_user['uid']}'");

			$db->update_query("reportedposts", $uid_update, "uid='{$source_user['uid']}'");
$db->update_query("threadratings", $uid_update, "uid='{$source_user['uid']}'");
$db->update_query("threads", $uid_update, "uid='{$source_user['uid']}'");

 
			$db->update_query("warnings", $uid_update, "uid='{$source_user['uid']}'");
$db->update_query("warnings", array("revokedby" => $destination_user['uid']), "revokedby='{$source_user['uid']}'");
$db->update_query("warnings", array("issuedby" => $destination_user['uid']), "issuedby='{$source_user['uid']}'");

			$db->delete_query("sessions", "uid='{$source_user['uid']}'");

// Is the source user a moderator?

			$db->delete_query("sessions", "uid='{$source_user['uid']}'");

// Is the source user a moderator?

Zeile 1936Zeile 1940
				// Update the moderator cache...
$cache->update_moderators();
}

				// Update the moderator cache...
$cache->update_moderators();
}


// Forums & Threads
$db->update_query("forums", array("lastposteruid" => $destination_user['uid']), "lastposteruid = '{$source_user['uid']}'");
$db->update_query("threads", array("lastposteruid" => $destination_user['uid']), "lastposteruid = '{$source_user['uid']}'");

 

// Banning
$db->update_query("banned", array('admin' => $destination_user['uid']), "admin = '{$source_user['uid']}'");

// Merging Reputation
// First, let's change all the details over to our new user...


// Banning
$db->update_query("banned", array('admin' => $destination_user['uid']), "admin = '{$source_user['uid']}'");

// Merging Reputation
// First, let's change all the details over to our new user...

			$rep_update = array(
"adduid" => $destination_user['uid'],
"uid" => $destination_user['uid']
);
$db->update_query("reputation", $rep_update, "adduid = '".$source_user['uid']."' OR uid = '".$source_user['uid']."'");

			$db->update_query("reputation", array("adduid" => $destination_user['uid']), "adduid = '".$source_user['uid']."'");
$db->update_query("reputation", array("uid" => $destination_user['uid']), "uid = '".$source_user['uid']."'");





// Now that all the repuation is merged, figure out what to do with this user's comments...
$options = array(


// Now that all the repuation is merged, figure out what to do with this user's comments...
$options = array(

Zeile 1996Zeile 1993
			$total_reputation = $db->fetch_field($query, "total_rep");

$db->update_query("users", array('reputation' => intval($total_reputation)), "uid='{$destination_user['uid']}'");

			$total_reputation = $db->fetch_field($query, "total_rep");

$db->update_query("users", array('reputation' => intval($total_reputation)), "uid='{$destination_user['uid']}'");

 

// Calculate warning points
$query = $db->query("
SELECT SUM(points) as warn_lev
FROM ".TABLE_PREFIX."warnings
WHERE uid='{$source_user['uid']}' AND expired='0'
");
$original_warn_level = $db->fetch_field($query, "warn_lev");

$query = $db->query("
SELECT SUM(points) as warn_lev
FROM ".TABLE_PREFIX."warnings
WHERE uid='{$destination_user['uid']}' AND expired='0'
");
$new_warn_level = $db->fetch_field($query, "warn_lev");
$db->update_query("users", array("warningpoints" => intval($original_warn_level + $new_warn_level)), "uid='{$destination_user['uid']}'");


// Additional updates for non-uid fields
$last_poster = array(


// Additional updates for non-uid fields
$last_poster = array(

Zeile 2011Zeile 2024

$from_uid = array(
"fromid" => $destination_user['uid']


$from_uid = array(
"fromid" => $destination_user['uid']

			);	

			);

			$db->update_query("privatemessages", $from_uid, "fromid='{$source_user['uid']}'");
$to_uid = array(
"toid" => $destination_user['uid']

			$db->update_query("privatemessages", $from_uid, "fromid='{$source_user['uid']}'");
$to_uid = array(
"toid" => $destination_user['uid']

			);	

			);

			$db->update_query("privatemessages", $to_uid, "toid='{$source_user['uid']}'");

			$db->update_query("privatemessages", $to_uid, "toid='{$source_user['uid']}'");

 

// Buddy/ignore lists

$destination_buddies = explode(',', $destination_user['buddylist']);
$source_buddies = explode(',', $source_user['buddylist']);
$buddies = array_unique(array_merge($source_buddies, $destination_buddies));
// Make sure the new buddy list doesn't contain either users
$buddies_array = array_diff($buddies, array($destination_user['uid'], $source_user['uid']));

$destination_ignored = explode(',', $destination_user['ignorelist']);
$source_ignored = explode(',', $destination_user['ignorelist']);
$ignored = array_unique(array_merge($source_ignored, $destination_ignored));
// ... and the same for the new ignore list
$ignored_array = array_diff($ignored, array($destination_user['uid'], $source_user['uid']));

// Remove any ignored users from the buddy list
$buddies = array_diff($buddies_array, $ignored_array);
// implode the arrays so we get a nice neat list for each
$buddies = trim(implode(',', $buddies), ',');
$ignored = trim(implode(',', $ignored_array), ',');

$lists = array(
"buddylist" => $buddies,
"ignorelist" => $ignored
);
$db->update_query("users", $lists, "uid='{$destination_user['uid']}'");


// Delete the old user
$db->delete_query("users", "uid='{$source_user['uid']}'");
$db->delete_query("banned", "uid='{$source_user['uid']}'");


// Delete the old user
$db->delete_query("users", "uid='{$source_user['uid']}'");
$db->delete_query("banned", "uid='{$source_user['uid']}'");

			









// Did the old user have an uploaded avatar?
if($source_user['avatartype'] == "upload")
{
// Removes the ./ at the beginning the timestamp on the end...
@unlink("../".substr($source_user['avatar'], 2, -20));
}


			// Get a list of forums where post count doesn't apply
$fids = array();
$query = $db->simple_select("forums", "fid", "usepostcounts=0");

			// Get a list of forums where post count doesn't apply
$fids = array();
$query = $db->simple_select("forums", "fid", "usepostcounts=0");

Zeile 2029Zeile 2075
			{
$fids[] = $fid;
}

			{
$fids[] = $fid;
}

			



			$fids_not_in = '';
if(!empty($fids))

			$fids_not_in = '';
if(!empty($fids))

			{

			{

				$fids_not_in = "AND fid NOT IN(".implode(',', $fids).")";
}

				$fids_not_in = "AND fid NOT IN(".implode(',', $fids).")";
}

			



			// Update user post count
$query = $db->simple_select("posts", "COUNT(*) AS postnum", "uid='".$destination_user['uid']."' {$fids_not_in}");
$num = $db->fetch_array($query);

			// Update user post count
$query = $db->simple_select("posts", "COUNT(*) AS postnum", "uid='".$destination_user['uid']."' {$fids_not_in}");
$num = $db->fetch_array($query);

Zeile 2043Zeile 2089
				"postnum" => $num['postnum']
);
$db->update_query("users", $updated_count, "uid='{$destination_user['uid']}'");

				"postnum" => $num['postnum']
);
$db->update_query("users", $updated_count, "uid='{$destination_user['uid']}'");

			



			// Use the earliest registration date
if($destination_user['regdate'] > $source_user['regdate'])
{

			// Use the earliest registration date
if($destination_user['regdate'] > $source_user['regdate'])
{

Zeile 2051Zeile 2097
			}

update_stats(array('numusers' => '-1'));

			}

update_stats(array('numusers' => '-1'));

			
$plugins->run_hooks("admin_user_users_merge_commit");


$plugins->run_hooks("admin_user_users_merge_commit");


// Log admin action
log_admin_action($source_user['uid'], $source_user['username'], $destination_user['uid'], $destination_user['username']);


// Log admin action
log_admin_action($source_user['uid'], $source_user['username'], $destination_user['uid'], $destination_user['username']);

Zeile 2066Zeile 2112

$page->add_breadcrumb_item($lang->merge_users);
$page->output_header($lang->merge_users);


$page->add_breadcrumb_item($lang->merge_users);
$page->output_header($lang->merge_users);

	



	$page->output_nav_tabs($sub_tabs, 'merge_users');

// If we have any error messages, show them

	$page->output_nav_tabs($sub_tabs, 'merge_users');

// If we have any error messages, show them

Zeile 2102Zeile 2148
if($mybb->input['action'] == "search")
{
$plugins->run_hooks("admin_user_users_search");

if($mybb->input['action'] == "search")
{
$plugins->run_hooks("admin_user_users_search");

	



	if($mybb->request_method == "post" || $mybb->input['results'] == 1)
{
// Build view options from incoming search options

	if($mybb->request_method == "post" || $mybb->input['results'] == 1)
{
// Build view options from incoming search options

Zeile 2114Zeile 2160
			if(!$admin_view['vid'] || ($admin_view['visibility'] == 1 && $admin_view['uid'] != $mybb->user['uid']))
{
unset($admin_view);

			if(!$admin_view['vid'] || ($admin_view['visibility'] == 1 && $admin_view['uid'] != $mybb->user['uid']))
{
unset($admin_view);

			}
}

			}
}


if($mybb->input['search_id'] && $admin_session['data']['user_views'][$mybb->input['search_id']])
{
$admin_view = $admin_session['data']['user_views'][$mybb->input['search_id']];
unset($admin_view['extra_sql']);


if($mybb->input['search_id'] && $admin_session['data']['user_views'][$mybb->input['search_id']])
{
$admin_view = $admin_session['data']['user_views'][$mybb->input['search_id']];
unset($admin_view['extra_sql']);

		}

		}

		else
{
// Don't have a view? Fetch the default

		else
{
// Don't have a view? Fetch the default

Zeile 2139Zeile 2185

// Override specific parts of the view
unset($admin_view['vid']);


// Override specific parts of the view
unset($admin_view['vid']);





		if($mybb->input['type'])
{
$admin_view['view_type'] = $mybb->input['type'];
}

		if($mybb->input['type'])
{
$admin_view['view_type'] = $mybb->input['type'];
}

		



		if($mybb->input['conditions'])

		if($mybb->input['conditions'])

		{

		{

			$admin_view['conditions'] = $mybb->input['conditions'];

			$admin_view['conditions'] = $mybb->input['conditions'];

		}


		}


		if($mybb->input['sortby'])
{
$admin_view['sortby'] = $mybb->input['sortby'];
}

		if($mybb->input['sortby'])
{
$admin_view['sortby'] = $mybb->input['sortby'];
}

		



		if(intval($mybb->input['perpage']))
{
$admin_view['perpage'] = $mybb->input['perpage'];
}

		if(intval($mybb->input['perpage']))
{
$admin_view['perpage'] = $mybb->input['perpage'];
}

		



		if($mybb->input['order'])
{
$admin_view['sortorder'] = $mybb->input['order'];
}

		if($mybb->input['order'])
{
$admin_view['sortorder'] = $mybb->input['order'];
}

		



		if($mybb->input['displayas'])
{
$admin_view['view_type'] = $mybb->input['displayas'];
}

		if($mybb->input['displayas'])
{
$admin_view['view_type'] = $mybb->input['displayas'];
}

		



		if($mybb->input['profile_fields'])

		if($mybb->input['profile_fields'])

		{

		{

			$admin_view['custom_profile_fields'] = $mybb->input['profile_fields'];

			$admin_view['custom_profile_fields'] = $mybb->input['profile_fields'];

		}

$results = build_users_view($admin_view);


		}

$results = build_users_view($admin_view);


		if($results)
{
$page->output_header($lang->find_users);

		if($results)
{
$page->output_header($lang->find_users);

Zeile 2202Zeile 2248

$page->add_breadcrumb_item($lang->find_users);
$page->output_header($lang->find_users);


$page->add_breadcrumb_item($lang->find_users);
$page->output_header($lang->find_users);

	



	$page->output_nav_tabs($sub_tabs, 'find_users');

// If we have any error messages, show them

	$page->output_nav_tabs($sub_tabs, 'find_users');

// If we have any error messages, show them

Zeile 2210Zeile 2256
	{
$page->output_inline_error($errors);
}

	{
$page->output_inline_error($errors);
}

	



	if(!$mybb->input['displayas'])
{
$mybb->input['displayas'] = "card";

	if(!$mybb->input['displayas'])
{
$mybb->input['displayas'] = "card";

	}

$form = new Form("index.php?module=user-users&amp;action=search", "post");

	}

$form = new Form("index.php?module=user-users&amp;action=search", "post");


user_search_conditions($mybb->input, $form);



user_search_conditions($mybb->input, $form);


Zeile 2233Zeile 2279
	$buttons[] = $form->generate_submit_button($lang->find_users);
$form->output_submit_wrapper($buttons);
$form->end();

	$buttons[] = $form->generate_submit_button($lang->find_users);
$form->output_submit_wrapper($buttons);
$form->end();





	$page->output_footer();
}


	$page->output_footer();
}


Zeile 2245Zeile 2291
	{
// We have a custom view
if(!$mybb->cookies['acp_view'])

	{
// We have a custom view
if(!$mybb->cookies['acp_view'])

		{

		{

			// Set a cookie
my_setcookie("acp_view", $mybb->input['vid'], 60);
}

			// Set a cookie
my_setcookie("acp_view", $mybb->input['vid'], 60);
}

Zeile 2257Zeile 2303

$vid_url = "&amp;vid=".$mybb->input['vid'];
}


$vid_url = "&amp;vid=".$mybb->input['vid'];
}

	



	// First, collect the user IDs that we're performing the moderation on
$ids = explode("|", $mybb->cookies['inlinemod_useracp']);
foreach($ids as $id)

	// First, collect the user IDs that we're performing the moderation on
$ids = explode("|", $mybb->cookies['inlinemod_useracp']);
foreach($ids as $id)

Zeile 2276Zeile 2322
			$errors[] = $lang->error_inline_no_users_selected;
}
}

			$errors[] = $lang->error_inline_no_users_selected;
}
}

	



	if($errors)
{
// Don't show views, but show the user list if there's errors

	if($errors)
{
// Don't show views, but show the user list if there's errors

Zeile 2349Zeile 2395
					// Nothing was updated, show an error
flash_message($lang->inline_activated_failed, 'error');
admin_redirect("index.php?module=user-users".$vid_url);

					// Nothing was updated, show an error
flash_message($lang->inline_activated_failed, 'error');
admin_redirect("index.php?module=user-users".$vid_url);

				}				

				}

				break;
case 'multilift':
// Get the users that are banned, and check that they have been selected

				break;
case 'multilift':
// Get the users that are banned, and check that they have been selected

Zeile 2368Zeile 2414
						$updated_group = array(
"usergroup" => $ban['oldgroup'],
"additionalgroups" => $ban['oldadditionalgroups'],

						$updated_group = array(
"usergroup" => $ban['oldgroup'],
"additionalgroups" => $ban['oldadditionalgroups'],

							"displaygroup" => $ban['olddisplaygroup']					

							"displaygroup" => $ban['olddisplaygroup']

						);
$db->update_query("users", $updated_group, "uid = '".$ban['uid']."'");
$db->delete_query("banned", "uid = '".$ban['uid']."'");

						);
$db->update_query("users", $updated_group, "uid = '".$ban['uid']."'");
$db->delete_query("banned", "uid = '".$ban['uid']."'");

Zeile 2500Zeile 2546
				echo $form->generate_hidden_field('processed', '1');

$form_container = new FormContainer('<div class="float_right"><a href="index.php?module=user-users&amp;action=inline_edit&amp;inline_action=multilift&amp;my_post_key='.$mybb->post_code.'">'.$lang->lift_bans.'</a></div>'.$lang->mass_ban);

				echo $form->generate_hidden_field('processed', '1');

$form_container = new FormContainer('<div class="float_right"><a href="index.php?module=user-users&amp;action=inline_edit&amp;inline_action=multilift&amp;my_post_key='.$mybb->post_code.'">'.$lang->lift_bans.'</a></div>'.$lang->mass_ban);

				$form_container->output_row($lang->ban_reason, "", $form->generate_text_box('reason', $mybb->input['reason'], array('id' => 'reason')), 'reason');				

				$form_container->output_row($lang->ban_reason, "", $form->generate_text_box('reason', $mybb->input['reason'], array('id' => 'reason')), 'reason');

				$ban_times = fetch_ban_times();
foreach($ban_times as $time => $period)
{

				$ban_times = fetch_ban_times();
foreach($ban_times as $time => $period)
{

Zeile 2511Zeile 2557
					}
$length_list[$time] = $period;
}

					}
$length_list[$time] = $period;
}

				$form_container->output_row($lang->ban_time, "", $form->generate_select_box('bantime', $length_list, $mybb->input['bantime'], array('id' => 'bantime')), 'bantime');				

				$form_container->output_row($lang->ban_time, "", $form->generate_select_box('bantime', $length_list, $mybb->input['bantime'], array('id' => 'bantime')), 'bantime');

				$form_container->end();

				$form_container->end();

			



				$buttons[] = $form->generate_submit_button($lang->ban_users);

				$buttons[] = $form->generate_submit_button($lang->ban_users);

				$form->output_submit_wrapper($buttons);				

				$form->output_submit_wrapper($buttons);

				$form->end();
$page->output_footer();
break;

				$form->end();
$page->output_footer();
break;

Zeile 2543Zeile 2589
							{
// Run delete queries
$db->update_query("posts", array('uid' => 0), "uid='{$user['uid']}'");

							{
// Run delete queries
$db->update_query("posts", array('uid' => 0), "uid='{$user['uid']}'");

 
								$db->update_query("threads", array('uid' => 0), "uid='{$user['uid']}'");

								$db->delete_query("userfields", "ufid='{$user['uid']}'");
$db->delete_query("privatemessages", "uid='{$user['uid']}'");
$db->delete_query("events", "uid='{$user['uid']}'");

								$db->delete_query("userfields", "ufid='{$user['uid']}'");
$db->delete_query("privatemessages", "uid='{$user['uid']}'");
$db->delete_query("events", "uid='{$user['uid']}'");

Zeile 2660Zeile 2707
					{
$sql_array = implode(",", $selected);
$prune_array = array();

					{
$sql_array = implode(",", $selected);
$prune_array = array();

						$query = $db->simple_select("users", "uid", "uid IN (".$sql_array.")");							

						$query = $db->simple_select("users", "uid", "uid IN (".$sql_array.")");

						while($user = $db->fetch_array($query))
{
// Protect Super Admins
if(is_super_admin($user['uid']) && !is_super_admin($mybb->user['uid']))
{
continue;

						while($user = $db->fetch_array($query))
{
// Protect Super Admins
if(is_super_admin($user['uid']) && !is_super_admin($mybb->user['uid']))
{
continue;

							}

							}


$return_array = delete_user_posts($user['uid'], $date); // Delete user posts, and grab a list of threads to delete
if($return_array && is_array($return_array))
{
$prune_array = array_merge_recursive($prune_array, $return_array);


$return_array = delete_user_posts($user['uid'], $date); // Delete user posts, and grab a list of threads to delete
if($return_array && is_array($return_array))
{
$prune_array = array_merge_recursive($prune_array, $return_array);

							}

							}

						}

// No posts were found for the user, return error

						}

// No posts were found for the user, return error

Zeile 2691Zeile 2738
						if(is_array($prune_array['to_delete']) && count($prune_array['to_delete']) > 0)
{
foreach($prune_array['to_delete'] as $tid)

						if(is_array($prune_array['to_delete']) && count($prune_array['to_delete']) > 0)
{
foreach($prune_array['to_delete'] as $tid)

							{

							{

								$db->delete_query("threads", "tid='$tid'");
$db->delete_query("threads", "closed='moved|$tid'");
$db->delete_query("threadsubscriptions", "tid='$tid'");

								$db->delete_query("threads", "tid='$tid'");
$db->delete_query("threads", "closed='moved|$tid'");
$db->delete_query("threadsubscriptions", "tid='$tid'");

Zeile 2709Zeile 2756
							while($thread = $db->fetch_array($query))
{
rebuild_thread_counters($thread['tid']);

							while($thread = $db->fetch_array($query))
{
rebuild_thread_counters($thread['tid']);

							}

							}

						}

// After updating thread counters, update the affected forum counters

						}

// After updating thread counters, update the affected forum counters

Zeile 2738Zeile 2785

$page->output_header($lang->manage_users);
$page->output_nav_tabs($sub_tabs, 'manage_users');


$page->output_header($lang->manage_users);
$page->output_nav_tabs($sub_tabs, 'manage_users');

				



				// Display a table warning
$table = new Table;
$lang->mass_prune_info = $lang->sprintf($lang->mass_prune_info, count($selected));

				// Display a table warning
$table = new Table;
$lang->mass_prune_info = $lang->sprintf($lang->mass_prune_info, count($selected));

Zeile 2755Zeile 2802
				$form = new Form("index.php?module=user-users", "post");
echo $form->generate_hidden_field('action', 'inline_edit');
echo $form->generate_hidden_field('inline_action', 'multiprune');

				$form = new Form("index.php?module=user-users", "post");
echo $form->generate_hidden_field('action', 'inline_edit');
echo $form->generate_hidden_field('inline_action', 'multiprune');

				echo $form->generate_hidden_field('processed', '1');

$form_container = new FormContainer($lang->mass_prune_posts);


				echo $form->generate_hidden_field('processed', '1');

$form_container = new FormContainer($lang->mass_prune_posts);


				// Generate a list of days (1 - 31)
$day_options = array();
$day_options[] = "&nbsp;";

				// Generate a list of days (1 - 31)
$day_options = array();
$day_options[] = "&nbsp;";

Zeile 2780Zeile 2827
				$year_box = $form->generate_text_box('year', $mybb->input['year'], array('id' => 'year', 'style' => 'width: 50px;'));

$prune_select = $date_box.$month_box.$year_box;

				$year_box = $form->generate_text_box('year', $mybb->input['year'], array('id' => 'year', 'style' => 'width: 50px;'));

$prune_select = $date_box.$month_box.$year_box;

				$form_container->output_row($lang->manual_date, "", $prune_select, 'date');				

				$form_container->output_row($lang->manual_date, "", $prune_select, 'date');


// Generate the set date box
$set_options = array();


// Generate the set date box
$set_options = array();

Zeile 2791Zeile 2838
					$set_options[] = $lang->$string;
}


					$set_options[] = $lang->$string;
}


				$form_container->output_row($lang->relative_date, "", $lang->delete_posts." ".$form->generate_select_box('set', $set_options, $mybb->input['set']), 'set');				

				$form_container->output_row($lang->relative_date, "", $lang->delete_posts." ".$form->generate_select_box('set', $set_options, $mybb->input['set']), 'set');

				$form_container->end();

$buttons[] = $form->generate_submit_button($lang->prune_posts);

				$form_container->end();

$buttons[] = $form->generate_submit_button($lang->prune_posts);

				$form->output_submit_wrapper($buttons);				

				$form->output_submit_wrapper($buttons);

				$form->end();
$page->output_footer();
break;

				$form->end();
$page->output_footer();
break;

Zeile 2897Zeile 2944

$form_container->output_row($lang->primary_user_group, "", $form->generate_select_box('usergroup', $options, $mybb->input['usergroup'], array('id' => 'usergroup')), 'usergroup');
$form_container->output_row($lang->additional_user_groups, $lang->additional_user_groups_desc, $form->generate_select_box('additionalgroups[]', $options, $mybb->input['additionalgroups'], array('id' => 'additionalgroups', 'multiple' => true, 'size' => 5)), 'additionalgroups');


$form_container->output_row($lang->primary_user_group, "", $form->generate_select_box('usergroup', $options, $mybb->input['usergroup'], array('id' => 'usergroup')), 'usergroup');
$form_container->output_row($lang->additional_user_groups, $lang->additional_user_groups_desc, $form->generate_select_box('additionalgroups[]', $options, $mybb->input['additionalgroups'], array('id' => 'additionalgroups', 'multiple' => true, 'size' => 5)), 'additionalgroups');

				$form_container->output_row($lang->display_user_group, "", $form->generate_select_box('displaygroup', $display_group_options, $mybb->input['displaygroup'], array('id' => 'displaygroup')), 'displaygroup');			

				$form_container->output_row($lang->display_user_group, "", $form->generate_select_box('displaygroup', $display_group_options, $mybb->input['displaygroup'], array('id' => 'displaygroup')), 'displaygroup');


$form_container->end();

$buttons[] = $form->generate_submit_button($lang->alter_usergroups);


$form_container->end();

$buttons[] = $form->generate_submit_button($lang->alter_usergroups);

				$form->output_submit_wrapper($buttons);				

				$form->output_submit_wrapper($buttons);

				$form->end();
$page->output_footer();
break;

				$form->end();
$page->output_footer();
break;

		}
}
}


		}
}
}


if(!$mybb->input['action'])
{
$plugins->run_hooks("admin_user_users_start");

if(!$mybb->input['action'])
{
$plugins->run_hooks("admin_user_users_start");

	



	$page->output_header($lang->browse_users);
echo "<script type=\"text/javascript\" src=\"jscripts/users.js\"></script>";

	$page->output_header($lang->browse_users);
echo "<script type=\"text/javascript\" src=\"jscripts/users.js\"></script>";

	



	$page->output_nav_tabs($sub_tabs, 'browse_users');

	$page->output_nav_tabs($sub_tabs, 'browse_users');

	



	if(isset($mybb->input['search_id']) && $admin_session['data']['user_views'][$mybb->input['search_id']])
{
$admin_view = $admin_session['data']['user_views'][$mybb->input['search_id']];

	if(isset($mybb->input['search_id']) && $admin_session['data']['user_views'][$mybb->input['search_id']])
{
$admin_view = $admin_session['data']['user_views'][$mybb->input['search_id']];

Zeile 3009Zeile 3056
	if($view['title'])
{
$title_string = "view_title_{$view['vid']}";

	if($view['title'])
{
$title_string = "view_title_{$view['vid']}";

		



		if($lang->$title_string)
{
$view['title'] = $lang->$title_string;
}

		if($lang->$title_string)
{
$view['title'] = $lang->$title_string;
}

		



		$view_title .= " (".htmlspecialchars_uni($view['title']).")";
}

// Build the URL to this view
if(!isset($view['url']))

		$view_title .= " (".htmlspecialchars_uni($view['title']).")";
}

// Build the URL to this view
if(!isset($view['url']))

	{

	{

		$view['url'] = "index.php?module=user-users";
}
if(!is_array($view['conditions']))
{
$view['conditions'] = unserialize($view['conditions']);

		$view['url'] = "index.php?module=user-users";
}
if(!is_array($view['conditions']))
{
$view['conditions'] = unserialize($view['conditions']);

	}

	}

	if(!is_array($view['fields']))
{
$view['fields'] = unserialize($view['fields']);

	if(!is_array($view['fields']))
{
$view['fields'] = unserialize($view['fields']);

Zeile 3056Zeile 3103
		}
$view['url'] .= "&amp;search_id=".htmlspecialchars_uni($mybb->input['search_id']);
}

		}
$view['url'] .= "&amp;search_id=".htmlspecialchars_uni($mybb->input['search_id']);
}

	



	if(isset($mybb->input['username']))
{
$view['url'] .= "&amp;username=".urlencode(htmlspecialchars_uni($mybb->input['username']));

	if(isset($mybb->input['username']))
{
$view['url'] .= "&amp;username=".urlencode(htmlspecialchars_uni($mybb->input['username']));

	}


	}


	if(!isset($admin_session['data']['last_users_view']) || $admin_session['data']['last_users_view'] != str_replace("&amp;", "&", $view['url']))
{
update_admin_session('last_users_url', str_replace("&amp;", "&", $view['url']));
}

	if(!isset($admin_session['data']['last_users_view']) || $admin_session['data']['last_users_view'] != str_replace("&amp;", "&", $view['url']))
{
update_admin_session('last_users_url', str_replace("&amp;", "&", $view['url']));
}

	



	if(isset($view['conditions']['referrer'])){
$view['url'] .= "&amp;action=referrers&amp;uid=".htmlspecialchars_uni($view['conditions']['referrer']);

	if(isset($view['conditions']['referrer'])){
$view['url'] .= "&amp;action=referrers&amp;uid=".htmlspecialchars_uni($view['conditions']['referrer']);

	}


	}


	// Do we not have any views?
if(empty($view))
{
return false;
}

	// Do we not have any views?
if(empty($view))
{
return false;
}

	
$table = new Table;


$table = new Table;


// Build header for table based view
if($view['view_type'] != "card")


// Build header for table based view
if($view['view_type'] != "card")

Zeile 3085Zeile 3132
		foreach($view['fields'] as $field)
{
if(!$user_view_fields[$field])

		foreach($view['fields'] as $field)
{
if(!$user_view_fields[$field])

			{

			{

				continue;
}
$view_field = $user_view_fields[$field];

				continue;
}
$view_field = $user_view_fields[$field];

Zeile 3099Zeile 3146
				$field_options['class'] = "align_".$view_field['align'];
}
$table->construct_header($view_field['title'], $field_options);

				$field_options['class'] = "align_".$view_field['align'];
}
$table->construct_header($view_field['title'], $field_options);

		}

		}

		$table->construct_header("<input type=\"checkbox\" name=\"allbox\" onclick=\"inlineModeration.checkAll(this);\" />"); // Create a header for the "select" boxes
}


		$table->construct_header("<input type=\"checkbox\" name=\"allbox\" onclick=\"inlineModeration.checkAll(this);\" />"); // Create a header for the "select" boxes
}


Zeile 3118Zeile 3165
		else if(!empty($view['conditions'][$search_field.'_blank']))
{
$search_sql .= " AND u.{$search_field} != ''";

		else if(!empty($view['conditions'][$search_field.'_blank']))
{
$search_sql .= " AND u.{$search_field} != ''";

		}
}


		}
}


	// EXACT matching fields
$user_exact_fields = array("referrer");
foreach($user_exact_fields as $search_field)

	// EXACT matching fields
$user_exact_fields = array("referrer");
foreach($user_exact_fields as $search_field)

Zeile 3134Zeile 3181
	// LESS THAN or GREATER THAN
$direction_fields = array("postnum");
foreach($direction_fields as $search_field)

	// LESS THAN or GREATER THAN
$direction_fields = array("postnum");
foreach($direction_fields as $search_field)

	{

	{

		$direction_field = $search_field."_dir";

		$direction_field = $search_field."_dir";

		if(!empty($view['conditions'][$search_field]) && ($view['conditions'][$search_field] || $view['conditions'][$search_field] === '0') && $view['conditions'][$direction_field])

		if(isset($view['conditions'][$search_field]) && ($view['conditions'][$search_field] || $view['conditions'][$search_field] === '0') && $view['conditions'][$direction_field])

		{
switch($view['conditions'][$direction_field])
{
case "greater_than":
$direction = ">";

		{
switch($view['conditions'][$direction_field])
{
case "greater_than":
$direction = ">";

					break;

					break;

				case "less_than":
$direction = "<";
break;

				case "less_than":
$direction = "<";
break;

Zeile 3156Zeile 3203
	// Registration searching
$reg_fields = array("regdate");
foreach($reg_fields as $search_field)

	// Registration searching
$reg_fields = array("regdate");
foreach($reg_fields as $search_field)

	{

	{

		if(!empty($view['conditions'][$search_field]) && intval($view['conditions'][$search_field]))
{
$threshold = TIME_NOW - (intval($view['conditions'][$search_field]) * 24 * 60 * 60);

		if(!empty($view['conditions'][$search_field]) && intval($view['conditions'][$search_field]))
{
$threshold = TIME_NOW - (intval($view['conditions'][$search_field]) * 24 * 60 * 60);

Zeile 3176Zeile 3223
			{
$view['conditions'][$search_field] = str_replace("*", "%", $view['conditions'][$search_field]);
$ip_sql = "{$search_field} LIKE '".$db->escape_string($view['conditions'][$search_field])."'";

			{
$view['conditions'][$search_field] = str_replace("*", "%", $view['conditions'][$search_field]);
$ip_sql = "{$search_field} LIKE '".$db->escape_string($view['conditions'][$search_field])."'";

			}

			}

			else
{
$ip_range = fetch_longipv4_range($view['conditions'][$search_field]);

			else
{
$ip_range = fetch_longipv4_range($view['conditions'][$search_field]);

Zeile 3188Zeile 3235
				{
$ip_sql = "long{$search_field} > '{$ip_range[0]}' AND long{$search_field} < '{$ip_range[1]}'";
}

				{
$ip_sql = "long{$search_field} > '{$ip_range[0]}' AND long{$search_field} < '{$ip_range[1]}'";
}

			}

			}

			$search_sql .= " AND {$ip_sql}";
}
}

			$search_sql .= " AND {$ip_sql}";
}
}

Zeile 3223Zeile 3270
		$search_sql .= " AND u.uid IN(".implode(',', $ip_uids).")";
unset($ip_uids);
}

		$search_sql .= " AND u.uid IN(".implode(',', $ip_uids).")";
unset($ip_uids);
}

	



	// Custom Profile Field searching
if($view['custom_profile_fields'])
{

	// Custom Profile Field searching
if($view['custom_profile_fields'])
{

Zeile 3261Zeile 3308
				{
continue;
}

				{
continue;
}

				



				if(strpos($column, '_blank') !== false)
{
$column = str_replace('_blank', '', $column);

				if(strpos($column, '_blank') !== false)
{
$column = str_replace('_blank', '', $column);

Zeile 3298Zeile 3345
		foreach($view['conditions']['usergroup'] as $usergroup)
{
$usergroup = intval($usergroup);

		foreach($view['conditions']['usergroup'] as $usergroup)
{
$usergroup = intval($usergroup);

		



			if(!$usergroup)
{
continue;

			if(!$usergroup)
{
continue;

			}


			}


			switch($db->type)
{
case "pgsql":

			switch($db->type)
{
case "pgsql":

Zeile 3316Zeile 3363
		}

$search_sql .= " AND (u.usergroup IN (".implode(",", array_map('intval', $view['conditions']['usergroup'])).") {$additional_sql})";

		}

$search_sql .= " AND (u.usergroup IN (".implode(",", array_map('intval', $view['conditions']['usergroup'])).") {$additional_sql})";

	}


	}


	// COPPA users only?
if(isset($view['conditions']['coppa']))
{
$search_sql .= " AND u.coppauser=1 AND u.usergroup=5";

	// COPPA users only?
if(isset($view['conditions']['coppa']))
{
$search_sql .= " AND u.coppauser=1 AND u.usergroup=5";

	}

	}


// Extra SQL?
if(isset($view['extra_sql']))


// Extra SQL?
if(isset($view['extra_sql']))

Zeile 3337Zeile 3384
		WHERE {$search_sql}
");
$num_results = $db->fetch_field($query, "num_results");

		WHERE {$search_sql}
");
$num_results = $db->fetch_field($query, "num_results");

	



	// No matching results then return false
if(!$num_results)
{

	// No matching results then return false
if(!$num_results)
{

Zeile 3372Zeile 3419
			$start = 0;
$mybb->input['page'] = 1;
}

			$start = 0;
$mybb->input['page'] = 1;
}

		



		$from_bit = "";
if(isset($mybb->input['from']) && $mybb->input['from'] == "home")
{
$from_bit = "&amp;from=home";
}

		$from_bit = "";
if(isset($mybb->input['from']) && $mybb->input['from'] == "home")
{
$from_bit = "&amp;from=home";
}

		



		switch($view['sortby'])

		switch($view['sortby'])

		{

		{

			case "regdate":
case "lastactive":
case "postnum":

			case "regdate":
case "lastactive":
case "postnum":

Zeile 3389Zeile 3436
				break;
case "numposts":
$view['sortby'] = "postnum";

				break;
case "numposts":
$view['sortby'] = "postnum";

				break;			

				break;

			case "warninglevel":
$view['sortby'] = "warningpoints";
break;
default:
$view['sortby'] = "username";

			case "warninglevel":
$view['sortby'] = "warningpoints";
break;
default:
$view['sortby'] = "username";

		}

		}


if($view['sortorder'] != "desc")
{


if($view['sortorder'] != "desc")
{

Zeile 3403Zeile 3450
		}

$usergroups = $cache->read("usergroups");

		}

$usergroups = $cache->read("usergroups");

		



		// Fetch matching users
$query = $db->query("
SELECT u.*

		// Fetch matching users
$query = $db->query("
SELECT u.*

Zeile 3459Zeile 3506
			$popup->add_item($lang->show_ip_addresses, "index.php?module=user-users&amp;action=ipaddresses&amp;uid={$user['uid']}");
$popup->add_item($lang->show_attachments, "index.php?module=forum-attachments&amp;results=1&amp;username=".urlencode(htmlspecialchars_uni($user['username'])));
$user['view']['controls'] = $popup->fetch();

			$popup->add_item($lang->show_ip_addresses, "index.php?module=user-users&amp;action=ipaddresses&amp;uid={$user['uid']}");
$popup->add_item($lang->show_attachments, "index.php?module=forum-attachments&amp;results=1&amp;username=".urlencode(htmlspecialchars_uni($user['username'])));
$user['view']['controls'] = $popup->fetch();





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

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

			{

			{

				$user['view']['reputation'] = get_reputation($user['reputation']);

				$user['view']['reputation'] = get_reputation($user['reputation']);

			}
else
{

			}
else
{

				$reputation = "-";
}


				$reputation = "-";
}


Zeile 3487Zeile 3534
			if($view['view_type'] == "card")
{
$scaled_avatar = fetch_scaled_avatar($user, 80, 80);

			if($view['view_type'] == "card")
{
$scaled_avatar = fetch_scaled_avatar($user, 80, 80);

			}

			}

			else
{
$scaled_avatar = fetch_scaled_avatar($user, 34, 34);

			else
{
$scaled_avatar = fetch_scaled_avatar($user, 34, 34);

Zeile 3501Zeile 3548
			if($view['view_type'] == "card")
{
$users .= build_user_view_card($user, $view, $i);

			if($view['view_type'] == "card")
{
$users .= build_user_view_card($user, $view, $i);

			}

			}

			else
{
build_user_view_table($user, $view, $table);

			else
{
build_user_view_table($user, $view, $table);

Zeile 3515Zeile 3562
			$table->construct_row();
}
}

			$table->construct_row();
}
}

	



	if(!isset($view['table_id']))
{
$view['table_id'] = "users_list";

	if(!isset($view['table_id']))
{
$view['table_id'] = "users_list";

Zeile 3549Zeile 3596
		$search_class = '';
$search_style = "text-align: right;";
}

		$search_class = '';
$search_style = "text-align: right;";
}

	



	$search_action = $view['url'];
// stop &username= in the query string
if($view_upos = strpos($search_action, '&amp;username='))

	$search_action = $view['url'];
// stop &username= in the query string
if($view_upos = strpos($search_action, '&amp;username='))

Zeile 3585Zeile 3632
			{
search.focus();
return false;

			{
search.focus();
return false;

			}
}

			}
}


var search = document.getElementById('search_keywords');
search.onfocus = function()


var search = document.getElementById('search_keywords');
search.onfocus = function()

Zeile 3607Zeile 3654
		}
// fix the styling used if we have a different default value
if(search.value != '".addcslashes($lang->search_for_user, "'")."')

		}
// fix the styling used if we have a different default value
if(search.value != '".addcslashes($lang->search_for_user, "'")."')

		{

		{

			$(search).removeClassName('search_default');
}
</script>\n";
$built_view .= "</div>\n";

			$(search).removeClassName('search_default');
}
</script>\n";
$built_view .= "</div>\n";

	



	// Autocompletion for usernames
$built_view .= '
<script type="text/javascript" src="../jscripts/autocomplete.js?ver=140"></script>

	// Autocompletion for usernames
$built_view .= '
<script type="text/javascript" src="../jscripts/autocomplete.js?ver=140"></script>

Zeile 3691Zeile 3738
		}

$view_field = $user_view_fields[$field];

		}

$view_field = $user_view_fields[$field];

		



		// Special conditions for avatar
if($field == "avatar")

		// Special conditions for avatar
if($field == "avatar")

		{

		{

			$avatar = $user['view']['avatar'];
}
else if($field == "controls")

			$avatar = $user['view']['avatar'];
}
else if($field == "controls")

Zeile 3709Zeile 3756
				$value = $user['view'][$field];
}
else

				$value = $user['view'][$field];
}
else

			{

			{

				$value = $user[$field];
}

				$value = $user[$field];
}

			



			if($field == "postnum")
{
$value = my_number_format($value);
}

			if($field == "postnum")
{
$value = my_number_format($value);
}

			



			$user_details[] = "<strong>{$view_field['title']}:</strong> {$value}";
}


			$user_details[] = "<strong>{$view_field['title']}:</strong> {$value}";
}


Zeile 3782Zeile 3829
	$table->construct_cell("<input type=\"checkbox\" class=\"checkbox\" name=\"inlinemod_{$user['uid']}\" id=\"inlinemod_{$user['uid']}\" value=\"1\" onclick=\"$('uid_{$user['uid']}').toggleClassName('inline_selected');\" />");

$table->construct_row();

	$table->construct_cell("<input type=\"checkbox\" class=\"checkbox\" name=\"inlinemod_{$user['uid']}\" id=\"inlinemod_{$user['uid']}\" value=\"1\" onclick=\"$('uid_{$user['uid']}').toggleClassName('inline_selected');\" />");

$table->construct_row();

}

}


function fetch_scaled_avatar($user, $max_width=80, $max_height=80)
{


function fetch_scaled_avatar($user, $max_width=80, $max_height=80)
{

Zeile 3807Zeile 3854
function output_custom_profile_fields($fields, $values, &$form_container, &$form, $search=false)
{
global $lang;

function output_custom_profile_fields($fields, $values, &$form_container, &$form, $search=false)
{
global $lang;

	



	if(!is_array($fields))

	if(!is_array($fields))

	{

	{

		return;
}
foreach($fields as $profile_field)

		return;
}
foreach($fields as $profile_field)

Zeile 3823Zeile 3870
		{
case "multiselect":
if(!is_array($values[$field_name]))

		{
case "multiselect":
if(!is_array($values[$field_name]))

				{

				{

					$user_options = explode("\n", $values[$field_name]);

					$user_options = explode("\n", $values[$field_name]);

				}

				}

				else
{
$user_options = $values[$field_name];

				else
{
$user_options = $values[$field_name];

				}


				}


				foreach($user_options as $val)

				foreach($user_options as $val)

				{

				{

					$selected_options[$val] = $val;
}

$select_options = explode("\n", $options);

					$selected_options[$val] = $val;
}

$select_options = explode("\n", $options);

				$options = array();
if($search == true)
{
$select_options[''] = $lang->na;

				$options = array();
if($search == true)
{
$select_options[''] = $lang->na;

				}

				}

				



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

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

Zeile 3951Zeile 3998
	{
$input = $mybb->input;
}

	{
$input = $mybb->input;
}

	



	if(!is_array($input['conditions']))
{
$input['conditions'] = unserialize($input['conditions']);
}

	if(!is_array($input['conditions']))
{
$input['conditions'] = unserialize($input['conditions']);
}

	



	if(!is_array($input['profile_fields']))
{
$input['profile_fields'] = unserialize($input['profile_fields']);
}

	if(!is_array($input['profile_fields']))
{
$input['profile_fields'] = unserialize($input['profile_fields']);
}

	



	if(!is_array($input['fields']))
{
$input['fields'] = unserialize($input['fields']);
}

	if(!is_array($input['fields']))
{
$input['fields'] = unserialize($input['fields']);
}

	



	$form_container = new FormContainer($lang->find_users_where);
$form_container->output_row($lang->username_contains, "", $form->generate_text_box('conditions[username]', $input['conditions']['username'], array('id' => 'username')), 'username');
$form_container->output_row($lang->email_address_contains, "", $form->generate_text_box('conditions[email]', $input['conditions']['email'], array('id' => 'email')), 'email');

	$form_container = new FormContainer($lang->find_users_where);
$form_container->output_row($lang->username_contains, "", $form->generate_text_box('conditions[username]', $input['conditions']['username'], array('id' => 'username')), 'username');
$form_container->output_row($lang->email_address_contains, "", $form->generate_text_box('conditions[email]', $input['conditions']['email'], array('id' => 'email')), 'email');

Zeile 3976Zeile 4023
	while($usergroup = $db->fetch_array($query))
{
$options[$usergroup['gid']] = $usergroup['title'];

	while($usergroup = $db->fetch_array($query))
{
$options[$usergroup['gid']] = $usergroup['title'];

	}

	}


$form_container->output_row($lang->is_member_of_groups, $lang->additional_user_groups_desc, $form->generate_select_box('conditions[usergroup][]', $options, $input['conditions']['usergroup'], array('id' => 'usergroups', 'multiple' => true, 'size' => 5)), 'usergroups');



$form_container->output_row($lang->is_member_of_groups, $lang->additional_user_groups_desc, $form->generate_select_box('conditions[usergroup][]', $options, $input['conditions']['usergroup'], array('id' => 'usergroups', 'multiple' => true, 'size' => 5)), 'usergroups');


Zeile 4000Zeile 4047
	$form_container->output_row($lang->posted_with_ip, $lang->wildcard, $form->generate_text_box('conditions[postip]', $input['conditions']['postip'], array('id' => 'postip')), 'postip');

$form_container->end();

	$form_container->output_row($lang->posted_with_ip, $lang->wildcard, $form->generate_text_box('conditions[postip]', $input['conditions']['postip'], array('id' => 'postip')), 'postip');

$form_container->end();

	



	// Custom profile fields go here
$form_container = new FormContainer($lang->custom_profile_fields_match);

	// Custom profile fields go here
$form_container = new FormContainer($lang->custom_profile_fields_match);

	



	// Fetch custom profile fields
$query = $db->simple_select("profilefields", "*", "", array('order_by' => 'disporder'));
while($profile_field = $db->fetch_array($query))

	// Fetch custom profile fields
$query = $db->simple_select("profilefields", "*", "", array('order_by' => 'disporder'));
while($profile_field = $db->fetch_array($query))

	{		

	{

		if($profile_field['required'] == 1)
{
$profile_fields['required'][] = $profile_field;

		if($profile_field['required'] == 1)
{
$profile_fields['required'][] = $profile_field;

Zeile 4017Zeile 4064
			$profile_fields['optional'][] = $profile_field;
}
}

			$profile_fields['optional'][] = $profile_field;
}
}

	



	output_custom_profile_fields($profile_fields['required'], $input['profile_fields'], $form_container, $form, true);
output_custom_profile_fields($profile_fields['optional'], $input['profile_fields'], $form_container, $form, true);

	output_custom_profile_fields($profile_fields['required'], $input['profile_fields'], $form_container, $form, true);
output_custom_profile_fields($profile_fields['optional'], $input['profile_fields'], $form_container, $form, true);

	



	$form_container->end();

	$form_container->end();

	



	// Autocompletion for usernames
echo '
<script type="text/javascript" src="../jscripts/autocomplete.js?ver=140"></script>

	// Autocompletion for usernames
echo '
<script type="text/javascript" src="../jscripts/autocomplete.js?ver=140"></script>