<? if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$zms		= array();									//-- 스킨 정보
//-- 접속 환경이 모바일일지라도 환경설정에서 모바일 사용 체크가 안 돼 있다면 PC 스킨 적용.
//-- ----------------------------------------------------------------------------------------------
if(ZM_IS_MOBILE)	$zms[skin_dir] = ZM_MOBILE_SKIN_DIR;		//-- 스킨 디렉토리 이름. 공통. 상황에 따라 바뀜
else				$zms[skin_dir] = ZM_PC_SKIN_DIR;
//-------------------------------------------------------------------------------------------------

$zm_current_title	= "";										//-- 현재 메뉴 이름
$zm_current_title_exp = "";										//-- 현재 메뉴 설명

//-- 기타 필요한 변수나 배열들 --------------------------------------------------------------------
$why_report	= array(1=>"영리/홍보성", "음란/선정성", "불법정보", "같은 내용 반복(도배)", "욕설/인신공격", "개인정보노출");	//-- 신고사유

//-- 리뉴열용 스킨을 적용해야 하는지 판단 -----------------------
$renewal_skin	= false;
if(($zm_config[renewal_id] || $zm_config[renewal_ip]) && ($zm_config[renewal_id] == $member[mb_id]) || ($zm_config[renewal_ip] == $_SERVER[REMOTE_ADDR])) 
	$renewal_skin	= true;

//-- 지음빌더 스킨 정보 ---------------------------------------------------------------------------
if($zm_goto) {											//-- 게시판이 포함되지 않은 일반 페이지
	$current_url	= "http://" . $_SERVER[SERVER_NAME];

	$skinno		= substr($zm_goto, 1, strlen($zm_goto)-1);
	$rd_goto	= sql_fetch("select * from $zmb[table_builder_config] where db_recno='$skinno'");
	$ren_goto	= sql_fetch("select * from $zmb[table_builder_renewal_config] where db_org_recno='$skinno'");	//-- 리뉴얼용 스킨

	if(ZM_IS_MOBILE && $rd_goto[db_mobile]){
		$zms[skin_dir]	= ZM_MOBILE_SKIN_DIR;
		$skin_dirname	= ($renewal_skin && $ren_goto[db_m_layout_skin])?$ren_goto[db_m_layout_skin]:$rd_goto[db_m_layout_skin];	//-- 스킨 디렉토리
		$zms[pagename]	= ($renewal_skin && $ren_goto[db_m_pagename])?$ren_goto[db_m_pagename]:$rd_goto[db_m_pagename];		//-- 스킨 파일
		$zms[topmenu]	= ($renewal_skin)?$ren_goto[db_m_topmenu_skin]:$rd_goto[db_m_topmenu_skin];	//-- Top menu스킨 이름
		$zms[bottom]	= ($renewal_skin)?$ren_goto[db_m_bottom_skin]:$rd_goto[db_m_bottom_skin];
	}else{
		$zms[skin_dir]	= ZM_PC_SKIN_DIR;
		$skin_dirname	= ($renewal_skin && $ren_goto[db_layout_skin])?$ren_goto[db_layout_skin]:$rd_goto[db_layout_skin];
		$zms[pagename]	= ($renewal_skin && $ren_goto[db_pagename])?$ren_goto[db_pagename]:$rd_goto[db_pagename];
		$zms[topmenu]	= ($renewal_skin)?$ren_goto[db_topmenu_skin]:$rd_goto[db_topmenu_skin];	//-- Top menu 스킨 이름
		$zms[bottom]	= ($renewal_skin)?$ren_goto[db_bottom_skin]:$rd_goto[db_bottom_skin];
	}
	$zm_current_title	= $rd_goto[db_group_name];										//-- 현재 메뉴 이름
	$zm_current_title_exp = $rd_goto[db_group_explain];										//-- 현재 메뉴 설명

	$zms[layout_path]	= "$g4[path]/".$zms[skin_dir]."/zm.layout/".$skin_dirname;
	if(!file_exists($zms[layout_path]) || !($skin_dirname)) {
		alert("접근하신 페이지가 존재하지 않습니다.", $current_url);
	}
	$zms[link_type]		= $rd_goto[db_link_type];
}else{													//-- index page
	$rd_index	= sql_fetch("select * from $zmb[table_builder_config] where db_level='0'");
	$ren_index	= sql_fetch("select * from $zmb[table_builder_renewal_config] where db_org_recno='$rd_index[db_recno]'");	//-- 리뉴얼용 인덱스 스킨

	if(ZM_IS_MOBILE && $rd_index[db_mobile])	{
		$zms[skin_dir]		= ZM_MOBILE_SKIN_DIR;
		$skin_dirname		= ($renewal_skin && $ren_index[db_m_index_skin])?$ren_index[db_m_index_skin]:$rd_index[db_m_index_skin];
		$zms[index_path]	= "$g4[path]/".$zms[skin_dir]."/zm.index/".$skin_dirname;								//-- INDEX 모바일 스킨 경로
		$zms[topmenu]		= ($renewal_skin)?$ren_index[db_m_topmenu_skin]:$rd_index[db_m_topmenu_skin];
		$zms[bottom]		= ($renewal_skin)?$ren_index[db_m_bottom_skin]:$rd_index[db_m_bottom_skin];
	}else{
		$zms[skin_dir]		= ZM_PC_SKIN_DIR;
		$skin_dirname		= ($renewal_skin && $ren_index[db_index_skin])?$ren_index[db_index_skin]:$rd_index[db_index_skin];
		$zms[index_path]	= "$g4[path]/".$zms[skin_dir]."/zm.index/".$skin_dirname;
		$zms[topmenu]		= ($renewal_skin)?$ren_index[db_topmenu_skin]:$rd_index[db_topmenu_skin];
		$zms[bottom]		= ($renewal_skin)?$ren_index[db_bottom_skin]:$rd_index[db_bottom_skin];
	}
	$zms[link_type]		= $rd_index[db_link_type];
	$zms[title]			= $rd_index[db_group_explain];															//-- 메뉴 설명

	//-- 회원가입 스킨 정보
	$rd_member	= sql_fetch("select * from $zmb[table_builder_config] where db_level='99'");					//-- Level이 99이면 회원가입 스킨 정보
	$ren_member	= sql_fetch("select * from $zmb[table_builder_renewal_config] where db_org_recno='$rd_member[db_recno]'");	//-- 리뉴얼용 회원관리 스킨
	if($rd_member[db_recno] && (stristr($_SERVER[PHP_SELF], "index.php") == false)) {
		//-- 회원가입 스킨 정보가 있다면 index 정보는 무시
		if(ZM_IS_MOBILE && $rd_member[db_mobile]) {
			$zms[skin_dir]		= ZM_MOBILE_SKIN_DIR;
			$skin_dirname		= ($renewal_skin && $ren_member[db_m_layout_skin])?$ren_member[db_m_layout_skin]:$rd_member[db_m_layout_skin];
			$zms[member_path]	= "$g4[path]/".$zms[skin_dir]."/zm.member/".$skin_dirname;						//-- Member 스킨 경로
			$zms[topmenu]		= ($renewal_skin)?$ren_member[db_m_topmenu_skin]:$rd_member[db_m_topmenu_skin];
			$zms[bottom]		= ($renewal_skin)?$ren_member[db_m_bottom_skin]:$rd_member[db_m_bottom_skin];
		}else {
			$zms[skin_dir]		= ZM_PC_SKIN_DIR;
			$skin_dirname		= ($renewal_skin && $ren_member[db_layout_skin])?$ren_member[db_layout_skin]:$rd_member[db_layout_skin];
			$zms[member_path]	= "$g4[path]/".$zms[skin_dir]."/zm.member/".$skin_dirname;
			$zms[topmenu]		= ($renewal_skin)?$ren_member[db_topmenu_skin]:$rd_member[db_topmenu_skin];
			$zms[bottom]		= ($renewal_skin)?$ren_member[db_bottom_skin]:$rd_member[db_bottom_skin];
		}
		$zms[title]			= $rd_member[db_group_explain];														//-- 메뉴 설명
	}
}

//-- 게시판 스킨 정보
if($bo_table) {
	if($tcd) $bo_table	= zm_table_decode($tcd);
	$rd_board	= sql_fetch("select * from $zmb[table_builder_config] where db_board='$bo_table'");
	$ren_board	= sql_fetch("select * from $zmb[table_builder_renewal_config] where db_org_recno='$rd_board[db_recno]'");		//-- 리뉴얼용 스킨
	//-- 레이아웃 정보가 없으면 게시판 Top, Bottom 스킨 제거
	if(!$rd_board[db_layout_skin]) {
		sql_query("update $g4[board_table] set bo_include_head='', bo_include_tail='' where bo_table='$bo_table'");
	}

	if(ZM_IS_MOBILE && $rd_board[db_mobile]){
		$zms[skin_dir]		= ZM_MOBILE_SKIN_DIR;
		$skin_dirname		= ($renewal_skin && $ren_board[db_m_layout_skin])?$ren_board[db_m_layout_skin]:$rd_board[db_m_layout_skin];
		$zms[layout_path]	= "$g4[path]/".$zms[skin_dir]."/zm.layout/".$skin_dirname;							//-- 게시판 레이아웃 스킨
		$zms[topmenu]		= ($renewal_skin)?$ren_board[db_m_topmenu_skin]:$rd_board[db_m_topmenu_skin];
		$zms[bottom]		= ($renewal_skin)?$ren_board[db_m_bottom_skin]:$rd_board[db_m_bottom_skin];
	}else{
		$zms[skin_dir]		= ZM_PC_SKIN_DIR;
		$skin_dirname		= ($renewal_skin && $ren_board[db_layout_skin])?$ren_board[db_layout_skin]:$rd_board[db_layout_skin];
		$zms[layout_path]	= "$g4[path]/".$zms[skin_dir]."/zm.layout/".$skin_dirname;
		$zms[topmenu]		= ($renewal_skin)?$ren_board[db_topmenu_skin]:$rd_board[db_topmenu_skin];
		$zms[bottom]		= ($renewal_skin)?$ren_board[db_bottom_skin]:$rd_board[db_bottom_skin];
	}
	$zms[title]			= $rd_board[db_group_explain];
	$zms[link_type]		= "1";
}

define('ZM_SKIN_DIR', $zms[skin_dir]);

//-- 메뉴 배열 생성 -------------------------------------------------------------------------------
$zm_menu	= array();							//-- 메뉴 배열
function zm_array_menu($level=0, $uprecno) {
	global $zmb, $g4;
	$i		= 0;

	if($uprecno) $s_where	= "and db_up_recno='$uprecno'";
	$rs_group	= sql_query("select * from $zmb[table_builder_config] where db_level='$level' and db_menu_reg='1' $s_where order by db_more asc, db_rank asc, db_recno desc");

	while($rd_group = sql_fetch_array($rs_group)) {
		foreach($rd_group as $key=>$value) {
			$k		= str_replace("db_", "", $key);
			$zm_menu[$i][$k]	= $value;
		}
		$i++;
	}

	return $zm_menu;
}

//-- 현재 선택 된 메뉴의 레코드 번호 또는 게시판 테이블 이름
if($zm_goto) $zm_crrnt_recno	= substr($zm_goto, 1, strlen($zm_goto)-1);
if($bo_table){
	$rd_m_brd_rec	= sql_fetch("select db_recno from $zmb[table_builder_config] where db_board='$bo_table'");
	$zm_crrnt_recno	= $rd_m_brd_rec[db_recno];
}

$tmp_menu1	= zm_array_menu(1, "");								//-- Menu group. level 1
$zm_current_group	= -1;										//-- 현재 선택 된 메뉴 그룹
$zm_menu["$i"]["current"] = 0;	//-- 페이지 접근일 때
for($i = 0; $i < count($tmp_menu1); $i++) {
	foreach($tmp_menu1[$i] as $key1=>$value1) {
		$zm_menu["$i"][$key1]	= $value1;
		if($key1 == "href") $zm_menu["$i"][$key1] = zm_conv_url($tmp_menu1[$i][recno]);
	}
	if($zm_menu["$i"][recno] == $zm_crrnt_recno) {
		$zm_menu["$i"]["current"] = 1;
		$zm_current_group	= $i;								//-- 메뉴 그룹을 직접 선택 했을 때
		$zm_current_title	= $zm_menu[$i][group_name];			//-- 메뉴 이름
		$zm_current_title_exp= $zm_menu[$i][group_explain];		//-- 메뉴 설명
	}

	$tmp_menu2	= zm_array_menu(2, $tmp_menu1[$i][recno]);		//-- Menu level 2
	for($j = 0; $j < count($tmp_menu2); $j++) {
		foreach($tmp_menu2[$j] as $key2=>$value2) {
			$zm_menu["$i"]["$j"][$key2]	= $value2;
			if($key2 == "href") $zm_menu["$i"]["$j"][$key2] = zm_conv_url($tmp_menu2[$j][recno]);
		}
		if((!$zm_menu["$i"]["current"]) && ($zm_menu["$i"]["$j"][recno] == $zm_crrnt_recno)) {
			$zm_menu["$i"]["current"] = 1;
			$zm_menu["$i"]["$j"]["current"] = 1;
			$zm_current_group	= $i;							//-- 서브 메뉴를 선택 했을 때
			$zm_current_title	= $zm_menu[$i][$j][group_name];
			$zm_current_title_exp= $zm_menu[$i][$j][group_explain];
		}

		$tmp_menu3	= zm_array_menu(3, $tmp_menu2[$j][recno]);	//-- Menu level 3
		for($k = 0; $k < count($tmp_menu3); $k++) {
			foreach($tmp_menu3[$k] as $key3=>$value3) {
				$zm_menu["$i"]["$j"]["$k"][$key3]	= $value3;
				if($key3 == "href") $zm_menu["$i"]["$j"]["$k"][$key3] = zm_conv_url($tmp_menu3[$k][recno]);
			}
			if((!$zm_menu["$i"]["$j"]["current"]) && ($zm_menu["$i"]["$j"]["$k"][recno] == $zm_crrnt_recno)) {
				$zm_menu["$i"]["current"] = 1;
				$zm_menu["$i"]["$j"]["$k"]["current"] = 1;
				$zm_current_group	= $i;							//-- 서브 메뉴를 선택 했을 때
				$zm_current_title	= $zm_menu[$i][$j][$k][group_name];
				$zm_current_title_exp= $zm_menu[$i][$j][$k][group_explain];
			}
		} //endfor
	} //endfor
} //endfor

/* --
$zm_menu[][current]		: 현재 선택 된 메뉴 그룹인가? true, false

$zm_menu[0][group_name]		: 첫번째 메뉴그룹의 이름
$zm_menu[0][0][group_name]	: 첫번째 메뉴그룹의 첫번째 서브 메뉴의 이름
$zm_menu[0][1][group_name]	: 첫번째 메뉴그룹의 두번째 서브 메뉴의 이름

$zm_menu[0][0][0][group_name] : 첫번째 메뉴그룹의 첫번째 서브 메뉴의 첫번째 서브 메뉴 이름

echo print_r2($zm_menu); //-- 메뉴 배열 요소 확인
-- */



?>