Vergleich admin/modules/forum/management.php - 1.6.1 - 1.6.15

  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: management.php 5162 2010-08-01 22:09:04Z RyanGordon $

 * $Id$

 */

// Disallow direct access to this file for security reasons

 */

// Disallow direct access to this file for security reasons

Zeile 19Zeile 19

if($mybb->input['action'] == "add" || $mybb->input['action'] == "edit" || $mybb->input['action'] == "copy" || $mybb->input['action'] == "permissions" || !$mybb->input['action'])
{


if($mybb->input['action'] == "add" || $mybb->input['action'] == "edit" || $mybb->input['action'] == "copy" || $mybb->input['action'] == "permissions" || !$mybb->input['action'])
{

	if($mybb->input['fid'] && ($mybb->input['action'] == "management" || $mybb->input['action'] == "edit" || $mybb->input['action'] == "copy" || !$mybb->input['action']))

	if(!empty($mybb->input['fid']) && ($mybb->input['action'] == "management" || $mybb->input['action'] == "edit" || $mybb->input['action'] == "copy" || !$mybb->input['action']))

	{
$sub_tabs['view_forum'] = array(
'title' => $lang->view_forum,

	{
$sub_tabs['view_forum'] = array(
'title' => $lang->view_forum,

Zeile 30Zeile 30
		$sub_tabs['add_child_forum'] = array(
'title' => $lang->add_child_forum,
'link' => "index.php?module=forum-management&action=add&pid=".$mybb->input['fid'],

		$sub_tabs['add_child_forum'] = array(
'title' => $lang->add_child_forum,
'link' => "index.php?module=forum-management&action=add&pid=".$mybb->input['fid'],

			'description' => $lang->add_child_forum_desc

			'description' => $lang->view_forum_desc

		);

$sub_tabs['edit_forum_settings'] = array(

		);

$sub_tabs['edit_forum_settings'] = array(

Zeile 299Zeile 299
			$forum = get_forum($fid);
if($mod_data['isgroup'])
{

			$forum = get_forum($fid);
if($mod_data['isgroup'])
{

				$mod = $mybb->usergroups[$mod_data['id']];

				$mod = $groupscache[$mod_data['id']];

			}
else
{

			}
else
{

Zeile 312Zeile 312
				'canviewips' => intval($mybb->input['canviewips']),
'canopenclosethreads' => intval($mybb->input['canopenclosethreads']),
'canmanagethreads' => intval($mybb->input['canmanagethreads']),

				'canviewips' => intval($mybb->input['canviewips']),
'canopenclosethreads' => intval($mybb->input['canopenclosethreads']),
'canmanagethreads' => intval($mybb->input['canmanagethreads']),

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


				'canmovetononmodforum' => intval($mybb->input['canmovetononmodforum']),
'canusecustomtools' => intval($mybb->input['canusecustomtools'])

			);
$db->update_query("moderators", $update_array, "mid='".intval($mybb->input['mid'])."'");


			);
$db->update_query("moderators", $update_array, "mid='".intval($mybb->input['mid'])."'");


Zeile 370Zeile 371
		$form->generate_check_box('canviewips', 1, $lang->can_view_ips, array('checked' => $mod_data['canviewips'], 'id' => 'canviewips')),
$form->generate_check_box('canopenclosethreads', 1, $lang->can_open_close_threads, array('checked' => $mod_data['canopenclosethreads'], 'id' => 'canopenclosethreads')),
$form->generate_check_box('canmanagethreads', 1, $lang->can_manage_threads, array('checked' => $mod_data['canmanagethreads'], 'id' => 'canmanagethreads')),

		$form->generate_check_box('canviewips', 1, $lang->can_view_ips, array('checked' => $mod_data['canviewips'], 'id' => 'canviewips')),
$form->generate_check_box('canopenclosethreads', 1, $lang->can_open_close_threads, array('checked' => $mod_data['canopenclosethreads'], 'id' => 'canopenclosethreads')),
$form->generate_check_box('canmanagethreads', 1, $lang->can_manage_threads, array('checked' => $mod_data['canmanagethreads'], 'id' => 'canmanagethreads')),

		$form->generate_check_box('canmovetononmodforum', 1, $lang->can_move_to_other_forums, array('checked' => $mod_data['canmovetononmodforum'], 'id' => 'canmovetononmodforum'))


		$form->generate_check_box('canmovetononmodforum', 1, $lang->can_move_to_other_forums, array('checked' => $mod_data['canmovetononmodforum'], 'id' => 'canmovetononmodforum')),
$form->generate_check_box('canusecustomtools', 1, $lang->can_use_custom_tools, array('checked' => $mod_data['canusecustomtools'], 'id' => 'canusecustomtools'))

	);

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

	);

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

Zeile 445Zeile 447
			$result = $db->fetch_array($query);
$fid = $result['fid'];
$gid = $result['gid'];

			$result = $db->fetch_array($query);
$fid = $result['fid'];
$gid = $result['gid'];

 
			$forum = get_forum($fid);

		}

$field_list = array();

		}

$field_list = array();

Zeile 499Zeile 502
		
if($mybb->input['ajax'] == 1)
{

		
if($mybb->input['ajax'] == 1)
{

			echo "<script type=\"text/javascript\">
$('row_{$gid}').innerHTML = '".str_replace(array("'", "\t", "\n"), array("\\'", "", ""), retrieve_single_permissions_row($gid, $fid))."';
QuickPermEditor.init({$gid});
</script>\n";

			echo "<script type=\"text/javascript\">$('row_{$gid}').update('".str_replace(array("'", "\t", "\n"), array("\\'", "", ""), retrieve_single_permissions_row($gid, $fid))."'); QuickPermEditor.init({$gid});</script>";




			die;
}
else

			die;
}
else

Zeile 657Zeile 657
			'cansearch' => 'misc',
);


			'cansearch' => 'misc',
);


		$plugins->run_hooks_by_ref("admin_forum_management_permission_groups", $groups);

		$groups = $plugins->run_hooks("admin_forum_management_permission_groups", $groups);

		
$tabs = array();
foreach(array_unique(array_values($groups)) as $group)

		
$tabs = array();
foreach(array_unique(array_values($groups)) as $group)

Zeile 939Zeile 939
	echo "<div id=\"additional_options_link\"><strong><a href=\"#\" onclick=\"$('additional_options_link').toggle(); $('additional_options').toggle(); return false;\">{$lang->show_additional_options}</a></strong><br /><br /></div>";
echo "<div id=\"additional_options\" style=\"display: none;\">";
$form_container = new FormContainer("<div class=\"float_right\" style=\"font-weight: normal;\"><a href=\"#\" onclick=\"$('additional_options_link').toggle(); $('additional_options').toggle(); return false;\">{$lang->hide_additional_options}</a></div>".$lang->additional_forum_options);

	echo "<div id=\"additional_options_link\"><strong><a href=\"#\" onclick=\"$('additional_options_link').toggle(); $('additional_options').toggle(); return false;\">{$lang->show_additional_options}</a></strong><br /><br /></div>";
echo "<div id=\"additional_options\" style=\"display: none;\">";
$form_container = new FormContainer("<div class=\"float_right\" style=\"font-weight: normal;\"><a href=\"#\" onclick=\"$('additional_options_link').toggle(); $('additional_options').toggle(); return false;\">{$lang->hide_additional_options}</a></div>".$lang->additional_forum_options);

	$form_container->output_row($lang->forum_link, $lang->forum_link_desc, $form->generate_text_box('linkto', $forum_data['linkto'], array('id' => 'linkto')), 'linkto');
$form_container->output_row($lang->forum_password, $lang->forum_password_desc, $form->generate_text_box('password', $forum_data['password'], array('id' => 'password')), 'password');

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

$moderator_options = array(

	$form_container->output_row($lang->forum_link, $lang->forum_link_desc, $form->generate_text_box('linkto', $forum_data['linkto'], array('id' => 'linkto')), 'linkto');
$form_container->output_row($lang->forum_password, $lang->forum_password_desc, $form->generate_text_box('password', $forum_data['password'], array('id' => 'password')), 'password');

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

$moderator_options = array(

		$form->generate_check_box('modposts', 1, $lang->mod_new_posts, array('checked' => $forum_data['modposts'], 'id' => 'modposts')),
$form->generate_check_box('modthreads', 1, $lang->mod_new_threads, array('checked' => $forum_data['modthreads'], 'id' => 'modthreads')),
$form->generate_check_box('modattachments', 1, $lang->mod_new_attachments, array('checked' => $forum_data['modattachments'], 'id' => 'modattachments')),
$form->generate_check_box('mod_edit_posts', 1, $lang->mod_after_edit, array('checked' => $forum_data['mod_edit_posts'], 'id' => 'mod_edit_posts'))

		$form->generate_check_box('modposts', 1, $lang->mod_new_posts, array('checked' => $forum_data['modposts'], 'id' => 'modposts')),
$form->generate_check_box('modthreads', 1, $lang->mod_new_threads, array('checked' => $forum_data['modthreads'], 'id' => 'modthreads')),
$form->generate_check_box('modattachments', 1, $lang->mod_new_attachments, array('checked' => $forum_data['modattachments'], 'id' => 'modattachments')),
$form->generate_check_box('mod_edit_posts', 1, $lang->mod_after_edit, array('checked' => $forum_data['mod_edit_posts'], 'id' => 'mod_edit_posts'))

	);

	);

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


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


Zeile 965Zeile 965
	$query = $db->simple_select("themes", "tid,name", "name!='((master))' AND name!='((master-backup))'", array('order_by' => 'name'));
while($style = $db->fetch_array($query))
{

	$query = $db->simple_select("themes", "tid,name", "name!='((master))' AND name!='((master-backup))'", array('order_by' => 'name'));
while($style = $db->fetch_array($query))
{

		$styles[$style['tid']] = $style['name'];

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

	}

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

	);

$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,

	
$display_methods = array(
'0' => $lang->dont_display_rules,
'1' => $lang->display_rules_inline,

 
		'3' => $lang->display_rules_inline_new,

		'2' => $lang->display_rules_link
);


		'2' => $lang->display_rules_link
);


Zeile 985Zeile 986
		$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'))

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

	);

$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,

	
$default_date_cut = array(
0 => $lang->board_default,

Zeile 1011Zeile 1012
		"rating" => $lang->sort_by_rating,
"replies" => $lang->sort_by_replies,
"views" => $lang->sort_by_views,

		"rating" => $lang->sort_by_rating,
"replies" => $lang->sort_by_replies,
"views" => $lang->sort_by_views,

	);

	);

	
$default_sort_order = array(
"" => $lang->board_default,

	
$default_sort_order = array(
"" => $lang->board_default,

Zeile 1023Zeile 1024
		$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')),

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

	);

$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')),

	
$misc_options = array(
$form->generate_check_box('allowhtml', 1, $lang->allow_html, array('checked' => $forum_data['allowhtml'], 'id' => 'allowhtml')),

Zeile 1043Zeile 1044
	$form_container->end();
echo "</div>";


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


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

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

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

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

Zeile 1094Zeile 1095
	foreach($usergroups as $usergroup)
{
$perms = array();

	foreach($usergroups as $usergroup)
{
$perms = array();

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

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

		{
if(is_array($existing_permissions) && $existing_permissions[$usergroup['gid']])
{

		{
if(is_array($existing_permissions) && $existing_permissions[$usergroup['gid']])
{

Zeile 1164Zeile 1165
			$inherited_text = $lang->custom_permission;
}


			$inherited_text = $lang->custom_permission;
}


		$form_container->output_cell("<strong>{$usergroup['title']}</strong><br />".$form->generate_check_box("default_permissions[{$usergroup['gid']}]", 1, "", array("id" => "default_permissions_{$usergroup['gid']}", "checked" => $default_checked, "onclick" => $default_click))." <small><label for=\"default_permissions_{$usergroup['gid']}\">{$lang->permissions_use_group_default}</label></small>");

		$form_container->output_cell("<strong>{$usergroup['title']}</strong><br />".$form->generate_check_box("default_permissions[{$usergroup['gid']}]", 1, "", array("id" => "default_permissions_{$usergroup['gid']}", "checked" => $default_checked))." <small><label for=\"default_permissions_{$usergroup['gid']}\">{$lang->permissions_use_group_default}</label></small>");

		
$field_select = "<div class=\"quick_perm_fields\">\n";

		
$field_select = "<div class=\"quick_perm_fields\">\n";

		$field_select .= "<div class=\"enabled\"><div class=\"fields_title\">{$lang->enabled}</div><ul id=\"fields_enabled_{$usergroup['gid']}\">\n";
foreach($perms_checked as $perm => $value)
{

		$field_select .= "<div class=\"enabled\"><ul id=\"fields_enabled_{$usergroup['gid']}\">\n";
foreach($perms_checked as $perm => $value)
{

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

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

		$field_select .= "<div class=\"disabled\"><div class=\"fields_title\">{$lang->disabled}</div><ul id=\"fields_disabled_{$usergroup['gid']}\">\n";

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

		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 1254Zeile 1255
		if(!trim($mybb->input['title']))
{
$errors[] = $lang->error_missing_title;

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

		}


		}


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

if($pid == $mybb->input['fid'])

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

if($pid == $mybb->input['fid'])

Zeile 1272Zeile 1273
					$errors[] = $lang->error_forum_parent_child;
break;
}

					$errors[] = $lang->error_forum_parent_child;
break;
}

			}

			}

		}

$type = $mybb->input['type'];

		}

$type = $mybb->input['type'];

Zeile 1287Zeile 1288
			$query = $db->simple_select('threads', 'COUNT(tid) as num_threads', "fid = '{$fid}'");
if($db->fetch_field($query, "num_threads") > 0)
{

			$query = $db->simple_select('threads', 'COUNT(tid) as num_threads', "fid = '{$fid}'");
if($db->fetch_field($query, "num_threads") > 0)
{

				$errors[] = $lang->error_not_empty;










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

if(!empty($mybb->input['linkto']) && empty($forum_data['linkto']))
{
$query = $db->simple_select('threads', 'COUNT(tid) as num_threads', "fid = '{$fid}'", array("limit" => 1));
if($db->fetch_field($query, "num_threads") > 0)
{
$errors[] = $lang->error_forum_link_not_empty;

			}
}

			}
}

 


		
if(!$errors)
{

		
if(!$errors)
{

Zeile 1333Zeile 1344
			if($pid != $forum_data['pid'])
{
// Update the parentlist of this forum.

			if($pid != $forum_data['pid'])
{
// Update the parentlist of this forum.

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

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

				
// Rebuild the parentlist of all of the subforums of this forum
switch($db->type)

				
// Rebuild the parentlist of all of the subforums of this forum
switch($db->type)

Zeile 1348Zeile 1359
				
while($child = $db->fetch_array($query))
{

				
while($child = $db->fetch_array($query))
{

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

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

				}
}


				}
}


Zeile 1438Zeile 1449
		$forum_data['title'] = $forum_data['name'];
}


		$forum_data['title'] = $forum_data['name'];
}


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

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

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

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

Zeile 1520Zeile 1531
	$display_methods = array(
'0' => $lang->dont_display_rules,
'1' => $lang->display_rules_inline,

	$display_methods = array(
'0' => $lang->dont_display_rules,
'1' => $lang->display_rules_inline,

 
		'3' => $lang->display_rules_inline_new,

		'2' => $lang->display_rules_link
);


		'2' => $lang->display_rules_link
);


Zeile 1842Zeile 1854
		$mod = $db->fetch_array($query);

$db->delete_query("moderators", "mid='{$mid}'");

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

$db->delete_query("moderators", "mid='{$mid}'");

		$query = $db->simple_select("moderators", "*", "id='{$mod['id']}' AND isgroup='0'");
if($db->num_rows($query) == 0)
{
$updatequery = array(
"usergroup" => "2"
);
$db->update_query("users", $updatequery, "uid='{$mod['id']}' AND usergroup != '4' AND usergroup != '3'");
}

 
		$cache->update_moderators();

$plugins->run_hooks("admin_forum_management_deletemod_commit");

		$cache->update_moderators();

$plugins->run_hooks("admin_forum_management_deletemod_commit");

Zeile 1858Zeile 1862
		
// Log admin action
if ($isgroup)

		
// Log admin action
if ($isgroup)

		{
log_admin_action($mod['id'], $mod['title'], $forum['fid'], $forum['name']);
}

		{
log_admin_action($mid, $mod['title'], $forum['fid'], $forum['name']);
}

		else
{

		else
{

			log_admin_action($mod['id'], $mod['username'], $forum['fid'], $forum['name']);

			log_admin_action($mid, $mod['username'], $forum['fid'], $forum['name']);

		}

flash_message($lang->success_moderator_deleted, 'success');

		}

flash_message($lang->success_moderator_deleted, 'success');

Zeile 1872Zeile 1876
	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);

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

	}

	}

}

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

}

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

Zeile 1884Zeile 1888
	
// Does the forum not exist?
if(!$forum['fid'])

	
// Does the forum not exist?
if(!$forum['fid'])

	{

	{

		flash_message($lang->error_invalid_forum, 'error');

		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 1905Zeile 1909
		
// Delete the forum
$db->delete_query("forums", "fid='$fid'");

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

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

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

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

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

Zeile 1916Zeile 1920
				$query = $db->simple_select("forums", "*", "CONCAT(',', parentlist, ',') LIKE '%,$fid,%'");
}
while($forum = $db->fetch_array($query))

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

		{

		{

			$fids[$forum['fid']] = $fid;
$delquery .= " OR fid='{$forum['fid']}'";


			$fids[$forum['fid']] = $fid;
$delquery .= " OR fid='{$forum['fid']}'";


Zeile 1924Zeile 1928
			$stats['unapprovedposts'] += $forum['unapprovedposts'];
$stats['threads'] += $forum['threads'];
$stats['unapprovedthreads'] += $forum['unapprovedthreads'];

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

		}

/**
* This slab of code pulls out the moderators for this forum,
* checks if they moderate any other forums, and if they don't
* it moves them back to the registered usergroup
*/

$query = $db->simple_select("moderators", "*", "fid='$fid' AND isgroup='0'");
while($mod = $db->fetch_array($query))
{
$moderators[$mod['id']] = $mod['id'];
}

if(is_array($moderators))
{
$mod_list = implode(",", $moderators);
$query = $db->simple_select("moderators", "*", "fid != '$fid' AND id IN ($mod_list) AND isgroup='0'");
while($mod = $db->fetch_array($query))
{
unset($moderators[$mod['id']]);
}
}

if(is_array($moderators))
{
$mod_list = implode(",", $moderators);
if($mod_list)
{
$updatequery = array(
"usergroup" => "2"
);
$db->update_query("users", $updatequery, "uid IN ($mod_list) AND usergroup='6'");
}

 
		}

switch($db->type)

		}

switch($db->type)

Zeile 2004Zeile 1974
if(!$mybb->input['action'])
{
$plugins->run_hooks("admin_forum_management_start");

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

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

 




 
	if(!isset($mybb->input['fid']))
{
$mybb->input['fid'] = 0;
}

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

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

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

Zeile 2050Zeile 2025
						$permissions[$name][$gid] = 1;
}
else

						$permissions[$name][$gid] = 1;
}
else

					{

					{

						$permissions[$name][$gid] = 0;
}
}

						$permissions[$name][$gid] = 0;
}
}

			}

			}

			
$cache->update_forums();


			
$cache->update_forums();


Zeile 2063Zeile 2038
			$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_start_permissions_commit");

			save_quick_perms($fid);

$plugins->run_hooks("admin_forum_management_start_permissions_commit");

			

			

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


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


Zeile 2084Zeile 2059
			}
if(!empty($mybb->input['usergroup']))
{

			}
if(!empty($mybb->input['usergroup']))
{

				preg_match("/\(".$lang->usergroup." (.*?)\)/", $mybb->input['usergroup'], $match_group);


				$isgroup = 1;
$gid = intval($mybb->input['usergroup']);





				$mod_gid = intval($match_group[1]);
if(!empty($match_group) && $mod_gid > 0)
{
$query = $db->simple_select("usergroups", "gid AS id, title AS name", "gid='".$mod_gid."'", array('limit' => 1));
$isgroup = 1;
}
else











				if(!$groupscache[$gid])
{
// Didn't select a valid moderator
flash_message($lang->error_moderator_not_found, 'error');
admin_redirect("index.php?module=forum-management&fid={$fid}#tab_moderators");
}

$newmod = array(
"id" => $gid,
"name" => $groupscache[$gid]['title']
);
}
else
{
$query = $db->simple_select("users", "uid AS id, username AS name", "username='".$db->escape_string($mybb->input['username'])."'", array('limit' => 1));

if(!$db->num_rows($query))

				{

				{

					// Didn't select a valid moderator

 
					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
{
$query = $db->simple_select("users", "uid AS id, username AS name", "username='".$db->escape_string($mybb->input['username'])."'", array('limit' => 1));






				$isgroup = 0;

				$isgroup = 0;

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

			}

			}

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



			if($newmod['id'])
{
$query = $db->simple_select("moderators", "id", "id='".$newmod['id']."' AND fid='".$fid."' AND isgroup='{$isgroup}'", array('limit' => 1));

			if($newmod['id'])
{
$query = $db->simple_select("moderators", "id", "id='".$newmod['id']."' AND fid='".$fid."' AND isgroup='{$isgroup}'", array('limit' => 1));

				$mod = $db->fetch_array($query);
if(!$mod['id'])


if(!$db->num_rows($query))

				{
$new_mod = array(
"fid" => $fid,

				{
$new_mod = array(
"fid" => $fid,

Zeile 2120Zeile 2103
						"canviewips" => 1,
"canopenclosethreads" => 1,
"canmanagethreads" => 1,

						"canviewips" => 1,
"canopenclosethreads" => 1,
"canmanagethreads" => 1,

						"canmovetononmodforum" => 1


						"canmovetononmodforum" => 1,
"canusecustomtools" => 1

					);

					);

 


					$mid = $db->insert_query("moderators", $new_mod);

if(!$isgroup)
{
$db->update_query("users", array('usergroup' => 6), "uid='{$newmod['id']}' AND usergroup='2'");
}

					$mid = $db->insert_query("moderators", $new_mod);

if(!$isgroup)
{
$db->update_query("users", array('usergroup' => 6), "uid='{$newmod['id']}' AND usergroup='2'");
}

 


					$cache->update_moderators();

					$cache->update_moderators();

					

 
					$plugins->run_hooks("admin_forum_management_start_moderators_commit");

// Log admin action

					$plugins->run_hooks("admin_forum_management_start_moderators_commit");

// Log admin action

					log_admin_action('addmod', $new_mod['fid'], $newmod['name'], $fid, $forum['name']);

					log_admin_action('addmod', $mid, $newmod['name'], $fid, $forum['name']);

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

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

Zeile 2205Zeile 2190
		);

$page->output_tab_control($tabs);

		);

$page->output_tab_control($tabs);

	

	

		echo "<div id=\"tab_subforums\">\n";

		echo "<div id=\"tab_subforums\">\n";

		if(!is_array($forum_cache))

		if(!isset($forum_cache) || !is_array($forum_cache))

		{
cache_forums();
}

		{
cache_forums();
}

Zeile 2249Zeile 2234
		echo "</div>\n";
$form->end();


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


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

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

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

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

Zeile 2283Zeile 2268
		echo $form->generate_hidden_field("update", "permissions");

echo "<div id=\"tab_permissions\">\n";

		echo $form->generate_hidden_field("update", "permissions");

echo "<div id=\"tab_permissions\">\n";

		

		

		$form_container = new FormContainer($lang->sprintf($lang->forum_permissions_in, $forum_cache[$fid]['name']));
$form_container->output_row_header($lang->permissions_group, array("class" => "align_center", 'style' => 'width: 30%'));
$form_container->output_row_header($lang->overview_allowed_actions, array("class" => "align_center"));

		$form_container = new FormContainer($lang->sprintf($lang->forum_permissions_in, $forum_cache[$fid]['name']));
$form_container->output_row_header($lang->permissions_group, array("class" => "align_center", 'style' => 'width: 30%'));
$form_container->output_row_header($lang->overview_allowed_actions, array("class" => "align_center"));

Zeile 2293Zeile 2278
		{
$perms = array();
if(isset($mybb->input['default_permissions']))

		{
$perms = array();
if(isset($mybb->input['default_permissions']))

			{

			{

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

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

Zeile 2310Zeile 2295
					{
$perms = $cached_forum_perms[$forum['pid']][$usergroup['gid']];
$default_checked = true;

					{
$perms = $cached_forum_perms[$forum['pid']][$usergroup['gid']];
$default_checked = true;

					}
}

if(!$perms)
{
$perms = $usergroup;
$default_checked = true;
}
}
else
{
if(is_array($existing_permissions) && $existing_permissions[$usergroup['gid']])

					}
}

if(!$perms)
{
$perms = $usergroup;
$default_checked = true;
}
}
else
{
if(isset($existing_permissions) && is_array($existing_permissions) && $existing_permissions[$usergroup['gid']])

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

				}
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;
}
else if(is_array($cached_forum_perms) && $cached_forum_perms[$forum['pid']][$usergroup['gid']])

					$perms = $cached_forum_perms[$forum['fid']][$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;
}

					$perms = $cached_forum_perms[$forum['pid']][$usergroup['gid']];
$default_checked = true;
}

Zeile 2341Zeile 2326
				{
$perms = $usergroup;
$default_checked = true;

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

				}

				}

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

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

					if($mybb->input['permissions'][$usergroup['gid']][$forum_permission])
{
$perms_checked[$forum_permission] = 1;

Zeile 2360Zeile 2345
				{
if($perms[$forum_permission] == 1)
{

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

						$perms_checked[$forum_permission] = 1;

						$perms_checked[$forum_permission] = 1;

					}
else
{

					}
else
{

Zeile 2382Zeile 2367
			$form_container->output_cell("<strong>{$usergroup['title']}</strong> <small style=\"vertical-align: middle;\">({$inherited_text})</small>");

$field_select = "<div class=\"quick_perm_fields\">\n";

			$form_container->output_cell("<strong>{$usergroup['title']}</strong> <small style=\"vertical-align: middle;\">({$inherited_text})</small>");

$field_select = "<div class=\"quick_perm_fields\">\n";

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

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

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

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

Zeile 2391Zeile 2376
				}
}
$field_select .= "</ul></div>\n";

				}
}
$field_select .= "</ul></div>\n";

			$field_select .= "<div class=\"disabled\"><div class=\"fields_title\">{$lang->disabled}</div><ul id=\"fields_disabled_{$usergroup['gid']}\">\n";

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

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

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

Zeile 2437Zeile 2422
			$form_container->construct_row(array('id' => 'row_'.$usergroup['gid']));

$ids[] = $usergroup['gid'];

			$form_container->construct_row(array('id' => 'row_'.$usergroup['gid']));

$ids[] = $usergroup['gid'];

		}
$form_container->end();

		}
$form_container->end();

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

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

Zeile 2476Zeile 2461
				$form_container->output_cell("{$moderator['img']} <a href=\"index.php?module=user-groups&amp;action=edit&amp;gid={$moderator['id']}\">".htmlspecialchars_uni($moderator['title'])." ({$lang->usergroup} {$moderator['id']})</a>");
$form_container->output_cell("<a href=\"index.php?module=forum-management&amp;action=editmod&amp;mid={$moderator['mid']}\">{$lang->edit}</a>", array("class" => "align_center"));
$form_container->output_cell("<a href=\"index.php?module=forum-management&amp;action=deletemod&amp;id={$moderator['id']}&amp;isgroup=1&amp;fid={$fid}&amp;my_post_key={$mybb->post_code}\" onclick=\"return AdminCP.deleteConfirmation(this, '{$lang->confirm_moderator_deletion}')\">{$lang->delete}</a>", array("class" => "align_center"));

				$form_container->output_cell("{$moderator['img']} <a href=\"index.php?module=user-groups&amp;action=edit&amp;gid={$moderator['id']}\">".htmlspecialchars_uni($moderator['title'])." ({$lang->usergroup} {$moderator['id']})</a>");
$form_container->output_cell("<a href=\"index.php?module=forum-management&amp;action=editmod&amp;mid={$moderator['mid']}\">{$lang->edit}</a>", array("class" => "align_center"));
$form_container->output_cell("<a href=\"index.php?module=forum-management&amp;action=deletemod&amp;id={$moderator['id']}&amp;isgroup=1&amp;fid={$fid}&amp;my_post_key={$mybb->post_code}\" onclick=\"return AdminCP.deleteConfirmation(this, '{$lang->confirm_moderator_deletion}')\">{$lang->delete}</a>", array("class" => "align_center"));

			}

			}

			else
{
$moderator['img'] = "<img src=\"styles/{$page->style}/images/icons/user.gif\" alt=\"{$lang->user}\" title=\"{$lang->user}\" />";

			else
{
$moderator['img'] = "<img src=\"styles/{$page->style}/images/icons/user.gif\" alt=\"{$lang->user}\" title=\"{$lang->user}\" />";

Zeile 2484Zeile 2469
				$form_container->output_cell("<a href=\"index.php?module=forum-management&amp;action=editmod&amp;mid={$moderator['mid']}\">{$lang->edit}</a>", array("class" => "align_center"));
$form_container->output_cell("<a href=\"index.php?module=forum-management&amp;action=deletemod&amp;id={$moderator['id']}&amp;isgroup=0&amp;fid={$fid}&amp;my_post_key={$mybb->post_code}\" onclick=\"return AdminCP.deleteConfirmation(this, '{$lang->confirm_moderator_deletion}')\">{$lang->delete}</a>", array("class" => "align_center"));
}

				$form_container->output_cell("<a href=\"index.php?module=forum-management&amp;action=editmod&amp;mid={$moderator['mid']}\">{$lang->edit}</a>", array("class" => "align_center"));
$form_container->output_cell("<a href=\"index.php?module=forum-management&amp;action=deletemod&amp;id={$moderator['id']}&amp;isgroup=0&amp;fid={$fid}&amp;my_post_key={$mybb->post_code}\" onclick=\"return AdminCP.deleteConfirmation(this, '{$lang->confirm_moderator_deletion}')\">{$lang->delete}</a>", array("class" => "align_center"));
}

			$form_container->construct_row();
}


			$form_container->construct_row();
}


		if($form_container->num_rows() == 0)
{
$form_container->output_cell($lang->no_moderators, array('colspan' => 3));

		if($form_container->num_rows() == 0)
{
$form_container->output_cell($lang->no_moderators, array('colspan' => 3));

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

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

 

// Usergroup Moderator
if(!is_array($usergroups))
{
$usergroups = $groupscache;
}

foreach($usergroups as $group)
{
$modgroups[$group['gid']] = $lang->usergroup." ".$group['gid'].": ".$group['title'];
}

if(!isset($mybb->input['usergroup']))
{
$mybb->input['usergroup'] = '';
}

if(!isset($mybb->input['username']))
{
$mybb->input['username'] = '';
}


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

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

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

// Autocompletion for usergroups
echo '
<script type="text/javascript" src="../jscripts/autocomplete.js?ver=1400"></script>
<script type="text/javascript">
<!--
new autoComplete("usergroup", "../xmlhttp.php?action=get_usergroups", {valueSpan: "usergroup"});
// -->
</script>';


		$form_container->output_row($lang->usergroup." <em>*</em>", $lang->moderator_usergroup_desc, $form->generate_select_box('usergroup', $modgroups, $mybb->input['usergroup'], array('id' => 'usergroup')), 'usergroup');
$form_container->end();











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

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

Zeile 2523Zeile 2521
		$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->end();

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

 


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

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