Vergleich admin/modules/forum/management.php - 1.8.5 - 1.8.26

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

if(!$errors)
{


if(!$errors)
{

 
				if($mybb->input['pid'] < 0)
{
$mybb->input['pid'] = 0;
}

				$new_forum = $from_forum;
unset($new_forum['fid'], $new_forum['threads'], $new_forum['posts'], $new_forum['lastpost'], $new_forum['lastposter'], $new_forum['lastposteruid'], $new_forum['lastposttid'], $new_forum['lastpostsubject'], $new_forum['unapprovedthreads'], $new_forum['unapprovedposts']);

				$new_forum = $from_forum;
unset($new_forum['fid'], $new_forum['threads'], $new_forum['posts'], $new_forum['lastpost'], $new_forum['lastposter'], $new_forum['lastposteruid'], $new_forum['lastposttid'], $new_forum['lastpostsubject'], $new_forum['unapprovedthreads'], $new_forum['unapprovedposts']);

				$new_forum['name'] = $db->escape_string($mybb->input['title']);
$new_forum['description'] = $db->escape_string($mybb->input['description']);
$new_forum['type'] = $db->escape_string($mybb->input['type']);

				$new_forum['name'] = $mybb->input['title'];
$new_forum['description'] = $mybb->input['description'];
$new_forum['type'] = $mybb->input['type'];

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

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

				$new_forum['rulestitle'] = $db->escape_string($new_forum['rulestitle']);
$new_forum['rules'] = $db->escape_string($new_forum['rules']);

 
				$new_forum['parentlist'] = '';

				$new_forum['parentlist'] = '';

 

foreach($new_forum as $key => $value)
{
$new_forum[$key] = $db->escape_string($value);
}


$to = $db->insert_query("forums", $new_forum);



$to = $db->insert_query("forums", $new_forum);


Zeile 122Zeile 129
			if(!$db->num_rows($query))
{
$errors[] = $lang->error_invalid_destination_forum;

			if(!$db->num_rows($query))
{
$errors[] = $lang->error_invalid_destination_forum;

			}

			}


if(!$errors)
{
$new_forum = $from_forum;
unset($new_forum['fid'], $new_forum['threads'], $new_forum['posts'], $new_forum['lastpost'], $new_forum['lastposter'], $new_forum['lastposteruid'], $new_forum['lastposttid'], $new_forum['lastpostsubject'], $new_forum['unapprovedthreads'], $new_forum['unapprovedposts']);


if(!$errors)
{
$new_forum = $from_forum;
unset($new_forum['fid'], $new_forum['threads'], $new_forum['posts'], $new_forum['lastpost'], $new_forum['lastposter'], $new_forum['lastposteruid'], $new_forum['lastposttid'], $new_forum['lastpostsubject'], $new_forum['unapprovedthreads'], $new_forum['unapprovedposts']);

				$new_forum['name'] = $db->escape_string($to_forum['name']);
$new_forum['description'] = $db->escape_string($to_forum['description']);
$new_forum['pid'] = $db->escape_string($to_forum['pid']);
$new_forum['parentlist'] = $db->escape_string($to_forum['parentlist']);
$new_forum['rulestitle'] = $db->escape_string($new_forum['rulestitle']);
$new_forum['rules'] = $db->escape_string($new_forum['rules']);




				$new_forum['name'] = $to_forum['name'];
$new_forum['description'] = $to_forum['description'];
$new_forum['pid'] = $to_forum['pid'];
$new_forum['parentlist'] = $to_forum['parentlist'];

foreach($new_forum as $key => $value)
{
$new_forum[$key] = $db->escape_string($value);
}


$db->update_query("forums", $new_forum, "fid='{$to}'");


$db->update_query("forums", $new_forum, "fid='{$to}'");

			}
}

			}
}


if(!$errors)
{
// Copy permissions


if(!$errors)
{
// Copy permissions

			if(is_array($mybb->input['copygroups']) && count($mybb->input['copygroups'] > 0))

			if(is_array($mybb->input['copygroups']) && count($mybb->input['copygroups']) > 0)

			{
foreach($mybb->input['copygroups'] as $gid)
{

			{
foreach($mybb->input['copygroups'] as $gid)
{

Zeile 220Zeile 230

$create_a_options_c = array(
'id' => 'category'


$create_a_options_c = array(
'id' => 'category'

	);

	);


if($copy_data['type'] == "f")
{


if($copy_data['type'] == "f")
{

Zeile 244Zeile 254
	$form_container->output_row($lang->destination_forum." <em>*</em>", $lang->destination_forum_desc, $form->generate_forum_select('to', $copy_data['to'], array('id' => 'to', 'main_option' => $lang->copy_to_new_forum)), 'to');
$form_container->output_row($lang->copy_settings_and_properties, $lang->copy_settings_and_properties_desc, $form->generate_yes_no_radio('copyforumsettings', $copy_data['copyforumsettings']));
$form_container->output_row($lang->copy_user_group_permissions, $lang->copy_user_group_permissions_desc, $form->generate_select_box('copygroups[]', $usergroups, $mybb->input['copygroups'], array('id' => 'copygroups', 'multiple' => true, 'size' => 5)), 'copygroups');

	$form_container->output_row($lang->destination_forum." <em>*</em>", $lang->destination_forum_desc, $form->generate_forum_select('to', $copy_data['to'], array('id' => 'to', 'main_option' => $lang->copy_to_new_forum)), 'to');
$form_container->output_row($lang->copy_settings_and_properties, $lang->copy_settings_and_properties_desc, $form->generate_yes_no_radio('copyforumsettings', $copy_data['copyforumsettings']));
$form_container->output_row($lang->copy_user_group_permissions, $lang->copy_user_group_permissions_desc, $form->generate_select_box('copygroups[]', $usergroups, $mybb->input['copygroups'], array('id' => 'copygroups', 'multiple' => true, 'size' => 5)), 'copygroups');


$form_container->end();



$form_container->end();


	$form_container = new FormContainer($lang->new_forum_settings);
$form_container->output_row($lang->forum_type, $lang->forum_type_desc, $form->generate_radio_button('type', 'f', $lang->forum, $create_a_options_f)."<br />\n".$form->generate_radio_button('type', 'c', $lang->category, $create_a_options_c));
$form_container->output_row($lang->title." <em>*</em>", "", $form->generate_text_box('title', $copy_data['title'], array('id' => 'title')), 'title');

	$form_container = new FormContainer($lang->new_forum_settings);
$form_container->output_row($lang->forum_type, $lang->forum_type_desc, $form->generate_radio_button('type', 'f', $lang->forum, $create_a_options_f)."<br />\n".$form->generate_radio_button('type', 'c', $lang->category, $create_a_options_c));
$form_container->output_row($lang->title." <em>*</em>", "", $form->generate_text_box('title', $copy_data['title'], array('id' => 'title')), 'title');

Zeile 256Zeile 266
	$form_container->end();

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

	$form_container->end();

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

	$form->output_submit_wrapper($buttons);
$form->end();

$page->output_footer();
}


	$form->output_submit_wrapper($buttons);
$form->end();

$page->output_footer();
}


if($mybb->input['action'] == "editmod")
{
$query = $db->simple_select("moderators", "*", "mid='".$mybb->get_input('mid', MyBB::INPUT_INT)."'");

if($mybb->input['action'] == "editmod")
{
$query = $db->simple_select("moderators", "*", "mid='".$mybb->get_input('mid', MyBB::INPUT_INT)."'");

Zeile 425Zeile 435
if($mybb->input['action'] == "clear_permission")
{
$pid = $mybb->get_input('pid', MyBB::INPUT_INT);

if($mybb->input['action'] == "clear_permission")
{
$pid = $mybb->get_input('pid', MyBB::INPUT_INT);

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

// User clicked no
if($mybb->input['no'])
{
admin_redirect("index.php?module=forum-management&fid={$fid}");
}

$plugins->run_hooks("admin_forum_management_clear_permission");


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

// User clicked no
if($mybb->input['no'])
{
admin_redirect("index.php?module=forum-management&fid={$fid}");
}

$plugins->run_hooks("admin_forum_management_clear_permission");


	if($mybb->request_method == "post")
{
if((!$fid || !$gid) && $pid)

	if($mybb->request_method == "post")
{
if((!$fid || !$gid) && $pid)

Zeile 590Zeile 600
		<script src=\"jscripts/tabs.js\" type=\"text/javascript\"></script>\n
<script type=\"text/javascript\">
<!--

		<script src=\"jscripts/tabs.js\" type=\"text/javascript\"></script>\n
<script type=\"text/javascript\">
<!--

$(document).ready(function() {

$(function() {

	$(\"#modal_form\").on(\"click\", \"#savePermissions\", function(e) {
e.preventDefault();


	$(\"#modal_form\").on(\"click\", \"#savePermissions\", function(e) {
e.preventDefault();


Zeile 719Zeile 729
			'candeleteposts' => 'editing',
'candeletethreads' => 'editing',
'caneditattachments' => 'editing',

			'candeleteposts' => 'editing',
'candeletethreads' => 'editing',
'caneditattachments' => 'editing',

 
			'canviewdeletionnotice' => 'editing',


'modposts' => 'moderate',
'modthreads' => 'moderate',


'modposts' => 'moderate',
'modthreads' => 'moderate',

Zeile 861Zeile 872
				"defaultsortby" => $db->escape_string($mybb->input['defaultsortby']),
"defaultsortorder" => $db->escape_string($mybb->input['defaultsortorder']),
);

				"defaultsortby" => $db->escape_string($mybb->input['defaultsortby']),
"defaultsortorder" => $db->escape_string($mybb->input['defaultsortorder']),
);

 

$plugins->run_hooks("admin_forum_management_add_start");


			$fid = $db->insert_query("forums", $insert_array);

$parentlist = make_parent_list($fid);
$db->update_query("forums", array("parentlist" => $parentlist), "fid='$fid'");


			$fid = $db->insert_query("forums", $insert_array);

$parentlist = make_parent_list($fid);
$db->update_query("forums", array("parentlist" => $parentlist), "fid='$fid'");


			$inherit = $mybb->input['default_permissions'];


			$inherit = $mybb->input['default_permissions'];


			foreach($mybb->input as $id => $permission)
{
if(strpos($id, 'fields_') === false)
{
continue;
}

			foreach($mybb->input as $id => $permission)
{
if(strpos($id, 'fields_') === false)
{
continue;
}





				list(, $gid) = explode('fields_', $id);

// If it isn't an array then it came from the javascript form
if(!is_array($permission))

				list(, $gid) = explode('fields_', $id);

// If it isn't an array then it came from the javascript form
if(!is_array($permission))

				{

				{

					$permission = explode(',', $permission);
$permission = array_flip($permission);
foreach($permission as $name => $value)
{
$permission[$name] = 1;

					$permission = explode(',', $permission);
$permission = array_flip($permission);
foreach($permission as $name => $value)
{
$permission[$name] = 1;

					}
}

					}
}


foreach(array('canview','canpostthreads','canpostreplys','canpostpolls') as $name)
{


foreach(array('canview','canpostthreads','canpostreplys','canpostpolls') as $name)
{

Zeile 900Zeile 914
					}
}
}

					}
}
}





			$canview = $permissions['canview'];
$canpostthreads = $permissions['canpostthreads'];
$canpostpolls = $permissions['canpostpolls'];

			$canview = $permissions['canview'];
$canpostthreads = $permissions['canpostthreads'];
$canpostpolls = $permissions['canpostpolls'];

Zeile 914Zeile 928

// Log admin action
log_admin_action($fid, $insert_array['name']);


// Log admin action
log_admin_action($fid, $insert_array['name']);





			flash_message($lang->success_forum_added, 'success');
admin_redirect("index.php?module=forum-management");

			flash_message($lang->success_forum_added, 'success');
admin_redirect("index.php?module=forum-management");

		}
}

$page->extra_header .= "<script src=\"jscripts/quick_perm_editor.js\" type=\"text/javascript\"></script>\n";

		}
}

$page->extra_header .= "<script src=\"jscripts/quick_perm_editor.js\" type=\"text/javascript\"></script>\n";


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


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

Zeile 1024Zeile 1038
	while($style = $db->fetch_array($query))
{
$styles[$style['tid']] = htmlspecialchars_uni($style['name']);

	while($style = $db->fetch_array($query))
{
$styles[$style['tid']] = htmlspecialchars_uni($style['name']);

	}

$style_options = array(
$form->generate_check_box('overridestyle', 1, $lang->override_user_style, array('checked' => $forum_data['overridestyle'], 'id' => 'overridestyle')),
$lang->forum_specific_style."<br />\n".$form->generate_select_box('style', $styles, $forum_data['style'], array('id' => 'style'))
);

$form_container->output_row($lang->style_options, "", "<div class=\"forum_settings_bit\">".implode("</div><div class=\"forum_settings_bit\">", $style_options)."</div>");

$display_methods = array(
'0' => $lang->dont_display_rules,
'1' => $lang->display_rules_inline,
'3' => $lang->display_rules_inline_new,
'2' => $lang->display_rules_link
);

$forum_rules = array(
$lang->display_method."<br />\n".$form->generate_select_box('rulestype', $display_methods, $forum_data['rulestype'], array('checked' => $forum_data['rulestype'], 'id' => 'rulestype')),
$lang->title."<br />\n".$form->generate_text_box('rulestitle', $forum_data['rulestitle'], array('checked' => $forum_data['rulestitle'], 'id' => 'rulestitle')),
$lang->rules."<br />\n".$form->generate_text_area('rules', $forum_data['rules'], array('checked' => $forum_data['rules'], 'id' => 'rules'))
);

$form_container->output_row($lang->forum_rules, "", "<div class=\"forum_settings_bit\">".implode("</div><div class=\"forum_settings_bit\">", $forum_rules)."</div>");

$default_date_cut = array(
0 => $lang->board_default,
1 => $lang->datelimit_1day,
5 => $lang->datelimit_5days,
10 => $lang->datelimit_10days,
20 => $lang->datelimit_20days,
50 => $lang->datelimit_50days,
75 => $lang->datelimit_75days,
100 => $lang->datelimit_100days,
365 => $lang->datelimit_lastyear,
9999 => $lang->datelimit_beginning,
);

$default_sort_by = array(
"" => $lang->board_default,
"subject" => $lang->sort_by_subject,
"lastpost" => $lang->sort_by_lastpost,
"starter" => $lang->sort_by_starter,
"started" => $lang->sort_by_started,
"rating" => $lang->sort_by_rating,
"replies" => $lang->sort_by_replies,
"views" => $lang->sort_by_views,
);

$default_sort_order = array(
"" => $lang->board_default,
"asc" => $lang->sort_order_asc,
"desc" => $lang->sort_order_desc,
);

$view_options = array(
$lang->default_date_cut."<br />\n".$form->generate_select_box('defaultdatecut', $default_date_cut, $forum_data['defaultdatecut'], array('checked' => $forum_data['defaultdatecut'], 'id' => 'defaultdatecut')),
$lang->default_sort_by."<br />\n".$form->generate_select_box('defaultsortby', $default_sort_by, $forum_data['defaultsortby'], array('checked' => $forum_data['defaultsortby'], 'id' => 'defaultsortby')),
$lang->default_sort_order."<br />\n".$form->generate_select_box('defaultsortorder', $default_sort_order, $forum_data['defaultsortorder'], array('checked' => $forum_data['defaultsortorder'], 'id' => 'defaultsortorder')),
);

$form_container->output_row($lang->default_view_options, "", "<div class=\"forum_settings_bit\">".implode("</div><div class=\"forum_settings_bit\">", $view_options)."</div>");

$misc_options = array(
$form->generate_check_box('allowhtml', 1, $lang->allow_html, array('checked' => $forum_data['allowhtml'], 'id' => 'allowhtml')),
$form->generate_check_box('allowmycode', 1, $lang->allow_mycode, array('checked' => $forum_data['allowmycode'], 'id' => 'allowmycode')),
$form->generate_check_box('allowsmilies', 1, $lang->allow_smilies, array('checked' => $forum_data['allowsmilies'], 'id' => 'allowsmilies')),
$form->generate_check_box('allowimgcode', 1, $lang->allow_img_code, array('checked' => $forum_data['allowimgcode'], 'id' => 'allowimgcode')),
$form->generate_check_box('allowvideocode', 1, $lang->allow_video_code, array('checked' => $forum_data['allowvideocode'], 'id' => 'allowvideocode')),
$form->generate_check_box('allowpicons', 1, $lang->allow_post_icons, array('checked' => $forum_data['allowpicons'], 'id' => 'allowpicons')),
$form->generate_check_box('allowtratings', 1, $lang->allow_thread_ratings, array('checked' => $forum_data['allowtratings'], 'id' => 'allowtratings')),
$form->generate_check_box('showinjump', 1, $lang->show_forum_jump, array('checked' => $forum_data['showinjump'], 'id' => 'showinjump')),
$form->generate_check_box('usepostcounts', 1, $lang->use_postcounts, array('checked' => $forum_data['usepostcounts'], 'id' => 'usepostcounts')),

	}

$style_options = array(
$form->generate_check_box('overridestyle', 1, $lang->override_user_style, array('checked' => $forum_data['overridestyle'], 'id' => 'overridestyle')),
$lang->forum_specific_style."<br />\n".$form->generate_select_box('style', $styles, $forum_data['style'], array('id' => 'style'))
);

$form_container->output_row($lang->style_options, "", "<div class=\"forum_settings_bit\">".implode("</div><div class=\"forum_settings_bit\">", $style_options)."</div>");

$display_methods = array(
'0' => $lang->dont_display_rules,
'1' => $lang->display_rules_inline,
'3' => $lang->display_rules_inline_new,
'2' => $lang->display_rules_link
);

$forum_rules = array(
$lang->display_method."<br />\n".$form->generate_select_box('rulestype', $display_methods, $forum_data['rulestype'], array('checked' => $forum_data['rulestype'], 'id' => 'rulestype')),
$lang->title."<br />\n".$form->generate_text_box('rulestitle', $forum_data['rulestitle'], array('checked' => $forum_data['rulestitle'], 'id' => 'rulestitle')),
$lang->rules."<br />\n".$form->generate_text_area('rules', $forum_data['rules'], array('checked' => $forum_data['rules'], 'id' => 'rules'))
);

$form_container->output_row($lang->forum_rules, "", "<div class=\"forum_settings_bit\">".implode("</div><div class=\"forum_settings_bit\">", $forum_rules)."</div>");

$default_date_cut = array(
0 => $lang->board_default,
1 => $lang->datelimit_1day,
5 => $lang->datelimit_5days,
10 => $lang->datelimit_10days,
20 => $lang->datelimit_20days,
50 => $lang->datelimit_50days,
75 => $lang->datelimit_75days,
100 => $lang->datelimit_100days,
365 => $lang->datelimit_lastyear,
9999 => $lang->datelimit_beginning,
);

$default_sort_by = array(
"" => $lang->board_default,
"subject" => $lang->sort_by_subject,
"lastpost" => $lang->sort_by_lastpost,
"starter" => $lang->sort_by_starter,
"started" => $lang->sort_by_started,
"rating" => $lang->sort_by_rating,
"replies" => $lang->sort_by_replies,
"views" => $lang->sort_by_views,
);

$default_sort_order = array(
"" => $lang->board_default,
"asc" => $lang->sort_order_asc,
"desc" => $lang->sort_order_desc,
);

$view_options = array(
$lang->default_date_cut."<br />\n".$form->generate_select_box('defaultdatecut', $default_date_cut, $forum_data['defaultdatecut'], array('checked' => $forum_data['defaultdatecut'], 'id' => 'defaultdatecut')),
$lang->default_sort_by."<br />\n".$form->generate_select_box('defaultsortby', $default_sort_by, $forum_data['defaultsortby'], array('checked' => $forum_data['defaultsortby'], 'id' => 'defaultsortby')),
$lang->default_sort_order."<br />\n".$form->generate_select_box('defaultsortorder', $default_sort_order, $forum_data['defaultsortorder'], array('checked' => $forum_data['defaultsortorder'], 'id' => 'defaultsortorder')),
);

$form_container->output_row($lang->default_view_options, "", "<div class=\"forum_settings_bit\">".implode("</div><div class=\"forum_settings_bit\">", $view_options)."</div>");

$misc_options = array(
$form->generate_check_box('allowhtml', 1, $lang->allow_html, array('checked' => $forum_data['allowhtml'], 'id' => 'allowhtml')),
$form->generate_check_box('allowmycode', 1, $lang->allow_mycode, array('checked' => $forum_data['allowmycode'], 'id' => 'allowmycode')),
$form->generate_check_box('allowsmilies', 1, $lang->allow_smilies, array('checked' => $forum_data['allowsmilies'], 'id' => 'allowsmilies')),
$form->generate_check_box('allowimgcode', 1, $lang->allow_img_code, array('checked' => $forum_data['allowimgcode'], 'id' => 'allowimgcode')),
$form->generate_check_box('allowvideocode', 1, $lang->allow_video_code, array('checked' => $forum_data['allowvideocode'], 'id' => 'allowvideocode')),
$form->generate_check_box('allowpicons', 1, $lang->allow_post_icons, array('checked' => $forum_data['allowpicons'], 'id' => 'allowpicons')),
$form->generate_check_box('allowtratings', 1, $lang->allow_thread_ratings, array('checked' => $forum_data['allowtratings'], 'id' => 'allowtratings')),
$form->generate_check_box('showinjump', 1, $lang->show_forum_jump, array('checked' => $forum_data['showinjump'], 'id' => 'showinjump')),
$form->generate_check_box('usepostcounts', 1, $lang->use_postcounts, array('checked' => $forum_data['usepostcounts'], 'id' => 'usepostcounts')),

		$form->generate_check_box('usethreadcounts', 1, $lang->use_threadcounts, array('checked' => $forum_data['usethreadcounts'], 'id' => 'usethreadcounts')),
$form->generate_check_box('requireprefix', 1, $lang->require_thread_prefix, array('checked' => $forum_data['requireprefix'], 'id' => 'requireprefix'))
);

		$form->generate_check_box('usethreadcounts', 1, $lang->use_threadcounts, array('checked' => $forum_data['usethreadcounts'], 'id' => 'usethreadcounts')),
$form->generate_check_box('requireprefix', 1, $lang->require_thread_prefix, array('checked' => $forum_data['requireprefix'], 'id' => 'requireprefix'))
);

Zeile 1106Zeile 1120

$query = $db->simple_select("usergroups", "*", "", array("order" => "name"));
while($usergroup = $db->fetch_array($query))


$query = $db->simple_select("usergroups", "*", "", array("order" => "name"));
while($usergroup = $db->fetch_array($query))

	{

	{

		$usergroups[$usergroup['gid']] = $usergroup;
}


		$usergroups[$usergroup['gid']] = $usergroup;
}


Zeile 1116Zeile 1130
		'canpostthreads' => $lang->permissions_canpostthreads,
'canpostreplys' => $lang->permissions_canpostreplys,
'canpostpolls' => $lang->permissions_canpostpolls,

		'canpostthreads' => $lang->permissions_canpostthreads,
'canpostreplys' => $lang->permissions_canpostreplys,
'canpostpolls' => $lang->permissions_canpostpolls,

	);

	);


$field_list2 = array(
'canview' => $lang->perm_drag_canview,


$field_list2 = array(
'canview' => $lang->perm_drag_canview,

Zeile 1137Zeile 1151
		foreach($usergroups as $usergroup)
{
if(isset($mybb->input['fields_'.$usergroup['gid']]))

		foreach($usergroups as $usergroup)
{
if(isset($mybb->input['fields_'.$usergroup['gid']]))

			{

			{

				$input_permissions = $mybb->input['fields_'.$usergroup['gid']];
if(!is_array($input_permissions))
{
// Convering the comma separated list from Javascript form into a variable
$input_permissions = explode(',' , $input_permissions);

				$input_permissions = $mybb->input['fields_'.$usergroup['gid']];
if(!is_array($input_permissions))
{
// Convering the comma separated list from Javascript form into a variable
$input_permissions = explode(',' , $input_permissions);

				}

				}

				foreach($input_permissions as $input_permission)
{
$mybb->input['permissions'][$usergroup['gid']][$input_permission] = 1;
}

				foreach($input_permissions as $input_permission)
{
$mybb->input['permissions'][$usergroup['gid']][$input_permission] = 1;
}

			}

			}

		}
}


		}
}


Zeile 1158Zeile 1172
		if(isset($mybb->input['default_permissions']) && $mybb->input['default_permissions'][$usergroup['gid']])
{
if(is_array($existing_permissions) && $existing_permissions[$usergroup['gid']])

		if(isset($mybb->input['default_permissions']) && $mybb->input['default_permissions'][$usergroup['gid']])
{
if(is_array($existing_permissions) && $existing_permissions[$usergroup['gid']])

			{

			{

				$perms = $existing_permissions[$usergroup['gid']];
$default_checked = false;
}
elseif(is_array($cached_forum_perms) && $cached_forum_perms[$forum_data['fid']][$usergroup['gid']])

				$perms = $existing_permissions[$usergroup['gid']];
$default_checked = false;
}
elseif(is_array($cached_forum_perms) && $cached_forum_perms[$forum_data['fid']][$usergroup['gid']])

			{

			{

				$perms = $cached_forum_perms[$forum_data['fid']][$usergroup['gid']];
$default_checked = true;
}

				$perms = $cached_forum_perms[$forum_data['fid']][$usergroup['gid']];
$default_checked = true;
}

Zeile 1178Zeile 1192
		{
$perms = $usergroup;
$default_checked = true;

		{
$perms = $usergroup;
$default_checked = true;

		}

		}


foreach($field_list as $forum_permission => $forum_perm_title)
{


foreach($field_list as $forum_permission => $forum_perm_title)
{

Zeile 1187Zeile 1201
				if($mybb->input['default_permissions'][$usergroup['gid']])
{
$default_checked = true;

				if($mybb->input['default_permissions'][$usergroup['gid']])
{
$default_checked = true;

				}
else
{

				}
else
{

					$default_checked = false;
}

if($mybb->input['permissions'][$usergroup['gid']][$forum_permission])

					$default_checked = false;
}

if($mybb->input['permissions'][$usergroup['gid']][$forum_permission])

				{
$perms_checked[$forum_permission] = 1;
}
else
{
$perms_checked[$forum_permission] = 0;

				{
$perms_checked[$forum_permission] = 1;
}
else
{
$perms_checked[$forum_permission] = 0;

				}
}
else

				}
}
else

Zeile 1219Zeile 1233
		if($default_checked)
{
$inherited_text = $lang->inherited_permission;

		if($default_checked)
{
$inherited_text = $lang->inherited_permission;

		}

		}

		else
{
$inherited_text = $lang->custom_permission;

		else
{
$inherited_text = $lang->custom_permission;

Zeile 1301Zeile 1315
	$query = $db->simple_select("forums", "*", "fid='{$mybb->input['fid']}'");
$forum_data = $db->fetch_array($query);
if(!$forum_data)

	$query = $db->simple_select("forums", "*", "fid='{$mybb->input['fid']}'");
$forum_data = $db->fetch_array($query);
if(!$forum_data)

	{

	{

		flash_message($lang->error_invalid_fid, 'error');
admin_redirect("index.php?module=forum-management");
}

		flash_message($lang->error_invalid_fid, 'error');
admin_redirect("index.php?module=forum-management");
}

Zeile 1411Zeile 1425
						$query = $db->simple_select("forums", "fid", "CONCAT(',',parentlist,',') LIKE '%,$fid,%'");
}


						$query = $db->simple_select("forums", "fid", "CONCAT(',',parentlist,',') LIKE '%,$fid,%'");
}


				while($child = $db->fetch_array($query))
{
$db->update_query("forums", array("parentlist" => make_parent_list($child['fid'])), "fid='{$child['fid']}'");
}
}

$inherit = $mybb->input['default_permissions'];

foreach($mybb->input as $id => $permission)
{
// Make sure we're only skipping inputs that don't start with "fields_" and aren't fields_default_ or fields_inherit_
if(strpos($id, 'fields_') === false || (strpos($id, 'fields_default_') !== false || strpos($id, 'fields_inherit_') !== false))
{
continue;
}


				while($child = $db->fetch_array($query))
{
$db->update_query("forums", array("parentlist" => make_parent_list($child['fid'])), "fid='{$child['fid']}'");
}
}

$inherit = $mybb->input['default_permissions'];

foreach($mybb->input as $id => $permission)
{
// Make sure we're only skipping inputs that don't start with "fields_" and aren't fields_default_ or fields_inherit_
if(strpos($id, 'fields_') === false || (strpos($id, 'fields_default_') !== false || strpos($id, 'fields_inherit_') !== false))
{
continue;
}


				list(, $gid) = explode('fields_', $id);

if($mybb->input['fields_default_'.$gid] == $permission && $mybb->input['fields_inherit_'.$gid] == 1)

				list(, $gid) = explode('fields_', $id);

if($mybb->input['fields_default_'.$gid] == $permission && $mybb->input['fields_inherit_'.$gid] == 1)

Zeile 1442Zeile 1456
					$permission = explode(',', $permission);
$permission = array_flip($permission);
foreach($permission as $name => $value)

					$permission = explode(',', $permission);
$permission = array_flip($permission);
foreach($permission as $name => $value)

					{

					{

						$permission[$name] = 1;
}
}

						$permission[$name] = 1;
}
}

Zeile 1452Zeile 1466
					if(in_array($name, $permission) || $permission[$name])
{
$permissions[$name][$gid] = 1;

					if(in_array($name, $permission) || $permission[$name])
{
$permissions[$name][$gid] = 1;

					}

					}

					else
{
$permissions[$name][$gid] = 0;

					else
{
$permissions[$name][$gid] = 0;

Zeile 1467Zeile 1481
			$canpostpolls = $permissions['canpostpolls'];
$canpostattachments = $permissions['canpostattachments'];
$canpostreplies = $permissions['canpostreplys'];

			$canpostpolls = $permissions['canpostpolls'];
$canpostattachments = $permissions['canpostattachments'];
$canpostreplies = $permissions['canpostreplys'];





			save_quick_perms($fid);

$plugins->run_hooks("admin_forum_management_edit_commit");

			save_quick_perms($fid);

$plugins->run_hooks("admin_forum_management_edit_commit");

Zeile 1478Zeile 1492
			flash_message($lang->success_forum_updated, 'success');
admin_redirect("index.php?module=forum-management&fid={$fid}");
}

			flash_message($lang->success_forum_updated, 'success');
admin_redirect("index.php?module=forum-management&fid={$fid}");
}

	}

	}


$page->extra_header .= "<script src=\"jscripts/quick_perm_editor.js\" type=\"text/javascript\"></script>\n";



$page->extra_header .= "<script src=\"jscripts/quick_perm_editor.js\" type=\"text/javascript\"></script>\n";


Zeile 1498Zeile 1512
	else
{
$forum_data['title'] = $forum_data['name'];

	else
{
$forum_data['title'] = $forum_data['name'];

	}

	}


$query = $db->simple_select("usergroups", "*", "", array("order_dir" => "name"));
while($usergroup = $db->fetch_array($query))


$query = $db->simple_select("usergroups", "*", "", array("order_dir" => "name"));
while($usergroup = $db->fetch_array($query))

Zeile 1508Zeile 1522

$query = $db->simple_select("forumpermissions", "*", "fid='{$fid}'");
while($existing = $db->fetch_array($query))


$query = $db->simple_select("forumpermissions", "*", "fid='{$fid}'");
while($existing = $db->fetch_array($query))

	{

	{

		$existing_permissions[$existing['gid']] = $existing;
}


		$existing_permissions[$existing['gid']] = $existing;
}


Zeile 1519Zeile 1533

$create_a_options_f = array(
'id' => 'forum'


$create_a_options_f = array(
'id' => 'forum'

	);

	);


$create_a_options_c = array(
'id' => 'category'
);


$create_a_options_c = array(
'id' => 'category'
);





	if($forum_data['type'] == "f")
{
$create_a_options_f['checked'] = true;

	if($forum_data['type'] == "f")
{
$create_a_options_f['checked'] = true;

Zeile 1549Zeile 1563
	$access_options = array(
$form->generate_check_box('active', 1, $lang->forum_is_active."<br />\n<small>{$lang->forum_is_active_desc}</small>", array('checked' => $forum_data['active'], 'id' => 'active')),
$form->generate_check_box('open', 1, $lang->forum_is_open."<br />\n<small>{$lang->forum_is_open_desc}</small>", array('checked' => $forum_data['open'], 'id' => 'open'))

	$access_options = array(
$form->generate_check_box('active', 1, $lang->forum_is_active."<br />\n<small>{$lang->forum_is_active_desc}</small>", array('checked' => $forum_data['active'], 'id' => 'active')),
$form->generate_check_box('open', 1, $lang->forum_is_open."<br />\n<small>{$lang->forum_is_open_desc}</small>", array('checked' => $forum_data['open'], 'id' => 'open'))

	);

	);


$form_container->output_row($lang->access_options, "", "<div class=\"forum_settings_bit\">".implode("</div><div class=\"forum_settings_bit\">", $access_options)."</div>");



$form_container->output_row($lang->access_options, "", "<div class=\"forum_settings_bit\">".implode("</div><div class=\"forum_settings_bit\">", $access_options)."</div>");


Zeile 1754Zeile 1768
			else
{
if($perms[$forum_permission] == 1)

			else
{
if($perms[$forum_permission] == 1)

				{

				{

					$perms_checked[$forum_permission] = 1;
}
else

					$perms_checked[$forum_permission] = 1;
}
else

Zeile 1918Zeile 1932

flash_message($lang->success_moderator_deleted, 'success');
admin_redirect("index.php?module=forum-management&fid={$fid}#tab_moderators");


flash_message($lang->success_moderator_deleted, 'success');
admin_redirect("index.php?module=forum-management&fid={$fid}#tab_moderators");

	}
else

	}
else

	{
$page->output_confirm_action("index.php?module=forum-management&amp;action=deletemod&amp;fid={$mod['fid']}&amp;uid={$mod['uid']}", $lang->confirm_moderator_deletion);

	{
$page->output_confirm_action("index.php?module=forum-management&amp;action=deletemod&amp;fid={$mod['fid']}&amp;uid={$mod['uid']}", $lang->confirm_moderator_deletion);

	}

	}

}

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

}

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

Zeile 1934Zeile 1948
	if(!$forum['fid'])
{
flash_message($lang->error_invalid_forum, 'error');

	if(!$forum['fid'])
{
flash_message($lang->error_invalid_forum, 'error');

		admin_redirect("index.php?module=forum-management");
}


		admin_redirect("index.php?module=forum-management");
}


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

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

Zeile 1950Zeile 1964
		$fid = $mybb->get_input('fid', MyBB::INPUT_INT);
$forum_info = get_forum($fid);


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


		$query = $db->simple_select("forums", "posts,unapprovedposts,threads,unapprovedthreads", "fid='{$fid}'");
$stats = $db->fetch_array($query);

// Delete the forum
$db->delete_query("forums", "fid='$fid'");


		$delquery = "";






		switch($db->type)
{
case "pgsql":
case "sqlite":
$query = $db->simple_select("forums", "*", "','|| parentlist|| ',' LIKE '%,$fid,%'");

		switch($db->type)
{
case "pgsql":
case "sqlite":
$query = $db->simple_select("forums", "*", "','|| parentlist|| ',' LIKE '%,$fid,%'");

				break;
default:

				break;
default:

				$query = $db->simple_select("forums", "*", "CONCAT(',', parentlist, ',') LIKE '%,$fid,%'");
}
while($forum = $db->fetch_array($query))
{
$fids[$forum['fid']] = $fid;
$delquery .= " OR fid='{$forum['fid']}'";

				$query = $db->simple_select("forums", "*", "CONCAT(',', parentlist, ',') LIKE '%,$fid,%'");
}
while($forum = $db->fetch_array($query))
{
$fids[$forum['fid']] = $fid;
$delquery .= " OR fid='{$forum['fid']}'";

 
		}

require_once MYBB_ROOT.'inc/class_moderation.php';
$moderation = new Moderation();

// Start pagination. Limit results to 50
$query = $db->simple_select("threads", "tid", "fid='{$fid}' {$delquery}", array("limit" => 50));

while($tid = $db->fetch_field($query, 'tid'))
{
$moderation->delete_thread($tid);
}

// Check whether all threads have been deleted
$query = $db->simple_select("threads", "tid", "fid='{$fid}' {$delquery}");

if($db->num_rows($query) > 0)
{
$page->output_header();

$form = new Form("index.php?module=forum-management", 'post');

echo $form->generate_hidden_field("fid", $fid);
echo $form->generate_hidden_field("action", "delete");
output_auto_redirect($form, $lang->confirm_proceed_deletion);

$form->end();

$page->output_footer();
exit;
}

// End pagination

// Delete the forum
$db->delete_query("forums", "fid='$fid'");





			$stats['posts'] += $forum['posts'];
$stats['unapprovedposts'] += $forum['unapprovedposts'];
$stats['threads'] += $forum['threads'];
$stats['unapprovedthreads'] += $forum['unapprovedthreads'];
}


		// Delete subforums






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

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

Zeile 1986Zeile 2026
				$db->delete_query("forums", "CONCAT(',',parentlist,',') LIKE '%,$fid,%'");
}


				$db->delete_query("forums", "CONCAT(',',parentlist,',') LIKE '%,$fid,%'");
}


		$db->delete_query("threads", "fid='{$fid}' {$delquery}");
$db->delete_query("posts", "fid='{$fid}' {$delquery}");
$db->delete_query("moderators", "fid='{$fid}' {$delquery}");
$db->delete_query("forumsubscriptions", "fid='{$fid}' {$delquery}");
$db->delete_query("forumpermissions", "fid='{$fid}' {$delquery}");

$update_stats = array(
'numthreads' => "-".$stats['threads'],
'numunapprovedthreads' => "-".$stats['unapprovedthreads'],
'numposts' => "-".$stats['posts'],
'numunapprovedposts' => "-".$stats['unapprovedposts']
);
update_stats($update_stats);

		$db->delete_query('moderators', "fid='{$fid}' {$delquery}");
$db->delete_query('forumsubscriptions', "fid='{$fid}' {$delquery}");
$db->delete_query('forumpermissions', "fid='{$fid}' {$delquery}");
$db->delete_query('announcements', "fid='{$fid}' {$delquery}");
$db->delete_query('forumsread', "fid='{$fid}' {$delquery}");










$plugins->run_hooks("admin_forum_management_delete_commit");

$cache->update_forums();
$cache->update_moderators();
$cache->update_forumpermissions();


$plugins->run_hooks("admin_forum_management_delete_commit");

$cache->update_forums();
$cache->update_moderators();
$cache->update_forumpermissions();

 
		$cache->update_forumsdisplay();


// Log admin action
log_admin_action($forum_info['fid'], $forum_info['name']);


// Log admin action
log_admin_action($forum_info['fid'], $forum_info['name']);

Zeile 2100Zeile 2133
		{
$forum = get_forum($fid);
if(!$forum)

		{
$forum = get_forum($fid);
if(!$forum)

			{

			{

				flash_message($lang->error_invalid_forum, 'error');
admin_redirect("index.php?module=forum-management&fid={$fid}#tab_moderators");
}

				flash_message($lang->error_invalid_forum, 'error');
admin_redirect("index.php?module=forum-management&fid={$fid}#tab_moderators");
}

Zeile 2182Zeile 2215
					$plugins->run_hooks("admin_forum_management_start_moderators_commit");

$cache->update_moderators();

					$plugins->run_hooks("admin_forum_management_start_moderators_commit");

$cache->update_moderators();





					// Log admin action
log_admin_action('addmod', $mid, $newmod['name'], $fid, $forum['name']);


					// Log admin action
log_admin_action('addmod', $mid, $newmod['name'], $fid, $forum['name']);


Zeile 2199Zeile 2232
			{
flash_message($lang->error_moderator_not_found, 'error');
admin_redirect("index.php?module=forum-management&fid={$fid}#tab_moderators");

			{
flash_message($lang->error_moderator_not_found, 'error');
admin_redirect("index.php?module=forum-management&fid={$fid}#tab_moderators");

			}
}

			}
}

		else
{
if(!empty($mybb->input['disporder']) && is_array($mybb->input['disporder']))

		else
{
if(!empty($mybb->input['disporder']) && is_array($mybb->input['disporder']))

Zeile 2209Zeile 2242
				{
$db->update_query("forums", array('disporder' => (int)$order), "fid='".(int)$update_fid."'");
}

				{
$db->update_query("forums", array('disporder' => (int)$order), "fid='".(int)$update_fid."'");
}





				$plugins->run_hooks("admin_forum_management_start_disporder_commit");

$cache->update_forums();

				$plugins->run_hooks("admin_forum_management_start_disporder_commit");

$cache->update_forums();

Zeile 2219Zeile 2252

flash_message($lang->success_forum_disporder_updated, 'success');
admin_redirect("index.php?module=forum-management&fid=".$mybb->input['fid']);


flash_message($lang->success_forum_disporder_updated, 'success');
admin_redirect("index.php?module=forum-management&fid=".$mybb->input['fid']);

			}
}
}

$page->extra_header .= "<script src=\"jscripts/quick_perm_editor.js\" type=\"text/javascript\"></script>\n";

			}
}
}

$page->extra_header .= "<script src=\"jscripts/quick_perm_editor.js\" type=\"text/javascript\"></script>\n";


if($fid)
{
$page->add_breadcrumb_item($lang->view_forum, "index.php?module=forum-management");


if($fid)
{
$page->add_breadcrumb_item($lang->view_forum, "index.php?module=forum-management");

	}


	}


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

if($fid)

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

if($fid)

Zeile 2239Zeile 2272
	else
{
$page->output_nav_tabs($sub_tabs, 'forum_management');

	else
{
$page->output_nav_tabs($sub_tabs, 'forum_management');

	}

	}


$form = new Form("index.php?module=forum-management", "post", "management");
echo $form->generate_hidden_field("fid", $mybb->input['fid']);


$form = new Form("index.php?module=forum-management", "post", "management");
echo $form->generate_hidden_field("fid", $mybb->input['fid']);

Zeile 2264Zeile 2297
	else
{
$form_container = new FormContainer($lang->manage_forums);

	else
{
$form_container = new FormContainer($lang->manage_forums);

	}

	}

	$form_container->output_row_header($lang->forum);

	$form_container->output_row_header($lang->forum);

	$form_container->output_row_header($lang->order, array("class" => "align_center", 'width' => '5%'));

	$form_container->output_row_header($lang->order, array("class" => "align_center", 'width' => '6%'));

	$form_container->output_row_header($lang->controls, array("class" => "align_center", 'style' => 'width: 200px'));


	$form_container->output_row_header($lang->controls, array("class" => "align_center", 'style' => 'width: 200px'));


	build_admincp_forums_list($form_container, $fid);

	build_admincp_forums_list($form_container, $form, $fid);


$submit_options = array();



$submit_options = array();


Zeile 2348Zeile 2381
					{
$perms = $existing_permissions[$usergroup['gid']];
$default_checked = false;

					{
$perms = $existing_permissions[$usergroup['gid']];
$default_checked = false;

					}

					}

					elseif(is_array($cached_forum_perms) && $cached_forum_perms[$forum['fid']][$usergroup['gid']])
{
$perms = $cached_forum_perms[$forum['fid']][$usergroup['gid']];

					elseif(is_array($cached_forum_perms) && $cached_forum_perms[$forum['fid']][$usergroup['gid']])
{
$perms = $cached_forum_perms[$forum['fid']][$usergroup['gid']];

						$default_checked = true;
}

						$default_checked = true;
}

					else if(is_array($cached_forum_perms) && $cached_forum_perms[$forum['pid']][$usergroup['gid']])
{
$perms = $cached_forum_perms[$forum['pid']][$usergroup['gid']];
$default_checked = true;
}

					else if(is_array($cached_forum_perms) && $cached_forum_perms[$forum['pid']][$usergroup['gid']])
{
$perms = $cached_forum_perms[$forum['pid']][$usergroup['gid']];
$default_checked = true;
}

				}

if(!$perms)
{
$perms = $usergroup;

				}

if(!$perms)
{
$perms = $usergroup;

					$default_checked = true;
}
}

					$default_checked = true;
}
}

Zeile 2373Zeile 2406
				{
$perms = $existing_permissions[$usergroup['gid']];
$default_checked = false;

				{
$perms = $existing_permissions[$usergroup['gid']];
$default_checked = false;

				}

				}

				elseif(is_array($cached_forum_perms) && isset($cached_forum_perms[$forum['fid']]) && $cached_forum_perms[$forum['fid']][$usergroup['gid']])
{
$perms = $cached_forum_perms[$forum['fid']][$usergroup['gid']];

				elseif(is_array($cached_forum_perms) && isset($cached_forum_perms[$forum['fid']]) && $cached_forum_perms[$forum['fid']][$usergroup['gid']])
{
$perms = $cached_forum_perms[$forum['fid']][$usergroup['gid']];

					$default_checked = true;
}

					$default_checked = true;
}

				else if(is_array($cached_forum_perms) && $cached_forum_perms[$forum['pid']][$usergroup['gid']])
{
$perms = $cached_forum_perms[$forum['pid']][$usergroup['gid']];

				else if(is_array($cached_forum_perms) && $cached_forum_perms[$forum['pid']][$usergroup['gid']])
{
$perms = $cached_forum_perms[$forum['pid']][$usergroup['gid']];

					$default_checked = true;
}

					$default_checked = true;
}


if(!$perms)
{
$perms = $usergroup;
$default_checked = true;


if(!$perms)
{
$perms = $usergroup;
$default_checked = true;

				}

				}

			}
foreach($field_list as $forum_permission => $forum_perm_title)
{
if(isset($mybb->input['permissions']))
{
if($mybb->input['permissions'][$usergroup['gid']][$forum_permission])

			}
foreach($field_list as $forum_permission => $forum_perm_title)
{
if(isset($mybb->input['permissions']))
{
if($mybb->input['permissions'][$usergroup['gid']][$forum_permission])

					{
$perms_checked[$forum_permission] = 1;
}
else
{

					{
$perms_checked[$forum_permission] = 1;
}
else
{

						$perms_checked[$forum_permission] = 0;
}
}

						$perms_checked[$forum_permission] = 0;
}
}

Zeile 2415Zeile 2448
						$perms_checked[$forum_permission] = 0;
}
}

						$perms_checked[$forum_permission] = 0;
}
}

			}

			}

			$usergroup['title'] = htmlspecialchars_uni($usergroup['title']);

if($default_checked == 1)

			$usergroup['title'] = htmlspecialchars_uni($usergroup['title']);

if($default_checked == 1)

Zeile 2431Zeile 2464

$field_select = "<div class=\"quick_perm_fields\">\n";
$field_select .= "<div class=\"enabled\"><ul id=\"fields_enabled_{$usergroup['gid']}\">\n";


$field_select = "<div class=\"quick_perm_fields\">\n";
$field_select .= "<div class=\"enabled\"><ul id=\"fields_enabled_{$usergroup['gid']}\">\n";

			foreach($perms_checked as $perm => $value)
{

			foreach($perms_checked as $perm => $value)
{

				if($value == 1)
{
$field_select .= "<li id=\"field-{$perm}\">{$field_list2[$perm]}</li>";

				if($value == 1)
{
$field_select .= "<li id=\"field-{$perm}\">{$field_list2[$perm]}</li>";

Zeile 2443Zeile 2476
			foreach($perms_checked as $perm => $value)
{
if($value == 0)

			foreach($perms_checked as $perm => $value)
{
if($value == 0)

				{

				{

					$field_select .= "<li id=\"field-{$perm}\">{$field_list2[$perm]}</li>";
}
}

					$field_select .= "<li id=\"field-{$perm}\">{$field_list2[$perm]}</li>";
}
}

Zeile 2453Zeile 2486
			$field_select .= $form->generate_hidden_field("fields_default_".$usergroup['gid'], @implode(",", @array_keys($perms_checked, '1')), array('id' => 'fields_default_'.$usergroup['gid']));
$field_select = str_replace("'", "\\'", $field_select);
$field_select = str_replace("\n", "", $field_select);

			$field_select .= $form->generate_hidden_field("fields_default_".$usergroup['gid'], @implode(",", @array_keys($perms_checked, '1')), array('id' => 'fields_default_'.$usergroup['gid']));
$field_select = str_replace("'", "\\'", $field_select);
$field_select = str_replace("\n", "", $field_select);





			$field_select = "<script type=\"text/javascript\">
//<![CDATA[
document.write('".str_replace("/", "\/", $field_select)."');
//]]>
</script>\n";

			$field_select = "<script type=\"text/javascript\">
//<![CDATA[
document.write('".str_replace("/", "\/", $field_select)."');
//]]>
</script>\n";





			$field_selected = array();
foreach($field_list as $forum_permission => $permission_title)
{

			$field_selected = array();
foreach($field_list as $forum_permission => $permission_title)
{

Zeile 2469Zeile 2502
					$field_selected[] = $forum_permission;
}
}

					$field_selected[] = $forum_permission;
}
}





			$field_select .= "<noscript>".$form->generate_select_box('fields_'.$usergroup['gid'].'[]', $field_options, $field_selected, array('id' => 'fields_'.$usergroup['gid'].'[]', 'multiple' => true))."</noscript>\n";
$form_container->output_cell($field_select, array('colspan' => 2));

if(!$default_checked)

			$field_select .= "<noscript>".$form->generate_select_box('fields_'.$usergroup['gid'].'[]', $field_options, $field_selected, array('id' => 'fields_'.$usergroup['gid'].'[]', 'multiple' => true))."</noscript>\n";
$form_container->output_cell($field_select, array('colspan' => 2));

if(!$default_checked)

			{

			{

				$form_container->output_cell("<a href=\"index.php?module=forum-management&amp;action=permissions&amp;pid={$perms['pid']}\" onclick=\"MyBB.popupWindow('index.php?module=forum-management&action=permissions&pid={$perms['pid']}&ajax=1', null, true); return false;\">{$lang->edit_permissions}</a>", array("class" => "align_center"));
$form_container->output_cell("<a href=\"index.php?module=forum-management&amp;action=clear_permission&amp;pid={$perms['pid']}&amp;my_post_key={$mybb->post_code}\" onclick=\"return AdminCP.deleteConfirmation(this, '{$lang->confirm_clear_custom_permission}')\">{$lang->clear_custom_perms}</a>", array("class" => "align_center"));
}

				$form_container->output_cell("<a href=\"index.php?module=forum-management&amp;action=permissions&amp;pid={$perms['pid']}\" onclick=\"MyBB.popupWindow('index.php?module=forum-management&action=permissions&pid={$perms['pid']}&ajax=1', null, true); return false;\">{$lang->edit_permissions}</a>", array("class" => "align_center"));
$form_container->output_cell("<a href=\"index.php?module=forum-management&amp;action=clear_permission&amp;pid={$perms['pid']}&amp;my_post_key={$mybb->post_code}\" onclick=\"return AdminCP.deleteConfirmation(this, '{$lang->confirm_clear_custom_permission}')\">{$lang->clear_custom_perms}</a>", array("class" => "align_center"));
}

Zeile 2582Zeile 2615
		echo $form->generate_hidden_field("fid", $mybb->input['fid']);
echo $form->generate_hidden_field("add", "moderators");
$form_container = new FormContainer($lang->add_user_as_moderator);

		echo $form->generate_hidden_field("fid", $mybb->input['fid']);
echo $form->generate_hidden_field("add", "moderators");
$form_container = new FormContainer($lang->add_user_as_moderator);

		$form_container->output_row($lang->username." <em>*</em>", $lang->moderator_username_desc, $form->generate_text_box('username', $mybb->input['username'], array('id' => 'username')), 'username');

		$form_container->output_row($lang->username." <em>*</em>", $lang->moderator_username_desc, $form->generate_text_box('username', htmlspecialchars_uni($mybb->get_input('username')), array('id' => 'username')), 'username');

		$form_container->end();

// Autocompletion for usernames

		$form_container->end();

// Autocompletion for usernames

Zeile 2593Zeile 2626
		<!--
$("#username").select2({
placeholder: "'.$lang->search_for_a_user.'",

		<!--
$("#username").select2({
placeholder: "'.$lang->search_for_a_user.'",

			minimumInputLength: 3,
maximumSelectionSize: 3,

			minimumInputLength: 2,


			multiple: false,
ajax: { // instead of writing the function to execute the request we use Select2\'s convenient helper
url: "../xmlhttp.php?action=get_users",

			multiple: false,
ajax: { // instead of writing the function to execute the request we use Select2\'s convenient helper
url: "../xmlhttp.php?action=get_users",

Zeile 2622Zeile 2654
			},
});


			},
});


		$(\'[for=username]\').click(function(){

		$(\'[for=username]\').on(\'click\', function(){

			$("#username").select2(\'open\');
return false;
});

			$("#username").select2(\'open\');
return false;
});

Zeile 2639Zeile 2671
	}

$page->output_footer();

	}

$page->output_footer();

}

/**
*




}

/**
* @param DefaultFormContainer $form_container
* @param DefaultForm $form
* @param int $pid
* @param int $depth

 */

 */

function build_admincp_forums_list(&$form_container, $pid=0, $depth=1)

function build_admincp_forums_list(&$form_container, &$form, $pid=0, $depth=1)

{
global $mybb, $lang, $db, $sub_forums;
static $forums_by_parent;

{
global $mybb, $lang, $db, $sub_forums;
static $forums_by_parent;

Zeile 2654Zeile 2689
		$forum_cache = cache_forums();

foreach($forum_cache as $forum)

		$forum_cache = cache_forums();

foreach($forum_cache as $forum)

		{

		{

			$forums_by_parent[$forum['pid']][$forum['disporder']][$forum['fid']] = $forum;
}

			$forums_by_parent[$forum['pid']][$forum['disporder']][$forum['fid']] = $forum;
}

	}


	}


	if(!is_array($forums_by_parent[$pid]))
{
return;

	if(!is_array($forums_by_parent[$pid]))
{
return;

Zeile 2671Zeile 2706
			$forum['name'] = preg_replace("#&(?!\#[0-9]+;)#si", "&amp;", $forum['name']); // Fix & but allow unicode

if($forum['active'] == 0)

			$forum['name'] = preg_replace("#&(?!\#[0-9]+;)#si", "&amp;", $forum['name']); // Fix & but allow unicode

if($forum['active'] == 0)

			{

			{

				$forum['name'] = "<em>".$forum['name']."</em>";
}

if($forum['type'] == "c" && ($depth == 1 || $depth == 2))

				$forum['name'] = "<em>".$forum['name']."</em>";
}

if($forum['type'] == "c" && ($depth == 1 || $depth == 2))

			{
$sub_forums = '';
if(isset($forums_by_parent[$forum['fid']]) && $depth == 2)
{
build_admincp_forums_list($form_container, $forum['fid'], $depth+1);
}
if($sub_forums)
{
$sub_forums = "<br /><small>{$lang->sub_forums}: {$sub_forums}</small>";
}

			{
$sub_forums = '';
if(isset($forums_by_parent[$forum['fid']]) && $depth == 2)
{
build_admincp_forums_list($form_container, $form, $forum['fid'], $depth+1);
}
if($sub_forums)
{
$sub_forums = "<br /><small>{$lang->sub_forums}: {$sub_forums}</small>";
}


$form_container->output_cell("<div style=\"padding-left: ".(40*($depth-1))."px;\"><a href=\"index.php?module=forum-management&amp;fid={$forum['fid']}\"><strong>{$forum['name']}</strong></a>{$sub_forums}</div>");



$form_container->output_cell("<div style=\"padding-left: ".(40*($depth-1))."px;\"><a href=\"index.php?module=forum-management&amp;fid={$forum['fid']}\"><strong>{$forum['name']}</strong></a>{$sub_forums}</div>");


				$form_container->output_cell("<input type=\"text\" name=\"disporder[".$forum['fid']."]\" value=\"".$forum['disporder']."\" class=\"text_input align_center\" style=\"width: 80%; font-weight: bold;\" />", array("class" => "align_center"));

				$form_container->output_cell($form->generate_numeric_field("disporder[{$forum['fid']}]", "{$forum['disporder']}", array('min' => 0, 'class' => 'align_center', 'style' => 'width:80%; font-weight:bold')), array("class" => "align_center"));


$popup = new PopupMenu("forum_{$forum['fid']}", $lang->options);
$popup->add_item($lang->edit_forum, "index.php?module=forum-management&amp;action=edit&amp;fid={$forum['fid']}");
$popup->add_item($lang->subforums, "index.php?module=forum-management&amp;fid={$forum['fid']}");
$popup->add_item($lang->moderators, "index.php?module=forum-management&amp;fid={$forum['fid']}#tab_moderators");
$popup->add_item($lang->permissions, "index.php?module=forum-management&amp;fid={$forum['fid']}#tab_permissions");


$popup = new PopupMenu("forum_{$forum['fid']}", $lang->options);
$popup->add_item($lang->edit_forum, "index.php?module=forum-management&amp;action=edit&amp;fid={$forum['fid']}");
$popup->add_item($lang->subforums, "index.php?module=forum-management&amp;fid={$forum['fid']}");
$popup->add_item($lang->moderators, "index.php?module=forum-management&amp;fid={$forum['fid']}#tab_moderators");
$popup->add_item($lang->permissions, "index.php?module=forum-management&amp;fid={$forum['fid']}#tab_permissions");

 
				$popup->add_item($lang->forum_thread_prefixes, "index.php?module=config-thread_prefixes&amp;fid={$forum['fid']}");

				$popup->add_item($lang->add_child_forum, "index.php?module=forum-management&amp;action=add&amp;pid={$forum['fid']}");
$popup->add_item($lang->copy_forum, "index.php?module=forum-management&amp;action=copy&amp;fid={$forum['fid']}");
$popup->add_item($lang->delete_forum, "index.php?module=forum-management&amp;action=delete&amp;fid={$forum['fid']}&amp;my_post_key={$mybb->post_code}", "return AdminCP.deleteConfirmation(this, '{$lang->confirm_forum_deletion}')");

				$popup->add_item($lang->add_child_forum, "index.php?module=forum-management&amp;action=add&amp;pid={$forum['fid']}");
$popup->add_item($lang->copy_forum, "index.php?module=forum-management&amp;action=copy&amp;fid={$forum['fid']}");
$popup->add_item($lang->delete_forum, "index.php?module=forum-management&amp;action=delete&amp;fid={$forum['fid']}&amp;my_post_key={$mybb->post_code}", "return AdminCP.deleteConfirmation(this, '{$lang->confirm_forum_deletion}')");

Zeile 2706Zeile 2742

// Does this category have any sub forums?
if($forums_by_parent[$forum['fid']])


// Does this category have any sub forums?
if($forums_by_parent[$forum['fid']])

				{
build_admincp_forums_list($form_container, $forum['fid'], $depth+1);
}

				{
build_admincp_forums_list($form_container, $form, $forum['fid'], $depth+1);
}

			}
elseif($forum['type'] == "f" && ($depth == 1 || $depth == 2))
{
if($forum['description'])

			}
elseif($forum['type'] == "f" && ($depth == 1 || $depth == 2))
{
if($forum['description'])

				{

				{

					$forum['description'] = preg_replace("#&(?!\#[0-9]+;)#si", "&amp;", $forum['description']);
$forum['description'] = "<br /><small>".$forum['description']."</small>";
}

					$forum['description'] = preg_replace("#&(?!\#[0-9]+;)#si", "&amp;", $forum['description']);
$forum['description'] = "<br /><small>".$forum['description']."</small>";
}

Zeile 2721Zeile 2757
				$sub_forums = '';
if(isset($forums_by_parent[$forum['fid']]) && $depth == 2)
{

				$sub_forums = '';
if(isset($forums_by_parent[$forum['fid']]) && $depth == 2)
{

					build_admincp_forums_list($form_container, $forum['fid'], $depth+1);

					build_admincp_forums_list($form_container, $form, $forum['fid'], $depth+1);

				}
if($sub_forums)
{

				}
if($sub_forums)
{

Zeile 2730Zeile 2766

$form_container->output_cell("<div style=\"padding-left: ".(40*($depth-1))."px;\"><a href=\"index.php?module=forum-management&amp;fid={$forum['fid']}\">{$forum['name']}</a>{$forum['description']}{$sub_forums}</div>");



$form_container->output_cell("<div style=\"padding-left: ".(40*($depth-1))."px;\"><a href=\"index.php?module=forum-management&amp;fid={$forum['fid']}\">{$forum['name']}</a>{$forum['description']}{$sub_forums}</div>");


				$form_container->output_cell("<input type=\"text\" name=\"disporder[".$forum['fid']."]\" value=\"".$forum['disporder']."\" class=\"text_input align_center\" style=\"width: 80%;\" />", array("class" => "align_center"));


				$form_container->output_cell($form->generate_numeric_field("disporder[{$forum['fid']}]", "{$forum['disporder']}", array('min' => 0, 'class' => 'align_center', 'style' => 'width:80%')), array("class" => "align_center"));


				$popup = new PopupMenu("forum_{$forum['fid']}", $lang->options);
$popup->add_item($lang->edit_forum, "index.php?module=forum-management&amp;action=edit&amp;fid={$forum['fid']}");
$popup->add_item($lang->subforums, "index.php?module=forum-management&amp;fid={$forum['fid']}");
$popup->add_item($lang->moderators, "index.php?module=forum-management&amp;fid={$forum['fid']}#tab_moderators");
$popup->add_item($lang->permissions, "index.php?module=forum-management&amp;fid={$forum['fid']}#tab_permissions");

				$popup = new PopupMenu("forum_{$forum['fid']}", $lang->options);
$popup->add_item($lang->edit_forum, "index.php?module=forum-management&amp;action=edit&amp;fid={$forum['fid']}");
$popup->add_item($lang->subforums, "index.php?module=forum-management&amp;fid={$forum['fid']}");
$popup->add_item($lang->moderators, "index.php?module=forum-management&amp;fid={$forum['fid']}#tab_moderators");
$popup->add_item($lang->permissions, "index.php?module=forum-management&amp;fid={$forum['fid']}#tab_permissions");

 
				$popup->add_item($lang->forum_thread_prefixes, "index.php?module=config-thread_prefixes&amp;fid={$forum['fid']}");

				$popup->add_item($lang->add_child_forum, "index.php?module=forum-management&amp;action=add&amp;pid={$forum['fid']}");
$popup->add_item($lang->copy_forum, "index.php?module=forum-management&amp;action=copy&amp;fid={$forum['fid']}");
$popup->add_item($lang->delete_forum, "index.php?module=forum-management&amp;action=delete&amp;fid={$forum['fid']}&amp;my_post_key={$mybb->post_code}", "return AdminCP.deleteConfirmation(this, '{$lang->confirm_forum_deletion}')");

				$popup->add_item($lang->add_child_forum, "index.php?module=forum-management&amp;action=add&amp;pid={$forum['fid']}");
$popup->add_item($lang->copy_forum, "index.php?module=forum-management&amp;action=copy&amp;fid={$forum['fid']}");
$popup->add_item($lang->delete_forum, "index.php?module=forum-management&amp;action=delete&amp;fid={$forum['fid']}&amp;my_post_key={$mybb->post_code}", "return AdminCP.deleteConfirmation(this, '{$lang->confirm_forum_deletion}')");

Zeile 2747Zeile 2783

if(isset($forums_by_parent[$forum['fid']]) && $depth == 1)
{


if(isset($forums_by_parent[$forum['fid']]) && $depth == 1)
{

					build_admincp_forums_list($form_container, $forum['fid'], $depth+1);

					build_admincp_forums_list($form_container, $form, $forum['fid'], $depth+1);

				}
}
else if($depth == 3)

				}
}
else if($depth == 3)

Zeile 2773Zeile 2809
	}
}


	}
}


 
/**
* @param int $gid
* @param int $fid
*
* @return string
*/

function retrieve_single_permissions_row($gid, $fid)
{
global $mybb, $lang, $cache, $db;

function retrieve_single_permissions_row($gid, $fid)
{
global $mybb, $lang, $cache, $db;