78 lines
2.7 KiB
PHP
78 lines
2.7 KiB
PHP
<?php
|
|
$sub_menu = "300100";
|
|
include_once "./_common.php";
|
|
|
|
check_demo();
|
|
|
|
if (!count($_POST['chk'])) {
|
|
alert($_POST['act_button'] . " 하실 항목을 하나 이상 체크하세요.");
|
|
}
|
|
|
|
if ($_POST['act_button'] == "선택수정") {
|
|
|
|
auth_check($auth[$sub_menu], 'w');
|
|
|
|
for ($i = 0; $i < count($_POST['chk']); $i++) {
|
|
|
|
// 실제 번호를 넘김
|
|
$k = $_POST['chk'][$i];
|
|
|
|
if ($is_admin != 'super') {
|
|
$sql = "SELECT count(*) AS cnt FROM {$g5['board_table']} a, {$g5['group_table']} b
|
|
WHERE a.gr_id = '{$_POST['gr_id'][$k]}'
|
|
AND a.gr_id = b.gr_id
|
|
AND b.gr_admin = '{$member['mb_id']}' ";
|
|
$row = sql_fetch($sql);
|
|
if (!$row['cnt'])
|
|
alert('최고관리자가 아닌 경우 다른 관리자의 게시판(' . $board_table[$k] . ')은 수정이 불가합니다.');
|
|
}
|
|
|
|
$purify_keys = ["gr_id", "bo_subject", "bo_skin", "bo_list_level", "bo_read_level", "bo_write_level", "bo_comment_level", "bo_reply_level", "board_table"];
|
|
|
|
foreach($_POST as $key => $value) {
|
|
if (in_array($key, $purify_keys)) {
|
|
if (is_array($_POST[$key])) {
|
|
$_POST[$key][$k] = sql_real_escape_string(strip_tags($_POST[$key][$k]));
|
|
} else {
|
|
$_POST[$key] = sql_real_escape_string(strip_tags($_POST[$key]));
|
|
}
|
|
}
|
|
}
|
|
|
|
$sql = "UPDATE {$g5['board_table']}
|
|
SET gr_id = '{$_POST['gr_id'][$k]}',
|
|
bo_subject = '{$_POST['bo_subject'][$k]}',
|
|
bo_skin = '{$_POST['bo_skin'][$k]}',
|
|
bo_list_level = '{$_POST['bo_list_level'][$k]}',
|
|
bo_read_level = '{$_POST['bo_read_level'][$k]}',
|
|
bo_write_level = '{$_POST['bo_write_level'][$k]}',
|
|
bo_comment_level = '{$_POST['bo_comment_level'][$k]}',
|
|
bo_reply_level = '{$_POST['bo_reply_level'][$k]}'
|
|
WHERE bo_table = '{$_POST['board_table'][$k]}' ";
|
|
sql_query($sql);
|
|
}
|
|
|
|
} else if ($_POST['act_button'] == "선택삭제") {
|
|
|
|
if ($is_admin != 'super')
|
|
alert('게시판 삭제는 최고관리자만 가능합니다.');
|
|
|
|
auth_check($auth[$sub_menu], 'd');
|
|
check_admin_token();
|
|
|
|
// _BOARD_DELETE_ 상수를 선언해야 board_delete.inc.php 가 정상 작동함
|
|
define('_BOARD_DELETE_', true);
|
|
|
|
for ($i = 0; $i < count($_POST['chk']); $i++) {
|
|
// 실제 번호를 넘김
|
|
$k = $_POST['chk'][$i];
|
|
|
|
// include 전에 $bo_table 값을 반드시 넘겨야 함
|
|
$tmp_bo_table = trim($_POST['board_table'][$k]);
|
|
include './board_delete.inc.php';
|
|
}
|
|
}
|
|
|
|
EventHandler::triggerEvent("gnuboard.admin.board_list_update", $act_button, $chk, $board_table, $qstr);
|
|
|
|
goto_url('./board_list.php');
|