Merge branch 'master' of github.com:gnuboard/g5

This commit is contained in:
whitedot
2014-03-14 09:25:19 +09:00
8 changed files with 614 additions and 54 deletions

View File

@ -3,6 +3,7 @@ $menu['menu100'] = array (
array('100000', '환경설정', G5_ADMIN_URL.'/config_form.php', 'config'),
array('', '기본환경설정', G5_ADMIN_URL.'/config_form.php', 'cf_basic'),
array('', '관리권한설정', G5_ADMIN_URL.'/auth_list.php', 'cf_auth'),
array('', '메뉴설정', G5_ADMIN_URL.'/menu_list.php', 'cf_menu'),
array('100300', '메일 테스트', G5_ADMIN_URL.'/sendmail_test.php', 'cf_mailtest'),
array('100310', '팝업레이어관리', G5_ADMIN_URL.'/newwinlist.php', 'scf_poplayer'),
//array('100400', '버전정보', G5_ADMIN_URL.'/version.php', 'cf_version'),

158
adm/menu_form.php Normal file
View File

@ -0,0 +1,158 @@
<?php
$sub_menu = "100290";
include_once('./_common.php');
if ($is_admin != 'super')
alert_close('최고관리자만 접근 가능합니다.');
$g5['title'] = '메뉴 추가';
include_once(G5_PATH.'/head.sub.php');
// 코드
if($new == 'new' || $code == 0) {
$code = base_convert(substr($code,0, 2), 36, 10);
$code += 36;
$code = base_convert($code, 10, 36);
}
?>
<div class="new_win">
<h1><?php echo $g5['title']; ?></h1>
<form name="fmenuform" id="fmenuform">
<div class="tbl_frm01 tbl_wrap">
<table>
<caption><?php echo $g5['title']; ?></caption>
<tbody>
<tr>
<th scope="col"><label for="me_type">선택</label></th>
<td>
<select name="me_type" id="me_type">
<option value="">직접입력</option>
<option value="group">게시판그룹</option>
<option value="board">게시판</option>
<option value="content">내용관리</option>
</select>
</td>
</tr>
<tr>
<td colspan="2"><div id="ajax_result"></div></td>
</tr>
</tbody>
</table>
</div>
<div class="btn_confirm01 btn_confirm">
<button type="button" class="btn_cancel" onclick="window.close();">창닫기</button>
</div>
</form>
</div>
<script>
$(function() {
$("#ajax_result").load(
"./menu_form_search.php"
);
$("#me_type").on("change", function() {
var type = $(this).val();
$("#ajax_result").empty().load(
"./menu_form_search.php",
{ type : type }
);
});
$("#add_manual").live("click", function() {
var me_name = $.trim($("#me_name").val());
var me_link = $.trim($("#me_link").val());
add_menu_list(me_name, me_link, "<?php echo $code; ?>");
});
$(".add_select").live("click", function() {
var me_name = $.trim($(this).siblings("input[name='subject[]']").val());
var me_link = $.trim($(this).siblings("input[name='link[]']").val());
add_menu_list(me_name, me_link, "<?php echo $code; ?>");
});
});
function add_menu_list(name, link, code)
{
var $menulist = $("#menulist", opener.document);
var ms = new Date().getTime();
var sub_menu_class = "";
var list = "<tr class=\"menu_list menu_group_<?php echo $code; ?>\">\n";
list += "<td"+sub_menu_class+">\n";
list += "<label for=\"me_name_"+ms+"\" class=\"sound_only\">메뉴</label>\n";
list += "<input type=\"hidden\" name=\"code[]\" value=\"<?php echo $code; ?>\">\n";
list += "<input type=\"text\" name=\"me_name[]\" value=\""+name+"\" id=\"me_name_"+ms+"\" required class=\"required frm_input\">\n";
list += "</td>\n";
list += "<td>\n";
list += "<label for=\"me_link_"+ms+"\" class=\"sound_only\">링크</label>\n";
list += "<input type=\"text\" name=\"me_link[]\" value=\""+link+"\" id=\"me_link_"+ms+"\" required class=\"required frm_input\">\n";
list += "</td>\n";
list += "<td>\n";
list += "<label for=\"me_target_"+ms+"\" class=\"sound_only\">새창</label>\n";
list += "<select name=\"me_target[]\" id=\"me_target_"+ms+"\">\n";
list += "<option value=\"self\">사용안함</option>\n";
list += "<option value=\"blank\">사용함</option>\n";
list += "</select>\n";
list += "</td>\n";
list += "<td>\n";
list += "<label for=\"me_order_"+ms+"\" class=\"sound_only\">순서</label>\n";
list += "<input type=\"text\" name=\"me_order[]\" value=\"0\" id=\"me_order_"+ms+"\" required class=\"required frm_input\" size=\"5\">\n";
list += "</td>\n";
list += "<td>\n";
list += "<label for=\"me_use_"+ms+"\" class=\"sound_only\">PC사용</label>\n";
list += "<select name=\"me_use[]\" id=\"me_use_"+ms+"\">\n";
list += "<option value=\"1\">사용함</option>\n";
list += "<option value=\"0\">사용안함</option>\n";
list += "</select>\n";
list += "</td>\n";
list += "<td>\n";
list += "<label for=\"me_mobile_use_"+ms+"\" class=\"sound_only\">모바일사용</label>\n";
list += "<select name=\"me_mobile_use[]\" id=\"me_mobile_use_"+ms+"\">\n";
list += "<option value=\"1\">사용함</option>\n";
list += "<option value=\"0\">사용안함</option>\n";
list += "</select>\n";
list += "</td>\n";
list += "<td>\n";
<?php if($new == 'new') { ?>
list += "<button type=\"button\" class=\"btn_add_submenu\">추가</button>\n";
<?php } ?>
list += "<button type=\"button\" class=\"btn_del_menu\">삭제</button>\n";
list += "</td>\n";
list += "</tr>\n";
var $menu_last = null;
if(code)
$menu_last = $menulist.find("tr.menu_group_"+code+":last");
else
$menu_last = $menulist.find("tr.menu_list:last");
if($menu_last.size() > 0) {
$menu_last.after(list);
} else {
$("#menulist", opener.document).find("#empty_menu_list").remove()
.end().find("table tbody").append(list);
}
$("#menulist", opener.document).find("tr.menu_list").each(function(index) {
$(this).removeClass("bg0 bg1")
.addClass("bg"+(index % 2));
});
window.close();
}
</script>
<?php
include_once(G5_PATH.'/tail.sub.php');
?>

75
adm/menu_form_search.php Normal file
View File

@ -0,0 +1,75 @@
<?php
include_once('./_common.php');
if ($is_admin != 'super')
die('최고관리자만 접근 가능합니다.');
switch($type) {
case 'group':
$sql = " select gr_id as id, gr_subject as subject
from {$g5['group_table']}
order by gr_order, gr_id ";
break;
case 'board':
$sql = " select bo_table as id, bo_subject as subject
from {$g5['board_table']}
order by bo_order, bo_table ";
break;
case 'content':
$sql = " select co_id as id, co_subject as subject
from {$g5['content_table']}
order by co_id ";
break;
default:
$sql = '';
break;
}
if($sql) {
$result = sql_query($sql);
for($i=0; $row=sql_fetch_array($result); $i++) {
if($i == 0) echo '<ul>'.PHP_EOL;
switch($type) {
case 'group':
$link = G5_BBS_URL.'/group.php?gr_id='.$row['id'];
break;
case 'board':
$link = G5_BBS_URL.'/board.php?bo_table='.$row['id'];
break;
case 'content':
$link = G5_BBS_URL.'/content.php?co_id='.$row['id'];
break;
default:
$link = '';
break;
}
echo '<li>'.PHP_EOL;
echo '<input type="hidden" name="subject[]" value="'.preg_replace('/[\'\"]/', '', $row['subject']).'">'.PHP_EOL;
echo '<input type="hidden" name="link[]" value="'.$link.'">'.PHP_EOL;
echo '<span>'.$row['subject'].'</span>';
echo '<button type="button" class="add_select">선택</button>'.PHP_EOL;
echo '</li>'.PHP_EOL;
}
} else { ?>
<table>
<tbody>
<tr>
<th><label for="me_name">메뉴</label></th>
<td><input type="text" name="me_name" id="me_name" class="frm_input"></td>
</tr>
<tr>
<th><label for="me_link">링크</label></th>
<td>
<input type="text" name="me_link" id="me_link" class="frm_input"><br>
링크는 http://를 포함해서 입력해 주세요.
</td>
</tr>
<tr>
<td colspan="2"><button type="button" id="add_manual">추가</button>
</tr>
</tbody>
</table>
<?php } ?>

197
adm/menu_list.php Normal file
View File

@ -0,0 +1,197 @@
<?php
$sub_menu = "100290";
include_once('./_common.php');
if ($is_admin != 'super')
alert('최고관리자만 접근 가능합니다.');
$token = get_token();
// 메뉴테이블 생성
if( !isset($g5['menu_table']) ){
die('<meta charset="utf-8">dbconfig.php 파일에 <strong>$g5[\'menu_table\'] = G5_TABLE_PREFIX.\'menu\';</strong> 를 추가해 주세요.');
}
if(!sql_query(" DESCRIBE {$g5['menu_table']} ", false)) {
sql_query(" CREATE TABLE IF NOT EXISTS `{$g5['menu_table']}` (
`me_id` int(11) NOT NULL AUTO_INCREMENT,
`me_code` varchar(255) NOT NULL DEFAULT '',
`me_name` varchar(255) NOT NULL DEFAULT '',
`me_link` varchar(255) NOT NULL DEFAULT '',
`me_target` varchar(255) NOT NULL DEFAULT '0',
`me_order` int(11) NOT NULL DEFAULT '0',
`me_use` tinyint(4) NOT NULL DEFAULT '0',
`me_mobile_use` tinyint(4) NOT NULL DEFAULT '0',
PRIMARY KEY (`me_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ", true);
}
$sql = " select * from {$g5['menu_table']} order by me_id ";
$result = sql_query($sql);
$g5['title'] = "메뉴설정";
include_once('./admin.head.php');
$colspan = 7;
?>
<form name="fmenulist" id="fmenulist" method="post" action="./menu_list_update.php" onsubmit="return fmenulist_submit(this);">
<input type="hidden" name="token" value="<?php echo $token ?>">
<div>
<button type="button" onclick="return add_menu();">메뉴추가</button>
</div>
<div id="menulist" class="tbl_head01 tbl_wrap">
<table>
<caption><?php echo $g5['title']; ?> 목록</caption>
<thead>
<tr>
<th scope="col">메뉴</th>
<th scope="col">링크</th>
<th scope="col">새창</th>
<th scope="col">순서</th>
<th scope="col">PC사용</th>
<th scope="col">모바일사용</th>
<th scope="col">관리</th>
</tr>
</thead>
<tbody>
<?php
for ($i=0; $row=sql_fetch_array($result); $i++)
{
$bg = 'bg'.($i%2);
$sub_menu_class = '';
if(strlen($row['me_code']) == 4)
$sub_menu_class = ' class="sub_menu_class"';
?>
<tr class="<?php echo $bg; ?> menu_list menu_group_<?php echo substr($row['me_code'], 0, 2); ?>">
<td<?php echo $sub_menu_class; ?>>
<input type="hidden" name="code[]" value="<?php echo substr($row['me_code'], 0, 2) ?>">
<label for="me_name_<?php echo $i; ?>" class="sound_only">메뉴</label>
<input type="text" name="me_name[]" value="<?php echo $row['me_name'] ?>" id="me_name_<?php echo $i; ?>" required class="required frm_input">
</td>
<td>
<label for="me_link_<?php echo $i; ?>" class="sound_only">링크</label>
<input type="text" name="me_link[]" value="<?php echo $row['me_link'] ?>" id="me_link_<?php echo $i; ?>" required class="required frm_input">
</td>
<td>
<label for="me_target_<?php echo $i; ?>" class="sound_only">새창</label>
<select name="me_target[]" id="me_target_<?php echo $i; ?>">
<option value="self"<?php echo get_selected($row['me_target'], 'self', true); ?>>사용안함</option>
<option value="blank"<?php echo get_selected($row['me_target'], 'blank', true); ?>>사용함</option>
</select>
</td>
<td>
<label for="me_order_<?php echo $i; ?>" class="sound_only">순서</label>
<input type="text" name="me_order[]" value="<?php echo $row['me_order'] ?>" id="me_order_<?php echo $i; ?>" class="frm_input" size="5">
</td>
<td>
<label for="me_use_<?php echo $i; ?>" class="sound_only">PC사용</label>
<select name="me_use[]" id="me_use_<?php echo $i; ?>">
<option value="1"<?php echo get_selected($row['me_use'], '1', true); ?>>사용함</option>
<option value="0"<?php echo get_selected($row['me_use'], '0', true); ?>>사용안함</option>
</select>
</td>
<td>
<label for="me_mobile_use_<?php echo $i; ?>" class="sound_only">모바일사용</label>
<select name="me_mobile_use[]" id="me_mobile_use_<?php echo $i; ?>">
<option value="1"<?php echo get_selected($row['me_mobile_use'], '1', true); ?>>사용함</option>
<option value="0"<?php echo get_selected($row['me_mobile_use'], '0', true); ?>>사용안함</option>
</select>
</td>
<td>
<?php if(strlen($row['me_code']) == 2) { ?>
<button type="button" class="btn_add_submenu">추가</button>
<?php } ?>
<button type="button" class="btn_del_menu">삭제</button>
</td>
</tr>
<?php
}
if ($i==0)
echo '<tr id="empty_menu_list"><td colspan="'.$colspan.'" class="empty_table">자료가 없습니다.</td></tr>';
?>
</tbody>
</table>
</div>
<div class="btn_list01 btn_list">
<input type="submit" name="act_button" value="확인">
</div>
</form>
<script>
$(function() {
$(".btn_add_submenu").live("click", function() {
var code = $(this).closest("tr").find("input[name='code[]']").val().substr(0, 2);
add_submenu(code);
});
$(".btn_del_menu").live("click", function() {
if(!confirm("메뉴를 삭제하시겠습니까?"))
return false;
var $tr = $(this).closest("tr");
if($tr.find("td.sub_menu_class").size() > 0) {
$tr.remove();
} else {
var code = $(this).closest("tr").find("input[name='code[]']").val().substr(0, 2);
$("tr.menu_group_"+code).remove();
}
if($("#menulist tr.menu_list").size() < 1) {
var list = "<tr id=\"empty_menu_list\"><td colspan=\"<?php echo $colspan; ?>\" class=\"empty_table\">자료가 없습니다.</td></tr>\n";
$("#menulist table tbody").append(list);
} else {
$("#menulist tr.menu_list").each(function(index) {
$(this).removeClass("bg0 bg1")
.addClass("bg"+(index % 2));
});
}
});
});
function add_menu()
{
var max_code = base_convert(0, 10, 36);
$("#menulist tr.menu_list").each(function() {
var me_code = $(this).find("input[name='code[]']").val().substr(0, 2);
if(max_code < me_code)
max_code = me_code;
});
var url = "./menu_form.php?code="+max_code+"&new=new";
window.open(url, "add_menu", "left=100,top=100,width=550,height=650");
return false;
}
function add_submenu(code)
{
var url = "./menu_form.php?code="+code;
window.open(url, "add_menu", "left=100,top=100,width=550,height=650");
return false;
}
function base_convert(number, frombase, tobase) {
// discuss at: http://phpjs.org/functions/base_convert/
// original by: Philippe Baumann
// improved by: Rafał Kukawski (http://blog.kukawski.pl)
// example 1: base_convert('A37334', 16, 2);
// returns 1: '101000110111001100110100'
return parseInt(number + '', frombase | 0)
.toString(tobase | 0);
}
function fmenulist_submit(f)
{
return true;
}
</script>
<?php
include_once ('./admin.tail.php');
?>

70
adm/menu_list_update.php Normal file
View File

@ -0,0 +1,70 @@
<?php
$sub_menu = "100290";
include_once('./_common.php');
check_demo();
if ($is_admin != 'super')
alert('최고관리자만 접근 가능합니다.');
check_token();
// 이전 메뉴정보 삭제
$sql = " delete from {$g5['menu_table']} ";
sql_query($sql);
$group_code = null;
$primary_code = null;
$count = count($_POST['code']);
for ($i=0; $i<$count; $i++)
{
$_POST = array_map_deep('trim', $_POST);
$code = $_POST['code'][$i];
$me_name = $_POST['me_name'][$i];
$me_link = $_POST['me_link'][$i];
if(!$code || !$me_name || !$me_link)
continue;
$sub_code = '';
if($group_code == $code) {
$sql = " select MAX(SUBSTRING(me_code,3,2)) as max_me_code
from {$g5['menu_table']}
where SUBSTRING(me_code,1,2) = '$primary_code' ";
$row = sql_fetch($sql);
$sub_code = base_convert($row['max_me_code'], 36, 10);
$sub_code += 36;
$sub_code = base_convert($sub_code, 10, 36);
$me_code = $primary_code.$sub_code;
} else {
$sql = " select MAX(SUBSTRING(me_code,1,2)) as max_me_code
from {$g5['menu_table']}
where LENGTH(me_code) = '2' ";
$row = sql_fetch($sql);
$me_code = base_convert($row['max_me_code'], 36, 10);
$me_code += 36;
$me_code = base_convert($me_code, 10, 36);
$group_code = $code;
$primary_code = $me_code;
}
// 메뉴 등록
$sql = " insert into {$g5['menu_table']}
set me_code = '$me_code',
me_name = '$me_name',
me_link = '$me_link',
me_target = '{$_POST['me_target'][$i]}',
me_order = '{$_POST['me_order'][$i]}',
me_use = '{$_POST['me_use'][$i]}',
me_mobile_use = '{$_POST['me_mobile_use'][$i]}' ";
sql_query($sql);
}
goto_url('./menu_list.php');
?>

View File

@ -112,26 +112,44 @@ if (G5_IS_MOBILE) {
<h2>메인메뉴</h2>
<ul id="gnb_1dul">
<?php
$sql = " select * from {$g5['group_table']} where gr_show_menu = '1' and gr_device <> 'mobile' order by gr_order ";
$sql = " select *
from {$g5['menu_table']}
where me_use = '1'
and length(me_code) = '2'
order by me_order, me_id ";
$result = sql_query($sql);
$gnb_zindex = 999; // gnb_1dli z-index 값 설정용
for ($gi=0; $row=sql_fetch_array($result); $gi++) { // gi 는 group index
$gnb_zindex -= 1; // html 구조에서 앞선 gnb_1dli 에 더 높은 z-index 값 부여
?>
<li class="gnb_1dli" style="z-index:<?php echo $gnb_zindex; ?>">
<a href="<?php echo G5_BBS_URL ?>/group.php?gr_id=<?php echo $row['gr_id'] ?>" class="gnb_1da"><?php echo $row['gr_subject'] ?></a>
<ul class="gnb_2dul">
<?php
$sql2 = " select * from {$g5['board_table']} where gr_id = '{$row['gr_id']}' and bo_show_menu = '1' and bo_device <> 'mobile' order by bo_order ";
$result2 = sql_query($sql2);
for ($bi=0; $row2=sql_fetch_array($result2); $bi++) { // bi 는 board index
?>
<li class="gnb_2dli"><a href="<?php echo G5_BBS_URL ?>/board.php?bo_table=<?php echo $row2['bo_table'] ?>" class="gnb_2da"><?php echo $row2['bo_subject'] ?></a></li>
<?php } ?>
</ul>
for ($i=0; $row=sql_fetch_array($result); $i++) {
?>
<li class="gnb_1dli" style="z-index:<?php echo $gnb_zindex--; ?>">
<a href="<?php echo $row['me_link']; ?>" target="_<?php echo $row['me_target']; ?>" class="gnb_1da"><?php echo $row['me_name'] ?></a>
<?php
$sql2 = " select *
from {$g5['menu_table']}
where me_use = '1'
and length(me_code) = '4'
and substring(me_code, 1, 2) = '{$row['me_code']}'
order by me_order, me_id ";
$result2 = sql_query($sql2);
for ($k=0; $row2=sql_fetch_array($result2); $k++) {
if($k == 0)
echo '<ul class="gnb_2dul">'.PHP_EOL;
?>
<li class="gnb_2dli"><a href="<?php echo $row2['me_link']; ?>" target="_<?php echo $row2['me_target']; ?>" class="gnb_2da"><?php echo $row2['me_name'] ?></a></li>
<?php
}
if($k > 0)
echo '</ul>'.PHP_EOL;
?>
</li>
<?php } ?>
<?php if ($gi == 0) { ?><li class="gnb_empty">생성된 메뉴가 없습니다.</li><?php } ?>
<?php
}
if ($i == 0) { ?><li class="gnb_empty">생성된 메뉴가 없습니다.</li><?php }
?>
</ul>
</nav>
</div>

View File

@ -29,6 +29,84 @@ include_once(G5_LIB_PATH.'/popular.lib.php');
<a href="<?php echo G5_URL ?>"><img src="<?php echo G5_IMG_URL ?>/logo.jpg" alt="<?php echo $config['cf_title']; ?>"></a>
</div>
<button type="button" id="hd_menu_open">메뉴<span class="sound_only"> 열기</span></button>
<div id="menu_wrap">
<ul>
<?php
$sql = " select *
from {$g5['menu_table']}
where me_mobile_use = '1'
and length(me_code) = '2'
order by me_order, me_id ";
$result = sql_query($sql);
for($i=0; $row=sql_fetch_array($result); $i++) {
?>
<li>
<a href="<?php echo $row['me_link']; ?>" target="_<?php echo $row['me_target']; ?>" class="gnb_1da"><?php echo $row['me_name'] ?></a>
<?php
$sql2 = " select *
from {$g5['menu_table']}
where me_mobile_use = '1'
and length(me_code) = '4'
and substring(me_code, 1, 2) = '{$row['me_code']}'
order by me_order, me_id ";
$result2 = sql_query($sql2);
for ($k=0; $row2=sql_fetch_array($result2); $k++) {
if($k == 0)
echo '<ul class="gnb_2dul">'.PHP_EOL;
?>
<li class="gnb_2dli"><a href="<?php echo $row2['me_link']; ?>" target="_<?php echo $row2['me_target']; ?>" class="gnb_2da"><?php echo $row2['me_name'] ?></a></li>
<?php
}
if($k > 0)
echo '</ul>'.PHP_EOL;
?>
</li>
<?php
}
if ($i == 0) { ?><li class="gnb_empty">생성된 메뉴가 없습니다.</li><?php }
?>
</ul>
<button type="button" id="hd_menu_close">닫기</button>
</div>
<script>
$(function() {
$("#hd_menu_open").click(function() {
var $menu = $("#menu_wrap");
var w = $menu.width();
var sw = $(window).width();
$menu
.css({
display: "none",
left: sw+"px"
})
.css("display", "block")
.animate(
{ left: "-="+w+"px" }, 1500
);
});
$("#hd_menu_close").click(function() {
var $menu = $("#menu_wrap");
var w = $menu.width();
var sw = $(window).width();
$menu.animate(
{ left: "+="+w+"px" }, 1500,
function() {
$menu.css("display", "none");
}
);
});
});
</script>
<button type="button" id="hd_sch_open">검색<span class="sound_only"> 열기</span></button>
<aside id="hd_sch">
@ -104,26 +182,6 @@ include_once(G5_LIB_PATH.'/popular.lib.php');
<hr>
<div id="lnb">
<ul>
<?php
$sql2 = " select * from {$g5['board_table']} where bo_show_menu = 1 and bo_device <> 'pc' ";
if ($gr_id) $sql2 .= " and gr_id = '$gr_id' ";
$sql2 .= " order by bo_order ";
$result2 = sql_query($sql2);
for ($bi=0; $row2=sql_fetch_array($result2); $bi++) { // bi 는 board index
$bo_subject = $row2['bo_subject'];
if (G5_IS_MOBILE && $row2['bo_mobile_subject']) {
$bo_subject = $row2['bo_mobile_subject'];
}
?>
<li><a href="<?php echo G5_BBS_URL ?>/board.php?bo_table=<?php echo $row2['bo_table'] ?>"><?php echo $bo_subject; ?></a></li>
<?php } ?>
</ul>
</div>
<hr>
<div id="wrapper">
<div id="aside">
<?php echo outlogin('basic'); // 외부 로그인 ?>

View File

@ -6,23 +6,6 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
<hr>
<nav id="gnb">
<script>$('#gnb').addClass('gnb_js');</script>
<h2>메인메뉴</h2>
<ul>
<?php
$sql = " select * from {$g5['group_table']} where gr_show_menu = 1 and gr_device <> 'pc' order by gr_order ";
$result = sql_query($sql);
for ($gi=0; $row=sql_fetch_array($result); $gi++) { // gi 는 group index
?>
<li><a href="<?php echo G5_BBS_URL ?>/group.php?gr_id=<?php echo $row['gr_id'] ?>"><?php echo $row['gr_subject'] ?></a></li>
<?php } ?>
<?php if ($gi == 0) { ?><li class="gnb_empty">생성된 메뉴가 없습니다.</a><?php } ?>
</ul>
</nav>
<hr>
<?php echo poll('basic'); // 설문조사 ?>
<hr>