community feature update and add https://github.com/tateck-develop/AvocadoEdition_CharacterManager.git (ac7a323)
This commit is contained in:
parent
8c18b8ceed
commit
24fc36bcc2
66 changed files with 4304 additions and 87 deletions
|
|
@ -46,4 +46,10 @@ $menu["member"]->getLastAddedMenu()->addSubFile("/poll_form.php");
|
|||
if (Community::isInitCommunity()) {
|
||||
$menu["member"]->addChildMenu("member", "접속자검색", G5_ADMIN_URL . "/visit_search.php", true, 300, "\F52A", 0);
|
||||
$menu["member"]->getLastAddedMenu()->addSubFile("/visit_delete_update.php");
|
||||
|
||||
$menu["member"]->addChildMenu("member", "캐릭터 미등록 회원관리", G5_ADMIN_URL . "/member_nocharacter_list.php", true, 400, "\F35E", 0);
|
||||
$menu["member"]->getLastAddedMenu()->addSubFile("/member_nocharacter_list_update.php");
|
||||
|
||||
$menu["member"]->addChildMenu("member", "활동량 관리", G5_ADMIN_URL . "/action_list.php", true, 410, "\F809", 0);
|
||||
$menu["member"]->getLastAddedMenu()->addSubFile("/action_reply.php");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -64,6 +64,11 @@ if (Community::isInitCommunity()) {
|
|||
$menu["character"]->getLastAddedMenu()->addSubFile("/character_form.php");
|
||||
$menu["character"]->getLastAddedMenu()->addSubFile("/character_form_update.php");
|
||||
|
||||
$menu["character"]->addChildMenu("character", "합격 관리", G5_ADMIN_URL . "/character_pass_manager.php", true, 10, "\F360", 0);
|
||||
$menu["character"]->getLastAddedMenu()->addSubFile("/character_pass_manager_confirm.php");
|
||||
$menu["character"]->getLastAddedMenu()->addSubFile("/character_pass_manager_delete.php");
|
||||
$menu["character"]->getLastAddedMenu()->addSubFile("/character_pass_manager_update.php");
|
||||
|
||||
$menu["character"]->addChildMenu("character", "타이틀 관리", G5_ADMIN_URL . "/title_list.php", true, 100, "\F5B0", 0);
|
||||
$menu["character"]->getLastAddedMenu()->addSubFile("/title_update.php");
|
||||
$menu["character"]->getLastAddedMenu()->addSubFile("/title_list_update.php");
|
||||
|
|
|
|||
28
AvocadoAmber/adm/action_delete.php
Normal file
28
AvocadoAmber/adm/action_delete.php
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
<?php
|
||||
include_once "./_common.php";
|
||||
|
||||
check_demo();
|
||||
|
||||
auth_check($auth[$sub_menu], "d");
|
||||
|
||||
$mb = get_member($_REQUEST['mb_id']);
|
||||
|
||||
if (!$mb['mb_id'])
|
||||
alert("회원자료가 존재하지 않습니다.");
|
||||
else if ($member['mb_id'] == $mb['mb_id'])
|
||||
alert("로그인 중인 관리자는 삭제 할 수 없습니다.");
|
||||
else if (is_admin($mb['mb_id']) == "super")
|
||||
alert("최고 관리자는 삭제할 수 없습니다.");
|
||||
else if ($mb['mb_level'] >= $member['mb_level'])
|
||||
alert("자신보다 권한이 높거나 같은 회원은 삭제할 수 없습니다.");
|
||||
|
||||
check_token();
|
||||
|
||||
// 회원자료 삭제
|
||||
member_delete($mb['mb_id']);
|
||||
|
||||
if ($url)
|
||||
goto_url("{$url}?{$qstr}&w=u&mb_id=$mb_id");
|
||||
else
|
||||
goto_url("./action_list.php?{$qstr}");
|
||||
?>
|
||||
413
AvocadoAmber/adm/action_list.php
Normal file
413
AvocadoAmber/adm/action_list.php
Normal file
|
|
@ -0,0 +1,413 @@
|
|||
<?php
|
||||
/**
|
||||
* @var string|int $cf_reply_cnt
|
||||
* @var string|int $s_mbid
|
||||
*/
|
||||
include_once './_common.php';
|
||||
auth_check($auth[$sub_menu], 'r');
|
||||
|
||||
$check_member = sql_fetch("select * from {$g5['member_table']} limit 0, 1");
|
||||
if (!isset($check_member['mb_error_cnt'])) {
|
||||
sql_query(" ALTER TABLE `{$g5['member_table']}`
|
||||
ADD `mb_error_cnt` int(11) NOT NULL DEFAULT '0' AFTER `mb_10` ", true);
|
||||
}
|
||||
if (!isset($check_member['mb_error_content'])) {
|
||||
sql_query(" ALTER TABLE `{$g5['member_table']}`
|
||||
ADD `mb_error_content` varchar(255) NOT NULL DEFAULT '' AFTER `mb_error_cnt` ", true);
|
||||
}
|
||||
|
||||
if (!isset($config['cf_reply_cnt'])) {
|
||||
sql_query(" ALTER TABLE `{$g5['config_table']}`
|
||||
ADD `cf_reply_cnt` int(11) NOT NULL DEFAULT '0' AFTER `cf_10` ", true);
|
||||
sql_query("update {$g5['config_table']} set cf_reply_cnt = '3'");
|
||||
$config['cf_reply_cnt'] = 3;
|
||||
}
|
||||
|
||||
if ($cf_reply_cnt > 0) {
|
||||
sql_query("update {$g5['config_table']} set cf_reply_cnt = '{$cf_reply_cnt}'");
|
||||
$config['cf_reply_cnt'] = $cf_reply_cnt;
|
||||
}
|
||||
|
||||
|
||||
if (!$s_board) {
|
||||
$s_board = "free";
|
||||
}
|
||||
if (!$sst) {
|
||||
$sst = "bo.wr_logs";
|
||||
$sod = "desc";
|
||||
}
|
||||
$sql_order = " order by {$sst} {$sod} ";
|
||||
|
||||
|
||||
|
||||
$now_board = "";
|
||||
$search_board_sql = " select bo.bo_table, bo.bo_subject, gr.gr_id, gr.gr_subject from {$g5['board_table']} bo, {$g5['group_table']} gr where bo.gr_id = gr.gr_id order by gr.gr_id asc, bo.bo_subject asc ";
|
||||
$search_board = sql_query($search_board_sql);
|
||||
$board_select_option = "";
|
||||
for ($i = 0; $row = sql_fetch_array($search_board); $i++) {
|
||||
if (!$s_board) {
|
||||
$s_board = $row['bo_table'];
|
||||
}
|
||||
if ($row['bo_table'] == $s_board) {
|
||||
$s_board_select = "selected";
|
||||
$now_board = $row['bo_subject'];
|
||||
|
||||
} else {
|
||||
$s_board_select = "";
|
||||
}
|
||||
$board_select_option .= '<option value="' . $row['bo_table'] . '" ' . $s_board_select . '>[' . $row['gr_subject'] . '] ' . $row['bo_subject'] . '</option>';
|
||||
}
|
||||
|
||||
|
||||
$write_table = $g5['write_prefix'] . $s_board;
|
||||
|
||||
$qstr .= "&s_board=" . $s_board . "&s_date=" . $s_date . "&e_date=" . $e_date . "&check_manner=" . $check_manner;
|
||||
|
||||
if (!$s_date)
|
||||
$s_date = date('Y-m-d', strtotime("last Monday"));
|
||||
if (!$e_date) {
|
||||
$e_date = date('Y-m-d', strtotime("next Sunday"));
|
||||
}
|
||||
|
||||
|
||||
// -- 덧글 현황 처리하는 부분부터
|
||||
// 리플 매너 기록하는 필드를 각 게시판에 추가한다. (없을 경우)
|
||||
if (!sql_query(" select wr_manner from {$write_table} limit 1 ", false)) {
|
||||
$sql = " ALTER TABLE `{$write_table}` ADD `wr_manner` int(11) NOT NULL , ADD `wr_manner_txt` VARCHAR(255) NOT NULL ";
|
||||
sql_query($sql, false);
|
||||
}
|
||||
$sql_common = " from {$g5['member_table']} mb
|
||||
LEFT JOIN
|
||||
(select *,
|
||||
count(if(wr_id = wr_parent, wr_id, null)) as wr_logs,
|
||||
count(if(wr_id != wr_parent, wr_id, null)) as wr_cms
|
||||
from {$write_table}
|
||||
where wr_datetime >= '$s_date' and
|
||||
wr_datetime <= '$e_date'
|
||||
group by mb_id
|
||||
) bo
|
||||
ON mb.mb_id = bo.mb_id ";
|
||||
$sql_search = " where mb.mb_level > 1 and mb.mb_leave_date = '' and mb.mb_id != '{$config['cf_admin']}' and mb.mb_id NOT LIKE 'test%' and mb.ch_id != '0' ";
|
||||
|
||||
if ($s_mbid) {
|
||||
$sql_search .= " and mb.mb_id = '{$s_mbid}' ";
|
||||
}
|
||||
|
||||
$sql = " select count(*) as cnt {$sql_common} {$sql_search}";
|
||||
|
||||
|
||||
$row = sql_fetch($sql);
|
||||
$total_count = $row['cnt'];
|
||||
|
||||
if ($page < 1) {
|
||||
$page = 1;
|
||||
} // 페이지가 없으면 첫 페이지 (1 페이지)
|
||||
|
||||
if ($check_manner == '1') {
|
||||
$page_rows = 10;
|
||||
} else if ($check_manner == '2') {
|
||||
$page_rows = 1000;
|
||||
} else {
|
||||
$page_rows = 20;
|
||||
}
|
||||
|
||||
|
||||
$total_page = ceil($total_count / $page_rows); // 전체 페이지 계산
|
||||
$from_record = ($page - 1) * $page_rows; // 시작 열을 구함
|
||||
|
||||
$g5['title'] = '활동량 관리';
|
||||
include_once './admin.head.php';
|
||||
include_once G5_PLUGIN_PATH . '/jquery-ui/datepicker.php';
|
||||
|
||||
|
||||
$sql = " select
|
||||
mb.mb_id,
|
||||
mb.mb_name,
|
||||
mb.ch_id,
|
||||
mb.mb_today_login,
|
||||
mb.mb_error_content,
|
||||
bo.wr_logs, bo.wr_cms,
|
||||
mb.mb_error_cnt
|
||||
|
||||
{$sql_common} {$sql_search} {$sql_order}
|
||||
limit {$from_record}, $page_rows";
|
||||
//echo $sql;
|
||||
$result = sql_query($sql);
|
||||
if ($check_manner || $check_manner2) {
|
||||
$colspan = 10;
|
||||
} else {
|
||||
$colspan = 9;
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
<style>
|
||||
.search-box {
|
||||
display: block;
|
||||
position: relative;
|
||||
clear: both;
|
||||
margin: 20px 0;
|
||||
padding-right: 90px;
|
||||
background: #fafafa;
|
||||
border: 1px solid #ddd;
|
||||
}
|
||||
|
||||
.search-box .tbl {
|
||||
display: table;
|
||||
width: 100%;
|
||||
max-width: 100%;
|
||||
table-layout: fixed;
|
||||
}
|
||||
|
||||
.search-box .row {
|
||||
display: table-row;
|
||||
}
|
||||
|
||||
.search-box .row>* {
|
||||
display: table-cell;
|
||||
vertical-align: middle;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.search-box .row * {
|
||||
max-width: 100% !important;
|
||||
}
|
||||
|
||||
.search-box .label {
|
||||
width: 100px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.search-box .control {
|
||||
position: absolute;
|
||||
top: 10px;
|
||||
right: 10px;
|
||||
bottom: 10px;
|
||||
width: 70px;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.search-box .control>* {
|
||||
display: block;
|
||||
width: 100% !important;
|
||||
height: 100% !important;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="local_ov01 local_ov">
|
||||
<?php echo $listall ?>
|
||||
총 회원 수 <?php echo number_format($total_count) ?>명
|
||||
</div>
|
||||
|
||||
<form id="fsearch" name="fsearch" class="local_sch01 local_sch" method="get">
|
||||
|
||||
<div class="search-box">
|
||||
<div class="tbl">
|
||||
<div class="row">
|
||||
<div class="label">
|
||||
<strong>게시판 지정</strong>
|
||||
</div>
|
||||
<div>
|
||||
<select name="s_board">
|
||||
<?= $board_select_option ?>
|
||||
</select>
|
||||
</div>
|
||||
<div class="label">
|
||||
<strong>기간별검색</strong>
|
||||
</div>
|
||||
<div>
|
||||
<input type="text" name="s_date" value="<?= $s_date ?>" style="width:100px;" />
|
||||
~
|
||||
<input type="text" name="e_date" value="<?= $e_date ?>" style="width:100px;" />
|
||||
</div>
|
||||
<div class="label">
|
||||
<strong>멤버ID</strong>
|
||||
</div>
|
||||
<div>
|
||||
<input type="text" name="s_mbid" value="<?= $s_mbid ?>" style="width:100px;" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="label">
|
||||
<strong>리플매너</strong>
|
||||
</div>
|
||||
<div>
|
||||
<select name="check_manner">
|
||||
<option value="">리플매너 체크하지 않음</option>
|
||||
<option value="1" <?= $check_manner == '1' ? "selected" : "" ?>>10명씩 검색</option>
|
||||
<option value="2" <?= $check_manner == '2' ? "selected" : "" ?>>전체 검색 (게시물이 많을 시 속도가 굉장히 느립니다.)</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="label">
|
||||
<strong>로그아래 댓글 수</strong>
|
||||
</div>
|
||||
<div>
|
||||
<input type="text" value="<?= $config['cf_reply_cnt'] ?>" name="cf_reply_cnt" style="width:30px;" /> 개
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="control">
|
||||
<input type="submit" class="btn_submit" value="검색">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<form name="fmemberlist" id="fmemberlist" action="./action_list_update.php" onsubmit="return fmemberlist_submit(this);"
|
||||
method="post">
|
||||
<input type="hidden" name="sst" value="<?php echo $sst ?>">
|
||||
<input type="hidden" name="sod" value="<?php echo $sod ?>">
|
||||
<input type="hidden" name="sfl" value="<?php echo $sfl ?>">
|
||||
<input type="hidden" name="stx" value="<?php echo $stx ?>">
|
||||
<input type="hidden" name="page" value="<?php echo $page ?>">
|
||||
|
||||
<div class="tbl_head01 tbl_wrap" id="actionStateList">
|
||||
<table class="tbl_hover">
|
||||
<caption><?php echo $g5['title']; ?> 목록</caption>
|
||||
<colgroup>
|
||||
<col style="width: 90px;" />
|
||||
<col style="width: 100px;" />
|
||||
<col style="width: 100px;" />
|
||||
<col style="width: 120px;" />
|
||||
<col style="width: 60px;" />
|
||||
<col style="width: 60px;" />
|
||||
<?php if ($check_manner || $check_manner2) { ?>
|
||||
<col style="width: 80px;" />
|
||||
<col style="width: 280px;" />
|
||||
<?php } ?>
|
||||
<col style="width: 150px;" />
|
||||
<col style="width: 80px;" />
|
||||
<col />
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col" id="mb_idx">
|
||||
<?php echo subject_sort_link('mb.ch_id', 's_board=' . $s_board . '&s_date=' . $s_date . '&e_date=' . $e_date) ?>캐릭터IDX</a>
|
||||
</th>
|
||||
<th scope="col" id="mb_list_id">
|
||||
<?php echo subject_sort_link('mb.mb_id', 's_board=' . $s_board . '&s_date=' . $s_date . '&e_date=' . $e_date) ?>아이디</a>
|
||||
</th>
|
||||
<th scope="col" id="mb_list_name">
|
||||
<?php echo subject_sort_link('mb.mb_nick', 's_board=' . $s_board . '&s_date=' . $s_date . '&e_date=' . $e_date) ?>닉네임</a>
|
||||
</th>
|
||||
<th scope="col">
|
||||
<?php echo subject_sort_link('bo.wr_subject', 's_board=' . $s_board . '&s_date=' . $s_date . '&e_date=' . $e_date) ?>대표캐릭터</a>
|
||||
</th>
|
||||
<th>
|
||||
<?php echo subject_sort_link('wr_logs', 's_board=' . $s_board . '&s_date=' . $s_date . '&e_date=' . $e_date) ?>로그</a>
|
||||
</th>
|
||||
<th><?php echo subject_sort_link('wr_cms', 's_board=' . $s_board . '&s_date=' . $s_date . '&e_date=' . $e_date) ?>덧글</a>
|
||||
</th>
|
||||
<?php if ($check_manner || $check_manner2) { ?>
|
||||
<th>리플매너</th>
|
||||
<th>리플 미기재 로그</th>
|
||||
<?php } ?>
|
||||
|
||||
<th scope="col">
|
||||
<?php echo subject_sort_link('mb.mb_today_login', 's_board=' . $s_board . '&s_date=' . $s_date . '&e_date=' . $e_date) ?>최종
|
||||
접속</a></th>
|
||||
<th scope="col">
|
||||
<?php echo subject_sort_link('mb.mb_error_cnt', 's_board=' . $s_board . '&s_date=' . $s_date . '&e_date=' . $e_date) ?>누적경고</a>
|
||||
</th>
|
||||
<th>경고내용</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php
|
||||
for ($i = 0; $row = sql_fetch_array($result); $i++) { ?>
|
||||
<tr class="<?php echo $bg; ?>" data-mbid="<?= $row['mb_id'] ?>">
|
||||
<td>
|
||||
<?= $row['ch_id'] ?>
|
||||
</td>
|
||||
<td>
|
||||
<input type="hidden" name="mb_id[<?php echo $i ?>]" value="<?php echo $row['mb_id'] ?>"
|
||||
id="mb_id_<?php echo $i ?>">
|
||||
<input type="hidden" name="chk[]" value="<?php echo $i ?>" id="chk_<?php echo $i ?>">
|
||||
<?= $row['mb_id'] ?>
|
||||
</td>
|
||||
<td><?= $row['mb_name'] ?></td>
|
||||
<td><a href="./character_form.php?w=u&ch_id=<?= $row['ch_id'] ?>"
|
||||
target="_blank"><?= get_character_name($row['ch_id']) ?></a></td>
|
||||
<td style="text-align: center;"><?= number_format($row['wr_logs']) ?></td>
|
||||
<td style="text-align: center;"><?= number_format($row['wr_cms']) ?></td>
|
||||
<?php if ($check_manner || $check_manner2) { ?>
|
||||
<td>
|
||||
<div class="manner-state"><span style="color:#ddd;">Loading...</span></div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="manner-link"><span style="color:#ddd;">Loading...</span></div>
|
||||
</td>
|
||||
<?php } ?>
|
||||
<td style="text-align: center; color: #999;"><?= $row['mb_today_login'] ?></td>
|
||||
<td style="text-align: center;">
|
||||
<input type="text" name="mb_error_cnt[<?php echo $i ?>]" value="<?php echo $row['mb_error_cnt'] ?>" size="3"
|
||||
style="width:50%;"> 회
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" name="mb_error_content[<?php echo $i ?>]" value="<?php echo $row['mb_error_content'] ?>"
|
||||
style="width: 98%;">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<?php
|
||||
}
|
||||
if ($i == 0)
|
||||
echo "<tr><td colspan=\"" . $colspan . "\" class=\"empty_table\">자료가 없습니다.</td></tr>";
|
||||
?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="btn_list01 btn_list">
|
||||
<input type="submit" name="act_button" value="일괄수정" onclick="document.pressed=this.value">
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<?php echo get_paging(20, $page, $total_page, '?' . $qstr . '&page='); ?>
|
||||
|
||||
<script>
|
||||
|
||||
function fmemberlist_submit(f) {
|
||||
return true;
|
||||
}
|
||||
$(function () {
|
||||
$("#fr_date, #to_date").datepicker({ changeMonth: true, changeYear: true, dateFormat: "yy-mm-dd", showButtonPanel: true, yearRange: "c-99:c+99", maxDate: "+0d" });
|
||||
|
||||
<?php if ($check_manner || $check_manner2) { ?>
|
||||
$('#actionStateList tbody tr').each(function () {
|
||||
_load_log(this);
|
||||
});
|
||||
<?php } ?>
|
||||
});
|
||||
|
||||
|
||||
|
||||
function _load_log(obj) {
|
||||
var s_date = '<?= $s_date ?>';
|
||||
var e_date = '<?= $e_date ?>';
|
||||
var s_board = '<?= $s_board ?>';
|
||||
var mb_id = $(obj).attr('data-mbid');
|
||||
|
||||
var sendData = { s_date: s_date, e_date: e_date, s_board: s_board, mb_id: mb_id };
|
||||
var url = g5_url + "/adm/action_manner_search.php";
|
||||
|
||||
$.ajax({
|
||||
type: 'post'
|
||||
, url: url
|
||||
, data: sendData
|
||||
, dataType: "json"
|
||||
, success: function (data) {
|
||||
$(obj).find('.manner-state').html(data.state);
|
||||
$(obj).find('.manner-link').html(data.link);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
</script>
|
||||
|
||||
<?php
|
||||
include_once './admin.tail.php';
|
||||
?>
|
||||
28
AvocadoAmber/adm/action_list_update.php
Normal file
28
AvocadoAmber/adm/action_list_update.php
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
<?php
|
||||
include_once './_common.php';
|
||||
|
||||
check_demo();
|
||||
auth_check($auth[$sub_menu], 'w');
|
||||
|
||||
for ($i = 0; $i < count($_POST['chk']); $i++) {
|
||||
// 실제 번호를 넘김
|
||||
$k = $_POST['chk'][$i];
|
||||
|
||||
$mb = get_member($_POST['mb_id'][$k]);
|
||||
|
||||
if (!$mb['mb_id']) {
|
||||
$msg .= $mb['mb_id'] . ' : 회원자료가 존재하지 않습니다.\\n';
|
||||
} else {
|
||||
$sql = " update {$g5['member_table']}
|
||||
set mb_error_cnt = '{$_POST['mb_error_cnt'][$k]}',
|
||||
mb_error_content = '{$_POST['mb_error_content'][$k]}'
|
||||
where mb_id = '{$_POST['mb_id'][$k]}' ";
|
||||
sql_query($sql);
|
||||
}
|
||||
}
|
||||
|
||||
if ($msg)
|
||||
alert($msg);
|
||||
|
||||
goto_url('./action_list.php?' . $qstr);
|
||||
?>
|
||||
97
AvocadoAmber/adm/action_manner_search.php
Normal file
97
AvocadoAmber/adm/action_manner_search.php
Normal file
|
|
@ -0,0 +1,97 @@
|
|||
<?php
|
||||
header("Content-Type: application/json");
|
||||
include_once "./_common.php";
|
||||
|
||||
$write_table = $g5['write_prefix'] . $s_board;
|
||||
|
||||
if (!$s_date || !$e_date || !$mb_id || !$s_board) {
|
||||
echo json_encode([
|
||||
"test" => "error",
|
||||
"state" => "-",
|
||||
"link" => ''
|
||||
]);
|
||||
} else {
|
||||
|
||||
$state = '';
|
||||
$manner_txt = '';
|
||||
$add_manner_str = '';
|
||||
|
||||
if ($config['cf_reply_cnt'] < 1) {
|
||||
$state = '<span style="opacity:.5">준수</span>';
|
||||
} else {
|
||||
|
||||
// 자, 작업을 시작하자. 기간 내의 로그들을 모두 검색해서 돌린다.
|
||||
$log_sql = "select wr_id, mb_id, wr_num, wr_manner from {$write_table} where wr_datetime >= '$s_date' and wr_datetime <= '$e_date' and wr_is_comment=0 and mb_id = '{$mb_id}' and wr_manner < {$config['cf_reply_cnt']} order by wr_id";
|
||||
$log_result = sql_query($log_sql);
|
||||
|
||||
for ($j = 0; $log = sql_fetch_array($log_result); $j++) {
|
||||
// 리플 매너를 체크 한다.
|
||||
$comment_sql = "select wr_id, wr_num, mb_id from {$write_table} where wr_id < '{$log['wr_id']}' and wr_is_comment=0 order by wr_id desc limit 0, {$config['cf_reply_cnt']}";
|
||||
$comment_result = sql_query($comment_sql);
|
||||
|
||||
$manner_count = 0;
|
||||
$manner_num = "";
|
||||
$add_manner_num = "";
|
||||
|
||||
$prev_num = $log['wr_num'] * -1;
|
||||
$is_del = '; color:#fff;';
|
||||
$is_del_check = false;
|
||||
|
||||
for ($k = 0; $comm = sql_fetch_array($comment_result); $k++) {
|
||||
$ttmmm_state = "";
|
||||
if ($comm['mb_id'] == $config['cf_admin']) {
|
||||
$manner_count++;
|
||||
} else if ($comm['mb_id'] == $mb_id) {
|
||||
$manner_count++;
|
||||
} else {
|
||||
// 관리자가 쓴 글도 아니고, 내가 쓴 글도 아닐때
|
||||
// 해당 글의 덧글 검색한다.
|
||||
$check_sql = "select count(wr_id) as cnt from {$write_table} where wr_parent = '{$comm['wr_id']}' and wr_is_comment = 1 and mb_id = '{$mb_id}'";
|
||||
$check_result = sql_fetch($check_sql);
|
||||
|
||||
if ($check_result['cnt'] > 0) {
|
||||
$manner_count++;
|
||||
} else {
|
||||
$ttmmm_state = "(X)";
|
||||
}
|
||||
}
|
||||
|
||||
$now_num = ($comm['wr_num'] * -1);
|
||||
|
||||
if ($prev_num - $now_num > 1) {
|
||||
$is_del = "; color:red;";
|
||||
$is_del_check = true;
|
||||
}
|
||||
$manner_num .= $add_manner_num . ($comm['wr_num'] * -1) . $ttmmm_state;
|
||||
$add_manner_num = "/";
|
||||
$prev_num = ($comm['wr_num'] * -1);
|
||||
}
|
||||
|
||||
if ($is_del_check && $manner_count == 1) {
|
||||
$manner_count = $config['cf_reply_cnt'];
|
||||
}
|
||||
|
||||
// 덧글 단 것이 부족할 때
|
||||
// 해당 글의 로그 번호를 가져온다.
|
||||
if ($manner_count < $config['cf_reply_cnt']) {
|
||||
$temp_link = "<a href='" . G5_BBS_URL . "/board.php?bo_table={$s_board}&log=" . ($log['wr_num'] * -1) . "' target='_blabk' style='display:block; {$is_del} text-align:left; padding:.2em .5em; border-raidus:4px; margin:1px; background:#29c7c9;'>" . ($log['wr_num'] * -1) . " [" . ($config['cf_reply_cnt'] - ($manner_count * 1)) . " : {$manner_num}]</a>";
|
||||
$manner_txt = $manner_txt . $add_manner_str . $temp_link;
|
||||
}
|
||||
|
||||
$update_sql = " update {$write_table} set wr_manner = {$manner_count} where wr_id = '{$log['wr_id']}'";
|
||||
sql_query($update_sql);
|
||||
}
|
||||
|
||||
if ($manner_txt == '') {
|
||||
$state = '<span style="opacity:.5">준수</span>';
|
||||
} else {
|
||||
$state = '<span style="color:red">경고</span>';
|
||||
}
|
||||
}
|
||||
|
||||
echo json_encode([
|
||||
"test" => $comment_sql,
|
||||
"state" => $state,
|
||||
"link" => $manner_txt
|
||||
]);
|
||||
}
|
||||
83
AvocadoAmber/adm/action_reply.php
Normal file
83
AvocadoAmber/adm/action_reply.php
Normal file
|
|
@ -0,0 +1,83 @@
|
|||
<?php
|
||||
include_once './_common.php';
|
||||
auth_check($auth[$sub_menu], 'r');
|
||||
|
||||
if (!$s_year)
|
||||
$s_year = date('Y');
|
||||
if (!$s_month)
|
||||
$s_month = date('m');
|
||||
$fr_date = $s_year . "-" . $s_month . "-" . "01";
|
||||
$to_date = $s_year . "-" . $s_month . "-" . "32";
|
||||
?>
|
||||
|
||||
<style>
|
||||
html,
|
||||
body {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 0;
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
||||
p>a {
|
||||
display: block;
|
||||
position: relative;
|
||||
color: #fff;
|
||||
font-size: 12px;
|
||||
text-decoration: none;
|
||||
border-top: 1px dashed #666;
|
||||
padding: 4px 3px;
|
||||
}
|
||||
|
||||
p:first-child>a {
|
||||
border-top: none;
|
||||
}
|
||||
|
||||
p>a:hover {
|
||||
color: yellow;
|
||||
}
|
||||
</style>
|
||||
|
||||
<?php
|
||||
$reply_count = [];
|
||||
$reply_index = 0;
|
||||
$log = sql_query("select mu_id from g5_mmb_upload where mu_datetime > '{$fr_date}' and mu_datetime < '{$to_date}' and (mu_id > '5599' or mu_id < '5370') and (mu_id > '6576' or mu_id < '6369') and mb_id = '{$mb_id}'");
|
||||
|
||||
|
||||
for ($j = 0; $row = sql_fetch_array($log); $j++) {
|
||||
$log2 = sql_query("select mu_id from g5_mmb_upload where mu_id < '{$row['mu_id']}' order by mu_id desc limit 0, 3");
|
||||
|
||||
for ($k = 0; $row2 = sql_fetch_array($log2); $k++) {
|
||||
$comment_log = sql_fetch("select mu_id, count(*) as cnt from g5_mmb_comment where mu_id = '{$row2['mu_id']}' and mb_id = '{$mb_id}'");
|
||||
|
||||
if ($comment_log['cnt'] == '0') {
|
||||
if ($reply_count[$reply_index]['mc_no_count'] == "")
|
||||
$reply_count[$reply_index]['mc_no_count'] = 0;
|
||||
|
||||
if ($reply_count[$reply_index]['mu_id'] != $row['mu_id']) {
|
||||
$reply_index++;
|
||||
$reply_count[$reply_index]['mu_id'] = $row['mu_id'];
|
||||
}
|
||||
$reply_count[$reply_index]['mc_no_count']++;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php for ($i = 0; $i < count($reply_count); $i++) {
|
||||
if ($reply_count[$i]['mu_id']) {
|
||||
?>
|
||||
<p>
|
||||
<a href="/mmb/index.php?mu_id=<?= $reply_count[$i]['mu_id'] ?>" target="_blank">
|
||||
<?= $reply_count[$i]['mu_id'] ?>번 로그 (<?= 3 - $reply_count[$i]['mc_no_count'] ?>/3)
|
||||
</a>
|
||||
</p>
|
||||
<?php }
|
||||
} ?>
|
||||
|
||||
<?php
|
||||
include_once '../tail.sub.php';
|
||||
?>
|
||||
|
|
@ -185,7 +185,7 @@ function get_theme_config_value($dir, $key = '*')
|
|||
|
||||
$theme_config_file = G5_PATH . '/' . G5_THEME_DIR . '/' . $dir . '/theme.config.php';
|
||||
if (is_file($theme_config_file)) {
|
||||
include($theme_config_file);
|
||||
include $theme_config_file;
|
||||
|
||||
if ($key == '*') {
|
||||
$tconfig = $theme_config;
|
||||
|
|
|
|||
707
AvocadoAmber/adm/character_pass_manager.php
Normal file
707
AvocadoAmber/adm/character_pass_manager.php
Normal file
|
|
@ -0,0 +1,707 @@
|
|||
<?php
|
||||
/**
|
||||
* @var string|int $s_class
|
||||
* @var string|int $s_side
|
||||
*/
|
||||
include_once './_common.php';
|
||||
|
||||
auth_check($auth[$sub_menu], 'r');
|
||||
|
||||
// 캐릭터 합발 여부 체크 필드가 존재하지 않을 경우
|
||||
$temp = sql_fetch("select * from {$g5['character_table']}");
|
||||
if (!isset($temp['ch_pass_state'])) {
|
||||
sql_query(" ALTER TABLE `{$g5['character_table']}` ADD `ch_pass_state` varchar(255) NOT NULL DEFAULT '' AFTER `ch_state` ");
|
||||
}
|
||||
|
||||
$ch_si = [];
|
||||
if ($config['cf_side_title']) {
|
||||
$side_result = sql_query("select si_id, si_name from {$g5['side_table']} where si_auth <= '{$member['mb_level']}' order by si_id asc");
|
||||
for ($i = 0; $row = sql_fetch_array($side_result); $i++) {
|
||||
$ch_si[$i]['name'] = $row['si_name'];
|
||||
$ch_si[$i]['id'] = $row['si_id'];
|
||||
}
|
||||
}
|
||||
|
||||
$ch_cl = [];
|
||||
if ($config['cf_class_title']) {
|
||||
$class_result = sql_query("select cl_id, cl_name from {$g5['class_table']} where cl_auth <= '{$member['mb_level']}' order by cl_id asc");
|
||||
for ($i = 0; $row = sql_fetch_array($class_result); $i++) {
|
||||
$ch_cl[$i]['name'] = $row['cl_name'];
|
||||
$ch_cl[$i]['id'] = $row['cl_id'];
|
||||
}
|
||||
}
|
||||
|
||||
$sql_common = " from {$g5['character_table']} ";
|
||||
$sql_search = " where ch_state = '대기' ";
|
||||
if ($stx) {
|
||||
$sql_search .= " and ( ";
|
||||
if ($sfl == 'ch_pass_state') {
|
||||
switch ($stx) {
|
||||
case '미정':
|
||||
$sql_search .= " ({$sfl} = '') ";
|
||||
break;
|
||||
default:
|
||||
$sql_search .= " ({$sfl} like '{$stx}%') ";
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
switch ($sfl) {
|
||||
default:
|
||||
$sql_search .= " ({$sfl} like '{$stx}%') ";
|
||||
break;
|
||||
}
|
||||
}
|
||||
$sql_search .= " ) ";
|
||||
}
|
||||
|
||||
if ($s_side) {
|
||||
$sql_search .= " and ch_side = '{$s_side}' ";
|
||||
}
|
||||
|
||||
if ($s_class) {
|
||||
$sql_search .= " and ch_class = '{$s_class}' ";
|
||||
}
|
||||
|
||||
if (!$sst) {
|
||||
$sst = "ch_type";
|
||||
$sod = "asc";
|
||||
}
|
||||
|
||||
$sql_order = " order by {$sst} {$sod} ";
|
||||
|
||||
$sql = " select count(*) as cnt {$sql_common} {$sql_search} {$sql_order} ";
|
||||
$row = sql_fetch($sql);
|
||||
$total_count = $row['cnt'];
|
||||
|
||||
$rows = 50;
|
||||
$total_page = ceil($total_count / $rows); // 전체 페이지 계산
|
||||
if ($page < 1)
|
||||
$page = 1; // 페이지가 없으면 첫 페이지 (1 페이지)
|
||||
$from_record = ($page - 1) * $rows; // 시작 열을 구함
|
||||
|
||||
// 합격
|
||||
$sql = " select count(*) as cnt {$sql_common} where ch_state = '대기' and ch_pass_state = '합격' {$sql_order} ";
|
||||
$row = sql_fetch($sql);
|
||||
$pass_count = $row['cnt'];
|
||||
|
||||
// 보류
|
||||
$sql = " select count(*) as cnt {$sql_common} where ch_state = '대기' and ch_pass_state = '보류' {$sql_order} ";
|
||||
$row = sql_fetch($sql);
|
||||
$pass2_count = $row['cnt'];
|
||||
|
||||
// 불합격
|
||||
$sql = " select count(*) as cnt {$sql_common} where ch_state = '대기' and ch_pass_state = '불합' {$sql_order} ";
|
||||
$row = sql_fetch($sql);
|
||||
$pass3_count = $row['cnt'];
|
||||
|
||||
// 미정
|
||||
$sql = " select count(*) as cnt {$sql_common} where ch_state = '대기' and ch_pass_state = '' {$sql_order} ";
|
||||
$row = sql_fetch($sql);
|
||||
$pass4_count = $row['cnt'];
|
||||
|
||||
$listall = '<a href="' . $_SERVER['PHP_SELF'] . '" class="ov_listall">전체목록</a>';
|
||||
|
||||
$g5['title'] = '신청서 합격 관리';
|
||||
include_once './admin.head.php';
|
||||
|
||||
$sql = " select * {$sql_common} {$sql_search} {$sql_order} limit {$from_record}, {$rows} ";
|
||||
$result = sql_query($sql);
|
||||
|
||||
$colspan = 8;
|
||||
$m_background = get_style('m_background');
|
||||
?>
|
||||
<div class="local_ov01 local_ov">
|
||||
<?php echo $listall ?>
|
||||
수정완료 신청서 <?php echo number_format($total_count) ?>명
|
||||
<span style="float: right;">
|
||||
<a href="?sfl=ch_pass_state&stx=합격">합격 <?php echo number_format($pass_count) ?></a>명 |
|
||||
<a href="?sfl=ch_pass_state&stx=보류">보류 <?php echo number_format($pass2_count) ?></a>명 |
|
||||
<a href="?sfl=ch_pass_state&stx=불합">불합 <?php echo number_format($pass3_count) ?></a>명 |
|
||||
<a href="?sfl=ch_pass_state&stx=미정">미정 <?php echo number_format($pass4_count) ?></a>명
|
||||
</span>
|
||||
</div>
|
||||
<form id="fsearch" name="fsearch" class="local_sch01 local_sch" method="get">
|
||||
<?php
|
||||
if (count($ch_si) > 0) {
|
||||
?>
|
||||
<select name="s_side" id="c_side">
|
||||
<option value=""><?= $config['cf_side_title'] ?>선택</option>
|
||||
<?php for ($i = 0; $i < count($ch_si); $i++) { ?>
|
||||
<option value="<?= $ch_si[$i]['id'] ?>" <?php echo get_selected($_GET['s_side'], $ch_si[$i]['id']); ?>>
|
||||
<?= $ch_si[$i]['name'] ?></option>
|
||||
<?php } ?>
|
||||
</select>
|
||||
<?php } ?>
|
||||
<?php
|
||||
if (count($ch_cl) > 0) {
|
||||
?>
|
||||
<select name="s_class" id="c_class">
|
||||
<option value=""><?= $config['cf_class_title'] ?>선택</option>
|
||||
<?php for ($i = 0; $i < count($ch_cl); $i++) { ?>
|
||||
<option value="<?= $ch_cl[$i]['id'] ?>" <?php echo get_selected($_GET['s_class'], $ch_cl[$i]['id']); ?>>
|
||||
<?= $ch_cl[$i]['name'] ?></option>
|
||||
<?php } ?>
|
||||
</select>
|
||||
<?php } ?>
|
||||
<select name="sfl" id="sfl">
|
||||
<option value="ch_name" <?php echo get_selected($_GET['sfl'], "ch_name"); ?>>캐릭터 이름</option>
|
||||
<option value="mb_id" <?php echo get_selected($_GET['sfl'], "mb_id"); ?>>오너 아이디</option>
|
||||
<option value="ch_pass_state" <?php echo get_selected($_GET['sfl'], "ch_pass_state"); ?>>합격여부</option>
|
||||
</select>
|
||||
<input type="text" name="stx" value="<?php echo $stx ?>" id="stx" class="frm_input">
|
||||
<input type="submit" class="btn_submit" value="검색">
|
||||
<?php if ($is_admin == 'super') { ?>
|
||||
<div class="btn_add01 btn_add" style="float:right;">
|
||||
<a href="./character_pass_manager_confirm.php"
|
||||
onclick="return confirm('합격자 일괄 처리 시, 합격된 캐릭터들 전원 승인으로 상태가 변경됩니다.처리 하시겠습니까?');">합격자 일괄 처리</a>
|
||||
<a href="./character_pass_manager_delete.php"
|
||||
onclick="return confirm('불합격자 일괄 처리 시, 불합격된 캐릭터들 전원 정보가 삭제됩니다. 처리 하시겠습니까?');" style="background:red;">불합격자 일괄
|
||||
처리</a>
|
||||
</div>
|
||||
<?php } ?>
|
||||
</form>
|
||||
<div class="manager-wrap">
|
||||
<div class="btn_list01 btn_list btn_add" style="clear:both; text-align:left; float:none; padding:0;">
|
||||
<input type="button" onclick="$('#fmemberlist').submit();" value="상태 일괄 저장" style="background:#262931;" />
|
||||
</div>
|
||||
<div class="left">
|
||||
<form name="fmemberlist" id="fmemberlist" action="./character_pass_manager_update.php"
|
||||
onsubmit="return fshoplist_submit(this);" method="post">
|
||||
<input type="hidden" name="sst" value="<?php echo $sst ?>">
|
||||
<input type="hidden" name="sod" value="<?php echo $sod ?>">
|
||||
<input type="hidden" name="sfl" value="<?php echo $sfl ?>">
|
||||
<input type="hidden" name="stx" value="<?php echo $stx ?>">
|
||||
<input type="hidden" name="page" value="<?php echo $page ?>">
|
||||
|
||||
<ul class="calc-list">
|
||||
<?php
|
||||
for ($i = 0; $row = sql_fetch_array($result); $i++) {
|
||||
$ch_id = $row['ch_id'];
|
||||
$bg = 'bg' . ($i % 2);
|
||||
|
||||
$color = "";
|
||||
switch ($row['ch_pass_state']) {
|
||||
case "":
|
||||
$color = "#999;";
|
||||
break;
|
||||
case "합격":
|
||||
$color = "#9f9899;";
|
||||
break;
|
||||
case "불합":
|
||||
$color = "#999;";
|
||||
break;
|
||||
case "보류":
|
||||
$color = "#000;";
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
$is_prev_complete = false;
|
||||
if ($row['ch_pass_state'] != '') {
|
||||
$is_prev_complete = true;
|
||||
}
|
||||
?>
|
||||
|
||||
<li class="calc-item <?= $is_prev_complete ? "complete" : "" ?>" data-type="<?= $row['ch_pass_state'] ?>">
|
||||
<input type="hidden" name="ch_id[<?= $i ?>]" value="<?= $row['ch_id'] ?>" />
|
||||
<div class="thumb" style="background-image:url(<?= $row['ch_thumb'] ?>);"></div>
|
||||
<div class="info">
|
||||
<span class="state"
|
||||
data-type="<?= $row['ch_pass_state'] ?>"><?= $row['ch_pass_state'] ? $row['ch_pass_state'] : "미정" ?></span>
|
||||
<span class="character">
|
||||
<?= $row['ch_name'] ?>
|
||||
</span>
|
||||
</div>
|
||||
<div class="re-content">
|
||||
<div class="control">
|
||||
<input type="radio" name="ch_pass_state[<?= $i ?>]" id="state_<?= $i ?>_0" value=""
|
||||
<?= ($row['ch_pass_state'] == "" ? "checked" : "") ?> />
|
||||
<label for="state_<?= $i ?>_0" class="ty1">미정</label>
|
||||
|
||||
<input type="radio" name="ch_pass_state[<?= $i ?>]" id="state_<?= $i ?>_1" value="합격"
|
||||
<?= ($row['ch_pass_state'] == "합격" ? "checked" : "") ?> />
|
||||
<label for="state_<?= $i ?>_1" class="ty2">합격</label>
|
||||
|
||||
<input type="radio" name="ch_pass_state[<?= $i ?>]" id="state_<?= $i ?>_2" value="보류"
|
||||
<?= ($row['ch_pass_state'] == "보류" ? "checked" : "") ?> />
|
||||
<label for="state_<?= $i ?>_2" class="ty3">보류</label>
|
||||
|
||||
<input type="radio" name="ch_pass_state[<?= $i ?>]" id="state_<?= $i ?>_3" value="불합"
|
||||
<?= ($row['ch_pass_state'] == "불합" ? "checked" : "") ?> />
|
||||
<label for="state_<?= $i ?>_3" class="ty4">불합</label>
|
||||
</div>
|
||||
</div>
|
||||
<a href="<?= G5_URL ?>/member/viewer.php?ch_id=<?= $row['ch_id'] ?>" target="frm_preview"
|
||||
onclick="check_item(this);" class="link">프로필</a>
|
||||
</li>
|
||||
<?php } ?>
|
||||
</ul>
|
||||
|
||||
<?php echo get_paging(G5_IS_MOBILE ? $config['cf_mobile_pages'] : $config['cf_write_pages'], $page, $total_page, $_SERVER['PHP_SELF'] . '?' . $qstr); ?>
|
||||
|
||||
</form>
|
||||
</div>
|
||||
<div class="right">
|
||||
<iframe src="" name="frm_preview"></iframe>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<style>
|
||||
body {
|
||||
min-width: 1400px;
|
||||
}
|
||||
|
||||
#container {
|
||||
position: relative;
|
||||
min-height: 80vh;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
#wrapper {
|
||||
height: 100vh;
|
||||
}
|
||||
|
||||
.manager-wrap {
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 175px;
|
||||
left: 20px;
|
||||
right: 20px;
|
||||
bottom: 20px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.manager-wrap>.left {
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 40px;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
width: 500px;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.manager-wrap>.right {
|
||||
display: block;
|
||||
position: relative;
|
||||
height: 100%;
|
||||
width: auto;
|
||||
margin-left: 520px;
|
||||
border: 1px solid #ddd;
|
||||
max-width: 1000px;
|
||||
box-sizing: border-box;
|
||||
margin-top: -40px;
|
||||
}
|
||||
|
||||
.manager-wrap iframe {
|
||||
border: none;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
<?php if ($m_background['cs_value']) { ?>
|
||||
background-image: url('<?= $m_background['cs_value'] ?>');
|
||||
<?php } else { ?>
|
||||
background-image: none;
|
||||
<?php }
|
||||
if ($m_background['cs_etc_1']) { ?>
|
||||
background-color:
|
||||
<?= $m_background['cs_etc_1'] ?>
|
||||
;
|
||||
<?php }
|
||||
if ($m_background['cs_etc_2']) { ?>
|
||||
background-repeat:
|
||||
<?= $m_background['cs_etc_2'] ?>
|
||||
;
|
||||
<?php }
|
||||
if ($m_background['cs_etc_3']) { ?>
|
||||
background-position:
|
||||
<?= $m_background['cs_etc_3'] ?>
|
||||
;
|
||||
<?php }
|
||||
if ($m_background['cs_etc_4']) { ?>
|
||||
background-size:
|
||||
<?= $m_background['cs_etc_4'] ?>
|
||||
;
|
||||
<?php }
|
||||
if ($m_background['cs_etc_5']) { ?>
|
||||
background-attachment:
|
||||
<?= $m_background['cs_etc_5'] ?>
|
||||
;
|
||||
<?php } ?>
|
||||
}
|
||||
|
||||
|
||||
.calc-list {
|
||||
display: block;
|
||||
position: relative;
|
||||
margin: 0 0 20px;
|
||||
padding: 0;
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.calc-item {
|
||||
display: block;
|
||||
position: relative;
|
||||
border: 1px solid #dadada;
|
||||
margin: 0;
|
||||
padding: 10px;
|
||||
padding-left: 70px;
|
||||
padding-right: 70px;
|
||||
}
|
||||
|
||||
.calc-item>.thumb {
|
||||
position: absolute;
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
top: 10px;
|
||||
left: 10px;
|
||||
overflow: hidden;
|
||||
background: no-repeat 50% 50%;
|
||||
background-size: cover;
|
||||
}
|
||||
|
||||
.calc-item+.calc-item {
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
.calc-list .calc-item:nth-child(even) {
|
||||
background: #f1f1f1;
|
||||
}
|
||||
|
||||
.calc-item .link {
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 10px;
|
||||
right: 10px;
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
background: #29c7c9;
|
||||
line-height: 50px;
|
||||
text-align: center;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.calc-item:hover {
|
||||
background: #ffdddd !important;
|
||||
border-color: #e2a0a0;
|
||||
}
|
||||
|
||||
.calc-item.focus {
|
||||
background: #fff8d4 !important;
|
||||
border-color: #e0d184;
|
||||
}
|
||||
|
||||
.calc-item.over {
|
||||
background: #608fca !important;
|
||||
border-color: #2f7ad8;
|
||||
}
|
||||
|
||||
.calc-item.over * {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.calc-item.complete:before {
|
||||
content: "";
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: -1px;
|
||||
left: -1px;
|
||||
bottom: -1px;
|
||||
width: 4px;
|
||||
background: red;
|
||||
}
|
||||
|
||||
.calc-item.complete[data-type="합격"]:before {
|
||||
background: #2e4893;
|
||||
}
|
||||
|
||||
.calc-item.complete[data-type="보류"]:before {
|
||||
background: #999;
|
||||
}
|
||||
|
||||
.calc-item.complete[data-type="불합"]:before {
|
||||
background: #000000;
|
||||
}
|
||||
|
||||
.calc-item .info {
|
||||
display: table;
|
||||
width: 100%;
|
||||
table-layout: fixed;
|
||||
}
|
||||
|
||||
.calc-item .info>* {
|
||||
display: table-cell;
|
||||
vertical-align: middle;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.calc-item .info .state {
|
||||
width: 50px;
|
||||
}
|
||||
|
||||
.calc-item .info .state[data-type=""] {
|
||||
color: #cc5959;
|
||||
}
|
||||
|
||||
.calc-item .info .state[data-type="합격"] {
|
||||
color: #2e4893;
|
||||
}
|
||||
|
||||
.calc-item .info .state[data-type="보류"] {
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.calc-item .info .state[data-type="불합"] {
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
.calc-item .info .num {
|
||||
opacity: .6;
|
||||
width: 70px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.calc-item .info .type {
|
||||
text-align: center;
|
||||
width: 80px;
|
||||
}
|
||||
|
||||
.calc-item .info .tit em {
|
||||
display: inline-block;
|
||||
font-style: normal;
|
||||
font-size: 11px;
|
||||
background: rgba(0, 0, 0, .4);
|
||||
padding: 2px 3px;
|
||||
color: #fff;
|
||||
font-weight: 300;
|
||||
font-family: 'dotum';
|
||||
}
|
||||
|
||||
.calc-item .calc {
|
||||
display: table;
|
||||
width: 100%;
|
||||
table-layout: fixed;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.calc-item .calc>* {
|
||||
display: table-cell;
|
||||
vertical-align: middle;
|
||||
font-size: 12px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.calc-item .calc .ty1 {
|
||||
width: 220px;
|
||||
}
|
||||
|
||||
.calc-item .calc .ty2 {
|
||||
width: 230px;
|
||||
}
|
||||
|
||||
.calc-item .calc .ty3 {
|
||||
width: 230px;
|
||||
}
|
||||
|
||||
.calc-item .calc .ty4 {
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.calc-item .calc dl {
|
||||
display: table;
|
||||
width: 100%;
|
||||
table-layout: fixed;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.calc-item .calc dt,
|
||||
.calc-item .calc dd {
|
||||
display: table-cell;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.calc-item .calc dt {
|
||||
white-space: nowrap;
|
||||
text-align: right;
|
||||
box-sizing: border-box;
|
||||
padding-right: 5px;
|
||||
}
|
||||
|
||||
.calc-item .calc dt input {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.calc-item .calc dt span,
|
||||
.calc-item .calc dt label {
|
||||
display: block;
|
||||
position: relative;
|
||||
text-align: center;
|
||||
height: 25px;
|
||||
line-height: 22px;
|
||||
box-sizing: border-box;
|
||||
border: 1px solid rgba(0, 0, 0, .5);
|
||||
background: rgba(0, 0, 0, .3);
|
||||
color: #fff;
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
.calc-item .calc dt input:checked+label {
|
||||
background: #29c7c9;
|
||||
}
|
||||
|
||||
.calc-item .calc .ty1 dt {
|
||||
width: 60px;
|
||||
}
|
||||
|
||||
.calc-item .calc .ty2 dt {
|
||||
width: 65px;
|
||||
}
|
||||
|
||||
.calc-item .calc .ty3 dt {
|
||||
width: 65px;
|
||||
}
|
||||
|
||||
.calc-item .calc .ty4 dt {
|
||||
width: 50px;
|
||||
}
|
||||
|
||||
input::-webkit-outer-spin-button,
|
||||
input::-webkit-inner-spin-button {
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
.calc-item .calc input[type="number"],
|
||||
.calc-item .calc input[type="text"],
|
||||
.calc-item .calc input[type="number"] {
|
||||
background: transparent;
|
||||
border: none;
|
||||
border-bottom: 1px solid rgba(0, 0, 0, .5);
|
||||
;
|
||||
height: 25px;
|
||||
padding: 0;
|
||||
width: 100px;
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
.calc-item .calc input[type="number"] {
|
||||
appearance: none;
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
.calc-item .calc input[type="text"].error,
|
||||
.calc-item .calc input[type="number"].error {
|
||||
color: red;
|
||||
font-weight: 800;
|
||||
}
|
||||
|
||||
.calc-item .calc .small {
|
||||
width: 30px !important;
|
||||
}
|
||||
|
||||
.calc-item .calc .ty4 input[type="text"] {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.calc-item .re-content {
|
||||
display: table;
|
||||
width: 100%;
|
||||
table-layout: fixed;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.calc-item .re-content>* {
|
||||
display: table-cell;
|
||||
vertical-align: middle;
|
||||
font-size: 12px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.calc-item .re-content input[type="text"] {
|
||||
border: none;
|
||||
width: 100%;
|
||||
border-bottom: 1px solid rgba(0, 0, 0, .5);
|
||||
background: transparent;
|
||||
outline: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.calc-item .re-content .control {
|
||||
width: 190px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.calc-item .re-content .control input {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.calc-item .re-content .control label {
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
vertical-align: middle;
|
||||
width: 60px;
|
||||
text-align: center;
|
||||
height: 25px;
|
||||
line-height: 22px;
|
||||
box-sizing: border-box;
|
||||
border: 1px solid rgba(0, 0, 0, .3);
|
||||
color: #333;
|
||||
border-radius: 0px;
|
||||
}
|
||||
|
||||
.calc-item .re-content .control label.ty1 {
|
||||
color: red;
|
||||
}
|
||||
|
||||
.calc-item .re-content .control label.ty2 {
|
||||
color: #2e4893;
|
||||
}
|
||||
|
||||
.calc-item .re-content .control label.ty3 {
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.calc-item .re-content .control label.ty4 {
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
.calc-item .re-content .control input:checked+label.ty1 {
|
||||
background: #cc5959;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.calc-item .re-content .control input:checked+label.ty2 {
|
||||
background: #2e4893;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.calc-item .re-content .control input:checked+label.ty3 {
|
||||
background: #999;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.calc-item .re-content .control input:checked+label.ty4 {
|
||||
background: #000000;
|
||||
color: #fff;
|
||||
}
|
||||
</style>
|
||||
|
||||
<script>
|
||||
function fshoplist_submit(f) {
|
||||
return true;
|
||||
}
|
||||
function check_item(obj) {
|
||||
$(obj).closest('li').addClass('over').siblings().removeClass('over');
|
||||
}
|
||||
function reset_item() {
|
||||
$('.calc-list').find('li').removeClass('hover');
|
||||
}
|
||||
|
||||
$('.calc-list *').on('focus', function () {
|
||||
$(this).closest('.calc-item').addClass('focus');
|
||||
}).on('focusout', function () {
|
||||
$(this).closest('.calc-item').removeClass('focus');
|
||||
});
|
||||
</script>
|
||||
<?php
|
||||
include_once './admin.tail.php';
|
||||
7
AvocadoAmber/adm/character_pass_manager_confirm.php
Normal file
7
AvocadoAmber/adm/character_pass_manager_confirm.php
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<?php
|
||||
ini_set("display_errors", 1);
|
||||
|
||||
include_once './_common.php';
|
||||
|
||||
sql_query("update {$g5['character_table']} set ch_state = '승인' where ch_pass_state = '합격' and ch_state = '대기'");
|
||||
goto_url('./character_pass_manager.php?' . $qstr);
|
||||
9
AvocadoAmber/adm/character_pass_manager_delete.php
Normal file
9
AvocadoAmber/adm/character_pass_manager_delete.php
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
<?php
|
||||
ini_set("display_errors", 1);
|
||||
|
||||
include_once './_common.php';
|
||||
|
||||
sql_query(" delete from {$g5['character_table']} where ch_pass_state != '합격' and ch_state != '승인' ");
|
||||
|
||||
goto_url('./character_pass_manager.php?' . $qstr);
|
||||
|
||||
14
AvocadoAmber/adm/character_pass_manager_update.php
Normal file
14
AvocadoAmber/adm/character_pass_manager_update.php
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
<?php
|
||||
ini_set("display_errors", 1);
|
||||
|
||||
include_once './_common.php';
|
||||
|
||||
$sql = "";
|
||||
|
||||
for ($i = 0; $i < count($ch_id); $i++) {
|
||||
// 내역 업데이트
|
||||
sql_query("update {$g5['character_table']} set ch_pass_state = '{$ch_pass_state[$i]}' where ch_id = '{$ch_id[$i]}'");
|
||||
|
||||
}
|
||||
|
||||
goto_url('./character_pass_manager.php?' . $qstr);
|
||||
|
|
@ -177,7 +177,7 @@ unlink($file_path);
|
|||
$f = @fopen($file, 'a');
|
||||
|
||||
ob_start();
|
||||
include("./design_form_css.php");
|
||||
include "./design_form_css.php";
|
||||
$css = ob_get_contents();
|
||||
ob_end_flush();
|
||||
fwrite($f, $css);
|
||||
|
|
|
|||
|
|
@ -34,11 +34,11 @@ include_once G5_ADMIN_PATH . '/admin.head.php';
|
|||
<tr>
|
||||
<th scope="row" rowspan="2">인트로 이미지</th>
|
||||
<td rowspan="2" class="txt-center bo-right ">
|
||||
<? if ($bn['bn_img']) { ?>
|
||||
<?php if ($bn['bn_img']) { ?>
|
||||
<img src="<?= $bn['bn_img'] ?>" class="prev_thumb" />
|
||||
<? } else { ?>
|
||||
<?php } else { ?>
|
||||
이미지 없음
|
||||
<? } ?>
|
||||
<?php } ?>
|
||||
</td>
|
||||
<td>
|
||||
직접등록 <input type="file" name="bn_img_file" size="50" />
|
||||
|
|
@ -52,11 +52,11 @@ include_once G5_ADMIN_PATH . '/admin.head.php';
|
|||
<tr>
|
||||
<th scope="row" rowspan="2">인트로 모바일 이미지</th>
|
||||
<td rowspan="2" class="txt-center bo-right ">
|
||||
<? if ($bn['bn_img']) { ?>
|
||||
<?php if ($bn['bn_img']) { ?>
|
||||
<img src="<?= $bn['bn_m_img'] ?>" class="prev_thumb" />
|
||||
<? } else { ?>
|
||||
<?php } else { ?>
|
||||
이미지 없음
|
||||
<? } ?>
|
||||
<?php } ?>
|
||||
</td>
|
||||
<td>
|
||||
직접등록 <input type="file" name="bn_m_img_file" size="50" />
|
||||
|
|
|
|||
|
|
@ -184,17 +184,11 @@ $colspan = 10;
|
|||
</table>
|
||||
</div>
|
||||
|
||||
<div class="btn_confirm">
|
||||
<div class="btn ty3">
|
||||
<span class="material-icons">build</span>
|
||||
<input type="submit" name="act_button" value="선택수정" title="선택수정" onclick="document.pressed=this.value">
|
||||
</div>
|
||||
<div class="btn ty2">
|
||||
<span class="material-icons">delete</span>
|
||||
<input type="submit" name="act_button" value="완전삭제" title="완전삭제" onclick="document.pressed=this.value">
|
||||
</div>
|
||||
<div class="list_confirm">
|
||||
<input type="submit" name="act_button" value="선택수정" title="선택수정" onclick="document.pressed=this.value">
|
||||
<input type="submit" name="act_button" value="완전삭제" title="완전삭제" onclick="document.pressed=this.value">
|
||||
<?php if ($is_admin == 'super') { ?>
|
||||
<a href="./member_form.php" title="회원추가" class="btn"><span class="material-icons">add</span></a>
|
||||
<a href="./member_form.php" title="회원추가" class="btn">회원 추가</a>
|
||||
<?php } ?>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
197
AvocadoAmber/adm/member_nocharacter_list.php
Normal file
197
AvocadoAmber/adm/member_nocharacter_list.php
Normal file
|
|
@ -0,0 +1,197 @@
|
|||
<?php
|
||||
include_once './_common.php';
|
||||
|
||||
auth_check($auth[$sub_menu], 'r');
|
||||
|
||||
$sql_common = " from {$g5['member_table']} ";
|
||||
$sql_search = " where ch_id = '0' and mb_id != '{$config['cf_admin']}' ";
|
||||
|
||||
if (!$sst) {
|
||||
$sst = "mb_datetime";
|
||||
$sod = "desc";
|
||||
}
|
||||
|
||||
$sql_order = " order by {$sst} {$sod} ";
|
||||
|
||||
$sql = " select count(*) as cnt {$sql_common} {$sql_search} {$sql_order} ";
|
||||
$row = sql_fetch($sql);
|
||||
$total_count = $row['cnt'];
|
||||
|
||||
$rows = $config['cf_page_rows'];
|
||||
$total_page = ceil($total_count / $rows); // 전체 페이지 계산
|
||||
if ($page < 1)
|
||||
$page = 1; // 페이지가 없으면 첫 페이지 (1 페이지)
|
||||
$from_record = ($page - 1) * $rows; // 시작 열을 구함
|
||||
|
||||
// 탈퇴회원수
|
||||
$sql = " select count(*) as cnt {$sql_common} {$sql_search} and mb_leave_date <> '' {$sql_order} ";
|
||||
$row = sql_fetch($sql);
|
||||
$leave_count = $row['cnt'];
|
||||
|
||||
// 차단회원수
|
||||
$sql = " select count(*) as cnt {$sql_common} {$sql_search} and mb_intercept_date <> '' {$sql_order} ";
|
||||
$row = sql_fetch($sql);
|
||||
$intercept_count = $row['cnt'];
|
||||
|
||||
$listall = '<a href="' . $_SERVER['SCRIPT_NAME'] . '" class="ov_listall">전체목록</a>';
|
||||
|
||||
$g5['title'] = '캐릭터 미등록 회원관리';
|
||||
include_once './admin.head.php';
|
||||
|
||||
$sql = " select * {$sql_common} {$sql_search} {$sql_order} limit {$from_record}, {$rows} ";
|
||||
$result = sql_query($sql);
|
||||
|
||||
$colspan = 9;
|
||||
?>
|
||||
<div class="local_ov01 local_ov">
|
||||
<?php echo $listall ?>
|
||||
캐릭터 미등록 멤버 <?php echo number_format($total_count) ?>명 중,
|
||||
<a href="?sst=mb_intercept_date&sod=desc&sfl=<?php echo $sfl ?>&stx=<?php echo $stx ?>">차단
|
||||
<?php echo number_format($intercept_count) ?></a>명,
|
||||
<a href="?sst=mb_leave_date&sod=desc&sfl=<?php echo $sfl ?>&stx=<?php echo $stx ?>">탈퇴
|
||||
<?php echo number_format($leave_count) ?></a>명
|
||||
</div>
|
||||
<div class="local_desc01 local_desc">
|
||||
<p>
|
||||
회원 자료를 완전히 삭제합니다.
|
||||
</p>
|
||||
</div>
|
||||
<form name="fmemberlist" id="fmemberlist" action="./member_nocharacter_list_update.php"
|
||||
onsubmit="return fmemberlist_submit(this);" method="post">
|
||||
<input type="hidden" name="sst" value="<?php echo $sst ?>">
|
||||
<input type="hidden" name="sod" value="<?php echo $sod ?>">
|
||||
<input type="hidden" name="sfl" value="<?php echo $sfl ?>">
|
||||
<input type="hidden" name="stx" value="<?php echo $stx ?>">
|
||||
<input type="hidden" name="page" value="<?php echo $page ?>">
|
||||
<input type="hidden" name="token" value="">
|
||||
<div class="tbl_head01 tbl_wrap">
|
||||
<table>
|
||||
<caption><?php echo $g5['title']; ?> 목록</caption>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
<input type="checkbox" name="chkall" value="1" id="chkall" onclick="check_all(this.form)">
|
||||
</th>
|
||||
<th>아이디</a></th>
|
||||
<th>이름</a></th>
|
||||
<th>생년</a></th>
|
||||
<th>보유캐릭터</a></th>
|
||||
<th>상태</th>
|
||||
<th>권한</th>
|
||||
<th>가입일</a></th>
|
||||
<th>최종접속</a></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php
|
||||
for ($i = 0; $row = sql_fetch_array($result); $i++) {
|
||||
|
||||
$s_mod = '<a href="./member_form.php?' . $qstr . '&w=u&mb_id=' . $row['mb_id'] . '">수정</a>';
|
||||
$leave_date = $row['mb_leave_date'] ? $row['mb_leave_date'] : date('Ymd', G5_SERVER_TIME);
|
||||
$intercept_date = $row['mb_intercept_date'] ? $row['mb_intercept_date'] : date('Ymd', G5_SERVER_TIME);
|
||||
$mb_nick = get_sideview($row['mb_id'], get_text($row['mb_nick']), $row['mb_email'], $row['mb_homepage']);
|
||||
$mb_id = $row['mb_id'];
|
||||
$leave_msg = '';
|
||||
$intercept_msg = '';
|
||||
$intercept_title = '';
|
||||
if ($row['mb_leave_date']) {
|
||||
$leave_msg = '<span class="mb_leave_msg">탈퇴함</span>';
|
||||
} else if ($row['mb_intercept_date']) {
|
||||
$intercept_msg = '<span class="mb_intercept_msg">차단됨</span>';
|
||||
$intercept_title = '차단해제';
|
||||
}
|
||||
if ($intercept_title == '')
|
||||
$intercept_title = '차단하기';
|
||||
$bg = 'bg' . ($i % 2);
|
||||
?>
|
||||
|
||||
<tr class="<?php echo $bg; ?>">
|
||||
<td>
|
||||
<input type="hidden" name="mb_id[<?php echo $i ?>]" value="<?php echo $row['mb_id'] ?>"
|
||||
id="mb_id_<?php echo $i ?>">
|
||||
<label for="chk_<?php echo $i; ?>" class="sound_only"><?php echo get_text($row['mb_name']); ?>
|
||||
<?php echo get_text($row['mb_nick']); ?>님</label>
|
||||
<input type="checkbox" name="chk[]" value="<?php echo $i ?>" id="chk_<?php echo $i ?>">
|
||||
</td>
|
||||
|
||||
<td><?php echo $mb_id ?></td>
|
||||
<td><?php echo get_text($row['mb_name']); ?></td>
|
||||
<td><?php echo get_text($row['mb_birth']); ?></td>
|
||||
<td class="txt-left">
|
||||
<?php
|
||||
// 해당 멤버의 캐릭터 검색
|
||||
$add_character_str = "";
|
||||
$ch_result = sql_query("select ch_name, ch_id from {$g5['character_table']} where mb_id = '{$row['mb_id']}'");
|
||||
for ($j = 0; $ch = sql_fetch_array($ch_result); $j++) {
|
||||
?>
|
||||
<?= $add_character_str ?>
|
||||
<a href="./character_form.php?w=u&ch_id=<?= $ch['ch_id'] ?>"><?= $ch['ch_name'] ?></a>
|
||||
|
||||
<?php
|
||||
$add_character_str = " / ";
|
||||
}
|
||||
if ($j == 0) {
|
||||
?>
|
||||
<span style="color:#bbb;">보유중인 캐릭터가 없습니다.</span>
|
||||
<?php } ?>
|
||||
</td>
|
||||
|
||||
<td>
|
||||
<?php
|
||||
if ($leave_msg || $intercept_msg)
|
||||
echo $leave_msg . ' ' . $intercept_msg;
|
||||
else
|
||||
echo "정상";
|
||||
?>
|
||||
</td>
|
||||
<td>
|
||||
<?php echo get_member_level_select("mb_level[$i]", 1, $member['mb_level'], $row['mb_level']) ?>
|
||||
</td>
|
||||
<td><?php echo substr($row['mb_datetime'], 2, 8); ?></td>
|
||||
<td><?php echo substr($row['mb_today_login'], 2, 8); ?></td>
|
||||
</tr>
|
||||
|
||||
<?php
|
||||
}
|
||||
if ($i == 0)
|
||||
echo "<tr><td colspan=\"" . $colspan . "\" class=\"empty_table\">자료가 없습니다.</td></tr>";
|
||||
?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="list_confirm">
|
||||
<input type="submit" name="act_button" value="선택삭제" onclick="document.pressed=this.value">
|
||||
<input type="submit" name="act_button" value="전체삭제" onclick="document.pressed=this.value">
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<?php echo get_paging(G5_IS_MOBILE ? $config['cf_mobile_pages'] : $config['cf_write_pages'], $page, $total_page, '?' . $qstr . '&page='); ?>
|
||||
|
||||
<script>
|
||||
function fmemberlist_submit(f) {
|
||||
if (!is_checked("chk[]")) {
|
||||
alert(document.pressed + " 하실 항목을 하나 이상 선택하세요.");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (document.pressed == "선택삭제") {
|
||||
if (!confirm("선택한 자료를 정말 삭제하시겠습니까? 완전삭제시 복구는 불가능합니다.")) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
if (document.pressed == "전체삭제") {
|
||||
if (!confirm("캐릭터 미등록 회원 자료를 정말 삭제하시겠습니까? 완전삭제시 복구는 불가능합니다.")) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return true;
|
||||
}
|
||||
</script>
|
||||
|
||||
<?php
|
||||
include_once './admin.tail.php';
|
||||
?>
|
||||
57
AvocadoAmber/adm/member_nocharacter_list_update.php
Normal file
57
AvocadoAmber/adm/member_nocharacter_list_update.php
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
<?php
|
||||
include_once "./_common.php";
|
||||
|
||||
check_demo();
|
||||
|
||||
auth_check($auth[$sub_menu], "d");
|
||||
|
||||
check_admin_token();
|
||||
|
||||
$msg = "";
|
||||
|
||||
if ($_POST['act_button'] == "선택삭제") {
|
||||
|
||||
for ($i = 0; $i < count($chk); $i++) {
|
||||
// 실제 번호를 넘김
|
||||
$k = $_POST['chk'][$i];
|
||||
$mb = get_member($_POST['mb_id'][$k]);
|
||||
|
||||
if (!$mb['mb_id']) {
|
||||
$msg .= "{$mb['mb_id']} : 회원자료가 존재하지 않습니다.\\n";
|
||||
} else if ($member['mb_id'] == $mb['mb_id']) {
|
||||
$msg .= "{$mb['mb_id']} : 로그인 중인 관리자는 삭제 할 수 없습니다.\\n";
|
||||
} else if (is_admin($mb['mb_id']) == "super") {
|
||||
$msg .= "{$mb['mb_id']} : 최고 관리자는 삭제할 수 없습니다.\\n";
|
||||
} else if ($is_admin != "super" && $mb['mb_level'] >= $member['mb_level']) {
|
||||
$msg .= "{$mb['mb_id']} : 자신보다 권한이 높거나 같은 회원은 삭제할 수 없습니다.\\n";
|
||||
} else {
|
||||
// 회원자료 삭제
|
||||
sql_query(" delete from {$g5['member_table']} where mb_id = '{$_POST['mb_id'][$k]}' ");
|
||||
}
|
||||
}
|
||||
} else if ($_POST['act_button'] == "전체삭제") {
|
||||
$sql_common = " from {$g5['member_table']} ";
|
||||
$sql_search = " where ch_id = '0' and mb_id != '{$config['cf_admin']}' ";
|
||||
$sql = " select * {$sql_common} {$sql_search}";
|
||||
$result = sql_query($sql);
|
||||
|
||||
for ($i = 0; $mb = sql_fetch_array($result); $i++) {
|
||||
if (!$mb['mb_id']) {
|
||||
$msg .= "{$mb['mb_id']} : 회원자료가 존재하지 않습니다.\\n";
|
||||
} else if ($member['mb_id'] == $mb['mb_id']) {
|
||||
$msg .= "{$mb['mb_id']} : 로그인 중인 관리자는 삭제 할 수 없습니다.\\n";
|
||||
} else if (is_admin($mb['mb_id']) == "super") {
|
||||
$msg .= "{$mb['mb_id']} : 최고 관리자는 삭제할 수 없습니다.\\n";
|
||||
} else if ($is_admin != "super" && $mb['mb_level'] >= $member['mb_level']) {
|
||||
$msg .= "{$mb['mb_id']} : 자신보다 권한이 높거나 같은 회원은 삭제할 수 없습니다.\\n";
|
||||
} else {
|
||||
// 회원자료 삭제
|
||||
sql_query(" delete from {$g5['member_table']} where mb_id = '{$mb['mb_id']}' ");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ($msg)
|
||||
echo "<script type='text/javascript'> alert('$msg'); </script>";
|
||||
|
||||
goto_url("./member_nocharacter_list.php");
|
||||
|
|
@ -55,13 +55,13 @@ include_once G5_PATH . '/head.sub.php';
|
|||
<?php
|
||||
switch ($mode) {
|
||||
case 'list':
|
||||
include(G5_PATH . '/member/index.php');
|
||||
include G5_PATH . '/member/index.php';
|
||||
break;
|
||||
case 'view':
|
||||
include(G5_PATH . '/member/viewer.php');
|
||||
include G5_PATH . '/member/viewer.php';
|
||||
break;
|
||||
default:
|
||||
include(G5_PATH . '/main.php');
|
||||
include G5_PATH . '/main.php';
|
||||
break;
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ if (is_file($skin_file)) {
|
|||
if (file_exists($himg)) // 상단 이미지
|
||||
echo '<div id="ctt_himg" class="ctt_img"><img src="' . G5_DATA_URL . '/content/' . $co_id . '_h" alt=""></div>';
|
||||
|
||||
include($skin_file);
|
||||
include $skin_file;
|
||||
|
||||
$timg = G5_DATA_PATH . '/content/' . $co_id . '_t';
|
||||
if (file_exists($timg)) // 하단 이미지
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ $qa_skin_url = get_skin_url('qa', $qaconfig['qa_skin']);
|
|||
|
||||
|
||||
if (is_include_path_check($qaconfig['qa_include_head']))
|
||||
@include($qaconfig['qa_include_head']);
|
||||
@include $qaconfig['qa_include_head'];
|
||||
else
|
||||
include('./_head.php');
|
||||
include './_head.php';
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ if (G5_IS_MOBILE) {
|
|||
} else {
|
||||
echo conv_content($qaconfig['qa_content_tail'], 1);
|
||||
if (is_include_path_check($qaconfig['qa_include_tail']))
|
||||
@include($qaconfig['qa_include_tail']);
|
||||
@include $qaconfig['qa_include_tail'];
|
||||
else
|
||||
include('./_tail.php');
|
||||
include './_tail.php';
|
||||
}
|
||||
|
|
|
|||
|
|
@ -121,7 +121,7 @@ class Item extends Module
|
|||
return false;
|
||||
}
|
||||
|
||||
public static function giveItem($character_id, $item_id, $item = null, $count = 1, $type = "획득")
|
||||
public static function giveItem($character_id, $item_id, $item = null, $count = 1, $type = "획득", $isorder = false)
|
||||
{
|
||||
global $g5;
|
||||
|
||||
|
|
@ -138,6 +138,9 @@ class Item extends Module
|
|||
it_id = '{$item['it_id']}',
|
||||
it_name = '{$item['it_name']}',
|
||||
ch_name = '{$ch['ch_name']}'";
|
||||
if ($isorder) {
|
||||
self::insertOrderLog($character_id, $item_id);
|
||||
}
|
||||
self::addGetLog($item_id, $character_id, $item, $type);
|
||||
sql_query($inven_sql);
|
||||
}
|
||||
|
|
@ -145,6 +148,20 @@ class Item extends Module
|
|||
return $count;
|
||||
}
|
||||
|
||||
public static function insertOrderLog($character_id, $item_id)
|
||||
{
|
||||
global $g5;
|
||||
$member_id = Character::getMemberID($character_id);
|
||||
if ($member_id) {
|
||||
$time = G5_TIME_YMDHIS;
|
||||
sql_query("INSERT INTO {$g5['order_table']}
|
||||
set ch_id = '{$character_id}',
|
||||
it_id = '{$item_id}',
|
||||
or_datetime = '{$time}',
|
||||
mb_id = '{$member_id}'");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param int $inventory_id
|
||||
* @param int $delete
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@ class Module
|
|||
$escapedValue = sql_real_escape_string($value);
|
||||
$setParts[] = "{$key} = '{$escapedValue}'";
|
||||
}
|
||||
|
||||
return implode(', ', $setParts);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -46,9 +46,9 @@ $g5['title'] = "커플";
|
|||
include_once './_head.php';
|
||||
|
||||
if (defined('G5_THEME_PATH') && is_file(G5_THEME_PATH . "/couple/list.skin.php")) {
|
||||
include(G5_THEME_PATH . "/couple/list.skin.php");
|
||||
include G5_THEME_PATH . "/couple/list.skin.php";
|
||||
} else {
|
||||
include(G5_PATH . "/couple/skin/list.skin.php");
|
||||
include G5_PATH . "/couple/skin/list.skin.php";
|
||||
}
|
||||
|
||||
include_once G5_PATH . '/tail.php';
|
||||
|
|
|
|||
2078
AvocadoAmber/css/bootstrap-icons.css
vendored
Normal file
2078
AvocadoAmber/css/bootstrap-icons.css
vendored
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -13,14 +13,12 @@
|
|||
****************************************/
|
||||
|
||||
@import url(./swiper.css);
|
||||
@import url(./bootstrap-icons.css);
|
||||
|
||||
@font-face {
|
||||
font-family: 'icon';
|
||||
src: url('./fonts/icomoon.eot?y5isk6');
|
||||
src: url('./fonts/icomoon.eot?y5isk6#iefix') format('embedded-opentype'),
|
||||
url('./fonts/icomoon.ttf?y5isk6') format('truetype'),
|
||||
url('./fonts/icomoon.woff?y5isk6') format('woff'),
|
||||
url('./fonts/icomoon.svg?y5isk6#icomoon') format('svg');
|
||||
src: url("./fonts/bootstrap-icons.woff2") format("woff2"),
|
||||
url("./fonts/bootstrap-icons.woff") format("woff");
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,9 +11,9 @@ if (!$in['in_id']) {
|
|||
} else {
|
||||
|
||||
if (defined('G5_THEME_PATH') && is_file(G5_THEME_PATH . "/inventory/item.skin.php")) {
|
||||
include(G5_THEME_PATH . "/inventory/item.skin.php");
|
||||
include G5_THEME_PATH . "/inventory/item.skin.php";
|
||||
} else {
|
||||
include(G5_PATH . "/inventory/skin/item.skin.php");
|
||||
include G5_PATH . "/inventory/skin/item.skin.php";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,7 @@
|
|||
<?php
|
||||
/**
|
||||
* @var string|int $in_id
|
||||
*/
|
||||
include_once './_common.php';
|
||||
|
||||
$ch = get_character($ch_id);
|
||||
|
|
|
|||
|
|
@ -1,4 +1,7 @@
|
|||
<?php
|
||||
/**
|
||||
* @var string|int $in_id
|
||||
*/
|
||||
include_once './_common.php';
|
||||
|
||||
if ($url) {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,7 @@
|
|||
<?php
|
||||
/**
|
||||
* @var string|int $in_id
|
||||
*/
|
||||
include_once './_common.php';
|
||||
|
||||
$in = sql_fetch("select * from {$g5['inventory_table']} inven, {$g5['item_table']} item where inven.in_id = '{$in_id}' and inven.it_id = item.it_id");
|
||||
|
|
@ -11,5 +14,5 @@ if (!$in['in_id']) {
|
|||
$ch = get_character($in['ch_id']);
|
||||
}
|
||||
|
||||
include('./inc/send_item_form.php');
|
||||
include './inc/send_item_form.php';
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,7 @@
|
|||
<?php
|
||||
/**
|
||||
* @var string|int $in_id
|
||||
*/
|
||||
include_once './_common.php';
|
||||
|
||||
function location_url($url)
|
||||
|
|
@ -29,7 +32,7 @@ if (!$in['in_id']) {
|
|||
echo location_url(G5_URL . "/mypage/character/character_form.php?w=u&ch_id=" . $in['ch_id'] . "&in_id=" . $in['in_id'] . "&url=" . $url);
|
||||
}
|
||||
if ($inven_function == "아이템추가") {
|
||||
include('./inc/add_item_form.php');
|
||||
include './inc/add_item_form.php';
|
||||
}
|
||||
if ($inven_function == "스탯회복") {
|
||||
set_status($ch['ch_id'], $in['st_id'], ($in['it_value'] * -1));
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ function latest($skin_dir = '', $bo_table, $rows = 10, $subject_len = 40, $cache
|
|||
}
|
||||
|
||||
if (!$cache_fwrite)
|
||||
include($cache_file);
|
||||
include $cache_file;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -27,9 +27,9 @@ $g5['title'] = "멤버란";
|
|||
include_once G5_PATH . '/head.php';
|
||||
|
||||
if (defined('G5_THEME_PATH') && is_file(G5_THEME_PATH . "/member/list.skin.php")) {
|
||||
include(G5_THEME_PATH . "/member/list.skin.php");
|
||||
include G5_THEME_PATH . "/member/list.skin.php";
|
||||
} else {
|
||||
include(G5_PATH . "/member/skin/list.skin.php");
|
||||
include G5_PATH . "/member/skin/list.skin.php";
|
||||
}
|
||||
|
||||
unset($ch);
|
||||
|
|
|
|||
|
|
@ -1,4 +1,8 @@
|
|||
<?php
|
||||
/**
|
||||
* @var string|int $s_class
|
||||
* @var string|int $s_side
|
||||
*/
|
||||
include_once './_common.php';
|
||||
$g5['title'] = "신청자 대기 목록";
|
||||
include_once './_head.php';
|
||||
|
|
@ -145,9 +149,9 @@ for ($i = 0; $i < count($ch_si); $i++) {
|
|||
}
|
||||
|
||||
if (defined('G5_THEME_PATH') && is_file(G5_THEME_PATH . "/member/ready_list.skin.php")) {
|
||||
include(G5_THEME_PATH . "/member/ready_list.skin.php");
|
||||
include G5_THEME_PATH . "/member/ready_list.skin.php";
|
||||
} else {
|
||||
include(G5_PATH . "/member/skin/ready_list.skin.php");
|
||||
include G5_PATH . "/member/skin/ready_list.skin.php";
|
||||
}
|
||||
|
||||
unset($rank_result);
|
||||
|
|
|
|||
|
|
@ -2,28 +2,27 @@
|
|||
if (!defined('_GNUBOARD_'))
|
||||
exit;
|
||||
add_stylesheet('<link rel="stylesheet" href="' . G5_CSS_URL . '/member.css">', 0);
|
||||
add_stylesheet('<link rel="stylesheet" href="' . G5_CSS_URL . '/bootstrap-icons.css">', 0);
|
||||
|
||||
?>
|
||||
|
||||
<div id="character_profile">
|
||||
|
||||
<hr class="padding" />
|
||||
<nav id="profile_menu">
|
||||
<?php if ($article['ad_use_closet'] && $article['ad_use_body']) { ?>
|
||||
<a href="<?= G5_URL ?>/member/closet.php?ch_id=<?= $ch['ch_id'] ?>"
|
||||
onclick="window.open(this.href, 'big_viewer', 'width=800 height=800 menubar=no status=no toolbar=no location=no scrollbars=yes resizable=yes'); return false;"
|
||||
class="ui-btn ico point camera circle big">
|
||||
옷장보기
|
||||
class="ui-btn point circle big">
|
||||
<i class="bi bi-box-seam" style="pointer-events: none"></i>
|
||||
</a>
|
||||
<?php } ?>
|
||||
<?php if ($article['ad_use_exp']) { ?>
|
||||
<a href="<?= G5_URL ?>/member/exp.php?ch_id=<?= $ch['ch_id'] ?>"
|
||||
onclick="popup_window(this.href, 'exp', 'width=400, height=500'); return false;"
|
||||
class="ui-btn ico point exp circle big">
|
||||
경험치 내역 보기
|
||||
class="ui-btn point circle big">
|
||||
<i class="bi bi-coin" style="pointer-events: none"></i>
|
||||
</a>
|
||||
<?php } ?>
|
||||
</nav>
|
||||
|
||||
<!-- 캐릭터 비쥬얼 (이미지) 출력 영역 -->
|
||||
<div class="visual-area">
|
||||
<?php if ($article['ad_use_body'] && $ch['ch_body']) { ?>
|
||||
|
|
@ -198,7 +197,7 @@ add_stylesheet('<link rel="stylesheet" href="' . G5_CSS_URL . '/member.css">', 0
|
|||
<?php } ?>
|
||||
</h3>
|
||||
<div class="theme-box">
|
||||
<?php include(G5_PATH . "/inventory/list.inc.php"); ?>
|
||||
<?php include G5_PATH . "/inventory/list.inc.php"; ?>
|
||||
</div>
|
||||
<?php } ?>
|
||||
|
||||
|
|
|
|||
|
|
@ -82,9 +82,9 @@ $g5['title'] = $ch['ch_name'] . " 프로필";
|
|||
include_once G5_PATH . '/head.php';
|
||||
|
||||
if (defined('G5_THEME_PATH') && is_file(G5_THEME_PATH . "/member/viewer.skin.php")) {
|
||||
include(G5_THEME_PATH . "/member/viewer.skin.php");
|
||||
include G5_THEME_PATH . "/member/viewer.skin.php";
|
||||
} else {
|
||||
include(G5_PATH . "/member/skin/viewer.skin.php");
|
||||
include G5_PATH . "/member/skin/viewer.skin.php";
|
||||
}
|
||||
|
||||
include_once G5_PATH . '/tail.php';
|
||||
|
|
|
|||
|
|
@ -309,7 +309,7 @@ if (!$tabs) {
|
|||
<div class="tab-box" id="relation_area" <?= $tabs == 'r' ? "" : "style='display:none;'" ?>>
|
||||
<?php if ($ch['ch_state'] == "승인") { ?>
|
||||
<div class="mypage-box relation-box">
|
||||
<?php include(G5_PATH . '/mypage/character/relation_list.php'); ?>
|
||||
<?php include G5_PATH . '/mypage/character/relation_list.php'; ?>
|
||||
</div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ if ($total > 0) {
|
|||
}
|
||||
$last_me_id = $last_me_id > $me['me_id'] ? $last_me_id : $me['me_id'];
|
||||
// 템플릿 불러오기
|
||||
include('../memo_view.skin.php');
|
||||
include '../memo_view.skin.php';
|
||||
}
|
||||
?>
|
||||
<i id="last_idx" style="display: none;"><?= $last_me_id ?></i>
|
||||
|
|
|
|||
|
|
@ -49,5 +49,5 @@ for ($i = ($max_count - 1); $i >= 0; $i--) {
|
|||
$last_me_id = $me['me_id'];
|
||||
|
||||
// 템플릿 불러오기
|
||||
include('../memo_view.skin.php');
|
||||
include '../memo_view.skin.php';
|
||||
}
|
||||
|
|
|
|||
|
|
@ -78,7 +78,7 @@ for ($i = 0; $row = sql_fetch_array($result); $i++) {
|
|||
}
|
||||
|
||||
// 템플릿 불러오기
|
||||
include('./memo_view.skin.php');
|
||||
include './memo_view.skin.php';
|
||||
|
||||
} ?>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -1,2 +1,2 @@
|
|||
<?php
|
||||
require(dirname(__FILE__).'/kcaptcha.lib.php');
|
||||
require dirname(__FILE__).'/kcaptcha.lib.php';
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ class KCAPTCHA{
|
|||
|
||||
// generates keystring and image
|
||||
function image(){
|
||||
require(dirname(__FILE__).'/kcaptcha_config.php');
|
||||
require dirname(__FILE__).'/kcaptcha_config.php';
|
||||
|
||||
$fonts=array();
|
||||
$fontsdir_absolute=dirname(__FILE__).'/'.$fontsdir;
|
||||
|
|
|
|||
|
|
@ -19,4 +19,4 @@ if (CONSUMER_KEY === '' || CONSUMER_SECRET === '' || CONSUMER_KEY === 'CONSUMER_
|
|||
$content = '<a href="./redirect.php"><img src="./images/lighter.png" alt="Sign in with Twitter"/></a>';
|
||||
|
||||
/* Include HTML to display on the page. */
|
||||
include('html.inc');
|
||||
include 'html.inc';
|
||||
|
|
|
|||
|
|
@ -32,4 +32,4 @@ $content = $connection->get('account/verify_credentials');
|
|||
//$connection->post('friendships/destroy', array('id' => 9436992));
|
||||
|
||||
/* Include HTML to display on the page */
|
||||
include('html.inc');
|
||||
include 'html.inc';
|
||||
|
|
|
|||
39
AvocadoAmber/shop/_ajax.shop_item.php
Normal file
39
AvocadoAmber/shop/_ajax.shop_item.php
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
<?php
|
||||
/**
|
||||
* @var string|int $sh_id
|
||||
*/
|
||||
include_once "./_common.php";
|
||||
|
||||
$item = sql_fetch("select * from {$g5['shop_table']} shop, {$g5['item_table']} item where shop.it_id = item.it_id and shop.sh_id = '{$sh_id}'");
|
||||
|
||||
if ($item['sh_id']) {
|
||||
|
||||
$money = "";
|
||||
$add_str = "";
|
||||
|
||||
if ($item['sh_money'] && $item['sh_use_money']) {
|
||||
$money .= $add_str . $item['sh_money'] . ' ' . $config['cf_money_pice'];
|
||||
$add_str = ", ";
|
||||
}
|
||||
|
||||
if ($item['sh_exp'] && $item['sh_use_exp']) {
|
||||
$money .= $add_str . $item['sh_exp'] . ' ' . $config['cf_exp_pice'];
|
||||
$add_str = ", ";
|
||||
}
|
||||
|
||||
if ($item['sh_has_item'] && $item['sh_use_has_item']) {
|
||||
$item['sh_has_item_count'] = ($item['sh_has_item_count'] == '' || $item['sh_has_item_count'] == '0') ? 1 : $item['sh_has_item_count'];
|
||||
$money .= $add_str . get_item_name($item['sh_has_item']) . ' ' . $item['sh_has_item_count'] . '개';
|
||||
$add_str = ", ";
|
||||
}
|
||||
|
||||
if ($item['it_content2']) {
|
||||
$item['it_content'] .= "<br />(" . $item['it_content2'] . ")";
|
||||
}
|
||||
}
|
||||
|
||||
if (defined('G5_THEME_PATH') && is_file(G5_THEME_PATH . "/shop/shop.item.skin.php")) {
|
||||
include G5_THEME_PATH . "/shop/shop.item.skin.php";
|
||||
} else {
|
||||
include G5_PATH . "/shop/skin/shop.item.skin.php";
|
||||
}
|
||||
165
AvocadoAmber/shop/_ajax.shop_update.php
Normal file
165
AvocadoAmber/shop/_ajax.shop_update.php
Normal file
|
|
@ -0,0 +1,165 @@
|
|||
<?php
|
||||
/**
|
||||
* @var string|int $sh_id
|
||||
*/
|
||||
include_once "./_common.php";
|
||||
|
||||
if ($character['ch_id'] && $character['ch_state'] == '승인') {
|
||||
$msg = "";
|
||||
$item = sql_fetch("select * from {$g5['shop_table']} shop, {$g5['item_table']} item where shop.it_id = item.it_id and shop.sh_id = '{$sh_id}'");
|
||||
|
||||
if ($item['sh_id']) {
|
||||
// 구매 가능한 아이템인지 체크한다.
|
||||
// -- 체크 항목 : 각 구매 가격 및 교환 아이템/타이틀
|
||||
// -- 구매 갯수 및 재고, 세력, 진영 제한 체크
|
||||
|
||||
//------------------
|
||||
// 구매가격 체크
|
||||
//------------------
|
||||
|
||||
$use_point = 0;
|
||||
$use_exp_point = 0;
|
||||
$use_inventory_item = 0;
|
||||
$use_has_title = 0;
|
||||
|
||||
$is_able_buy = true;
|
||||
|
||||
if ($item['sh_money']) {
|
||||
// 구매가격이 존재 시
|
||||
if ($member['mb_point'] < $item['sh_money']) {
|
||||
// 소지금 부족
|
||||
$msg .= $config['cf_money'] . " 부족합니다.<br />";
|
||||
$is_able_buy = false;
|
||||
|
||||
} else if ($item['sh_use_money']) {
|
||||
// 소지금 소모
|
||||
$use_point += $item['sh_money'];
|
||||
}
|
||||
}
|
||||
|
||||
if ($item['sh_exp']) {
|
||||
// 구매 경험치 존재 시
|
||||
if ($character['ch_exp'] < $item['sh_exp']) {
|
||||
// 경험치 부족
|
||||
$msg .= $config['cf_exp_name'] . " 부족합니다.<br />";
|
||||
$is_able_buy = false;
|
||||
|
||||
} else if ($item['sh_use_exp']) {
|
||||
// 경험치 소모
|
||||
$use_exp_point += $item['sh_exp'];
|
||||
}
|
||||
}
|
||||
|
||||
if ($item['sh_has_item']) {
|
||||
// 구매 아이템 존재 시
|
||||
$item['sh_has_item_count'] = $item['sh_has_item_count'] == 0 ? 1 : $item['sh_has_item_count'];
|
||||
$in = sql_fetch("select count(in_id) as cnt, in_id from {$g5['inventory_table']} where ch_id = '{$character['ch_id']}' and it_id = '{$item['sh_has_item']}'");
|
||||
|
||||
if ($in['cnt'] < $item['sh_has_item_count']) {
|
||||
// 필요 아이템 미소유
|
||||
$has_item_name = get_item_name($item['sh_has_item']);
|
||||
$msg .= $has_item_name . j($has_item_name, '이') . " " . $item['sh_has_item_count'] . "개 있어야 살 수 있습니다.<br />";
|
||||
$is_able_buy = false;
|
||||
} else if ($item['sh_use_has_item']) {
|
||||
// 아이템 소모
|
||||
$use_inventory_item = $item['sh_has_item'];
|
||||
$use_inventory_item_count = $item['sh_has_item_count'];
|
||||
}
|
||||
}
|
||||
|
||||
if ($item['sh_has_title']) {
|
||||
// 구매 타이틀 존재 시
|
||||
$ti = sql_fetch("select hi_id from {$g5['title_has_table']} where ch_id = '{$character['ch_id']}' and ti_id = '{$item['sh_has_title']}'");
|
||||
if (!$ti['hi_id']) {
|
||||
// 필요 타이틀 미소유
|
||||
$has_title = get_title($item['sh_has_item']);
|
||||
$msg .= $has_title['ti_title'] . j($has_title['ti_title'], '이') . " 있어야 살 수 있습니다.<br />";
|
||||
$is_able_buy = false;
|
||||
} else if ($item['sh_use_has_title']) {
|
||||
// 타이틀 소모
|
||||
$use_has_title = $ti['hi_id'];
|
||||
}
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// 구매 가능 여부 체크
|
||||
//-------------------------------------------------
|
||||
|
||||
if ($item['sh_limit']) {
|
||||
// 구매 갯수 제한이 존재 시
|
||||
// 구매 내역 정보를 가져온다
|
||||
$order = sql_fetch("select count(*) as cnt from {$g5['order_table']} where ch_id = '{$character['ch_id']}' and it_id = '{$item['it_id']}'");
|
||||
if ($order['cnt'] >= $item['sh_limit']) {
|
||||
$msg .= "너무 많이 구매했습니다. 더이상 구매할 수 없습니다.<br />";
|
||||
$is_able_buy = false;
|
||||
}
|
||||
}
|
||||
|
||||
if ($item['sh_qty']) {
|
||||
// 재고가 존재시
|
||||
// 구매 내역 정보를 가져온다
|
||||
$order = sql_fetch("select count(*) as cnt from {$g5['order_table']} where it_id = '{$item['it_id']}'");
|
||||
if ($order['cnt'] >= $item['sh_qty']) {
|
||||
$msg .= "재고가 모두 소진되었습니다. 더이상 구매할 수 없습니다.<br />";
|
||||
$is_able_buy = false;
|
||||
}
|
||||
}
|
||||
|
||||
if ($item['sh_class']) {
|
||||
// 종족 구매 제한이 존재시
|
||||
if (!strstr($item['sh_class'], '||' . $character['ch_class'] . '||')) {
|
||||
$msg .= "구매할 수 없는 " . $config['cf_class_title'] . "입니다.<br />";
|
||||
$is_able_buy = false;
|
||||
}
|
||||
}
|
||||
if ($item['sh_side']) {
|
||||
// 세력 구매 제한이 존재시
|
||||
if (!strstr($item['sh_side'], '||' . $character['ch_side'] . '||')) {
|
||||
$msg .= "구매할 수 없는 " . $config['cf_side_title'] . "입니다.<br />";
|
||||
$is_able_buy = false;
|
||||
}
|
||||
}
|
||||
|
||||
if ($is_able_buy) {
|
||||
Item::giveItem($character['ch_id'], $item['it_id'], $item, 1, "구매", true);
|
||||
|
||||
if ($use_point) {
|
||||
// 소지금 차감
|
||||
$insert_point = $use_point * -1;
|
||||
insert_point($member['mb_id'], $insert_point, $item['it_name'] . ' 구매 ( ' . $use_point . $config['cf_money_pice'] . ' 소모 )', 'shop', time(), '구매');
|
||||
}
|
||||
|
||||
if ($use_exp_point) {
|
||||
// 경험치 차감
|
||||
$action = '차감';
|
||||
$ex_content = $item['it_name'] . ' 구매 ( ' . $use_exp_point . $config['cf_exp_pice'] . ' 소모 )';
|
||||
$ex_point = $use_exp_point * -1;
|
||||
insert_exp($character['ch_id'], $ex_point, $ex_content, $action);
|
||||
}
|
||||
|
||||
if ($use_inventory_item) {
|
||||
// 아이템 제거
|
||||
$item_result = sql_query("select in_id from {$g5['inventory_table']} where ch_id = '{$character['ch_id']}' and it_id = '{$use_inventory_item}' order by se_ch_name asc, in_id asc limit 0, {$use_inventory_item_count}");
|
||||
for ($k = 0; $in = sql_fetch_array($item_result); $k++) {
|
||||
// 인벤에서 제거
|
||||
delete_inventory($in['in_id'], 0);
|
||||
}
|
||||
}
|
||||
|
||||
if ($use_has_title) {
|
||||
// 타이틀 제거
|
||||
sql_query("delete from {$g5['title_has_table']} where hi_id = '{$use_has_title}'");
|
||||
}
|
||||
|
||||
$msg = "《 " . $item['it_name'] . " 》 구매 되었습니다.";
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$msg = "<p style='color:red; padding-top:5px;'>부정사용 적발 시, 접근 차단이 될 수 있습니다.</p>";
|
||||
}
|
||||
|
||||
if (defined('G5_THEME_PATH') && is_file(G5_THEME_PATH . "/shop/shop.result.skin.php")) {
|
||||
include G5_THEME_PATH . "/shop/shop.result.skin.php";
|
||||
} else {
|
||||
include G5_PATH . "/shop/skin/shop.result.skin.php";
|
||||
}
|
||||
2
AvocadoAmber/shop/_common.php
Normal file
2
AvocadoAmber/shop/_common.php
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
<?php
|
||||
include_once '../common.php';
|
||||
4
AvocadoAmber/shop/_head.php
Normal file
4
AvocadoAmber/shop/_head.php
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
<?php
|
||||
if (!defined('_GNUBOARD_'))
|
||||
exit; // 개별 페이지 접근 불가
|
||||
include_once G5_PATH . '/_head.php';
|
||||
4
AvocadoAmber/shop/_head.sub.php
Normal file
4
AvocadoAmber/shop/_head.sub.php
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
<?php
|
||||
if (!defined('_GNUBOARD_'))
|
||||
exit; // 개별 페이지 접근 불가
|
||||
include_once G5_PATH . '/head.sub.php';
|
||||
4
AvocadoAmber/shop/_tail.php
Normal file
4
AvocadoAmber/shop/_tail.php
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
<?php
|
||||
if (!defined('_GNUBOARD_'))
|
||||
exit; // 개별 페이지 접근 불가
|
||||
include_once G5_PATH . '/_tail.php';
|
||||
5
AvocadoAmber/shop/_tail.sub.php
Normal file
5
AvocadoAmber/shop/_tail.sub.php
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
<?php
|
||||
if (!defined('_GNUBOARD_'))
|
||||
exit; // 개별 페이지 접근 불가
|
||||
include_once G5_PATH . '/tail.sub.php';
|
||||
|
||||
144
AvocadoAmber/shop/index.php
Normal file
144
AvocadoAmber/shop/index.php
Normal file
|
|
@ -0,0 +1,144 @@
|
|||
<?php
|
||||
include_once './_common.php';
|
||||
$g5['title'] = "상점";
|
||||
include_once './_head.php';
|
||||
|
||||
$shop_cate = explode("||", $config['cf_shop_category']);
|
||||
|
||||
if (!$cate) {
|
||||
$cate = $shop_cate[0];
|
||||
}
|
||||
|
||||
$sql_common = " from {$g5['shop_table']} ";
|
||||
$sql_search = " where sh_use = '1' and ca_name = '{$cate}' ";
|
||||
$sql_order = " order by sh_order asc ";
|
||||
$sql_limit = "";
|
||||
|
||||
$sql_search .= " AND (sh_date_s <= '" . date('Ymd') . "' OR sh_date_s = '') ";
|
||||
$sql_search .= " AND (sh_date_e >= '" . date('Ymd') . "' OR sh_date_e = '') ";
|
||||
$sql_search .= " AND (sh_time_s <= '" . DATE('H') . "' OR sh_time_s = '') ";
|
||||
$sql_search .= " AND (sh_time_e >= '" . DATE('H') . "' OR sh_time_e = '') ";
|
||||
$sql_search .= " AND (sh_week LIKE '%||" . DATE('w') . "||%' OR sh_week = '') ";
|
||||
$sql_search .= " AND ((sh_side LIKE '%||" . $character['ch_side'] . "||%' AND sh_use_side = '1') OR sh_use_side = '0') ";
|
||||
$sql_search .= " AND ((sh_class LIKE '%||" . $character['ch_class'] . "||%' AND sh_use_class = '1') OR sh_use_class = '0') ";
|
||||
|
||||
$sql = " select count(*) as cnt {$sql_common} {$sql_search} {$sql_order} ";
|
||||
$row = sql_fetch($sql);
|
||||
$total_count = $row['cnt'];
|
||||
|
||||
$page_rows = 10;
|
||||
$total_page = ceil($total_count / $page_rows);
|
||||
if ($page < 1) {
|
||||
$page = 1;
|
||||
}
|
||||
|
||||
$from_record = ($page - 1) * $page_rows;
|
||||
|
||||
$sql_limit = " limit {$from_record}, {$page_rows} ";
|
||||
$write_pages = get_paging(5, $page, $total_page, './index.php?cate=' . $cate . $qstr . '&page=');
|
||||
|
||||
|
||||
$shop_sql = " select * {$sql_common} {$sql_search} {$sql_order} {$sql_limit} ";
|
||||
$shop_result = sql_query($shop_sql);
|
||||
$shop_list = [];
|
||||
|
||||
for ($i = 0; $shop = sql_fetch_array($shop_result); $i++) {
|
||||
$shop_list[$i] = $shop;
|
||||
$shop_list[$i]['item'] = get_item($shop['it_id']);
|
||||
}
|
||||
|
||||
if (defined('G5_THEME_PATH') && is_file(G5_THEME_PATH . "/shop/shop.skin.php")) {
|
||||
include G5_THEME_PATH . "/shop/shop.skin.php";
|
||||
} else {
|
||||
include G5_PATH . "/shop/skin/shop.skin.php";
|
||||
}
|
||||
?>
|
||||
|
||||
<script>
|
||||
function view_shop_item(shop_idx) {
|
||||
var h_link = "./_ajax.shop_item.php?sh_id=" + shop_idx;
|
||||
$.ajax({
|
||||
async: true
|
||||
, url: h_link
|
||||
, beforeSend: function() {}
|
||||
, success: function(data) {
|
||||
// Toss
|
||||
var response = data;
|
||||
$('#item_info').empty().append(response);
|
||||
view_shop_item_complete();
|
||||
}
|
||||
, error: function(data, status, err) {
|
||||
$('#item_info').empty();
|
||||
}
|
||||
, complete: function() {
|
||||
// Complete
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function fn_buy_item(shop_idx){
|
||||
var h_link = "./_ajax.shop_update.php?sh_id=" + shop_idx;
|
||||
$.ajax({
|
||||
async: true
|
||||
, url: h_link
|
||||
, beforeSend: function() {}
|
||||
, success: function(data) {
|
||||
// Toss
|
||||
var response = data;
|
||||
$('#item_info').empty().append(response);
|
||||
view_shop_item_buy();
|
||||
}
|
||||
, error: function(data, status, err) {
|
||||
$('#item_info').empty();
|
||||
}
|
||||
, complete: function() {
|
||||
// Complete
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
$('.ajax-link a').on('click', function() {
|
||||
$(this).addClass('point').parent().siblings().find('a').removeClass('point');
|
||||
ajax_shop_link_url($(this).attr('href'), '#shop_item_list');
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
function ajax_shop_link_url(url, obj_id) {
|
||||
var h_link = url;
|
||||
if(typeof(history.pushState) != "undefined") {
|
||||
$.ajax({
|
||||
async: true
|
||||
, url: h_link
|
||||
, beforeSend: function() {}
|
||||
, success: function(data) {
|
||||
// Toss
|
||||
var response = data;
|
||||
var temp_content = $(response).find(obj_id).clone();
|
||||
$(obj_id).fadeOut(300, function(){$(this).empty().append(temp_content.html());}).fadeIn(300, function() {
|
||||
var link = url;
|
||||
var link_obj = { Title: '', Url: link};
|
||||
history.pushState(link_obj, link_obj.Title, link_obj.Url);
|
||||
|
||||
$(obj_id).find('.ajax-link').find('a').on('click', function() {
|
||||
$(this).parents('li').addClass('on').siblings().removeClass('on');
|
||||
ajax_shop_link_url($(this).attr('href'), '#shop_item_list');
|
||||
return false;
|
||||
});
|
||||
});
|
||||
}
|
||||
, error: function(data, status, err) {
|
||||
$(obj_id).fadeOut(300, function(){$(this).empty(); });
|
||||
}
|
||||
, complete: function() {
|
||||
// Complete
|
||||
}
|
||||
});
|
||||
} else {
|
||||
location.href=url;
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<?php
|
||||
include_once './_tail.php';
|
||||
|
||||
38
AvocadoAmber/shop/skin/shop.item.skin.php
Normal file
38
AvocadoAmber/shop/skin/shop.item.skin.php
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
<?php
|
||||
if (!defined('_GNUBOARD_'))
|
||||
exit; // 개별 페이지 접근 불가
|
||||
|
||||
if ($item['sh_id']) {
|
||||
// 상품 진열 정보가 있을 경우
|
||||
?>
|
||||
<div class="type-item theme-box">
|
||||
<div id="item_talk">
|
||||
<div id="item_simple_viewer">
|
||||
<div id="buy_item_data">
|
||||
<div class="item-thumb">
|
||||
<img src="<?= $item['it_img'] ?>" />
|
||||
</div>
|
||||
<div class="item-name"><?= $item['it_name'] ?> <sup><?= $money ?></sup></div>
|
||||
<div class="item-content"><?= $item['it_content'] ?></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item_talk"><?= $item['sh_content'] ?></div>
|
||||
<br />
|
||||
</div>
|
||||
|
||||
<?php if ($character['ch_id'] && $character['ch_state'] == '승인') { ?>
|
||||
<a href="javascript:fn_buy_item('<?= $item['sh_id'] ?>');" id="btn_buy" class="ui-btn full point">
|
||||
구매하기
|
||||
</a>
|
||||
<?php } ?>
|
||||
</div>
|
||||
<?php } else {
|
||||
// 상품 진열 정보가 없을 경우
|
||||
?>
|
||||
<div id="default_talk">
|
||||
<p>
|
||||
오류가 발생했습니다. 다시 한번 선택해 주시길 바랍니다.
|
||||
</p>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
7
AvocadoAmber/shop/skin/shop.result.skin.php
Normal file
7
AvocadoAmber/shop/skin/shop.result.skin.php
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<?php
|
||||
if (!defined('_GNUBOARD_'))
|
||||
exit; // 개별 페이지 접근 불가
|
||||
?>
|
||||
<div id="default_talk">
|
||||
<p><?= $msg ?></p>
|
||||
</div>
|
||||
52
AvocadoAmber/shop/skin/shop.skin.php
Normal file
52
AvocadoAmber/shop/skin/shop.skin.php
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
<?php
|
||||
if (!defined('_GNUBOARD_'))
|
||||
exit; // 개별 페이지 접근 불가
|
||||
add_stylesheet('<link rel="stylesheet" href="' . G5_CSS_URL . '/shop.css">', 0);
|
||||
?>
|
||||
<div id="shop_page">
|
||||
<div id="shop_npc">
|
||||
<img src="<?= G5_IMG_URL ?>/shop/npc.png" />
|
||||
</div>
|
||||
<div id="item_info">
|
||||
<div id="default_talk"></div>
|
||||
</div>
|
||||
<div id="item_list_box">
|
||||
<div id="shop_cate" class="ajax-link">
|
||||
<ul>
|
||||
<?php for ($i = 0; $i < count($shop_cate); $i++) { ?>
|
||||
<li>
|
||||
<a href="?cate=<?= $shop_cate[$i] ?>"
|
||||
class='ui-btn <?= $cate == $shop_cate[$i] ? 'point' : '' ?>'><?= $shop_cate[$i] ?></a>
|
||||
</li>
|
||||
<?php } ?>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="shop_item_list">
|
||||
<ul>
|
||||
<?php for ($i = 0; $i < count($shop_list); $i++) {
|
||||
$shop = $shop_list[$i];
|
||||
?>
|
||||
<li>
|
||||
<a href="javascript:view_shop_item('<?= $shop['sh_id'] ?>');">
|
||||
<img src="<?= $shop['item']['it_img'] ?>" />
|
||||
<span><?= $shop['item']['it_name'] ?></span>
|
||||
</a>
|
||||
</li>
|
||||
<?php } ?>
|
||||
</ul>
|
||||
<div id="shop_paging" class="ajax-link">
|
||||
<?= $write_pages ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
function view_shop_item_complete() {
|
||||
// 아이템 상세 팝업 창 실행 종료 후 실행할 코드
|
||||
|
||||
};
|
||||
function view_shop_item_buy() {
|
||||
// 아이템 구매 완료 후 실행할 코드
|
||||
|
||||
};
|
||||
</script>
|
||||
|
|
@ -38,7 +38,7 @@ $comment_action_url = https_url(G5_BBS_DIR) . "/write_comment_update.php";
|
|||
<span class="bo_vc_hdinfo"><time
|
||||
datetime="<?php echo date('Y-m-d\TH:i:s+09:00', strtotime($list[$i]['datetime'])) ?>"><?php echo date('m/d H:i', strtotime($list[$i]['datetime'])) ?></time></span>
|
||||
<?php
|
||||
include(G5_SNS_PATH . '/view_comment_list.sns.skin.php');
|
||||
include G5_SNS_PATH . '/view_comment_list.sns.skin.php';
|
||||
?>
|
||||
</header>
|
||||
|
||||
|
|
|
|||
|
|
@ -60,13 +60,13 @@ $is_notice = false;
|
|||
for ($i = 0; $i < count($list); $i++) {
|
||||
|
||||
if ($list[$i]['is_notice']) {
|
||||
include($board_skin_path . "/list.couple.skin.php");
|
||||
include $board_skin_path . "/list.couple.skin.php";
|
||||
$is_notice = true;
|
||||
} else {
|
||||
if ($is_notice) {
|
||||
break;
|
||||
}
|
||||
include($board_skin_path . "/list.character.skin.php");
|
||||
include $board_skin_path . "/list.character.skin.php";
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ $comment_action_url = https_url(G5_BBS_DIR) . "/write_comment_update.php";
|
|||
<span class="bo_vc_hdinfo"><time
|
||||
datetime="<?php echo date('Y-m-d\TH:i:s+09:00', strtotime($list[$i]['datetime'])) ?>"><?php echo date('m/d H:i', strtotime($list[$i]['datetime'])) ?></time></span>
|
||||
<?php
|
||||
include(G5_SNS_PATH . '/view_comment_list.sns.skin.php');
|
||||
include G5_SNS_PATH . '/view_comment_list.sns.skin.php';
|
||||
?>
|
||||
</header>
|
||||
|
||||
|
|
|
|||
|
|
@ -19,11 +19,11 @@ $log_type = $data_log[0];
|
|||
$item_log = explode("||", $item_log);
|
||||
|
||||
if ($log_type) {
|
||||
include($board_skin_path . "/action/log.{$log_type}.skin.php");
|
||||
include $board_skin_path . "/action/log.{$log_type}.skin.php";
|
||||
}
|
||||
|
||||
|
||||
if ($item_log[0]) {
|
||||
/** 아이템 사용시 **/
|
||||
include($board_skin_path . "/action/log.item.skin.php");
|
||||
include $board_skin_path . "/action/log.item.skin.php";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -167,10 +167,10 @@ sql_query("UPDATE {$g5['call_table']} SET bc_check = 1 where re_mb_id = '{$membe
|
|||
<div class="ui-comment">
|
||||
<?php if ($is_viewer) { ?>
|
||||
<div class="item-comment-box">
|
||||
<?php include($board_skin_path . "/view_comment.php"); ?>
|
||||
<?php include $board_skin_path . "/view_comment.php"; ?>
|
||||
</div>
|
||||
<div class="item-comment-form-box">
|
||||
<?php include($board_skin_path . "/write_comment.php"); ?>
|
||||
<?php include $board_skin_path . "/write_comment.php"; ?>
|
||||
</div>
|
||||
<?php } else { ?>
|
||||
멤버 공개용 로그 입니다.
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ $owner_behind = $owner_behind['cs_etc_4'];
|
|||
<?php
|
||||
for ($i = 0; $i < count($list); $i++) {
|
||||
$list_item = $list[$i];
|
||||
include($board_skin_path . "/list.log.skin.php");
|
||||
include $board_skin_path . "/list.log.skin.php";
|
||||
}
|
||||
if (count($list) == 0) {
|
||||
echo "<div class=\"empty_list\">등록된 로그가 없습니다.</div>";
|
||||
|
|
|
|||
|
|
@ -103,4 +103,4 @@ if ($is_admin) {
|
|||
}
|
||||
|
||||
//array_unshift($comment, $list_item);
|
||||
include($board_skin_path . '/view_comment.skin.php');
|
||||
include $board_skin_path . '/view_comment.skin.php';
|
||||
|
|
|
|||
|
|
@ -197,7 +197,7 @@ if ($month == "12")
|
|||
$moonday="";
|
||||
}
|
||||
|
||||
include($file_index."/lunar.txt"); ### 음력 기념일 파일 지정
|
||||
include $file_index."/lunar.txt"; ### 음력 기념일 파일 지정
|
||||
|
||||
if ($annivmoonday&&$daycont) $blank="<br />"; // 음력절기와 양력기념일이 동시에 있으면 한칸 띔
|
||||
else $blank="";
|
||||
|
|
|
|||
|
|
@ -88,7 +88,7 @@ if ($logo_data)
|
|||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
<?php include(G5_PATH . "/templete/txt.bgm.php"); ?>
|
||||
<?php include G5_PATH . "/templete/txt.bgm.php"; ?>
|
||||
|
||||
<?php } ?>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -2,28 +2,27 @@
|
|||
if (!defined('_GNUBOARD_'))
|
||||
exit;
|
||||
add_stylesheet('<link rel="stylesheet" href="' . G5_CSS_URL . '/member.css">', 0);
|
||||
add_stylesheet('<link rel="stylesheet" href="' . G5_CSS_URL . '/bootstrap-icons.css">', 0);
|
||||
|
||||
?>
|
||||
|
||||
<div id="character_profile">
|
||||
|
||||
<hr class="padding" />
|
||||
<nav id="profile_menu">
|
||||
<?php if ($article['ad_use_closet'] && $article['ad_use_body']) { ?>
|
||||
<a href="<?= G5_URL ?>/member/closet.php?ch_id=<?= $ch['ch_id'] ?>"
|
||||
onclick="window.open(this.href, 'big_viewer', 'width=800 height=800 menubar=no status=no toolbar=no location=no scrollbars=yes resizable=yes'); return false;"
|
||||
class="ui-btn ico point camera circle big">
|
||||
옷장보기
|
||||
class="ui-btn point circle big">
|
||||
<i class="bi bi-box-seam" style="pointer-events: none"></i>
|
||||
</a>
|
||||
<?php } ?>
|
||||
<?php if ($article['ad_use_exp']) { ?>
|
||||
<a href="<?= G5_URL ?>/member/exp.php?ch_id=<?= $ch['ch_id'] ?>"
|
||||
onclick="popup_window(this.href, 'exp', 'width=400, height=500'); return false;"
|
||||
class="ui-btn ico point exp circle big">
|
||||
경험치 내역 보기
|
||||
class="ui-btn point circle big">
|
||||
<i class="bi bi-coin" style="pointer-events: none"></i>
|
||||
</a>
|
||||
<?php } ?>
|
||||
</nav>
|
||||
|
||||
<!-- 캐릭터 비쥬얼 (이미지) 출력 영역 -->
|
||||
<div class="visual-area">
|
||||
<?php if ($article['ad_use_body'] && $ch['ch_body']) { ?>
|
||||
|
|
@ -198,7 +197,7 @@ add_stylesheet('<link rel="stylesheet" href="' . G5_CSS_URL . '/member.css">', 0
|
|||
<?php } ?>
|
||||
</h3>
|
||||
<div class="theme-box">
|
||||
<?php include(G5_PATH . "/inventory/list.inc.php"); ?>
|
||||
<?php include G5_PATH . "/inventory/list.inc.php"; ?>
|
||||
</div>
|
||||
<?php } ?>
|
||||
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ if (!defined('_GNUBOARD_'))
|
|||
<span class="bo_vc_hdinfo"><i class="fa fa-clock-o" aria-hidden="true"></i> <time
|
||||
datetime="<?php echo date('Y-m-d\TH:i:s+09:00', strtotime($list[$i]['datetime'])) ?>"><?php echo $list[$i]['datetime'] ?></time></span>
|
||||
<?php
|
||||
include(G5_SNS_PATH . '/view_comment_list.sns.skin.php');
|
||||
include G5_SNS_PATH . '/view_comment_list.sns.skin.php';
|
||||
?>
|
||||
</header>
|
||||
<!-- 댓글 출력 -->
|
||||
|
|
|
|||
Loading…
Reference in a new issue