Vergleich modcp.php - 1.6.6 - 1.6.17

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 6Zeile 6
 * Website: http://mybb.com
* License: http://mybb.com/about/license
*

 * Website: http://mybb.com
* License: http://mybb.com/about/license
*

 * $Id: modcp.php 5585 2011-09-13 13:14:41Z Tomm $

 * $Id$

 */

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";
$templatelist .= ",modcp_reports_allnoreports,modcp_reports_noreports,modcp_banning,modcp_banning_ban";
$templatelist .= ",modcp_banning_multipage,modcp_banning_nobanned,modcp_banning_auser,modcp_banning_error";
$templatelist .= ",modcp_banning_edit,modcp_banning_banned_user,modcp_nav,modcp_modlogs_noresults,modcp";
$templatelist .= ",modcp_no_announcements_global,modcp_announcements_global,modcp_announcements_forum,modcp_announcements";
$templatelist .= ",codebuttons,smilieinsert,modcp_announcements_new,modcp_modqueue_empty,forumjump_bit,forumjump_special";
$templatelist .= ",modcp_modlogs,modcp_finduser_user,modcp_finduser,usercp_profile_customfield,usercp_profile_profilefields";
$templatelist .= ",modcp_editprofile,modcp_ipsearch,modcp_banuser_addusername,modcp_banuser,modcp_warninglogs_nologs";
$templatelist .= ",modcp_warninglogs,modcp_modlogs_result,modcp_editprofile_signature_info,modcp_editprofile_signature_options,modcp_editprofile_signature";


$templatelist = "modcp_reports,modcp_reports_report,modcp_reports_multipage,modcp_reports_allreport,modcp_reports_allreports,modcp_modlogs_multipage,modcp_announcements_delete,modcp_announcements_edit";
$templatelist .= ",modcp_reports_allnoreports,modcp_reports_noreports,modcp_banning,modcp_banning_ban,modcp_announcements_announcement_global,modcp_no_announcements_forum,modcp_modqueue_threads_thread";
$templatelist .= ",modcp_banning_multipage,modcp_banning_nobanned,modcp_modqueue_threads_empty,modcp_modqueue_masscontrols,modcp_modqueue_threads,modcp_modqueue_posts_post,modcp_modqueue_posts_empty";
$templatelist .= ",modcp_nav,modcp_modlogs_noresults,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";
$templatelist .= ",codebuttons,smilieinsert,modcp_announcements_new,modcp_modqueue_empty,forumjump_bit,forumjump_special,modcp_warninglogs_warning_revoked,modcp_warninglogs_warning,modcp_ipsearch_result";
$templatelist .= ",modcp_modlogs,modcp_finduser_user,modcp_finduser,usercp_profile_customfield,usercp_profile_profilefields,modcp_ipsearch_noresults,modcp_ipsearch_results,modcp_ipsearch_misc_info";
$templatelist .= ",modcp_editprofile,modcp_ipsearch,modcp_banuser_addusername,modcp_banuser,modcp_warninglogs_nologs,modcp_banuser_editusername,modcp_lastattachment,modcp_lastpost,modcp_lastthread,modcp_nobanned";
$templatelist .= ",modcp_warninglogs,modcp_modlogs_result,modcp_editprofile_signature,forumjump_advanced,smilieinsert_getmore,modcp_announcements_forum_nomod,modcp_announcements_announcement,multipage_prevpage";
$templatelist .= ",multipage_start,multipage_page_current,multipage_page,multipage_end,multipage_nextpage,multipage";


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 39Zeile 40
if($mybb->user['uid'] == 0 || $mybb->usergroup['canmodcp'] != 1)
{
error_no_permission();

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

 
}

if(!$mybb->settings['threadsperpage'] || (int)$mybb->settings['threadsperpage'] < 1)
{
$mybb->settings['threadsperpage'] = 20;
}

if(!$mybb->settings['postsperpage'] || (int)$mybb->settings['postsperpage'] < 1)
{
$mybb->settings['postsperpage'] = 20;

}

$errors = '';

}

$errors = '';

Zeile 50Zeile 61
	while($forum = $db->fetch_array($query))
{
$flist .= ",'{$forum['fid']}'";

	while($forum = $db->fetch_array($query))
{
$flist .= ",'{$forum['fid']}'";

		



		$children = get_child_list($forum['fid']);
if(!empty($children))
{

		$children = get_child_list($forum['fid']);
if(!empty($children))
{

Zeile 67Zeile 78
else
{
$flist = $tflist = '';

else
{
$flist = $tflist = '';

 
}

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

if($unviewableforums && !is_super_admin($mybb->user['uid']))
{
$flist .= " AND fid NOT IN ({$unviewableforums})";
$tflist .= " AND t.fid NOT IN ({$unviewableforums})";

$unviewableforums = str_replace("'", '', $unviewableforums);
$unviewableforums = explode(',', $unviewableforums);
}
else
{
$unviewableforums = array();

}

// Fetch the Mod CP menu

}

// Fetch the Mod CP menu

Zeile 87Zeile 114
		error($lang->error_noselected_reports);
}


		error($lang->error_noselected_reports);
}


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








	$sql = '1=1';
if(!$mybb->input['allbox'])
{
$mybb->input['reports'] = array_map("intval", $mybb->input['reports']);
$rids = implode($mybb->input['reports'], "','");
$rids = "'0','{$rids}'";

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


	$plugins->run_hooks("modcp_do_reports");

	$plugins->run_hooks("modcp_do_reports");


$db->update_query("reportedposts", array('reportstatus' => 1), "rid IN ({$rids}){$flist}");


$db->update_query("reportedposts", array('reportstatus' => 1), "{$sql}{$flist}");

	$cache->update_reportedposts();

	$cache->update_reportedposts();

	



	$page = intval($mybb->input['page']);

	$page = intval($mybb->input['page']);

	



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


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


Zeile 106Zeile 139
	add_breadcrumb($lang->mcp_nav_reported_posts, "modcp.php?action=reports");

if(!$mybb->settings['threadsperpage'])

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

if(!$mybb->settings['threadsperpage'])

	{

	{

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


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


Zeile 115Zeile 148
	if($mybb->input['page'] != "last")
{
$page = intval($mybb->input['page']);

	if($mybb->input['page'] != "last")
{
$page = intval($mybb->input['page']);

	}


	}


	$query = $db->simple_select("reportedposts", "COUNT(rid) AS count", "reportstatus ='0'");
$report_count = $db->fetch_field($query, "count");

$mybb->input['rid'] = intval($mybb->input['rid']);

	$query = $db->simple_select("reportedposts", "COUNT(rid) AS count", "reportstatus ='0'");
$report_count = $db->fetch_field($query, "count");

$mybb->input['rid'] = intval($mybb->input['rid']);





	if($mybb->input['rid'])
{
$query = $db->simple_select("reportedposts", "COUNT(rid) AS count", "rid <= '".$mybb->input['rid']."'");

	if($mybb->input['rid'])
{
$query = $db->simple_select("reportedposts", "COUNT(rid) AS count", "rid <= '".$mybb->input['rid']."'");

Zeile 136Zeile 169
		}
}
$postcount = intval($report_count);

		}
}
$postcount = intval($report_count);

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

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

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

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

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

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


if($page && $page > 0)
{
$start = ($page-1) * $perpage;


if($page && $page > 0)
{
$start = ($page-1) * $perpage;

	}
else

	}
else

	{
$start = 0;
$page = 1;

	{
$start = 0;
$page = 1;

Zeile 164Zeile 197
	if($postcount > $perpage)
{
eval("\$reportspages = \"".$templates->get("modcp_reports_multipage")."\";");

	if($postcount > $perpage)
{
eval("\$reportspages = \"".$templates->get("modcp_reports_multipage")."\";");

	}

	}


$query = $db->simple_select("forums", "fid, name");
while($forum = $db->fetch_array($query))
{
$forums[$forum['fid']] = $forum['name'];
}


$query = $db->simple_select("forums", "fid, name");
while($forum = $db->fetch_array($query))
{
$forums[$forum['fid']] = $forum['name'];
}

	



	$plugins->run_hooks("modcp_reports_start");

$reports = '';

	$plugins->run_hooks("modcp_reports_start");

$reports = '';

Zeile 186Zeile 219
		ORDER BY r.dateline DESC
LIMIT {$start}, {$perpage}
");

		ORDER BY r.dateline DESC
LIMIT {$start}, {$perpage}
");

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







if(!$db->num_rows($query))
{
eval("\$reports = \"".$templates->get("modcp_reports_noreports")."\";");
}
else

	{

	{

		$trow = alt_trow();
if(is_moderator($report['fid']))

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


		{

		{

			$trow = 'trow_shaded';




























			$trow = alt_trow();
if(is_moderator($report['fid']))
{
$trow = 'trow_shaded';
}

$report['postlink'] = get_post_link($report['pid'], $report['tid']);
$report['threadlink'] = get_thread_link($report['tid']);

$report['posterlink'] = get_profile_link($report['postuid']);
if(!$report['postuid'])
{
$report['posterlink'] = $report['postlink'];
$report['postusername'] = $lang->guest;
}

$report['reporterlink'] = get_profile_link($report['uid']);
if($report['uid'] > 0 && !$report['username'])
{
$report['reporterlink'] = $report['postlink'];
$report['username'] = $lang->na_deleted;
}

$reportdate = my_date($mybb->settings['dateformat'], $report['dateline']);
$reporttime = my_date($mybb->settings['timeformat'], $report['dateline']);
$report['threadsubject'] = htmlspecialchars_uni($parser->parse_badwords($report['threadsubject']));

eval("\$reports .= \"".$templates->get("modcp_reports_report")."\";");

		}

		}

		$report['postlink'] = get_post_link($report['pid'], $report['tid']);
$report['threadlink'] = get_thread_link($report['tid']);
$report['posterlink'] = get_profile_link($report['postuid']);
$report['reporterlink'] = get_profile_link($report['uid']);
$reportdate = my_date($mybb->settings['dateformat'], $report['dateline']);
$reporttime = my_date($mybb->settings['timeformat'], $report['dateline']);
$report['threadsubject'] = htmlspecialchars_uni($parser->parse_badwords($report['threadsubject']));
eval("\$reports .= \"".$templates->get("modcp_reports_report")."\";");
}
if(!$reports)
{
eval("\$reports = \"".$templates->get("modcp_reports_noreports")."\";");

 
	}


	}


	$plugins->run_hooks("modcp_reports");

	$plugins->run_hooks("modcp_reports_end");


eval("\$reportedposts = \"".$templates->get("modcp_reports")."\";");
output_page($reportedposts);


eval("\$reportedposts = \"".$templates->get("modcp_reports")."\";");
output_page($reportedposts);

Zeile 247Zeile 299
		}
}
$postcount = intval($warnings);

		}
}
$postcount = intval($warnings);

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

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

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

if($page)
{

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

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

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

if($page)
{

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

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

Zeile 277Zeile 329
		eval("\$allreportspages = \"".$templates->get("modcp_reports_multipage")."\";");
}


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


	$query = $db->simple_select("forums", "fid, name");
while($forum = $db->fetch_array($query))
{
$forums[$forum['fid']] = $forum['name'];
}


 
	$plugins->run_hooks("modcp_allreports_start");


	$plugins->run_hooks("modcp_allreports_start");


	$reports = '';

 
	$query = $db->query("
SELECT r.*, u.username, up.username AS postusername, up.uid AS postuid, t.subject AS threadsubject
FROM ".TABLE_PREFIX."reportedposts r

	$query = $db->query("
SELECT r.*, u.username, up.username AS postusername, up.uid AS postuid, t.subject AS threadsubject
FROM ".TABLE_PREFIX."reportedposts r

Zeile 294Zeile 339
		LEFT JOIN ".TABLE_PREFIX."users u ON (r.uid=u.uid)
LEFT JOIN ".TABLE_PREFIX."users up ON (p.uid=up.uid)
ORDER BY r.dateline DESC

		LEFT JOIN ".TABLE_PREFIX."users u ON (r.uid=u.uid)
LEFT JOIN ".TABLE_PREFIX."users up ON (p.uid=up.uid)
ORDER BY r.dateline DESC

		LIMIT $start, $perpage
");
while($report = $db->fetch_array($query))
{
$report['postlink'] = get_post_link($report['pid'], $report['tid']);
$report['threadlink'] = get_thread_link($report['tid']);
$report['posterlink'] = get_profile_link($report['postuid']);
$report['reporterlink'] = get_profile_link($report['uid']);

$reportdate = my_date($mybb->settings['dateformat'], $report['dateline']);
$reporttime = my_date($mybb->settings['timeformat'], $report['dateline']);

if($report['reportstatus'] == 0)
{
$trow = "trow_shaded";
}
else
{
$trow = alt_trow();
}

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

if($report['threadsubject'])
{
$report['threadsubject'] = htmlspecialchars_uni($parser->parse_badwords($report['threadsubject']));
$report['threadsubject'] = "<a href=\"".get_thread_link($report['tid'])."\" target=\"_blank\">{$report['threadsubject']}</a>";
}
else
{
$report['threadsubject'] = $lang->na;
}

eval("\$allreports .= \"".$templates->get("modcp_reports_allreport")."\";");

		LIMIT {$start}, {$perpage}
");

$allreports = '';
if(!$db->num_rows($query))
{
eval("\$allreports = \"".$templates->get("modcp_reports_allnoreports")."\";");




























	}

	}


if(!$allreports)

	else


	{

	{

		eval("\$allreports = \"".$templates->get("modcp_reports_allnoreports")."\";");








































		while($report = $db->fetch_array($query))
{
$trow = alt_trow();

$report['threadlink'] = get_thread_link($report['tid']);

$report['posterlink'] = get_profile_link($report['postuid']);
$report['postlink'] = get_post_link($report['pid'], $report['tid']);
$report['postusername'] = build_profile_link($report['postusername'], $report['postuid']);

$report['reporterlink'] = get_profile_link($report['uid']);
if($report['uid'] > 0 && !$report['username'])
{
$report['reporterlink'] = $report['postlink'];
$report['username'] = $lang->na_deleted;
}

$reportdate = my_date($mybb->settings['dateformat'], $report['dateline']);
$reporttime = my_date($mybb->settings['timeformat'], $report['dateline']);

if($report['reportstatus'] == 0)
{
$trow = "trow_shaded";
}

// No subject? Set it to N/A
if($report['threadsubject'] == '')
{
$report['threadsubject'] = $lang->na;
}
else
{
// Only parse bad words and sanitize subject if there is one...
$report['threadsubject'] = htmlspecialchars_uni($parser->parse_badwords($report['threadsubject']));
}

$report['threadsubject'] = "<a href=\"".get_thread_link($report['tid'])."\" target=\"_blank\">{$report['threadsubject']}</a>";

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

	}


	}


	$plugins->run_hooks("modcp_reports");

	$plugins->run_hooks("modcp_allreports_end");


eval("\$allreportedposts = \"".$templates->get("modcp_reports_allreports")."\";");
output_page($allreportedposts);


eval("\$allreportedposts = \"".$templates->get("modcp_reports_allreports")."\";");
output_page($allreportedposts);

Zeile 385Zeile 441
	{
$order = "desc";
}

	{
$order = "desc";
}

	



	$plugins->run_hooks("modcp_modlogs_start");

$query = $db->query("

	$plugins->run_hooks("modcp_modlogs_start");

$query = $db->query("

Zeile 433Zeile 489
		eval("\$resultspages = \"".$templates->get("modcp_modlogs_multipage")."\";");
}
$query = $db->query("

		eval("\$resultspages = \"".$templates->get("modcp_modlogs_multipage")."\";");
}
$query = $db->query("

		SELECT l.*, u.username, u.usergroup, u.displaygroup, t.subject AS tsubject, f.name AS fname, p.subject AS psubject

		SELECT l.*, u.username, u.usergroup, u.displaygroup, t.subject AS tsubject, f.name AS fname

		FROM ".TABLE_PREFIX."moderatorlog l
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=l.uid)
LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=l.tid)
LEFT JOIN ".TABLE_PREFIX."forums f ON (f.fid=l.fid)

		FROM ".TABLE_PREFIX."moderatorlog l
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=l.uid)
LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=l.tid)
LEFT JOIN ".TABLE_PREFIX."forums f ON (f.fid=l.fid)

		LEFT JOIN ".TABLE_PREFIX."posts p ON (p.pid=l.pid)

 
		WHERE 1=1 {$where}{$tflist}
ORDER BY {$sortby} {$order}
LIMIT {$start}, {$perpage}

		WHERE 1=1 {$where}{$tflist}
ORDER BY {$sortby} {$order}
LIMIT {$start}, {$perpage}

Zeile 454Zeile 509
		$logitem['profilelink'] = build_profile_link($username, $logitem['uid']);
if($logitem['tsubject'])
{

		$logitem['profilelink'] = build_profile_link($username, $logitem['uid']);
if($logitem['tsubject'])
{

			$information = "<strong>{$lang->thread}</strong> <a href=\"".get_thread_link($logitem['tid'])."\" target=\"_blank\">".htmlspecialchars_uni($logitem['tsubject'])."</a><br />";

			$information = "<strong>{$lang->thread}:</strong> <a href=\"".get_thread_link($logitem['tid'])."\" target=\"_blank\">".htmlspecialchars_uni($logitem['tsubject'])."</a><br />";

		}
if($logitem['fname'])
{
$information .= "<strong>{$lang->forum}</strong> <a href=\"".get_forum_link($logitem['fid'])."\" target=\"_blank\">{$logitem['fname']}</a><br />";
}

		}
if($logitem['fname'])
{
$information .= "<strong>{$lang->forum}</strong> <a href=\"".get_forum_link($logitem['fid'])."\" target=\"_blank\">{$logitem['fname']}</a><br />";
}

		if($logitem['psubject'])
{
$information .= "<strong>{$lang->post}</strong> <a href=\"".get_post_link($logitem['pid'])."#pid{$logitem['pid']}\">".htmlspecialchars_uni($logitem['psubject'])."</a>";
}

// Edited a user?
if(!$logitem['tsubject'] || !$logitem['fname'] || !$logitem['psubject'])


// Edited a user or managed announcement?
if(!$logitem['tsubject'] || !$logitem['fname'])





		{
$data = unserialize($logitem['data']);
if($data['uid'])
{
$information = $lang->sprintf($lang->edited_user_info, htmlspecialchars_uni($data['username']), get_profile_link($data['uid']));

		{
$data = unserialize($logitem['data']);
if($data['uid'])
{
$information = $lang->sprintf($lang->edited_user_info, htmlspecialchars_uni($data['username']), get_profile_link($data['uid']));

 
			}
if($data['aid'])
{
$information = "<strong>{$lang->announcement}:</strong> <a href=\"".get_announcement_link($data['aid'])."\" target=\"_blank\">".htmlspecialchars_uni($data['subject'])."</a>";

			}
}

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

			}
}

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

	}

	}


if(!$results)
{
eval("\$results = \"".$templates->get("modcp_modlogs_noresults")."\";");
}


if(!$results)
{
eval("\$results = \"".$templates->get("modcp_modlogs_noresults")."\";");
}

	
$plugins->run_hooks("modcp_modlogs_filter");


$plugins->run_hooks("modcp_modlogs_filter");


// Fetch filter options
$sortbysel[$mybb->input['sortby']] = "selected=\"selected\"";


// Fetch filter options
$sortbysel[$mybb->input['sortby']] = "selected=\"selected\"";

Zeile 501Zeile 556
		{
$user['username'] = $lang->na_deleted;
}

		{
$user['username'] = $lang->na_deleted;
}

		



		$selected = '';
if($mybb->input['uid'] == $user['uid'])
{
$selected = " selected=\"selected\"";
}
$user_options .= "<option value=\"{$user['uid']}\"{$selected}>".htmlspecialchars_uni($user['username'])."</option>\n";

		$selected = '';
if($mybb->input['uid'] == $user['uid'])
{
$selected = " selected=\"selected\"";
}
$user_options .= "<option value=\"{$user['uid']}\"{$selected}>".htmlspecialchars_uni($user['username'])."</option>\n";

	}

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

	}

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


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


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

Zeile 523Zeile 578
	$aid = intval($mybb->input['aid']);
$query = $db->simple_select("announcements", "aid, subject, fid", "aid='{$aid}'");
$announcement = $db->fetch_array($query);

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





	if(!$announcement['aid'])
{
error($lang->error_invalid_announcement);
}

	if(!$announcement['aid'])
{
error($lang->error_invalid_announcement);
}

	if(($mybb->usergroup['issupermod'] != 1 && $announcement['fid'] == -1) || ($announcement['fid'] != -1 && !is_moderator($announcement['fid'])))

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

	{
error_no_permission();
}

	{
error_no_permission();
}

	



	$plugins->run_hooks("modcp_do_delete_announcement");

	$plugins->run_hooks("modcp_do_delete_announcement");





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

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

	$cache->update_forumsdisplay();



	log_moderator_action(array("aid" => $announcement['aid'], "subject" => $announcement['subject']), $lang->announcement_deleted);
$cache->update_forumsdisplay();


	redirect("modcp.php?action=announcements", $lang->redirect_delete_announcement);

	redirect("modcp.php?action=announcements", $lang->redirect_delete_announcement);

}

}


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


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

Zeile 550Zeile 606
	$announcement['subject'] = htmlspecialchars_uni($announcement['subject']);

if(!$announcement['aid'])

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

if(!$announcement['aid'])

	{

	{

		error($lang->error_invalid_announcement);

		error($lang->error_invalid_announcement);

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



	}

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


	$plugins->run_hooks("modcp_delete_announcement");

eval("\$announcements = \"".$templates->get("modcp_announcements_delete")."\";");

	$plugins->run_hooks("modcp_delete_announcement");

eval("\$announcements = \"".$templates->get("modcp_announcements_delete")."\";");

Zeile 565Zeile 622
}

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

}

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

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

$announcement_fid = intval($mybb->input['fid']);
if(($mybb->usergroup['issupermod'] != 1 && $announcement_fid == -1) || ($announcement_fid != -1 && !is_moderator($announcement_fid)))
{
error_no_permission();
}

if(!trim($mybb->input['title']))
{
$errors[] = $lang->error_missing_title;
}

if(!trim($mybb->input['message']))
{
$errors[] = $lang->error_missing_message;
}

if(!trim($mybb->input['fid']))
{
$errors[] = $lang->error_missing_forum;
}

$startdate = @explode(" ", $mybb->input['starttime_time']);
$startdate = @explode(":", $startdate[0]);

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

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

if(!trim($mybb->input['title']))
{
$errors[] = $lang->error_missing_title;
}

if(!trim($mybb->input['message']))
{
$errors[] = $lang->error_missing_message;
}

if(!trim($mybb->input['fid']))
{
$errors[] = $lang->error_missing_forum;
}

$startdate = @explode(" ", $mybb->input['starttime_time']);
$startdate = @explode(":", $startdate[0]);

	$enddate = @explode(" ", $mybb->input['endtime_time']);
$enddate = @explode(":", $enddate[0]);


	$enddate = @explode(" ", $mybb->input['endtime_time']);
$enddate = @explode(":", $enddate[0]);


Zeile 600Zeile 657
		if($startdate[0] >= 24)
{
$startdate[0] = "00";

		if($startdate[0] >= 24)
{
$startdate[0] = "00";

		}
}


		}
}


	if(stristr($mybb->input['endtime_time'], "pm"))
{
$enddate[0] = 12+$enddate[0];

	if(stristr($mybb->input['endtime_time'], "pm"))
{
$enddate[0] = 12+$enddate[0];

Zeile 611Zeile 668
			$enddate[0] = "00";
}
}

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

	
$months = array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12');


$months = array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12');

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

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

	}


	}


	$startdate = gmmktime(intval($startdate[0]), intval($startdate[1]), 0, (int)$mybb->input['starttime_month'], intval($mybb->input['starttime_day']), intval($mybb->input['starttime_year']));

	$startdate = gmmktime(intval($startdate[0]), intval($startdate[1]), 0, (int)$mybb->input['starttime_month'], intval($mybb->input['starttime_day']), intval($mybb->input['starttime_year']));

	
if($startdate < 0 || $startdate == false)

	if(!checkdate(intval($mybb->input['starttime_month']), intval($mybb->input['starttime_day']), intval($mybb->input['starttime_year'])) || $startdate < 0 || $startdate == false)


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

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

	}


	}


	if($mybb->input['endtime_type'] == "2")
{
$enddate = '0';

	if($mybb->input['endtime_type'] == "2")
{
$enddate = '0';

Zeile 636Zeile 692
			$mybb->input['endtime_month'] = 1;
}
$enddate = gmmktime(intval($enddate[0]), intval($enddate[1]), 0, (int)$mybb->input['endtime_month'], intval($mybb->input['endtime_day']), intval($mybb->input['endtime_year']));

			$mybb->input['endtime_month'] = 1;
}
$enddate = gmmktime(intval($enddate[0]), intval($enddate[1]), 0, (int)$mybb->input['endtime_month'], intval($mybb->input['endtime_day']), intval($mybb->input['endtime_year']));

		if($enddate < 0 || $enddate == false)
{

		if(!checkdate(intval($mybb->input['endtime_month']), intval($mybb->input['endtime_day']), intval($mybb->input['endtime_year'])) || $enddate < 0 || $enddate == false)
{

			$errors[] = $lang->error_invalid_end_date;

			$errors[] = $lang->error_invalid_end_date;

		}
elseif($enddate < $startdate)

		}
if($enddate <= $startdate)

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

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

	



	$plugins->run_hooks("modcp_do_new_announcement_start");

if(!$errors)

	$plugins->run_hooks("modcp_do_new_announcement_start");

if(!$errors)

Zeile 661Zeile 717
			'allowmycode' => $db->escape_string($mybb->input['allowmycode']),
'allowsmilies' => $db->escape_string($mybb->input['allowsmilies']),
);

			'allowmycode' => $db->escape_string($mybb->input['allowmycode']),
'allowsmilies' => $db->escape_string($mybb->input['allowsmilies']),
);



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


		$plugins->run_hooks("modcp_do_new_announcement_end");

		$plugins->run_hooks("modcp_do_new_announcement_end");

		



		$cache->update_forumsdisplay();
redirect("modcp.php?action=announcements", $lang->redirect_add_announcement);
}

		$cache->update_forumsdisplay();
redirect("modcp.php?action=announcements", $lang->redirect_add_announcement);
}

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

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





	$announcement_fid = intval($mybb->input['fid']);


	$announcement_fid = intval($mybb->input['fid']);


	if(($mybb->usergroup['issupermod'] != 1 && $announcement_fid == -1) || ($announcement_fid != -1 && !is_moderator($announcement_fid)))

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

	{
error_no_permission();
}

	{
error_no_permission();
}

Zeile 691Zeile 748
	if(is_array($errors))
{
$errors = inline_error($errors);

	if(is_array($errors))
{
$errors = inline_error($errors);

		



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

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

		
$months = array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12');


$months = array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12');

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

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

		



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

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

		



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

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

		$starttime_time = htmlspecialchars($mybb->input['starttime_time']);

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

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

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

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

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

	}
else

	}
else

	{

	{

		// Note: dates are in GMT timezone
$starttime_time = gmdate("g:i a", TIME_NOW);
$endtime_time = gmdate("g:i a", TIME_NOW);

		// Note: dates are in GMT timezone
$starttime_time = gmdate("g:i a", TIME_NOW);
$endtime_time = gmdate("g:i a", TIME_NOW);

Zeile 737Zeile 794
		if($startday == $i)
{
$startdateday .= "<option value=\"$i\" selected=\"selected\">$i</option>\n";

		if($startday == $i)
{
$startdateday .= "<option value=\"$i\" selected=\"selected\">$i</option>\n";

		}
else

		}
else

		{
$startdateday .= "<option value=\"$i\">$i</option>\n";
}

if($endday == $i)

		{
$startdateday .= "<option value=\"$i\">$i</option>\n";
}

if($endday == $i)

		{

		{

			$enddateday .= "<option value=\"$i\" selected=\"selected\">$i</option>\n";
}
else

			$enddateday .= "<option value=\"$i\" selected=\"selected\">$i</option>\n";
}
else

Zeile 756Zeile 813
	$startmonthsel = $endmonthsel = array();
$startmonthsel[$startmonth] = "selected=\"selected\"";
$endmonthsel[$endmonth] = "selected=\"selected\"";

	$startmonthsel = $endmonthsel = array();
$startmonthsel[$startmonth] = "selected=\"selected\"";
$endmonthsel[$endmonth] = "selected=\"selected\"";





	$startdatemonth .= "<option value=\"01\" {$startmonthsel['01']}>{$lang->january}</option>\n";
$enddatemonth .= "<option value=\"01\" {$endmonthsel['01']}>{$lang->january}</option>\n";
$startdatemonth .= "<option value=\"02\" {$startmonthsel['02']}>{$lang->february}</option>\n";

	$startdatemonth .= "<option value=\"01\" {$startmonthsel['01']}>{$lang->january}</option>\n";
$enddatemonth .= "<option value=\"01\" {$endmonthsel['01']}>{$lang->january}</option>\n";
$startdatemonth .= "<option value=\"02\" {$startmonthsel['02']}>{$lang->february}</option>\n";

Zeile 781Zeile 838
	$enddatemonth .= "<option value=\"11\" {$endmonthsel['11']}>{$lang->november}</option>\n";
$startdatemonth .= "<option value=\"12\" {$startmonthsel['12']}>{$lang->december}</option>\n";
$enddatemonth .= "<option value=\"12\" {$endmonthsel['12']}>{$lang->december}</option>\n";

	$enddatemonth .= "<option value=\"11\" {$endmonthsel['11']}>{$lang->november}</option>\n";
$startdatemonth .= "<option value=\"12\" {$startmonthsel['12']}>{$lang->december}</option>\n";
$enddatemonth .= "<option value=\"12\" {$endmonthsel['12']}>{$lang->december}</option>\n";





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

$html_sel = $mycode_sel = $smilies_sel = array();
if($mybb->input['allowhtml'] || !isset($mybb->input['allowhtml']))

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

$html_sel = $mycode_sel = $smilies_sel = array();
if($mybb->input['allowhtml'] || !isset($mybb->input['allowhtml']))

	{

	{

		$html_sel['yes'] = ' checked="checked"';
}
else
{
$html_sel['no'] = ' checked="checked"';

		$html_sel['yes'] = ' checked="checked"';
}
else
{
$html_sel['no'] = ' checked="checked"';

	}

	}


if($mybb->input['allowmycode'] || !isset($mybb->input['allowmycode']))
{


if($mybb->input['allowmycode'] || !isset($mybb->input['allowmycode']))
{

Zeile 805Zeile 862
	}

if($mybb->input['allowsmilies'] || !isset($mybb->input['allowsmilies']))

	}

if($mybb->input['allowsmilies'] || !isset($mybb->input['allowsmilies']))

	{

	{

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

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

	}

	}

	else
{
$smilies_sel['no'] = ' checked="checked"';

	else
{
$smilies_sel['no'] = ' checked="checked"';

	}


	}


	if($mybb->input['endtime_type'] == 2 || !isset($mybb->input['endtime_type']))
{
$end_type_sel['infinite'] = ' checked="checked"';
}
else

	if($mybb->input['endtime_type'] == 2 || !isset($mybb->input['endtime_type']))
{
$end_type_sel['infinite'] = ' checked="checked"';
}
else

	{

	{

		$end_type_sel['finite'] = ' checked="checked"';
}

// MyCode editor
$codebuttons = build_mycode_inserter();
$smilieinserter = build_clickable_smilies();

		$end_type_sel['finite'] = ' checked="checked"';
}

// MyCode editor
$codebuttons = build_mycode_inserter();
$smilieinserter = build_clickable_smilies();

	



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

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

Zeile 848Zeile 905
	}

// Mod has permissions to edit this announcement

	}

// Mod has permissions to edit this announcement

	if(($mybb->usergroup['issupermod'] != 1 && $announcement['fid'] == -1) || ($announcement['fid'] != -1 && !is_moderator($announcement['fid'])))

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

	{
error_no_permission();
}

	{
error_no_permission();
}

Zeile 857Zeile 914
	if(!trim($mybb->input['title']))
{
$errors[] = $lang->error_missing_title;

	if(!trim($mybb->input['title']))
{
$errors[] = $lang->error_missing_title;

	}

	}


if(!trim($mybb->input['message']))
{
$errors[] = $lang->error_missing_message;


if(!trim($mybb->input['message']))
{
$errors[] = $lang->error_missing_message;

	}

	}


if(!trim($mybb->input['fid']))
{
$errors[] = $lang->error_missing_forum;


if(!trim($mybb->input['fid']))
{
$errors[] = $lang->error_missing_forum;

	}


	}


	$startdate = @explode(" ", $mybb->input['starttime_time']);
$startdate = @explode(":", $startdate[0]);
$enddate = @explode(" ", $mybb->input['endtime_time']);
$enddate = @explode(":", $enddate[0]);

	$startdate = @explode(" ", $mybb->input['starttime_time']);
$startdate = @explode(":", $startdate[0]);
$enddate = @explode(" ", $mybb->input['endtime_time']);
$enddate = @explode(":", $enddate[0]);





	if(stristr($mybb->input['starttime_time'], "pm"))
{
$startdate[0] = 12+$startdate[0];
if($startdate[0] >= 24)

	if(stristr($mybb->input['starttime_time'], "pm"))
{
$startdate[0] = 12+$startdate[0];
if($startdate[0] >= 24)

		{

		{

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

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

Zeile 892Zeile 949
		}
}


		}
}


	$months = array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12');			

	$months = array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12');

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

$startdate = gmmktime(intval($startdate[0]), intval($startdate[1]), 0, (int)$mybb->input['starttime_month'], intval($mybb->input['starttime_day']), intval($mybb->input['starttime_year']));

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

$startdate = gmmktime(intval($startdate[0]), intval($startdate[1]), 0, (int)$mybb->input['starttime_month'], intval($mybb->input['starttime_day']), intval($mybb->input['starttime_year']));

	if($startdate < 0 || $startdate == false)

	if(!checkdate(intval($mybb->input['starttime_month']), intval($mybb->input['starttime_day']), intval($mybb->input['starttime_year'])) || $startdate < 0 || $startdate == false)

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

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

	}

if($mybb->input['endtime_type'] == "2")
{
$enddate = '0';
}
else
{

	}

if($mybb->input['endtime_type'] == "2")
{
$enddate = '0';
}
else
{

		if(!in_array($mybb->input['endtime_month'], $months))
{
$mybb->input['endtime_month'] = 1;
}
$enddate = gmmktime(intval($enddate[0]), intval($enddate[1]), 0, (int)$mybb->input['endtime_month'], intval($mybb->input['endtime_day']), intval($mybb->input['endtime_year']));

		if(!in_array($mybb->input['endtime_month'], $months))
{
$mybb->input['endtime_month'] = 1;
}
$enddate = gmmktime(intval($enddate[0]), intval($enddate[1]), 0, (int)$mybb->input['endtime_month'], intval($mybb->input['endtime_day']), intval($mybb->input['endtime_year']));

		if($enddate < 0 || $enddate == false)
{

		if(!checkdate(intval($mybb->input['endtime_month']), intval($mybb->input['endtime_day']), intval($mybb->input['endtime_year'])) || $enddate < 0 || $enddate == false)
{

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

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

		elseif($enddate < $startdate)

		elseif($enddate <= $startdate)

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

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

	



	$plugins->run_hooks("modcp_do_edit_announcement_start");

// Proceed to update if no errors
if(!$errors)

	$plugins->run_hooks("modcp_do_edit_announcement_start");

// Proceed to update if no errors
if(!$errors)

	{

	{

		$update_announcement = array(
'uid' => $mybb->user['uid'],
'subject' => $db->escape_string($mybb->input['title']),

		$update_announcement = array(
'uid' => $mybb->user['uid'],
'subject' => $db->escape_string($mybb->input['title']),

Zeile 940Zeile 997
			'allowmycode' => $db->escape_string($mybb->input['allowmycode']),
'allowsmilies' => $db->escape_string($mybb->input['allowsmilies']),
);

			'allowmycode' => $db->escape_string($mybb->input['allowmycode']),
'allowsmilies' => $db->escape_string($mybb->input['allowsmilies']),
);





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


		$plugins->run_hooks("modcp_do_edit_announcement_end");

		$plugins->run_hooks("modcp_do_edit_announcement_end");

		



		$cache->update_forumsdisplay();
redirect("modcp.php?action=announcements", $lang->redirect_edit_announcement);

		$cache->update_forumsdisplay();
redirect("modcp.php?action=announcements", $lang->redirect_edit_announcement);

	}

	}

	else
{
$mybb->input['action'] = 'edit_announcement';

	else
{
$mybb->input['action'] = 'edit_announcement';

Zeile 958Zeile 1017
{
$announcement_fid = intval($mybb->input['fid']);
$aid = intval($mybb->input['aid']);

{
$announcement_fid = intval($mybb->input['fid']);
$aid = intval($mybb->input['aid']);





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


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


Zeile 969Zeile 1028
	if(!$announcement['fid'])
{
error($lang->error_invalid_announcement);

	if(!$announcement['fid'])
{
error($lang->error_invalid_announcement);

	}
if(($mybb->usergroup['issupermod'] != 1 && $announcement['fid'] == -1) || ($announcement['fid'] != -1 && !is_moderator($announcement['fid'])))
{

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

		error_no_permission();

		error_no_permission();

 
	}

if(!$announcement['startdate'])
{
// No start date? Make it now.
$announcement['startdate'] = TIME_NOW;
}

$makeshift_end = false;
if(!$announcement['enddate'])
{
$makeshift_end = true;
$makeshift_time = TIME_NOW;
if($announcement['startdate'])
{
$makeshift_time = $announcement['startdate'];
}

// No end date? Make it a year from now.
$announcement['enddate'] = $makeshift_time + (60 * 60 * 24 * 366);

	}

// Deal with inline errors

	}

// Deal with inline errors

Zeile 986Zeile 1065
		$announcement['allowhtml'] = $mybb->input['allowhtml'];
$announcement['allowmycode'] = $mybb->input['allowmycode'];
$announcement['allowsmilies'] = $mybb->input['allowsmilies'];

		$announcement['allowhtml'] = $mybb->input['allowhtml'];
$announcement['allowmycode'] = $mybb->input['allowmycode'];
$announcement['allowsmilies'] = $mybb->input['allowsmilies'];

		
$months = array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12');


$months = array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12');

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

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

		{

		{

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

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

		



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

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

		



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

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

		$starttime_time = htmlspecialchars($mybb->input['starttime_time']);

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

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

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

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

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


$errored = true;


$errored = true;

	}
else

	}
else

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

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

Zeile 1109Zeile 1188
		$smilies_sel['no'] = ' checked="checked"';
}


		$smilies_sel['no'] = ' checked="checked"';
}


	if(($errored && $mybb->input['endtime_type'] == 2) || (!$errored && intval($announcement['enddate']) == 0))

	if(($errored && $mybb->input['endtime_type'] == 2) || (!$errored && intval($announcement['enddate']) == 0) || $makeshift_end == true)

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

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

Zeile 1121Zeile 1200
	// MyCode editor
$codebuttons = build_mycode_inserter();
$smilieinserter = build_clickable_smilies();

	// MyCode editor
$codebuttons = build_mycode_inserter();
$smilieinserter = build_clickable_smilies();

	



	$plugins->run_hooks("modcp_edit_announcement");

	$plugins->run_hooks("modcp_edit_announcement");





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

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

Zeile 1131Zeile 1210
if($mybb->input['action'] == "announcements")
{
add_breadcrumb($lang->mcp_nav_announcements, "modcp.php?action=announcements");

if($mybb->input['action'] == "announcements")
{
add_breadcrumb($lang->mcp_nav_announcements, "modcp.php?action=announcements");





	// Fetch announcements into their proper arrays
$query = $db->simple_select("announcements", "aid, fid, subject, enddate");
while($announcement = $db->fetch_array($query))

	// Fetch announcements into their proper arrays
$query = $db->simple_select("announcements", "aid, fid, subject, enddate");
while($announcement = $db->fetch_array($query))

Zeile 1142Zeile 1221
			continue;
}
$announcements[$announcement['fid']][$announcement['aid']] = $announcement;

			continue;
}
$announcements[$announcement['fid']][$announcement['aid']] = $announcement;

	}


	}


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

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

Zeile 1153Zeile 1232
			{
$trow = alt_trow();
if($announcement['startdate'] > TIME_NOW || ($announcement['enddate'] < TIME_NOW && $announcement['enddate'] != 0))

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

				{
$icon = "<img src=\"images/minioff.gif\" alt=\"({$lang->expired})\" title=\"{$lang->expired_announcement}\" style=\"vertical-align: middle;\" /> ";
}

				{
$icon = "<img src=\"{$theme['imgdir']}/minioff.gif\" alt=\"({$lang->expired})\" title=\"{$lang->expired_announcement}\" style=\"vertical-align: middle;\" /> ";
}

				else
{

				else
{

					$icon = "<img src=\"images/minion.gif\" alt=\"({$lang->active})\" title=\"{$lang->active_announcement}\"  style=\"vertical-align: middle;\" /> ";

					$icon = "<img src=\"{$theme['imgdir']}/minion.gif\" alt=\"({$lang->active})\" title=\"{$lang->active_announcement}\"  style=\"vertical-align: middle;\" /> ";

				}

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

				}

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





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

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

Zeile 1177Zeile 1256
	{
// Moderator is not super, so don't show global annnouncemnets
$announcements_global = '';

	{
// Moderator is not super, so don't show global annnouncemnets
$announcements_global = '';

	}


	}


	fetch_forum_announcements();

if(!$announcements_forum)
{
eval("\$announcements_forum = \"".$templates->get("modcp_no_announcements_forum")."\";");
}

	fetch_forum_announcements();

if(!$announcements_forum)
{
eval("\$announcements_forum = \"".$templates->get("modcp_no_announcements_forum")."\";");
}

	



	$plugins->run_hooks("modcp_announcements");

	$plugins->run_hooks("modcp_announcements");

	



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

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





if($mybb->input['action'] == "do_modqueue")
{
require_once MYBB_ROOT."inc/class_moderation.php";
$moderation = new Moderation;

if($mybb->input['action'] == "do_modqueue")
{
require_once MYBB_ROOT."inc/class_moderation.php";
$moderation = new Moderation;





	// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);

	// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);

	



	$plugins->run_hooks("modcp_do_modqueue_start");

if(is_array($mybb->input['threads']))

	$plugins->run_hooks("modcp_do_modqueue_start");

if(is_array($mybb->input['threads']))

Zeile 1207Zeile 1286
		// Fetch threads
$query = $db->simple_select("threads", "tid", "tid IN (".implode(",", array_map("intval", array_keys($mybb->input['threads'])))."){$flist}");
while($thread = $db->fetch_array($query))

		// Fetch threads
$query = $db->simple_select("threads", "tid", "tid IN (".implode(",", array_map("intval", array_keys($mybb->input['threads'])))."){$flist}");
while($thread = $db->fetch_array($query))

		{

		{

			$action = $mybb->input['threads'][$thread['tid']];
if($action == "approve")
{
$threads_to_approve[] = $thread['tid'];

			$action = $mybb->input['threads'][$thread['tid']];
if($action == "approve")
{
$threads_to_approve[] = $thread['tid'];

			}

			}

			else if($action == "delete")
{
$threads_to_delete[] = $thread['tid'];

			else if($action == "delete")
{
$threads_to_delete[] = $thread['tid'];

			}
}

			}
}

		if(!empty($threads_to_approve))
{
$moderation->approve_threads($threads_to_approve);
log_moderator_action(array('tids' => $threads_to_approve), $lang->multi_approve_threads);

		if(!empty($threads_to_approve))
{
$moderation->approve_threads($threads_to_approve);
log_moderator_action(array('tids' => $threads_to_approve), $lang->multi_approve_threads);

		}

		}

		if(!empty($threads_to_delete))
{
foreach($threads_to_delete as $tid)

		if(!empty($threads_to_delete))
{
foreach($threads_to_delete as $tid)

Zeile 1231Zeile 1310
			}
log_moderator_action(array('tids' => $threads_to_delete), $lang->multi_delete_threads);
}

			}
log_moderator_action(array('tids' => $threads_to_delete), $lang->multi_delete_threads);
}

		



		$plugins->run_hooks("modcp_do_modqueue_end");

		$plugins->run_hooks("modcp_do_modqueue_end");

		



		redirect("modcp.php?action=modqueue", $lang->redirect_threadsmoderated);
}
else if(is_array($mybb->input['posts']))

		redirect("modcp.php?action=modqueue", $lang->redirect_threadsmoderated);
}
else if(is_array($mybb->input['posts']))

Zeile 1257Zeile 1336
			$moderation->approve_posts($posts_to_approve);
}
log_moderator_action(array('pids' => $posts_to_approve), $lang->multi_approve_posts);

			$moderation->approve_posts($posts_to_approve);
}
log_moderator_action(array('pids' => $posts_to_approve), $lang->multi_approve_posts);

		



		$plugins->run_hooks("modcp_do_modqueue_end");

		$plugins->run_hooks("modcp_do_modqueue_end");

		



		redirect("modcp.php?action=modqueue&type=posts", $lang->redirect_postsmoderated);
}
else if(is_array($mybb->input['attachments']))

		redirect("modcp.php?action=modqueue&type=posts", $lang->redirect_postsmoderated);
}
else if(is_array($mybb->input['attachments']))

Zeile 1277Zeile 1356
			if($action == "approve")
{
$db->update_query("attachments", array("visible" => 1), "aid='{$attachment['aid']}'");

			if($action == "approve")
{
$db->update_query("attachments", array("visible" => 1), "aid='{$attachment['aid']}'");

			}

			}

			else if($action == "delete")
{
remove_attachment($attachment['pid'], '', $attachment['aid']);
}
}

			else if($action == "delete")
{
remove_attachment($attachment['pid'], '', $attachment['aid']);
}
}

		



		$plugins->run_hooks("modcp_do_modqueue_end");

		$plugins->run_hooks("modcp_do_modqueue_end");

		



		redirect("modcp.php?action=modqueue&type=attachments", $lang->redirect_attachmentsmoderated);
}
}

		redirect("modcp.php?action=modqueue&type=attachments", $lang->redirect_attachmentsmoderated);
}
}

Zeile 1329Zeile 1408
			$page = 1;
}


			$page = 1;
}


		$multipage = multipage($pages, $perpage, $page, "modcp.php?action=modqueue&amp;type=threads");

		$multipage = multipage($unapproved_threads, $perpage, $page, "modcp.php?action=modqueue&type=threads");


$query = $db->query("


$query = $db->query("

			SELECT t.tid, t.dateline, t.fid, t.subject, p.message AS postmessage, u.username AS username, t.uid

			SELECT t.tid, t.dateline, t.fid, t.subject, t.username AS threadusername, p.message AS postmessage, u.username AS username, t.uid

			FROM ".TABLE_PREFIX."threads t
LEFT JOIN ".TABLE_PREFIX."posts p ON (p.pid=t.firstpost)
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=t.uid)

			FROM ".TABLE_PREFIX."threads t
LEFT JOIN ".TABLE_PREFIX."posts p ON (p.pid=t.firstpost)
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=t.uid)

Zeile 1349Zeile 1428
			$forum_name = $forum_cache[$thread['fid']]['name'];
$threaddate = my_date($mybb->settings['dateformat'], $thread['dateline']);
$threadtime = my_date($mybb->settings['timeformat'], $thread['dateline']);

			$forum_name = $forum_cache[$thread['fid']]['name'];
$threaddate = my_date($mybb->settings['dateformat'], $thread['dateline']);
$threadtime = my_date($mybb->settings['timeformat'], $thread['dateline']);

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


















if($thread['username'] == "")
{
if($thread['threadusername'] != "")
{
$profile_link = $thread['threadusername'];
}
else
{
$profile_link = $lang->guest;
}
}
else
{
$profile_link = build_profile_link($thread['username'], $thread['uid']);
}


			$thread['postmessage'] = nl2br(htmlspecialchars_uni($thread['postmessage']));
$forum = "<strong>{$lang->meta_forum} <a href=\"{$thread['forumlink']}\">{$forum_name}</a></strong>";
eval("\$threads .= \"".$templates->get("modcp_modqueue_threads_thread")."\";");

			$thread['postmessage'] = nl2br(htmlspecialchars_uni($thread['postmessage']));
$forum = "<strong>{$lang->meta_forum} <a href=\"{$thread['forumlink']}\">{$forum_name}</a></strong>";
eval("\$threads .= \"".$templates->get("modcp_modqueue_threads_thread")."\";");

Zeile 1361Zeile 1456
		}

if($threads)

		}

if($threads)

		{

		{

			add_breadcrumb($lang->mcp_nav_modqueue_threads, "modcp.php?action=modqueue&amp;type=threads");

			add_breadcrumb($lang->mcp_nav_modqueue_threads, "modcp.php?action=modqueue&amp;type=threads");

			



			$plugins->run_hooks("modcp_modqueue_threads_end");

			$plugins->run_hooks("modcp_modqueue_threads_end");

			



			eval("\$mass_controls = \"".$templates->get("modcp_modqueue_masscontrols")."\";");
eval("\$threadqueue = \"".$templates->get("modcp_modqueue_threads")."\";");
output_page($threadqueue);

			eval("\$mass_controls = \"".$templates->get("modcp_modqueue_masscontrols")."\";");
eval("\$threadqueue = \"".$templates->get("modcp_modqueue_threads")."\";");
output_page($threadqueue);

		}

		}

		$type = 'threads';
}


		$type = 'threads';
}


Zeile 1393Zeile 1488

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


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

		$pages = ceil($pages);

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


		$pages = ceil($pages);

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


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

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

Zeile 1415Zeile 1510
			$page = 1;
}


			$page = 1;
}


		$multipage = multipage($pages, $perpage, $page, "modcp.php?action=modqueue&amp;type=posts");

		$multipage = multipage($unapproved_posts, $perpage, $page, "modcp.php?action=modqueue&amp;type=posts");


$query = $db->query("


$query = $db->query("

			SELECT p.pid, p.subject, p.message, t.subject AS threadsubject, t.tid, u.username, p.uid, t.fid, p.dateline

			SELECT p.pid, p.subject, p.message, p.username AS postusername, t.subject AS threadsubject, t.tid, u.username, p.uid, t.fid, p.dateline

			FROM  ".TABLE_PREFIX."posts p
LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=p.tid)
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=p.uid)

			FROM  ".TABLE_PREFIX."posts p
LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=p.tid)
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=p.uid)

Zeile 1436Zeile 1531
			$forum_name = $forum_cache[$post['fid']]['name'];
$postdate = my_date($mybb->settings['dateformat'], $post['dateline']);
$posttime = my_date($mybb->settings['timeformat'], $post['dateline']);

			$forum_name = $forum_cache[$post['fid']]['name'];
$postdate = my_date($mybb->settings['dateformat'], $post['dateline']);
$posttime = my_date($mybb->settings['timeformat'], $post['dateline']);

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


















if($post['username'] == "")
{
if($post['postusername'] != "")
{
$profile_link = $post['postusername'];
}
else
{
$profile_link = $lang->guest;
}
}
else
{
$profile_link = build_profile_link($post['username'], $post['uid']);
}


			$thread = "<strong>{$lang->meta_thread} <a href=\"{$post['threadlink']}\">{$post['threadsubject']}</a></strong>";
$forum = "<strong>{$lang->meta_forum} <a href=\"{$post['forumlink']}\">{$forum_name}</a></strong><br />";
$post['message'] = nl2br(htmlspecialchars_uni($post['message']));

			$thread = "<strong>{$lang->meta_thread} <a href=\"{$post['threadlink']}\">{$post['threadsubject']}</a></strong>";
$forum = "<strong>{$lang->meta_forum} <a href=\"{$post['forumlink']}\">{$forum_name}</a></strong><br />";
$post['message'] = nl2br(htmlspecialchars_uni($post['message']));

Zeile 1444Zeile 1555
		}

if(!$posts && $mybb->input['type'] == "posts")

		}

if(!$posts && $mybb->input['type'] == "posts")

		{
eval("\$posts = \"".$templates->get("modcp_modqueue_posts_empty")."\";");
}

if($posts)
{

		{
eval("\$posts = \"".$templates->get("modcp_modqueue_posts_empty")."\";");
}

if($posts)
{

			add_breadcrumb($lang->mcp_nav_modqueue_posts, "modcp.php?action=modqueue&amp;type=posts");

			add_breadcrumb($lang->mcp_nav_modqueue_posts, "modcp.php?action=modqueue&amp;type=posts");

			



			$plugins->run_hooks("modcp_modqueue_posts_end");

			$plugins->run_hooks("modcp_modqueue_posts_end");

			



			eval("\$mass_controls = \"".$templates->get("modcp_modqueue_masscontrols")."\";");
eval("\$postqueue = \"".$templates->get("modcp_modqueue_posts")."\";");
output_page($postqueue);

			eval("\$mass_controls = \"".$templates->get("modcp_modqueue_masscontrols")."\";");
eval("\$postqueue = \"".$templates->get("modcp_modqueue_posts")."\";");
output_page($postqueue);

Zeile 1501Zeile 1612
			$page = 1;
}


			$page = 1;
}


		$multipage = multipage($pages, $perpage, $page, "modcp.php?action=modqueue&amp;type=attachments");

		$multipage = multipage($unapproved_attachments, $perpage, $page, "modcp.php?action=modqueue&amp;type=attachments");


$query = $db->query("
SELECT a.*, p.subject AS postsubject, p.dateline, p.uid, u.username, t.tid, t.subject AS threadsubject


$query = $db->query("
SELECT a.*, p.subject AS postsubject, p.dateline, p.uid, u.username, t.tid, t.subject AS threadsubject

Zeile 1521Zeile 1632
			{
$attachment['dateuploaded'] = $attachment['dateline'];
}

			{
$attachment['dateuploaded'] = $attachment['dateline'];
}

			



			$attachdate = my_date($mybb->settings['dateformat'], $attachment['dateuploaded']);
$attachtime = my_date($mybb->settings['timeformat'], $attachment['dateuploaded']);

			$attachdate = my_date($mybb->settings['dateformat'], $attachment['dateuploaded']);
$attachtime = my_date($mybb->settings['timeformat'], $attachment['dateuploaded']);





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

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

Zeile 1533Zeile 1644
			$link = get_post_link($attachment['pid'], $attachment['tid']) . "#pid{$attachment['pid']}";
$thread_link = get_thread_link($attachment['tid']);
$profile_link = build_profile_link($attachment['username'], $attachment['uid']);

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





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

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

		}


		}


		if(!$attachments && $mybb->input['type'] == "attachments")
{
eval("\$attachments = \"".$templates->get("modcp_modqueue_attachments_empty")."\";");

		if(!$attachments && $mybb->input['type'] == "attachments")
{
eval("\$attachments = \"".$templates->get("modcp_modqueue_attachments_empty")."\";");

Zeile 1545Zeile 1656
		if($attachments)
{
add_breadcrumb($lang->mcp_nav_modqueue_attachments, "modcp.php?action=modqueue&amp;type=attachments");

		if($attachments)
{
add_breadcrumb($lang->mcp_nav_modqueue_attachments, "modcp.php?action=modqueue&amp;type=attachments");

			



			$plugins->run_hooks("modcp_modqueue_attachments_end");

			$plugins->run_hooks("modcp_modqueue_attachments_end");

			



			eval("\$mass_controls = \"".$templates->get("modcp_modqueue_masscontrols")."\";");
eval("\$attachmentqueue = \"".$templates->get("modcp_modqueue_attachments")."\";");
output_page($attachmentqueue);

			eval("\$mass_controls = \"".$templates->get("modcp_modqueue_masscontrols")."\";");
eval("\$attachmentqueue = \"".$templates->get("modcp_modqueue_attachments")."\";");
output_page($attachmentqueue);

Zeile 1558Zeile 1669
	if(!$threadqueue && !$postqueue && !$attachmentqueue)
{
add_breadcrumb($lang->mcp_nav_modqueue, "modcp.php?action=modqueue");

	if(!$threadqueue && !$postqueue && !$attachmentqueue)
{
add_breadcrumb($lang->mcp_nav_modqueue, "modcp.php?action=modqueue");

		



		$plugins->run_hooks("modcp_modqueue_end");

		$plugins->run_hooks("modcp_modqueue_end");

		



		eval("\$queue = \"".$templates->get("modcp_modqueue_empty")."\";");
output_page($queue);
}

		eval("\$queue = \"".$templates->get("modcp_modqueue_empty")."\";");
output_page($queue);
}

Zeile 1573Zeile 1684

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


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

	{
error($lang->invalid_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();
}

	



	$plugins->run_hooks("modcp_do_editprofile_start");

// Set up user handler.

	$plugins->run_hooks("modcp_do_editprofile_start");

// Set up user handler.

Zeile 1601Zeile 1712
		"msn" => $mybb->input['msn'],
"signature" => $mybb->input['signature'],
"usernotes" => $mybb->input['usernotes']

		"msn" => $mybb->input['msn'],
"signature" => $mybb->input['signature'],
"usernotes" => $mybb->input['usernotes']

	);

	);


$updated_user['birthday'] = array(
"day" => $mybb->input['birthday_day'],


$updated_user['birthday'] = array(
"day" => $mybb->input['birthday_day'],

Zeile 1674Zeile 1785
		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']] = intval($mybb->input[$option['time']]);

			if(!$mybb->input[$option['action']])
{
if($user[$option['update_field']] == 1)

			if(!$mybb->input[$option['action']])
{
if($user[$option['update_field']] == 1)

Zeile 1689Zeile 1801

if($mybb->input[$option['action']])
{


if($mybb->input[$option['action']])
{

				if(intval($mybb->input[$option['time']]) == 0 && $mybb->input[$option['period']] != "never" && $user[$option['update_field']] != 1)

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

				{
// User has selected a type of ban, but not entered a valid time frame
$string = $option['action']."_error";

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

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

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

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

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

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

Zeile 1745Zeile 1857
		else
{
$plugins->run_hooks("modcp_do_editprofile_update");

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

			



			// Continue with the update if there is no errors
$user_info = $userhandler->update_user();
$db->update_query("users", $extra_user_updates, "uid='{$user['uid']}'");
log_moderator_action(array("uid" => $user['uid'], "username" => $user['username']), $lang->edited_user);

			// Continue with the update if there is no errors
$user_info = $userhandler->update_user();
$db->update_query("users", $extra_user_updates, "uid='{$user['uid']}'");
log_moderator_action(array("uid" => $user['uid'], "username" => $user['username']), $lang->edited_user);

			



			$plugins->run_hooks("modcp_do_editprofile_end");

			$plugins->run_hooks("modcp_do_editprofile_end");

			



			redirect("modcp.php?action=finduser", $lang->redirect_user_updated);
}
}

			redirect("modcp.php?action=finduser", $lang->redirect_user_updated);
}
}

Zeile 1764Zeile 1876

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


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

	{
error($lang->invalid_user);

	{
error($lang->error_nomember);

	}

// Check if the current user has permission to edit this user

	}

// Check if the current user has permission to edit this user

Zeile 1777Zeile 1889
	if($user['website'] == "" || $user['website'] == "http://")
{
$user['website'] = "http://";

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

	}

	}


if($user['icq'] != "0")
{
$user['icq'] = intval($user['icq']);
}
if($user['icq'] == 0)


if($user['icq'] != "0")
{
$user['icq'] = intval($user['icq']);
}
if($user['icq'] == 0)

	{

	{

		$user['icq'] = "";
}


		$user['icq'] = "";
}


Zeile 1802Zeile 1914
	foreach(array('usertitle', 'website', 'icq', 'aim', 'yahoo', 'msn', 'signature', 'birthday_day', 'birthday_month', 'birthday_year') as $field)
{
$mybb->input[$field] = htmlspecialchars_uni($mybb->input[$field]);

	foreach(array('usertitle', 'website', 'icq', 'aim', 'yahoo', 'msn', 'signature', 'birthday_day', 'birthday_month', 'birthday_year') as $field)
{
$mybb->input[$field] = htmlspecialchars_uni($mybb->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($user['usertitle'] == "")

	if(!empty($display_group['usertitle']))

	{

	{

		$query = $db->simple_select("usertitles", "*", "posts <='".$user['postnum']."'", array('order_by' => 'posts', 'order_dir' => 'DESC', 'limit' => 1));
$utitle = $db->fetch_array($query);
$defaulttitle = $utitle['title'];

		$defaulttitle = htmlspecialchars_uni($display_group['usertitle']);



	}
else

	}
else

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

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

	{
// Go for post count title if a group default isn't set
$usertitles = $cache->read('usertitles');

foreach($usertitles as $title)
{
if($title['posts'] <= $mybb->user['postnum'])
{
$defaulttitle = $title['title'];
}
}

	}

	}

 


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

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

Zeile 1841Zeile 1961
		}
}
$bdaymonthsel[$mybb->input['birthday_month']] = 'selected="selected"';

		}
}
$bdaymonthsel[$mybb->input['birthday_month']] = 'selected="selected"';

	



	$plugins->run_hooks("modcp_editprofile_start");

// Fetch profile fields

	$plugins->run_hooks("modcp_editprofile_start");

// Fetch profile fields

Zeile 1854Zeile 1974
	while($profilefield = $db->fetch_array($query))
{
$profilefield['type'] = htmlspecialchars_uni($profilefield['type']);

	while($profilefield = $db->fetch_array($query))
{
$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];

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

Zeile 1908Zeile 2029
			}
}
elseif($type == "select")

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

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

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

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

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

Zeile 1931Zeile 2052
			}
}
elseif($type == "radio")

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

		{

		{

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

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

Zeile 1949Zeile 2070
		elseif($type == "checkbox")
{
if($errors)

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

			{

			{

				$useropts = $userfield;
}
else

				$useropts = $userfield;
}
else

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

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

				}

				}

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

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

Zeile 2056Zeile 2177
		1 => array(
"action" => "suspendsignature", // The input action for this option
"option" => "suspendsignature", // The field in the database that this option relates to

		1 => array(
"action" => "suspendsignature", // The input action for this option
"option" => "suspendsignature", // The field in the database that this option relates to

 
			"time" => "action_time", // The time we've entered

			"length" => "suspendsigtime", // The length of suspension field in the database
"select_option" => "action" // The name of the select box of this option
),
2 => array(
"action" => "moderateposting",
"option" => "moderateposts",

			"length" => "suspendsigtime", // The length of suspension field in the database
"select_option" => "action" // The name of the select box of this option
),
2 => array(
"action" => "moderateposting",
"option" => "moderateposts",

 
			"time" => "modpost_time",

			"length" => "moderationtime",
"select_option" => "modpost"
),
3 => array(
"action" => "suspendposting",
"option" => "suspendposting",

			"length" => "moderationtime",
"select_option" => "modpost"
),
3 => array(
"action" => "suspendposting",
"option" => "suspendposting",

 
			"time" => "suspost_time",

			"length" => "suspensiontime",
"select_option" => "suspost"
)

			"length" => "suspensiontime",
"select_option" => "suspost"
)

Zeile 2083Zeile 2207

foreach($moderator_options as $option)
{


foreach($moderator_options as $option)
{

 
		$mybb->input[$option['time']] = intval($mybb->input[$option['time']]);

		// 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 2148Zeile 2273
	}

eval("\$suspend_signature = \"".$templates->get("modcp_editprofile_signature")."\";");

	}

eval("\$suspend_signature = \"".$templates->get("modcp_editprofile_signature")."\";");

	
$plugins->run_hooks("modcp_editprofile_end");


$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")
{
add_breadcrumb($lang->mcp_nav_users, "modcp.php?action=finduser");

if($mybb->input['action'] == "finduser")
{
add_breadcrumb($lang->mcp_nav_users, "modcp.php?action=finduser");

	



	$perpage = intval($mybb->input['perpage']);
if(!$perpage || $perpage <= 0)

	$perpage = intval($mybb->input['perpage']);
if(!$perpage || $perpage <= 0)

	{

	{

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

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

Zeile 2236Zeile 2361
	$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");

	



	$plugins->run_hooks("modcp_finduser_start");

// Fetch out results

	$plugins->run_hooks("modcp_finduser_start");

// Fetch out results

Zeile 2250Zeile 2375
		$regtime = my_date($mybb->settings['timeformat'], $user['regdate']);
$lastdate = my_date($mybb->settings['dateformat'], $user['lastvisit']);
$lasttime = my_date($mybb->settings['timeformat'], $user['lastvisit']);

		$regtime = my_date($mybb->settings['timeformat'], $user['regdate']);
$lastdate = my_date($mybb->settings['dateformat'], $user['lastvisit']);
$lasttime = my_date($mybb->settings['timeformat'], $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 2259Zeile 2384
	{
eval("\$users = \"".$templates->get("modcp_finduser_noresults")."\";");
}

	{
eval("\$users = \"".$templates->get("modcp_finduser_noresults")."\";");
}

	



	$plugins->run_hooks("modcp_finduser_end");

eval("\$finduser = \"".$templates->get("modcp_finduser")."\";");

	$plugins->run_hooks("modcp_finduser_end");

eval("\$finduser = \"".$templates->get("modcp_finduser")."\";");

Zeile 2308Zeile 2433
	}
if($mybb->input['filter']['reason'])
{

	}
if($mybb->input['filter']['reason'])
{

		$search['reason'] = $db->escape_string($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']);
}

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

Zeile 2342Zeile 2467
	{
$ordersel['asc'] = ' selected="selected"';
}

	{
$ordersel['asc'] = ' selected="selected"';
}

	



	$plugins->run_hooks("modcp_warninglogs_start");

// Pagination stuff

	$plugins->run_hooks("modcp_warninglogs_start");

// Pagination stuff

Zeile 2360Zeile 2485
	if(isset($mybb->input['page']) && intval($mybb->input['page']) > 0)
{
$page = intval($mybb->input['page']);

	if(isset($mybb->input['page']) && intval($mybb->input['page']) > 0)
{
$page = intval($mybb->input['page']);

	}

	}

	$per_page = 20;
if(isset($mybb->input['filter']['per_page']) && intval($mybb->input['filter']['per_page']) > 0)
{
$per_page = intval($mybb->input['filter']['per_page']);

	$per_page = 20;
if(isset($mybb->input['filter']['per_page']) && intval($mybb->input['filter']['per_page']) > 0)
{
$per_page = intval($mybb->input['filter']['per_page']);

	}

	}

	$start = ($page-1) * $per_page;
// Build the base URL for pagination links
$url = 'modcp.php?action=warninglogs';

	$start = ($page-1) * $per_page;
// Build the base URL for pagination links
$url = 'modcp.php?action=warninglogs';

Zeile 2378Zeile 2503
		}
}
$multipage = multipage($total_warnings, $per_page, $page, $url);

		}
}
$multipage = multipage($total_warnings, $per_page, $page, $url);





	// The actual query
$sql = "
SELECT

	// The actual query
$sql = "
SELECT

Zeile 2439Zeile 2564
	{
eval("\$warning_list = \"".$templates->get("modcp_warninglogs_nologs")."\";");
}

	{
eval("\$warning_list = \"".$templates->get("modcp_warninglogs_nologs")."\";");
}

	



	$plugins->run_hooks("modcp_warninglogs_end");

	$plugins->run_hooks("modcp_warninglogs_end");





	eval("\$warninglogs = \"".$templates->get("modcp_warninglogs")."\";");
output_page($warninglogs);
}

	eval("\$warninglogs = \"".$templates->get("modcp_warninglogs")."\";");
output_page($warninglogs);
}

Zeile 2449Zeile 2574
if($mybb->input['action'] == "ipsearch")
{
add_breadcrumb($lang->mcp_nav_ipsearch, "modcp.php?action=ipsearch");

if($mybb->input['action'] == "ipsearch")
{
add_breadcrumb($lang->mcp_nav_ipsearch, "modcp.php?action=ipsearch");





	if($mybb->input['ipaddress'])
{
if(!is_array($groupscache))

	if($mybb->input['ipaddress'])
{
if(!is_array($groupscache))

Zeile 2461Zeile 2586

// Searching post IP addresses
if($mybb->input['search_posts'])


// Searching post IP addresses
if($mybb->input['search_posts'])

		{
// IPv6 IP
if(strpos($mybb->input['ipaddress'], ":") !== false)
{

		{
// IPv6 IP
if(strpos($mybb->input['ipaddress'], ":") !== false)
{

				$post_ip_sql = "ipaddress LIKE '".$db->escape_string(str_replace("*", "%", $mybb->input['ipaddress']))."'";

				$post_ip_sql = "ipaddress LIKE '".$db->escape_string(str_replace("*", "%", $mybb->input['ipaddress']))."'";

			}
else
{
$ip_range = fetch_longipv4_range($mybb->input['ipaddress']);
if(!is_array($ip_range))
{
$post_ip_sql = "longipaddress='{$ip_range}'";
}
else

			}
else
{
$ip_range = fetch_longipv4_range($mybb->input['ipaddress']);

if($ip_range)




				{

				{

					$post_ip_sql = "longipaddress > '{$ip_range[0]}' AND longipaddress < '{$ip_range[1]}'";








					if(!is_array($ip_range))
{
$post_ip_sql = "longipaddress='{$ip_range}'";
}
else
{
$post_ip_sql = "longipaddress > '{$ip_range[0]}' AND longipaddress < '{$ip_range[1]}'";
}

				}

				}

			}


			}


			$plugins->run_hooks("modcp_ipsearch_posts_start");

			$plugins->run_hooks("modcp_ipsearch_posts_start");

			$query = $db->query("
SELECT COUNT(pid) AS count
FROM ".TABLE_PREFIX."posts
WHERE {$post_ip_sql}
");
$post_results = $db->fetch_field($query, "count");
}







if($post_ip_sql)
{
$query = $db->query("
SELECT COUNT(pid) AS count
FROM ".TABLE_PREFIX."posts
WHERE {$post_ip_sql} AND visible >= 0
");

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


// Searching user IP addresses
if($mybb->input['search_users'])


// Searching user IP addresses
if($mybb->input['search_users'])

Zeile 2497Zeile 2632
				$user_ip_sql = "regip LIKE '".$db->escape_string(str_replace("*", "%", $mybb->input['ipaddress']))."' OR lastip LIKE '".$db->escape_string(str_replace("*", "%", $mybb->input['ipaddress']))."'";
}
else

				$user_ip_sql = "regip LIKE '".$db->escape_string(str_replace("*", "%", $mybb->input['ipaddress']))."' OR lastip LIKE '".$db->escape_string(str_replace("*", "%", $mybb->input['ipaddress']))."'";
}
else

			{

			{

				$ip_range = fetch_longipv4_range($mybb->input['ipaddress']);

				$ip_range = fetch_longipv4_range($mybb->input['ipaddress']);

				if(!is_array($ip_range))



if($ip_range)

				{

				{

					$user_ip_sql = "longregip='{$ip_range}' OR longlastip='{$ip_range}'";
}
else
{
$user_ip_sql = "(longregip > '{$ip_range[0]}' AND longregip < '{$ip_range[1]}') OR (longlastip > '{$ip_range[0]}' AND longlastip < '{$ip_range[1]}')";




					if(!is_array($ip_range))
{
$user_ip_sql = "longregip='{$ip_range}' OR longlastip='{$ip_range}'";
}
else
{
$user_ip_sql = "(longregip > '{$ip_range[0]}' AND longregip < '{$ip_range[1]}') OR (longlastip > '{$ip_range[0]}' AND longlastip < '{$ip_range[1]}')";
}

				}
}

				}
}

 


			$plugins->run_hooks("modcp_ipsearch_users_start");

			$plugins->run_hooks("modcp_ipsearch_users_start");

			$query = $db->query("
SELECT COUNT(uid) AS count
FROM ".TABLE_PREFIX."users
WHERE {$user_ip_sql}
");
$user_results = $db->fetch_field($query, "count");
}








if($user_ip_sql)
{
$query = $db->query("
SELECT COUNT(uid) AS count
FROM ".TABLE_PREFIX."users
WHERE {$user_ip_sql}
");

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


		$total_results = $post_results+$user_results;

		$total_results = $post_results+$user_results;

 

if(!$total_results)
{
$total_results = 1;
}


// Now we have the result counts, paginate
$perpage = intval($mybb->input['perpage']);


// Now we have the result counts, paginate
$perpage = intval($mybb->input['perpage']);

Zeile 2564Zeile 2714
		$multipage = multipage($total_results, $perpage, $page, $page_url);

$post_limit = $perpage;

		$multipage = multipage($total_results, $perpage, $page, $page_url);

$post_limit = $perpage;

		if($mybb->input['search_users'] && $start <= $user_results)

		if($mybb->input['search_users'] && $user_results && $start <= $user_results)

		{
$query = $db->query("
SELECT username, uid, regip, lastip

		{
$query = $db->query("
SELECT username, uid, regip, lastip

Zeile 2611Zeile 2761
				$post_start = 0;
}
}

				$post_start = 0;
}
}

		if($mybb->input['search_posts'] && (!$mybb->input['search_users'] || ($mybb->input['search_users'] && $post_limit > 0)))

		if($mybb->input['search_posts'] && $post_results && (!$mybb->input['search_users'] || ($mybb->input['search_users'] && $post_limit > 0)))

		{
$ipaddresses = $tids = $uids = array();
$query = $db->query("
SELECT username AS postusername, uid, subject, pid, tid, ipaddress
FROM ".TABLE_PREFIX."posts

		{
$ipaddresses = $tids = $uids = array();
$query = $db->query("
SELECT username AS postusername, uid, subject, pid, tid, ipaddress
FROM ".TABLE_PREFIX."posts

				WHERE {$post_ip_sql}

				WHERE {$post_ip_sql} AND visible >= 0

				ORDER BY dateline DESC
LIMIT {$post_start}, {$post_limit}
");

				ORDER BY dateline DESC
LIMIT {$post_start}, {$post_limit}
");

Zeile 2627Zeile 2777
				$uids[$ipaddress['uid']] = $ipaddress['pid'];
$ipaddresses[$ipaddress['pid']] = $ipaddress;
}

				$uids[$ipaddress['uid']] = $ipaddress['pid'];
$ipaddresses[$ipaddress['pid']] = $ipaddress;
}

			



			if(!empty($ipaddresses))
{
$query = $db->simple_select("threads", "subject, tid", "tid IN(".implode(',', array_keys($tids)).")");

			if(!empty($ipaddresses))
{
$query = $db->simple_select("threads", "subject, tid", "tid IN(".implode(',', array_keys($tids)).")");

Zeile 2636Zeile 2786
					$ipaddresses[$tids[$thread['tid']]]['threadsubject'] = $thread['subject'];
}
unset($tids);

					$ipaddresses[$tids[$thread['tid']]]['threadsubject'] = $thread['subject'];
}
unset($tids);

				



				$query = $db->simple_select("users", "username, uid", "uid IN(".implode(',', array_keys($uids)).")");
while($user = $db->fetch_array($query))

				$query = $db->simple_select("users", "username, uid", "uid IN(".implode(',', array_keys($uids)).")");
while($user = $db->fetch_array($query))

				{

				{

					$ipaddresses[$uids[$user['uid']]]['username'] = $user['username'];
}
unset($uids);

					$ipaddresses[$uids[$user['uid']]]['username'] = $user['username'];
}
unset($uids);

				



				foreach($ipaddresses as $ipaddress)
{
$ip = $ipaddress['ipaddress'];

				foreach($ipaddresses as $ipaddress)
{
$ip = $ipaddress['ipaddress'];

Zeile 2657Zeile 2807
					eval("\$results .= \"".$templates->get("modcp_ipsearch_result")."\";");
}
}

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

		}

		}


if(!$results)
{
eval("\$results = \"".$templates->get("modcp_ipsearch_noresults")."\";");


if(!$results)
{
eval("\$results = \"".$templates->get("modcp_ipsearch_noresults")."\";");

		}

		}


if($ipaddressvalue)
{


if($ipaddressvalue)
{

Zeile 2671Zeile 2821
		else
{
$lang->ipsearch_results = $lang->ipsearch;

		else
{
$lang->ipsearch_results = $lang->ipsearch;

		}

if(!strstr($mybb->input['ipaddress'], "*") && !strstr($mybb->input['ipaddress'], ":"))
{
$misc_info_link = "<div class=\"float_right\">(<a href=\"modcp.php?action=iplookup&ipaddress=".htmlspecialchars_uni($mybb->input['ipaddress'])."\" onclick=\"MyBB.popupWindow('{$mybb->settings['bburl']}/modcp.php?action=iplookup&ipaddress=".htmlspecialchars_uni($mybb->input['ipaddress'])."', 'iplookup', 500, 250); return false;\">{$lang->info_on_ip}</a>)</div>";

		}

if(!strstr($mybb->input['ipaddress'], "*") && !strstr($mybb->input['ipaddress'], ":"))
{
$misc_info_link = "<div class=\"float_right\">(<a href=\"modcp.php?action=iplookup&ipaddress=".htmlspecialchars_uni($mybb->input['ipaddress'])."\" onclick=\"MyBB.popupWindow('{$mybb->settings['bburl']}/modcp.php?action=iplookup&ipaddress=".urlencode($mybb->input['ipaddress'])."', 'iplookup', 500, 250); return false;\">{$lang->info_on_ip}</a>)</div>";

		}

eval("\$ipsearch_results = \"".$templates->get("modcp_ipsearch_results")."\";");

		}

eval("\$ipsearch_results = \"".$templates->get("modcp_ipsearch_results")."\";");

Zeile 2683Zeile 2833

// Fetch filter options
if(!$mybb->input['ipaddress'])


// Fetch filter options
if(!$mybb->input['ipaddress'])

	{

	{

		$mybb->input['search_posts'] = 1;
$mybb->input['search_users'] = 1;
}
if($mybb->input['search_posts'])

		$mybb->input['search_posts'] = 1;
$mybb->input['search_users'] = 1;
}
if($mybb->input['search_posts'])

	{

	{

		$postsearchselect = "checked=\"checked\"";
}
if($mybb->input['search_users'])
{
$usersearchselect = "checked=\"checked\"";
}

		$postsearchselect = "checked=\"checked\"";
}
if($mybb->input['search_users'])
{
$usersearchselect = "checked=\"checked\"";
}

	



	$plugins->run_hooks("modcp_ipsearch_end");

eval("\$ipsearch = \"".$templates->get("modcp_ipsearch")."\";");

	$plugins->run_hooks("modcp_ipsearch_end");

eval("\$ipsearch = \"".$templates->get("modcp_ipsearch")."\";");

Zeile 2716Zeile 2866
			$ip_record = @geoip_record_by_name($mybb->input['ipaddress']);
if($ip_record)
{

			$ip_record = @geoip_record_by_name($mybb->input['ipaddress']);
if($ip_record)
{

				$ipaddress_location = htmlspecialchars_uni($ip_record['country_name']);

				$ipaddress_location = htmlspecialchars_uni(utf8_encode($ip_record['country_name']));

				if($ip_record['city'])
{

				if($ip_record['city'])
{

					$ipaddress_location .= $lang->comma.htmlspecialchars_uni($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')."\";");
output_page($iplookup);
}

	eval("\$iplookup = \"".$templates->get('modcp_ipsearch_misc_info')."\";");
output_page($iplookup);
}

Zeile 2753Zeile 2903
	if($mybb->input['page'] != "last")
{
$page = intval($mybb->input['page']);

	if($mybb->input['page'] != "last")
{
$page = intval($mybb->input['page']);

	}

	}


$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 2768Zeile 2918
	}

if($page > $pages || $page <= 0)

	}

if($page > $pages || $page <= 0)

	{
$page = 1;

	{
$page = 1;

	}

if($page)

	}

if($page)

Zeile 2788Zeile 2938
	{
eval("\$allbannedpages = \"".$templates->get("modcp_banning_multipage")."\";");
}

	{
eval("\$allbannedpages = \"".$templates->get("modcp_banning_multipage")."\";");
}

	



	$plugins->run_hooks("modcp_banning_start");

$query = $db->query("

	$plugins->run_hooks("modcp_banning_start");

$query = $db->query("

Zeile 2887Zeile 3037
	{
error_no_permission();
}

	{
error_no_permission();
}

	
$plugins->run_hooks("modcp_liftban_start");





$plugins->run_hooks("modcp_liftban_start");

$query = $db->simple_select("users", "username", "uid = '{$ban['uid']}'");
$username = $db->fetch_field($query, "username");


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


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

Zeile 2900Zeile 3053

$cache->update_banned();
$cache->update_moderators();


$cache->update_banned();
$cache->update_moderators();

	


	log_moderator_action(array("uid" => $ban['uid'], "username" => $username), $lang->lifted_ban);


	$plugins->run_hooks("modcp_liftban_end");

redirect("modcp.php?action=banning", $lang->redirect_banlifted);

	$plugins->run_hooks("modcp_liftban_end");

redirect("modcp.php?action=banning", $lang->redirect_banlifted);

Zeile 2937Zeile 3091
	else
{
// Get the users info from their Username

	else
{
// Get the users info from their Username

		$query = $db->simple_select("users", "uid, usergroup, additionalgroups, displaygroup", "username = '".$db->escape_string($mybb->input['username'])."'", array('limit' => 1));

		$query = $db->simple_select("users", "uid, username, usergroup, additionalgroups, displaygroup", "username = '".$db->escape_string($mybb->input['username'])."'", array('limit' => 1));

		$user = $db->fetch_array($query);
if(!$user['uid'])
{

		$user = $db->fetch_array($query);
if(!$user['uid'])
{

Zeile 2948Zeile 3102
	if($user['uid'] == $mybb->user['uid'])
{
$errors[] = $lang->error_cannotbanself;

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

	}

	}


// Have permissions to ban this user?
if(!modcp_can_manage_user($user['uid']))
{
$errors[] = $lang->error_cannotbanuser;


// Have permissions to ban this user?
if(!modcp_can_manage_user($user['uid']))
{
$errors[] = $lang->error_cannotbanuser;

	}

	}


// Check for an incoming reason
if(!$mybb->input['banreason'])


// Check for an incoming reason
if(!$mybb->input['banreason'])

Zeile 2965Zeile 3119
	// Check banned group
$query = $db->simple_select("usergroups", "gid", "isbannedgroup=1 AND gid='".intval($mybb->input['usergroup'])."'");
if(!$db->fetch_field($query, "gid"))

	// Check banned group
$query = $db->simple_select("usergroups", "gid", "isbannedgroup=1 AND gid='".intval($mybb->input['usergroup'])."'");
if(!$db->fetch_field($query, "gid"))

	{

	{

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


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


Zeile 2978Zeile 3132
			$errors[] = $lang->error_useralreadybanned;
}
}

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

	



	$plugins->run_hooks("modcp_do_banuser_start");

// Still no errors? Ban the user

	$plugins->run_hooks("modcp_do_banuser_start");

// Still no errors? Ban the user

Zeile 2992Zeile 3146
		else
{
$lifted = ban_date2timestamp($mybb->input['liftafter'], $user['dateline']);

		else
{
$lifted = ban_date2timestamp($mybb->input['liftafter'], $user['dateline']);

		}

		}


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


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

 
			$username_select = $db->simple_select('users', 'username', "uid='" . (int)$mybb->input['uid'] . "'");
$user['username'] = $db->fetch_field($username_select, 'username');

			$update_array = array(

			$update_array = array(

				'gid' => intval($mybb->input['usergroup']),
'admin' => intval($mybb->user['uid']),
'dateline' => TIME_NOW,
'bantime' => $db->escape_string($mybb->input['liftafter']),
'lifted' => $db->escape_string($lifted),
'reason' => $db->escape_string($mybb->input['banreason'])
);

				'gid' => intval($mybb->input['usergroup']),
'admin' => intval($mybb->user['uid']),
'dateline' => TIME_NOW,
'bantime' => $db->escape_string($mybb->input['liftafter']),
'lifted' => $db->escape_string($lifted),
'reason' => $db->escape_string($mybb->input['banreason'])
);


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


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

		}
else
{

		}
else
{

			$insert_array = array(
'uid' => $user['uid'],
'gid' => intval($mybb->input['usergroup']),

			$insert_array = array(
'uid' => $user['uid'],
'gid' => intval($mybb->input['usergroup']),

Zeile 3023Zeile 3179
			);

$db->insert_query('banned', $insert_array);

			);

$db->insert_query('banned', $insert_array);

		}

		}


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


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

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

$cache->update_banned();

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

$cache->update_banned();

		












// Log edit or add ban
if($mybb->input['uid'])
{
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);
}


		$plugins->run_hooks("modcp_do_banuser_end");

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

		$plugins->run_hooks("modcp_do_banuser_end");

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

Zeile 3065Zeile 3231
	{
add_breadcrumb($lang->mcp_nav_editing_ban);
}

	{
add_breadcrumb($lang->mcp_nav_editing_ban);
}

	



	$plugins->run_hooks("modcp_banuser_start");

// If incoming user ID, we are editing a ban

	$plugins->run_hooks("modcp_banuser_start");

// If incoming user ID, we are editing a ban

Zeile 3088Zeile 3254
			eval("\$banuser_username = \"".$templates->get("modcp_banuser_editusername")."\";");
}
}

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

	



	// New ban!
if(!$banuser_username)
{

	// New ban!
if(!$banuser_username)
{

Zeile 3134Zeile 3300
			$liftlist .= ">{$title} ({$thatime})</option>\n";
}
}

			$liftlist .= ">{$title} ({$thatime})</option>\n";
}
}

	



	$bangroups = '';
$query = $db->simple_select("usergroups", "gid, title", "isbannedgroup=1");
while($item = $db->fetch_array($query))

	$bangroups = '';
$query = $db->simple_select("usergroups", "gid, title", "isbannedgroup=1");
while($item = $db->fetch_array($query))

Zeile 3145Zeile 3311
			$selected = " selected=\"selected\"";
}
$bangroups .= "<option value=\"{$item['gid']}\"{$selected}>".htmlspecialchars_uni($item['title'])."</option>\n";

			$selected = " selected=\"selected\"";
}
$bangroups .= "<option value=\"{$item['gid']}\"{$selected}>".htmlspecialchars_uni($item['title'])."</option>\n";

	}


	}


	$lift_link = "<div class=\"float_right\"><a href=\"modcp.php?action=liftban&amp;uid={$user['uid']}&amp;my_post_key={$mybb->post_code}\">{$lang->lift_ban}</a></div>";

	$lift_link = "<div class=\"float_right\"><a href=\"modcp.php?action=liftban&amp;uid={$user['uid']}&amp;my_post_key={$mybb->post_code}\">{$lang->lift_ban}</a></div>";

	



	$plugins->run_hooks("modcp_banuser_end");

	$plugins->run_hooks("modcp_banuser_end");

	



	eval("\$banuser = \"".$templates->get("modcp_banuser")."\";");
output_page($banuser);
}

	eval("\$banuser = \"".$templates->get("modcp_banuser")."\";");
output_page($banuser);
}

Zeile 3159Zeile 3325
{
// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);

{
// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);

	



	$plugins->run_hooks("modcp_do_modnotes_start");

	$plugins->run_hooks("modcp_do_modnotes_start");

	



	// Update Moderator Notes cache
$update_cache = array(
"modmessage" => $mybb->input['modnotes']
);
$cache->update("modnotes", $update_cache);

	// Update Moderator Notes cache
$update_cache = array(
"modmessage" => $mybb->input['modnotes']
);
$cache->update("modnotes", $update_cache);

	



	$plugins->run_hooks("modcp_do_modnotes_end");

	$plugins->run_hooks("modcp_do_modnotes_end");

	



	redirect("modcp.php", $lang->redirect_modnotes);
}


	redirect("modcp.php", $lang->redirect_modnotes);
}


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





		eval("\$latest_attachment = \"".$templates->get("modcp_lastattachment")."\";");

		eval("\$latest_attachment = \"".$templates->get("modcp_lastattachment")."\";");

	}

	}

	else
{
$latest_attachment = "<span style=\"text-align: center;\">{$lang->lastpost_never}</span>";

	else
{
$latest_attachment = "<span style=\"text-align: center;\">{$lang->lastpost_never}</span>";

	}


	}


	$query = $db->query("
SELECT COUNT(pid) AS unapprovedposts
FROM ".TABLE_PREFIX."posts p

	$query = $db->query("
SELECT COUNT(pid) AS unapprovedposts
FROM ".TABLE_PREFIX."posts p

Zeile 3239Zeile 3405
		}
$post['subject'] = htmlspecialchars_uni($post['subject']);
$post['fullsubject'] = htmlspecialchars_uni($post['fullsubject']);

		}
$post['subject'] = htmlspecialchars_uni($post['subject']);
$post['fullsubject'] = htmlspecialchars_uni($post['fullsubject']);





		eval("\$latest_post = \"".$templates->get("modcp_lastpost")."\";");
}
else

		eval("\$latest_post = \"".$templates->get("modcp_lastpost")."\";");
}
else

Zeile 3251Zeile 3417
	$unapproved_threads = $db->fetch_field($query, "unapprovedthreads");

if($unapproved_threads > 0)

	$unapproved_threads = $db->fetch_field($query, "unapprovedthreads");

if($unapproved_threads > 0)

	{

	{

		$query = $db->simple_select("threads", "tid, subject, uid, username, dateline", "visible=0 {$flist}", array('order_by' =>  'dateline', 'order_dir' => 'DESC', 'limit' => 1));
$thread = $db->fetch_array($query);
$thread['date'] = my_date($mybb->settings['dateformat'], $thread['dateline']);

		$query = $db->simple_select("threads", "tid, subject, uid, username, dateline", "visible=0 {$flist}", array('order_by' =>  'dateline', 'order_dir' => 'DESC', 'limit' => 1));
$thread = $db->fetch_array($query);
$thread['date'] = my_date($mybb->settings['dateformat'], $thread['dateline']);

Zeile 3269Zeile 3435
		eval("\$latest_thread = \"".$templates->get("modcp_lastthread")."\";");
}
else

		eval("\$latest_thread = \"".$templates->get("modcp_lastthread")."\";");
}
else

	{

	{

		$latest_thread = "<span style=\"text-align: center;\">{$lang->lastpost_never}</span>";

		$latest_thread = "<span style=\"text-align: center;\">{$lang->lastpost_never}</span>";

 
	}

$where = '';
if($tflist)
{
$where = "WHERE (t.fid <> 0 {$tflist}) OR (!l.fid)";

	}

$query = $db->query("

	}

$query = $db->query("

		SELECT l.*, u.username, u.usergroup, u.displaygroup, t.subject AS tsubject, f.name AS fname, p.subject AS psubject

		SELECT l.*, u.username, u.usergroup, u.displaygroup, t.subject AS tsubject, f.name AS fname

		FROM ".TABLE_PREFIX."moderatorlog l
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=l.uid)
LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=l.tid)
LEFT JOIN ".TABLE_PREFIX."forums f ON (f.fid=l.fid)

		FROM ".TABLE_PREFIX."moderatorlog l
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=l.uid)
LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=l.tid)
LEFT JOIN ".TABLE_PREFIX."forums f ON (f.fid=l.fid)

		LEFT JOIN ".TABLE_PREFIX."posts p ON (p.pid=l.pid)

		{$where}

		ORDER BY l.dateline DESC
LIMIT 5
");

		ORDER BY l.dateline DESC
LIMIT 5
");

 


	while($logitem = $db->fetch_array($query))
{
$information = '';

	while($logitem = $db->fetch_array($query))
{
$information = '';

Zeile 3294Zeile 3467
		$logitem['profilelink'] = build_profile_link($username, $logitem['uid']);
if($logitem['tsubject'])
{

		$logitem['profilelink'] = build_profile_link($username, $logitem['uid']);
if($logitem['tsubject'])
{

			$information = "<strong>{$lang->thread}</strong> <a href=\"".get_thread_link($logitem['tid'])."\" target=\"_blank\">".htmlspecialchars_uni($logitem['tsubject'])."</a><br />";

			$information = "<strong>{$lang->thread}:</strong> <a href=\"".get_thread_link($logitem['tid'])."\" target=\"_blank\">".htmlspecialchars_uni($logitem['tsubject'])."</a><br />";

		}
if($logitem['fname'])
{
$information .= "<strong>{$lang->forum}</strong> <a href=\"".get_forum_link($logitem['fid'])."\" target=\"_blank\">".htmlspecialchars_uni($logitem['fname'])."</a><br />";
}

		}
if($logitem['fname'])
{
$information .= "<strong>{$lang->forum}</strong> <a href=\"".get_forum_link($logitem['fid'])."\" target=\"_blank\">".htmlspecialchars_uni($logitem['fname'])."</a><br />";
}

		if($logitem['psubject'])
{
$information .= "<strong>{$lang->post}</strong> <a href=\"".get_post_link($logitem['pid'])."#pid{$logitem['pid']}\">".htmlspecialchars_uni($logitem['psubject'])."</a>";
}

// Edited a user?
if(!$logitem['tsubject'] || !$logitem['fname'] || !$logitem['psubject'])


// Edited a user or managed announcement?
if(!$logitem['tsubject'] || !$logitem['fname'])





		{
$data = unserialize($logitem['data']);
if($data['uid'])
{
$information = $lang->sprintf($lang->edited_user_info, htmlspecialchars_uni($data['username']), get_profile_link($data['uid']));

		{
$data = unserialize($logitem['data']);
if($data['uid'])
{
$information = $lang->sprintf($lang->edited_user_info, htmlspecialchars_uni($data['username']), get_profile_link($data['uid']));

 
			}
if($data['aid'])
{
$information = "<strong>{$lang->announcement}:</strong> <a href=\"".get_announcement_link($data['aid'])."\" target=\"_blank\">".htmlspecialchars_uni($data['subject'])."</a>";

			}
}


			}
}


Zeile 3397Zeile 3570

if(!$bannedusers)
{


if(!$bannedusers)
{

		eval("\$bannedusers = \"".$templates->get("modcp_banning_nobanned")."\";");

		eval("\$bannedusers = \"".$templates->get("modcp_nobanned")."\";");

	}

	}





	$modnotes = $cache->read("modnotes");
$modnotes = htmlspecialchars_uni($modnotes['modmessage']);

	$modnotes = $cache->read("modnotes");
$modnotes = htmlspecialchars_uni($modnotes['modmessage']);

	



	$plugins->run_hooks("modcp_end");

	$plugins->run_hooks("modcp_end");





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

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



 
?>

?>