Vergleich modcp.php - 1.8.0 - 1.8.30

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 11Zeile 11
define("IN_MYBB", 1);
define('THIS_SCRIPT', 'modcp.php');


define("IN_MYBB", 1);
define('THIS_SCRIPT', 'modcp.php');


$templatelist = "modcp_reports,modcp_reports_report,modcp_reports_multipage,modcp_reports_allreport,modcp_reports_allreports,modcp_modlogs_multipage,modcp_announcements_delete,modcp_announcements_edit,modcp_awaitingmoderation,modcp_banuser_bangroups_hidden";
$templatelist .= ",modcp_reports_allnoreports,modcp_reports_noreports,modcp_banning,modcp_banning_ban,modcp_announcements_announcement_global,modcp_no_announcements_forum,modcp_modqueue_threads_thread,modcp_awaitingthreads,modcp_banuser_bangroups";
$templatelist .= ",modcp_banning_nobanned,modcp_modqueue_threads_empty,modcp_modqueue_masscontrols,modcp_modqueue_threads,modcp_modqueue_posts_post,modcp_modqueue_posts_empty,modcp_awaitingposts,modcp_nav_editprofile";

$templatelist = "modcp_reports,modcp_reports_report,modcp_reports_selectall,modcp_reports_multipage,modcp_reports_allreport,modcp_reports_allreports,modcp_modlogs_multipage,modcp_announcements_delete,modcp_announcements_edit,modcp_awaitingmoderation";
$templatelist .= ",modcp_reports_allnoreports,modcp_reports_noreports,modcp_banning,modcp_banning_ban,modcp_announcements_announcement_global,modcp_no_announcements_forum,modcp_modqueue_threads_thread,modcp_awaitingthreads,preview";
$templatelist .= ",modcp_banning_nobanned,modcp_modqueue_threads_empty,modcp_modqueue_masscontrols,modcp_modqueue_threads,modcp_modqueue_posts_post,modcp_modqueue_posts_empty,modcp_awaitingposts,modcp_nav_editprofile,modcp_nav_banning";

$templatelist .= ",modcp_nav,modcp_modlogs_noresults,modcp_modlogs_nologs,modcp,modcp_modqueue_posts,modcp_modqueue_attachments_attachment,modcp_modqueue_attachments_empty,modcp_modqueue_attachments,modcp_editprofile_suspensions_info";
$templatelist .= ",modcp_no_announcements_global,modcp_announcements_global,modcp_announcements_forum,modcp_announcements,modcp_editprofile_select_option,modcp_editprofile_select,modcp_finduser_noresults, modcp_nav_forums_posts";

$templatelist .= ",modcp_nav,modcp_modlogs_noresults,modcp_modlogs_nologs,modcp,modcp_modqueue_posts,modcp_modqueue_attachments_attachment,modcp_modqueue_attachments_empty,modcp_modqueue_attachments,modcp_editprofile_suspensions_info";
$templatelist .= ",modcp_no_announcements_global,modcp_announcements_global,modcp_announcements_forum,modcp_announcements,modcp_editprofile_select_option,modcp_editprofile_select,modcp_finduser_noresults, modcp_nav_forums_posts";

$templatelist .= ",codebuttons,smilieinsert,modcp_announcements_new,modcp_modqueue_empty,forumjump_bit,forumjump_special,modcp_warninglogs_warning_revoked,modcp_warninglogs_warning,modcp_ipsearch_result,modcp_nav_modqueue,modcp_banuser_liftlist";

$templatelist .= ",codebuttons,modcp_announcements_new,modcp_modqueue_empty,forumjump_bit,forumjump_special,modcp_warninglogs_warning_revoked,modcp_warninglogs_warning,modcp_ipsearch_result,modcp_nav_modqueue,modcp_banuser_liftlist";

$templatelist .= ",modcp_modlogs,modcp_finduser_user,modcp_finduser,usercp_profile_customfield,usercp_profile_profilefields,modcp_ipsearch_noresults,modcp_ipsearch_results,modcp_ipsearch_misc_info,modcp_nav_announcements,modcp_modqueue_post_link";
$templatelist .= ",modcp_editprofile,modcp_ipsearch,modcp_banuser_addusername,modcp_banuser,modcp_warninglogs_nologs,modcp_banuser_editusername,modcp_lastattachment,modcp_lastpost,modcp_lastthread,modcp_nobanned,modcp_modqueue_thread_link";

$templatelist .= ",modcp_modlogs,modcp_finduser_user,modcp_finduser,usercp_profile_customfield,usercp_profile_profilefields,modcp_ipsearch_noresults,modcp_ipsearch_results,modcp_ipsearch_misc_info,modcp_nav_announcements,modcp_modqueue_post_link";
$templatelist .= ",modcp_editprofile,modcp_ipsearch,modcp_banuser_addusername,modcp_banuser,modcp_warninglogs_nologs,modcp_banuser_editusername,modcp_lastattachment,modcp_lastpost,modcp_lastthread,modcp_nobanned,modcp_modqueue_thread_link";

$templatelist .= ",modcp_warninglogs,modcp_modlogs_result,modcp_editprofile_signature,forumjump_advanced,smilieinsert_getmore,smilieinsert_smilie,smilieinsert_smilie_empty,modcp_announcements_forum_nomod,modcp_announcements_announcement";
$templatelist .= ",multipage,multipage_end,multipage_jump_page,multipage_nextpage,multipage_page,multipage_page_current,multipage_page_link_current,multipage_prevpage,multipage_start,modcp_editprofile_away,modcp_awaitingattachments,modcp_modqueue_attachment_link,modcp_latestfivemodactions,modcp_nav_banning";
$templatelist .= ",postbit_online,postbit_avatar,postbit_find,postbit_pm,postbit_email,postbit_author_user,announcement_edit,announcement_quickdelete,postbit,preview,postmodcp_nav_announcements,modcp_nav_reportcenter,modcp_nav_modlogs";
$templatelist .= ",modcp_awaitingmoderation_none,modcp_banning_edit,modcp_banuser_bangroups_group,modcp_banuser_lift,modcp_modlogs_result_announcement,modcp_modlogs_result_forum,modcp_modlogs_result_post,modcp_modlogs_result_thread,modcp_modlogs_user";

$templatelist .= ",modcp_warninglogs,modcp_modlogs_result,modcp_editprofile_signature,forumjump_advanced,modcp_announcements_forum_nomod,modcp_announcements_announcement,usercp_profile_away,modcp_modlogs_user,modcp_editprofile_away";
$templatelist .= ",multipage,multipage_end,multipage_jump_page,multipage_nextpage,multipage_page,multipage_page_current,multipage_page_link_current,multipage_prevpage,multipage_start,modcp_awaitingattachments,modcp_modqueue_attachment_link";
$templatelist .= ",postbit_groupimage,postbit_userstar,postbit_online,postbit_offline,postbit_away,postbit_avatar,postbit_find,postbit_pm,postbit_email,postbit_www,postbit_author_user,announcement_edit,announcement_quickdelete";
$templatelist .= ",modcp_awaitingmoderation_none,modcp_banning_edit,modcp_banuser_bangroups_group,modcp_banuser_lift,modcp_modlogs_result_announcement,modcp_modlogs_result_forum,modcp_modlogs_result_post,modcp_modlogs_result_thread";

$templatelist .= ",modcp_nav_warninglogs,modcp_nav_ipsearch,modcp_nav_users,modcp_announcements_day,modcp_announcements_month_start,modcp_announcements_month_end,modcp_announcements_announcement_expired,modcp_announcements_announcement_active";

$templatelist .= ",modcp_nav_warninglogs,modcp_nav_ipsearch,modcp_nav_users,modcp_announcements_day,modcp_announcements_month_start,modcp_announcements_month_end,modcp_announcements_announcement_expired,modcp_announcements_announcement_active";

$templatelist .= ",modcp_modqueue_link_forum,modcp_modqueue_link_thread,usercp_profile_day,usercp_profile_away,modcp_ipsearch_result_regip,modcp_ipsearch_result_lastip,modcp_ipsearch_result_post,modcp_ipsearch_results_information,usercp_profile_profilefields_text";
$templatelist .= ",usercp_profile_profilefields_select_option,usercp_profile_profilefields_multiselect,usercp_profile_profilefields_select,usercp_profile_profilefields_textarea,usercp_profile_profilefields_radio,usercp_profile_profilefields_checkbox";


$templatelist .= ",modcp_modqueue_link_forum,modcp_modqueue_link_thread,usercp_profile_day,modcp_ipsearch_result_regip,modcp_ipsearch_result_lastip,modcp_ipsearch_result_post,modcp_ipsearch_results_information,usercp_profile_profilefields_text";
$templatelist .= ",usercp_profile_profilefields_select_option,usercp_profile_profilefields_multiselect,usercp_profile_profilefields_select,usercp_profile_profilefields_textarea,usercp_profile_profilefields_radio,postbit";
$templatelist .= ",modcp_banning_remaining,postmodcp_nav_announcements,modcp_nav_reportcenter,modcp_nav_modlogs,modcp_latestfivemodactions,modcp_banuser_bangroups_hidden,modcp_banuser_bangroups,usercp_profile_profilefields_checkbox";


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


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

Zeile 51Zeile 52
	$mybb->settings['threadsperpage'] = 20;
}


	$mybb->settings['threadsperpage'] = 20;
}


$errors = '';


$tflist = $flist = $tflist_queue_threads = $flist_queue_threads = $tflist_queue_posts = $flist_queue_posts = $tflist_queue_attach =
$flist_queue_attach = $wflist_reports = $tflist_reports = $flist_reports = $tflist_modlog = $flist_modlog = $errors = '';

// SQL for fetching items only related to forums this user moderates
$moderated_forums = array();

// SQL for fetching items only related to forums this user moderates
$moderated_forums = array();

 
$numannouncements = $nummodqueuethreads = $nummodqueueposts = $nummodqueueattach = $numreportedposts = $nummodlogs = 0;

if($mybb->usergroup['issupermod'] != 1)
{

if($mybb->usergroup['issupermod'] != 1)
{

	$query = $db->simple_select("moderators", "*", "(id='{$mybb->user['uid']}' AND isgroup = '0') OR (id='{$mybb->user['usergroup']}' AND isgroup = '1')");











	$query = $db->simple_select("moderators", "*", "(id='{$mybb->user['uid']}' AND isgroup = '0') OR (id IN ({$mybb->usergroup['all_usergroups']}) AND isgroup = '1')");
while($forum = $db->fetch_array($query))
{
$moderated_forums[] = $forum['fid'];
$children = get_child_list($forum['fid']);
if(is_array($children))
{
$moderated_forums = array_merge($moderated_forums, $children);
}
}
$moderated_forums = array_unique($moderated_forums);





	$flist = $flist_queue_threads = $flist_queue_posts = $flist_queue_attach = $flist_reports = $flist_modlog = null;

 
	$numannouncements = $nummodqueuethreads = $nummodqueueposts = $nummodqueueattach = $numreportedposts = $nummodlogs = 0;

	$numannouncements = $nummodqueuethreads = $nummodqueueposts = $nummodqueueattach = $numreportedposts = $nummodlogs = 0;

	while($forum = $db->fetch_array($query))

	foreach($moderated_forums as $moderated_forum)

	{
// For Announcements

	{
// For Announcements

		if($forum['canmanageannouncements'] == 1)
{

		if(is_moderator($moderated_forum, 'canmanageannouncements'))
{

			++$numannouncements;
}

// For the Mod Queues

			++$numannouncements;
}

// For the Mod Queues

		if($forum['canapproveunapprovethreads'] == 1)
{
$flist_queue_threads .= ",'{$forum['fid']}'";

$children = get_child_list($forum['fid']);
if(!empty($children))
{
$flist_queue_threads .= ",'".implode("','", $children)."'";
}

		if(is_moderator($moderated_forum, 'canapproveunapprovethreads'))
{
$flist_queue_threads .= ",'{$moderated_forum}'";







			++$nummodqueuethreads;

			++$nummodqueuethreads;

		}

if($forum['canapproveunapproveposts'] == 1)
{
$flist_queue_posts .= ",'{$forum['fid']}'";

$children = get_child_list($forum['fid']);
if(!empty($children))
{
$flist_queue_posts .= ",'".implode("','", $children)."'";
}

		}

if(is_moderator($moderated_forum, 'canapproveunapproveposts'))
{
$flist_queue_posts .= ",'{$moderated_forum}'";







			++$nummodqueueposts;
}

			++$nummodqueueposts;
}


if($forum['canapproveunapproveattachs'] == 1)


if(is_moderator($moderated_forum, 'canapproveunapproveattachs'))

		{

		{

			$flist_queue_attach .= ",'{$forum['fid']}'";

$children = get_child_list($forum['fid']);
if(!empty($children))
{
$flist_queue_attach .= ",'".implode("','", $children)."'";
}

			$flist_queue_attach .= ",'{$moderated_forum}'";







			++$nummodqueueattach;
}

// For Reported posts

			++$nummodqueueattach;
}

// For Reported posts

		if($forum['canmanagereportedposts'] == 1)

		if(is_moderator($moderated_forum, 'canmanagereportedposts'))

		{

		{

			$flist_reports .= ",'{$forum['fid']}'";

$children = get_child_list($forum['fid']);
if(!empty($children))
{
$flist_reports .= ",'".implode("','", $children)."'";
}

			$flist_reports .= ",'{$moderated_forum}'";







			++$numreportedposts;
}

// For the Mod Log

			++$numreportedposts;
}

// For the Mod Log

		if($forum['canviewmodlog'] == 1)

		if(is_moderator($moderated_forum, 'canviewmodlog'))

		{

		{

			$flist_modlog .= ",'{$forum['fid']}'";

$children = get_child_list($forum['fid']);
if(!empty($children))
{
$flist_modlog .= ",'".implode("','", $children)."'";
}

			$flist_modlog .= ",'{$moderated_forum}'";







			++$nummodlogs;

			++$nummodlogs;

		}

$flist .= ",'{$forum['fid']}'";

		}







		$children = get_child_list($forum['fid']);
if(!empty($children))
{
$flist .= ",'".implode("','", $children)."'";
}
$moderated_forums[] = $forum['fid'];

		$flist .= ",'{$moderated_forum}'";






	}
if($flist_queue_threads)
{

	}
if($flist_queue_threads)
{

Zeile 151Zeile 126
		$flist_queue_posts = " AND fid IN (0{$flist_queue_posts})";
}
if($flist_queue_attach)

		$flist_queue_posts = " AND fid IN (0{$flist_queue_posts})";
}
if($flist_queue_attach)

	{

	{

		$tflist_queue_attach = " AND t.fid IN (0{$flist_queue_attach})";
$flist_queue_attach = " AND fid IN (0{$flist_queue_attach})";
}

		$tflist_queue_attach = " AND t.fid IN (0{$flist_queue_attach})";
$flist_queue_attach = " AND fid IN (0{$flist_queue_attach})";
}

Zeile 167Zeile 142
		$flist_modlog = " AND fid IN (0{$flist_modlog})";
}
if($flist)

		$flist_modlog = " AND fid IN (0{$flist_modlog})";
}
if($flist)

	{

	{

		$tflist = " AND t.fid IN (0{$flist})";
$flist = " AND fid IN (0{$flist})";

		$tflist = " AND t.fid IN (0{$flist})";
$flist = " AND fid IN (0{$flist})";

	}
}
else
{
$flist = $tflist = '';
}


	}
}






// Retrieve a list of unviewable forums
$unviewableforums = get_unviewable_forums();
$inactiveforums = get_inactive_forums();

// Retrieve a list of unviewable forums
$unviewableforums = get_unviewable_forums();
$inactiveforums = get_inactive_forums();


if($unviewableforums && !is_super_admin($mybb->user['uid']))
{


$unviewablefids1 = $unviewablefids2 = array();

if($unviewableforums)
{

	$flist .= " AND fid NOT IN ({$unviewableforums})";
$tflist .= " AND t.fid NOT IN ({$unviewableforums})";

	$flist .= " AND fid NOT IN ({$unviewableforums})";
$tflist .= " AND t.fid NOT IN ({$unviewableforums})";


$unviewablefids = explode(',', $unviewableforums);
foreach($unviewablefids as $key => $fid)
{
$unviewablefids[$key] = (int)$fid;
}
unset($fid);
}


$unviewablefids1 = explode(',', $unviewableforums);
}







if($inactiveforums)
{
$flist .= " AND fid NOT IN ({$inactiveforums})";
$tflist .= " AND t.fid NOT IN ({$inactiveforums})";



if($inactiveforums)
{
$flist .= " AND fid NOT IN ({$inactiveforums})";
$tflist .= " AND t.fid NOT IN ({$inactiveforums})";


	$unviewablefids = explode(',', $inactiveforums);
foreach($unviewablefids as &$fid)
{
$fid = (int)$fid;
}
unset($fid);

	$unviewablefids2 = explode(',', $inactiveforums);






}


}


$unviewableforums = $unviewablefids;

$unviewableforums = array_merge($unviewablefids1, $unviewablefids2);


if(!isset($collapsedimg['modcpforums']))
{


if(!isset($collapsedimg['modcpforums']))
{

Zeile 275Zeile 237

if(!empty($nav_announcements) || !empty($nav_modqueue) || !empty($nav_reportcenter) || !empty($nav_modlogs))
{


if(!empty($nav_announcements) || !empty($nav_modqueue) || !empty($nav_reportcenter) || !empty($nav_modlogs))
{

 
	$expaltext = (in_array("modcpforums", $collapse)) ? $lang->expcol_expand : $lang->expcol_collapse;

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

if(!empty($nav_editprofile) || !empty($nav_banning) || !empty($nav_warninglogs) || !empty($nav_ipsearch))
{

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

if(!empty($nav_editprofile) || !empty($nav_banning) || !empty($nav_warninglogs) || !empty($nav_ipsearch))
{

 
	$expaltext = (in_array("modcpusers", $collapse)) ? $lang->expcol_expand : $lang->expcol_collapse;

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


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


Zeile 296Zeile 260
	// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));


	// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));


	$mybb->input['reports'] = $mybb->get_input('reports', 2);
if(empty($mybb->input['reports']))

	$mybb->input['reports'] = $mybb->get_input('reports', MyBB::INPUT_ARRAY);
if(empty($mybb->input['reports']) && empty($mybb->cookies['inlinereports']))

	{
error($lang->error_noselected_reports);
}


	{
error($lang->error_noselected_reports);
}


	$sql = '1=1';
if(empty($mybb->input['allbox']))






























	$message = $lang->redirect_reportsmarked;

if(isset($mybb->cookies['inlinereports']))
{
if($mybb->cookies['inlinereports'] == '|ALL|') {
$message = $lang->redirect_allreportsmarked;
$sql = "1=1";
if(isset($mybb->cookies['inlinereports_removed']))
{
$inlinereportremovedlist = explode("|", $mybb->cookies['inlinereports_removed']);
$reports = array_map("intval", $inlinereportremovedlist);
$rids = implode("','", $reports);
$sql = "rid NOT IN ('0','{$rids}')";
}
}
else
{
$inlinereportlist = explode("|", $mybb->cookies['inlinereports']);
$reports = array_map("intval", $inlinereportlist);

if(!count($reports))
{
error($lang->error_noselected_reports);
}

$rids = implode("','", $reports);

$sql = "rid IN ('0','{$rids}')";
}
}
else

	{
$mybb->input['reports'] = array_map("intval", $mybb->input['reports']);

	{
$mybb->input['reports'] = array_map("intval", $mybb->input['reports']);

		$rids = implode("','", $mybb->input['reports']);


		$rids = implode("','", $mybb->input['reports']);


		$sql = "rid IN ('0','{$rids}')";
}


		$sql = "rid IN ('0','{$rids}')";
}


Zeile 316Zeile 309
	$db->update_query("reportedcontent", array('reportstatus' => 1), "{$sql}{$flist_reports}");
$cache->update_reportedcontent();


	$db->update_query("reportedcontent", array('reportstatus' => 1), "{$sql}{$flist_reports}");
$cache->update_reportedcontent();


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


	my_unsetcookie('inlinereports');
my_unsetcookie('inlinereports_removed');





	redirect("modcp.php?action=reports&page={$page}", $lang->redirect_reportsmarked);



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

redirect("modcp.php?action=reports&page={$page}", $message);

}

if($mybb->input['action'] == "reports")
{
if($mybb->usergroup['canmanagereportedcontent'] == 0)

}

if($mybb->input['action'] == "reports")
{
if($mybb->usergroup['canmanagereportedcontent'] == 0)

	{

	{

		error_no_permission();

		error_no_permission();

	}


	}


	if($numreportedposts == 0 && $mybb->usergroup['issupermod'] != 1)
{
error($lang->you_cannot_view_reported_posts);

	if($numreportedposts == 0 && $mybb->usergroup['issupermod'] != 1)
{
error($lang->you_cannot_view_reported_posts);

	}


	}


	$lang->load('report');
add_breadcrumb($lang->mcp_nav_report_center, "modcp.php?action=reports");


	$lang->load('report');
add_breadcrumb($lang->mcp_nav_report_center, "modcp.php?action=reports");


Zeile 340Zeile 336
	if(!$perpage)
{
$perpage = 20;

	if(!$perpage)
{
$perpage = 20;

	}

	}


// Multipage
if($mybb->usergroup['cancp'] || $mybb->usergroup['issupermod'])


// Multipage
if($mybb->usergroup['cancp'] || $mybb->usergroup['issupermod'])

Zeile 349Zeile 345
		$report_count = $db->fetch_field($query, "count");
}
else

		$report_count = $db->fetch_field($query, "count");
}
else

	{

	{

		$query = $db->simple_select('reportedcontent', 'id3', "reportstatus='0' AND (type = 'post' OR type = '')");

$report_count = 0;

		$query = $db->simple_select('reportedcontent', 'id3', "reportstatus='0' AND (type = 'post' OR type = '')");

$report_count = 0;

Zeile 363Zeile 359
		unset($fid);
}


		unset($fid);
}


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

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


$postcount = (int)$report_count;
$pages = $postcount / $perpage;


$postcount = (int)$report_count;
$pages = $postcount / $perpage;

Zeile 375Zeile 371
	}

if($page && $page > 0)

	}

if($page && $page > 0)

	{

	{

		$start = ($page-1) * $perpage;

		$start = ($page-1) * $perpage;

	}

	}

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

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

	}


	}


	$multipage = $reportspages = '';
if($postcount > $perpage)
{
$multipage = multipage($postcount, $perpage, $page, "modcp.php?action=reports");
eval("\$reportspages = \"".$templates->get("modcp_reports_multipage")."\";");

	$multipage = $reportspages = '';
if($postcount > $perpage)
{
$multipage = multipage($postcount, $perpage, $page, "modcp.php?action=reports");
eval("\$reportspages = \"".$templates->get("modcp_reports_multipage")."\";");

	}

$plugins->run_hooks("modcp_reports_start");


	}

$plugins->run_hooks("modcp_reports_start");


	// Reports

	// Reports

	$reports = '';



	$reports = $selectall = '';
$inlinecount = 0;


	$query = $db->query("

	$query = $db->query("

		SELECT r.*, u.username

		SELECT r.*, u.username, rr.title

		FROM ".TABLE_PREFIX."reportedcontent r
LEFT JOIN ".TABLE_PREFIX."users u ON (r.uid = u.uid)

		FROM ".TABLE_PREFIX."reportedcontent r
LEFT JOIN ".TABLE_PREFIX."users u ON (r.uid = u.uid)

 
		LEFT JOIN ".TABLE_PREFIX."reportreasons rr ON (r.reasonid = rr.rid)

		WHERE r.reportstatus = '0'{$tflist_reports}
ORDER BY r.reports DESC
LIMIT {$start}, {$perpage}

		WHERE r.reportstatus = '0'{$tflist_reports}
ORDER BY r.reports DESC
LIMIT {$start}, {$perpage}

Zeile 417Zeile 416
		while($report = $db->fetch_array($query))
{
if($report['type'] == 'profile' || $report['type'] == 'reputation')

		while($report = $db->fetch_array($query))
{
if($report['type'] == 'profile' || $report['type'] == 'reputation')

			{

			{

				// Profile UID is in ID
if(!isset($usercache[$report['id']]))
{

				// Profile UID is in ID
if(!isset($usercache[$report['id']]))
{

Zeile 442Zeile 441
			{
// This (should) be a post
$postcache[$report['id']] = $report['id'];

			{
// This (should) be a post
$postcache[$report['id']] = $report['id'];

			}

			}


// Lastpost info - is it missing (pre-1.8)?
$lastposter = $report['uid'];


// Lastpost info - is it missing (pre-1.8)?
$lastposter = $report['uid'];

Zeile 501Zeile 500
				$postcache[$post['pid']] = $post;
}
}

				$postcache[$post['pid']] = $post;
}
}

 

$lang->page_selected = $lang->sprintf($lang->page_selected, count($reportcache));
$lang->select_all = $lang->sprintf($lang->select_all, (int)$report_count);
$lang->all_selected = $lang->sprintf($lang->all_selected, (int)$report_count);
eval("\$selectall = \"".$templates->get("modcp_reports_selectall")."\";");

$plugins->run_hooks('modcp_reports_intermediate');


// Now that we have all of the information needed, display the reports
foreach($reportcache as $report)


// Now that we have all of the information needed, display the reports
foreach($reportcache as $report)

Zeile 520Zeile 526
			{
case 'post':
$post = get_post_link($report['id'])."#pid{$report['id']}";

			{
case 'post':
$post = get_post_link($report['id'])."#pid{$report['id']}";

					$user = build_profile_link($postcache[$report['id']]['username'], $postcache[$report['id']]['uid']);

					$user = build_profile_link(htmlspecialchars_uni($postcache[$report['id']]['username']), $postcache[$report['id']]['uid']);

					$report_data['content'] = $lang->sprintf($lang->report_info_post, $post, $user);

$thread_link = get_thread_link($postcache[$report['id']]['tid']);

					$report_data['content'] = $lang->sprintf($lang->report_info_post, $post, $user);

$thread_link = get_thread_link($postcache[$report['id']]['tid']);

					$thread_subject = htmlspecialchars_uni($postcache[$report['id']]['subject']);

					$thread_subject = htmlspecialchars_uni($parser->parse_badwords($postcache[$report['id']]['subject']));

					$report_data['content'] .= $lang->sprintf($lang->report_info_post_thread, $thread_link, $thread_subject);

break;
case 'profile':

					$report_data['content'] .= $lang->sprintf($lang->report_info_post_thread, $thread_link, $thread_subject);

break;
case 'profile':

					$user = build_profile_link($usercache[$report['id']]['username'], $usercache[$report['id']]['uid']);

					$user = build_profile_link(htmlspecialchars_uni($usercache[$report['id']]['username']), $usercache[$report['id']]['uid']);

					$report_data['content'] = $lang->sprintf($lang->report_info_profile, $user);
break;
case 'reputation':
$reputation_link = "reputation.php?uid={$usercache[$report['id3']]['uid']}#rid{$report['id']}";

					$report_data['content'] = $lang->sprintf($lang->report_info_profile, $user);
break;
case 'reputation':
$reputation_link = "reputation.php?uid={$usercache[$report['id3']]['uid']}#rid{$report['id']}";

					$bad_user = build_profile_link($usercache[$report['id2']]['username'], $usercache[$report['id2']]['uid']);

					$bad_user = build_profile_link(htmlspecialchars_uni($usercache[$report['id2']]['username']), $usercache[$report['id2']]['uid']);

					$report_data['content'] = $lang->sprintf($lang->report_info_reputation, $reputation_link, $bad_user);


					$report_data['content'] = $lang->sprintf($lang->report_info_reputation, $reputation_link, $bad_user);


					$good_user = build_profile_link($usercache[$report['id3']]['username'], $usercache[$report['id3']]['uid']);

					$good_user = build_profile_link(htmlspecialchars_uni($usercache[$report['id3']]['username']), $usercache[$report['id3']]['uid']);

					$report_data['content'] .= $lang->sprintf($lang->report_info_rep_profile, $good_user);
break;
}

// Report reason and comment

					$report_data['content'] .= $lang->sprintf($lang->report_info_rep_profile, $good_user);
break;
}

// Report reason and comment

			$report_data['comment'] = $lang->na;
$report_string = "report_reason_{$report['reason']}";

if(isset($lang->$report_string))
{
$report_data['comment'] = $lang->$report_string;
}
else if(!empty($report['reason']))
{
$report_data['comment'] = htmlspecialchars_uni($report['reason']);
}









			if($report['reasonid'] > 0)
{
$reason = htmlspecialchars_uni($lang->parse($report['title']));

if(empty($report['reason']))
{
eval("\$report_data['comment'] = \"".$templates->get("modcp_reports_report_comment")."\";");
}
else
{
$comment = htmlspecialchars_uni($report['reason']);
eval("\$report_data['comment'] = \"".$templates->get("modcp_reports_report_comment_extra")."\";");
}
}
else
{
$report_data['comment'] = $lang->na;
}


			$report_reports = 1;
if($report['reports'])

			$report_reports = 1;
if($report['reports'])

			{

			{

				$report_data['reports'] = my_number_format($report['reports']);

				$report_data['reports'] = my_number_format($report['reports']);

			}


			}


			if($report['lastreporter'])
{
if(is_array($usercache[$report['lastreporter']]))
{

			if($report['lastreporter'])
{
if(is_array($usercache[$report['lastreporter']]))
{

					$lastreport_user = build_profile_link($usercache[$report['lastreporter']]['username'], $report['lastreporter']);

					$lastreport_user = build_profile_link(htmlspecialchars_uni($usercache[$report['lastreporter']]['username']), $report['lastreporter']);

				}
elseif($usercache[$report['lastreporter']] > 0)
{

				}
elseif($usercache[$report['lastreporter']] > 0)
{

					$lastreport_user = $lang->na_deleted;

					$lastreport_user = htmlspecialchars_uni($lang->na_deleted);

				}

				}





				$lastreport_date = my_date('relative', $report['lastreport']);
$report_data['lastreporter'] = $lang->sprintf($lang->report_info_lastreporter, $lastreport_date, $lastreport_user);

				$lastreport_date = my_date('relative', $report['lastreport']);
$report_data['lastreporter'] = $lang->sprintf($lang->report_info_lastreporter, $lastreport_date, $lastreport_user);

 
			}

$inlinecheck = '';
if(isset($mybb->cookies['inlinereports']) && my_strpos($mybb->cookies['inlinereports'], "|{$report['rid']}|") !== false)
{
$inlinecheck = " checked=\"checked\"";
++$inlinecount;

			}

$plugins->run_hooks("modcp_reports_report");

			}

$plugins->run_hooks("modcp_reports_report");

Zeile 608Zeile 628
	$perpage = $mybb->settings['threadsperpage'];
if($mybb->get_input('page') != "last")
{

	$perpage = $mybb->settings['threadsperpage'];
if($mybb->get_input('page') != "last")
{

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

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

	}

if($mybb->usergroup['cancp'] || $mybb->usergroup['issupermod'])

	}

if($mybb->usergroup['cancp'] || $mybb->usergroup['issupermod'])

Zeile 633Zeile 653

if(isset($mybb->input['rid']))
{


if(isset($mybb->input['rid']))
{

		$mybb->input['rid'] = $mybb->get_input('rid', 1);

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

		$query = $db->simple_select("reportedcontent", "COUNT(rid) AS count", "rid <= '".$mybb->input['rid']."'");
$result = $db->fetch_field($query, "count");
if(($result % $perpage) == 0)

		$query = $db->simple_select("reportedcontent", "COUNT(rid) AS count", "rid <= '".$mybb->input['rid']."'");
$result = $db->fetch_field($query, "count");
if(($result % $perpage) == 0)

Zeile 646Zeile 666
		}
}
$postcount = (int)$report_count;

		}
}
$postcount = (int)$report_count;

	$pages = $postcount / $perpage;
$pages = ceil($pages);

if($mybb->get_input('page') == "last")
{
$page = $pages;
}

if($page > $pages || $page <= 0)
{
$page = 1;
}

if($page)
{
$start = ($page-1) * $perpage;
}
else
{

	$pages = $postcount / $perpage;
$pages = ceil($pages);

if($mybb->get_input('page') == "last")
{
$page = $pages;
}

if($page > $pages || $page <= 0)
{
$page = 1;
}

if($page)
{
$start = ($page-1) * $perpage;
}
else
{

		$start = 0;
$page = 1;
}

		$start = 0;
$page = 1;
}

Zeile 680Zeile 700
	$plugins->run_hooks("modcp_allreports_start");

$query = $db->query("

	$plugins->run_hooks("modcp_allreports_start");

$query = $db->query("

		SELECT r.*, u.username, p.username AS postusername, up.uid AS postuid, t.subject AS threadsubject, pr.username AS profileusername

		SELECT r.*, u.username, p.username AS postusername, up.uid AS postuid, t.subject AS threadsubject, prrep.username AS repusername, pr.username AS profileusername, rr.title

		FROM ".TABLE_PREFIX."reportedcontent r
LEFT JOIN ".TABLE_PREFIX."posts p ON (r.id=p.pid)
LEFT JOIN ".TABLE_PREFIX."threads t ON (p.tid=t.tid)
LEFT JOIN ".TABLE_PREFIX."users u ON (r.uid=u.uid)
LEFT JOIN ".TABLE_PREFIX."users up ON (p.uid=up.uid)
LEFT JOIN ".TABLE_PREFIX."users pr ON (pr.uid=r.id)

		FROM ".TABLE_PREFIX."reportedcontent r
LEFT JOIN ".TABLE_PREFIX."posts p ON (r.id=p.pid)
LEFT JOIN ".TABLE_PREFIX."threads t ON (p.tid=t.tid)
LEFT JOIN ".TABLE_PREFIX."users u ON (r.uid=u.uid)
LEFT JOIN ".TABLE_PREFIX."users up ON (p.uid=up.uid)
LEFT JOIN ".TABLE_PREFIX."users pr ON (pr.uid=r.id)

 
		LEFT JOIN ".TABLE_PREFIX."users prrep ON (prrep.uid=r.id2)
LEFT JOIN ".TABLE_PREFIX."reportreasons rr ON (r.reasonid = rr.rid)

		{$wflist_reports}
ORDER BY r.dateline DESC
LIMIT {$start}, {$perpage}

		{$wflist_reports}
ORDER BY r.dateline DESC
LIMIT {$start}, {$perpage}

Zeile 706Zeile 728
			if($report['type'] == 'post')
{
$post = get_post_link($report['id'])."#pid{$report['id']}";

			if($report['type'] == 'post')
{
$post = get_post_link($report['id'])."#pid{$report['id']}";

				$user = build_profile_link($report['postusername'], $report['postuid']);

				$user = build_profile_link(htmlspecialchars_uni($report['postusername']), $report['postuid']);

				$report_data['content'] = $lang->sprintf($lang->report_info_post, $post, $user);

$thread_link = get_thread_link($report['id2']);

				$report_data['content'] = $lang->sprintf($lang->report_info_post, $post, $user);

$thread_link = get_thread_link($report['id2']);

				$thread_subject = htmlspecialchars_uni($report['threadsubject']);

				$thread_subject = htmlspecialchars_uni($parser->parse_badwords($report['threadsubject']));

				$report_data['content'] .= $lang->sprintf($lang->report_info_post_thread, $thread_link, $thread_subject);
}
else if($report['type'] == 'profile')
{

				$report_data['content'] .= $lang->sprintf($lang->report_info_post_thread, $thread_link, $thread_subject);
}
else if($report['type'] == 'profile')
{

				$user = build_profile_link($report['profileusername'], $report['id']);

				$user = build_profile_link(htmlspecialchars_uni($report['profileusername']), $report['id']);

				$report_data['content'] = $lang->sprintf($lang->report_info_profile, $user);
}
else if($report['type'] == 'reputation')
{

				$report_data['content'] = $lang->sprintf($lang->report_info_profile, $user);
}
else if($report['type'] == 'reputation')
{

				$user = build_profile_link($report['profileusername'], $report['id3']);

				$user = build_profile_link(htmlspecialchars_uni($report['repusername']), $report['id2']);

				$reputation_link = "reputation.php?uid={$report['id3']}#rid{$report['id']}";
$report_data['content'] = $lang->sprintf($lang->report_info_reputation, $reputation_link, $user);
}

// Report reason and comment

				$reputation_link = "reputation.php?uid={$report['id3']}#rid{$report['id']}";
$report_data['content'] = $lang->sprintf($lang->report_info_reputation, $reputation_link, $user);
}

// Report reason and comment

			$report_data['comment'] = $lang->na;
$report_string = "report_reason_{$report['reason']}";

















			if($report['reasonid'] > 0)
{
$reason = htmlspecialchars_uni($lang->parse($report['title']));

if(empty($report['reason']))
{
eval("\$report_data['comment'] = \"".$templates->get("modcp_reports_report_comment")."\";");
}
else
{
$comment = htmlspecialchars_uni($report['reason']);
eval("\$report_data['comment'] = \"".$templates->get("modcp_reports_report_comment_extra")."\";");
}
}
else
{
$report_data['comment'] = $lang->na;
}


$report['reporterlink'] = get_profile_link($report['uid']);
if(!$report['username'])


$report['reporterlink'] = get_profile_link($report['uid']);
if(!$report['username'])

Zeile 735Zeile 773
				$report['username'] = $lang->na_deleted;
$report['reporterlink'] = $post;
}

				$report['username'] = $lang->na_deleted;
$report['reporterlink'] = $post;
}


if(isset($lang->$report_string))
{
$report_data['comment'] = $lang->$report_string;
}
else if(!empty($report['reason']))
{
$report_data['comment'] = htmlspecialchars_uni($report['reason']);
}

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










$report_data['reports'] = my_number_format($report['reports']);
$report_data['time'] = my_date('relative', $report['dateline']);


$report_data['reports'] = my_number_format($report['reports']);
$report_data['time'] = my_date('relative', $report['dateline']);

Zeile 773Zeile 803

add_breadcrumb($lang->mcp_nav_modlogs, "modcp.php?action=modlogs");



add_breadcrumb($lang->mcp_nav_modlogs, "modcp.php?action=modlogs");


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

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

	if(!$perpage || $perpage <= 0)
{
$perpage = $mybb->settings['threadsperpage'];

	if(!$perpage || $perpage <= 0)
{
$perpage = $mybb->settings['threadsperpage'];

Zeile 782Zeile 812
	$where = '';

// Searching for entries by a particular user

	$where = '';

// Searching for entries by a particular user

	if($mybb->get_input('uid', 1))

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

	{

	{

		$where .= " AND l.uid='".$mybb->get_input('uid', 1)."'";

		$where .= " AND l.uid='".$mybb->get_input('uid', MyBB::INPUT_INT)."'";

	}

// Searching for entries in a specific forum

	}

// Searching for entries in a specific forum

	if($mybb->get_input('fid', 1))

	if($mybb->get_input('fid', MyBB::INPUT_INT))

	{

	{

		$where .= " AND t.fid='".$mybb->get_input('fid', 1)."'";

		$where .= " AND t.fid='".$mybb->get_input('fid', MyBB::INPUT_INT)."'";

	}

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

	}

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

Zeile 830Zeile 860
	// Figure out if we need to display multiple pages.
if($mybb->get_input('page') != "last")
{

	// Figure out if we need to display multiple pages.
if($mybb->get_input('page') != "last")
{

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

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

	}

$postcount = (int)$rescount;

	}

$postcount = (int)$rescount;

Zeile 860Zeile 890
	$page_url = 'modcp.php?action=modlogs&amp;perpage='.$perpage;
foreach(array('uid', 'fid') as $field)
{

	$page_url = 'modcp.php?action=modlogs&amp;perpage='.$perpage;
foreach(array('uid', 'fid') as $field)
{

		$mybb->input[$field] = $mybb->get_input($field, 1);

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

		if(!empty($mybb->input[$field]))
{
$page_url .= "&amp;{$field}=".$mybb->input[$field];

		if(!empty($mybb->input[$field]))
{
$page_url .= "&amp;{$field}=".$mybb->input[$field];

Zeile 899Zeile 929
		$logitem['action'] = htmlspecialchars_uni($logitem['action']);
$log_date = my_date('relative', $logitem['dateline']);
$trow = alt_trow();

		$logitem['action'] = htmlspecialchars_uni($logitem['action']);
$log_date = my_date('relative', $logitem['dateline']);
$trow = alt_trow();

		$username = format_name($logitem['username'], $logitem['usergroup'], $logitem['displaygroup']);
$logitem['profilelink'] = build_profile_link($username, $logitem['uid']);









		if($logitem['username'])
{
$logitem['username'] = htmlspecialchars_uni($logitem['username']);
$username = format_name($logitem['username'], $logitem['usergroup'], $logitem['displaygroup']);
$logitem['profilelink'] = build_profile_link($username, $logitem['uid']);
}
else
{
$username = $logitem['profilelink'] = $logitem['username'] = htmlspecialchars_uni($lang->na_deleted);
}

		$logitem['ipaddress'] = my_inet_ntop($db->unescape_binary($logitem['ipaddress']));

if($logitem['tsubject'])
{

		$logitem['ipaddress'] = my_inet_ntop($db->unescape_binary($logitem['ipaddress']));

if($logitem['tsubject'])
{

			$logitem['tsubject'] = htmlspecialchars_uni($logitem['tsubject']);

			$logitem['tsubject'] = htmlspecialchars_uni($parser->parse_badwords($logitem['tsubject']));

			$logitem['thread'] = get_thread_link($logitem['tid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_thread")."\";");
}

			$logitem['thread'] = get_thread_link($logitem['tid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_thread")."\";");
}

Zeile 916Zeile 954
		}
if($logitem['psubject'])
{

		}
if($logitem['psubject'])
{

			$logitem['psubject'] = htmlspecialchars_uni($logitem['psubject']);

			$logitem['psubject'] = htmlspecialchars_uni($parser->parse_badwords($logitem['psubject']));

			$logitem['post'] = get_post_link($logitem['pid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_post")."\";");
}

			$logitem['post'] = get_post_link($logitem['pid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_post")."\";");
}

Zeile 927Zeile 965
			$data = my_unserialize($logitem['data']);
if(!empty($data['uid']))
{

			$data = my_unserialize($logitem['data']);
if(!empty($data['uid']))
{

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

				$information = $lang->sprintf($lang->edited_user_info, htmlspecialchars_uni($data['username']), get_profile_link($data['uid']));
}
if(!empty($data['aid']))
{

				$information = $lang->sprintf($lang->edited_user_info, htmlspecialchars_uni($data['username']), get_profile_link($data['uid']));
}
if(!empty($data['aid']))
{

				$data['subject'] = htmlspecialchars_uni($data['subject']);

				$data['subject'] = htmlspecialchars_uni($parser->parse_badwords($data['subject']));

				$data['announcement'] = get_announcement_link($data['aid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_announcement")."\";");
}
}

				$data['announcement'] = get_announcement_link($data['aid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_announcement")."\";");
}
}

 

$plugins->run_hooks("modcp_modlogs_result");


eval("\$results .= \"".$templates->get("modcp_modlogs_result")."\";");
}


eval("\$results .= \"".$templates->get("modcp_modlogs_result")."\";");
}

Zeile 965Zeile 1006
		if(!$user['username'])
{
$user['username'] = $lang->na_deleted;

		if(!$user['username'])
{
$user['username'] = $lang->na_deleted;

		}

		}


$selected = '';


$selected = '';

		if($mybb->get_input('uid', 1) == $user['uid'])

		if($mybb->get_input('uid', MyBB::INPUT_INT) == $user['uid'])

		{
$selected = " selected=\"selected\"";
}

$user['username'] = htmlspecialchars_uni($user['username']);
eval("\$user_options .= \"".$templates->get("modcp_modlogs_user")."\";");

		{
$selected = " selected=\"selected\"";
}

$user['username'] = htmlspecialchars_uni($user['username']);
eval("\$user_options .= \"".$templates->get("modcp_modlogs_user")."\";");

	}

$forum_select = build_forum_jump("", $mybb->get_input('fid', 1), 1, '', 0, true, '', "fid");


	}

$forum_select = build_forum_jump("", $mybb->get_input('fid', MyBB::INPUT_INT), 1, '', 0, true, '', "fid");


	eval("\$modlogs = \"".$templates->get("modcp_modlogs")."\";");
output_page($modlogs);
}

	eval("\$modlogs = \"".$templates->get("modcp_modlogs")."\";");
output_page($modlogs);
}





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

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

{
verify_post_check($mybb->get_input('my_post_key'));

if($mybb->usergroup['canmanageannounce'] == 0)
{
error_no_permission();
}


{
verify_post_check($mybb->get_input('my_post_key'));

if($mybb->usergroup['canmanageannounce'] == 0)
{
error_no_permission();
}


	$aid = $mybb->get_input('aid');
$query = $db->simple_select("announcements", "aid, subject, fid", "aid='{$aid}'");
$announcement = $db->fetch_array($query);

	$aid = $mybb->get_input('aid');
$query = $db->simple_select("announcements", "aid, subject, fid", "aid='{$aid}'");
$announcement = $db->fetch_array($query);

Zeile 1025Zeile 1066
	$query = $db->simple_select("announcements", "aid, subject, fid", "aid='{$aid}'");

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

	$query = $db->simple_select("announcements", "aid, subject, fid", "aid='{$aid}'");

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

	$announcement['subject'] = htmlspecialchars_uni($announcement['subject']);

	$announcement['subject'] = htmlspecialchars_uni($parser->parse_badwords($announcement['subject']));


if(!$announcement)
{


if(!$announcement)
{

Zeile 1052Zeile 1093
		error_no_permission();
}


		error_no_permission();
}


	$announcement_fid = $mybb->get_input('fid', 1);
if(($mybb->usergroup['issupermod'] != 1 && $announcement_fid == -1) || ($announcement_fid != -1 && !is_moderator($announcement_fid, "canmanageannouncements")) || ($unviewableforums && in_array($announcement['fid'], $unviewableforums)))

	$announcement_fid = $mybb->get_input('fid', MyBB::INPUT_INT);
if(($mybb->usergroup['issupermod'] != 1 && $announcement_fid == -1) || ($announcement_fid != -1 && !is_moderator($announcement_fid, "canmanageannouncements")) || ($unviewableforums && in_array($announcement_fid, $unviewableforums)))

	{
error_no_permission();
}

	{
error_no_permission();
}

Zeile 1109Zeile 1150
		$mybb->input['starttime_month'] = '01';
}


		$mybb->input['starttime_month'] = '01';
}


	$startdate = gmmktime((int)$startdate[0], (int)$startdate[1], 0, (int)$mybb->input['starttime_month'], $mybb->get_input('starttime_day', 1), $mybb->get_input('starttime_year', 1));
if(!checkdate((int)$mybb->input['starttime_month'], (int)$mybb->input['starttime_day'], (int)$mybb->input['starttime_year']) || $startdate < 0 || $startdate == false)



	$localized_time_offset = (float)$mybb->user['timezone']*3600 + $mybb->user['dst']*3600;

$startdate = gmmktime((int)$startdate[0], (int)$startdate[1], 0, $mybb->get_input('starttime_month', MyBB::INPUT_INT), $mybb->get_input('starttime_day', MyBB::INPUT_INT), $mybb->get_input('starttime_year', MyBB::INPUT_INT)) - $localized_time_offset;
if(!checkdate($mybb->get_input('starttime_month', MyBB::INPUT_INT), $mybb->get_input('starttime_day', MyBB::INPUT_INT), $mybb->get_input('starttime_year', MyBB::INPUT_INT)) || $startdate < 0 || $startdate == false)

	{
$errors[] = $lang->error_invalid_start_date;

	{
$errors[] = $lang->error_invalid_start_date;

	}

if($mybb->get_input('endtime_type', 1) == 2)
{

	}

if($mybb->get_input('endtime_type', MyBB::INPUT_INT) == 2)
{

		$enddate = '0';
$mybb->input['endtime_month'] = '01';
}

		$enddate = '0';
$mybb->input['endtime_month'] = '01';
}

Zeile 1124Zeile 1167
	{
$mybb->input['endtime_month'] = $mybb->get_input('endtime_month');
if(!in_array($mybb->input['endtime_month'], $months))

	{
$mybb->input['endtime_month'] = $mybb->get_input('endtime_month');
if(!in_array($mybb->input['endtime_month'], $months))

		{

		{

			$mybb->input['endtime_month'] = '01';

			$mybb->input['endtime_month'] = '01';

		}
$enddate = gmmktime((int)$enddate[0], (int)$enddate[1], 0, (int)$mybb->input['endtime_month'], $mybb->get_input('endtime_day', 1), $mybb->get_input('endtime_year', 1));
if(!checkdate((int)$mybb->input['endtime_month'], (int)$mybb->input['endtime_day'], (int)$mybb->input['endtime_year']) || $enddate < 0 || $enddate == false)

		}
$enddate = gmmktime((int)$enddate[0], (int)$enddate[1], 0, $mybb->get_input('endtime_month', MyBB::INPUT_INT), $mybb->get_input('endtime_day', MyBB::INPUT_INT), $mybb->get_input('endtime_year', MyBB::INPUT_INT)) - $localized_time_offset;
if(!checkdate($mybb->get_input('endtime_month', MyBB::INPUT_INT), $mybb->get_input('endtime_day', MyBB::INPUT_INT), $mybb->get_input('endtime_year', MyBB::INPUT_INT)) || $enddate < 0 || $enddate == false)

		{
$errors[] = $lang->error_invalid_end_date;

		{
$errors[] = $lang->error_invalid_end_date;

		}


		}


		if($enddate <= $startdate)
{
$errors[] = $lang->error_end_before_start;
}

		if($enddate <= $startdate)
{
$errors[] = $lang->error_end_before_start;
}

	}

	}





	if($mybb->get_input('allowhtml', 1) == 1)

	if($mybb->settings['announcementshtml'] && $mybb->get_input('allowhtml', MyBB::INPUT_INT) == 1)

	{
$allowhtml = 1;

	{
$allowhtml = 1;

	}
else
{

	}
else
{

		$allowhtml = 0;

		$allowhtml = 0;

	}
if($mybb->get_input('allowmycode', 1) == 1)

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

	{
$allowmycode = 1;

	{
$allowmycode = 1;

	}
else
{

	}
else
{

		$allowmycode = 0;

		$allowmycode = 0;

	}
if($mybb->get_input('allowsmilies', 1) == 1)

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

	{
$allowsmilies = 1;

	{
$allowsmilies = 1;

	}
else
{

	}
else
{

		$allowsmilies = 0;
}


		$allowsmilies = 0;
}


Zeile 1188Zeile 1231
			);
$aid = $db->insert_query("announcements", $insert_announcement);


			);
$aid = $db->insert_query("announcements", $insert_announcement);


			log_moderator_action(array("aid" => $aid, "subject" => $db->escape_string($mybb->input['title'])), $lang->announcement_added);

			log_moderator_action(array("aid" => $aid, "subject" => $mybb->input['title']), $lang->announcement_added);


$plugins->run_hooks("modcp_do_new_announcement_end");



$plugins->run_hooks("modcp_do_new_announcement_end");


Zeile 1198Zeile 1241
	}
else
{

	}
else
{

		$mybb->input['action'] = 'new_announcement';
}
}

if($mybb->input['action'] == "new_announcement")
{
if($mybb->usergroup['canmanageannounce'] == 0)
{
error_no_permission();
}

add_breadcrumb($lang->mcp_nav_announcements, "modcp.php?action=announcements");
add_breadcrumb($lang->add_announcement, "modcp.php?action=new_announcements");

$announcement_fid = $mybb->get_input('fid', 1);

if(($mybb->usergroup['issupermod'] != 1 && $announcement_fid == -1) || ($announcement_fid != -1 && !is_moderator($announcement_fid, "canmanageannouncements")) || ($unviewableforums && in_array($announcement['fid'], $unviewableforums)))
{
error_no_permission();
}

// Deal with inline errors
if(!empty($errors) || isset($preview))
{
if(!empty($errors))
{
$errors = inline_error($errors);
}
else
{
$errors = '';
}

// Set $announcement to input stuff
$announcement['subject'] = $mybb->input['title'];
$announcement['message'] = $mybb->input['message'];
$announcement['allowhtml'] = $allowhtml;
$announcement['allowmycode'] = $allowmycode;
$announcement['allowsmilies'] = $allowsmilies;

$startmonth = $mybb->input['starttime_month'];
$startdateyear = htmlspecialchars_uni($mybb->input['starttime_year']);
$startday = $mybb->get_input('starttime_day', 1);
$starttime_time = htmlspecialchars_uni($mybb->input['starttime_time']);
$endmonth = $mybb->input['endtime_month'];
$enddateyear = htmlspecialchars_uni($mybb->input['endtime_year']);
$endday = $mybb->get_input('endtime_day', 1);
$endtime_time = htmlspecialchars_uni($mybb->input['endtime_time']);
}
else
{
// Note: dates are in GMT timezone
$starttime_time = gmdate("g:i a", TIME_NOW);
$endtime_time = gmdate("g:i a", TIME_NOW);
$startday = $endday = gmdate("j", TIME_NOW);
$startmonth = $endmonth = gmdate("m", TIME_NOW);
$startdateyear = gmdate("Y", TIME_NOW);


		$mybb->input['action'] = 'new_announcement';
}
}

if($mybb->input['action'] == "new_announcement")
{
if($mybb->usergroup['canmanageannounce'] == 0)
{
error_no_permission();
}

add_breadcrumb($lang->mcp_nav_announcements, "modcp.php?action=announcements");
add_breadcrumb($lang->add_announcement, "modcp.php?action=new_announcements");

$announcement_fid = $mybb->get_input('fid', MyBB::INPUT_INT);

if(($mybb->usergroup['issupermod'] != 1 && $announcement_fid == -1) || ($announcement_fid != -1 && !is_moderator($announcement_fid, "canmanageannouncements")) || ($unviewableforums && in_array($announcement_fid, $unviewableforums)))
{
error_no_permission();
}

// Deal with inline errors
if(!empty($errors) || isset($preview))
{
if(!empty($errors))
{
$errors = inline_error($errors);
}
else
{
$errors = '';
}

// Set $announcement to input stuff
$announcement['subject'] = $mybb->input['title'];
$announcement['message'] = $mybb->input['message'];
$announcement['allowhtml'] = $allowhtml;
$announcement['allowmycode'] = $allowmycode;
$announcement['allowsmilies'] = $allowsmilies;

$startmonth = $mybb->input['starttime_month'];
$startdateyear = htmlspecialchars_uni($mybb->input['starttime_year']);
$startday = $mybb->get_input('starttime_day', MyBB::INPUT_INT);
$starttime_time = htmlspecialchars_uni($mybb->input['starttime_time']);
$endmonth = $mybb->input['endtime_month'];
$enddateyear = htmlspecialchars_uni($mybb->input['endtime_year']);
$endday = $mybb->get_input('endtime_day', MyBB::INPUT_INT);
$endtime_time = htmlspecialchars_uni($mybb->input['endtime_time']);
}
else
{
$localized_time = TIME_NOW + (float)$mybb->user['timezone']*3600 + $mybb->user['dst']*3600;

$starttime_time = gmdate($mybb->settings['timeformat'], $localized_time);
$endtime_time = gmdate($mybb->settings['timeformat'], $localized_time);
$startday = $endday = gmdate("j", $localized_time);
$startmonth = $endmonth = gmdate("m", $localized_time);
$startdateyear = gmdate("Y", $localized_time);


$announcement = array(
'subject' => '',
'message' => '',


$announcement = array(
'subject' => '',
'message' => '',

			'allowhtml' => 1,

			'allowhtml' => 0,

			'allowmycode' => 1,
'allowsmilies' => 1
);

$enddateyear = $startdateyear+1;

			'allowmycode' => 1,
'allowsmilies' => 1
);

$enddateyear = $startdateyear+1;

	}

// Generate form elements
$startdateday = $enddateday = '';
for($day = 1; $day <= 31; ++$day)
{
if($startday == $day)
{
$selected = " selected=\"selected\"";
eval("\$startdateday .= \"".$templates->get("modcp_announcements_day")."\";");
}
else
{
$selected = '';
eval("\$startdateday .= \"".$templates->get("modcp_announcements_day")."\";");
}

if($endday == $day)
{
$selected = " selected=\"selected\"";
eval("\$enddateday .= \"".$templates->get("modcp_announcements_day")."\";");
}
else
{
$selected = '';
eval("\$enddateday .= \"".$templates->get("modcp_announcements_day")."\";");
}
}

$startmonthsel = $endmonthsel = array();
foreach(array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12') as $month)
{
$startmonthsel[$month] = '';
$endmonthsel[$month] = '';
}
$startmonthsel[$startmonth] = "selected=\"selected\"";
$endmonthsel[$endmonth] = "selected=\"selected\"";

$startdatemonth = $enddatemonth = '';

eval("\$startdatemonth .= \"".$templates->get("modcp_announcements_month_start")."\";");
eval("\$enddatemonth .= \"".$templates->get("modcp_announcements_month_end")."\";");

$title = htmlspecialchars_uni($announcement['subject']);
$message = htmlspecialchars_uni($announcement['message']);


	}

// Generate form elements
$startdateday = $enddateday = '';
for($day = 1; $day <= 31; ++$day)
{
if($startday == $day)
{
$selected = " selected=\"selected\"";
eval("\$startdateday .= \"".$templates->get("modcp_announcements_day")."\";");
}
else
{
$selected = '';
eval("\$startdateday .= \"".$templates->get("modcp_announcements_day")."\";");
}

if($endday == $day)
{
$selected = " selected=\"selected\"";
eval("\$enddateday .= \"".$templates->get("modcp_announcements_day")."\";");
}
else
{
$selected = '';
eval("\$enddateday .= \"".$templates->get("modcp_announcements_day")."\";");
}
}

$startmonthsel = $endmonthsel = array();
foreach(array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12') as $month)
{
$startmonthsel[$month] = '';
$endmonthsel[$month] = '';
}
$startmonthsel[$startmonth] = "selected=\"selected\"";
$endmonthsel[$endmonth] = "selected=\"selected\"";

$startdatemonth = $enddatemonth = '';

eval("\$startdatemonth .= \"".$templates->get("modcp_announcements_month_start")."\";");
eval("\$enddatemonth .= \"".$templates->get("modcp_announcements_month_end")."\";");

$title = htmlspecialchars_uni($announcement['subject']);
$message = htmlspecialchars_uni($announcement['message']);


	$html_sel = $mycode_sel = $smilies_sel = array('yes' => '', 'no' => '');

	$html_sel = $mycode_sel = $smilies_sel = array('yes' => '', 'no' => '');

	if($announcement['allowhtml'])



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

	{

	{

		$html_sel['yes'] = ' checked="checked"';










		if($announcement['allowhtml'])
{
$html_sel['yes'] = ' checked="checked"';
}
else
{
$html_sel['no'] = ' checked="checked"';
}

eval("\$allow_html = \"".$templates->get("modcp_announcements_allowhtml")."\";");

	}
else
{

	}
else
{

		$html_sel['no'] = ' checked="checked"';

		$allow_html = '';

	}

if($announcement['allowmycode'])

	}

if($announcement['allowmycode'])

Zeile 1361Zeile 1415
			'uid' => $mybb->user['uid'],
'subject' => $mybb->input['title'],
'message' => $mybb->input['message'],

			'uid' => $mybb->user['uid'],
'subject' => $mybb->input['title'],
'message' => $mybb->input['message'],

			'allowhtml' => (int)$mybb->input['allowhtml'],
'allowmycode' => (int)$mybb->input['allowmycode'],
'allowsmilies' => (int)$mybb->input['allowsmilies'],

			'allowhtml' => $mybb->settings['announcementshtml'] && $mybb->get_input('allowhtml', MyBB::INPUT_INT),
'allowmycode' => $mybb->get_input('allowmycode', MyBB::INPUT_INT),
'allowsmilies' => $mybb->get_input('allowsmilies', MyBB::INPUT_INT),

			'dateline' => TIME_NOW,
'userusername' => $mybb->user['username'],
);

			'dateline' => TIME_NOW,
'userusername' => $mybb->user['username'],
);

Zeile 1392Zeile 1446
		}

require_once MYBB_ROOT."inc/functions_post.php";

		}

require_once MYBB_ROOT."inc/functions_post.php";

		$postbit = build_postbit($announcementarray, 1);

		$postbit = build_postbit($announcementarray, 3);

		eval("\$preview = \"".$templates->get("previewpost")."\";");
}
else
{
$preview = '';

		eval("\$preview = \"".$templates->get("previewpost")."\";");
}
else
{
$preview = '';

	}

	}


$plugins->run_hooks("modcp_new_announcement");

eval("\$announcements = \"".$templates->get("modcp_announcements_new")."\";");
output_page($announcements);
}


$plugins->run_hooks("modcp_new_announcement");

eval("\$announcements = \"".$templates->get("modcp_announcements_new")."\";");
output_page($announcements);
}





if($mybb->input['action'] == "do_edit_announcement")
{
verify_post_check($mybb->get_input('my_post_key'));

if($mybb->input['action'] == "do_edit_announcement")
{
verify_post_check($mybb->get_input('my_post_key'));





	if($mybb->usergroup['canmanageannounce'] == 0)
{
error_no_permission();
}

// Get the announcement

	if($mybb->usergroup['canmanageannounce'] == 0)
{
error_no_permission();
}

// Get the announcement

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

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

	$query = $db->simple_select("announcements", "*", "aid='{$aid}'");
$announcement = $db->fetch_array($query);

// Check that it exists

	$query = $db->simple_select("announcements", "*", "aid='{$aid}'");
$announcement = $db->fetch_array($query);

// Check that it exists

	if(!$announcement)
{
error($lang->error_invalid_announcement);
}

	if(!$announcement)
{
error($lang->error_invalid_announcement);
}


// Mod has permissions to edit this announcement
if(($mybb->usergroup['issupermod'] != 1 && $announcement['fid'] == -1) || ($announcement['fid'] != -1 && !is_moderator($announcement['fid'], "canmanageannouncements")) || ($unviewableforums && in_array($announcement['fid'], $unviewableforums)))
{
error_no_permission();


// Mod has permissions to edit this announcement
if(($mybb->usergroup['issupermod'] != 1 && $announcement['fid'] == -1) || ($announcement['fid'] != -1 && !is_moderator($announcement['fid'], "canmanageannouncements")) || ($unviewableforums && in_array($announcement['fid'], $unviewableforums)))
{
error_no_permission();

	}


	}


	$errors = array();

// Basic error checking

	$errors = array();

// Basic error checking

Zeile 1458Zeile 1512
	{
$startdate[0] = 12+$startdate[0];
if($startdate[0] >= 24)

	{
$startdate[0] = 12+$startdate[0];
if($startdate[0] >= 24)

		{

		{

			$startdate[0] = "00";
}
}

if(stristr($mybb->input['endtime_time'], "pm"))

			$startdate[0] = "00";
}
}

if(stristr($mybb->input['endtime_time'], "pm"))

	{

	{

		$enddate[0] = 12+$enddate[0];
if($enddate[0] >= 24)
{

		$enddate[0] = 12+$enddate[0];
if($enddate[0] >= 24)
{

Zeile 1477Zeile 1531
	if(!in_array($mybb->input['starttime_month'], $months))
{
$mybb->input['starttime_month'] = '01';

	if(!in_array($mybb->input['starttime_month'], $months))
{
$mybb->input['starttime_month'] = '01';

	}



	}

$localized_time_offset = (float)$mybb->user['timezone']*3600 + $mybb->user['dst']*3600;





	$startdate = gmmktime((int)$startdate[0], (int)$startdate[1], 0, (int)$mybb->input['starttime_month'], $mybb->get_input('starttime_day', 1), $mybb->get_input('starttime_year', 1));
if(!checkdate((int)$mybb->input['starttime_month'], (int)$mybb->input['starttime_day'], (int)$mybb->input['starttime_year']) || $startdate < 0 || $startdate == false)

	$startdate = gmmktime((int)$startdate[0], (int)$startdate[1], 0, $mybb->get_input('starttime_month', MyBB::INPUT_INT), $mybb->get_input('starttime_day', MyBB::INPUT_INT), $mybb->get_input('starttime_year', MyBB::INPUT_INT)) - $localized_time_offset;
if(!checkdate($mybb->get_input('starttime_month', MyBB::INPUT_INT), $mybb->get_input('starttime_day', MyBB::INPUT_INT), $mybb->get_input('starttime_year', MyBB::INPUT_INT)) || $startdate < 0 || $startdate == false)

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


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


	if($mybb->get_input('endtime_type', 1) == "2")

	if($mybb->get_input('endtime_type', MyBB::INPUT_INT) == "2")

	{
$enddate = '0';
$mybb->input['endtime_month'] = '01';

	{
$enddate = '0';
$mybb->input['endtime_month'] = '01';

Zeile 1497Zeile 1553
		{
$mybb->input['endtime_month'] = '01';
}

		{
$mybb->input['endtime_month'] = '01';
}

		$enddate = gmmktime((int)$enddate[0], (int)$enddate[1], 0, (int)$mybb->input['endtime_month'], $mybb->get_input('endtime_day', 1), $mybb->get_input('endtime_year', 1));
if(!checkdate((int)$mybb->input['endtime_month'], (int)$mybb->input['endtime_day'], (int)$mybb->input['endtime_year']) || $enddate < 0 || $enddate == false)

		$enddate = gmmktime((int)$enddate[0], (int)$enddate[1], 0, $mybb->get_input('endtime_month', MyBB::INPUT_INT), $mybb->get_input('endtime_day', MyBB::INPUT_INT), $mybb->get_input('endtime_year', MyBB::INPUT_INT)) - $localized_time_offset;
if(!checkdate($mybb->get_input('endtime_month', MyBB::INPUT_INT), $mybb->get_input('endtime_day', MyBB::INPUT_INT), $mybb->get_input('endtime_year', MyBB::INPUT_INT)) || $enddate < 0 || $enddate == false)

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

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

Zeile 1508Zeile 1564
		}
}


		}
}


	if($mybb->get_input('allowhtml', 1) == 1)

	if($mybb->settings['announcementshtml'] && $mybb->get_input('allowhtml', MyBB::INPUT_INT) == 1)

	{
$allowhtml = 1;
}

	{
$allowhtml = 1;
}

Zeile 1516Zeile 1572
	{
$allowhtml = 0;
}

	{
$allowhtml = 0;
}

	if($mybb->get_input('allowmycode', 1) == 1)

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

	{
$allowmycode = 1;
}

	{
$allowmycode = 1;
}

Zeile 1524Zeile 1580
	{
$allowmycode = 0;
}

	{
$allowmycode = 0;
}

	if($mybb->get_input('allowsmilies', 1) == 1)

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

	{
$allowsmilies = 1;
}

	{
$allowsmilies = 1;
}

Zeile 1557Zeile 1613
			);
$db->update_query("announcements", $update_announcement, "aid='{$aid}'");


			);
$db->update_query("announcements", $update_announcement, "aid='{$aid}'");


			log_moderator_action(array("aid" => $announcement['aid'], "subject" => $db->escape_string($mybb->input['title'])), $lang->announcement_edited);

			log_moderator_action(array("aid" => $announcement['aid'], "subject" => $mybb->input['title']), $lang->announcement_edited);


$plugins->run_hooks("modcp_do_edit_announcement_end");



$plugins->run_hooks("modcp_do_edit_announcement_end");


Zeile 1578Zeile 1634
		error_no_permission();
}


		error_no_permission();
}


	$aid = (int)$mybb->input['aid'];

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


add_breadcrumb($lang->mcp_nav_announcements, "modcp.php?action=announcements");
add_breadcrumb($lang->edit_announcement, "modcp.php?action=edit_announcements&amp;aid={$aid}");

// Get announcement


add_breadcrumb($lang->mcp_nav_announcements, "modcp.php?action=announcements");
add_breadcrumb($lang->edit_announcement, "modcp.php?action=edit_announcements&amp;aid={$aid}");

// Get announcement

	if(!isset($announcement))

	if(!isset($announcement) || $mybb->request_method != 'post')

	{
$query = $db->simple_select("announcements", "*", "aid='{$aid}'");
$announcement = $db->fetch_array($query);

	{
$query = $db->simple_select("announcements", "*", "aid='{$aid}'");
$announcement = $db->fetch_array($query);

Zeile 1595Zeile 1651
		error($lang->error_invalid_announcement);
}
if(($mybb->usergroup['issupermod'] != 1 && $announcement['fid'] == -1) || ($announcement['fid'] != -1 && !is_moderator($announcement['fid'], "canmanageannouncements")) || ($unviewableforums && in_array($announcement['fid'], $unviewableforums)))

		error($lang->error_invalid_announcement);
}
if(($mybb->usergroup['issupermod'] != 1 && $announcement['fid'] == -1) || ($announcement['fid'] != -1 && !is_moderator($announcement['fid'], "canmanageannouncements")) || ($unviewableforums && in_array($announcement['fid'], $unviewableforums)))

	{

	{

		error_no_permission();
}


		error_no_permission();
}


Zeile 1640Zeile 1696

$startmonth = $mybb->input['starttime_month'];
$startdateyear = htmlspecialchars_uni($mybb->input['starttime_year']);


$startmonth = $mybb->input['starttime_month'];
$startdateyear = htmlspecialchars_uni($mybb->input['starttime_year']);

		$startday = $mybb->get_input('starttime_day', 1);

		$startday = $mybb->get_input('starttime_day', MyBB::INPUT_INT);

		$starttime_time = htmlspecialchars_uni($mybb->input['starttime_time']);
$endmonth = $mybb->input['endtime_month'];
$enddateyear = htmlspecialchars_uni($mybb->input['endtime_year']);

		$starttime_time = htmlspecialchars_uni($mybb->input['starttime_time']);
$endmonth = $mybb->input['endtime_month'];
$enddateyear = htmlspecialchars_uni($mybb->input['endtime_year']);

		$endday = $mybb->get_input('endtime_day', 1);

		$endday = $mybb->get_input('endtime_day', MyBB::INPUT_INT);

		$endtime_time = htmlspecialchars_uni($mybb->input['endtime_time']);

$errored = true;
}
else

		$endtime_time = htmlspecialchars_uni($mybb->input['endtime_time']);

$errored = true;
}
else

	{
// Note: dates are in GMT timezone
$starttime_time = gmdate('g:i a', $announcement['startdate']);
$endtime_time = gmdate('g:i a', $announcement['enddate']);

$startday = gmdate('j', $announcement['startdate']);
$endday = gmdate('j', $announcement['enddate']);






	{
$localized_time_startdate = $announcement['startdate'] + (float)$mybb->user['timezone']*3600 + $mybb->user['dst']*3600;
$localized_time_enddate = $announcement['enddate'] + (float)$mybb->user['timezone']*3600 + $mybb->user['dst']*3600;

$starttime_time = gmdate($mybb->settings['timeformat'], $localized_time_startdate);
$endtime_time = gmdate($mybb->settings['timeformat'], $localized_time_enddate);

$startday = gmdate('j', $localized_time_startdate);
$endday = gmdate('j', $localized_time_enddate);

$startmonth = gmdate('m', $localized_time_startdate);
$endmonth = gmdate('m', $localized_time_enddate);





		$startmonth = gmdate('m', $announcement['startdate']);
$endmonth = gmdate('m', $announcement['enddate']);

$startdateyear = gmdate('Y', $announcement['startdate']);
$enddateyear = gmdate('Y', $announcement['enddate']);

		$startdateyear = gmdate('Y', $localized_time_startdate);
$enddateyear = gmdate('Y', $localized_time_enddate);





$errored = false;


$errored = false;

	}


	}


	// Generate form elements
$startdateday = $enddateday = '';
for($day = 1; $day <= 31; ++$day)
{
if($startday == $day)
{

	// Generate form elements
$startdateday = $enddateday = '';
for($day = 1; $day <= 31; ++$day)
{
if($startday == $day)
{

			$selected = " selected=\"selected\"";
eval("\$startdateday .= \"".$templates->get("modcp_announcements_day")."\";");
}
else
{
$selected = '';

			$selected = " selected=\"selected\"";
eval("\$startdateday .= \"".$templates->get("modcp_announcements_day")."\";");
}
else
{
$selected = '';

			eval("\$startdateday .= \"".$templates->get("modcp_announcements_day")."\";");
}

if($endday == $day)
{
$selected = " selected=\"selected\"";

			eval("\$startdateday .= \"".$templates->get("modcp_announcements_day")."\";");
}

if($endday == $day)
{
$selected = " selected=\"selected\"";

			eval("\$enddateday .= \"".$templates->get("modcp_announcements_day")."\";");
}

			eval("\$enddateday .= \"".$templates->get("modcp_announcements_day")."\";");
}

		else
{
$selected = '';
eval("\$enddateday .= \"".$templates->get("modcp_announcements_day")."\";");

		else
{
$selected = '';
eval("\$enddateday .= \"".$templates->get("modcp_announcements_day")."\";");

		}
}


		}
}


	$startmonthsel = $endmonthsel = array();
foreach(array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12') as $month)
{

	$startmonthsel = $endmonthsel = array();
foreach(array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12') as $month)
{

Zeile 1712Zeile 1770
	$message = htmlspecialchars_uni($announcement['message']);

$html_sel = $mycode_sel = $smilies_sel = array('yes' => '', 'no' => '');

	$message = htmlspecialchars_uni($announcement['message']);

$html_sel = $mycode_sel = $smilies_sel = array('yes' => '', 'no' => '');

	if($announcement['allowhtml'])



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

	{

	{

		$html_sel['yes'] = ' checked="checked"';










		if($announcement['allowhtml'])
{
$html_sel['yes'] = ' checked="checked"';
}
else
{
$html_sel['no'] = ' checked="checked"';
}

eval("\$allow_html = \"".$templates->get("modcp_announcements_allowhtml")."\";");

	}
else
{

	}
else
{

		$html_sel['no'] = ' checked="checked"';

		$allow_html = '';

	}

if($announcement['allowmycode'])

	}

if($announcement['allowmycode'])

Zeile 1740Zeile 1808
	}

$end_type_sel = array('infinite' => '', 'finite' => '');

	}

$end_type_sel = array('infinite' => '', 'finite' => '');

	if(($errored && $mybb->get_input('endtime_type', 1) == 2) || (!$errored && (int)$announcement['enddate'] == 0) || $makeshift_end == true)

	if(($errored && $mybb->get_input('endtime_type', MyBB::INPUT_INT) == 2) || (!$errored && (int)$announcement['enddate'] == 0) || $makeshift_end == true)

	{
$end_type_sel['infinite'] = ' checked="checked"';
}

	{
$end_type_sel['infinite'] = ' checked="checked"';
}

Zeile 1761Zeile 1829
			'uid' => $mybb->user['uid'],
'subject' => $mybb->input['title'],
'message' => $mybb->input['message'],

			'uid' => $mybb->user['uid'],
'subject' => $mybb->input['title'],
'message' => $mybb->input['message'],

			'allowhtml' => (int)$mybb->input['allowhtml'],
'allowmycode' => (int)$mybb->input['allowmycode'],
'allowsmilies' => (int)$mybb->input['allowsmilies'],

			'allowhtml' => $mybb->settings['announcementshtml'] && $mybb->get_input('allowhtml', MyBB::INPUT_INT),
'allowmycode' => $mybb->get_input('allowmycode', MyBB::INPUT_INT),
'allowsmilies' => $mybb->get_input('allowsmilies', MyBB::INPUT_INT),

			'dateline' => TIME_NOW,
'userusername' => $mybb->user['username'],
);

			'dateline' => TIME_NOW,
'userusername' => $mybb->user['username'],
);

Zeile 1842Zeile 1910
			foreach($global_announcements as $aid => $announcement)
{
$trow = alt_trow();

			foreach($global_announcements as $aid => $announcement)
{
$trow = alt_trow();

				if($announcement['startdate'] > TIME_NOW || ($announcement['enddate'] < TIME_NOW && $announcement['enddate'] != 0))

				if((isset($announcement['startdate']) && $announcement['startdate'] > TIME_NOW) || (isset($announcement['enddate']) && $announcement['enddate'] < TIME_NOW && $announcement['enddate'] != 0))

				{
eval("\$icon = \"".$templates->get("modcp_announcements_announcement_expired")."\";");
}

				{
eval("\$icon = \"".$templates->get("modcp_announcements_announcement_expired")."\";");
}

Zeile 1851Zeile 1919
					eval("\$icon = \"".$templates->get("modcp_announcements_announcement_active")."\";");
}


					eval("\$icon = \"".$templates->get("modcp_announcements_announcement_active")."\";");
}


				$subject = htmlspecialchars_uni($announcement['subject']);

				$subject = htmlspecialchars_uni($parser->parse_badwords($announcement['subject']));


eval("\$announcements_global .= \"".$templates->get("modcp_announcements_announcement_global")."\";");
}


eval("\$announcements_global .= \"".$templates->get("modcp_announcements_announcement_global")."\";");
}

Zeile 1893Zeile 1961

$plugins->run_hooks("modcp_do_modqueue_start");



$plugins->run_hooks("modcp_do_modqueue_start");


	$mybb->input['threads'] = $mybb->get_input('threads', 2);
$mybb->input['posts'] = $mybb->get_input('posts', 2);
$mybb->input['attachments'] = $mybb->get_input('attachments', 2);

	$mybb->input['threads'] = $mybb->get_input('threads', MyBB::INPUT_ARRAY);
$mybb->input['posts'] = $mybb->get_input('posts', MyBB::INPUT_ARRAY);
$mybb->input['attachments'] = $mybb->get_input('attachments', MyBB::INPUT_ARRAY);

	if(!empty($mybb->input['threads']))
{
$threads = array_map("intval", array_keys($mybb->input['threads']));

	if(!empty($mybb->input['threads']))
{
$threads = array_map("intval", array_keys($mybb->input['threads']));

Zeile 2056Zeile 2124
		// Figure out if we need to display multiple pages.
if($mybb->get_input('page') != "last")
{

		// Figure out if we need to display multiple pages.
if($mybb->get_input('page') != "last")
{

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

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

		}

$perpage = $mybb->settings['threadsperpage'];

		}

$perpage = $mybb->settings['threadsperpage'];

Zeile 2108Zeile 2176
			{
if($thread['threadusername'] != "")
{

			{
if($thread['threadusername'] != "")
{

 
					$thread['threadusername'] = htmlspecialchars_uni($thread['threadusername']);

					$profile_link = $thread['threadusername'];
}
else

					$profile_link = $thread['threadusername'];
}
else

Zeile 2117Zeile 2186
			}
else
{

			}
else
{

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

				$profile_link = build_profile_link($thread['username'], $thread['uid']);
}


				$profile_link = build_profile_link($thread['username'], $thread['uid']);
}


Zeile 2175Zeile 2245
		// Figure out if we need to display multiple pages.
if($mybb->get_input('page') != "last")
{

		// Figure out if we need to display multiple pages.
if($mybb->get_input('page') != "last")
{

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

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

		}

$perpage = $mybb->settings['postsperpage'];

		}

$perpage = $mybb->settings['postsperpage'];

Zeile 2210Zeile 2280
			LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=p.tid)
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=p.uid)
WHERE p.visible='0' {$tflist_queue_posts} AND t.firstpost != p.pid

			LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=p.tid)
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=p.uid)
WHERE p.visible='0' {$tflist_queue_posts} AND t.firstpost != p.pid

			ORDER BY p.dateline DESC

			ORDER BY p.dateline DESC, p.pid DESC

			LIMIT {$start}, {$perpage}
");
$posts = '';

			LIMIT {$start}, {$perpage}
");
$posts = '';

Zeile 2218Zeile 2288
		{
$altbg = alt_trow();
$post['threadsubject'] = htmlspecialchars_uni($parser->parse_badwords($post['threadsubject']));

		{
$altbg = alt_trow();
$post['threadsubject'] = htmlspecialchars_uni($parser->parse_badwords($post['threadsubject']));

 
			$post['subject'] = htmlspecialchars_uni($parser->parse_badwords($post['subject']));

			$post['threadlink'] = get_thread_link($post['tid']);
$post['postlink'] = get_post_link($post['pid'], $post['tid']);
$forum_link = get_forum_link($post['fid']);

			$post['threadlink'] = get_thread_link($post['tid']);
$post['postlink'] = get_post_link($post['pid'], $post['tid']);
$forum_link = get_forum_link($post['fid']);

Zeile 2228Zeile 2299
			{
if($post['postusername'] != "")
{

			{
if($post['postusername'] != "")
{

 
					$post['postusername'] = htmlspecialchars_uni($post['postusername']);

					$profile_link = $post['postusername'];
}
else

					$profile_link = $post['postusername'];
}
else

Zeile 2237Zeile 2309
			}
else
{

			}
else
{

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

				$profile_link = build_profile_link($post['username'], $post['uid']);
}


				$profile_link = build_profile_link($post['username'], $post['uid']);
}


Zeile 2299Zeile 2372
		// Figure out if we need to display multiple pages.
if($mybb->get_input('page') != "last")
{

		// Figure out if we need to display multiple pages.
if($mybb->get_input('page') != "last")
{

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

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

		}

$perpage = $mybb->settings['postsperpage'];

		}

$perpage = $mybb->settings['postsperpage'];

Zeile 2350Zeile 2423

$attachdate = my_date('relative', $attachment['dateuploaded']);



$attachdate = my_date('relative', $attachment['dateuploaded']);


			$attachment['postsubject'] = htmlspecialchars_uni($attachment['postsubject']);

			$attachment['postsubject'] = htmlspecialchars_uni($parser->parse_badwords($attachment['postsubject']));

			$attachment['filename'] = htmlspecialchars_uni($attachment['filename']);

			$attachment['filename'] = htmlspecialchars_uni($attachment['filename']);

			$attachment['threadsubject'] = htmlspecialchars_uni($attachment['threadsubject']);

			$attachment['threadsubject'] = htmlspecialchars_uni($parser->parse_badwords($attachment['threadsubject']));

			$attachment['filesize'] = get_friendly_size($attachment['filesize']);

$link = get_post_link($attachment['pid'], $attachment['tid']) . "#pid{$attachment['pid']}";
$thread_link = get_thread_link($attachment['tid']);

			$attachment['filesize'] = get_friendly_size($attachment['filesize']);

$link = get_post_link($attachment['pid'], $attachment['tid']) . "#pid{$attachment['pid']}";
$thread_link = get_thread_link($attachment['tid']);

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

			$profile_link = build_profile_link($attachment['username'], $attachment['uid']);

eval("\$attachments .= \"".$templates->get("modcp_modqueue_attachments_attachment")."\";");

			$profile_link = build_profile_link($attachment['username'], $attachment['uid']);

eval("\$attachments .= \"".$templates->get("modcp_modqueue_attachments_attachment")."\";");

Zeile 2406Zeile 2480
if($mybb->input['action'] == "do_editprofile")
{
// Verify incoming POST request

if($mybb->input['action'] == "do_editprofile")
{
// Verify incoming POST request

	verify_post_check($mybb->input['my_post_key']);

	verify_post_check($mybb->get_input('my_post_key'));


if($mybb->usergroup['caneditprofiles'] == 0)
{


if($mybb->usergroup['caneditprofiles'] == 0)
{

Zeile 2427Zeile 2501

$plugins->run_hooks("modcp_do_editprofile_start");



$plugins->run_hooks("modcp_do_editprofile_start");


	if($mybb->get_input('away', 1) == 1 && $mybb->settings['allowaway'] != 0)

	if($mybb->get_input('away', MyBB::INPUT_INT) == 1 && $mybb->settings['allowaway'] != 0)

	{
$awaydate = TIME_NOW;
if(!empty($mybb->input['awayday']))
{
// If the user has indicated that they will return on a specific day, but not month or year, assume it is current month and year

	{
$awaydate = TIME_NOW;
if(!empty($mybb->input['awayday']))
{
// If the user has indicated that they will return on a specific day, but not month or year, assume it is current month and year

			if(!$mybb->get_input('awaymonth', 1))

			if(!$mybb->get_input('awaymonth', MyBB::INPUT_INT))

			{
$mybb->input['awaymonth'] = my_date('n', $awaydate);

			{
$mybb->input['awaymonth'] = my_date('n', $awaydate);

			}
if(!$mybb->get_input('awayyear', 1))

			}
if(!$mybb->get_input('awayyear', MyBB::INPUT_INT))

			{
$mybb->input['awayyear'] = my_date('Y', $awaydate);
}

			{
$mybb->input['awayyear'] = my_date('Y', $awaydate);
}

Zeile 2465Zeile 2539
			"date" => $awaydate,
"returndate" => $returndate,
"awayreason" => $mybb->get_input('awayreason')

			"date" => $awaydate,
"returndate" => $returndate,
"awayreason" => $mybb->get_input('awayreason')

		);

		);

	}
else
{

	}
else
{

Zeile 2484Zeile 2558
	// Set the data for the new user.
$updated_user = array(
"uid" => $user['uid'],

	// Set the data for the new user.
$updated_user = array(
"uid" => $user['uid'],

		"profile_fields" => $mybb->get_input('profile_fields', 2),

		"profile_fields" => $mybb->get_input('profile_fields', MyBB::INPUT_ARRAY),

		"profile_fields_editable" => true,
"website" => $mybb->get_input('website'),
"icq" => $mybb->get_input('icq'),

		"profile_fields_editable" => true,
"website" => $mybb->get_input('website'),
"icq" => $mybb->get_input('icq'),

		"aim" => $mybb->get_input('aim'),
"yahoo" => $mybb->get_input('yahoo'),

 
		"skype" => $mybb->get_input('skype'),
"google" => $mybb->get_input('google'),
"signature" => $mybb->get_input('signature'),
"usernotes" => $mybb->get_input('usernotes'),
"away" => $away

		"skype" => $mybb->get_input('skype'),
"google" => $mybb->get_input('google'),
"signature" => $mybb->get_input('signature'),
"usernotes" => $mybb->get_input('usernotes'),
"away" => $away

	);


	);


	$updated_user['birthday'] = array(

	$updated_user['birthday'] = array(

		"day" => $mybb->get_input('birthday_day', 1),
"month" => $mybb->get_input('birthday_month', 1),
"year" => $mybb->get_input('birthday_year', 1)

		"day" => $mybb->get_input('birthday_day', MyBB::INPUT_INT),
"month" => $mybb->get_input('birthday_month', MyBB::INPUT_INT),
"year" => $mybb->get_input('birthday_year', MyBB::INPUT_INT)

	);

if(!empty($mybb->input['usertitle']))
{
$updated_user['usertitle'] = $mybb->get_input('usertitle');

	);

if(!empty($mybb->input['usertitle']))
{
$updated_user['usertitle'] = $mybb->get_input('usertitle');

	}

	}

	else if(!empty($mybb->input['reverttitle']))
{
$updated_user['usertitle'] = '';
}

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

	else if(!empty($mybb->input['reverttitle']))
{
$updated_user['usertitle'] = '';
}

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

	{

	{

		$updated_user['avatarurl'] = '';
}

// Set the data of the user in the datahandler.
$userhandler->set_data($updated_user);

		$updated_user['avatarurl'] = '';
}

// Set the data of the user in the datahandler.
$userhandler->set_data($updated_user);

	$errors = '';

	$errors = array();


// Validate the user and get any errors that might have occurred.
if(!$userhandler->validate_user())
{
$errors = $userhandler->get_friendly_errors();
$mybb->input['action'] = "editprofile";


// Validate the user and get any errors that might have occurred.
if(!$userhandler->validate_user())
{
$errors = $userhandler->get_friendly_errors();
$mybb->input['action'] = "editprofile";

	}
else

	}
else

	{
// Are we removing an avatar from this user?
if(!empty($mybb->input['remove_avatar']))

	{
// Are we removing an avatar from this user?
if(!empty($mybb->input['remove_avatar']))

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

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





		// Moderator "Options" (suspend signature, suspend/moderate posting)
$moderator_options = array(
1 => array(

		// Moderator "Options" (suspend signature, suspend/moderate posting)
$moderator_options = array(
1 => array(

Zeile 2568Zeile 2640
		require_once MYBB_ROOT."inc/functions_warnings.php";
foreach($moderator_options as $option)
{

		require_once MYBB_ROOT."inc/functions_warnings.php";
foreach($moderator_options as $option)
{

			$mybb->input[$option['time']] = $mybb->get_input($option['time'], 1);

			${$option['time']} = $mybb->get_input($option['time'], MyBB::INPUT_INT);

			$mybb->input[$option['period']] = $mybb->get_input($option['period']);
if(empty($mybb->input[$option['action']]))
{

			$mybb->input[$option['period']] = $mybb->get_input($option['period']);
if(empty($mybb->input[$option['action']]))
{

Zeile 2581Zeile 2653

// Skip this option if we haven't selected it
continue;


// Skip this option if we haven't selected it
continue;

			}

else

			}

else

			{
if($mybb->input[$option['time']] == 0 && $mybb->input[$option['period']] != "never" && $user[$option['update_field']] != 1)
{
// User has selected a type of ban, but not entered a valid time frame
$string = $option['action']."_error";
$errors[] = $lang->$string;

			{
if($mybb->input[$option['time']] == 0 && $mybb->input[$option['period']] != "never" && $user[$option['update_field']] != 1)
{
// User has selected a type of ban, but not entered a valid time frame
$string = $option['action']."_error";
$errors[] = $lang->$string;

				}

if(!is_array($errors))

				}
else


				{
$suspend_length = fetch_time_length((int)$mybb->input[$option['time']], $mybb->input[$option['period']]);


				{
$suspend_length = fetch_time_length((int)$mybb->input[$option['time']], $mybb->input[$option['period']]);


Zeile 2605Zeile 2676
							$extra_user_updates[$option['update_length']] = 0;
}
elseif($suspend_length && $suspend_length != "-1")

							$extra_user_updates[$option['update_length']] = 0;
}
elseif($suspend_length && $suspend_length != "-1")

						{

						{

							// Temporary ban on action
$extra_user_updates[$option['update_length']] = TIME_NOW + $suspend_length;
}

							// Temporary ban on action
$extra_user_updates[$option['update_length']] = TIME_NOW + $suspend_length;
}

Zeile 2625Zeile 2696
					}
}
}

					}
}
}

		}


		}


		// Those with javascript turned off will be able to select both - cheeky!
// Check to make sure we're not moderating AND suspending posting

		// Those with javascript turned off will be able to select both - cheeky!
// Check to make sure we're not moderating AND suspending posting

		if(isset($extra_user_updates) && $extra_user_updates['moderateposts'] && $extra_user_updates['suspendposting'])

		if(isset($extra_user_updates) && !empty($extra_user_updates['moderateposts']) && !empty($extra_user_updates['suspendposting']))

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


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


		if(is_array($errors))
{

		if(is_array($errors) && !empty($errors))
{

			$mybb->input['action'] = "editprofile";
}
else
{
$plugins->run_hooks("modcp_do_editprofile_update");

			$mybb->input['action'] = "editprofile";
}
else
{
$plugins->run_hooks("modcp_do_editprofile_update");





			// Continue with the update if there is no errors
$user_info = $userhandler->update_user();
if(!empty($extra_user_updates))

			// Continue with the update if there is no errors
$user_info = $userhandler->update_user();
if(!empty($extra_user_updates))

Zeile 2660Zeile 2731
if($mybb->input['action'] == "editprofile")
{
if($mybb->usergroup['caneditprofiles'] == 0)

if($mybb->input['action'] == "editprofile")
{
if($mybb->usergroup['caneditprofiles'] == 0)

	{
error_no_permission();
}


	{
error_no_permission();
}


	add_breadcrumb($lang->mcp_nav_editprofile, "modcp.php?action=editprofile");


	add_breadcrumb($lang->mcp_nav_editprofile, "modcp.php?action=editprofile");


	$user = get_user($mybb->get_input('uid', 1));

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

	if(!$user)
{
error($lang->error_nomember);

	if(!$user)
{
error($lang->error_nomember);

	}


	}


	// Check if the current user has permission to edit this user
if(!modcp_can_manage_user($user['uid']))
{
error_no_permission();

	// Check if the current user has permission to edit this user
if(!modcp_can_manage_user($user['uid']))
{
error_no_permission();

	}

if($user['website'] == "" || $user['website'] == "http://")

















	}

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

// Set display group
$displaygroupfields = array("title", "description", "namestyle", "usertitle", "stars", "starimage", "image");

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

$display_group = usergroup_displaygroup($user['displaygroup']);
if(is_array($display_group))
{
$userperms = array_merge($userperms, $display_group);
}

if(!my_validate_url($user['website']))

	{

	{

		$user['website'] = "http://";

		$user['website'] = '';

	}

if($user['icq'] != "0")

	}

if($user['icq'] != "0")

Zeile 2693Zeile 2780
		$mybb->input = array_merge($user, $mybb->input);
$birthday = explode('-', $user['birthday']);
if(!isset($birthday[1]))

		$mybb->input = array_merge($user, $mybb->input);
$birthday = explode('-', $user['birthday']);
if(!isset($birthday[1]))

		{

		{

			$birthday[1] = '';
}
if(!isset($birthday[2]))
{
$birthday[2] = '';

			$birthday[1] = '';
}
if(!isset($birthday[2]))
{
$birthday[2] = '';

		}

		}

		list($mybb->input['birthday_day'], $mybb->input['birthday_month'], $mybb->input['birthday_year']) = $birthday;

		list($mybb->input['birthday_day'], $mybb->input['birthday_month'], $mybb->input['birthday_year']) = $birthday;

	}
else

	}
else

	{
$errors = inline_error($errors);

	{
$errors = inline_error($errors);

	}


	}


	// Sanitize all input

	// Sanitize all input

	foreach(array('usertitle', 'website', 'icq', 'aim', 'yahoo', 'skype', 'google', 'signature', 'birthday_day', 'birthday_month', 'birthday_year') as $field)

	foreach(array('usertitle', 'website', 'icq', 'skype', 'google', 'signature', 'birthday_day', 'birthday_month', 'birthday_year') as $field)

	{
$mybb->input[$field] = htmlspecialchars_uni($mybb->get_input($field));

	{
$mybb->input[$field] = htmlspecialchars_uni($mybb->get_input($field));

	}

// Custom user title, check to see if we have a default group title
if(!$user['displaygroup'])
{
$user['displaygroup'] = $user['usergroup'];
}

$displaygroupfields = array('usertitle');
$display_group = usergroup_displaygroup($user['displaygroup']);

if(!empty($display_group['usertitle']))
{
$defaulttitle = $display_group['usertitle'];
}

	}

// Custom user title
if(!empty($userperms['usertitle']))
{
$defaulttitle = htmlspecialchars_uni($userperms['usertitle']);
}









	else
{
// Go for post count title if a group default isn't set

	else
{
// Go for post count title if a group default isn't set

Zeile 2733Zeile 2812

foreach($usertitles as $title)
{


foreach($usertitles as $title)
{

			if($title['posts'] <= $mybb->user['postnum'])

			if($title['posts'] <= $user['postnum'])

			{

			{

				$defaulttitle = $title['title'];


				$defaulttitle = htmlspecialchars_uni($title['title']);
break;

			}
}
}

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

			}
}
}

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

	



	if(empty($user['usertitle']))
{
$lang->current_custom_usertitle = '';

	if(empty($user['usertitle']))
{
$lang->current_custom_usertitle = '';

Zeile 2785Zeile 2865
			$returndate = array();
$returndate[0] = $mybb->get_input('awayday');
$returndate[1] = $mybb->get_input('awaymonth');

			$returndate = array();
$returndate[0] = $mybb->get_input('awayday');
$returndate[1] = $mybb->get_input('awaymonth');

			$returndate[2] = $mybb->get_input('awayyear', 1);

			$returndate[2] = $mybb->get_input('awayyear', MyBB::INPUT_INT);

			$user['awayreason'] = htmlspecialchars_uni($mybb->get_input('awayreason'));
}
else

			$user['awayreason'] = htmlspecialchars_uni($mybb->get_input('awayreason'));
}
else

Zeile 2817Zeile 2897
			}

eval("\$returndatesel .= \"".$templates->get("usercp_profile_day")."\";");

			}

eval("\$returndatesel .= \"".$templates->get("usercp_profile_day")."\";");

		}


		}


		$returndatemonthsel = array();
foreach(range(1, 12) as $month)
{
$returndatemonthsel[$month] = '';

		$returndatemonthsel = array();
foreach(range(1, 12) as $month)
{
$returndatemonthsel[$month] = '';

		}

		}

		if(isset($returndate[1]))
{
$returndatemonthsel[$returndate[1]] = " selected=\"selected\"";

		if(isset($returndate[1]))
{
$returndatemonthsel[$returndate[1]] = " selected=\"selected\"";

Zeile 2836Zeile 2916

eval("\$awaysection = \"".$templates->get("usercp_profile_away")."\";");
}


eval("\$awaysection = \"".$templates->get("usercp_profile_away")."\";");
}





	$plugins->run_hooks("modcp_editprofile_start");

// Fetch profile fields

	$plugins->run_hooks("modcp_editprofile_start");

// Fetch profile fields

 
	$user_fields = array();

	$query = $db->simple_select("userfields", "*", "ufid='{$user['uid']}'");

	$query = $db->simple_select("userfields", "*", "ufid='{$user['uid']}'");

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




	if($db->num_rows($query) > 0)
{
$user_fields = $db->fetch_array($query);
}


$requiredfields = '';
$customfields = '';


$requiredfields = '';
$customfields = '';

	$mybb->input['profile_fields'] = $mybb->get_input('profile_fields', 2);

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


$pfcache = $cache->read('profilefields');



$pfcache = $cache->read('profilefields');


Zeile 2853Zeile 2937
	{
foreach($pfcache as $profilefield)
{

	{
foreach($pfcache as $profilefield)
{

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

			$profilefield['type'] = htmlspecialchars_uni($profilefield['type']);

			$profilefield['type'] = htmlspecialchars_uni($profilefield['type']);

 
			$profilefield['name'] = htmlspecialchars_uni($profilefield['name']);

			$profilefield['description'] = htmlspecialchars_uni($profilefield['description']);
$thing = explode("\n", $profilefield['type'], "2");
$type = $thing[0];
if(isset($thing[1]))
{
$options = $thing[1];

			$profilefield['description'] = htmlspecialchars_uni($profilefield['description']);
$thing = explode("\n", $profilefield['type'], "2");
$type = $thing[0];
if(isset($thing[1]))
{
$options = $thing[1];

			}
else
{
$options = '';

 
			}
$field = "fid{$profilefield['fid']}";

			}
$field = "fid{$profilefield['fid']}";

			$select = '';

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

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

				}
else
{
$userfield = '';

 
				}
}

				}
}

			else

			elseif(isset($user_fields[$field]))

			{
$userfield = $user_fields[$field];
}

			{
$userfield = $user_fields[$field];
}

			$code = '';

 
			if($type == "multiselect")
{
if($errors)

			if($type == "multiselect")
{
if($errors)

Zeile 2909Zeile 2986
						$val = str_replace("\n", "\\n", $val);

$sel = "";

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

$sel = "";

						if($val == $seloptions[$val])

						if(isset($seloptions[$val]) && $val == $seloptions[$val])

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

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

Zeile 2989Zeile 3066
					foreach($expoptions as $key => $val)
{
$checked = "";

					foreach($expoptions as $key => $val)
{
$checked = "";

						if($val == $seloptions[$val])

						if(isset($seloptions[$val]) && $val == $seloptions[$val])

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

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

Zeile 3024Zeile 3101
				eval("\$customfields .= \"".$templates->get("usercp_profile_customfield")."\";");
}
$altbg = alt_trow();

				eval("\$customfields .= \"".$templates->get("usercp_profile_customfield")."\";");
}
$altbg = alt_trow();

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

 
		}
}
if($customfields)

		}
}
if($customfields)

Zeile 3038Zeile 3108
		eval("\$customfields = \"".$templates->get("usercp_profile_profilefields")."\";");
}


		eval("\$customfields = \"".$templates->get("usercp_profile_profilefields")."\";");
}


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

	$lang->edit_profile = $lang->sprintf($lang->edit_profile, $user['username']);
$profile_link = build_profile_link(format_name($user['username'], $user['usergroup'], $user['displaygroup']), $user['uid']);


	$lang->edit_profile = $lang->sprintf($lang->edit_profile, $user['username']);
$profile_link = build_profile_link(format_name($user['username'], $user['usergroup'], $user['displaygroup']), $user['uid']);


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

	$codebuttons = build_mycode_inserter("signature");

// Do we mark the suspend signature box?

	$codebuttons = build_mycode_inserter("signature");

// Do we mark the suspend signature box?

	if($user['suspendsignature'] || ($mybb->get_input('suspendsignature', 1) && !empty($errors)))

	if($user['suspendsignature'] || ($mybb->get_input('suspendsignature', MyBB::INPUT_INT) && !empty($errors)))

	{
$checked = 1;
$checked_item = "checked=\"checked\"";

	{
$checked = 1;
$checked_item = "checked=\"checked\"";

Zeile 3056Zeile 3128
	}

// Do we mark the moderate posts box?

	}

// Do we mark the moderate posts box?

	if($user['moderateposts'] || ($mybb->get_input('moderateposting', 1) && !empty($errors)))

	if($user['moderateposts'] || ($mybb->get_input('moderateposting', MyBB::INPUT_INT) && !empty($errors)))

	{
$modpost_check = 1;
$modpost_checked = "checked=\"checked\"";

	{
$modpost_check = 1;
$modpost_checked = "checked=\"checked\"";

Zeile 3068Zeile 3140
	}

// Do we mark the suspend posts box?

	}

// Do we mark the suspend posts box?

	if($user['suspendposting'] || ($mybb->get_input('suspendposting', 1) && !empty($errors)))

	if($user['suspendposting'] || ($mybb->get_input('suspendposting', MyBB::INPUT_INT) && !empty($errors)))

	{
$suspost_check = 1;
$suspost_checked = "checked=\"checked\"";

	{
$suspost_check = 1;
$suspost_checked = "checked=\"checked\"";

Zeile 3113Zeile 3185

$suspendsignature_info = $moderateposts_info = $suspendposting_info = '';
$action_options = $modpost_options = $suspost_options = '';


$suspendsignature_info = $moderateposts_info = $suspendposting_info = '';
$action_options = $modpost_options = $suspost_options = '';

 
	$modopts = array();

	foreach($moderator_options as $option)
{

	foreach($moderator_options as $option)
{

		$mybb->input[$option['time']] = $mybb->get_input($option['time'], 1);

		${$option['time']} = $mybb->get_input($option['time'], MyBB::INPUT_INT);

		// Display the suspension info, if this user has this option suspended
if($user[$option['option']])
{

		// Display the suspension info, if this user has this option suspended
if($user[$option['option']])
{

Zeile 3180Zeile 3253
	}

eval("\$suspend_signature = \"".$templates->get("modcp_editprofile_signature")."\";");

	}

eval("\$suspend_signature = \"".$templates->get("modcp_editprofile_signature")."\";");

 

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


if(!isset($newtitle))
{
$newtitle = '';


if(!isset($newtitle))
{
$newtitle = '';

	}

$plugins->run_hooks("modcp_editprofile_end");







	}

$birthday_year = $mybb->input['birthday_year'];
$user_website = $mybb->input['website'];
$user_icq = $mybb->input['icq'];
$user_skype = $mybb->input['skype'];
$user_google = $mybb->input['google'];

$plugins->run_hooks("modcp_editprofile_end");


eval("\$edituser = \"".$templates->get("modcp_editprofile")."\";");
output_page($edituser);
}


eval("\$edituser = \"".$templates->get("modcp_editprofile")."\";");
output_page($edituser);
}





if($mybb->input['action'] == "finduser")
{
if($mybb->usergroup['caneditprofiles'] == 0)

if($mybb->input['action'] == "finduser")
{
if($mybb->usergroup['caneditprofiles'] == 0)

Zeile 3201Zeile 3282

add_breadcrumb($lang->mcp_nav_users, "modcp.php?action=finduser");



add_breadcrumb($lang->mcp_nav_users, "modcp.php?action=finduser");


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

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

	if(!$perpage || $perpage <= 0)
{
$perpage = $mybb->settings['threadsperpage'];

	if(!$perpage || $perpage <= 0)
{
$perpage = $mybb->settings['threadsperpage'];

Zeile 3210Zeile 3291

if(isset($mybb->input['username']))
{


if(isset($mybb->input['username']))
{

		$where = " AND LOWER(username) LIKE '%".my_strtolower($db->escape_string_like($mybb->get_input('username')))."%'";











		switch($db->type)
{
case 'mysql':
case 'mysqli':
$field = 'username';
break;
default:
$field = 'LOWER(username)';
break;
}
$where = " AND {$field} LIKE '%".my_strtolower($db->escape_string_like($mybb->get_input('username')))."%'";

	}

// Sort order & direction

	}

// Sort order & direction

Zeile 3224Zeile 3315
			break;
case "username":
$sortby = "username";

			break;
case "username":
$sortby = "username";

			break;

			break;

		default:
$sortby = "regdate";
}

		default:
$sortby = "regdate";
}

Zeile 3256Zeile 3347
	}

if($page > $pages || $page <= 0)

	}

if($page > $pages || $page <= 0)

	{
$page = 1;
}

	{
$page = 1;
}

	if($page)

	if($page)

	{

	{

		$start = ($page-1) * $perpage;
}

		$start = ($page-1) * $perpage;
}

	else
{
$start = 0;
$page = 1;
}

	else
{
$start = 0;
$page = 1;
}


$page_url = 'modcp.php?action=finduser';
foreach(array('username', 'sortby', 'order') as $field)
{


$page_url = 'modcp.php?action=finduser';
foreach(array('username', 'sortby', 'order') as $field)
{

		$mybb->input[$field] = htmlspecialchars_uni($mybb->get_input($field));

 
		if(!empty($mybb->input[$field]))
{
$page_url .= "&amp;{$field}=".$mybb->input[$field];
}
}

		if(!empty($mybb->input[$field]))
{
$page_url .= "&amp;{$field}=".$mybb->input[$field];
}
}





	$multipage = multipage($user_count, $perpage, $page, $page_url);

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

	$multipage = multipage($user_count, $perpage, $page, $page_url);

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

Zeile 3291Zeile 3381
	while($user = $db->fetch_array($query))
{
$alt_row = alt_trow();

	while($user = $db->fetch_array($query))
{
$alt_row = alt_trow();

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

		$user['username'] = format_name($user['username'], $user['usergroup'], $user['displaygroup']);
$user['postnum'] = my_number_format($user['postnum']);
$regdate = my_date('relative', $user['regdate']);

		$user['username'] = format_name($user['username'], $user['usergroup'], $user['displaygroup']);
$user['postnum'] = my_number_format($user['postnum']);
$regdate = my_date('relative', $user['regdate']);

Zeile 3308Zeile 3399
		else
{
$lastdate = my_date('relative', $user['lastvisit']);

		else
{
$lastdate = my_date('relative', $user['lastvisit']);

		}

		}





		$usergroup = $usergroups_cache[$user['usergroup']]['title'];

		$usergroup = htmlspecialchars_uni($usergroups_cache[$user['usergroup']]['title']);

		eval("\$users .= \"".$templates->get("modcp_finduser_user")."\";");
}


		eval("\$users .= \"".$templates->get("modcp_finduser_user")."\";");
}


Zeile 3322Zeile 3413

$plugins->run_hooks("modcp_finduser_end");



$plugins->run_hooks("modcp_finduser_end");


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

	eval("\$finduser = \"".$templates->get("modcp_finduser")."\";");
output_page($finduser);
}

	eval("\$finduser = \"".$templates->get("modcp_finduser")."\";");
output_page($finduser);
}

Zeile 3337Zeile 3429

// Filter options
$where_sql = '';


// Filter options
$where_sql = '';

	$mybb->input['filter'] = $mybb->get_input('filter', 2);
$mybb->input['search'] = $mybb->get_input('search', 2);

	$mybb->input['filter'] = $mybb->get_input('filter', MyBB::INPUT_ARRAY);
$mybb->input['search'] = $mybb->get_input('search', MyBB::INPUT_ARRAY);

	if(!empty($mybb->input['filter']['username']))
{
$search_user = get_user_by_username($mybb->input['filter']['username']);

	if(!empty($mybb->input['filter']['username']))
{
$search_user = get_user_by_username($mybb->input['filter']['username']);

Zeile 3394Zeile 3486
		$search['reason'] = $db->escape_string_like($mybb->input['filter']['reason']);
$where_sql .= " AND (w.notes LIKE '%{$search['reason']}%' OR t.title LIKE '%{$search['reason']}%' OR w.title LIKE '%{$search['reason']}%')";
$mybb->input['filter']['reason'] = htmlspecialchars_uni($mybb->input['filter']['reason']);

		$search['reason'] = $db->escape_string_like($mybb->input['filter']['reason']);
$where_sql .= " AND (w.notes LIKE '%{$search['reason']}%' OR t.title LIKE '%{$search['reason']}%' OR w.title LIKE '%{$search['reason']}%')";
$mybb->input['filter']['reason'] = htmlspecialchars_uni($mybb->input['filter']['reason']);

	}
else

	}
else

	{
$mybb->input['filter']['reason'] = '';
}
$sortbysel = array('username' => '', 'expires' => '', 'issuedby' => '', 'dateline' => '');
if(!isset($mybb->input['filter']['sortby']))

	{
$mybb->input['filter']['reason'] = '';
}
$sortbysel = array('username' => '', 'expires' => '', 'issuedby' => '', 'dateline' => '');
if(!isset($mybb->input['filter']['sortby']))

	{

	{

		$mybb->input['filter']['sortby'] = '';
}
switch($mybb->input['filter']['sortby'])

		$mybb->input['filter']['sortby'] = '';
}
switch($mybb->input['filter']['sortby'])

Zeile 3436Zeile 3528
	else
{
$ordersel['asc'] = ' selected="selected"';

	else
{
$ordersel['asc'] = ' selected="selected"';

	}


	}


	$plugins->run_hooks("modcp_warninglogs_start");

// Pagination stuff

	$plugins->run_hooks("modcp_warninglogs_start");

// Pagination stuff

Zeile 3451Zeile 3543
	";
$query = $db->query($sql);
$total_warnings = $db->fetch_field($query, 'count');

	";
$query = $db->query($sql);
$total_warnings = $db->fetch_field($query, 'count');

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

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

	if($page <= 0)

	if($page <= 0)

	{

	{

		$page = 1;
}
$per_page = 20;

		$page = 1;
}
$per_page = 20;

Zeile 3462Zeile 3554
		$per_page = (int)$mybb->input['filter']['per_page'];
}
$start = ($page-1) * $per_page;

		$per_page = (int)$mybb->input['filter']['per_page'];
}
$start = ($page-1) * $per_page;

 
	$pages = ceil($total_warnings / $per_page);
if($page > $pages)
{
$start = 0;
$page = 1;
}

	// Build the base URL for pagination links
$url = 'modcp.php?action=warninglogs';
if(is_array($mybb->input['filter']) && count($mybb->input['filter']))

	// Build the base URL for pagination links
$url = 'modcp.php?action=warninglogs';
if(is_array($mybb->input['filter']) && count($mybb->input['filter']))

Zeile 3497Zeile 3595
	while($row = $db->fetch_array($query))
{
$trow = alt_trow();

	while($row = $db->fetch_array($query))
{
$trow = alt_trow();

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

		$username = format_name($row['username'], $row['usergroup'], $row['displaygroup']);
$username_link = build_profile_link($username, $row['uid']);

		$username = format_name($row['username'], $row['usergroup'], $row['displaygroup']);
$username_link = build_profile_link($username, $row['uid']);

 
		$row['mod_username'] = htmlspecialchars_uni($row['mod_username']);

		$mod_username = format_name($row['mod_username'], $row['mod_usergroup'], $row['mod_displaygroup']);
$mod_username_link = build_profile_link($mod_username, $row['mod_uid']);

		$mod_username = format_name($row['mod_username'], $row['mod_usergroup'], $row['mod_displaygroup']);
$mod_username_link = build_profile_link($mod_username, $row['mod_uid']);

		$issued_date = my_date($mybb->settings['dateformat'], $row['dateline']).' '.my_date($mybb->settings['timeformat'], $row['dateline']);

		$issued_date = my_date('normal', $row['dateline']);

		$revoked_text = '';
if($row['daterevoked'] > 0)
{

		$revoked_text = '';
if($row['daterevoked'] > 0)
{

Zeile 3510Zeile 3610
		}
if($row['expires'] > 0)
{

		}
if($row['expires'] > 0)
{

			$expire_date = my_date('relative', $row['expires'], '', 2);

			$expire_date = nice_time($row['expires']-TIME_NOW);

		}
else
{

		}
else
{

Zeile 3523Zeile 3623
		}
$title = htmlspecialchars_uni($title);
if($row['points'] >= 0)

		}
$title = htmlspecialchars_uni($title);
if($row['points'] >= 0)

		{

		{

			$points = '+'.$row['points'];
}


			$points = '+'.$row['points'];
}


Zeile 3536Zeile 3636
	}

$plugins->run_hooks("modcp_warninglogs_end");

	}

$plugins->run_hooks("modcp_warninglogs_end");

 

$filter_username = $mybb->input['filter']['username'];
$filter_modusername = $mybb->input['filter']['mod_username'];
$filter_reason = $mybb->input['filter']['reason'];


eval("\$warninglogs = \"".$templates->get("modcp_warninglogs")."\";");
output_page($warninglogs);
}


eval("\$warninglogs = \"".$templates->get("modcp_warninglogs")."\";");
output_page($warninglogs);
}





if($mybb->input['action'] == "ipsearch")
{
if($mybb->usergroup['canuseipsearch'] == 0)

if($mybb->input['action'] == "ipsearch")
{
if($mybb->usergroup['canuseipsearch'] == 0)

Zeile 3549Zeile 3653
	}

add_breadcrumb($lang->mcp_nav_ipsearch, "modcp.php?action=ipsearch");

	}

add_breadcrumb($lang->mcp_nav_ipsearch, "modcp.php?action=ipsearch");





$ipsearch_results = $ipaddressvalue = '';

	$mybb->input['ipaddress'] = $mybb->get_input('ipaddress');
if($mybb->input['ipaddress'])
{
if(!is_array($groupscache))
{
$groupscache = $cache->read("usergroups");

	$mybb->input['ipaddress'] = $mybb->get_input('ipaddress');
if($mybb->input['ipaddress'])
{
if(!is_array($groupscache))
{
$groupscache = $cache->read("usergroups");

		}

$ipaddressvalue = htmlspecialchars_uni($mybb->input['ipaddress']);

		}

$ipaddressvalue = htmlspecialchars_uni($mybb->input['ipaddress']);


$ip_range = fetch_ip_range($mybb->input['ipaddress']);


$ip_range = fetch_ip_range($mybb->input['ipaddress']);





		$post_results = $user_results = 0;

// Searching post IP addresses
if(isset($mybb->input['search_posts']))

		$post_results = $user_results = 0;

// Searching post IP addresses
if(isset($mybb->input['search_posts']))

		{

		{

			if($ip_range)

			if($ip_range)

			{

			{

				if(!is_array($ip_range))
{

				if(!is_array($ip_range))
{

					$post_ip_sql = "ipaddress=".$db->escape_binary($ip_range);






































































					$post_ip_sql = "p.ipaddress=".$db->escape_binary($ip_range);
}
else
{
$post_ip_sql = "p.ipaddress BETWEEN ".$db->escape_binary($ip_range[0])." AND ".$db->escape_binary($ip_range[1]);
}
}

$plugins->run_hooks("modcp_ipsearch_posts_start");

if($post_ip_sql)
{
$where_sql = '';

$unviewable_forums = get_unviewable_forums(true);

if($unviewable_forums)
{
$where_sql .= " AND p.fid NOT IN ({$unviewable_forums})";
}

if($inactiveforums)
{
$where_sql .= " AND p.fid NOT IN ({$inactiveforums})";
}

// Check group permissions if we can't view threads not started by us
$onlyusfids = array();
$group_permissions = forum_permissions();
foreach($group_permissions as $fid => $forumpermissions)
{
if(isset($forumpermissions['canonlyviewownthreads']) && $forumpermissions['canonlyviewownthreads'] == 1)
{
$onlyusfids[] = $fid;
}
}

if(!empty($onlyusfids))
{
$where_sql .= " AND ((t.fid IN(".implode(',', $onlyusfids).") AND t.uid='{$mybb->user['uid']}') OR t.fid NOT IN(".implode(',', $onlyusfids)."))";
}

// Moderators can view unapproved/deleted posts
if($mybb->usergroup['issupermod'] != 1)
{
$unapprove_forums = array();
$deleted_forums = array();
$visible_sql = " AND (p.visible = 1 AND t.visible = 1)";
$query = $db->simple_select("moderators", "fid, canviewunapprove, canviewdeleted", "(id='{$mybb->user['uid']}' AND isgroup='0') OR (id='{$mybb->user['usergroup']}' AND isgroup='1')");
while($moderator = $db->fetch_array($query))
{
if($moderator['canviewunapprove'] == 1)
{
$unapprove_forums[] = $moderator['fid'];
}

if($moderator['canviewdeleted'] == 1)
{
$deleted_forums[] = $moderator['fid'];
}
}

if(!empty($unapprove_forums))
{
$visible_sql .= " OR (p.visible = 0 AND p.fid IN(".implode(',', $unapprove_forums).")) OR (t.visible = 0 AND t.fid IN(".implode(',', $unapprove_forums)."))";
}
if(!empty($deleted_forums))
{
$visible_sql .= " OR (p.visible = -1 AND p.fid IN(".implode(',', $deleted_forums).")) OR (t.visible = -1 AND t.fid IN(".implode(',', $deleted_forums)."))";
}

				}
else
{

				}
else
{

					$post_ip_sql = "ipaddress BETWEEN ".$db->escape_binary($ip_range[0])." AND ".$db->escape_binary($ip_range[1]);


					// Super moderators (and admins)
$visible_sql = " AND p.visible >= -1";

				}

				}

			}

$plugins->run_hooks("modcp_ipsearch_posts_start");

 




			if($post_ip_sql)
{
$query = $db->simple_select('posts', 'COUNT(pid) AS count', "$post_ip_sql AND visible >= -1");




				$query = $db->query("
SELECT COUNT(p.pid) AS count
FROM ".TABLE_PREFIX."posts p
LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid = p.tid)
WHERE {$post_ip_sql}{$where_sql}{$visible_sql}
");

				$post_results = $db->fetch_field($query, "count");
}
}

				$post_results = $db->fetch_field($query, "count");
}
}

Zeile 3594Zeile 3769
			if($ip_range)
{
if(!is_array($ip_range))

			if($ip_range)
{
if(!is_array($ip_range))

				{

				{

					$user_ip_sql = "regip=".$db->escape_binary($ip_range)." OR lastip=".$db->escape_binary($ip_range);
}
else

					$user_ip_sql = "regip=".$db->escape_binary($ip_range)." OR lastip=".$db->escape_binary($ip_range);
}
else

Zeile 3602Zeile 3777
					$user_ip_sql = "regip BETWEEN ".$db->escape_binary($ip_range[0])." AND ".$db->escape_binary($ip_range[1])." OR lastip BETWEEN ".$db->escape_binary($ip_range[0])." AND ".$db->escape_binary($ip_range[1]);
}
}

					$user_ip_sql = "regip BETWEEN ".$db->escape_binary($ip_range[0])." AND ".$db->escape_binary($ip_range[1])." OR lastip BETWEEN ".$db->escape_binary($ip_range[0])." AND ".$db->escape_binary($ip_range[1]);
}
}





			$plugins->run_hooks("modcp_ipsearch_users_start");

if($user_ip_sql)
{

			$plugins->run_hooks("modcp_ipsearch_users_start");

if($user_ip_sql)
{

				$query = $db->query("
SELECT COUNT(uid) AS count
FROM ".TABLE_PREFIX."users
WHERE {$user_ip_sql}
");

				$query = $db->simple_select('users', 'COUNT(uid) AS count', $user_ip_sql);






$user_results = $db->fetch_field($query, "count");
}


$user_results = $db->fetch_field($query, "count");
}

Zeile 3625Zeile 3796
		}

// Now we have the result counts, paginate

		}

// Now we have the result counts, paginate

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

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

		if(!$perpage || $perpage <= 0)
{
$perpage = $mybb->settings['threadsperpage'];

		if(!$perpage || $perpage <= 0)
{
$perpage = $mybb->settings['threadsperpage'];

Zeile 3634Zeile 3805
		// Figure out if we need to display multiple pages.
if($mybb->get_input('page') != "last")
{

		// Figure out if we need to display multiple pages.
if($mybb->get_input('page') != "last")
{

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

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

		}

$pages = $total_results / $perpage;

		}

$pages = $total_results / $perpage;

Zeile 3665Zeile 3836
		{
if(!empty($mybb->input[$input]))
{

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

				$page_url .= "&amp;{$input}=".htmlspecialchars_uni($mybb->input[$input]);

				$page_url .= "&amp;{$input}=".urlencode($mybb->input[$input]);

			}
}
$multipage = multipage($total_results, $perpage, $page, $page_url);

			}
}
$multipage = multipage($total_results, $perpage, $page, $page_url);

Zeile 3674Zeile 3845
		$results = '';
if(isset($mybb->input['search_users']) && $user_results && $start <= $user_results)
{

		$results = '';
if(isset($mybb->input['search_users']) && $user_results && $start <= $user_results)
{

			$query = $db->query("
SELECT username, uid, regip, lastip
FROM ".TABLE_PREFIX."users
WHERE {$user_ip_sql}
ORDER BY regdate DESC
LIMIT {$start}, {$perpage}
");

			$query = $db->simple_select('users', 'username, uid, regip, lastip', $user_ip_sql,
array('order_by' => 'regdate', 'order_dir' => 'DESC', 'limit_start' => $start, 'limit' => $perpage));






			while($ipaddress = $db->fetch_array($query))
{
$result = false;

			while($ipaddress = $db->fetch_array($query))
{
$result = false;

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

				$profile_link = build_profile_link($ipaddress['username'], $ipaddress['uid']);
$trow = alt_trow();
$ip = false;
if(is_array($ip_range))
{

				$profile_link = build_profile_link($ipaddress['username'], $ipaddress['uid']);
$trow = alt_trow();
$ip = false;
if(is_array($ip_range))
{

					if(strcmp($ip_range[0], $ipaddress['regip']) >= 0 && strcmp($ip_range[1], $ipaddress['regip']) <= 0)

					if(strcmp($ip_range[0], $ipaddress['regip']) <= 0 && strcmp($ip_range[1], $ipaddress['regip']) >= 0)

					{
eval("\$subject = \"".$templates->get("modcp_ipsearch_result_regip")."\";");
$ip = my_inet_ntop($db->unescape_binary($ipaddress['regip']));

					{
eval("\$subject = \"".$templates->get("modcp_ipsearch_result_regip")."\";");
$ip = my_inet_ntop($db->unescape_binary($ipaddress['regip']));

					}
elseif(strcmp($ip_range[0], $ipaddress['lastip']) >= 0 && strcmp($ip_range[1], $ipaddress['lastip']) <= 0)

					}
elseif(strcmp($ip_range[0], $ipaddress['lastip']) <= 0 && strcmp($ip_range[1], $ipaddress['lastip']) >= 0)

					{
eval("\$subject = \"".$templates->get("modcp_ipsearch_result_lastip")."\";");
$ip = my_inet_ntop($db->unescape_binary($ipaddress['lastip']));

					{
eval("\$subject = \"".$templates->get("modcp_ipsearch_result_lastip")."\";");
$ip = my_inet_ntop($db->unescape_binary($ipaddress['lastip']));

Zeile 3714Zeile 3882
				{
eval("\$results .= \"".$templates->get("modcp_ipsearch_result")."\";");
$result = true;

				{
eval("\$results .= \"".$templates->get("modcp_ipsearch_result")."\";");
$result = true;

				}

				}

				if($result)
{
--$post_limit;
}

				if($result)
{
--$post_limit;
}

			}
}

			}
}

		$post_start = 0;
if($total_results > $user_results && $post_limit)
{

		$post_start = 0;
if($total_results > $user_results && $post_limit)
{

Zeile 3733Zeile 3901
		if(isset($mybb->input['search_posts']) && $post_results && (!isset($mybb->input['search_users']) || (isset($mybb->input['search_users']) && $post_limit > 0)))
{
$ipaddresses = $tids = $uids = array();

		if(isset($mybb->input['search_posts']) && $post_results && (!isset($mybb->input['search_users']) || (isset($mybb->input['search_users']) && $post_limit > 0)))
{
$ipaddresses = $tids = $uids = array();

 


			$query = $db->query("

			$query = $db->query("

				SELECT username AS postusername, uid, subject, pid, tid, ipaddress
FROM ".TABLE_PREFIX."posts
WHERE {$post_ip_sql} AND visible >= -1
ORDER BY dateline DESC


				SELECT p.username AS postusername, p.uid, p.subject, p.pid, p.tid, p.ipaddress
FROM ".TABLE_PREFIX."posts p
LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid = p.tid)
WHERE {$post_ip_sql}{$where_sql}{$visible_sql}
ORDER BY p.dateline DESC, p.pid DESC

				LIMIT {$post_start}, {$post_limit}
");
while($ipaddress = $db->fetch_array($query))

				LIMIT {$post_start}, {$post_limit}
");
while($ipaddress = $db->fetch_array($query))

Zeile 3766Zeile 3936
				foreach($ipaddresses as $ipaddress)
{
$ip = my_inet_ntop($db->unescape_binary($ipaddress['ipaddress']));

				foreach($ipaddresses as $ipaddress)
{
$ip = my_inet_ntop($db->unescape_binary($ipaddress['ipaddress']));

					if(!$ipaddress['username']) $ipaddress['username'] = $ipaddress['postusername']; // Guest username support





					if(!$ipaddress['username'])
{
$ipaddress['username'] = $ipaddress['postusername']; // Guest username support
}
$ipaddress['username'] = htmlspecialchars_uni($ipaddress['username']);

					$trow = alt_trow();
if(!$ipaddress['subject'])
{

					$trow = alt_trow();
if(!$ipaddress['subject'])
{

Zeile 3774Zeile 3948
					}

$ipaddress['postlink'] = get_post_link($ipaddress['pid'], $ipaddress['tid']);

					}

$ipaddress['postlink'] = get_post_link($ipaddress['pid'], $ipaddress['tid']);

					$ipaddress['subject'] = htmlspecialchars_uni($ipaddress['subject']);

					$ipaddress['subject'] = htmlspecialchars_uni($parser->parse_badwords($ipaddress['subject']));

					$ipaddress['profilelink'] = build_profile_link($ipaddress['username'], $ipaddress['uid']);

eval("\$subject = \"".$templates->get("modcp_ipsearch_result_post")."\";");

					$ipaddress['profilelink'] = build_profile_link($ipaddress['username'], $ipaddress['uid']);

eval("\$subject = \"".$templates->get("modcp_ipsearch_result_post")."\";");

Zeile 3786Zeile 3960
		if(!$results)
{
eval("\$results = \"".$templates->get("modcp_ipsearch_noresults")."\";");

		if(!$results)
{
eval("\$results = \"".$templates->get("modcp_ipsearch_noresults")."\";");

		}

		}


if($ipaddressvalue)
{


if($ipaddressvalue)
{

Zeile 3804Zeile 3978
			$ipaddress_url = urlencode($mybb->input['ipaddress']);
eval("\$misc_info_link = \"".$templates->get("modcp_ipsearch_results_information")."\";");
}

			$ipaddress_url = urlencode($mybb->input['ipaddress']);
eval("\$misc_info_link = \"".$templates->get("modcp_ipsearch_results_information")."\";");
}





		eval("\$ipsearch_results = \"".$templates->get("modcp_ipsearch_results")."\";");
}


		eval("\$ipsearch_results = \"".$templates->get("modcp_ipsearch_results")."\";");
}


Zeile 3816Zeile 3990
	}
$usersearchselect = $postsearchselect = '';
if(isset($mybb->input['search_posts']))

	}
$usersearchselect = $postsearchselect = '';
if(isset($mybb->input['search_posts']))

	{

	{

		$postsearchselect = "checked=\"checked\"";

		$postsearchselect = "checked=\"checked\"";

	}

	}

	if(isset($mybb->input['search_users']))
{
$usersearchselect = "checked=\"checked\"";

	if(isset($mybb->input['search_users']))
{
$usersearchselect = "checked=\"checked\"";

	}

$plugins->run_hooks("modcp_ipsearch_end");


	}

$plugins->run_hooks("modcp_ipsearch_end");


	eval("\$ipsearch = \"".$templates->get("modcp_ipsearch")."\";");
output_page($ipsearch);
}

	eval("\$ipsearch = \"".$templates->get("modcp_ipsearch")."\";");
output_page($ipsearch);
}

Zeile 3833Zeile 4007
if($mybb->input['action'] == "iplookup")
{
if($mybb->usergroup['canuseipsearch'] == 0)

if($mybb->input['action'] == "iplookup")
{
if($mybb->usergroup['canuseipsearch'] == 0)

	{

	{

		error_no_permission();
}


		error_no_permission();
}


Zeile 3856Zeile 4030
					$ipaddress_location .= $lang->comma.htmlspecialchars_uni(utf8_encode($ip_record['city']));
}
}

					$ipaddress_location .= $lang->comma.htmlspecialchars_uni(utf8_encode($ip_record['city']));
}
}

		}

$ipaddress_host_name = htmlspecialchars_uni(@gethostbyaddr($mybb->input['ipaddress']));


		}

$ipaddress_host_name = htmlspecialchars_uni(@gethostbyaddr($mybb->input['ipaddress']));


		// gethostbyaddr returns the same ip on failure
if($ipaddress_host_name == $mybb->input['ipaddress'])
{
$ipaddress_host_name = $lang->na;
}

		// gethostbyaddr returns the same ip on failure
if($ipaddress_host_name == $mybb->input['ipaddress'])
{
$ipaddress_host_name = $lang->na;
}

	}

$plugins->run_hooks("modcp_iplookup_end");

	}

$plugins->run_hooks("modcp_iplookup_end");


eval("\$iplookup = \"".$templates->get('modcp_ipsearch_misc_info', 1, 0)."\";");
echo($iplookup);


eval("\$iplookup = \"".$templates->get('modcp_ipsearch_misc_info', 1, 0)."\";");
echo($iplookup);

Zeile 3884Zeile 4058
	add_breadcrumb($lang->mcp_nav_banning, "modcp.php?action=banning");

if(!$mybb->settings['threadsperpage'])

	add_breadcrumb($lang->mcp_nav_banning, "modcp.php?action=banning");

if(!$mybb->settings['threadsperpage'])

	{

	{

		$mybb->settings['threadsperpage'] = 20;

		$mybb->settings['threadsperpage'] = 20;

	}


	}


	// Figure out if we need to display multiple pages.
$perpage = $mybb->settings['threadsperpage'];
if($mybb->get_input('page') != "last")

	// Figure out if we need to display multiple pages.
$perpage = $mybb->settings['threadsperpage'];
if($mybb->get_input('page') != "last")

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


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


	$query = $db->simple_select("banned", "COUNT(uid) AS count");
$banned_count = $db->fetch_field($query, "count");


	$query = $db->simple_select("banned", "COUNT(uid) AS count");
$banned_count = $db->fetch_field($query, "count");


Zeile 3908Zeile 4082
	}

if($page > $pages || $page <= 0)

	}

if($page > $pages || $page <= 0)

	{
$page = 1;
}


	{
$page = 1;
}


	if($page)
{
$start = ($page-1) * $perpage;

	if($page)
{
$start = ($page-1) * $perpage;

Zeile 3940Zeile 4114
	$bannedusers = '';
while($banned = $db->fetch_array($query))
{

	$bannedusers = '';
while($banned = $db->fetch_array($query))
{

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

		$profile_link = build_profile_link($banned['username'], $banned['uid']);

// Only show the edit & lift links if current user created ban, or is super mod/admin

		$profile_link = build_profile_link($banned['username'], $banned['uid']);

// Only show the edit & lift links if current user created ban, or is super mod/admin

Zeile 3949Zeile 4124
			eval("\$edit_link = \"".$templates->get("modcp_banning_edit")."\";");
}


			eval("\$edit_link = \"".$templates->get("modcp_banning_edit")."\";");
}


		$admin_profile = build_profile_link($banned['adminuser'], $banned['admin']);

		$admin_profile = build_profile_link(htmlspecialchars_uni($banned['adminuser']), $banned['admin']);


$trow = alt_trow();

if($banned['reason'])


$trow = alt_trow();

if($banned['reason'])

		{

		{

			$banned['reason'] = htmlspecialchars_uni($parser->parse_badwords($banned['reason']));

			$banned['reason'] = htmlspecialchars_uni($parser->parse_badwords($banned['reason']));

			$banned['reason'] = my_wordwrap($banned['reason']);
}
else
{
$banned['reason'] = $lang->na;

 
		}

		}


if($banned['lifted'] == 'perm' || $banned['lifted'] == '' || $banned['bantime'] == 'perm' || $banned['bantime'] == '---')





		else
{
$banned['reason'] = $lang->na;
}

if($banned['lifted'] == 'perm' || $banned['lifted'] == '' || $banned['bantime'] == 'perm' || $banned['bantime'] == '---')

		{
$banlength = $lang->permanent;
$timeremaining = $lang->na;

		{
$banlength = $lang->permanent;
$timeremaining = $lang->na;

Zeile 3975Zeile 4149

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



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


 
			$banned_class = '';
$ban_remaining = "{$timeremaining} {$lang->ban_remaining}";

if($remaining <= 0)
{
$banned_class = "imminent_banned";
$ban_remaining = $lang->ban_ending_imminently;
}

			if($remaining < 3600)
{

			if($remaining < 3600)
{

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

				$banned_class = "high_banned";

			}
else if($remaining < 86400)
{

			}
else if($remaining < 86400)
{

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

				$banned_class = "moderate_banned";
}
else if($remaining < 604800)
{
$banned_class = "low_banned";

			}
else
{

			}
else
{

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

				$banned_class = "normal_banned";

			}

			}

 

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

		}

eval("\$bannedusers .= \"".$templates->get("modcp_banning_ban")."\";");

		}

eval("\$bannedusers .= \"".$templates->get("modcp_banning_ban")."\";");

Zeile 4017Zeile 4201
		error_no_permission();
}


		error_no_permission();
}


	$query = $db->simple_select("banned", "*", "uid='".$mybb->get_input('uid', 1)."'");

	$query = $db->simple_select("banned", "*", "uid='".$mybb->get_input('uid', MyBB::INPUT_INT)."'");

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

if(!$ban)

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

if(!$ban)

Zeile 4038Zeile 4222

$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->update_query("users", $updated_group, "uid='{$ban['uid']}'");
$db->delete_query("banned", "uid='{$ban['uid']}'");


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


	$cache->update_banned();

 
	$cache->update_moderators();
log_moderator_action(array("uid" => $ban['uid'], "username" => $username), $lang->lifted_ban);


	$cache->update_moderators();
log_moderator_action(array("uid" => $ban['uid'], "username" => $username), $lang->lifted_ban);


Zeile 4064Zeile 4247
	}

// Editing an existing ban

	}

// Editing an existing ban

	if($mybb->get_input('uid', 1))


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

	{
// Get the users info from their uid
$query = $db->query("

	{
// Get the users info from their uid
$query = $db->query("

Zeile 4075Zeile 4259
		");
$user = $db->fetch_array($query);


		");
$user = $db->fetch_array($query);


		$existing_ban = false;

 
		if($user['uid'])
{
$existing_ban = true;

		if($user['uid'])
{
$existing_ban = true;

Zeile 4087Zeile 4270
			error_no_permission();
}
}

			error_no_permission();
}
}

 

$errors = array();


// Creating a new ban
if(!$existing_ban)


// Creating a new ban
if(!$existing_ban)

Zeile 4095Zeile 4280
		$options = array(
'fields' => array('username', 'usergroup', 'additionalgroups', 'displaygroup')
);

		$options = array(
'fields' => array('username', 'usergroup', 'additionalgroups', 'displaygroup')
);





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

if(!$user['uid'])

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

if(!$user['uid'])

		{

		{

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

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

Zeile 4123Zeile 4308

// Check banned group
$usergroups_cache = $cache->read('usergroups');


// Check banned group
$usergroups_cache = $cache->read('usergroups');

	$usergroup = $usergroups_cache[$mybb->get_input('usergroup', 1)];
$query = $db->simple_select("usergroups", "gid", "isbannedgroup=1 AND gid='".$mybb->get_input('usergroup', 1)."'");

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



if(empty($usergroup['gid']) || empty($usergroup['isbannedgroup']))
{


if(empty($usergroup['gid']) || empty($usergroup['isbannedgroup']))
{

Zeile 4134Zeile 4318
	// If this is a new ban, we check the user isn't already part of a banned group
if(!$existing_ban && $user['uid'])
{

	// If this is a new ban, we check the user isn't already part of a banned group
if(!$existing_ban && $user['uid'])
{

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

		$query = $db->simple_select("banned", "uid", "uid='{$user['uid']}'", array('limit' => 1));
if($db->num_rows($query) > 0)

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

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

Zeile 4165Zeile 4349
		if($existing_ban)
{
$update_array = array(

		if($existing_ban)
{
$update_array = array(

				'gid' => $mybb->get_input('usergroup', 1),
'admin' => (int)$user['uid'],

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


				'dateline' => TIME_NOW,
'bantime' => $db->escape_string($mybb->get_input('liftafter')),
'lifted' => $db->escape_string($lifted),

				'dateline' => TIME_NOW,
'bantime' => $db->escape_string($mybb->get_input('liftafter')),
'lifted' => $db->escape_string($lifted),

Zeile 4179Zeile 4362
		{
$insert_array = array(
'uid' => $user['uid'],

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

				'gid' => $mybb->get_input('usergroup', 1),

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

				'oldgroup' => (int)$user['usergroup'],

				'oldgroup' => (int)$user['usergroup'],

				'oldadditionalgroups' => (string)$user['additionalgroups'],

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

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

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

Zeile 4195Zeile 4378

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


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

			'usergroup' => $mybb->get_input('usergroup', 1),

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

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

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


$cache->update_banned();

 

// Log edit or add ban
if($existing_ban)
{
log_moderator_action(array("uid" => $user['uid'], "username" => $user['username']), $lang->edited_user_ban);


// Log edit or add ban
if($existing_ban)
{
log_moderator_action(array("uid" => $user['uid'], "username" => $user['username']), $lang->edited_user_ban);

		}

		}

		else
{
log_moderator_action(array("uid" => $user['uid'], "username" => $user['username']), $lang->banned_user);

		else
{
log_moderator_action(array("uid" => $user['uid'], "username" => $user['username']), $lang->banned_user);

		}

		}


$plugins->run_hooks("modcp_do_banuser_end");



$plugins->run_hooks("modcp_do_banuser_end");


Zeile 4223Zeile 4404
		{
redirect("modcp.php?action=banning", $lang->redirect_banuser);
}

		{
redirect("modcp.php?action=banning", $lang->redirect_banuser);
}

	}

	}

	// Otherwise has errors, throw back to ban page
else
{

	// Otherwise has errors, throw back to ban page
else
{

Zeile 4236Zeile 4417
	add_breadcrumb($lang->mcp_nav_banning, "modcp.php?action=banning");

if($mybb->usergroup['canbanusers'] == 0)

	add_breadcrumb($lang->mcp_nav_banning, "modcp.php?action=banning");

if($mybb->usergroup['canbanusers'] == 0)

	{
error_no_permission();
}

$mybb->input['uid'] = $mybb->get_input('uid', 1);
if($mybb->input['uid'])
{
add_breadcrumb($lang->mcp_nav_ban_user);
}
else
{

	{
error_no_permission();
}

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





		add_breadcrumb($lang->mcp_nav_editing_ban);

		add_breadcrumb($lang->mcp_nav_editing_ban);

 
	}
else
{
add_breadcrumb($lang->mcp_nav_ban_user);

	}

$plugins->run_hooks("modcp_banuser_start");

	}

$plugins->run_hooks("modcp_banuser_start");

Zeile 4265Zeile 4446
			WHERE b.uid='{$mybb->input['uid']}'
");
$banned = $db->fetch_array($query);

			WHERE b.uid='{$mybb->input['uid']}'
");
$banned = $db->fetch_array($query);

		if($banned['username'])

		if(!empty($banned['username']))

		{

		{

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

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

			$banreason = htmlspecialchars_uni($banned['reason']);
$uid = $mybb->input['uid'];
$user = get_user($banned['uid']);
$lang->ban_user = $lang->edit_ban; // Swap over lang variables
eval("\$banuser_username = \"".$templates->get("modcp_banuser_editusername")."\";");

			$banreason = htmlspecialchars_uni($banned['reason']);
$uid = $mybb->input['uid'];
$user = get_user($banned['uid']);
$lang->ban_user = $lang->edit_ban; // Swap over lang variables
eval("\$banuser_username = \"".$templates->get("modcp_banuser_editusername")."\";");

		}
}







		}
}

// Permission to edit this ban?
if(!empty($banned) && $banned['uid'] && $mybb->user['uid'] != $banned['admin'] && $mybb->usergroup['issupermod'] != 1 && $mybb->usergroup['cancp'] != 1)
{
error_no_permission();
}


// New ban!
if(!$banuser_username)


// New ban!
if(!$banuser_username)

Zeile 4282Zeile 4469
		if($mybb->input['uid'])
{
$user = get_user($mybb->input['uid']);

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

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

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

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

Zeile 4289Zeile 4477
			$username = htmlspecialchars_uni($mybb->get_input('username'));
}
eval("\$banuser_username = \"".$templates->get("modcp_banuser_addusername")."\";");

			$username = htmlspecialchars_uni($mybb->get_input('username'));
}
eval("\$banuser_username = \"".$templates->get("modcp_banuser_addusername")."\";");

	}


	}


	// Coming back to this page from an error?
if($errors)
{

	// Coming back to this page from an error?
if($errors)
{

Zeile 4298Zeile 4486
		$banned = array(
"bantime" => $mybb->get_input('liftafter'),
"reason" => $mybb->get_input('reason'),

		$banned = array(
"bantime" => $mybb->get_input('liftafter'),
"reason" => $mybb->get_input('reason'),

			"gid" => $mybb->get_input('gid', 1)

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

		);
$banreason = htmlspecialchars_uni($mybb->get_input('banreason'));
}

		);
$banreason = htmlspecialchars_uni($mybb->get_input('banreason'));
}

Zeile 4314Zeile 4502
		}

$thattime = '';

		}

$thattime = '';

		if($time != '---' && !isset($banned['dateline']))

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

		{

		{

			$thatime = my_date("D, jS M Y @ g:ia", ban_date2timestamp($time, $banned['dateline']));







			$dateline = TIME_NOW;
if(isset($banned['dateline']))
{
$dateline = $banned['dateline'];
}

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

			$thattime = " ({$thatime})";

			$thattime = " ({$thatime})";

		}

		}


eval("\$liftlist .= \"".$templates->get("modcp_banuser_liftlist")."\";");
}


eval("\$liftlist .= \"".$templates->get("modcp_banuser_liftlist")."\";");
}





	$bangroup_option = $bangroups = '';

	$bangroup_option = $bangroups = '';

	$numgroups = 0;

	$numgroups = $banned_group = 0;

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

foreach($groupscache as $key => $group)

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

foreach($groupscache as $key => $group)

	{

	{

		if($group['isbannedgroup'])
{
$selected = "";

		if($group['isbannedgroup'])
{
$selected = "";

Zeile 4336Zeile 4530
			{
$selected = " selected=\"selected\"";
}

			{
$selected = " selected=\"selected\"";
}





			$group['title'] = htmlspecialchars_uni($group['title']);
eval("\$bangroup_option .= \"".$templates->get("modcp_banuser_bangroups_group")."\";");

			$group['title'] = htmlspecialchars_uni($group['title']);
eval("\$bangroup_option .= \"".$templates->get("modcp_banuser_bangroups_group")."\";");

 
			$banned_group = $group['gid'];

			++$numgroups;
}

			++$numgroups;
}

	}

	}





	if($numgroups > 1)





	if($numgroups == 0)
{
error($lang->no_banned_group);
}
elseif($numgroups > 1)

	{
eval("\$bangroups = \"".$templates->get("modcp_banuser_bangroups")."\";");

	{
eval("\$bangroups = \"".$templates->get("modcp_banuser_bangroups")."\";");

	}

	}

	else

	else

	{

	{

		eval("\$bangroups = \"".$templates->get("modcp_banuser_bangroups_hidden")."\";");
}


		eval("\$bangroups = \"".$templates->get("modcp_banuser_bangroups_hidden")."\";");
}


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

	if(!empty($banned['uid']))

	{
eval("\$lift_link = \"".$templates->get("modcp_banuser_lift")."\";");

	{
eval("\$lift_link = \"".$templates->get("modcp_banuser_lift")."\";");

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

		$uid = $banned['uid'];
}

	else
{
$lift_link = '';

	else
{
$lift_link = '';

Zeile 4373Zeile 4572
{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));

{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));





	$plugins->run_hooks("modcp_do_modnotes_start");

// Update Moderator Notes cache

	$plugins->run_hooks("modcp_do_modnotes_start");

// Update Moderator Notes cache

Zeile 4390Zeile 4589
if(!$mybb->input['action'])
{
$awaitingattachments = $awaitingposts = $awaitingthreads = $awaitingmoderation = '';

if(!$mybb->input['action'])
{
$awaitingattachments = $awaitingposts = $awaitingthreads = $awaitingmoderation = '';





	if($mybb->usergroup['canmanagemodqueue'] == 1)
{
if($mybb->settings['enableattachments'] == 1 && ($nummodqueueattach > 0 || $mybb->usergroup['issupermod'] == 1))

	if($mybb->usergroup['canmanagemodqueue'] == 1)
{
if($mybb->settings['enableattachments'] == 1 && ($nummodqueueattach > 0 || $mybb->usergroup['issupermod'] == 1))

Zeile 4426Zeile 4625
				");
$attachment = $db->fetch_array($query);
$attachment['date'] = my_date('relative', $attachment['dateuploaded']);

				");
$attachment = $db->fetch_array($query);
$attachment['date'] = my_date('relative', $attachment['dateuploaded']);

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

				$attachment['profilelink'] = build_profile_link($attachment['username'], $attachment['uid']);
$attachment['link'] = get_post_link($attachment['pid'], $attachment['tid']);
$attachment['filename'] = htmlspecialchars_uni($attachment['filename']);

				$attachment['profilelink'] = build_profile_link($attachment['username'], $attachment['uid']);
$attachment['link'] = get_post_link($attachment['pid'], $attachment['tid']);
$attachment['filename'] = htmlspecialchars_uni($attachment['filename']);

Zeile 4458Zeile 4658
					FROM  ".TABLE_PREFIX."posts p
LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=p.tid)
WHERE p.visible='0' {$tflist} AND t.firstpost != p.pid

					FROM  ".TABLE_PREFIX."posts p
LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=p.tid)
WHERE p.visible='0' {$tflist} AND t.firstpost != p.pid

					ORDER BY p.dateline DESC

					ORDER BY p.dateline DESC, p.pid DESC

					LIMIT 1
");
$post = $db->fetch_array($query);
$post['date'] = my_date('relative', $post['dateline']);

					LIMIT 1
");
$post = $db->fetch_array($query);
$post['date'] = my_date('relative', $post['dateline']);

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

				$post['profilelink'] = build_profile_link($post['username'], $post['uid']);
$post['link'] = get_post_link($post['pid'], $post['tid']);
$post['subject'] = $post['fullsubject'] = $parser->parse_badwords($post['subject']);

				$post['profilelink'] = build_profile_link($post['username'], $post['uid']);
$post['link'] = get_post_link($post['pid'], $post['tid']);
$post['subject'] = $post['fullsubject'] = $parser->parse_badwords($post['subject']);

Zeile 4494Zeile 4695
				$query = $db->simple_select("threads", "tid, subject, uid, username, dateline", "visible='0' {$flist_queue_threads}", array('order_by' =>  'dateline', 'order_dir' => 'DESC', 'limit' => 1));
$thread = $db->fetch_array($query);
$thread['date'] = my_date('relative', $thread['dateline']);

				$query = $db->simple_select("threads", "tid, subject, uid, username, dateline", "visible='0' {$flist_queue_threads}", array('order_by' =>  'dateline', 'order_dir' => 'DESC', 'limit' => 1));
$thread = $db->fetch_array($query);
$thread['date'] = my_date('relative', $thread['dateline']);

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

				$thread['profilelink'] = build_profile_link($thread['username'], $thread['uid']);
$thread['link'] = get_thread_link($thread['tid']);
$thread['subject'] = $thread['fullsubject'] = $parser->parse_badwords($thread['subject']);

				$thread['profilelink'] = build_profile_link($thread['username'], $thread['uid']);
$thread['link'] = get_thread_link($thread['tid']);
$thread['subject'] = $thread['fullsubject'] = $parser->parse_badwords($thread['subject']);

Zeile 4526Zeile 4728
	{
$where = '';
if($tflist_modlog)

	{
$where = '';
if($tflist_modlog)

		{
$where = "WHERE (t.fid <> 0 {$tflist_modlog}) OR (!l.fid)";

		{
$where = "WHERE (t.fid <> 0 {$tflist_modlog}) OR (l.fid <> 0)";

		}

$query = $db->query("

		}

$query = $db->query("

Zeile 4544Zeile 4746

$modlogresults = '';
while($logitem = $db->fetch_array($query))


$modlogresults = '';
while($logitem = $db->fetch_array($query))

		{

		{

			$information = '';
$logitem['action'] = htmlspecialchars_uni($logitem['action']);
$log_date = my_date('relative', $logitem['dateline']);
$trow = alt_trow();

			$information = '';
$logitem['action'] = htmlspecialchars_uni($logitem['action']);
$log_date = my_date('relative', $logitem['dateline']);
$trow = alt_trow();

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

			$username = format_name($logitem['username'], $logitem['usergroup'], $logitem['displaygroup']);
$logitem['profilelink'] = build_profile_link($username, $logitem['uid']);
$logitem['ipaddress'] = my_inet_ntop($db->unescape_binary($logitem['ipaddress']));

			$username = format_name($logitem['username'], $logitem['usergroup'], $logitem['displaygroup']);
$logitem['profilelink'] = build_profile_link($username, $logitem['uid']);
$logitem['ipaddress'] = my_inet_ntop($db->unescape_binary($logitem['ipaddress']));





			if($logitem['tsubject'])
{

			if($logitem['tsubject'])
{

				$logitem['tsubject'] = htmlspecialchars_uni($logitem['tsubject']);

				$logitem['tsubject'] = htmlspecialchars_uni($parser->parse_badwords($logitem['tsubject']));

				$logitem['thread'] = get_thread_link($logitem['tid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_thread")."\";");
}

				$logitem['thread'] = get_thread_link($logitem['tid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_thread")."\";");
}

Zeile 4566Zeile 4769
			}
if($logitem['psubject'])
{

			}
if($logitem['psubject'])
{

				$logitem['psubject'] = htmlspecialchars_uni($logitem['psubject']);

				$logitem['psubject'] = htmlspecialchars_uni($parser->parse_badwords($logitem['psubject']));

				$logitem['post'] = get_post_link($logitem['pid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_post")."\";");
}

				$logitem['post'] = get_post_link($logitem['pid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_post")."\";");
}

Zeile 4575Zeile 4778
			if(!$logitem['tsubject'] || !$logitem['fname'] || !$logitem['psubject'])
{
$data = my_unserialize($logitem['data']);

			if(!$logitem['tsubject'] || !$logitem['fname'] || !$logitem['psubject'])
{
$data = my_unserialize($logitem['data']);

				if($data['uid'])

				if(isset($data['uid']))

				{
$information = $lang->sprintf($lang->edited_user_info, htmlspecialchars_uni($data['username']), get_profile_link($data['uid']));
}

				{
$information = $lang->sprintf($lang->edited_user_info, htmlspecialchars_uni($data['username']), get_profile_link($data['uid']));
}

				if($data['aid'])

				if(isset($data['aid']))

				{

				{

					$data['subject'] = htmlspecialchars_uni($data['subject']);

					$data['subject'] = htmlspecialchars_uni($parser->parse_badwords($data['subject']));

					$data['announcement'] = get_announcement_link($data['aid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_announcement")."\";");
}
}

					$data['announcement'] = get_announcement_link($data['aid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_announcement")."\";");
}
}

 

$plugins->run_hooks("modcp_modlogs_result");


eval("\$modlogresults .= \"".$templates->get("modcp_modlogs_result")."\";");
}


eval("\$modlogresults .= \"".$templates->get("modcp_modlogs_result")."\";");
}

Zeile 4599Zeile 4804
	}

$query = $db->query("

	}

$query = $db->query("

		SELECT b.*, a.username AS adminuser, u.username, (b.lifted-".TIME_NOW.") AS remaining

		SELECT b.*, a.username AS adminuser, u.username

		FROM ".TABLE_PREFIX."banned b
LEFT JOIN ".TABLE_PREFIX."users u ON (b.uid=u.uid)
LEFT JOIN ".TABLE_PREFIX."users a ON (b.admin=a.uid)
WHERE b.bantime != '---' AND b.bantime != 'perm'

		FROM ".TABLE_PREFIX."banned b
LEFT JOIN ".TABLE_PREFIX."users u ON (b.uid=u.uid)
LEFT JOIN ".TABLE_PREFIX."users a ON (b.admin=a.uid)
WHERE b.bantime != '---' AND b.bantime != 'perm'

		ORDER BY remaining ASC

		ORDER BY lifted ASC

		LIMIT 5
");

		LIMIT 5
");

 

$banned_cache = array();
while($banned = $db->fetch_array($query))
{
$banned['remaining'] = $banned['lifted']-TIME_NOW;
$banned_cache[$banned['remaining'].$banned['uid']] = $banned;

unset($banned);
}


// Get the banned users
$bannedusers = '';


// Get the banned users
$bannedusers = '';

	while($banned = $db->fetch_array($query))

	foreach($banned_cache as $banned)

	{

	{

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

		$profile_link = build_profile_link($banned['username'], $banned['uid']);

// Only show the edit & lift links if current user created ban, or is super mod/admin

		$profile_link = build_profile_link($banned['username'], $banned['uid']);

// Only show the edit & lift links if current user created ban, or is super mod/admin

Zeile 4621Zeile 4836
			eval("\$edit_link = \"".$templates->get("modcp_banning_edit")."\";");
}


			eval("\$edit_link = \"".$templates->get("modcp_banning_edit")."\";");
}


		$admin_profile = build_profile_link($banned['adminuser'], $banned['admin']);

		$admin_profile = build_profile_link(htmlspecialchars_uni($banned['adminuser']), $banned['admin']);


$trow = alt_trow();


$trow = alt_trow();





		if($banned['reason'])

		if($banned['reason'])

		{

		{

			$banned['reason'] = htmlspecialchars_uni($parser->parse_badwords($banned['reason']));

			$banned['reason'] = htmlspecialchars_uni($parser->parse_badwords($banned['reason']));

			$banned['reason'] = my_wordwrap($banned['reason']);

 
		}
else
{
$banned['reason'] = $lang->na;

		}
else
{
$banned['reason'] = $lang->na;

		}

		}


if($banned['lifted'] == 'perm' || $banned['lifted'] == '' || $banned['bantime'] == 'perm' || $banned['bantime'] == '---')
{


if($banned['lifted'] == 'perm' || $banned['lifted'] == '' || $banned['bantime'] == 'perm' || $banned['bantime'] == '---')
{

Zeile 4646Zeile 4860
			$remaining = $banned['remaining'];

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

			$remaining = $banned['remaining'];

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

 

$banned_class = '';
$ban_remaining = "{$timeremaining} {$lang->ban_remaining}";


if($remaining <= 0)


if($remaining <= 0)

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


			{
$banned_class = "imminent_banned";
$ban_remaining = $lang->ban_ending_imminently;

			}
else if($remaining < 3600)
{

			}
else if($remaining < 3600)
{

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

				$banned_class = "high_banned";

			}
else if($remaining < 86400)
{

			}
else if($remaining < 86400)
{

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

				$banned_class = "moderate_banned";

			}
else if($remaining < 604800)
{

			}
else if($remaining < 604800)
{

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

				$banned_class = "low_banned";

			}
else
{

			}
else
{

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

				$banned_class = "normal_banned";

			}

			}

 

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

		}

eval("\$bannedusers .= \"".$templates->get("modcp_banning_ban")."\";");

		}

eval("\$bannedusers .= \"".$templates->get("modcp_banning_ban")."\";");

Zeile 4677Zeile 4897
		eval("\$bannedusers = \"".$templates->get("modcp_nobanned")."\";");
}


		eval("\$bannedusers = \"".$templates->get("modcp_nobanned")."\";");
}


	$modnotes = $cache->read("modnotes");
$modnotes = htmlspecialchars_uni($modnotes['modmessage']);





	$modnotes = '';
$modnotes_cache = $cache->read("modnotes");
if($modnotes_cache !== false)
{
$modnotes = htmlspecialchars_uni($modnotes_cache['modmessage']);
}


$plugins->run_hooks("modcp_end");



$plugins->run_hooks("modcp_end");