Vergleich admin/modules/user/banning.php - 1.8.1 - 1.8.36

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

// Fetch banned groups
$query = $db->simple_select("usergroups", "gid,title", "isbannedgroup=1", array('order_by' => 'title'));


// Fetch banned groups
$query = $db->simple_select("usergroups", "gid,title", "isbannedgroup=1", array('order_by' => 'title'));

 
$banned_groups = array();

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

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

Zeile 53Zeile 54
if($mybb->input['action'] == "prune")
{
// User clicked no

if($mybb->input['action'] == "prune")
{
// User clicked no

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

	if($mybb->get_input('no'))

	{
admin_redirect("index.php?module=user-banning");
}

	{
admin_redirect("index.php?module=user-banning");
}

Zeile 99Zeile 100
		$cache->update_reportedcontent();

// Log admin action

		$cache->update_reportedcontent();

// Log admin action

		log_admin_action($mybb->input['uid'], $user['username']);

		log_admin_action($user['uid'], $user['username']);


flash_message($lang->success_pruned, 'success');
admin_redirect("index.php?module=user-banning");


flash_message($lang->success_pruned, 'success');
admin_redirect("index.php?module=user-banning");

Zeile 113Zeile 114
if($mybb->input['action'] == "lift")
{
// User clicked no

if($mybb->input['action'] == "lift")
{
// User clicked no

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

	if($mybb->get_input('no'))

	{
admin_redirect("index.php?module=user-banning");
}

	{
admin_redirect("index.php?module=user-banning");
}

Zeile 141Zeile 142
	{
$updated_group = array(
'usergroup' => $ban['oldgroup'],

	{
$updated_group = array(
'usergroup' => $ban['oldgroup'],

			'additionalgroups' => $ban['oldadditionalgroups'],

			'additionalgroups' => $db->escape_string($ban['oldadditionalgroups']),

			'displaygroup' => $ban['olddisplaygroup']
);
$db->delete_query("banned", "uid='{$ban['uid']}'");

			'displaygroup' => $ban['olddisplaygroup']
);
$db->delete_query("banned", "uid='{$ban['uid']}'");

Zeile 150Zeile 151

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



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


		$cache->update_banned();

 
		$cache->update_moderators();

// Log admin action

		$cache->update_moderators();

// Log admin action

		log_admin_action($mybb->input['uid'], $user['username']);

		log_admin_action($ban['uid'], $user['username']);


flash_message($lang->success_ban_lifted, 'success');
admin_redirect("index.php?module=user-banning");


flash_message($lang->success_ban_lifted, 'success');
admin_redirect("index.php?module=user-banning");

Zeile 170Zeile 170
	$query = $db->simple_select("banned", "*", "uid='{$mybb->input['uid']}'");
$ban = $db->fetch_array($query);


	$query = $db->simple_select("banned", "*", "uid='{$mybb->input['uid']}'");
$ban = $db->fetch_array($query);


	$user = get_user($ban['uid']);

if(!$ban['uid'])

	if(empty($ban['uid']))



	{
flash_message($lang->error_invalid_ban, 'error');
admin_redirect("index.php?module=user-banning");
}

	{
flash_message($lang->error_invalid_ban, 'error');
admin_redirect("index.php?module=user-banning");
}

 

$user = get_user($ban['uid']);


$plugins->run_hooks("admin_user_banning_edit");



$plugins->run_hooks("admin_user_banning_edit");


Zeile 219Zeile 219
			}

$update_array = array(

			}

$update_array = array(

				'gid' => (int)$mybb->input['usergroup'],

				'gid' => $mybb->get_input('usergroup', MyBB::INPUT_INT),

				'dateline' => TIME_NOW,
'bantime' => $db->escape_string($mybb->input['bantime']),
'lifted' => $db->escape_string($lifted),

				'dateline' => TIME_NOW,
'bantime' => $db->escape_string($mybb->input['bantime']),
'lifted' => $db->escape_string($lifted),

Zeile 230Zeile 230

// Move the user to the banned group
$update_array = array(


// Move the user to the banned group
$update_array = array(

				'usergroup' => (int)$mybb->input['usergroup'],

				'usergroup' => $mybb->get_input('usergroup', MyBB::INPUT_INT),

				'displaygroup' => 0,
'additionalgroups' => '',
);
$db->update_query('users', $update_array, "uid = {$ban['uid']}");

$plugins->run_hooks("admin_user_banning_edit_commit");

				'displaygroup' => 0,
'additionalgroups' => '',
);
$db->update_query('users', $update_array, "uid = {$ban['uid']}");

$plugins->run_hooks("admin_user_banning_edit_commit");


$cache->update_banned();

 

// Log admin action


// Log admin action

			log_admin_action($mybb->input['uid'], $user['username']);

			log_admin_action($ban['uid'], $user['username']);


flash_message($lang->success_ban_updated, 'success');
admin_redirect("index.php?module=user-banning");
}


flash_message($lang->success_ban_updated, 'success');
admin_redirect("index.php?module=user-banning");
}

	}

	}

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

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





	$sub_tabs = array();
$sub_tabs['edit'] = array(
'title' => $lang->edit_ban,

	$sub_tabs = array();
$sub_tabs['edit'] = array(
'title' => $lang->edit_ban,

Zeile 264Zeile 262
	}
else
{

	}
else
{

		$mybb->input = array_merge($mybb->input, $ban);














		$mybb->input = array_merge($mybb->input, $ban);
}

if(!empty($ban['gid']))
{
$mybb->input['usergroup'] = $ban['gid'];
}
else if(!empty($user['usergroup']))
{
$mybb->input['usergroup'] = $user['usergroup'];
}
else
{
$mybb->input['usergroup'] = 0;

	}

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

	}

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

	$form_container->output_row($lang->ban_username, "", $user['username']);

	$form_container->output_row($lang->ban_username, "", htmlspecialchars_uni($user['username']));

	$form_container->output_row($lang->ban_reason, "", $form->generate_text_area('reason', $mybb->input['reason'], array('id' => 'reason', 'maxlength' => '255')), 'reason');
if(count($banned_groups) > 1)
{

	$form_container->output_row($lang->ban_reason, "", $form->generate_text_area('reason', $mybb->input['reason'], array('id' => 'reason', 'maxlength' => '255')), 'reason');
if(count($banned_groups) > 1)
{

Zeile 285Zeile 296
	{
if($time != '---')
{

	{
if($time != '---')
{

			$friendly_time = my_date("D, jS M Y @ g:ia", ban_date2timestamp($time));

			$friendly_time = my_date("D, jS M Y @ {$mybb->settings['timeformat']}", ban_date2timestamp($time));

			$period = "{$period} ({$friendly_time})";
}
$length_list[$time] = $period;

			$period = "{$period} ({$friendly_time})";
}
$length_list[$time] = $period;

Zeile 314Zeile 325
		);

$user = get_user_by_username($mybb->input['username'], $options);

		);

$user = get_user_by_username($mybb->input['username'], $options);

		



		// Are we searching a user?

		// Are we searching a user?

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

		if(is_array($user) && isset($mybb->input['search']))
{

			$where_sql = 'uid=\''.(int)$user['uid'].'\'';
$where_sql_full = 'WHERE b.uid=\''.(int)$user['uid'].'\'';
}
else
{

			$where_sql = 'uid=\''.(int)$user['uid'].'\'';
$where_sql_full = 'WHERE b.uid=\''.(int)$user['uid'].'\'';
}
else
{

			if(!$user['uid'])

			if(empty($user['uid']))

			{
$errors[] = $lang->error_invalid_username;
}
// Is the user we're trying to ban a super admin and we're not?
else if(is_super_admin($user['uid']) && !is_super_admin($mybb->user['uid']))

			{
$errors[] = $lang->error_invalid_username;
}
// Is the user we're trying to ban a super admin and we're not?
else if(is_super_admin($user['uid']) && !is_super_admin($mybb->user['uid']))

			{

			{

				$errors[] = $lang->error_no_perm_to_ban;
}
else
{
$query = $db->simple_select("banned", "uid", "uid='{$user['uid']}'");
if($db->fetch_field($query, "uid"))

				$errors[] = $lang->error_no_perm_to_ban;
}
else
{
$query = $db->simple_select("banned", "uid", "uid='{$user['uid']}'");
if($db->fetch_field($query, "uid"))

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


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


				// Get PRIMARY usergroup information
$usergroups = $cache->read("usergroups");
if(!empty($usergroups[$user['usergroup']]) && $usergroups[$user['usergroup']]['isbannedgroup'] == 1)
{
$errors[] = $lang->error_already_banned;

				// Get PRIMARY usergroup information
$usergroups = $cache->read("usergroups");
if(!empty($usergroups[$user['usergroup']]) && $usergroups[$user['usergroup']]['isbannedgroup'] == 1)
{
$errors[] = $lang->error_already_banned;

				}
}

				}






			if($user['uid'] == $mybb->user['uid'])
{
$errors[] = $lang->error_ban_self;


				if($user['uid'] == $mybb->user['uid'])
{
$errors[] = $lang->error_ban_self;
}

			}

// No errors? Insert

			}

// No errors? Insert

Zeile 376Zeile 387

$insert_array = array(
'uid' => $user['uid'],


$insert_array = array(
'uid' => $user['uid'],

					'gid' => (int)$mybb->input['usergroup'],

					'gid' => $mybb->get_input('usergroup', MyBB::INPUT_INT),

					'oldgroup' => $user['usergroup'],

					'oldgroup' => $user['usergroup'],

					'oldadditionalgroups' => $user['additionalgroups'],

					'oldadditionalgroups' => $db->escape_string($user['additionalgroups']),

					'olddisplaygroup' => $user['displaygroup'],
'admin' => (int)$mybb->user['uid'],
'dateline' => TIME_NOW,

					'olddisplaygroup' => $user['displaygroup'],
'admin' => (int)$mybb->user['uid'],
'dateline' => TIME_NOW,

Zeile 390Zeile 401

// Move the user to the banned group
$update_array = array(


// Move the user to the banned group
$update_array = array(

					'usergroup' => (int)$mybb->input['usergroup'],

					'usergroup' => $mybb->get_input('usergroup', MyBB::INPUT_INT),

					'displaygroup' => 0,
'additionalgroups' => '',
);

					'displaygroup' => 0,
'additionalgroups' => '',
);

Zeile 401Zeile 412
				$plugins->run_hooks("admin_user_banning_start_commit");

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

				$plugins->run_hooks("admin_user_banning_start_commit");

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


$cache->update_banned();

 

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


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

Zeile 410Zeile 419
				flash_message($lang->success_banned, 'success');
admin_redirect("index.php?module=user-banning");
}

				flash_message($lang->success_banned, 'success');
admin_redirect("index.php?module=user-banning");
}

		}
}


		}
}


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

$page->output_nav_tabs($sub_tabs, "bans");

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

$page->output_nav_tabs($sub_tabs, "bans");





	$query = $db->simple_select("banned", "COUNT(*) AS ban_count", $where_sql);
$ban_count = $db->fetch_field($query, "ban_count");

$per_page = 20;


	$query = $db->simple_select("banned", "COUNT(*) AS ban_count", $where_sql);
$ban_count = $db->fetch_field($query, "ban_count");

$per_page = 20;


 
	$mybb->input['page'] = $mybb->get_input('page', MyBB::INPUT_INT);

	if($mybb->input['page'] > 0)
{

	if($mybb->input['page'] > 0)
{

		$current_page = $mybb->get_input('page', 1);

		$current_page = $mybb->input['page'];

		$start = ($current_page-1)*$per_page;
$pages = $ban_count / $per_page;
$pages = ceil($pages);

		$start = ($current_page-1)*$per_page;
$pages = $ban_count / $per_page;
$pages = ceil($pages);

Zeile 433Zeile 443
			$start = 0;
$current_page = 1;
}

			$start = 0;
$current_page = 1;
}

	}

	}

	else
{
$start = 0;
$current_page = 1;

	else
{
$start = 0;
$current_page = 1;

	}


	}


	$pagination = draw_admin_pagination($current_page, $per_page, $ban_count, "index.php?module=user-banning&page={page}");

	$pagination = draw_admin_pagination($current_page, $per_page, $ban_count, "index.php?module=user-banning&page={page}");

 

$form = new Form("index.php?module=user-banning", "post");
if($errors)
{
$page->output_inline_error($errors);
}

$mybb->input['username'] = $mybb->get_input('username');
$mybb->input['reason'] = $mybb->get_input('reason');
$mybb->input['bantime'] = $mybb->get_input('bantime');

if(isset($mybb->input['uid']) && empty($mybb->input['username']))
{
$user = get_user($mybb->input['uid']);
$mybb->input['username'] = $user['username'];
}

if(empty($mybb->input['usergroup']))
{
if(!empty($mybb->settings['purgespammerbangroup']))
{
$mybb->input['usergroup'] = $mybb->settings['purgespammerbangroup'];
}
else if(count($banned_groups))
{
$group = array_keys($banned_groups);
$mybb->input['usergroup'] = $group[0];
}
else
{
$mybb->input['usergroup'] = 0;
}
}

$form_container = new FormContainer($lang->ban_a_user);
$form_container->output_row($lang->ban_username, $lang->autocomplete_enabled, $form->generate_text_box('username', $mybb->input['username'], array('id' => 'username')), 'username');
$form_container->output_row($lang->ban_reason, "", $form->generate_text_area('reason', $mybb->input['reason'], array('id' => 'reason', 'maxlength' => '255')), 'reason');
if(count($banned_groups) > 1)
{
$form_container->output_row($lang->ban_group, $lang->ban_group_desc, $form->generate_select_box('usergroup', $banned_groups, $mybb->input['usergroup'], array('id' => 'usergroup')), 'usergroup');
}
foreach($ban_times as $time => $period)
{
if($time != "---")
{
$friendly_time = my_date("D, jS M Y @ {$mybb->settings['timeformat']}", ban_date2timestamp($time));
$period = "{$period} ({$friendly_time})";
}
$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->end();

// Autocompletion for usernames
echo '
<link rel="stylesheet" href="../jscripts/select2/select2.css">
<script type="text/javascript" src="../jscripts/select2/select2.min.js?ver=1804"></script>
<script type="text/javascript">
<!--
$("#username").select2({
placeholder: "'.$lang->search_for_a_user.'",
minimumInputLength: 2,
multiple: false,
ajax: { // instead of writing the function to execute the request we use Select2\'s convenient helper
url: "../xmlhttp.php?action=get_users",
dataType: \'json\',
data: function (term, page) {
return {
query: term, // search term
};
},
results: function (data, page) { // parse the results into the format expected by Select2.
// since we are using custom formatting functions we do not need to alter remote JSON data
return {results: data};
}
},
initSelection: function(element, callback) {
var query = $(element).val();
if (query !== "") {
$.ajax("../xmlhttp.php?action=get_users&getone=1", {
data: {
query: query
},
dataType: "json"
}).done(function(data) { callback(data); });
}
},
});

$(\'[for=username]\').on(\'click\', function(){
$("#username").select2(\'open\');
return false;
});
// -->
</script>';

$buttons[] = $form->generate_submit_button($lang->ban_user);
$buttons[] = $form->generate_submit_button($lang->search_for_a_user, array('name' => 'search'));
$form->output_submit_wrapper($buttons);
$form->end();

echo '<br />';


$table = new Table;
$table->construct_header($lang->user);


$table = new Table;
$table->construct_header($lang->user);

Zeile 463Zeile 576
	// Get the banned users
while($ban = $db->fetch_array($query))
{

	// Get the banned users
while($ban = $db->fetch_array($query))
{

		$profile_link = build_profile_link($ban['username'], $ban['uid'], "_blank");

		$profile_link = build_profile_link(htmlspecialchars_uni($ban['username']), $ban['uid'], "_blank");

		$ban_date = my_date($mybb->settings['dateformat'], $ban['dateline']);
if($ban['lifted'] == 'perm' || $ban['lifted'] == '' || $ban['bantime'] == 'perm' || $ban['bantime'] == '---')
{

		$ban_date = my_date($mybb->settings['dateformat'], $ban['dateline']);
if($ban['lifted'] == 'perm' || $ban['lifted'] == '' || $ban['bantime'] == 'perm' || $ban['bantime'] == '---')
{

Zeile 489Zeile 602
			{
$time_remaining = "<span style=\"color: green;\">{$time_remaining}</span>";
}

			{
$time_remaining = "<span style=\"color: green;\">{$time_remaining}</span>";
}

			else
{
$time_remaining = "{$time_remaining}";
}






			$lifts_on = my_date($mybb->settings['dateformat'], $ban['lifted']);

			$lifts_on = my_date($mybb->settings['dateformat'], $ban['lifted']);

		}

		}


if(!$ban['adminuser'])
{
if($ban['admin'] == 0)
{


if(!$ban['adminuser'])
{
if($ban['admin'] == 0)
{

				$ban['adminuser'] = "MyBB System";

				$ban['adminuser'] = $lang->mybb_engine;

			}
else
{
$ban['adminuser'] = $ban['admin'];
}
}

			}
else
{
$ban['adminuser'] = $ban['admin'];
}
}





		$table->construct_cell($lang->sprintf($lang->bannedby_x_on_x, $profile_link, htmlspecialchars_uni($ban['adminuser']), $ban_date, $ban_period));
$table->construct_cell($lifts_on, array("class" => "align_center"));
$table->construct_cell($time_remaining, array("class" => "align_center"));
$table->construct_cell("<a href=\"index.php?module=user-banning&amp;action=edit&amp;uid={$ban['uid']}\">{$lang->edit}</a>", array("class" => "align_center"));
$table->construct_cell("<a href=\"index.php?module=user-banning&amp;action=lift&amp;uid={$ban['uid']}&amp;my_post_key={$mybb->post_code}\" onclick=\"return AdminCP.deleteConfirmation(this, '{$lang->confirm_lift_ban}');\">{$lang->lift}</a>", array("class" => "align_center"));
$table->construct_cell("<a href=\"index.php?module=user-banning&amp;action=prune&amp;uid={$ban['uid']}&amp;my_post_key={$mybb->post_code}\" onclick=\"return AdminCP.deleteConfirmation(this, '{$lang->confirm_prune}');\">{$lang->prune_threads_and_posts}</a>", array("class" => "align_center"));

		$table->construct_cell($lang->sprintf($lang->bannedby_x_on_x, $profile_link, htmlspecialchars_uni($ban['adminuser']), $ban_date, $ban_period));
$table->construct_cell($lifts_on, array("class" => "align_center"));
$table->construct_cell($time_remaining, array("class" => "align_center"));
$table->construct_cell("<a href=\"index.php?module=user-banning&amp;action=edit&amp;uid={$ban['uid']}\">{$lang->edit}</a>", array("class" => "align_center"));
$table->construct_cell("<a href=\"index.php?module=user-banning&amp;action=lift&amp;uid={$ban['uid']}&amp;my_post_key={$mybb->post_code}\" onclick=\"return AdminCP.deleteConfirmation(this, '{$lang->confirm_lift_ban}');\">{$lang->lift}</a>", array("class" => "align_center"));
$table->construct_cell("<a href=\"index.php?module=user-banning&amp;action=prune&amp;uid={$ban['uid']}&amp;my_post_key={$mybb->post_code}\" onclick=\"return AdminCP.deleteConfirmation(this, '{$lang->confirm_prune}');\">{$lang->prune_threads_and_posts}</a>", array("class" => "align_center"));

		$table->construct_row();
}

		$table->construct_row();
}


if($table->num_rows() == 0)
{


if($table->num_rows() == 0)
{

Zeile 524Zeile 634
	}
$table->output($lang->banned_accounts);
echo $pagination;

	}
$table->output($lang->banned_accounts);
echo $pagination;


$form = new Form("index.php?module=user-banning", "post");
if($errors)
{
$page->output_inline_error($errors);
}

if($mybb->input['uid'] && !$mybb->input['username'])
{
$user = get_user($mybb->input['uid']);
$mybb->input['username'] = $user['username'];
}

$form_container = new FormContainer($lang->ban_a_user);
$form_container->output_row($lang->ban_username, $lang->autocomplete_enabled, $form->generate_text_box('username', $mybb->input['username'], array('id' => 'username')), 'username');
$form_container->output_row($lang->ban_reason, "", $form->generate_text_area('reason', $mybb->input['reason'], array('id' => 'reason', 'maxlength' => '255')), 'reason');
if(count($banned_groups) > 1)
{
$form_container->output_row($lang->ban_group, $lang->add_ban_group_desc, $form->generate_select_box('usergroup', $banned_groups, $mybb->input['usergroup'], array('id' => 'usergroup')), 'usergroup');
}
foreach($ban_times as $time => $period)
{
if($time != "---")
{
$friendly_time = my_date("D, jS M Y @ g:ia", ban_date2timestamp($time));
$period = "{$period} ({$friendly_time})";
}
$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->end();

// Autocompletion for usernames
echo '
<link rel="stylesheet" href="../jscripts/select2/select2.css">
<script type="text/javascript" src="../jscripts/select2/select2.min.js"></script>
<script type="text/javascript">
<!--
$("#username").select2({
placeholder: "Search for a user",
minimumInputLength: 3,
maximumSelectionSize: 3,
multiple: false,
ajax: { // instead of writing the function to execute the request we use Select2\'s convenient helper
url: "../xmlhttp.php?action=get_users",
dataType: \'json\',
data: function (term, page) {
return {
query: term, // search term
};
},
results: function (data, page) { // parse the results into the format expected by Select2.
// since we are using custom formatting functions we do not need to alter remote JSON data
return {results: data};
}
},
initSelection: function(element, callback) {
var query = $(element).val();
if (query !== "") {
$.ajax("../xmlhttp.php?action=get_users&getone=1", {
data: {
query: query
},
dataType: "json"
}).done(function(data) { callback(data); });
}
},
});
// -->
</script>';

$buttons[] = $form->generate_submit_button($lang->ban_user);
$buttons[] = $form->generate_submit_button($lang->search_user, array('name' => 'search'));
$form->output_submit_wrapper($buttons);
$form->end();

 

$page->output_footer();
}


$page->output_footer();
}