[제나플러스] 익스7로 구성한 메인 상단 메뉴
페이지 정보
본문
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
/////////////////////////////////////////////////////////////////////
// FF,msie호환 그룹 및 게시판 자동메뉴 - 플록
// CSS로 구현 그룹 및 게시판의 수직,수평 배열의 융통성 확보
// 셀렉트박스 가리기(ie6이하) 추가 및 코드정리 2007년 3월 24일 토요일(연후아빠 헌정메뉴)
// 메뉴링크 페이지 하단 적절한 곳에 onmouseover="layer_view('','','','','')" 코드 추가(서브메뉴 숨김)
// 레이어 메뉴와 관련해서 그누보드 sideview.js 파일이 필요한 경우 연결합니다.
if (!function_exists("selectBoxHidden(layer_id)")) {
echo "<script type='text/javascript' src='$g4[path]/js/sideview.js'></script>";
}
?>
<script type="text/javascript">
var save_layer = null;
function layer_view(link_id, menu_id, opt, x, y) {
var link = document.getElementById(link_id);
var menu = document.getElementById(menu_id);
//for (i in link) { document.write(i + '<br/>'); } return;
if (save_layer != null) {
save_layer.style.display = "none";
selectBoxVisible();
}
if (link_id == '')
return;
if (opt == 'hide') {
menu.style.display = 'none';
selectBoxVisible();
}
else {
x = parseInt(x);
y = parseInt(y);
menu.style.left = get_left_pos(link) + x;
menu.style.top = get_top_pos(link) + link.offsetHeight + y;
menu.style.display = 'block';
}
save_layer = menu;
}
</script>
<style type="text/css">
/*************************************************
여기서부터 시각적인 부분에 대한 수정을 해봅니다.
아래 소스에서 float, width 처럼 파란색으로 보여지는 속성을 키워드로
CSS 도움말 파일(팁&강좌에 있음)에서 검색해보면서 해당속성에 대한 옵션을 익힙니다.
**************************************************/
#zbase {/*레이아웃 최상위 부모영역*/
margin: 0 auto;
text-align: left;
background:transparent;
width:auto;
height:<?=get_text($config[cf_menu_grouphsize])?>px;
border:0px solid silver;
}
.zgroup { /*메뉴 영역*/
float:left;/*left,right 가로배열 none 세로배열*/
width:<?=get_text($config[cf_menu_groupwsize])?>px;
height:<?=get_text($config[cf_menu_grouphsize])?>px;
overflow:visible;/*내용이 넘칠경우 영역을 밀어내며 표시됨*/
border:0px solid red;
}
.zgroup_subject { /*그룹제목*/
width:auto;
position:relative; top:<?=$menu_top?>; left:<?=$menu_left?>;
text-align:center;
cursor:pointer;
display:block;
}
.zgroup ul { /*서브메뉴 최상위*/
margin:0;
list-style-type:none;
background-color:#FFFFFF;
}
.zboard { /*게시판 레이어 영역 z-index 상위 호출문서 에서 지정*/
width:<?=get_text($config[cf_menu_boardwsize])?>px;
border:1px solid;
border-color:#ECECEC;
background-color:#FFFFFF;
padding:0 0 1 0;
display:none;
position:absolute;
}
.zboard_subject { /*게시판 제목*/
width:auto;
height:<?=get_text($config[cf_menu_boardhsize])?>px;
padding:6 0 2 10;
border-bottom:1px dotted;
border-bottom-color:#DDDDDD;
/*display:block;cursor:pointer; 포인터 영역 확대*/
}
</style>
<div id='zbase'>
<?
//접근가능그룹 여분필드 1 순서로 추출
//조건외 제외시키고자 하는 그룹 수동으로 추가
$excgr = "('html', 'banner', 'guest', 'z9')"; // html , banner , guest 라는 그룹은 제외시킴
$sql = " SELECT a.gr_id, a.gr_subject, a.gr_use_access, a.gr_10, b.mb_id FROM $g4[group_table] AS a LEFT JOIN $g4[group_member_table] AS b ON a.gr_id = b.gr_id WHERE (b.mb_id = '$member[mb_id]' AND a.gr_use_access = '1' ) OR a.gr_use_access = '0' and a.gr_id not in " . $excgr . " ORDER BY a.gr_1";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++){
//group
echo "<div class='zgroup'>\n";
$gSubject = ($row['gr_id'] == $gr_id)?"<span style='background-color:#FFFFFE; padding:7 7 9 7; color:#222222;'>" .$row['gr_subject']."</span>":"<span style='padding:7 7 9 7; color:#FFFFFF;'>" .$row['gr_subject']."</span>";//그룹제목 - 해당그룹은 #222222 나머지는 #FFFFFF
$gLink = (!empty($row['gr_10']))?$row['gr_10']:$g4['bbs_path'].'/'.'group.php?gr_id=' .$row['gr_id'];//그룹링크 - 별도링크 필요하면 gr_10 필드에 전체 url 입력
echo "<span id='id_" . $row['gr_id'] . "' class='zgroup_subject' onmouseover=\"layer_view('id_" . $row['gr_id'] . "', 'menu_" . $row['gr_id'] . "', 'view', 0, -10);\"><a href='" . $gLink . "'><strong>" . $gSubject . "</strong></a></span>\n";
//board
//echo "<iframe class='zboard' src='about:blank' mce_src='about:blank' scrolling='no' frameborder='0'></iframe>";
echo "<ul id='menu_" . $row['gr_id'] . "' class='zboard' onpropertychange=\"selectBoxHidden('menu_" . $row['gr_id'] . "')\">\n";
//게시판 권한 설정 적용, 전체 검색사용에 체크된 게시판만 검색순서에 따라 추출
//$sqlb = " select bo_subject, bo_table, bo_10 from $g4[board_table] where (bo_list_level <= $member[mb_level]) and (gr_id = '$row[gr_id]') and bo_use_search = '1' order by bo_order_search";
//검색설정과 상관없음
$sqlb = " select bo_subject, bo_table, bo_10 from $g4[board_table] where (bo_list_level <= $member[mb_level]) and (gr_id = '$row[gr_id]') order by bo_order_search";
$resultb = sql_query($sqlb);
for ($j=0; $rowb=sql_fetch_array($resultb); $j++) {
$bSubject = ($rowb['bo_table'] == $bo_table)?"<img src='$g4[path]/include/mainmenu/img/icl1.gif' border=0><span style='font-weight:bold;color:#222222;'>".cut_str(get_text($rowb['bo_subject']),20,"")."</span>":"<img src='$g4[path]/include/mainmenu/img/icl.gif' border=0><span style='color:#222222;'>".cut_str(get_text($rowb['bo_subject']), 20,"")."</span>";//게시판제목 - 해당게시판은 #222222 나머지는 #222222
$bLink = (!empty($rowb['bo_10']))?$rowb['bo_10']:$g4['bbs_path'].'/'.'board.php?bo_table=' .$rowb['bo_table'];//게시판링크 - 별도링크 필요하면 bo_10 필드에 전체 url 입력
echo "<li class='zboard_subject'> <a href='" . $bLink . "'>" . $bSubject . "</a></li>\n";
}
echo "</ul>\n"; //board end
echo "</div>\n"; //group end
}
?>
</div>
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
/////////////////////////////////////////////////////////////////////
// FF,msie호환 그룹 및 게시판 자동메뉴 - 플록
// CSS로 구현 그룹 및 게시판의 수직,수평 배열의 융통성 확보
// 셀렉트박스 가리기(ie6이하) 추가 및 코드정리 2007년 3월 24일 토요일(연후아빠 헌정메뉴)
// 메뉴링크 페이지 하단 적절한 곳에 onmouseover="layer_view('','','','','')" 코드 추가(서브메뉴 숨김)
// 레이어 메뉴와 관련해서 그누보드 sideview.js 파일이 필요한 경우 연결합니다.
if (!function_exists("selectBoxHidden(layer_id)")) {
echo "<script type='text/javascript' src='$g4[path]/js/sideview.js'></script>";
}
?>
<script type="text/javascript">
var save_layer = null;
function layer_view(link_id, menu_id, opt, x, y) {
var link = document.getElementById(link_id);
var menu = document.getElementById(menu_id);
//for (i in link) { document.write(i + '<br/>'); } return;
if (save_layer != null) {
save_layer.style.display = "none";
selectBoxVisible();
}
if (link_id == '')
return;
if (opt == 'hide') {
menu.style.display = 'none';
selectBoxVisible();
}
else {
x = parseInt(x);
y = parseInt(y);
menu.style.left = get_left_pos(link) + x;
menu.style.top = get_top_pos(link) + link.offsetHeight + y;
menu.style.display = 'block';
}
save_layer = menu;
}
</script>
<style type="text/css">
/*************************************************
여기서부터 시각적인 부분에 대한 수정을 해봅니다.
아래 소스에서 float, width 처럼 파란색으로 보여지는 속성을 키워드로
CSS 도움말 파일(팁&강좌에 있음)에서 검색해보면서 해당속성에 대한 옵션을 익힙니다.
**************************************************/
#zbase {/*레이아웃 최상위 부모영역*/
margin: 0 auto;
text-align: left;
background:transparent;
width:auto;
height:<?=get_text($config[cf_menu_grouphsize])?>px;
border:0px solid silver;
}
.zgroup { /*메뉴 영역*/
float:left;/*left,right 가로배열 none 세로배열*/
width:<?=get_text($config[cf_menu_groupwsize])?>px;
height:<?=get_text($config[cf_menu_grouphsize])?>px;
overflow:visible;/*내용이 넘칠경우 영역을 밀어내며 표시됨*/
border:0px solid red;
}
.zgroup_subject { /*그룹제목*/
width:auto;
position:relative; top:<?=$menu_top?>; left:<?=$menu_left?>;
text-align:center;
cursor:pointer;
display:block;
}
.zgroup ul { /*서브메뉴 최상위*/
margin:0;
list-style-type:none;
background-color:#FFFFFF;
}
.zboard { /*게시판 레이어 영역 z-index 상위 호출문서 에서 지정*/
width:<?=get_text($config[cf_menu_boardwsize])?>px;
border:1px solid;
border-color:#ECECEC;
background-color:#FFFFFF;
padding:0 0 1 0;
display:none;
position:absolute;
}
.zboard_subject { /*게시판 제목*/
width:auto;
height:<?=get_text($config[cf_menu_boardhsize])?>px;
padding:6 0 2 10;
border-bottom:1px dotted;
border-bottom-color:#DDDDDD;
/*display:block;cursor:pointer; 포인터 영역 확대*/
}
</style>
<div id='zbase'>
<?
//접근가능그룹 여분필드 1 순서로 추출
//조건외 제외시키고자 하는 그룹 수동으로 추가
$excgr = "('html', 'banner', 'guest', 'z9')"; // html , banner , guest 라는 그룹은 제외시킴
$sql = " SELECT a.gr_id, a.gr_subject, a.gr_use_access, a.gr_10, b.mb_id FROM $g4[group_table] AS a LEFT JOIN $g4[group_member_table] AS b ON a.gr_id = b.gr_id WHERE (b.mb_id = '$member[mb_id]' AND a.gr_use_access = '1' ) OR a.gr_use_access = '0' and a.gr_id not in " . $excgr . " ORDER BY a.gr_1";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++){
//group
echo "<div class='zgroup'>\n";
$gSubject = ($row['gr_id'] == $gr_id)?"<span style='background-color:#FFFFFE; padding:7 7 9 7; color:#222222;'>" .$row['gr_subject']."</span>":"<span style='padding:7 7 9 7; color:#FFFFFF;'>" .$row['gr_subject']."</span>";//그룹제목 - 해당그룹은 #222222 나머지는 #FFFFFF
$gLink = (!empty($row['gr_10']))?$row['gr_10']:$g4['bbs_path'].'/'.'group.php?gr_id=' .$row['gr_id'];//그룹링크 - 별도링크 필요하면 gr_10 필드에 전체 url 입력
echo "<span id='id_" . $row['gr_id'] . "' class='zgroup_subject' onmouseover=\"layer_view('id_" . $row['gr_id'] . "', 'menu_" . $row['gr_id'] . "', 'view', 0, -10);\"><a href='" . $gLink . "'><strong>" . $gSubject . "</strong></a></span>\n";
//board
//echo "<iframe class='zboard' src='about:blank' mce_src='about:blank' scrolling='no' frameborder='0'></iframe>";
echo "<ul id='menu_" . $row['gr_id'] . "' class='zboard' onpropertychange=\"selectBoxHidden('menu_" . $row['gr_id'] . "')\">\n";
//게시판 권한 설정 적용, 전체 검색사용에 체크된 게시판만 검색순서에 따라 추출
//$sqlb = " select bo_subject, bo_table, bo_10 from $g4[board_table] where (bo_list_level <= $member[mb_level]) and (gr_id = '$row[gr_id]') and bo_use_search = '1' order by bo_order_search";
//검색설정과 상관없음
$sqlb = " select bo_subject, bo_table, bo_10 from $g4[board_table] where (bo_list_level <= $member[mb_level]) and (gr_id = '$row[gr_id]') order by bo_order_search";
$resultb = sql_query($sqlb);
for ($j=0; $rowb=sql_fetch_array($resultb); $j++) {
$bSubject = ($rowb['bo_table'] == $bo_table)?"<img src='$g4[path]/include/mainmenu/img/icl1.gif' border=0><span style='font-weight:bold;color:#222222;'>".cut_str(get_text($rowb['bo_subject']),20,"")."</span>":"<img src='$g4[path]/include/mainmenu/img/icl.gif' border=0><span style='color:#222222;'>".cut_str(get_text($rowb['bo_subject']), 20,"")."</span>";//게시판제목 - 해당게시판은 #222222 나머지는 #222222
$bLink = (!empty($rowb['bo_10']))?$rowb['bo_10']:$g4['bbs_path'].'/'.'board.php?bo_table=' .$rowb['bo_table'];//게시판링크 - 별도링크 필요하면 bo_10 필드에 전체 url 입력
echo "<li class='zboard_subject'> <a href='" . $bLink . "'>" . $bSubject . "</a></li>\n";
}
echo "</ul>\n"; //board end
echo "</div>\n"; //group end
}
?>
</div>
추천0