루트DB를 관리하는 방식을 통째로 변경

- DB 불러오는 방식을 기존의 set.php에서 conf.php의 getRootDB()를 이용하도록 변경
- ADODB 에 기반한 _DB 클래스 폐기
- DBS.php 폐기
- _Setting 클래스 용도 변경
- 서버 목록 정의 방식을 하나로 모음
- 로그인시 세션에 사용자 등급을 추가
- "참여"(donation) 관련 코드 전면 제거
- 서버 리셋시 부운영자 비밀번호 문제 수정
- 서버 오픈,닫힘 여부를 새 서버 목록 정의 방식에 따르도록 수정
- DBS.php가 폐기 되었으므로 서버 오픈시 기본 정보를 json으로 받아오도록 하기 위하여 기본 준비
-  기존에 남아있던 세부 서버 로그인 처리 파일을 제거(enterPost.php)
- DBS.php 삭제로 전콘 변경시에도 각 서버로 json 호출을 하도록 하는 방식으로 준비
- 전콘을 수동으로 서버에 올린뒤 처리할 수 있도록 하던 legacy 코드 제거
- general 테이블에서 userlevel 컬럼을 삭제하고, 세션에 기록된 userGrade를 이용하도록 변경
- 벌점 제한을 모든 유저 공통으로 하도록 수정
- 세부 서버 리셋을 json ajax로 처리하도록 준비
This commit is contained in:
2018-03-07 00:59:31 +09:00
parent e8a9f73611
commit 0c9be5c53f
115 changed files with 1169 additions and 2217 deletions
+24 -75
View File
@@ -2,8 +2,6 @@
require_once('_common.php');
require_once(ROOT.W.F_FUNC.W.'class._JSON.php');
require_once(ROOT.W.F_CONFIG.W.DB.PHP);
require_once(ROOT.W.F_CONFIG.W.'DBS'.PHP);
require_once(ROOT.W.F_CONFIG.W.SETTINGS.PHP);
require_once(ROOT.W.F_CONFIG.W.SESSION.PHP);
// 외부 파라미터
@@ -12,104 +10,55 @@ require_once(ROOT.W.F_CONFIG.W.SESSION.PHP);
$select = $_POST['select'];
$no = $_POST['no'];
$rs = $DB->Select('GRADE', 'MEMBER', "NO='{$SESSION->NoMember()}'");
$member = $DB->Get($rs);
$db = getRootDB();
$member = $db->queryFirstRow('SELECT `GRADE` FROM `MEMBER` WHERE `NO` = %i', $SESSION->NoMember());
if($member['GRADE'] < 6) {
$response['result'] = 'FAIL';
$response['msg'] = '운영자 권한이 없습니다.';
} else {
$rs = $DB->Select('ID', 'MEMBER', "NO='{$no}'");
$member = $DB->Get($rs);
if($select == 0) {
// 블럭회원
$DB->Update('MEMBER', 'GRADE=0', "NO='{$no}'");
for($i=0; $i < $_serverCount; $i++) {
if($SETTINGS[$i]->IsExist()) {
$DBS[$i]->Update('general', 'USERLEVEL=0', "USER_ID='{$member['ID']}'");
}
}
} elseif($select == 1) {
// 일반회원
$DB->Update('MEMBER', 'GRADE=1', "NO='{$no}'");
for($i=0; $i < $_serverCount; $i++) {
if($SETTINGS[$i]->IsExist()) {
$DBS[$i]->Update('general', 'USERLEVEL=1', "USER_ID='{$member['ID']}'");
}
}
} elseif($select == 2) {
// 참여회원
$DB->Update('MEMBER', 'GRADE=2', "NO='{$no}'");
for($i=0; $i < $_serverCount; $i++) {
if($SETTINGS[$i]->IsExist()) {
$DBS[$i]->Update('general', 'USERLEVEL=2', "USER_ID='{$member['ID']}'");
}
}
} elseif($select == 3) {
// 유효회원
$DB->Update('MEMBER', 'GRADE=3', "NO='{$no}'");
for($i=0; $i < $_serverCount; $i++) {
if($SETTINGS[$i]->IsExist()) {
$DBS[$i]->Update('general', 'USERLEVEL=3', "USER_ID='{$member['ID']}'");
}
}
} elseif($select == 4) {
// 특별회원
$DB->Update('MEMBER', 'GRADE=4', "NO='{$no}'");
for($i=0; $i < $_serverCount; $i++) {
if($SETTINGS[$i]->IsExist()) {
$DBS[$i]->Update('general', 'USERLEVEL=4', "USER_ID='{$member['ID']}'");
}
}
if($select >= 0 && $select <= 4) {
/*
0: 블럭회원
1: 일반회원
2: 참여회원?
3: 유효회원?
4: 특별회원?
*/
$db->update('MEMBER', ['GRADE'=>$select], 'NO=%i', $no);
} elseif($select == 5) {
// 전콘제거
$DB->Update('MEMBER', "PICTURE='', IMGSVR=0", "NO='{$no}'");
$db->update('MEMBER', [
'PICTURE'=>'',
'IMGSVR'=>0
], 'NO=%i', $no);
for($i=0; $i < $_serverCount; $i++) {
if($SETTINGS[$i]->IsExist()) {
$DBS[$i]->Update('general', "PICTURE='default.jpg', IMGSVR=0", "NPC=0 AND USER_ID='{$member['ID']}'");
}
}
} elseif($select == 6) {
// 비번초기화
$pw = md5('11111111');
$DB->Update('MEMBER', "PW='{$pw}'", "NO='{$no}'");
$db->update('MEMBER', ['PW'=>$pw], 'NO=%i',$no);
} elseif($select == 7) {
// 회원삭제
$DB->Delete('MEMBER', "NO='{$no}'");
$db->delete('MEMBER', 'NO=%i', $no);
} elseif($select == 8) {
// 가입허용
$DB->Update('SYSTEM', "REG='Y'", "NO='1'");
$db->update('SYSTEM', ['REG'=>'Y'], 'NO=1');
} elseif($select == 9) {
// 가입금지
$DB->Update('SYSTEM', "REG='N'", "NO='1'");
$db->update('SYSTEM', ['REG'=>'N'], 'NO=1');
} elseif($select == 10) {
// 로그인허용
$DB->Update('SYSTEM', "LOGIN='Y'", "NO='1'");
$db->update('SYSTEM', ['LOGIN'=>'Y'], 'NO=1');
} elseif($select == 11) {
// 로그인금지
$DB->Update('SYSTEM', "LOGIN='N'", "NO='1'");
$db->update('SYSTEM', ['LOGIN'=>'N'], 'NO=1');
} elseif($select == 12) {
// 탈퇴처리(1개월)
$DB->Delete('MEMBER', "QUIT='Y' AND GRADE<'5' AND REG_DATE<DATE_SUB(NOW(), INTERVAL 1 MONTH)");
$db->delete('MEMBER', "QUIT='Y' AND GRADE<'5' AND REG_DATE<DATE_SUB(NOW(), INTERVAL 1 MONTH)");
} elseif($select == 13) {
// 오래된계정(6개월)
$DB->Delete('MEMBER', "GRADE<'5' AND REG_DATE<DATE_SUB(NOW(), INTERVAL 6 MONTH)");
} elseif($select == 14) {
// 이미지업로드
$DB->Update('MEMBER', 'IMGSVR=0');
for($i=0; $i < $_serverCount; $i++) {
if($SETTINGS[$i]->IsExist()) {
$DBS[$i]->Update('general', 'IMGSVR=0');
}
}
$db->delete('MEMBER', "GRADE<'5' AND REG_DATE<DATE_SUB(NOW(), INTERVAL 6 MONTH)");
}
$response['result'] = 'SUCCESS';