\    
#
#-----[ SQL ]------------------------------------------
#
CREATE TABLE `phpbb_admin_nav_module` (
  `user_id` mediumint(8) NOT NULL default '0',
  `modulname` varchar(200) NOT NULL default ''
) ENGINE=MyISAM;

#
#-----[  ]------------------------------------------
#
admin/index.php

#
#-----[  ]------------------------------------------
#
	$dir = @opendir(".");

#
#-----[   ]------------------------------------------
#
	$admin_id = $userdata['user_id'];

	$open_close_modul = ( $HTTP_POST_VARS['oc'] ) ? $HTTP_POST_VARS['oc'] : $HTTP_GET_VARS['oc'];
	$open_close = ( $HTTP_POST_VARS['open_close'] ) ? $HTTP_POST_VARS['open_close'] : $HTTP_GET_VARS['open_close']; 

	if ( $open_close_modul != '') 
	{
		if ( $open_close == 1 )
		{
			$sql = "INSERT INTO " . ADMIN_MODULE_TABLE . " (user_id, modulname) VALUES ($admin_id, '$open_close_modul')";
			if(!$result = $db->sql_query($sql))
			{
				message_die(GENERAL_ERROR, 'Could not set open status', '', __LINE__, __FILE__, $sql);
			}
		}
		else
		{
			$sql = "DELETE FROM " . ADMIN_MODULE_TABLE . "
				WHERE user_id = $admin_id
				AND modulname = '$open_close_modul'";
			if(!$result = $db->sql_query($sql))
			{
				message_die(GENERAL_ERROR, 'Could not set close status', '', __LINE__, __FILE__, $sql);
			}
		}
	}

#
#-----[  ]------------------------------------------
#
while( list($cat, $action_array) = each($module) ) 
{ 
	$cat = ( !empty($lang[$cat]) ) ? $lang[$cat] : preg_replace("/_/", " ", $cat); 

	$template->assign_block_vars("catrow", array( 
		"ADMIN_CATEGORY" => $cat) 
	); 

	ksort($action_array); 

	$row_count = 0; 
	while( list($action, $file)   = each($action_array) ) 
	{ 
		$row_color = '';

		$row_class = ( !($row_count%2) ) ? 'row_easy' : 'row_hard'; 

		$action = ( !empty($lang[$action]) ) ? $lang[$action] : preg_replace("/_/", " ", $action); 

		$template->assign_block_vars("catrow.modulerow", array( 
			"ROW_COLOR" => "#" . $row_color, 
			"ROW_CLASS" => $row_class, 

			"ADMIN_MODULE" => $action, 
			"U_ADMIN_MODULE" => append_sid($file)) 
		); 
		$row_count++; 
	} 
} 

#
#-----[  ]------------------------------------------
#

	$admin_nav_modul = array();

	$sql = "SELECT modulname FROM " . ADMIN_MODULE_TABLE . "
		WHERE user_id = " . $userdata['user_id'] . "
		ORDER BY modulname";
	if($result = @$db->sql_query($sql))
	{
		while ( $row = $db->sql_fetchrow($result) )
		{
			$admin_nav_modul[] = $row['modulname'];
		}
	}
	
	while( list($cat, $action_array) = each($module) )
	{
		$admin_category_title = $cat; 

		$cat = ( !empty($lang[$cat]) ) ? $lang[$cat] : preg_replace("/_/", " ", $cat);

		if ( in_array($admin_category_title, $admin_nav_modul) )
		{
			$sign = '-';
			$oc_status = 0;
		}
		else
		{
			$sign = '+';
			$oc_status = 1;
		}

		$admin_category = '<a href="'.append_sid("index.$phpEx?pane=left&amp;oc=$admin_category_title&amp;open_close=$oc_status").'" class="mainmenu">'.$sign.'&nbsp;&nbsp;'.$cat.'</a>'; 

		$template->assign_block_vars("catrow", array( 
			'ADMIN_CATEGORY' => $admin_category 
		)); 

		ksort($action_array);

		$row_count = 0;

		if ( $oc_status == 0 )
		{
			while( list($action, $file) = each($action_array) )
			{
				$row_color = '';

			        $row_class = ( !($row_count%2) ) ? 'row_easy' : 'row_hard';

				$action = ( !empty($lang[$action]) ) ? $lang[$action] : preg_replace("/_/", " ", $action);

				$template->assign_block_vars("catrow.modulerow", array(
					"ROW_COLOR" => "#" . $row_color,
					"ROW_CLASS" => $row_class,

					"ADMIN_MODULE" => $action,
					"U_ADMIN_MODULE" => append_sid($file))
				);
				$row_count++;
			}
		}
	}

#
#-----[  ]------------------------------------------
#
includes/constants.php

#
#-----[  ]------------------------------------------
#
?>

#
#-----[   ]------------------------------------------
#
define('ADMIN_MODULE_TABLE', $table_prefix.'admin_nav_module');

# 
#-----[  ]------------------------------------------ 
# 
templates/admin/index_navigate.tpl 

# 
#-----[  ]------------------------------------------ 
# 
<!-- BEGIN catrow -->

# 
#-----[   ]------------------------------------------ 
# 
<form name=open_close method=get action=append_sid("index.$phpEx?pane=left&amp;open_close={OPEN_CLOSE}")> 

# 
#-----[  ]------------------------------------------ 
# 
{catrow.ADMIN_CATEGORY} 

# 
#-----[   ]------------------------------------------ 
# 
<input type=hidden name=open_close value={OPEN_CLOSE}> 

# 
#-----[  ]------------------------------------------ 
# 
     <!-- END catrow -->

# 
#-----[   ]------------------------------------------ 
# 
</form> 


#
#-----[    ]------------------------------------------
#
#  =)               bbfiles.ru     phpbb-wap