249 lines
11 KiB
PHP
249 lines
11 KiB
PHP
<?
|
|
include $_SERVER[DOCUMENT_ROOT] . "/backoffice/header.php";
|
|
include $_SERVER[DOCUMENT_ROOT] . "/module/board/board.lib.php";
|
|
include $_SERVER[DOCUMENT_ROOT] . "/module/calendar/calendar.lib.php";//일정관리 형식
|
|
include $_SERVER[DOCUMENT_ROOT] . "/common/fckeditor/fckeditor.php";
|
|
if(!in_array("board_manage",$_SESSION[$_SITE["DOMAIN"]]["ADMIN"]["AUTH"]) && $_SESSION[$_SITE["DOMAIN"]]["ADMIN"]["GRADE"]!="ROOT"):
|
|
jsMsg("권한이 없습니다.");
|
|
jsHistory("-1");
|
|
endif;
|
|
|
|
//DB연결
|
|
$dblink = SetConn($_conf_db["main_db"]);
|
|
|
|
if(!$boardid){
|
|
$boardid = $_REQUEST[boardid];
|
|
}
|
|
//게시판 정보
|
|
$arrBoardInfo = getBoardInfo($_conf_tbl[board_info], mysql_real_escape_string($boardid));
|
|
|
|
//게시판 정보(지도게시판있으면 storeboard.js 파일 include)
|
|
$arrStoreBoardInfo = getBoardInfo($_conf_tbl[board_info], mysql_real_escape_string("store"));
|
|
if($arrStoreBoardInfo["total"]>0){
|
|
?>
|
|
<script type="text/javascript" src="/module/board/storeboard.js"></script>
|
|
<?
|
|
}
|
|
|
|
//회원등급 목록
|
|
$arrLevelList = getArticleList($_conf_tbl["member_level"], 0, 0, "");
|
|
for($i=0;$i<$arrLevelList["total"];$i++){
|
|
$arrLevelInfo[$arrLevelList["list"][$i][level_no]] = $arrLevelList["list"][$i][level_name];
|
|
}
|
|
if(!$_SESSION[$_SITE["DOMAIN"]]["MEMBER"]["LEVEL"]){
|
|
$_SESSION[$_SITE["DOMAIN"]]["MEMBER"]["LEVEL"] = 0;
|
|
}
|
|
|
|
/*
|
|
$arrBoardInfo = 게시판 설정 정보
|
|
$arrBoardInfo["total"] : 1 이면 해당게시판이 있음
|
|
$arrBoardInfo["list"][0]["idx"] : 일련번호
|
|
$arrBoardInfo["list"][0]["boardid"] : 게시판 아이디
|
|
$arrBoardInfo["list"][0]["boardname"] : 게시판명
|
|
$arrBoardInfo["list"][0]["skin"] : 스킨명
|
|
$arrBoardInfo["list"][0]["scale"] : 페이지당 표시수
|
|
$arrBoardInfo["list"][0]["pagescale"] : 페이지 리스트 수
|
|
$arrBoardInfo["list"][0]["widthscale"] : 갤러리 형식일경우 가로갯수
|
|
$arrBoardInfo["list"][0]["newmark"] : 몇일이내의 글에 신규글 아이콘을 보이게
|
|
$arrBoardInfo["list"][0]["besthit"] : 몇번이상 클릭된 게시물에 베스트힛 아이콘 보이게
|
|
$arrBoardInfo["list"][0]["subjectcut"] : 제목글자 자르기
|
|
$arrBoardInfo["list"][0]["useadminonly"] : Y 일경우 회원등급에 관련없이 관리자만 글을 쓸 수 있음
|
|
$arrBoardInfo["list"][0]["usepds"] : Y 일경우 파일첨부창 활성화
|
|
$arrBoardInfo["list"][0]["usereply"] : Y 일경우 답글달기 가능
|
|
$arrBoardInfo["list"][0]["usereplyemail"] : Y 일경우 답글시 메일로 받기 활성화
|
|
$arrBoardInfo["list"][0]["usecat"] : Y 일경우 제품카테고리 사용
|
|
$arrBoardInfo["list"][0]["usememo"] : Y 일경우 댓글(메모)기능 사용
|
|
$arrBoardInfo["list"][0]["uselock"] : Y 일경우 글잠금 사용
|
|
$arrBoardInfo["list"][0]["readlevel"] : 읽기등급
|
|
$arrBoardInfo["list"][0]["writelevel"] : 쓰기등급
|
|
$arrBoardInfo["list"][0]["category"] : 게시판 카테고리
|
|
$arrBoardInfo["list"][0]["header"] : 헤더
|
|
$arrBoardInfo["list"][0]["footer"] : 푸터
|
|
$arrBoardInfo["list"][0]["wdate"] : 게시판 생성일자
|
|
*/
|
|
//_DEBUG($arrBoardInfo);
|
|
//DB해제
|
|
SetDisConn($dblink);
|
|
?>
|
|
<div id="admin-container">
|
|
<? include "menu.php"; ?>
|
|
<div id="admin-content">
|
|
<h2 class="admin-title">게시물 관리</h2>
|
|
<link href="/css/board.css" rel="stylesheet" type="text/css" />
|
|
<?
|
|
//DB연결
|
|
$dblink = SetConn($_conf_db["main_db"]);
|
|
|
|
if($arrBoardInfo["total"] > 0){
|
|
//카테고리 정보
|
|
if($arrBoardInfo["list"][0]["category"] !=""){
|
|
$arrBoardCategory = explode(",",$arrBoardInfo["list"][0]["category"]);
|
|
$arrBoardCatTotal = count($arrBoardCategory);
|
|
}else{
|
|
$arrBoardCatTotal = 0;
|
|
$arrBoardCategory = null;
|
|
}
|
|
//게시판 헤더
|
|
echo stripslashes($arrBoardInfo["list"][0]["header"]);
|
|
switch($_REQUEST[mode]){
|
|
case("write"):
|
|
//관리자이거나 회원등급이 게시물 등록등급 이상일 경우
|
|
if($_SESSION[$_SITE["DOMAIN"]]["ADMIN"]["ID"] || $_SESSION[$_SITE["DOMAIN"]]["MEMBER"]["LEVEL"] >= $arrBoardInfo["list"][0]["writelevel"]){
|
|
include($_SITE["BOARD_SKIN"] .$arrBoardInfo["list"][0][skin]."/form.php");
|
|
}else{
|
|
jsMsg($arrLevelInfo[$arrBoardInfo["list"][0]["writelevel"]] . " 이상 글 등록이 가능 합니다.");
|
|
jsHistory("-1");
|
|
}
|
|
break;
|
|
|
|
case("modify"):
|
|
//관리자이거나 회원등급이 게시물 등록등급 이상일 경우
|
|
if($_SESSION[$_SITE["DOMAIN"]]["ADMIN"]["ID"] || $_SESSION[$_SITE["DOMAIN"]]["MEMBER"]["LEVEL"] >= $arrBoardInfo["list"][0]["writelevel"]){
|
|
$arrBoardArticle = getBoardArticleView($arrBoardInfo["list"][0]["boardid"], $_GET["category"], $_GET["idx"],"modify");
|
|
|
|
if($arrBoardArticle["total"] > 0){
|
|
//글잠금이 아니거나, 인증을 했거나, 관리자일 경우 글 보여줌
|
|
if($arrBoardArticle["list"][0][uselock]!="Y" || $_SESSION[$_SITE["DOMAIN"]][$boardid."|".$_GET["idx"]]==TRUE || $_SESSION[$_SITE["DOMAIN"]]["ADMIN"]["ID"]){
|
|
if($arrBoardInfo["list"][0][skin]=="inquiry" && $arrBoardArticle["list"][0][depth]!="0"){
|
|
include($_SITE["BOARD_SKIN"].$arrBoardInfo["list"][0][skin]."/form1.php");
|
|
}else{
|
|
include($_SITE["BOARD_SKIN"].$arrBoardInfo["list"][0][skin]."/form.php");
|
|
}
|
|
}else{
|
|
$_REQUEST[mode]="unlock";
|
|
include($_SITE["BOARD_SKIN"].$arrBoardInfo["list"][0][skin]."/pass.php");
|
|
}
|
|
}else{
|
|
jsMsg("존재하지 않는 게시물 입니다.");
|
|
jsHistory("-1");
|
|
}
|
|
}else{
|
|
jsMsg($arrLevelInfo[$arrBoardInfo["list"][0]["writelevel"]] . " 이상 글 수정이 가능 합니다.");
|
|
jsHistory("-1");
|
|
}
|
|
break;
|
|
|
|
case("reply"):
|
|
//관리자이거나 회원등급이 게시물 등록등급 이상일 경우
|
|
if($_SESSION[$_SITE["DOMAIN"]]["ADMIN"]["ID"] || $_SESSION[$_SITE["DOMAIN"]]["MEMBER"]["LEVEL"] >= $arrBoardInfo["list"][0]["replylevel"]){
|
|
$arrBoardArticle = getBoardArticleView($arrBoardInfo["list"][0]["boardid"], $_GET["category"], $_GET["idx"],"reply");
|
|
|
|
if($arrBoardArticle["total"] > 0){
|
|
//글잠금이 아니거나, 인증을 했거나, 관리자일 경우 글 보여줌
|
|
if($arrBoardArticle["list"][0][uselock]!="Y" || $_SESSION[$_SITE["DOMAIN"]][$boardid."|".$_GET["idx"]]==TRUE || $_SESSION[$_SITE["DOMAIN"]]["ADMIN"]["ID"]){
|
|
if($arrBoardInfo["list"][0][skin]=="inquiry"){
|
|
include($_SITE["BOARD_SKIN"].$arrBoardInfo["list"][0][skin]."/form1.php");
|
|
}else{
|
|
include($_SITE["BOARD_SKIN"].$arrBoardInfo["list"][0][skin]."/form.php");
|
|
}
|
|
}else{
|
|
$_REQUEST[mode]="unlock";
|
|
include($_SITE["BOARD_SKIN"].$arrBoardInfo["list"][0][skin]."/pass.php");
|
|
}
|
|
}else{
|
|
jsMsg("존재하지 않는 게시물 입니다.");
|
|
jsHistory("-1");
|
|
}
|
|
}else{
|
|
jsMsg($arrLevelInfo[$arrBoardInfo["list"][0]["replylevel"]] . " 이상 글 등록이 가능 합니다.");
|
|
jsHistory("-1");
|
|
}
|
|
break;
|
|
|
|
case("view"):
|
|
//관리자이거나 회원등급이 게시물 읽기등급 이상일 경우
|
|
if($_SESSION[$_SITE["DOMAIN"]]["ADMIN"]["ID"] || $_SESSION[$_SITE["DOMAIN"]]["MEMBER"]["LEVEL"] >= $arrBoardInfo["list"][0]["readlevel"]){
|
|
$arrBoardArticle = getBoardArticleView($arrBoardInfo["list"][0]["boardid"], $_GET["category"], $_GET["idx"],"read");
|
|
|
|
if($arrBoardArticle["total"] > 0){
|
|
|
|
//글잠금이 아니거나, 인증을 했거나, 관리자일 경우 글 보여줌
|
|
if($arrBoardArticle["list"][0][uselock]!="Y" || $_SESSION[$_SITE["DOMAIN"]][$boardid."|".$_GET["idx"]]==TRUE || $_SESSION[$_SITE["DOMAIN"]]["ADMIN"]["ID"]){
|
|
//댓글목록 가져오기
|
|
$arrCommentList = getCommentList($arrBoardInfo["list"][0]["boardid"], $arrBoardArticle["list"][0][idx], 0, 0);
|
|
include($_SITE["BOARD_SKIN"].$arrBoardInfo["list"][0][skin]."/view.php");
|
|
}else{
|
|
$_REQUEST[mode]="unlock";
|
|
include($_SITE["BOARD_SKIN"].$arrBoardInfo["list"][0][skin]."/pass.php");
|
|
}
|
|
|
|
}else{
|
|
jsMsg("존재하지 않는 게시물 입니다.");
|
|
jsHistory("-1");
|
|
}
|
|
}else{
|
|
jsMsg($arrLevelInfo[$arrBoardInfo["list"][0]["readlevel"]] . " 이상 글 읽기가 가능 합니다.");
|
|
jsHistory("-1");
|
|
}
|
|
break;
|
|
|
|
case("delete"):
|
|
//관리자이거나 회원등급이 게시물 등록등급 이상일 경우
|
|
if($_SESSION[$_SITE["DOMAIN"]]["ADMIN"]["ID"] || $_SESSION[$_SITE["DOMAIN"]]["MEMBER"]["LEVEL"] >= $arrBoardInfo["list"][0]["writelevel"]){
|
|
include($_SITE["BOARD_SKIN"].$arrBoardInfo["list"][0][skin]."/pass.php");
|
|
}else{
|
|
jsMsg($arrLevelInfo[$arrBoardInfo["list"][0]["writelevel"]] . " 이상 글 삭제가 가능 합니다.");
|
|
jsHistory("-1");
|
|
}
|
|
break;
|
|
|
|
case("list"):
|
|
default:
|
|
//getBoardListBase : 파일첨부여부는 부르지 않음 (다중파일을 올려서 group by 를 써야하므로 일반적일때는 이걸로만)
|
|
//getBoardListBaseNFile : 파일테이블과 left join
|
|
//getBoardListBaseNMemoCnt : 베이스 + 메모카운트
|
|
|
|
//관리자이거나 회원등급이 게시물 목록보기등급 이상일 경우
|
|
if($_SESSION[$_SITE["DOMAIN"]]["ADMIN"]["ID"] || $_SESSION[$_SITE["DOMAIN"]]["MEMBER"]["LEVEL"] >= $arrBoardInfo["list"][0]["listlevel"]){
|
|
if($arrBoardInfo["list"][0][skin]=="gallery" || $arrBoardInfo["list"][0][skin]=="youtube" || $arrBoardInfo["list"][0][skin]=="event" || $arrBoardInfo["list"][0][skin]=="site" || $arrBoardInfo["list"][0][skin]=="portfolio" || $arrBoardInfo["list"][0][skin]=="certify" || $arrBoardInfo["list"][0][skin]=="news"){
|
|
$arrBoardList = getBoardListBaseNFile($arrBoardInfo["list"][0]["boardid"], $_GET["category"], $_GET[sw], $_GET[sk], $arrBoardInfo["list"][0]["scale"], $_GET[offset]);
|
|
|
|
}else if($arrBoardInfo["list"][0][skin]=="gallery_eng" || $arrBoardInfo["list"][0][skin]=="youtube_eng" || $arrBoardInfo["list"][0][skin]=="event_eng" || $arrBoardInfo["list"][0][skin]=="site_eng" || $arrBoardInfo["list"][0][skin]=="portfolio_eng" || $arrBoardInfo["list"][0][skin]=="certify_eng" || $arrBoardInfo["list"][0][skin]=="news_eng"){
|
|
$arrBoardList = getBoardListBaseNFile($arrBoardInfo["list"][0]["boardid"], $_GET["category"], $_GET[sw], $_GET[sk], $arrBoardInfo["list"][0]["scale"], $_GET[offset]);
|
|
|
|
}else if($arrBoardInfo["list"][0][skin]=="schedule"){
|
|
//칼렌다 틀 가져오기 날짜설정
|
|
if(!$_REQUEST[cal_date]){
|
|
$cal_date = date("Y-m-d");
|
|
}else{
|
|
$cal_date = $_REQUEST[cal_date];
|
|
}
|
|
//날짜를 - 구분자로 배열로 만듬
|
|
$arrDate = explode("-",$cal_date);
|
|
|
|
//양력달력
|
|
$arrSolarCalendar = getDiarySet(intval($arrDate[0]), intval($arrDate[1]), intval($arrDate[2]));
|
|
|
|
$arrBoardList = getBoardListSchedule($arrBoardInfo["list"][0]["boardid"], $arrSolarCalendar[first_before], $arrSolarCalendar[last_after]);
|
|
}else{
|
|
$arrBoardList = getBoardListBaseNMemoCnt($arrBoardInfo["list"][0]["boardid"], $_GET["category"], $_GET[sw], $_GET[sk], $arrBoardInfo["list"][0]["scale"], $_GET[offset]);
|
|
}
|
|
if($boardid=="after" || $boardid=="qna"){
|
|
include($_SITE["BOARD_SKIN"].$arrBoardInfo["list"][0][skin]."/list.php");
|
|
}else{
|
|
include($_SITE["BOARD_SKIN"].$arrBoardInfo["list"][0][skin]."/list.php");
|
|
}
|
|
|
|
}else{
|
|
jsMsg($arrLevelInfo[$arrBoardInfo["list"][0]["listlevel"]] . " 이상 글 목록보기가 가능 합니다.");
|
|
jsHistory("-1");
|
|
}
|
|
break;
|
|
}
|
|
?>
|
|
</div>
|
|
</div>
|
|
<?
|
|
//게시판 푸터
|
|
echo stripslashes($arrBoardInfo["list"][0]["footer"]);
|
|
}else{
|
|
jsMsg("존재하지 않는 게시판 아이디 입니다.");
|
|
jsHistory("-1");
|
|
}
|
|
|
|
//DB해제
|
|
SetDisConn($dblink);
|
|
?>
|
|
<?
|
|
include $_SERVER[DOCUMENT_ROOT] . "/backoffice/footer.php";
|
|
?>
|