function apms_chk_auto_menu($s = '', $mobile = '', $type = '') { global $g5, $xp; // Group $ca = array(); $bo = array(); $gr = array(); $pg = array(); $list = array(); $mobile = $mobile ? 'mobile_' : ''; // 모바일 접두어로 전환..ㅠㅠ $device = $mobile ? 'pc' : 'mobile'; $stype = $type ? 3 : 2; $newpost = $g5['cache_newpost_time'] > 0 ? new_post($g5['cache_newpost_time']) : ''; $sql_select = 'gr_id, as_icon, as_mobile_icon, as_menu_show, as_grade, as_equal, as_min, as_max, as_link, as_target'; //그룹 $n = 0; $gr_in = ''; $result = sql_query(" select gr_subject, as_main, as_mobile_main, as_menu, as_multi, gr_order, {$sql_select} from {$g5['group_table']} where gr_device <> '{$device}' and (as_show = '1' or as_show = '{$stype}') order by gr_order ", false); for ($i = 0; $row = sql_fetch_array($result); $i++) { if (!trim($row['gr_id'])) { continue; } $gr[$n] = $row; $gr_in .= $n > 0 ? "," . $row['gr_id'] : $row['gr_id']; $n++; } $gr_cnt = count($gr); if ($gr_in) { $gr_in = "and find_in_set(gr_id,'{$gr_in}')"; } //보드 $n = 0; $result = sql_query("select bo_table, bo_subject, bo_mobile_subject, bo_use_category, bo_category_list, bo_count_write, bo_count_comment, as_order, as_menu, as_line, as_sp, {$sql_select} from {$g5['board_table']} where as_show = '1' and bo_device <> '{$device}' {$gr_in} ", false); for ($i = 0; $row = sql_fetch_array($result); $i++) { if (!trim($row['bo_table'])) { continue; } $row['bo_category_list'] = $row['bo_use_category'] ? $row['bo_category_list'] : ''; $pg[$row['gr_id']][$n] = $row; $n++; } //문서 $result = sql_query("select id, html_id, bo_subject, bo_mobile_subject, as_file, as_html, as_order, as_line, as_menu, as_sp, {$sql_select} from {$g5['apms_page']} where gr_id <> '' and as_show = '1' and as_html <> '3' and bo_subject <> '' and html_id <> '' and bo_device <> '{$device}' {$gr_in} ", false); for ($i = 0; $row = sql_fetch_array($result); $i++) { $pg[$row['gr_id']][$n] = $row; $n++; } //첫번째 배열(0번)은 전체통계로 사용 $z = 1; $count_write = 0; $count_comment = 0; $cnt_new = 0; for ($i = 0; $i < $gr_cnt; $i++) { $gr_new = 0; $gr_count_write = 0; $gr_count_comment = 0; //row로 변경 $row = $gr[$i]; $list[$z]['gr_id'] = $row['gr_id']; $list[$z]['show'] = $row['as_menu_show']; $list[$z]['grade'] = $row['as_grade']; $list[$z]['equal'] = $row['as_equal']; $list[$z]['min'] = $row['as_min']; $list[$z]['max'] = $row['as_max']; $list[$z]['order'] = $row['gr_order']; $list[$z]['sg'] = 1; //게시판과 문서 정리 $bo = $pg[$row['gr_id']]; $bo_cnt = count($bo); if ($bo_cnt > 0) { $bo = apms_sort($bo, 'as_order'); } $n = 0; $is_on = false; for ($k = 0; $k < $bo_cnt; $k++) { //문서아이디 $bo[$k]['html_id'] = isset($bo[$k]['html_id']) ? $bo[$k]['html_id'] : ''; $list[$z]['sub'][$k]['show'] = $bo[$k]['as_menu_show']; $list[$z]['sub'][$k]['grade'] = $bo[$k]['as_grade']; $list[$z]['sub'][$k]['equal'] = $bo[$k]['as_equal']; $list[$z]['sub'][$k]['min'] = $bo[$k]['as_min']; $list[$z]['sub'][$k]['max'] = $bo[$k]['as_max']; $list[$z]['sub'][$k]['gr_id'] = $row['gr_id']; //그룹 아이디 $list[$z]['sub'][$k]['bo_table'] = $bo[$k]['bo_table']; //게시판 아이디 $list[$z]['sub'][$k]['hid'] = $bo[$k]['html_id']; //문서아이디 $list[$z]['sub'][$k]['icon'] = $bo[$k]['as_' . $mobile . 'icon'] ? apms_fa($bo[$k]['as_' . $mobile . 'icon']) : ''; $list[$z]['sub'][$k]['menu'] = $bo[$k]['bo_' . $mobile . 'subject'] ? $bo[$k]['bo_' . $mobile . 'subject'] : $bo[$k]['bo_subject']; $list[$z]['sub'][$k]['target'] = $bo[$k]['as_target'] ? ' target="' . $bo[$k]['as_target'] . '"' : ''; //타켓 $list[$z]['sub'][$k]['line'] = $bo[$k]['as_line'] ? apms_fa($bo[$k]['as_line']) : ''; //라인 $list[$z]['sub'][$k]['sp'] = $bo[$k]['as_sp']; //구분 if ($bo[$k]['html_id']) { $list[$z]['sub'][$k]['is_page'] = true; $list[$z]['sub'][$k]['count'] = 0; //글갯수 $list[$z]['sub'][$k]['comment'] = 0; //댓글갯수 $list[$z]['sub'][$k]['new'] = 'old'; $list[$z]['sub'][$k]['hid'] = $bo[$k]['html_id']; if ($bo[$k]['as_link']) { //링크 $list[$z]['sub'][$k]['href'] = $bo[$k]['as_link']; } else { $list[$z]['sub'][$k]['href'] = $bo[$k]['as_html'] ? G5_BBS_URL . '/page.php?hid=' . urlencode($bo[$k]['html_id']) : G5_URL . '/' . $bo[$k]['as_file']; } if ($bo[$k]['as_menu']) { //서브메뉴 $list[$z]['sub'][$k]['is_sub'] = true; $sql1 = "select * from {$g5['apms_page']} where as_code = '{$bo[$k]['id']}' and as_html = '3' and html_id <> '' and bo_subject <> '' and as_show = '1' order by as_order"; $result1 = sql_query($sql1); for ($j = 0; $row1 = sql_fetch_array($result1); $j++) { $list[$z]['sub'][$k]['sub'][$j]['gr_id'] = $row['gr_id']; $list[$z]['sub'][$k]['sub'][$j]['hid'] = $row1['html_id']; $list[$z]['sub'][$k]['sub'][$j]['icon'] = $row1['as_' . $mobile . 'icon'] ? apms_fa($row1['as_' . $mobile . 'icon']) : ''; $list[$z]['sub'][$k]['sub'][$j]['menu'] = $row1['bo_' . $mobile . 'subject'] ? $row1['bo_' . $mobile . 'subject'] : $row1['bo_subject']; $list[$z]['sub'][$k]['sub'][$j]['href'] = $row1['as_link'] ? $row1['as_link'] : G5_BBS_URL . '/page.php?hid=' . urlencode($row1['html_id']); $list[$z]['sub'][$k]['sub'][$j]['target'] = $row1['as_target'] ? ' target="' . $row1['as_target'] . '"' : ''; //타켓 $list[$z]['sub'][$k]['sub'][$j]['new'] = 'old'; } } else { $list[$z]['sub'][$k]['is_sub'] = false; } } else { $list[$z]['sub'][$k]['is_page'] = false; $list[$z]['sub'][$k]['hid'] = $bo[$k]['bo_table']; $list[$z]['sub'][$k]['count'] = $bo[$k]['bo_count_write']; //글갯수 $list[$z]['sub'][$k]['comment'] = $bo[$k]['bo_count_comment']; //댓글갯수 $list[$z]['sub'][$k]['href'] = $bo[$k]['as_link'] ? $bo[$k]['as_link'] : G5_BBS_URL . '/board.php?bo_table=' . $bo[$k]['bo_table']; //링크 $list[$z]['sub'][$k]['new'] = new_menu($bo[$k]['bo_table'], $newpost); if ($list[$z]['sub'][$k]['new'] == 'new') { $gr_new++; } //새글이 있는지 체크 $list[$z]['sub'][$k]['is_sub'] = false; $is_submenu = !$bo[$k]['as_menu'] || !$mobile && $bo[$k]['as_menu'] == "2" ? true : false; // 분류출력 if ($is_submenu && $bo[$k]['bo_category_list']) { //분류출력 $cate = explode("|", $bo[$k]['bo_category_list']); for ($j = 0; $j < count($cate); $j++) { $list[$z]['sub'][$k]['sub'][$j]['gr_id'] = $row['gr_id']; $list[$z]['sub'][$k]['sub'][$j]['menu'] = $cate[$j]; $list[$z]['sub'][$k]['sub'][$j]['href'] = G5_BBS_URL . '/board.php?bo_table=' . $bo[$k]['bo_table'] . '&sca=' . urlencode($cate[$j]); $list[$z]['sub'][$k]['sub'][$j]['target'] = ''; // 타켓 $list[$z]['sub'][$k]['sub'][$j]['new'] = 'old'; } $ca[$z]['sub'][$k] = $list[$z]['sub'][$k]['sub']; $list[$z]['sub'][$k]['cnt'] = $j; $list[$z]['sub'][$k]['is_sub'] = $j > 0 ? true : false; } } $gr_count_write = $gr_count_write + $bo[$k]['bo_count_write']; $gr_count_comment = $gr_count_comment + $bo[$k]['bo_count_comment']; $n++; } //그룹정리 $list[$z]['gr_id'] = $row['gr_id']; //그룹 아이디 $list[$z]['count'] = $gr_count_write; //글갯수 $list[$z]['comment'] = $gr_count_comment; //댓글갯수 $list[$z]['cnt'] = $n; //게시판 갯수 if ($list[$z]['cnt'] == 1 && $row['as_menu']) { //게시판이 하나뿐일 때 $list[$z]['icon'] = $list[$z]['sub'][0]['icon']; $list[$z]['menu'] = $list[$z]['sub'][0]['menu']; $list[$z]['href'] = $list[$z]['sub'][0]['href']; $list[$z]['new'] = $list[$z]['sub'][0]['new']; $list[$z]['target'] = $list[$z]['sub'][0]['target']; // 타켓 $list[$z]['cnt'] = $list[$z]['sub'][0]['cnt']; $list[$z]['sub'] = $list[$z]['sub'][0]['sub']; $list[$z]['one'] = 1; } else { $list[$z]['cnt'] = $list[$z]['cnt'] == 1 ? 2 : $list[$z]['cnt']; $list[$z]['icon'] = $row['as_' . $mobile . 'icon'] ? apms_fa($row['as_' . $mobile . 'icon']) : ''; $list[$z]['menu'] = $row['gr_subject']; if ($row['as_link']) { $list[$z]['href'] = $row['as_link']; $list[$z]['target'] = $row['as_target'] ? ' target="' . $row['as_target'] . '"' : ''; // 타켓 } else { if ($row['as_' . $mobile . 'main']) { $list[$z]['href'] = G5_BBS_URL . '/main.php?gid=' . $row['gr_id']; $list[$z]['target'] = $row['as_target'] ? ' target="' . $row['as_target'] . '"' : ''; // 타켓 } else { $list[$z]['href'] = $list[$z]['sub'][0]['href']; // 링크가 없으면 첫번째 게시판 링크로 이동 $list[$z]['target'] = $list[$z]['sub'][0]['target']; // 타켓 } } $list[$z]['new'] = $gr_new > 0 ? 'new' : 'old'; //새글이 있는지 체크 $list[$z]['multi'] = $row['as_multi']; } $list[$z]['is_sub'] = $list[$z]['cnt'] > 1 ? true : false; if ($list[$z]['new'] == "new") { $cnt_new++; } $count_write = $count_write + $gr_count_write; $count_comment = $count_comment + $gr_count_comment; $z++; unset($bo); unset($ca); } // Shop if (IS_YC) { $new = array(); $new = apms_chk_new_item(); $sql_select = 'ca_id, ca_name, as_icon, as_mobile_icon, as_menu, as_menu_show, as_grade, as_equal, as_min, as_max, as_link, as_target, as_line, as_sp, as_multi, as_order'; // 1단계 분류 판매 가능한 것만 $result = sql_query(" select {$sql_select} from {$g5['g5_shop_category_table']} where length(ca_id) = '2' and ca_use = '1' and (as_show = '1' or as_show = '{$stype}') order by ca_order, ca_id ", false); $cnt_new = 0; for ($i = 0; $row = sql_fetch_array($result); $i++) { $list[$z]['show'] = $row['as_menu_show']; $list[$z]['grade'] = $row['as_grade']; $list[$z]['equal'] = $row['as_equal']; $list[$z]['min'] = $row['as_min']; $list[$z]['max'] = $row['as_max']; $list[$z]['multi'] = $row['as_multi']; $list[$z]['order'] = $row['as_order']; $is_on = false; // 2단계 분류 판매 가능한 것만 $j = 0; $is_submenu = !$row['as_menu'] || !$mobile && $row['as_menu'] == "2" ? true : false; // 2차 출력 if ($is_submenu) { $result2 = sql_query(" select {$sql_select} from {$g5['g5_shop_category_table']} where LENGTH(ca_id) = '4' and SUBSTRING(ca_id,1,2) = '{$row['ca_id']}' and ca_use = '1' and as_show <> '0' order by ca_order, ca_id ", false); for ($j = 0; $row2 = sql_fetch_array($result2); $j++) { $list[$z]['sub'][$j]['show'] = $row2['as_menu_show']; $list[$z]['sub'][$j]['grade'] = $row2['as_grade']; $list[$z]['sub'][$j]['equal'] = $row2['as_equal']; $list[$z]['sub'][$j]['min'] = $row2['as_min']; $list[$z]['sub'][$j]['max'] = $row2['as_max']; $list[$z]['sub'][$j]['gr_id'] = $row['ca_id']; $list[$z]['sub'][$j]['hid'] = $row2['ca_id']; $list[$z]['sub'][$j]['icon'] = $row2['as_' . $mobile . 'icon'] ? apms_fa($row2['as_' . $mobile . 'icon']) : ''; $list[$z]['sub'][$j]['menu'] = $row2['ca_name']; $list[$z]['sub'][$j]['target'] = $row2['as_target'] ? ' target="' . $row2['as_target'] . '"' : ''; //타켓 $list[$z]['sub'][$j]['line'] = $row2['as_line'] ? apms_fa($row2['as_line']) : ''; //라인 $list[$z]['sub'][$j]['sp'] = $row2['as_sp']; //구분 $list[$z]['sub'][$j]['is_page'] = false; $list[$z]['sub'][$j]['href'] = $row2['as_link'] ? $row2['as_link'] : G5_SHOP_URL . '/list.php?ca_id=' . $row2['ca_id']; //링크 $c = $row2['ca_id']; $list[$z]['sub'][$j]['new'] = isset($new[$c]) && $new[$c] ? 'new' : 'old'; //상품수 $count2 = sql_fetch(" select count(*) as cnt from {$g5['g5_shop_item_table']} where (ca_id like '{$c}%' or ca_id2 like '{$c}%' or ca_id3 like '{$c}%') and it_use = '1' "); $list[$z]['sub'][$j]['count'] = $count2['cnt']; $k = 0; $is_submenu2 = !$row2['as_menu'] || !$mobile && $row2['as_menu'] == "2" ? true : false; // 3차 출력 if ($is_submenu2) { // 3단계 분류 판매 가능한 것만 $result3 = sql_query(" select {$sql_select} from {$g5['g5_shop_category_table']} where LENGTH(ca_id) = '6' and SUBSTRING(ca_id,1,4) = '{$row2['ca_id']}' and ca_use = '1' and as_show <> '0' order by ca_order, ca_id ", false); for ($k = 0; $row3 = sql_fetch_array($result3); $k++) { $list[$z]['sub'][$j]['sub'][$k]['show'] = $row3['as_menu_show']; $list[$z]['sub'][$j]['sub'][$k]['grade'] = $row3['as_grade']; $list[$z]['sub'][$j]['sub'][$k]['equal'] = $row3['as_equal']; $list[$z]['sub'][$j]['sub'][$k]['min'] = $row3['as_min']; $list[$z]['sub'][$j]['sub'][$k]['max'] = $row3['as_max']; $list[$z]['sub'][$j]['sub'][$k]['ca_id'] = $row3['ca_id']; $list[$z]['sub'][$j]['sub'][$k]['icon'] = $row3['as_' . $mobile . 'icon'] ? apms_fa($row3['as_' . $mobile . 'icon']) : ''; $list[$z]['sub'][$j]['sub'][$k]['menu'] = $row3['ca_name']; $list[$z]['sub'][$j]['sub'][$k]['href'] = $row3['as_link'] ? $row3['as_link'] : G5_SHOP_URL . '/list.php?ca_id=' . $row3['ca_id']; //링크 $list[$z]['sub'][$j]['sub'][$k]['target'] = $row3['as_target'] ? ' target="' . $row3['as_target'] . '"' : ''; // 타켓 $list[$z]['sub'][$j]['sub'][$k]['line'] = $row3['as_line'] ? apms_fa($row3['as_line']) : ''; //라인 $list[$z]['sub'][$j]['sub'][$k]['sp'] = $row3['as_sp']; //구분 $c = $row3['ca_id']; $list[$z]['sub'][$j]['sub'][$k]['new'] = isset($new[$c]) && $new[$c] ? 'new' : 'old'; //상품수 $count3 = sql_fetch(" select count(*) as cnt from {$g5['g5_shop_item_table']} where (ca_id like '{$c}%' or ca_id2 like '{$c}%' or ca_id3 like '{$c}%') and it_use = '1' "); $list[$z]['sub'][$j]['sub'][$k]['count'] = $count3['cnt']; } } $list[$z]['sub'][$j]['is_sub'] = $k > 0 ? true : false; } } // 1단계 분류 $list[$z]['gr_id'] = $row['ca_id']; //그룹 아이디 $list[$z]['is_sub'] = $j > 0 ? true : false; $c = $row['ca_id']; $list[$z]['new'] = isset($new[$c]) && $new[$c] ? 'new' : 'old'; $list[$z]['icon'] = $row['as_' . $mobile . 'icon'] ? apms_fa($row['as_' . $mobile . 'icon']) : ''; $list[$z]['menu'] = $row['ca_name']; $list[$z]['href'] = $row['as_link'] ? $row['as_link'] : G5_SHOP_URL . '/list.php?ca_id=' . $row['ca_id']; //링크 $list[$z]['target'] = $row['as_target'] ? ' target="' . $row['as_target'] . '"' : ''; // 타켓 //상품수 $count1 = sql_fetch(" select count(*) as cnt from {$g5['g5_shop_item_table']} where it_use = '1' and (ca_id like '{$c}%' or ca_id2 like '{$c}%' or ca_id3 like '{$c}%') "); $list[$z]['count'] = $count1['cnt']; if ($list[$z]['new'] == "new") { $cnt_new++; } $z++; } } //재정렬 $m = array(); $m = apms_sort($list, 'order'); unset($list); //전체 통계 $tot = array(); $tot['count_write'] = $count_write; //글갯수 $tot['count_comment'] = $count_comment; //댓글갯수 @array_unshift($m, $tot); if ($s) { $m = serialize($m); } return $m; }
goto_url('./apms.groupmenu.php?gr_id=' . $gr_id); } auth_check($auth[$sub_menu], 'r'); //읽기 권한 include_once G5_LIB_PATH . '/apms.widget.lib.php'; $result2 = sql_query("select * from {$g5['board_table']} where gr_id = '{$gr_id}' "); for ($k = 0; $row2 = sql_fetch_array($result2); $k++) { $bo[$k] = $row2; } $result3 = sql_query("select * from {$g5['apms_page']} where gr_id = '{$gr_id}' and as_html <> '3'"); for ($k = $k; $row3 = sql_fetch_array($result3); $k++) { $bo[$k] = $row3; } $bo_cnt = count($bo); if ($bo_cnt > 0) { $bo = apms_sort($bo, 'as_order'); } $skinlist = array(); $headlist = array(); $skinlist = get_skin_dir('page', G5_SKIN_PATH); $headlist = get_skin_dir('header', G5_SKIN_PATH); include_once G5_PATH . '/head.sub.php'; ?> <script src="<?php echo G5_ADMIN_URL; ?> /admin.js"></script> <script src="<?php echo G5_ADMIN_URL; ?> /apms_admin/apms.admin.js"></script>