부대 명령을 json api로 변경
This commit is contained in:
+46
-10
@@ -81,6 +81,42 @@ uasort($troops, function($lhs, $rhs){
|
|||||||
<?=WebUtil::printCSS('../d_shared/common.css')?>
|
<?=WebUtil::printCSS('../d_shared/common.css')?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?=WebUtil::printCSS('css/common.css')?>
|
||||||
<?=WebUtil::printCSS('css/troops.css')?>
|
<?=WebUtil::printCSS('css/troops.css')?>
|
||||||
|
<script>
|
||||||
|
jQuery(function($){
|
||||||
|
|
||||||
|
$('#form1').submit(function(){
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
|
||||||
|
$('.submitBtn').click(function(){
|
||||||
|
var $this=$(this);
|
||||||
|
|
||||||
|
$.post({
|
||||||
|
url:'j_troop.php',
|
||||||
|
dataType:'json',
|
||||||
|
data:{
|
||||||
|
action:$this.val().replace(/\s/g, ''),
|
||||||
|
troop:$('input.troopId:checked').val(),
|
||||||
|
name:$('#troopName').val(),
|
||||||
|
gen:$('#genNo').val()
|
||||||
|
}
|
||||||
|
}).then(function(data){
|
||||||
|
console.log(data);
|
||||||
|
if(!data.result){
|
||||||
|
alert(data.reason);
|
||||||
|
location.reload();
|
||||||
|
}
|
||||||
|
|
||||||
|
location.reload();
|
||||||
|
|
||||||
|
}, function(){
|
||||||
|
alert('알 수 없는 에러가 발생했습니다.');
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
</script>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
@@ -88,7 +124,7 @@ uasort($troops, function($lhs, $rhs){
|
|||||||
<table width=1000 class='tb_layout bg0'>
|
<table width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>부 대 편 성<br><?=backButton()?></td></tr>
|
<tr><td>부 대 편 성<br><?=backButton()?></td></tr>
|
||||||
</table>
|
</table>
|
||||||
<form name=form1 method=post action=c_troop.php>
|
<form id=form1 name=form1 method=post>
|
||||||
<table id="troop_list" class='tb_layout bg0'>
|
<table id="troop_list" class='tb_layout bg0'>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@@ -102,9 +138,9 @@ uasort($troops, function($lhs, $rhs){
|
|||||||
<tfoot><tr><td colspan='5'>
|
<tfoot><tr><td colspan='5'>
|
||||||
<?php if(!$troops): ?>
|
<?php if(!$troops): ?>
|
||||||
<?php elseif($me['troop'] == 0): ?>
|
<?php elseif($me['troop'] == 0): ?>
|
||||||
<input type=submit name=btn value='부 대 가 입'>
|
<input type=submit class='submitBtn' value='부 대 가 입'>
|
||||||
<?php else: ?>
|
<?php else: ?>
|
||||||
<input type=submit name=btn value='부 대 탈 퇴' onclick='return confirm("정말 부대를 탈퇴하시겠습니까?")'>
|
<input type=submit class='submitBtn' value='부 대 탈 퇴' onclick='return confirm("정말 부대를 탈퇴하시겠습니까?")'>
|
||||||
<?php endif;?>
|
<?php endif;?>
|
||||||
</td></tr></tfoot>
|
</td></tr></tfoot>
|
||||||
<tbody>
|
<tbody>
|
||||||
@@ -133,7 +169,7 @@ foreach ($troops as $troopNo=>$troop) {
|
|||||||
|
|
||||||
<?php if ($me['troop'] == 0): ?>
|
<?php if ($me['troop'] == 0): ?>
|
||||||
<tr>
|
<tr>
|
||||||
<td align=center rowspan=2><input type='radio' name='troop' value='<?=$troop['troop']?>'></td>
|
<td align=center rowspan=2><input type='radio' class='troopId' name='troop' value='<?=$troop['troop']?>'></td>
|
||||||
<td align=center><?=$troop['name']?><br>【 <?=$cityText?> 】</td>
|
<td align=center><?=$troop['name']?><br>【 <?=$cityText?> 】</td>
|
||||||
<td height=64 class='generalIcon' style='background:no-repeat center url("<?=$troopLeader['pictureFullPath']?>");background-size:64px;'> </td>
|
<td height=64 class='generalIcon' style='background:no-repeat center url("<?=$troopLeader['pictureFullPath']?>");background-size:64px;'> </td>
|
||||||
<td rowspan=2 width=62><?=$genlistText?></td>
|
<td rowspan=2 width=62><?=$genlistText?></td>
|
||||||
@@ -152,15 +188,15 @@ foreach ($troops as $troopNo=>$troop) {
|
|||||||
<td rowspan=2 width=62><?=$genlistText?></td>
|
<td rowspan=2 width=62><?=$genlistText?></td>
|
||||||
<td rowspan=2>
|
<td rowspan=2>
|
||||||
<?php if ($me['no'] == $troopLeader['no']): ?>
|
<?php if ($me['no'] == $troopLeader['no']): ?>
|
||||||
<select name=gen size=3 style=color:white;background-color:black;font-size:13px;width:128px;>";
|
<select id='genNo' name=gen size=3 style=color:white;background-color:black;font-size:13px;width:128px;>";
|
||||||
<?php foreach ($troop['users'] as $troopUser): ?>
|
<?php foreach ($troop['users'] as $troopUser): ?>
|
||||||
<?php if ($troopUser['no'] == $me['no']) {
|
<?php if ($troopUser['no'] == $me['no']) {
|
||||||
continue;
|
continue;
|
||||||
} ?>
|
} ?>
|
||||||
<option value='<?=$troopUser['no']?>'><?=$troopUser['name']?></option>
|
<option value='<?=$troopUser['no']?>'><?=$troopUser['name']?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select><br>
|
</select><br>
|
||||||
<input type=submit name=btn value='부 대 추 방' style=width:130px;height:25px;>
|
<input type=submit class='submitBtn' value='부 대 추 방' style=width:130px;height:25px;>
|
||||||
<?php else: ?>
|
<?php else: ?>
|
||||||
<?=$troopLeader['turnText']?>
|
<?=$troopLeader['turnText']?>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
@@ -181,11 +217,11 @@ foreach ($troops as $troopNo=>$troop) {
|
|||||||
<table width=1000 class='tb_layout bg0'>
|
<table width=1000 class='tb_layout bg0'>
|
||||||
<tr>
|
<tr>
|
||||||
<td width=80 id=bg1>부 대 명</td>
|
<td width=80 id=bg1>부 대 명</td>
|
||||||
<td width=130><input type=text style=color:white;background-color:black; size=18 maxlength=9 name=name></td>
|
<td width=130><input id='troopName' type=text style=color:white;background-color:black; size=18 maxlength=9 name=name></td>
|
||||||
<?php if($me['troop'] == 0): ?>
|
<?php if($me['troop'] == 0): ?>
|
||||||
<td><input type=submit name=btn value='부 대 창 설'></td>
|
<td><input type=submit class='submitBtn' value='부 대 창 설'></td>
|
||||||
<?php else: ?>
|
<?php else: ?>
|
||||||
<td><input type=submit name=btn value='부 대 변 경'></td>
|
<td><input type=submit class='submitBtn' value='부 대 변 경'></td>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|||||||
@@ -1,66 +0,0 @@
|
|||||||
<?php
|
|
||||||
namespace sammo;
|
|
||||||
|
|
||||||
include "lib.php";
|
|
||||||
include "func.php";
|
|
||||||
// $btn, $name, $troop
|
|
||||||
$btn = Util::getReq('btn');
|
|
||||||
$name = Util::getReq('name');
|
|
||||||
$gen = Util::getReq('gen', 'int');
|
|
||||||
$troop = Util::getReq('troop', 'int');
|
|
||||||
|
|
||||||
//로그인 검사
|
|
||||||
$session = Session::requireGameLogin()->setReadOnly();
|
|
||||||
$userID = $session::getUserID();
|
|
||||||
|
|
||||||
$db = DB::db();
|
|
||||||
|
|
||||||
$me = $db->queryFirstRow('SELECT `no`, nation, troop FROM general WHERE `owner`=%i', $userID);
|
|
||||||
|
|
||||||
$name = trim($name);
|
|
||||||
if($btn == "부 대 창 설" && $name != "" && $me['troop'] == 0) {
|
|
||||||
$db->insert('troop',[
|
|
||||||
'name'=>$name,
|
|
||||||
'nation'=>$me['nation'],
|
|
||||||
'no'=>$me['no']
|
|
||||||
]);
|
|
||||||
$troopID = $db->insertId();
|
|
||||||
|
|
||||||
$db->update('general', [
|
|
||||||
'troop'=>$troopID
|
|
||||||
], 'no=%i',$me['no']);
|
|
||||||
} elseif($btn == "부 대 변 경" && $name != "") {
|
|
||||||
$db->update('troop', [
|
|
||||||
'name'=>$name
|
|
||||||
], 'no=%i',$me['no']);
|
|
||||||
} elseif($btn == "부 대 추 방" && $gen != 0) {
|
|
||||||
$db->update('general', [
|
|
||||||
'troop'=>0
|
|
||||||
], 'no=%i AND troop=(SELECT troop FROM troop WHERE no = %i)', $gen, $me['no']);
|
|
||||||
} elseif($btn == "부 대 가 입" && $troop != 0) {
|
|
||||||
$troopLeader = $db->queryFirstField('SELECT `no` FROM troop WHERE troop=%i', $troop);
|
|
||||||
$troopLeaderNation = $db->queryFirstField('SELECT `nation` FROM `general` WHERE `no`=%i AND `nation`=%i', $troopLeader, $me['nation']);
|
|
||||||
if($troopLeaderNation){
|
|
||||||
$db->update('general', [
|
|
||||||
'troop'=>$troop
|
|
||||||
], 'no=%i', $me['no']);
|
|
||||||
}
|
|
||||||
} elseif($btn == "부 대 탈 퇴") {
|
|
||||||
$troopLeader = $db->queryFirstField('SELECT `no` FROM troop WHERE troop=%i', $me['troop']);
|
|
||||||
|
|
||||||
//부대장일 경우
|
|
||||||
if($troopLeader == $me['no']) {
|
|
||||||
// 모두 탈퇴
|
|
||||||
$db->update('general', [
|
|
||||||
'troop'=>0
|
|
||||||
], 'troop=%i',$me['troop']);
|
|
||||||
// 부대 삭제
|
|
||||||
$db->delete('troop', 'troop=%i', $me['troop']);
|
|
||||||
} else {
|
|
||||||
$db->update('general', [
|
|
||||||
'troop'=>0
|
|
||||||
], 'no=%i', $me['no']);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
header('Location:b_troop.php', true, 303);
|
|
||||||
+165
@@ -0,0 +1,165 @@
|
|||||||
|
<?php
|
||||||
|
namespace sammo;
|
||||||
|
|
||||||
|
include "lib.php";
|
||||||
|
include "func.php";
|
||||||
|
// $btn, $name, $troop
|
||||||
|
$action = Util::getReq('action');
|
||||||
|
$name = Util::getReq('name');
|
||||||
|
$gen = Util::getReq('gen', 'int');
|
||||||
|
$troop = Util::getReq('troop', 'int');
|
||||||
|
|
||||||
|
//로그인 검사
|
||||||
|
$session = Session::requireGameLogin([])->setReadOnly();
|
||||||
|
$userID = $session::getUserID();
|
||||||
|
|
||||||
|
$db = DB::db();
|
||||||
|
|
||||||
|
$me = $db->queryFirstRow('SELECT `no`, name, nation, troop FROM general WHERE `owner`=%i', $userID);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if($action == '부대창설'){
|
||||||
|
$name = trim($name);
|
||||||
|
if(!$name){
|
||||||
|
Json::die([
|
||||||
|
'result'=>false,
|
||||||
|
'reason'=>'부대 이름이 없습니다.'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
if($me['troop'] != 0){
|
||||||
|
Json::die([
|
||||||
|
'result'=>false,
|
||||||
|
'reason'=>'이미 부대에 가입해있습니다.'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
$db->insert('troop',[
|
||||||
|
'name'=>$name,
|
||||||
|
'nation'=>$me['nation'],
|
||||||
|
'no'=>$me['no']
|
||||||
|
]);
|
||||||
|
$troopID = $db->insertId();
|
||||||
|
|
||||||
|
$db->update('general', [
|
||||||
|
'troop'=>$troopID
|
||||||
|
], 'no=%i',$me['no']);
|
||||||
|
|
||||||
|
Json::die([
|
||||||
|
'result'=>true,
|
||||||
|
'reason'=>'success'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if($action == '부대변경'){
|
||||||
|
$name = trim($name);
|
||||||
|
if(!$name){
|
||||||
|
Json::die([
|
||||||
|
'result'=>false,
|
||||||
|
'reason'=>'부대 이름이 없습니다.'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
$db->update('troop', [
|
||||||
|
'name'=>$name
|
||||||
|
], 'no=%i',$me['no']);
|
||||||
|
|
||||||
|
if($db->affectedRows() == 0){
|
||||||
|
Json::die([
|
||||||
|
'result'=>false,
|
||||||
|
'reason'=>'부대장이 아닙니다.'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
Json::die([
|
||||||
|
'result'=>true,
|
||||||
|
'reason'=>'success'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if($action == '부대추방'){
|
||||||
|
if (!$gen){
|
||||||
|
Json::die([
|
||||||
|
'result'=>false,
|
||||||
|
'reason'=>'장수를 지정해야 합니다.'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
$db->update('general', [
|
||||||
|
'troop'=>0
|
||||||
|
], 'no=%i AND troop=(SELECT troop FROM troop WHERE no = %i)', $gen, $me['no']);
|
||||||
|
|
||||||
|
if($db->affectedRows() == 0){
|
||||||
|
Json::die([
|
||||||
|
'result'=>false,
|
||||||
|
'reason'=>'부대장이 아니거나, 장수를 잘못 지정했습니다.'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
Json::die([
|
||||||
|
'result'=>true,
|
||||||
|
'reason'=>'success'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($action == '부대가입') {
|
||||||
|
if(!$troop){
|
||||||
|
Json::die([
|
||||||
|
'result'=>false,
|
||||||
|
'reason'=>'부대를 지정해야 합니다.'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
$troopLeader = $db->queryFirstField('SELECT `no` FROM troop WHERE troop=%i', $troop)?:0;
|
||||||
|
$troopLeaderNation = $db->queryFirstField('SELECT `nation` FROM `general` WHERE `no`=%i AND `nation`=%i', $troopLeader, $me['nation']);
|
||||||
|
|
||||||
|
if (!$troopLeaderNation) {
|
||||||
|
Json::die([
|
||||||
|
'result'=>false,
|
||||||
|
'reason'=>'올바른 부대장이 아닙니다.'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
$db->update('general', [
|
||||||
|
'troop'=>$troop
|
||||||
|
], 'no=%i', $me['no']);
|
||||||
|
|
||||||
|
Json::die([
|
||||||
|
'result'=>true,
|
||||||
|
'reason'=>'success'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if($action == "부대탈퇴") {
|
||||||
|
|
||||||
|
if($me['troop'] == 0){
|
||||||
|
Json::die([
|
||||||
|
'result'=>false,
|
||||||
|
'reason'=>'부대에 속해있지 않습니다.'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
$troopLeader = $db->queryFirstField('SELECT `no` FROM troop WHERE troop=%i', $me['troop']);
|
||||||
|
|
||||||
|
//부대장일 경우
|
||||||
|
if($troopLeader == $me['no']) {
|
||||||
|
// 모두 탈퇴
|
||||||
|
$db->update('general', [
|
||||||
|
'troop'=>0
|
||||||
|
], 'troop=%i',$me['troop']);
|
||||||
|
// 부대 삭제
|
||||||
|
$db->delete('troop', 'troop=%i', $me['troop']);
|
||||||
|
} else {
|
||||||
|
$db->update('general', [
|
||||||
|
'troop'=>0
|
||||||
|
], 'no=%i', $me['no']);
|
||||||
|
}
|
||||||
|
|
||||||
|
Json::die([
|
||||||
|
'result'=>true,
|
||||||
|
'reason'=>'success'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
Json::die([
|
||||||
|
'result'=>false,
|
||||||
|
'reason'=>'올바르지 않은 명령입니다.'
|
||||||
|
]);
|
||||||
Reference in New Issue
Block a user