Merge pull request 'refactor: bootstrap4 => bootstrap5' (#200) from no_bootstrap4 into devel
Reviewed-on: https://storage.hided.net/gitea/devsam/core/pulls/200
This commit is contained in:
@@ -23,5 +23,17 @@ module.exports = {
|
|||||||
'@typescript-eslint/no-floating-promises': 'error',
|
'@typescript-eslint/no-floating-promises': 'error',
|
||||||
"vue/no-multiple-template-root": "off",
|
"vue/no-multiple-template-root": "off",
|
||||||
"vue/no-v-for-template-key": "off",
|
"vue/no-v-for-template-key": "off",
|
||||||
|
"vue/multi-word-component-names": "off",//TODO: 삭제
|
||||||
|
},
|
||||||
|
settings: {
|
||||||
|
'import/resolver': {
|
||||||
|
alias: {
|
||||||
|
map: [
|
||||||
|
['@', './hwe/ts'],
|
||||||
|
['@util', './hwe/ts/util'],
|
||||||
|
['@scss', './hwe/scss'],
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
+28
-41
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
require(__DIR__ . '/../vendor/autoload.php');
|
require(__DIR__ . '/../vendor/autoload.php');
|
||||||
@@ -6,6 +7,7 @@ require(__DIR__.'/../vendor/autoload.php');
|
|||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="ko">
|
<html lang="ko">
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
@@ -13,11 +15,14 @@ require(__DIR__.'/../vendor/autoload.php');
|
|||||||
<title>설치</title>
|
<title>설치</title>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('../dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('../dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('../dist_js/install.js') ?>
|
<?= WebUtil::printJS('../dist_js/install.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
<?= WebUtil::printCSS('../dist_css/vendor.css') ?>
|
||||||
|
<?= WebUtil::printCSS('../dist_css/common_ts.css') ?>
|
||||||
<?= WebUtil::printCSS('../css/install.css') ?>
|
<?= WebUtil::printCSS('../css/install.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<h1 class="row justify-content-md-center">삼국지 모의전투 HiDCHe 설치</h1>
|
<h1 class="row justify-content-md-center">삼국지 모의전투 HiDCHe 설치</h1>
|
||||||
@@ -33,16 +38,14 @@ require(__DIR__.'/../vendor/autoload.php');
|
|||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="db_host" class="col-sm-4 col-form-label">DB호스트</label>
|
<label for="db_host" class="col-sm-4 col-form-label">DB호스트</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input type="text" class="form-control" name="db_host" id="db_host"
|
<input type="text" class="form-control" name="db_host" id="db_host" placeholder="호스트" value="localhost" />
|
||||||
placeholder="호스트" value="localhost" />
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="db_port" class="col-sm-4 col-form-label">DB포트</label>
|
<label for="db_port" class="col-sm-4 col-form-label">DB포트</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input type="text" class="form-control" name="db_port" id="db_port"
|
<input type="text" class="form-control" name="db_port" id="db_port" placeholder="접속 포트" value="3306" />
|
||||||
placeholder="접속 포트" value="3306" />
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -57,52 +60,43 @@ require(__DIR__.'/../vendor/autoload.php');
|
|||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="db_pw" class="col-sm-4 col-form-label">DB비밀번호</label>
|
<label for="db_pw" class="col-sm-4 col-form-label">DB비밀번호</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input type="password" class="form-control" name="db_pw" id="db_pw"
|
<input type="password" class="form-control" name="db_pw" id="db_pw" placeholder="DB비밀번호" />
|
||||||
placeholder="DB비밀번호"/>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="db_name" class="col-sm-4 col-form-label">DB명</label>
|
<label for="db_name" class="col-sm-4 col-form-label">DB명</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input type="text" class="form-control" name="db_name" id="db_name"
|
<input type="text" class="form-control" name="db_name" id="db_name" placeholder="DB명(예:sammo)" />
|
||||||
placeholder="DB명(예:sammo)"/>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="serv_host" class="col-sm-4 col-form-label">접속 경로</label>
|
<label for="serv_host" class="col-sm-4 col-form-label">접속 경로</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input type="text" class="form-control" name="serv_host" id="serv_host"
|
<input type="text" class="form-control" name="serv_host" id="serv_host" placeholder="접속경로(예:http://www.example.com)" />
|
||||||
placeholder="접속경로(예:http://www.example.com)"/>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="shared_icon_path" class="col-sm-4 col-form-label">공용 아이콘 주소</label>
|
<label for="shared_icon_path" class="col-sm-4 col-form-label">공용 아이콘 주소</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input type="text" class="form-control" name="shared_icon_path" id="shared_icon_path"
|
<input type="text" class="form-control" name="shared_icon_path" id="shared_icon_path" placeholder="공용 아이콘 주소(웹 주소, 또는 접속 경로에 따른 상대 주소)" value="../image/icons" />
|
||||||
placeholder="공용 아이콘 주소(웹 주소, 또는 접속 경로에 따른 상대 주소)"
|
|
||||||
value="../image/icons" />
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="game_image_path" class="col-sm-4 col-form-label">게임 이미지 주소</label>
|
<label for="game_image_path" class="col-sm-4 col-form-label">게임 이미지 주소</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input type="text" class="form-control" name="game_image_path" id="game_image_path"
|
<input type="text" class="form-control" name="game_image_path" id="game_image_path" placeholder="게임 이미지 주소(웹 주소, 또는 접속 경로에 따른 상대 주소)" value="../image/game" />
|
||||||
placeholder="게임 이미지 주소(웹 주소, 또는 접속 경로에 따른 상대 주소)"
|
|
||||||
value="../image/game" />
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="image_request_key" class="col-sm-4 col-form-label">이미지 갱신 키</label>
|
<label for="image_request_key" class="col-sm-4 col-form-label">이미지 갱신 키</label>
|
||||||
<div class="input-group col-sm-8">
|
<div class="input-group col-sm-8">
|
||||||
<input type="text" class="form-control" name="image_request_key" id="image_request_key"
|
<input type="text" class="form-control" name="image_request_key" id="image_request_key" placeholder="이미지 서버의 hook/HashKey.php의 값과 동일하게" value="" />
|
||||||
placeholder="이미지 서버의 hook/HashKey.php의 값과 동일하게"
|
<div class="input-group-text">
|
||||||
value="" />
|
|
||||||
<div class="input-group-append">
|
|
||||||
<button id="btn_random_generate_key" class="btn btn-secondary" type="button">랜덤 생성</button>
|
<button id="btn_random_generate_key" class="btn btn-secondary" type="button">랜덤 생성</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -113,31 +107,27 @@ require(__DIR__.'/../vendor/autoload.php');
|
|||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="kakao_rest_key" class="col-sm-4 col-form-label">카카오 API Rest Key</label>
|
<label for="kakao_rest_key" class="col-sm-4 col-form-label">카카오 API Rest Key</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input type="text" class="form-control" name="kakao_rest_key" id="kakao_rest_key"
|
<input type="text" class="form-control" name="kakao_rest_key" id="kakao_rest_key" placeholder="카카오톡 API의 Rest Key" value="" />
|
||||||
placeholder="카카오톡 API의 Rest Key"
|
|
||||||
value="" />
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="kakao_admin_key" class="col-sm-4 col-form-label">카카오 API Admin Key</label>
|
<label for="kakao_admin_key" class="col-sm-4 col-form-label">카카오 API Admin Key</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input type="text" class="form-control" name="kakao_admin_key" id="kakao_admin_key"
|
<input type="text" class="form-control" name="kakao_admin_key" id="kakao_admin_key" placeholder="카카오톡 API의 Admin Key" value="" />
|
||||||
placeholder="카카오톡 API의 Admin Key"
|
|
||||||
value="" />
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<div class="col-sm-4"></div>
|
<div class="col-sm-4"></div>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<button type="submit"
|
<button type="submit" class="btn btn-primary btn-lg btn-block login-button">설정 파일 생성</button>
|
||||||
class="btn btn-primary btn-lg btn-block login-button">설정 파일 생성</button>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div><!--DB 폼 끝-->
|
</div>
|
||||||
|
<!--DB 폼 끝-->
|
||||||
|
|
||||||
<div class="card" id="admin_form_card" style="display:none">
|
<div class="card" id="admin_form_card" style="display:none">
|
||||||
<h3 class="card-header">
|
<h3 class="card-header">
|
||||||
@@ -148,8 +138,7 @@ require(__DIR__.'/../vendor/autoload.php');
|
|||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="username" class="col-sm-3 col-form-label">계정명</label>
|
<label for="username" class="col-sm-3 col-form-label">계정명</label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<input type="text" class="form-control" name="username" id="username"
|
<input type="text" class="form-control" name="username" id="username" placeholder="계정명" />
|
||||||
placeholder="계정명"/>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -157,24 +146,21 @@ require(__DIR__.'/../vendor/autoload.php');
|
|||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="password" class="col-sm-3 col-form-label">비밀번호</label>
|
<label for="password" class="col-sm-3 col-form-label">비밀번호</label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<input type="password" class="form-control" name="password" id="password"
|
<input type="password" class="form-control" name="password" id="password" placeholder="비밀번호" />
|
||||||
placeholder="비밀번호"/>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="confirm_password" class="col-sm-3 col-form-label">비밀번호 확인</label>
|
<label for="confirm_password" class="col-sm-3 col-form-label">비밀번호 확인</label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<input type="password" class="form-control" name="confirm_password" id="confirm_password"
|
<input type="password" class="form-control" name="confirm_password" id="confirm_password" placeholder="비밀번호 확인" />
|
||||||
placeholder="비밀번호 확인"/>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="nickname" class="col-sm-3 col-form-label">닉네임</label>
|
<label for="nickname" class="col-sm-3 col-form-label">닉네임</label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<input type="text" class="form-control" name="nickname" id="nickname"
|
<input type="text" class="form-control" name="nickname" id="nickname" placeholder="닉네임" value="운영자" />
|
||||||
placeholder="닉네임" value="운영자"/>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -183,13 +169,13 @@ require(__DIR__.'/../vendor/autoload.php');
|
|||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<div class="col-sm-3"></div>
|
<div class="col-sm-3"></div>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<button type="submit"
|
<button type="submit" class="btn btn-primary btn-lg btn-block login-button">관리자 계정 생성</button>
|
||||||
class="btn btn-primary btn-lg btn-block login-button">관리자 계정 생성</button>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div><!--ADMIN 폼 끝-->
|
</div>
|
||||||
|
<!--ADMIN 폼 끝-->
|
||||||
|
|
||||||
<!-- TODO: conf_kakao.php -->
|
<!-- TODO: conf_kakao.php -->
|
||||||
|
|
||||||
@@ -197,4 +183,5 @@ require(__DIR__.'/../vendor/autoload.php');
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+1
-1
@@ -24,7 +24,7 @@ $plock = $db->queryFirstField('SELECT plock FROM plock');
|
|||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?=WebUtil::printCSS('../d_shared/common.css')?>
|
<?=WebUtil::printCSS('../d_shared/common.css')?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?=WebUtil::printCSS('dist_css/common.css')?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|||||||
+1
-1
@@ -22,7 +22,7 @@ $admin = getAdmin();
|
|||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?=WebUtil::printCSS('../d_shared/common.css')?>
|
<?=WebUtil::printCSS('../d_shared/common.css')?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?=WebUtil::printCSS('dist_css/common.css')?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|||||||
+1
-1
@@ -23,7 +23,7 @@ $db = DB::db();
|
|||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?= WebUtil::printCSS('css/common.css') ?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -40,7 +40,7 @@ function colorBlockedName($general){
|
|||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?= WebUtil::printCSS('css/common.css') ?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@ $sel2[$type2] = "selected";
|
|||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?= WebUtil::printCSS('css/common.css') ?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -86,7 +86,7 @@ $generalObj = General::createGeneralObjFromDB($gen);
|
|||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?= WebUtil::printCSS('css/common.css') ?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -31,7 +31,7 @@ $sel[$type] = "selected";
|
|||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?=WebUtil::printCSS('../d_shared/common.css')?>
|
<?=WebUtil::printCSS('../d_shared/common.css')?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?=WebUtil::printCSS('dist_css/common.css')?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|||||||
+95
-48
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -25,26 +26,30 @@ $templates = new \League\Plates\Engine(__DIR__.'/templates');
|
|||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1136" />
|
<meta name="viewport" content="width=1136" />
|
||||||
<title><?= UniqueConst::$serverName ?>: 명장일람</title>
|
<title><?= UniqueConst::$serverName ?>: 명장일람</title>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printCSS('css/hallOfFame.css') ?>
|
<?= WebUtil::printCSS('css/hallOfFame.css') ?>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1100 class='tb_layout bg0'>
|
<table align=center width=1100 class='tb_layout bg0'>
|
||||||
<tr><td>명 장 일 람<br><?=closeButton()?></td></tr>
|
<tr>
|
||||||
|
<td>명 장 일 람<br><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1100 class='tb_layout bg0'>
|
<table align=center width=1100 class='tb_layout bg0'>
|
||||||
<form name=form1 action=a_bestGeneral.php method=post>
|
<form name=form1 action=a_bestGeneral.php method=post>
|
||||||
<tr><td align=center>
|
<tr>
|
||||||
|
<td align=center>
|
||||||
<input type=submit name=btn value='유저 보기'>
|
<input type=submit name=btn value='유저 보기'>
|
||||||
<input type=submit name=btn value='NPC 보기'>
|
<input type=submit name=btn value='NPC 보기'>
|
||||||
</td></tr>
|
</td>
|
||||||
|
</tr>
|
||||||
</form>
|
</form>
|
||||||
</table>
|
</table>
|
||||||
<div style="margin:auto;width:1100px;">
|
<div style="margin:auto;width:1100px;">
|
||||||
@@ -65,8 +70,14 @@ foreach (getAllNationStaticInfo() as $nation) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$types = [
|
$types = [
|
||||||
["명 성", "int", function($v){$v['value'] = $v['experience']; return $v; }],
|
["명 성", "int", function ($v) {
|
||||||
["계 급", "int", function($v){$v['value'] = $v['dedication']; return $v; }],
|
$v['value'] = $v['experience'];
|
||||||
|
return $v;
|
||||||
|
}],
|
||||||
|
["계 급", "int", function ($v) {
|
||||||
|
$v['value'] = $v['dedication'];
|
||||||
|
return $v;
|
||||||
|
}],
|
||||||
["계 략 성 공", "int", function ($v) use ($gameStor) {
|
["계 략 성 공", "int", function ($v) use ($gameStor) {
|
||||||
$v['value'] = $v['firenum'];
|
$v['value'] = $v['firenum'];
|
||||||
if ($gameStor->isunited) {
|
if ($gameStor->isunited) {
|
||||||
@@ -80,49 +91,75 @@ $types = [
|
|||||||
$v['fgColor'] = newColor($v['bgColor']);
|
$v['fgColor'] = newColor($v['bgColor']);
|
||||||
return $v;
|
return $v;
|
||||||
}],
|
}],
|
||||||
["전 투 횟 수", "int", function($v){$v['value'] = $v['warnum']; return $v; }],
|
["전 투 횟 수", "int", function ($v) {
|
||||||
["승 리", "int", function($v){$v['value'] = $v['killnum']; return $v; }],
|
$v['value'] = $v['warnum'];
|
||||||
|
return $v;
|
||||||
|
}],
|
||||||
|
["승 리", "int", function ($v) {
|
||||||
|
$v['value'] = $v['killnum'];
|
||||||
|
return $v;
|
||||||
|
}],
|
||||||
["승 률", "percent", function ($v) {
|
["승 률", "percent", function ($v) {
|
||||||
if ($v['warnum'] < 10) {
|
if ($v['warnum'] < 10) {
|
||||||
$v['value'] = 0;
|
$v['value'] = 0;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$v['value'] = $v['killnum'] / max(1, $v['warnum']);
|
$v['value'] = $v['killnum'] / max(1, $v['warnum']);
|
||||||
}
|
}
|
||||||
return $v;
|
return $v;
|
||||||
}],
|
}],
|
||||||
["점 령", "int", function($v){$v['value'] = $v['occupied']; return $v; }],
|
["점 령", "int", function ($v) {
|
||||||
["사 살", "int", function($v){$v['value'] = $v['killcrew']; return $v; }],
|
$v['value'] = $v['occupied'];
|
||||||
|
return $v;
|
||||||
|
}],
|
||||||
|
["사 살", "int", function ($v) {
|
||||||
|
$v['value'] = $v['killcrew'];
|
||||||
|
return $v;
|
||||||
|
}],
|
||||||
["살 상 률", "percent", function ($v) {
|
["살 상 률", "percent", function ($v) {
|
||||||
if ($v['warnum'] < 10) {
|
if ($v['warnum'] < 10) {
|
||||||
$v['value'] = 0;
|
$v['value'] = 0;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$v['value'] = $v['killcrew'] / max(1, $v['deathcrew']);
|
$v['value'] = $v['killcrew'] / max(1, $v['deathcrew']);
|
||||||
}
|
}
|
||||||
return $v;
|
return $v;
|
||||||
}],
|
}],
|
||||||
["대 인 사 살", "int", function($v){$v['value'] = $v['killcrew_person']; return $v; }],
|
["대 인 사 살", "int", function ($v) {
|
||||||
|
$v['value'] = $v['killcrew_person'];
|
||||||
|
return $v;
|
||||||
|
}],
|
||||||
["대 인 살 상 률", "percent", function ($v) {
|
["대 인 살 상 률", "percent", function ($v) {
|
||||||
if ($v['warnum'] < 10) {
|
if ($v['warnum'] < 10) {
|
||||||
$v['value'] = 0;
|
$v['value'] = 0;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$v['value'] = $v['killcrew_person'] / max(1, $v['deathcrew_person']);
|
$v['value'] = $v['killcrew_person'] / max(1, $v['deathcrew_person']);
|
||||||
}
|
}
|
||||||
return $v;
|
return $v;
|
||||||
}],
|
}],
|
||||||
["보 병 숙 련 도", "int", function($v){$v['value'] = $v['dex1']; return $v; }],
|
["보 병 숙 련 도", "int", function ($v) {
|
||||||
["궁 병 숙 련 도", "int", function($v){$v['value'] = $v['dex2']; return $v; }],
|
$v['value'] = $v['dex1'];
|
||||||
["기 병 숙 련 도", "int", function($v){$v['value'] = $v['dex3']; return $v; }],
|
return $v;
|
||||||
["귀 병 숙 련 도", "int", function($v){$v['value'] = $v['dex4']; return $v; }],
|
}],
|
||||||
["차 병 숙 련 도", "int", function($v){$v['value'] = $v['dex5']; return $v; }],
|
["궁 병 숙 련 도", "int", function ($v) {
|
||||||
|
$v['value'] = $v['dex2'];
|
||||||
|
return $v;
|
||||||
|
}],
|
||||||
|
["기 병 숙 련 도", "int", function ($v) {
|
||||||
|
$v['value'] = $v['dex3'];
|
||||||
|
return $v;
|
||||||
|
}],
|
||||||
|
["귀 병 숙 련 도", "int", function ($v) {
|
||||||
|
$v['value'] = $v['dex4'];
|
||||||
|
return $v;
|
||||||
|
}],
|
||||||
|
["차 병 숙 련 도", "int", function ($v) {
|
||||||
|
$v['value'] = $v['dex5'];
|
||||||
|
return $v;
|
||||||
|
}],
|
||||||
["전 력 전 승 률", "percent", function ($v) {
|
["전 력 전 승 률", "percent", function ($v) {
|
||||||
$totalCnt = $v['ttw'] + $v['ttd'] + $v['ttl'];
|
$totalCnt = $v['ttw'] + $v['ttd'] + $v['ttl'];
|
||||||
if ($totalCnt < 50) {
|
if ($totalCnt < 50) {
|
||||||
$v['value'] = 0;
|
$v['value'] = 0;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$v['value'] = $v['ttw'] / max(1, $totalCnt);
|
$v['value'] = $v['ttw'] / max(1, $totalCnt);
|
||||||
}
|
}
|
||||||
return $v;
|
return $v;
|
||||||
@@ -131,8 +168,7 @@ $types = [
|
|||||||
$totalCnt = $v['tlw'] + $v['tld'] + $v['tll'];
|
$totalCnt = $v['tlw'] + $v['tld'] + $v['tll'];
|
||||||
if ($totalCnt < 50) {
|
if ($totalCnt < 50) {
|
||||||
$v['value'] = 0;
|
$v['value'] = 0;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$v['value'] = $v['tlw'] / max(1, $totalCnt);
|
$v['value'] = $v['tlw'] / max(1, $totalCnt);
|
||||||
}
|
}
|
||||||
return $v;
|
return $v;
|
||||||
@@ -141,8 +177,7 @@ $types = [
|
|||||||
$totalCnt = $v['tsw'] + $v['tsd'] + $v['tsl'];
|
$totalCnt = $v['tsw'] + $v['tsd'] + $v['tsl'];
|
||||||
if ($totalCnt < 50) {
|
if ($totalCnt < 50) {
|
||||||
$v['value'] = 0;
|
$v['value'] = 0;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$v['value'] = $v['tsw'] / max(1, $totalCnt);
|
$v['value'] = $v['tsw'] / max(1, $totalCnt);
|
||||||
}
|
}
|
||||||
return $v;
|
return $v;
|
||||||
@@ -151,21 +186,28 @@ $types = [
|
|||||||
$totalCnt = $v['tiw'] + $v['tid'] + $v['til'];
|
$totalCnt = $v['tiw'] + $v['tid'] + $v['til'];
|
||||||
if ($totalCnt < 50) {
|
if ($totalCnt < 50) {
|
||||||
$v['value'] = 0;
|
$v['value'] = 0;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$v['value'] = $v['tiw'] / max(1, $totalCnt);
|
$v['value'] = $v['tiw'] / max(1, $totalCnt);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $v;
|
return $v;
|
||||||
}],
|
}],
|
||||||
["베 팅 투 자 액", "int", function($v){$v['value'] = $v['betgold']; return $v; }],
|
["베 팅 투 자 액", "int", function ($v) {
|
||||||
["베 팅 당 첨", "int", function($v){$v['value'] = $v['betwin']; return $v; }],
|
$v['value'] = $v['betgold'];
|
||||||
["베 팅 수 익 금", "int", function($v){$v['value'] = $v['betwingold']; return $v; }],
|
return $v;
|
||||||
|
}],
|
||||||
|
["베 팅 당 첨", "int", function ($v) {
|
||||||
|
$v['value'] = $v['betwin'];
|
||||||
|
return $v;
|
||||||
|
}],
|
||||||
|
["베 팅 수 익 금", "int", function ($v) {
|
||||||
|
$v['value'] = $v['betwingold'];
|
||||||
|
return $v;
|
||||||
|
}],
|
||||||
["베 팅 수 익 률", "percent", function ($v) {
|
["베 팅 수 익 률", "percent", function ($v) {
|
||||||
if ($v['betgold'] < GameConst::$defaultGold) {
|
if ($v['betgold'] < GameConst::$defaultGold) {
|
||||||
$v['value'] = 0;
|
$v['value'] = 0;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$v['value'] = $v['betwingold'] / max(1, $v['betgold']);
|
$v['value'] = $v['betwingold'] / max(1, $v['betgold']);
|
||||||
}
|
}
|
||||||
return $v;
|
return $v;
|
||||||
@@ -178,8 +220,9 @@ foreach($db->query(
|
|||||||
experience, dedication,
|
experience, dedication,
|
||||||
dex1, dex2, dex3, dex4, dex5,
|
dex1, dex2, dex3, dex4, dex5,
|
||||||
horse, weapon, book, item
|
horse, weapon, book, item
|
||||||
FROM general WHERE %l", $btn == "NPC 보기"?"npc>=2":"npc<2") as $general
|
FROM general WHERE %l",
|
||||||
){
|
$btn == "NPC 보기" ? "npc>=2" : "npc<2"
|
||||||
|
) as $general) {
|
||||||
$generalID = $general['no'];
|
$generalID = $general['no'];
|
||||||
$general['bgColor'] = $nationColor[$general['nation']] ?? GameConst::$basecolor4;
|
$general['bgColor'] = $nationColor[$general['nation']] ?? GameConst::$basecolor4;
|
||||||
$general['fgColor'] = newColor($general['bgColor']);
|
$general['fgColor'] = newColor($general['bgColor']);
|
||||||
@@ -188,8 +231,7 @@ foreach($db->query(
|
|||||||
if (key_exists('picture', $general)) {
|
if (key_exists('picture', $general)) {
|
||||||
$imageTemp = GetImageURL($general['imgsvr']);
|
$imageTemp = GetImageURL($general['imgsvr']);
|
||||||
$general['pictureFullPath'] = "$imageTemp/{$general['picture']}";
|
$general['pictureFullPath'] = "$imageTemp/{$general['picture']}";
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$general['pictureFullPath'] = GetImageURL(0) . "/default.jpg";
|
$general['pictureFullPath'] = GetImageURL(0) . "/default.jpg";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -218,8 +260,7 @@ foreach($types as $idx=>[$typeName, $typeValue, $typeFunc]){
|
|||||||
|
|
||||||
if ($typeValue == 'percent') {
|
if ($typeValue == 'percent') {
|
||||||
$general['printValue'] = number_format($value * 100, 2) . '%';
|
$general['printValue'] = number_format($value * 100, 2) . '%';
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$general['printValue'] = number_format($value);
|
$general['printValue'] = number_format($value);
|
||||||
}
|
}
|
||||||
return $general;
|
return $general;
|
||||||
@@ -248,7 +289,10 @@ $itemTypes = [
|
|||||||
'item' => '도 구'
|
'item' => '도 구'
|
||||||
];
|
];
|
||||||
|
|
||||||
$simpleItemTypes = array_keys($itemTypes); array_map(function($itemType){return $itemType[1];}, $itemTypes);
|
$simpleItemTypes = array_keys($itemTypes);
|
||||||
|
array_map(function ($itemType) {
|
||||||
|
return $itemType[1];
|
||||||
|
}, $itemTypes);
|
||||||
$itemOwners = [];
|
$itemOwners = [];
|
||||||
|
|
||||||
foreach ($generals as $general) {
|
foreach ($generals as $general) {
|
||||||
@@ -261,11 +305,9 @@ foreach($generals as $general){
|
|||||||
|
|
||||||
if (key_exists($itemClassName, $itemOwners)) {
|
if (key_exists($itemClassName, $itemOwners)) {
|
||||||
$itemOwners[$itemClassName][] = $general;
|
$itemOwners[$itemClassName][] = $general;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$itemOwners[$itemClassName] = [$general];
|
$itemOwners[$itemClassName] = [$general];
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -332,8 +374,13 @@ foreach(GameConst::$allItems as $itemType=>$itemList){
|
|||||||
?>
|
?>
|
||||||
</div>
|
</div>
|
||||||
<table align=center width=1100 class='tb_layout bg0'>
|
<table align=center width=1100 class='tb_layout bg0'>
|
||||||
<tr><td><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?> </td></tr>
|
<td><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?> </td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+14
-6
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -18,19 +19,21 @@ increaseRefresh("왕조일람", 1);
|
|||||||
<title><?= UniqueConst::$serverName ?>: 왕조일람</title>
|
<title><?= UniqueConst::$serverName ?>: 왕조일람</title>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class="tb_layout bg0">
|
<table align=center width=1000 class="tb_layout bg0">
|
||||||
<tr><td>역 대 왕 조<br>
|
<tr>
|
||||||
|
<td>역 대 왕 조<br>
|
||||||
<button onclick=window.close()>창 닫기</button><br>
|
<button onclick=window.close()>창 닫기</button><br>
|
||||||
</td></tr>
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
@@ -123,8 +126,13 @@ foreach($emperiors as $emperior){
|
|||||||
?>
|
?>
|
||||||
|
|
||||||
<table style="margin-top:10px;" align=center width=1000 class='tb_layout bg0'>
|
<table style="margin-top:10px;" align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?></td></tr>
|
<td><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
@@ -26,9 +26,8 @@ $serverID = $emperior['server_id']??($emperior['serverID']??null);
|
|||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<title><?=UniqueConst::$serverName?>: 왕조일람</title>
|
<title><?=UniqueConst::$serverName?>: 왕조일람</title>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?=WebUtil::printCSS('../d_shared/common.css')?>
|
<?=WebUtil::printCSS('../d_shared/common.css')?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?=WebUtil::printCSS('dist_css/common.css')?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|||||||
+19
-8
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -43,20 +44,24 @@ if($gameStor->isunited){
|
|||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<title><?= UniqueConst::$serverName ?>: 장수일람</title>
|
<title><?= UniqueConst::$serverName ?>: 장수일람</title>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>장 수 일 람<br><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><form name=form1 method=post>정렬순서 :
|
<td>장 수 일 람<br><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<form name=form1 method=post>정렬순서 :
|
||||||
<select id='viewType' name='type' size=1>
|
<select id='viewType' name='type' size=1>
|
||||||
<option value=1>국가</option>
|
<option value=1>국가</option>
|
||||||
<option value=2>통솔</option>
|
<option value=2>통솔</option>
|
||||||
@@ -74,8 +79,10 @@ if($gameStor->isunited){
|
|||||||
<option value=14>연령</option>
|
<option value=14>연령</option>
|
||||||
<option value=15>NPC</option>
|
<option value=15>NPC</option>
|
||||||
</select>
|
</select>
|
||||||
<input type=submit value='정렬하기'></form>
|
<input type=submit value='정렬하기'>
|
||||||
</td></tr>
|
</form>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<?php
|
<?php
|
||||||
$nationname = [];
|
$nationname = [];
|
||||||
@@ -202,8 +209,12 @@ echo "
|
|||||||
?>
|
?>
|
||||||
|
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?></td></tr>
|
<td><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
|
|||||||
+23
-25
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -31,8 +32,7 @@ $scenarioList = (function(){
|
|||||||
if ($scenarioIdx && key_exists($scenarioIdx, $scenarioList[$seasonIdx] ?? [])) {
|
if ($scenarioIdx && key_exists($scenarioIdx, $scenarioList[$seasonIdx] ?? [])) {
|
||||||
$searchScenarioName = $scenarioList[$seasonIdx][$scenarioIdx]['name'];
|
$searchScenarioName = $scenarioList[$seasonIdx][$scenarioIdx]['name'];
|
||||||
$searchFilter = $db->sqleval('season = %i AND scenario = %i', $seasonIdx, $scenarioIdx);
|
$searchFilter = $db->sqleval('season = %i AND scenario = %i', $seasonIdx, $scenarioIdx);
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$searchScenarioName = '* 모두 *';
|
$searchScenarioName = '* 모두 *';
|
||||||
$searchFilter = $db->sqleval('season = %i', $seasonIdx);
|
$searchFilter = $db->sqleval('season = %i', $seasonIdx);
|
||||||
}
|
}
|
||||||
@@ -46,38 +46,34 @@ else{
|
|||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1136" />
|
<meta name="viewport" content="width=1136" />
|
||||||
<title><?= UniqueConst::$serverName ?>: 명예의 전당</title>
|
<title><?= UniqueConst::$serverName ?>: 명예의 전당</title>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printCSS('css/hallOfFame.css') ?>
|
<?= WebUtil::printCSS('css/hallOfFame.css') ?>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJs('dist_js/hallOfFame.js') ?>
|
<?= WebUtil::printJs('dist_js/hallOfFame.js') ?>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1100 class='tb_layout bg0'>
|
<table align=center width=1100 class='tb_layout bg0'>
|
||||||
<tr><td>명 예 의 전 당<br><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td>
|
<td>명 예 의 전 당<br><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
시나리오 검색 : <select id="by_scenario" name="by_scenario">
|
시나리오 검색 : <select id="by_scenario" name="by_scenario">
|
||||||
<?php foreach ($scenarioList as $iterSeasonIdx => $subScenarioList) : ?>
|
<?php foreach ($scenarioList as $iterSeasonIdx => $subScenarioList) : ?>
|
||||||
<option
|
<option data-season="<?= $iterSeasonIdx ?>" value="" <?= ($iterSeasonIdx == $seasonIdx && $scenarioIdx === null) ? "selected='selected'" : '' ?>>* 시즌 : <?= $iterSeasonIdx ?> 종합 *</option>
|
||||||
data-season="<?=$iterSeasonIdx?>"
|
|
||||||
value=""
|
|
||||||
<?=($iterSeasonIdx == $seasonIdx && $scenarioIdx === null)?"selected='selected'":''?>
|
|
||||||
>* 시즌 : <?=$iterSeasonIdx?> 종합 *</option>
|
|
||||||
<?php foreach ($subScenarioList as $info) : ?>
|
<?php foreach ($subScenarioList as $info) : ?>
|
||||||
<option
|
<option data-season="<?= $iterSeasonIdx ?>" value="<?= $info['scenario'] ?>" <?= ($iterSeasonIdx == $seasonIdx && $info['scenario'] === $scenarioIdx) ? "selected='selected'" : '' ?>><?= $info['name'] ?>(<?= $info['cnt'] ?>회)</option>
|
||||||
data-season="<?=$iterSeasonIdx?>"
|
|
||||||
value="<?=$info['scenario']?>"
|
|
||||||
<?=($iterSeasonIdx == $seasonIdx && $info['scenario']===$scenarioIdx)?"selected='selected'":''?>
|
|
||||||
><?=$info['name']?>(<?=$info['cnt']?>회)</option>
|
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
?>
|
?>
|
||||||
</select>
|
</select>
|
||||||
</td></tr>
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<div style="margin:auto;width:1100px;">
|
<div style="margin:auto;width:1100px;">
|
||||||
<?php
|
<?php
|
||||||
@@ -129,8 +125,7 @@ foreach($types as $typeName=>[$typeDescribe, $typeValue]) {
|
|||||||
if (!key_exists('bgColor', $general)) {
|
if (!key_exists('bgColor', $general)) {
|
||||||
if (!key_exists('color', $general)) {
|
if (!key_exists('color', $general)) {
|
||||||
$general['bgColor'] = GameConst::$basecolor4;
|
$general['bgColor'] = GameConst::$basecolor4;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$general['bgColor'] = $general['color'];
|
$general['bgColor'] = $general['color'];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -142,8 +137,7 @@ foreach($types as $typeName=>[$typeDescribe, $typeValue]) {
|
|||||||
if (key_exists('picture', $general)) {
|
if (key_exists('picture', $general)) {
|
||||||
$imageTemp = GetImageURL($general['imgsvr']);
|
$imageTemp = GetImageURL($general['imgsvr']);
|
||||||
$general['pictureFullPath'] = "$imageTemp/{$general['picture']}";
|
$general['pictureFullPath'] = "$imageTemp/{$general['picture']}";
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$general['pictureFullPath'] = GetImageURL(0) . "/default.jpg";
|
$general['pictureFullPath'] = GetImageURL(0) . "/default.jpg";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -151,8 +145,7 @@ foreach($types as $typeName=>[$typeDescribe, $typeValue]) {
|
|||||||
$value = $general['value'];
|
$value = $general['value'];
|
||||||
if ($typeValue == 'percent') {
|
if ($typeValue == 'percent') {
|
||||||
$general['printValue'] = number_format($value * 100, 2) . '%';
|
$general['printValue'] = number_format($value * 100, 2) . '%';
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$general['printValue'] = number_format($value);
|
$general['printValue'] = number_format($value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -168,8 +161,13 @@ foreach($types as $typeName=>[$typeDescribe, $typeValue]) {
|
|||||||
?>
|
?>
|
||||||
</div>
|
</div>
|
||||||
<table align=center width=1100 class='tb_layout bg0'>
|
<table align=center width=1100 class='tb_layout bg0'>
|
||||||
<tr><td><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?> </td></tr>
|
<td><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?> </td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+30
-14
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -47,8 +48,7 @@ $e = $e_year * 12 + $e_month;
|
|||||||
|
|
||||||
if ($serverID !== UniqueConst::$serverID) {
|
if ($serverID !== UniqueConst::$serverID) {
|
||||||
$mapTheme = $db->queryFirstField('SELECT map FROM ng_games WHERE server_id=%s', $serverID) ?: 'che';
|
$mapTheme = $db->queryFirstField('SELECT map FROM ng_games WHERE server_id=%s', $serverID) ?: 'che';
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$mapTheme = $admin['map_theme'] ?? 'che';
|
$mapTheme = $admin['map_theme'] ?? 'che';
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -56,8 +56,7 @@ else{
|
|||||||
if ($serverID !== UniqueConst::$serverID && !$yearmonth) {
|
if ($serverID !== UniqueConst::$serverID && !$yearmonth) {
|
||||||
$year = $s_year;
|
$year = $s_year;
|
||||||
$month = $s_month;
|
$month = $s_month;
|
||||||
}
|
} else if (!$yearmonth) {
|
||||||
else if (!$yearmonth) {
|
|
||||||
$year = $admin['year'];
|
$year = $admin['year'];
|
||||||
$month = $admin['month'] - 1;
|
$month = $admin['month'] - 1;
|
||||||
} else {
|
} else {
|
||||||
@@ -101,11 +100,11 @@ $nations = Json::decode($history['nations']);
|
|||||||
<title><?= UniqueConst::$serverName ?>: 연감</title>
|
<title><?= UniqueConst::$serverName ?>: 연감</title>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS("js/map/theme_{$mapTheme}.js") ?>
|
<?= WebUtil::printJS("js/map/theme_{$mapTheme}.js") ?>
|
||||||
<?= WebUtil::printJS('dist_js/history.js') ?>
|
<?= WebUtil::printJS('dist_js/history.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printCSS('css/map.css') ?>
|
<?= WebUtil::printCSS('css/map.css') ?>
|
||||||
<?= WebUtil::printCSS('css/history.css') ?>
|
<?= WebUtil::printCSS('css/history.css') ?>
|
||||||
@@ -122,8 +121,11 @@ var nations = <?=$nations?$history['nations']:'{}'?>;
|
|||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>연 감<br><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td>
|
<td>연 감<br><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
<form name=form1 method=post>
|
<form name=form1 method=post>
|
||||||
연월 선택 :
|
연월 선택 :
|
||||||
<input type=submit name=btn value="◀◀ 이전달">
|
<input type=submit name=btn value="◀◀ 이전달">
|
||||||
@@ -134,10 +136,15 @@ var nations = <?=$nations?$history['nations']:'{}'?>;
|
|||||||
<input type=submit name=btn value='조회하기'>
|
<input type=submit name=btn value='조회하기'>
|
||||||
<input type=submit name=btn value="다음달 ▶▶">
|
<input type=submit name=btn value="다음달 ▶▶">
|
||||||
</form>
|
</form>
|
||||||
</td></tr>
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1000 height=520 class='tb_layout bg0'>
|
<table align=center width=1000 height=520 class='tb_layout bg0'>
|
||||||
<thead><tr><th colspan=5 align=center class='bg1'>중 원 지 도</th></tr></thead>
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th colspan=5 align=center class='bg1'>중 원 지 도</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr height=520>
|
<tr height=520>
|
||||||
<td width=698>
|
<td width=698>
|
||||||
@@ -167,13 +174,17 @@ var nations = <?=$nations?$history['nations']:'{}'?>;
|
|||||||
</table>
|
</table>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr><th colspan=5 align=center class='bg1'>중 원 정 세</th></tr>
|
<tr>
|
||||||
|
<th colspan=5 align=center class='bg1'>중 원 정 세</th>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan=5 valign=top>
|
<td colspan=5 valign=top>
|
||||||
<?= formatHistoryToHTML(Json::decode($history['global_history'])) ?>
|
<?= formatHistoryToHTML(Json::decode($history['global_history'])) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr><th colspan=5 align=center class='bg1'>장 수 동 향</th></tr>
|
<tr>
|
||||||
|
<th colspan=5 align=center class='bg1'>장 수 동 향</th>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan=5 valign=top>
|
<td colspan=5 valign=top>
|
||||||
<?= formatHistoryToHTML(Json::decode($history['global_action'])) ?>
|
<?= formatHistoryToHTML(Json::decode($history['global_action'])) ?>
|
||||||
@@ -182,8 +193,12 @@ var nations = <?=$nations?$history['nations']:'{}'?>;
|
|||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?> </td></tr>
|
<td><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?> </td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<script>
|
<script>
|
||||||
window.serverNick = '<?= DB::prefix() ?>';
|
window.serverNick = '<?= DB::prefix() ?>';
|
||||||
@@ -198,4 +213,5 @@ reloadWorldMap({
|
|||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+27
-12
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -15,7 +16,10 @@ increaseRefresh("세력일람", 2);
|
|||||||
$me = $db->queryFirstRow('SELECT con, turntime FROM general WHERE owner=%i', $userID);
|
$me = $db->queryFirstRow('SELECT con, turntime FROM general WHERE owner=%i', $userID);
|
||||||
|
|
||||||
$con = checkLimit($me['con']);
|
$con = checkLimit($me['con']);
|
||||||
if($con >= 2) { printLimitMsg($me['turntime']); exit(); }
|
if ($con >= 2) {
|
||||||
|
printLimitMsg($me['turntime']);
|
||||||
|
exit();
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
@@ -27,22 +31,26 @@ if($con >= 2) { printLimitMsg($me['turntime']); exit(); }
|
|||||||
<title><?= UniqueConst::$serverName ?>: 세력일람</title>
|
<title><?= UniqueConst::$serverName ?>: 세력일람</title>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/extKingdoms.js') ?>
|
<?= WebUtil::printJS('dist_js/extKingdoms.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>세 력 일 람<br><?=closeButton()?></td></tr>
|
<tr>
|
||||||
|
<td>세 력 일 람<br><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
$nations = getAllNationStaticInfo();
|
$nations = getAllNationStaticInfo();
|
||||||
uasort($nations, function($lhs, $rhs){return $rhs['power']<=>$lhs['power'];});
|
uasort($nations, function ($lhs, $rhs) {
|
||||||
|
return $rhs['power'] <=> $lhs['power'];
|
||||||
|
});
|
||||||
|
|
||||||
$nations[0] = getNationStaticInfo(0);
|
$nations[0] = getNationStaticInfo(0);
|
||||||
|
|
||||||
@@ -80,8 +88,7 @@ foreach ($nations as $nation) {
|
|||||||
$generalPermission = checkSecretPermission($general, false);
|
$generalPermission = checkSecretPermission($general, false);
|
||||||
if ($generalPermission == 4) {
|
if ($generalPermission == 4) {
|
||||||
$ambassadors[] = $general['name'];
|
$ambassadors[] = $general['name'];
|
||||||
}
|
} else if ($generalPermission == 3) {
|
||||||
else if($generalPermission == 3){
|
|
||||||
$auditors[] = $general['name'];
|
$auditors[] = $general['name'];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -141,9 +148,13 @@ foreach ($nations as $nation) {
|
|||||||
<tr>
|
<tr>
|
||||||
<td colspan=8> 장수 일람 : ";
|
<td colspan=8> 장수 일람 : ";
|
||||||
foreach ($generals as $general) {
|
foreach ($generals as $general) {
|
||||||
if($general['npc'] >= 2) { echo "<font color=cyan>{$general['name']}</font>, "; }
|
if ($general['npc'] >= 2) {
|
||||||
elseif($general['npc'] == 1) { echo "<font color=skyblue>{$general['name']}</font>, "; }
|
echo "<font color=cyan>{$general['name']}</font>, ";
|
||||||
else { echo "{$general['name']}, "; }
|
} elseif ($general['npc'] == 1) {
|
||||||
|
echo "<font color=skyblue>{$general['name']}</font>, ";
|
||||||
|
} else {
|
||||||
|
echo "{$general['name']}, ";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
echo "
|
echo "
|
||||||
</td>
|
</td>
|
||||||
@@ -187,8 +198,12 @@ echo"
|
|||||||
?>
|
?>
|
||||||
|
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?></td></tr>
|
<td><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
|||||||
+20
-10
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -28,18 +29,22 @@ $sel[$type] = "selected";
|
|||||||
<title><?= UniqueConst::$serverName ?>: 빙의일람</title>
|
<title><?= UniqueConst::$serverName ?>: 빙의일람</title>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>빙 의 일 람<br><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><form name=form1 method=post>정렬순서 :
|
<td>빙 의 일 람<br><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<form name=form1 method=post>정렬순서 :
|
||||||
<select name=type size=1>
|
<select name=type size=1>
|
||||||
<option <?= $sel[1] ?? '' ?> value=1>이름</option>
|
<option <?= $sel[1] ?? '' ?> value=1>이름</option>
|
||||||
<option <?= $sel[2] ?? '' ?> value=2>국가</option>
|
<option <?= $sel[2] ?? '' ?> value=2>국가</option>
|
||||||
@@ -50,8 +55,10 @@ $sel[$type] = "selected";
|
|||||||
<option <?= $sel[7] ?? '' ?> value=7>명성</option>
|
<option <?= $sel[7] ?? '' ?> value=7>명성</option>
|
||||||
<option <?= $sel[8] ?? '' ?> value=8>계급</option>
|
<option <?= $sel[8] ?? '' ?> value=8>계급</option>
|
||||||
</select>
|
</select>
|
||||||
<input type=submit value='정렬하기'></form>
|
<input type=submit value='정렬하기'>
|
||||||
</td></tr>
|
</form>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<?php
|
<?php
|
||||||
$nationName = [];
|
$nationName = [];
|
||||||
@@ -84,8 +91,7 @@ if($isAsc){
|
|||||||
usort($generalList, function ($lhs, $rhs) use ($sortKey) {
|
usort($generalList, function ($lhs, $rhs) use ($sortKey) {
|
||||||
return $lhs[$sortKey] <=> $rhs[$sortKey];
|
return $lhs[$sortKey] <=> $rhs[$sortKey];
|
||||||
});
|
});
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
usort($generalList, function ($lhs, $rhs) use ($sortKey) {
|
usort($generalList, function ($lhs, $rhs) use ($sortKey) {
|
||||||
return $rhs[$sortKey] <=> $lhs[$sortKey];
|
return $rhs[$sortKey] <=> $lhs[$sortKey];
|
||||||
});
|
});
|
||||||
@@ -125,8 +131,12 @@ else{
|
|||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?></td></tr>
|
<td><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
|||||||
+17
-6
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -18,10 +19,14 @@ $mapTheme = $gameStor->map_theme??'che';
|
|||||||
$me = $db->queryFirstRow('SELECT con,turntime from general where owner=%i', $userID);
|
$me = $db->queryFirstRow('SELECT con,turntime from general where owner=%i', $userID);
|
||||||
|
|
||||||
$con = checkLimit($me['con']);
|
$con = checkLimit($me['con']);
|
||||||
if($con >= 2) { printLimitMsg($me['turntime']); exit(); }
|
if ($con >= 2) {
|
||||||
|
printLimitMsg($me['turntime']);
|
||||||
|
exit();
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
@@ -29,6 +34,7 @@ if($con >= 2) { printLimitMsg($me['turntime']); exit(); }
|
|||||||
<title><?= UniqueConst::$serverName ?>: 세력도</title>
|
<title><?= UniqueConst::$serverName ?>: 세력도</title>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
<?= WebUtil::printJS('d_shared/base_map.js') ?>
|
<?= WebUtil::printJS('d_shared/base_map.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/map.js') ?>
|
<?= WebUtil::printJS('dist_js/map.js') ?>
|
||||||
@@ -45,10 +51,9 @@ $(function(){
|
|||||||
|
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?= WebUtil::printCSS('css/normalize.css') ?>
|
<?= WebUtil::printCSS('css/normalize.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printCSS('css/map.css') ?>
|
<?= WebUtil::printCSS('css/map.css') ?>
|
||||||
|
|
||||||
@@ -56,7 +61,9 @@ $(function(){
|
|||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1200 class='tb_layout bg0'>
|
<table align=center width=1200 class='tb_layout bg0'>
|
||||||
<tr><td>세 력 도<br><?=closeButton()?></td></tr>
|
<tr>
|
||||||
|
<td>세 력 도<br><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1200 height=520 class='tb_layout bg0'>
|
<table align=center width=1200 height=520 class='tb_layout bg0'>
|
||||||
<tr height=520>
|
<tr height=520>
|
||||||
@@ -74,8 +81,12 @@ $(function(){
|
|||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1200 class='tb_layout bg0'>
|
<table align=center width=1200 class='tb_layout bg0'>
|
||||||
<tr><td><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?> </td></tr>
|
<td><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?> </td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
|||||||
+73
-16
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -47,6 +48,7 @@ if ($admin['maxonline'] < $curonline) {
|
|||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<title><?= UniqueConst::$serverName ?>: 트래픽정보</title>
|
<title><?= UniqueConst::$serverName ?>: 트래픽정보</title>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
@@ -54,10 +56,10 @@ if ($admin['maxonline'] < $curonline) {
|
|||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<style>
|
<style>
|
||||||
.big_bar {
|
.big_bar {
|
||||||
@@ -65,6 +67,7 @@ if ($admin['maxonline'] < $curonline) {
|
|||||||
position: relative;
|
position: relative;
|
||||||
height: 30px;
|
height: 30px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.big_bar span {
|
.big_bar span {
|
||||||
float: right;
|
float: right;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
@@ -85,15 +88,23 @@ span.out_bar{
|
|||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>트 래 픽 정 보<br><?=closeButton()?></td></tr>
|
<tr>
|
||||||
|
<td>트 래 픽 정 보<br><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<br>
|
<br>
|
||||||
<table align=center width=1016>
|
<table align=center width=1016>
|
||||||
<tr><td align=left>
|
<tr>
|
||||||
|
<td align=left>
|
||||||
<table align=center class='tb_layout bg0'>
|
<table align=center class='tb_layout bg0'>
|
||||||
<tr><td colspan=4 align=center class='bg2'><font size=5>접 속 량</font></td></tr>
|
<tr>
|
||||||
|
<td colspan=4 align=center class='bg2'>
|
||||||
|
<font size=5>접 속 량</font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<?php
|
<?php
|
||||||
$refresh[] = $admin['refresh'];
|
$refresh[] = $admin['refresh'];
|
||||||
foreach ($refresh as $i => $value) {
|
foreach ($refresh as $i => $value) {
|
||||||
@@ -118,7 +129,9 @@ foreach($refresh as $i=>$value){
|
|||||||
<?php
|
<?php
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
<tr><td colspan=4 height=5 align=center class='bg1'></td></tr>
|
<tr>
|
||||||
|
<td colspan=4 height=5 align=center class='bg1'></td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan=4 height=30 align=center class='bg0'>최고기록: <?= $admin['maxrefresh'] ?></td>
|
<td colspan=4 height=30 align=center class='bg0'>최고기록: <?= $admin['maxrefresh'] ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -128,7 +141,11 @@ foreach($refresh as $i=>$value){
|
|||||||
</td>
|
</td>
|
||||||
<td align=right>
|
<td align=right>
|
||||||
<table align=center class='tb_layout bg0'>
|
<table align=center class='tb_layout bg0'>
|
||||||
<tr><td colspan=4 align=center class='bg2'><font size=5>접 속 자</font></td></tr>
|
<tr>
|
||||||
|
<td colspan=4 align=center class='bg2'>
|
||||||
|
<font size=5>접 속 자</font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<?php
|
<?php
|
||||||
$online[] = $curonline;
|
$online[] = $curonline;
|
||||||
foreach ($online as $i => $value) {
|
foreach ($online as $i => $value) {
|
||||||
@@ -153,16 +170,23 @@ foreach($online as $i=>$value){
|
|||||||
<?php
|
<?php
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
<tr><td colspan=4 height=5 align=center class='bg1'></td></tr>
|
<tr>
|
||||||
|
<td colspan=4 height=5 align=center class='bg1'></td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan=4 height=30 align=center class='bg0'>최고기록: <?= $admin['maxonline'] ?></td>
|
<td colspan=4 height=30 align=center class='bg0'>최고기록: <?= $admin['maxonline'] ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</td></tr>
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<br>
|
<br>
|
||||||
<table align=center class='tb_layout bg0'>
|
<table align=center class='tb_layout bg0'>
|
||||||
<tr><td colspan=3 align=center class='bg2'><font size=5>주 의 대 상 자 (순간과도갱신)</font></td></tr>
|
<tr>
|
||||||
|
<td colspan=3 align=center class='bg2'>
|
||||||
|
<font size=5>주 의 대 상 자 (순간과도갱신)</font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<?php
|
<?php
|
||||||
$max_refresh = $db->queryFirstRow('SELECT sum(refresh) as refresh, sum(`connect`) as `connect` from general');
|
$max_refresh = $db->queryFirstRow('SELECT sum(refresh) as refresh, sum(`connect`) as `connect` from general');
|
||||||
$max_refresh['name'] = '접속자 총합';
|
$max_refresh['name'] = '접속자 총합';
|
||||||
@@ -192,10 +216,15 @@ foreach ($refresh_result as $i=>$user) {
|
|||||||
</table>
|
</table>
|
||||||
<br>
|
<br>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?> </td></tr>
|
<td><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?> </td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
@@ -218,9 +247,37 @@ function getHex($dec)
|
|||||||
function getHexCode($hex)
|
function getHexCode($hex)
|
||||||
{
|
{
|
||||||
switch ($hex) {
|
switch ($hex) {
|
||||||
case 0: return "0"; case 1: return "1"; case 2: return "2"; case 3: return "3";
|
case 0:
|
||||||
case 4: return "4"; case 5: return "5"; case 6: return "6"; case 7: return "7";
|
return "0";
|
||||||
case 8: return "8"; case 9: return "9"; case 10: return "A"; case 11: return "B";
|
case 1:
|
||||||
case 12: return "C"; case 13: return "D"; case 14: return "E"; case 15: return "F";
|
return "1";
|
||||||
|
case 2:
|
||||||
|
return "2";
|
||||||
|
case 3:
|
||||||
|
return "3";
|
||||||
|
case 4:
|
||||||
|
return "4";
|
||||||
|
case 5:
|
||||||
|
return "5";
|
||||||
|
case 6:
|
||||||
|
return "6";
|
||||||
|
case 7:
|
||||||
|
return "7";
|
||||||
|
case 8:
|
||||||
|
return "8";
|
||||||
|
case 9:
|
||||||
|
return "9";
|
||||||
|
case 10:
|
||||||
|
return "A";
|
||||||
|
case 11:
|
||||||
|
return "B";
|
||||||
|
case 12:
|
||||||
|
return "C";
|
||||||
|
case 13:
|
||||||
|
return "D";
|
||||||
|
case 14:
|
||||||
|
return "E";
|
||||||
|
case 15:
|
||||||
|
return "F";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+60
-26
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -23,6 +24,7 @@ $vote = $admin['vote']?:['-'];
|
|||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<title><?= UniqueConst::$serverName ?>: 설문조사</title>
|
<title><?= UniqueConst::$serverName ?>: 설문조사</title>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
@@ -30,10 +32,10 @@ $vote = $admin['vote']?:['-'];
|
|||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<style>
|
<style>
|
||||||
.little_bar {
|
.little_bar {
|
||||||
@@ -55,13 +57,20 @@ function captureKey(e) {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>설 문 조 사<br><?=closeButton()?></td></tr>
|
<tr>
|
||||||
|
<td>설 문 조 사<br><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<form name=form1 action=c_vote.php method=post>
|
<form name=form1 action=c_vote.php method=post>
|
||||||
<tr><td colspan=3 align=center class='bg2'><font size=5>설 문 조 사 (<?=$admin['develcost']*5?>금과 추첨으로 유니크템 증정!)</font></td></tr>
|
<tr>
|
||||||
|
<td colspan=3 align=center class='bg2'>
|
||||||
|
<font size=5>설 문 조 사 (<?= $admin['develcost'] * 5 ?>금과 추첨으로 유니크템 증정!)</font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
if ($isVoteAdmin) {
|
if ($isVoteAdmin) {
|
||||||
@@ -181,7 +190,9 @@ if ($me['no'] > 0) {
|
|||||||
</table>
|
</table>
|
||||||
<br>
|
<br>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td colspan=3 align=center class='bg2'><font size=5>
|
<tr>
|
||||||
|
<td colspan=3 align=center class='bg2'>
|
||||||
|
<font size=5>
|
||||||
전 체 통 계
|
전 체 통 계
|
||||||
<?php
|
<?php
|
||||||
if ($isVoteAdmin) {
|
if ($isVoteAdmin) {
|
||||||
@@ -235,8 +246,7 @@ if ($admin['voteopen'] >= 1 || $isVoteAdmin) {
|
|||||||
$per = round(($totalVote[$i] ?? 0) * 100 / $memCount, 1);
|
$per = round(($totalVote[$i] ?? 0) * 100 / $memCount, 1);
|
||||||
if ($i == $voteTypeCount - 1) {
|
if ($i == $voteTypeCount - 1) {
|
||||||
$per = 100 - $totalPer;
|
$per = 100 - $totalPer;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$totalPer += $per;
|
$totalPer += $per;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -281,8 +291,7 @@ if ($admin['voteopen'] >= 2 || $isVoteAdmin) {
|
|||||||
$per = round(Util::array_get($nationVote[0][$i], 0) / $memCount * 100, 1);
|
$per = round(Util::array_get($nationVote[0][$i], 0) / $memCount * 100, 1);
|
||||||
if ($i == $voteTypeCount - 1) {
|
if ($i == $voteTypeCount - 1) {
|
||||||
$per = 100 - $totalPer;
|
$per = 100 - $totalPer;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$totalPer += $per;
|
$totalPer += $per;
|
||||||
}
|
}
|
||||||
// if($per < 5) { $vote['cnt'] = " "; }
|
// if($per < 5) { $vote['cnt'] = " "; }
|
||||||
@@ -309,8 +318,7 @@ if ($admin['voteopen'] >= 2 || $isVoteAdmin) {
|
|||||||
$voteCount = $nationVoteCount[$nation['nation']] ?? 0;
|
$voteCount = $nationVoteCount[$nation['nation']] ?? 0;
|
||||||
if ($memCount == 0) {
|
if ($memCount == 0) {
|
||||||
$percentage = 100;
|
$percentage = 100;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$percentage = round($voteCount / $memCount * 100, 1);
|
$percentage = round($voteCount / $memCount * 100, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -333,8 +341,7 @@ if ($admin['voteopen'] >= 2 || $isVoteAdmin) {
|
|||||||
|
|
||||||
if ($i == $voteTypeCount - 1) {
|
if ($i == $voteTypeCount - 1) {
|
||||||
$per = 100 - $totalPer;
|
$per = 100 - $totalPer;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$totalPer += $per;
|
$totalPer += $per;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -359,10 +366,15 @@ if ($admin['voteopen'] >= 2 || $isVoteAdmin) {
|
|||||||
</form>
|
</form>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?> </td></tr>
|
<td><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?> </td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
@@ -374,14 +386,30 @@ function getVoteColor($type)
|
|||||||
|
|
||||||
switch ($type) {
|
switch ($type) {
|
||||||
default:
|
default:
|
||||||
case 0: $color = "black"; break;
|
case 0:
|
||||||
case 1: $color = "red"; break;
|
$color = "black";
|
||||||
case 2: $color = "orange"; break;
|
break;
|
||||||
case 3: $color = "yellow"; break;
|
case 1:
|
||||||
case 4: $color = "green"; break;
|
$color = "red";
|
||||||
case 5: $color = "blue"; break;
|
break;
|
||||||
case 6: $color = "navy"; break;
|
case 2:
|
||||||
case 7: $color = "purple"; break;
|
$color = "orange";
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
$color = "yellow";
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
$color = "green";
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
$color = "blue";
|
||||||
|
break;
|
||||||
|
case 6:
|
||||||
|
$color = "navy";
|
||||||
|
break;
|
||||||
|
case 7:
|
||||||
|
$color = "purple";
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $color;
|
return $color;
|
||||||
@@ -394,9 +422,15 @@ function getNewColor($type)
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch ($type) {
|
switch ($type) {
|
||||||
case 2: $color = "black"; break;
|
case 2:
|
||||||
case 3: $color = "black"; break;
|
$color = "black";
|
||||||
default:$color = "white"; break;
|
break;
|
||||||
|
case 3:
|
||||||
|
$color = "black";
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
$color = "white";
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $color;
|
return $color;
|
||||||
|
|||||||
+48
-14
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -44,6 +45,7 @@ if ($msg2 == "") {
|
|||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<title><?= UniqueConst::$serverName ?>: 거래장</title>
|
<title><?= UniqueConst::$serverName ?>: 거래장</title>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
@@ -51,20 +53,31 @@ if ($msg2 == "") {
|
|||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>거 래 장<br><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td align=center class='bg2'><font color=orange size=6><b>거 래 장</b></font><input type=button value='갱신' onclick="location.replace('b_auction.php')"></td></tr>
|
<td>거 래 장<br><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td align=center class='bg2'>
|
||||||
|
<font color=orange size=6><b>거 래 장</b></font><input type=button value='갱신' onclick="location.replace('b_auction.php')">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<form method=post action=c_auction.php>
|
<form method=post action=c_auction.php>
|
||||||
<tr><td colspan=11 align=center bgcolor=orange><font size=5>팝 니 다</font></td></tr>
|
<tr>
|
||||||
|
<td colspan=11 align=center bgcolor=orange>
|
||||||
|
<font size=5>팝 니 다</font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<tr align=center class='bg1'>
|
<tr align=center class='bg1'>
|
||||||
<td width=68>거래번호</td>
|
<td width=68>거래번호</td>
|
||||||
<td width=48>선택</td>
|
<td width=48>선택</td>
|
||||||
@@ -152,7 +165,11 @@ foreach($db->query('SELECT * from auction where type=0 order by expire') as $auc
|
|||||||
<br>
|
<br>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<form method=post action=c_auction.php>
|
<form method=post action=c_auction.php>
|
||||||
<tr><td colspan=11 align=center bgcolor=skyblue><font size=5>삽 니 다</font></td></tr>
|
<tr>
|
||||||
|
<td colspan=11 align=center bgcolor=skyblue>
|
||||||
|
<font size=5>삽 니 다</font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<tr align=center class='bg1'>
|
<tr align=center class='bg1'>
|
||||||
<td width=68>거래번호</td>
|
<td width=68>거래번호</td>
|
||||||
<td width=48>선택</td>
|
<td width=48>선택</td>
|
||||||
@@ -238,12 +255,23 @@ foreach($db->query('SELECT * from auction where type=1 order by expire') as $auc
|
|||||||
</table>
|
</table>
|
||||||
<br>
|
<br>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td align=center class='bg2'><font size=5>최 근 기 록</font></td></tr>
|
<tr>
|
||||||
<tr><td>
|
<td align=center class='bg2'>
|
||||||
|
<font size=5>최 근 기 록</font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
<?= getAuctionLogRecent(20) ?>
|
<?= getAuctionLogRecent(20) ?>
|
||||||
</td></tr>
|
</td>
|
||||||
<tr><td align=center class='bg2'><font size=5>도 움 말</font></td></tr>
|
</tr>
|
||||||
<tr><td>
|
<tr>
|
||||||
|
<td align=center class='bg2'>
|
||||||
|
<font size=5>도 움 말</font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
<font color=white size=2>
|
<font color=white size=2>
|
||||||
ㆍ판매거래는 거래자가 판매할 물품을 거래하면, 구입을 희망하는 사람이 현재가보다 높게 입찰하여 구입하는 방식입니다.<br>
|
ㆍ판매거래는 거래자가 판매할 물품을 거래하면, 구입을 희망하는 사람이 현재가보다 높게 입찰하여 구입하는 방식입니다.<br>
|
||||||
ㆍ<font color=cyan>Hint</font>) 쌀이 귀한 경우는 입찰자가 많아서 자연스레 단가가 오르게 됩니다. (해당 물품을 사려는 가격이 오름)<br>
|
ㆍ<font color=cyan>Hint</font>) 쌀이 귀한 경우는 입찰자가 많아서 자연스레 단가가 오르게 됩니다. (해당 물품을 사려는 가격이 오름)<br>
|
||||||
@@ -267,9 +295,15 @@ foreach($db->query('SELECT * from auction where type=1 order by expire') as $auc
|
|||||||
ㆍ<font color=cyan>Hint</font>) 단가가 낮으면(<1.00) 금이 비싸므로 구매가 이득입니다.<br>
|
ㆍ<font color=cyan>Hint</font>) 단가가 낮으면(<1.00) 금이 비싸므로 구매가 이득입니다.<br>
|
||||||
ㆍ즐거운 거래!
|
ㆍ즐거운 거래!
|
||||||
</font>
|
</font>
|
||||||
</td></tr>
|
</td>
|
||||||
<tr><td><?=closeButton()?></td></tr>
|
</tr>
|
||||||
<tr><td><?=banner()?> </td></tr>
|
<tr>
|
||||||
|
<td><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?> </td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+47
-26
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -63,8 +64,7 @@ $permission = checkSecretPermission($me);
|
|||||||
if ($permission < 0) {
|
if ($permission < 0) {
|
||||||
echo '국가에 소속되어있지 않습니다.';
|
echo '국가에 소속되어있지 않습니다.';
|
||||||
die();
|
die();
|
||||||
}
|
} else if ($permission < 1) {
|
||||||
else if ($permission < 1) {
|
|
||||||
echo "권한이 부족합니다. 수뇌부가 아니거나 사관년도가 부족합니다.";
|
echo "권한이 부족합니다. 수뇌부가 아니거나 사관년도가 부족합니다.";
|
||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
@@ -82,25 +82,24 @@ if ($btn == '정렬하기') {
|
|||||||
[$queryTypeText, $reqArgType, $comp] = $queryMap[$reqQueryType];
|
[$queryTypeText, $reqArgType, $comp] = $queryMap[$reqQueryType];
|
||||||
if ($reqArgType === 0) {
|
if ($reqArgType === 0) {
|
||||||
$generalBasicList = $db->query('SELECT no, name, npc, turntime, officer_level FROM general WHERE nation = %i', $nationID);
|
$generalBasicList = $db->query('SELECT no, name, npc, turntime, officer_level FROM general WHERE nation = %i', $nationID);
|
||||||
}
|
} else if ($reqArgType === 1) {
|
||||||
else if($reqArgType===1){
|
|
||||||
$generalBasicList = $db->query('SELECT no, name, npc, turntime, officer_level, %b FROM general WHERE nation = %i', $reqQueryType, $nationID);
|
$generalBasicList = $db->query('SELECT no, name, npc, turntime, officer_level, %b FROM general WHERE nation = %i', $reqQueryType, $nationID);
|
||||||
}
|
} else if ($reqArgType === 2) {
|
||||||
else if($reqArgType===2){
|
$generalBasicList = $db->query(
|
||||||
$generalBasicList = $db->query('SELECT no, name, npc, turntime, officer_level, value as %b
|
'SELECT no, name, npc, turntime, officer_level, value as %b
|
||||||
FROM general LEFT JOIN rank_data
|
FROM general LEFT JOIN rank_data
|
||||||
ON general.no = rank_data.general_id
|
ON general.no = rank_data.general_id
|
||||||
WHERE rank_data.type = %s AND general.nation = %i',
|
WHERE rank_data.type = %s AND general.nation = %i',
|
||||||
$reqQueryType, $reqQueryType, $nationID
|
$reqQueryType,
|
||||||
|
$reqQueryType,
|
||||||
|
$nationID
|
||||||
);
|
);
|
||||||
}
|
} else if ($reqArgType === 3) {
|
||||||
else if($reqArgType===3){
|
|
||||||
$generalBasicList = array_map(function ($arr) {
|
$generalBasicList = array_map(function ($arr) {
|
||||||
$arr['aux'] = Json::decode($arr['aux']);
|
$arr['aux'] = Json::decode($arr['aux']);
|
||||||
return $arr;
|
return $arr;
|
||||||
}, $db->query('SELECT no, name, npc, turntime, officer_level, aux FROM general WHERE nation = %i', $nationID));
|
}, $db->query('SELECT no, name, npc, turntime, officer_level, aux FROM general WHERE nation = %i', $nationID));
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
throw new \sammo\MustNotBeReachedException();
|
throw new \sammo\MustNotBeReachedException();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -122,18 +121,21 @@ $showGeneral = General::createGeneralObjFromDB($gen);
|
|||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>감 찰 부<br><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td>
|
<td>감 찰 부<br><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
<form name=form1 method=post>
|
<form name=form1 method=post>
|
||||||
정렬순서 :
|
정렬순서 :
|
||||||
<select name='query_type' size=1>
|
<select name='query_type' size=1>
|
||||||
@@ -150,24 +152,34 @@ $showGeneral = General::createGeneralObjFromDB($gen);
|
|||||||
</select>
|
</select>
|
||||||
<input type=submit name=btn value='조회하기'>
|
<input type=submit name=btn value='조회하기'>
|
||||||
</form>
|
</form>
|
||||||
</td></tr>
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table width=1000 align=center class='tb_layout bg0'>
|
<table width=1000 align=center class='tb_layout bg0'>
|
||||||
<tr>
|
<tr>
|
||||||
<td width=50% align=center class='bg1'><font color=skyblue size=3>장 수 정 보</font></td>
|
<td width=50% align=center class='bg1'>
|
||||||
<td width=50% align=center class='bg1'><font color=orange size=3>장 수 열 전</font></td>
|
<font color=skyblue size=3>장 수 정 보</font>
|
||||||
|
</td>
|
||||||
|
<td width=50% align=center class='bg1'>
|
||||||
|
<font color=orange size=3>장 수 열 전</font>
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td valign=top>
|
<td valign=top>
|
||||||
<?php generalInfo($showGeneral); generalInfo2($showGeneral); ?>
|
<?php generalInfo($showGeneral);
|
||||||
|
generalInfo2($showGeneral); ?>
|
||||||
</td>
|
</td>
|
||||||
<td valign=top>
|
<td valign=top>
|
||||||
<?= formatHistoryToHTML(getGeneralHistoryLogAll($gen)) ?>
|
<?= formatHistoryToHTML(getGeneralHistoryLogAll($gen)) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td align=center class='bg1'><font color=orange size=3>전투 기록</font></td>
|
<td align=center class='bg1'>
|
||||||
<td align=center class='bg1'><font color=orange size=3>전투 결과</font></td>
|
<font color=orange size=3>전투 기록</font>
|
||||||
|
</td>
|
||||||
|
<td align=center class='bg1'>
|
||||||
|
<font color=orange size=3>전투 결과</font>
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td valign=top>
|
<td valign=top>
|
||||||
@@ -179,8 +191,12 @@ $showGeneral = General::createGeneralObjFromDB($gen);
|
|||||||
</tr>
|
</tr>
|
||||||
<?php if ($showGeneral->getNPCType() > 1 || $permission >= 2) : ?>
|
<?php if ($showGeneral->getNPCType() > 1 || $permission >= 2) : ?>
|
||||||
<tr>
|
<tr>
|
||||||
<td align=center class='bg1'><font color=orange size=3>개인 기록</font></td>
|
<td align=center class='bg1'>
|
||||||
<td align=center class='bg1'><font color=orange size=3> </font></td>
|
<font color=orange size=3>개인 기록</font>
|
||||||
|
</td>
|
||||||
|
<td align=center class='bg1'>
|
||||||
|
<font color=orange size=3> </font>
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td valign=top>
|
<td valign=top>
|
||||||
@@ -192,8 +208,13 @@ $showGeneral = General::createGeneralObjFromDB($gen);
|
|||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?> </td></tr>
|
<td><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?> </td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+137
-34
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -35,11 +36,32 @@ if ($con >= 2) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch ($admin['tnmt_type']) {
|
switch ($admin['tnmt_type']) {
|
||||||
default: throw new \RuntimeException('Invalid tnmt_type');
|
default:
|
||||||
case 0: $tnmt_type = "<font color=cyan>전력전</font>"; $tp = "total"; $tp2 = "종합"; $tp3 = "total"; break;
|
throw new \RuntimeException('Invalid tnmt_type');
|
||||||
case 1: $tnmt_type = "<font color=cyan>통솔전</font>"; $tp = "leadership"; $tp2 = "통솔"; $tp3 = "leadership"; break;
|
case 0:
|
||||||
case 2: $tnmt_type = "<font color=cyan>일기토</font>"; $tp = "strength"; $tp2 = "무력"; $tp3 = "strength"; break;
|
$tnmt_type = "<font color=cyan>전력전</font>";
|
||||||
case 3: $tnmt_type = "<font color=cyan>설전</font>"; $tp = "intel"; $tp2 = "지력"; $tp3 = "intel"; break;
|
$tp = "total";
|
||||||
|
$tp2 = "종합";
|
||||||
|
$tp3 = "total";
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
$tnmt_type = "<font color=cyan>통솔전</font>";
|
||||||
|
$tp = "leadership";
|
||||||
|
$tp2 = "통솔";
|
||||||
|
$tp3 = "leadership";
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
$tnmt_type = "<font color=cyan>일기토</font>";
|
||||||
|
$tp = "strength";
|
||||||
|
$tp2 = "무력";
|
||||||
|
$tp3 = "strength";
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
$tnmt_type = "<font color=cyan>설전</font>";
|
||||||
|
$tp = "intel";
|
||||||
|
$tp2 = "지력";
|
||||||
|
$tp3 = "intel";
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
$str1 = getTournament($admin['tournament']);
|
$str1 = getTournament($admin['tournament']);
|
||||||
@@ -58,6 +80,7 @@ if($str3){
|
|||||||
<?php if ($con == 1) {
|
<?php if ($con == 1) {
|
||||||
MessageBox("접속제한이 얼마 남지 않았습니다!");
|
MessageBox("접속제한이 얼마 남지 않았습니다!");
|
||||||
} ?>
|
} ?>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
@@ -65,24 +88,39 @@ if($str3){
|
|||||||
<title><?= UniqueConst::$serverName ?>: 베팅장</title>
|
<title><?= UniqueConst::$serverName ?>: 베팅장</title>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/betting.js') ?>
|
<?= WebUtil::printJS('dist_js/betting.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1120 class='tb_layout bg0'>
|
<table align=center width=1120 class='tb_layout bg0'>
|
||||||
<tr><td>베 팅 장<br><?=closeButton()?></td></tr>
|
<tr>
|
||||||
|
<td>베 팅 장<br><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1120 class='tb_layout bg0'>
|
<table align=center width=1120 class='tb_layout bg0'>
|
||||||
<tr><td colspan=16><input type=button value='갱신' onclick='location.reload()'></td></tr>
|
<tr>
|
||||||
<tr><td colspan=16 align=center><font color=white size=6><?=$tnmt_type?> (<?=$str1.$str2.$str3?>)</font></td></tr>
|
<td colspan=16><input type=button value='갱신' onclick='location.reload()'></td>
|
||||||
<tr><td height=50 colspan=16 align=center class='bg2'><font color=limegreen size=6>16강 상황</font><br><font color=orange size=3>(전체 금액 : <?=$globalBetTotal?> / 내 투자 금액 : <?=$myBetTotal?>)</font></td></tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan=16 align=center>
|
||||||
|
<font color=white size=6><?= $tnmt_type ?> (<?= $str1 . $str2 . $str3 ?>)</font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td height=50 colspan=16 align=center class='bg2'>
|
||||||
|
<font color=limegreen size=6>16강 상황</font><br>
|
||||||
|
<font color=orange size=3>(전체 금액 : <?= $globalBetTotal ?> / 내 투자 금액 : <?= $myBetTotal ?>)</font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1120 class='mimic_flex bg0' style='border:solid 1px gray;font-size:10px;'>
|
<table align=center width=1120 class='mimic_flex bg0' style='border:solid 1px gray;font-size:10px;'>
|
||||||
<tr align=center><td height=10 colspan=16></td></tr>
|
<tr align=center>
|
||||||
|
<td height=10 colspan=16></td>
|
||||||
|
</tr>
|
||||||
<tr align=center>
|
<tr align=center>
|
||||||
<?php
|
<?php
|
||||||
$generalList = $db->query('SELECT npc,name,win from tournament where grp>=60 order by grp, grp_no LIMIT 1');
|
$generalList = $db->query('SELECT npc,name,win from tournament where grp>=60 order by grp, grp_no LIMIT 1');
|
||||||
@@ -298,8 +336,7 @@ $gold = [];
|
|||||||
for ($i = 0; $i < 16; $i++) {
|
for ($i = 0; $i < 16; $i++) {
|
||||||
if ($globalBet[$i] == 0) {
|
if ($globalBet[$i] == 0) {
|
||||||
$bet[$i] = "∞";
|
$bet[$i] = "∞";
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$bet[$i] = round($globalBetTotal / $globalBet[$i], 2);
|
$bet[$i] = round($globalBetTotal / $globalBet[$i], 2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -307,17 +344,17 @@ for ($i=0; $i < 16; $i++) {
|
|||||||
for ($i = 0; $i < 16; $i++) {
|
for ($i = 0; $i < 16; $i++) {
|
||||||
if (!is_numeric($bet[$i])) {
|
if (!is_numeric($bet[$i])) {
|
||||||
$gold[$i] = 0;
|
$gold[$i] = 0;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$gold[$i] = Util::round($myBet[$i] * $bet[$i]);
|
$gold[$i] = Util::round($myBet[$i] * $bet[$i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1120 class='tb_layout bg0'>
|
<table align=center width=1120 class='tb_layout bg0'>
|
||||||
<tr align=center><td height=10 colspan=16></td></tr>
|
<tr align=center>
|
||||||
|
<td height=10 colspan=16></td>
|
||||||
|
</tr>
|
||||||
<?php
|
<?php
|
||||||
echo "
|
echo "
|
||||||
<tr align=center>";
|
<tr align=center>";
|
||||||
@@ -328,8 +365,22 @@ for ($i=0; $i < 16; $i++) {
|
|||||||
?>
|
?>
|
||||||
</tr>
|
</tr>
|
||||||
<tr align=center>
|
<tr align=center>
|
||||||
<td>×</td><td>×</td><td>×</td><td>×</td><td>×</td><td>×</td><td>×</td><td>×</td>
|
<td>×</td>
|
||||||
<td>×</td><td>×</td><td>×</td><td>×</td><td>×</td><td>×</td><td>×</td><td>×</td>
|
<td>×</td>
|
||||||
|
<td>×</td>
|
||||||
|
<td>×</td>
|
||||||
|
<td>×</td>
|
||||||
|
<td>×</td>
|
||||||
|
<td>×</td>
|
||||||
|
<td>×</td>
|
||||||
|
<td>×</td>
|
||||||
|
<td>×</td>
|
||||||
|
<td>×</td>
|
||||||
|
<td>×</td>
|
||||||
|
<td>×</td>
|
||||||
|
<td>×</td>
|
||||||
|
<td>×</td>
|
||||||
|
<td>×</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr align=center>
|
<tr align=center>
|
||||||
<?php
|
<?php
|
||||||
@@ -339,8 +390,22 @@ for ($i=0; $i < 16; $i++) {
|
|||||||
?>
|
?>
|
||||||
</tr>
|
</tr>
|
||||||
<tr align=center>
|
<tr align=center>
|
||||||
<td>∥</td><td>∥</td><td>∥</td><td>∥</td><td>∥</td><td>∥</td><td>∥</td><td>∥</td>
|
<td>∥</td>
|
||||||
<td>∥</td><td>∥</td><td>∥</td><td>∥</td><td>∥</td><td>∥</td><td>∥</td><td>∥</td>
|
<td>∥</td>
|
||||||
|
<td>∥</td>
|
||||||
|
<td>∥</td>
|
||||||
|
<td>∥</td>
|
||||||
|
<td>∥</td>
|
||||||
|
<td>∥</td>
|
||||||
|
<td>∥</td>
|
||||||
|
<td>∥</td>
|
||||||
|
<td>∥</td>
|
||||||
|
<td>∥</td>
|
||||||
|
<td>∥</td>
|
||||||
|
<td>∥</td>
|
||||||
|
<td>∥</td>
|
||||||
|
<td>∥</td>
|
||||||
|
<td>∥</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr align=center>
|
<tr align=center>
|
||||||
<?php
|
<?php
|
||||||
@@ -390,33 +455,51 @@ if ($admin['tournament'] == 6) {
|
|||||||
<font color=skyblue size=4>( 베팅후 500원 이하일땐 베팅이 불가능합니다. )</font>
|
<font color=skyblue size=4>( 베팅후 500원 이하일땐 베팅이 불가능합니다. )</font>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr align=center><td height=10 colspan=16></td></tr>
|
<tr align=center>
|
||||||
|
<td height=10 colspan=16></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1120 class='tb_layout bg0'>
|
<table align=center width=1120 class='tb_layout bg0'>
|
||||||
<tr align=center><td height=50 colspan=4 class='bg2'><font color=yellow size=6>토너먼트 랭킹</font></td></tr>
|
<tr align=center>
|
||||||
<tr align=center><td colspan=4 class='bg2'><font color=skyblue size=3>순위 / 장수명 / 능력치 / 경기수 / 승리 / 무승부 / 패배 / 집계점수 / 우승횟수</font></td></tr>
|
<td height=50 colspan=4 class='bg2'>
|
||||||
|
<font color=yellow size=6>토너먼트 랭킹</font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr align=center>
|
||||||
|
<td colspan=4 class='bg2'>
|
||||||
|
<font color=skyblue size=3>순위 / 장수명 / 능력치 / 경기수 / 승리 / 무승부 / 패배 / 집계점수 / 우승횟수</font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<tr align=center>
|
<tr align=center>
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
$tournamentType = [
|
$tournamentType = [
|
||||||
'전 력 전' => [
|
'전 력 전' => [
|
||||||
'종합',
|
'종합',
|
||||||
function(General $general){return $general->getVar('leadership')+$general->getVar('strength')+$general->getVar('intel');},
|
function (General $general) {
|
||||||
|
return $general->getVar('leadership') + $general->getVar('strength') + $general->getVar('intel');
|
||||||
|
},
|
||||||
'tt',
|
'tt',
|
||||||
],
|
],
|
||||||
'통 솔 전' => [
|
'통 솔 전' => [
|
||||||
'통솔',
|
'통솔',
|
||||||
function(General $general){return $general->getVar('leadership');},
|
function (General $general) {
|
||||||
|
return $general->getVar('leadership');
|
||||||
|
},
|
||||||
'tl',
|
'tl',
|
||||||
],
|
],
|
||||||
'일 기 토' => [
|
'일 기 토' => [
|
||||||
'무력',
|
'무력',
|
||||||
function(General $general){return $general->getVar('strength');},
|
function (General $general) {
|
||||||
|
return $general->getVar('strength');
|
||||||
|
},
|
||||||
'ts',
|
'ts',
|
||||||
],
|
],
|
||||||
'설 전' => [
|
'설 전' => [
|
||||||
'지력',
|
'지력',
|
||||||
function(General $general){return $general->getVar('intel');},
|
function (General $general) {
|
||||||
|
return $general->getVar('intel');
|
||||||
|
},
|
||||||
'ti',
|
'ti',
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
@@ -429,8 +512,22 @@ $type4 = array("total", "leadership", "strength", "intel");
|
|||||||
foreach ($tournamentType as $tournamentTypeText => [$statTypeText, $statFunc, $rankColumn]) : ?>
|
foreach ($tournamentType as $tournamentTypeText => [$statTypeText, $statFunc, $rankColumn]) : ?>
|
||||||
<td>
|
<td>
|
||||||
<table align=center width=280 class='tb_layout bg0'>
|
<table align=center width=280 class='tb_layout bg0'>
|
||||||
<tr><td colspan=9 align=center style=color:white;background-color:black;><font size=4><?=$tournamentTypeText?></font></td></tr>
|
<tr>
|
||||||
<tr class='bg1'><td align=center>순</td><td align=center>장수</td><td align=center><?=$statTypeText?></td><td align=center>경</td><td align=center>승</td><td align=center>무</td><td align=center>패</td><td align=center>점</td><td align=center>勝</td></tr>
|
<td colspan=9 align=center style=color:white;background-color:black;>
|
||||||
|
<font size=4><?= $tournamentTypeText ?></font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr class='bg1'>
|
||||||
|
<td align=center>순</td>
|
||||||
|
<td align=center>장수</td>
|
||||||
|
<td align=center><?= $statTypeText ?></td>
|
||||||
|
<td align=center>경</td>
|
||||||
|
<td align=center>승</td>
|
||||||
|
<td align=center>무</td>
|
||||||
|
<td align=center>패</td>
|
||||||
|
<td align=center>점</td>
|
||||||
|
<td align=center>勝</td>
|
||||||
|
</tr>
|
||||||
<?php
|
<?php
|
||||||
$prizeColumn = "{$rankColumn}p";
|
$prizeColumn = "{$rankColumn}p";
|
||||||
$gameColumn = "{$rankColumn}g";
|
$gameColumn = "{$rankColumn}g";
|
||||||
@@ -474,7 +571,8 @@ foreach($tournamentType as $tournamentTypeText=>[$statTypeText,$statFunc,$rankCo
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
</table></td>
|
</table>
|
||||||
|
</td>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
@@ -488,8 +586,13 @@ foreach($tournamentType as $tournamentTypeText=>[$statTypeText,$statFunc,$rankCo
|
|||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1120 class='tb_layout bg0'>
|
<table align=center width=1120 class='tb_layout bg0'>
|
||||||
<tr><td><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?></td></tr>
|
<td><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+49
-69
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -10,6 +11,7 @@ $generalObj = General::createGeneralObjFromDB($session->generalID);
|
|||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
@@ -17,10 +19,10 @@ $generalObj = General::createGeneralObjFromDB($session->generalID);
|
|||||||
<title><?= UniqueConst::$serverName ?>: 사령부</title>
|
<title><?= UniqueConst::$serverName ?>: 사령부</title>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/chiefCenter.js') ?>
|
<?= WebUtil::printJS('dist_js/chiefCenter.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printCSS('css/chiefCenter.css') ?>
|
<?= WebUtil::printCSS('css/chiefCenter.css') ?>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
@@ -34,75 +36,53 @@ var maxChiefTurn = <?=GameConst::$maxChiefTurn?>;
|
|||||||
<div class='tb_layout bg0'>사 령 부<button type='button' id='reloadTable'>갱신</button><br>
|
<div class='tb_layout bg0'>사 령 부<button type='button' id='reloadTable'>갱신</button><br>
|
||||||
<?= backButton() ?></div>
|
<?= backButton() ?></div>
|
||||||
<div style='background-color:skyblue;text-align:center;'>수뇌부 일정</div>
|
<div style='background-color:skyblue;text-align:center;'>수뇌부 일정</div>
|
||||||
<div class="chiefSubTable" style='height:<?=22*(GameConst::$maxChiefTurn+1)?>px;'
|
<div class="chiefSubTable" style='height:<?= 22 * (GameConst::$maxChiefTurn + 1) ?>px;'>
|
||||||
><div class='chiefTurnIdxPanel'
|
<div class='chiefTurnIdxPanel'>
|
||||||
><div class='bg1 chiefTurnIdx'>.</div
|
<div class='bg1 chiefTurnIdx'>.</div <?php foreach (Util::range(GameConst::$maxChiefTurn) as $idx) : ?>>
|
||||||
<?php foreach(Util::range(GameConst::$maxChiefTurn) as $idx):?>
|
<div class='bg0 chiefTurnIdx'><?= $idx + 1 ?></div <?php endforeach; ?>>
|
||||||
><div class='bg0 chiefTurnIdx'><?=$idx+1?></div
|
</div <?php foreach ([12, 10, 8, 6] as $chiefIdx) : ?>>
|
||||||
<?php endforeach; ?>
|
<div class='bg2 chiefPlate' style='flex-grow:1;' id='chief_<?= $chiefIdx ?>'>
|
||||||
></div
|
<div class='bg1 chiefNamePlate'><span class='chiefLevelText'>-</span> : <span class='chiefName'> </span></div <?php foreach (Util::range(GameConst::$maxChiefTurn) as $turnIdx) : ?>>
|
||||||
<?php foreach([12, 10, 8, 6] as $chiefIdx): ?>
|
<div class='chiefTurnBox turn<?= $turnIdx ?>'>
|
||||||
><div class='bg2 chiefPlate' style='flex-grow:1;' id='chief_<?=$chiefIdx?>'
|
<div class='chiefTurnTime'> </div>
|
||||||
><div class='bg1 chiefNamePlate'><span class='chiefLevelText'>-</span> : <span class='chiefName'> </span></div
|
<div class='chiefTurnPad'><span class='chiefTurnText'> </span></div>
|
||||||
<?php foreach(Util::range(GameConst::$maxChiefTurn) as $turnIdx): ?>
|
</div <?php endforeach; ?>>
|
||||||
><div class='chiefTurnBox turn<?=$turnIdx?>'
|
</div <?php endforeach; ?>>
|
||||||
><div class='chiefTurnTime'> </div
|
<div class='chiefTurnIdxPanel tail'>
|
||||||
><div class='chiefTurnPad'><span class='chiefTurnText'> </span></div
|
<div class='bg1 chiefTurnIdx'>.</div <?php foreach (Util::range(GameConst::$maxChiefTurn) as $idx) : ?>>
|
||||||
></div
|
<div class='bg0 chiefTurnIdx'><?= $idx + 1 ?></div <?php endforeach; ?>>
|
||||||
<?php endforeach; ?>
|
</div>
|
||||||
></div
|
</div>
|
||||||
<?php endforeach; ?>
|
<div id='controlPlate' style='display:flex;flex-flow:row wrap;justify-content:center;'>
|
||||||
><div class='chiefTurnIdxPanel tail'
|
<div style='width:400px;text-align:right;'><?= chiefTurnTable()
|
||||||
><div class='bg1 chiefTurnIdx'>.</div
|
?></div>
|
||||||
<?php foreach(Util::range(GameConst::$maxChiefTurn) as $idx):?>
|
<div style='width:400px;display: flex;justify-content: center;flex-direction: column;'>
|
||||||
><div class='bg0 chiefTurnIdx'><?=$idx+1?></div
|
<div><input type='button' id='turnPush' style='visibility:hidden;background-color:<?= GameConst::$basecolor2 ?>;color:white;font-size:14px;' value='미루기▼'><input type='button' id='turnPull' style='visibility:hidden;background-color:<?= GameConst::$basecolor2 ?>;color:white;font-size:14px;' value='▲당기기'></div>
|
||||||
<?php endforeach; ?>
|
<div><?= chiefCommandTable($generalObj)
|
||||||
></div
|
?><br><input type='button' id='setCommand' style='visibility:hidden;background-color:<?= GameConst::$basecolor2 ?>;color:white;font-size:14px;' value='실 행'></div>
|
||||||
></div
|
</div>
|
||||||
><div id='controlPlate' style='display:flex;flex-flow:row wrap;justify-content:center;'
|
</div>
|
||||||
><div style='width:400px;text-align:right;'
|
<div class="chiefSubTable" style='height:<?= 22 * (GameConst::$maxChiefTurn + 1) ?>px;'>
|
||||||
><?=chiefTurnTable()
|
<div class='chiefTurnIdxPanel'>
|
||||||
?></div
|
<div class='bg1 chiefTurnIdx'>.</div <?php foreach (Util::range(GameConst::$maxChiefTurn) as $idx) : ?>>
|
||||||
><div style='width:400px;display: flex;justify-content: center;flex-direction: column;'
|
<div class='bg0 chiefTurnIdx'><?= $idx + 1 ?></div <?php endforeach; ?>>
|
||||||
><div
|
</div <?php foreach ([11, 9, 7, 5] as $chiefIdx) : ?>>
|
||||||
><input type='button' id='turnPush' style='visibility:hidden;background-color:<?=GameConst::$basecolor2?>;color:white;font-size:14px;' value='미루기▼'
|
<div class='bg2 chiefPlate' style='flex-grow:1;' id='chief_<?= $chiefIdx ?>'>
|
||||||
><input type='button' id='turnPull' style='visibility:hidden;background-color:<?=GameConst::$basecolor2?>;color:white;font-size:14px;' value='▲당기기'
|
<div class='bg1 chiefNamePlate'><span class='chiefLevelText'>-</span> : <span class='chiefName'> </span></div <?php foreach (Util::range(GameConst::$maxChiefTurn) as $turnIdx) : ?>>
|
||||||
></div
|
<div class='chiefTurnBox turn<?= $turnIdx ?>'>
|
||||||
><div
|
<div class='chiefTurnTime'> </div>
|
||||||
><?=chiefCommandTable($generalObj)
|
<div class='chiefTurnPad'><span class='chiefTurnText'> </span></div>
|
||||||
?><br><input type='button' id='setCommand' style='visibility:hidden;background-color:<?=GameConst::$basecolor2?>;color:white;font-size:14px;' value='실 행'
|
</div <?php endforeach; ?>>
|
||||||
></div
|
</div <?php endforeach; ?>>
|
||||||
></div
|
<div class='chiefTurnIdxPanel tail'>
|
||||||
></div
|
<div class='bg1 chiefTurnIdx'>.</div <?php foreach (Util::range(GameConst::$maxChiefTurn) as $idx) : ?>>
|
||||||
><div class="chiefSubTable" style='height:<?=22*(GameConst::$maxChiefTurn+1)?>px;'
|
<div class='bg0 chiefTurnIdx'><?= $idx + 1 ?></div <?php endforeach; ?>>
|
||||||
><div class='chiefTurnIdxPanel'
|
</div>
|
||||||
><div class='bg1 chiefTurnIdx'>.</div
|
</div>
|
||||||
<?php foreach(Util::range(GameConst::$maxChiefTurn) as $idx):?>
|
<div><?= backButton()
|
||||||
><div class='bg0 chiefTurnIdx'><?=$idx+1?></div
|
|
||||||
<?php endforeach; ?>
|
|
||||||
></div
|
|
||||||
<?php foreach([11, 9, 7, 5] as $chiefIdx): ?>
|
|
||||||
><div class='bg2 chiefPlate' style='flex-grow:1;' id='chief_<?=$chiefIdx?>'
|
|
||||||
><div class='bg1 chiefNamePlate'><span class='chiefLevelText'>-</span> : <span class='chiefName'> </span></div
|
|
||||||
<?php foreach(Util::range(GameConst::$maxChiefTurn) as $turnIdx): ?>
|
|
||||||
><div class='chiefTurnBox turn<?=$turnIdx?>'
|
|
||||||
><div class='chiefTurnTime'> </div
|
|
||||||
><div class='chiefTurnPad'><span class='chiefTurnText'> </span></div
|
|
||||||
></div
|
|
||||||
<?php endforeach; ?>
|
|
||||||
></div
|
|
||||||
<?php endforeach; ?>
|
|
||||||
><div class='chiefTurnIdxPanel tail'
|
|
||||||
><div class='bg1 chiefTurnIdx'>.</div
|
|
||||||
<?php foreach(Util::range(GameConst::$maxChiefTurn) as $idx):?>
|
|
||||||
><div class='bg0 chiefTurnIdx'><?=$idx+1?></div
|
|
||||||
<?php endforeach; ?>
|
|
||||||
></div
|
|
||||||
></div
|
|
||||||
><div
|
|
||||||
><?=backButton()
|
|
||||||
?><?= banner()
|
?><?= banner()
|
||||||
?></div>
|
?></div>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+44
-30
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -35,12 +36,12 @@ $templates = new \League\Plates\Engine('templates');
|
|||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/currentCity.js') ?>
|
<?= WebUtil::printJS('dist_js/currentCity.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../e_lib/select2/select2.min.css') ?>
|
<?= WebUtil::printCSS('../e_lib/select2/select2.min.css') ?>
|
||||||
<?= WebUtil::printCSS('../e_lib/select2/select2-bootstrap4.css') ?>
|
<?= WebUtil::printCSS('../e_lib/select2/select2-bootstrap4.css') ?>
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<style>
|
<style>
|
||||||
#general_list tr td {
|
#general_list tr td {
|
||||||
@@ -60,7 +61,9 @@ $templates = new \League\Plates\Engine('templates');
|
|||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>도 시 정 보<br><?=backButton()?></td></tr>
|
<tr>
|
||||||
|
<td>도 시 정 보<br><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
@@ -80,7 +83,10 @@ if($me['officer_level'] == 0) {
|
|||||||
$city = $db->queryFirstRow('SELECT city,name,nation from city where city=%i', $me['city']);
|
$city = $db->queryFirstRow('SELECT city,name,nation from city where city=%i', $me['city']);
|
||||||
echo "
|
echo "
|
||||||
<option value={$city['city']}";
|
<option value={$city['city']}";
|
||||||
if($city['city'] == $citylist) { echo " selected"; $valid = 1; }
|
if ($city['city'] == $citylist) {
|
||||||
|
echo " selected";
|
||||||
|
$valid = 1;
|
||||||
|
}
|
||||||
echo ">【" . StringUtil::padString($city['name'], 4, '_') . "】";
|
echo ">【" . StringUtil::padString($city['name'], 4, '_') . "】";
|
||||||
if ($city['nation'] == 0) echo "공백지";
|
if ($city['nation'] == 0) echo "공백지";
|
||||||
elseif ($me['nation'] == $city['nation']) echo "본국";
|
elseif ($me['nation'] == $city['nation']) echo "본국";
|
||||||
@@ -91,7 +97,10 @@ if($me['officer_level'] == 0) {
|
|||||||
foreach ($db->query('SELECT city,name,nation from city where nation=%i', $me['nation']) as $city) {
|
foreach ($db->query('SELECT city,name,nation from city where nation=%i', $me['nation']) as $city) {
|
||||||
echo "
|
echo "
|
||||||
<option value={$city['city']}";
|
<option value={$city['city']}";
|
||||||
if($city['city'] == $citylist) { echo " selected"; $valid = 1; }
|
if ($city['city'] == $citylist) {
|
||||||
|
echo " selected";
|
||||||
|
$valid = 1;
|
||||||
|
}
|
||||||
echo ">【" . StringUtil::padString($city['name'], 4, '_') . "】";
|
echo ">【" . StringUtil::padString($city['name'], 4, '_') . "】";
|
||||||
if ($city['nation'] == 0) echo "공백지";
|
if ($city['nation'] == 0) echo "공백지";
|
||||||
elseif ($me['nation'] == $city['nation']) echo "본국";
|
elseif ($me['nation'] == $city['nation']) echo "본국";
|
||||||
@@ -103,7 +112,10 @@ if($me['officer_level'] == 0) {
|
|||||||
foreach ($db->query('SELECT distinct A.city,B.name,B.nation from general A,city B where A.city=B.city and A.nation=%i and B.nation!=%i', $me['nation'], $me['nation']) as $city) {
|
foreach ($db->query('SELECT distinct A.city,B.name,B.nation from general A,city B where A.city=B.city and A.nation=%i and B.nation!=%i', $me['nation'], $me['nation']) as $city) {
|
||||||
echo "
|
echo "
|
||||||
<option value={$city['city']}";
|
<option value={$city['city']}";
|
||||||
if($city['city'] == $citylist) { echo " selected"; $valid = 1; }
|
if ($city['city'] == $citylist) {
|
||||||
|
echo " selected";
|
||||||
|
$valid = 1;
|
||||||
|
}
|
||||||
echo ">【" . StringUtil::padString($city['name'], 4, '_') . "】";
|
echo ">【" . StringUtil::padString($city['name'], 4, '_') . "】";
|
||||||
if ($city['nation'] == 0) echo "공백지";
|
if ($city['nation'] == 0) echo "공백지";
|
||||||
elseif ($me['nation'] == $city['nation']) echo "본국";
|
elseif ($me['nation'] == $city['nation']) echo "본국";
|
||||||
@@ -119,8 +131,7 @@ if($myNation['level'] > 0) {
|
|||||||
|
|
||||||
if ($rawSpy == '') {
|
if ($rawSpy == '') {
|
||||||
$spyCities = [];
|
$spyCities = [];
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$spyCities = array_keys(Json::decode($rawSpy));
|
$spyCities = array_keys(Json::decode($rawSpy));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -128,7 +139,10 @@ if($myNation['level'] > 0) {
|
|||||||
if ($spyCities) {
|
if ($spyCities) {
|
||||||
foreach ($db->query('SELECT city,name,nation FROM city WHERE city in %li', $spyCities) as $city) {
|
foreach ($db->query('SELECT city,name,nation FROM city WHERE city in %li', $spyCities) as $city) {
|
||||||
echo "<option value={$city['city']}";
|
echo "<option value={$city['city']}";
|
||||||
if($city['city'] == $citylist) { echo " selected"; $valid = 1; }
|
if ($city['city'] == $citylist) {
|
||||||
|
echo " selected";
|
||||||
|
$valid = 1;
|
||||||
|
}
|
||||||
echo ">【" . StringUtil::padString($city['name'], 4, '_') . "】";
|
echo ">【" . StringUtil::padString($city['name'], 4, '_') . "】";
|
||||||
if ($city['nation'] == 0) echo "공백지";
|
if ($city['nation'] == 0) echo "공백지";
|
||||||
elseif ($me['nation'] == $city['nation']) echo "본국";
|
elseif ($me['nation'] == $city['nation']) echo "본국";
|
||||||
@@ -136,7 +150,6 @@ if($myNation['level'] > 0) {
|
|||||||
echo "</option>";
|
echo "</option>";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
echo "
|
echo "
|
||||||
@@ -204,16 +217,14 @@ if($showDetailedInfo){
|
|||||||
Util::formatListOfBackticks($dbColumns),
|
Util::formatListOfBackticks($dbColumns),
|
||||||
$city['city']
|
$city['city']
|
||||||
);
|
);
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$generals = [];
|
$generals = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($valid) {
|
if ($valid) {
|
||||||
$city['trustText'] = round($city['trust'], 1);
|
$city['trustText'] = round($city['trust'], 1);
|
||||||
$city['popRateText'] = round($city['pop'] / $city['pop_max'] * 100, 2);
|
$city['popRateText'] = round($city['pop'] / $city['pop_max'] * 100, 2);
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$city['agri'] = '?';
|
$city['agri'] = '?';
|
||||||
$city['comm'] = '?';
|
$city['comm'] = '?';
|
||||||
$city['pop'] = '?';
|
$city['pop'] = '?';
|
||||||
@@ -234,8 +245,7 @@ if($generals){
|
|||||||
foreach ($db->queryAllLists(
|
foreach ($db->queryAllLists(
|
||||||
'SELECT general_id, turn_idx, brief FROM general_turn WHERE general_id IN %li AND turn_idx < 5 ORDER BY general_id ASC, turn_idx ASC',
|
'SELECT general_id, turn_idx, brief FROM general_turn WHERE general_id IN %li AND turn_idx < 5 ORDER BY general_id ASC, turn_idx ASC',
|
||||||
array_column($generals, 'no')
|
array_column($generals, 'no')
|
||||||
) as [$generalID, $turnIdx, $brief]
|
) as [$generalID, $turnIdx, $brief]) {
|
||||||
){
|
|
||||||
if (!key_exists($generalID, $generalTurnList)) {
|
if (!key_exists($generalID, $generalTurnList)) {
|
||||||
$generalTurnList[$generalID] = [];
|
$generalTurnList[$generalID] = [];
|
||||||
}
|
}
|
||||||
@@ -260,8 +270,7 @@ foreach($generals as $general){
|
|||||||
|
|
||||||
if ($general['nation'] != 0 && $general['nation'] == $myNation['nation']) {
|
if ($general['nation'] != 0 && $general['nation'] == $myNation['nation']) {
|
||||||
$ourGeneral = true;
|
$ourGeneral = true;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$ourGeneral = false;
|
$ourGeneral = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -298,8 +307,7 @@ foreach($generals as $general){
|
|||||||
$crew = $general['crew'];
|
$crew = $general['crew'];
|
||||||
$train = $general['train'];
|
$train = $general['train'];
|
||||||
$atmos = $general['atmos'];
|
$atmos = $general['atmos'];
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$defenceTrain = 0;
|
$defenceTrain = 0;
|
||||||
$defenceTrainText = '';
|
$defenceTrainText = '';
|
||||||
$crewType = 0;
|
$crewType = 0;
|
||||||
@@ -324,8 +332,7 @@ foreach($generals as $general){
|
|||||||
$turnText[] = "{$turnIdx} : $turn";
|
$turnText[] = "{$turnIdx} : $turn";
|
||||||
}
|
}
|
||||||
$turnText = join('<br>', $turnText);
|
$turnText = join('<br>', $turnText);
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$turnText = '';
|
$turnText = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -359,7 +366,9 @@ foreach($generals as $general){
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
$generalsName = array_map(function($gen){return getColoredName($gen['name'], $gen['npc']);}, $generals);
|
$generalsName = array_map(function ($gen) {
|
||||||
|
return getColoredName($gen['name'], $gen['npc']);
|
||||||
|
}, $generals);
|
||||||
|
|
||||||
$enemyCrew = 0;
|
$enemyCrew = 0;
|
||||||
$enemyCnt = 0;
|
$enemyCnt = 0;
|
||||||
@@ -426,15 +435,14 @@ foreach($generalsFormat as $general){
|
|||||||
$genDef += 1;
|
$genDef += 1;
|
||||||
$chkDef = true;
|
$chkDef = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=backButton()?></td></tr>
|
<tr>
|
||||||
|
<td><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<table align=center width=1000 class='tb_layout bg2'>
|
<table align=center width=1000 class='tb_layout bg2'>
|
||||||
@@ -507,7 +515,8 @@ foreach($generalsFormat as $general){
|
|||||||
<td width=48 align=center class=bg1>훈련</td>
|
<td width=48 align=center class=bg1>훈련</td>
|
||||||
<td width=48 align=center class=bg1>사기</td>
|
<td width=48 align=center class=bg1>사기</td>
|
||||||
<td width=280 align=center class=bg1>명 령</td>
|
<td width=280 align=center class=bg1>명 령</td>
|
||||||
</tr></thead>
|
</tr>
|
||||||
|
</thead>
|
||||||
<tbody class='bg0' id='general_list'>
|
<tbody class='bg0' id='general_list'>
|
||||||
<?php
|
<?php
|
||||||
foreach ($generalsFormat as $general) {
|
foreach ($generalsFormat as $general) {
|
||||||
@@ -518,8 +527,13 @@ foreach($generalsFormat as $general){
|
|||||||
</table>
|
</table>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=backButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?> </td></tr>
|
<td><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?> </td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+45
-17
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -29,8 +30,7 @@ $permission = checkSecretPermission($me);
|
|||||||
if ($permission < 0) {
|
if ($permission < 0) {
|
||||||
echo '국가에 소속되어있지 않습니다.';
|
echo '국가에 소속되어있지 않습니다.';
|
||||||
die();
|
die();
|
||||||
}
|
} else if ($permission < 1) {
|
||||||
else if ($permission < 1) {
|
|
||||||
echo "권한이 부족합니다. 수뇌부가 아니거나 사관년도가 부족합니다.";
|
echo "권한이 부족합니다. 수뇌부가 아니거나 사관년도가 부족합니다.";
|
||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
@@ -48,6 +48,7 @@ $nationStor->cacheValues(['notice', 'scout_msg', 'available_war_setting_cnt']);
|
|||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
@@ -62,22 +63,26 @@ var storedData = <?=Json::encode([
|
|||||||
</script>
|
</script>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/dipcenter.js') ?>
|
<?= WebUtil::printJS('dist_js/dipcenter.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../e_lib/summernote/summernote-bs4.css') ?>
|
<?= WebUtil::printCSS('../e_lib/summernote/summernote-bs4.css') ?>
|
||||||
<?= WebUtil::printCSS('dist_css/vendors.css') ?>
|
<?= WebUtil::printCSS('dist_css/vendors.css') ?>
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printCSS('css/dipcenter.css') ?>
|
<?= WebUtil::printCSS('css/dipcenter.css') ?>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>내 무 부<br><?=backButton()?></td></tr>
|
<tr>
|
||||||
|
<td>내 무 부<br><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td colspan=9 align=center bgcolor=blue>외 교 관 계</td></tr>
|
<tr>
|
||||||
|
<td colspan=9 align=center bgcolor=blue>외 교 관 계</td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td width=130 align=center class=bg1>국 가 명</td>
|
<td width=130 align=center class=bg1>국 가 명</td>
|
||||||
<td width=50 align=center class=bg1>국력</td>
|
<td width=50 align=center class=bg1>국력</td>
|
||||||
@@ -173,9 +178,15 @@ if ($budgetricediff > 0) {
|
|||||||
?>
|
?>
|
||||||
<table width=1000 class='tb_layout bg0' style='margin:auto;'>
|
<table width=1000 class='tb_layout bg0' style='margin:auto;'>
|
||||||
<form name=form1 method=post action=c_dipcenter.php>
|
<form name=form1 method=post action=c_dipcenter.php>
|
||||||
<tr><td colspan=2 height=10></td></tr>
|
<tr>
|
||||||
<tr><td colspan=2 align=center bgcolor=orange>국 가 방 침 & 임관 권유 메시지</td></tr>
|
<td colspan=2 height=10></td>
|
||||||
<tr><td colspan='2'><div id='noticeForm'>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan=2 align=center bgcolor=orange>국 가 방 침 & 임관 권유 메시지</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan='2'>
|
||||||
|
<div id='noticeForm'>
|
||||||
<div class='bg1' style="display: flex; justify-content: space-around">
|
<div class='bg1' style="display: flex; justify-content: space-around">
|
||||||
<div style='flex: 1 1 auto;'>
|
<div style='flex: 1 1 auto;'>
|
||||||
국가 방침
|
국가 방침
|
||||||
@@ -186,8 +197,12 @@ if ($budgetricediff > 0) {
|
|||||||
</div>
|
</div>
|
||||||
<input type='hidden' class='input_form' name='msg' data-global='nationMsg'>
|
<input type='hidden' class='input_form' name='msg' data-global='nationMsg'>
|
||||||
<div class='edit_form viewer'></div>
|
<div class='edit_form viewer'></div>
|
||||||
</div></td></tr>
|
</div>
|
||||||
<tr><td colspan='2'><div id='scoutMsgForm'>
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan='2'>
|
||||||
|
<div id='scoutMsgForm'>
|
||||||
<div class='bg1' style="display: flex; justify-content: space-around">
|
<div class='bg1' style="display: flex; justify-content: space-around">
|
||||||
<div style='flex: 1 1 auto;'>
|
<div style='flex: 1 1 auto;'>
|
||||||
임관 권유
|
임관 권유
|
||||||
@@ -203,8 +218,12 @@ if ($budgetricediff > 0) {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div></td></tr>
|
</div>
|
||||||
<tr><td colspan=2 align=center bgcolor=green>예 산 & 정 책</td></tr>
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan=2 align=center bgcolor=green>예 산 & 정 책</td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan=2>
|
<td colspan=2>
|
||||||
<table width=998 class='tb_layout bg0'>
|
<table width=998 class='tb_layout bg0'>
|
||||||
@@ -276,13 +295,22 @@ if ($nation['war'] == 0) {
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<tr><td colspan=2>기밀 권한이란, 암행부를 열람할 수 있는 일반 장수의 최소 사관 년수를 의미합니다.</td></tr>
|
<tr>
|
||||||
<tr><td colspan=2 height=10></td></tr>
|
<td colspan=2>기밀 권한이란, 암행부를 열람할 수 있는 일반 장수의 최소 사관 년수를 의미합니다.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan=2 height=10></td>
|
||||||
|
</tr>
|
||||||
</form>
|
</form>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=backButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?></td></tr>
|
<td><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+37
-24
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -34,8 +35,7 @@ foreach ($db->queryAllLists('SELECT city, `name`, conflict FROM city WHERE confl
|
|||||||
$cityID,
|
$cityID,
|
||||||
$cityName,
|
$cityName,
|
||||||
$rawConflict
|
$rawConflict
|
||||||
])
|
]) {
|
||||||
{
|
|
||||||
$rawConflict = Json::decode($rawConflict);
|
$rawConflict = Json::decode($rawConflict);
|
||||||
if (count($rawConflict) < 2) {
|
if (count($rawConflict) < 2) {
|
||||||
continue;
|
continue;
|
||||||
@@ -85,6 +85,7 @@ $neutralStateCharMap = [
|
|||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
@@ -92,6 +93,7 @@ $neutralStateCharMap = [
|
|||||||
<title><?= UniqueConst::$serverName ?>: 중원 정보</title>
|
<title><?= UniqueConst::$serverName ?>: 중원 정보</title>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
<?= WebUtil::printJS('d_shared/base_map.js') ?>
|
<?= WebUtil::printJS('d_shared/base_map.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/map.js') ?>
|
<?= WebUtil::printJS('dist_js/map.js') ?>
|
||||||
@@ -108,9 +110,8 @@ $(function(){
|
|||||||
|
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printCSS('css/map.css') ?>
|
<?= WebUtil::printCSS('css/map.css') ?>
|
||||||
<?= WebUtil::printCSS('css/history.css') ?>
|
<?= WebUtil::printCSS('css/history.css') ?>
|
||||||
@@ -119,11 +120,15 @@ $(function(){
|
|||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>중 원 정 보<br><?=backButton()?></td></tr>
|
<tr>
|
||||||
|
<td>중 원 정 보<br><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<br>
|
<br>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td colspan=<?=$nationCnt+1?> align=center bgcolor=blue>외 교 현 황</td></tr>
|
<tr>
|
||||||
|
<td colspan=<?= $nationCnt + 1 ?> align=center bgcolor=blue>외 교 현 황</td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td align=center width=130 style=background-color:<?= GameConst::$basecolor2 ?>;> </td>
|
<td align=center width=130 style=background-color:<?= GameConst::$basecolor2 ?>;> </td>
|
||||||
<?php foreach ($nations as $nation) : ?>
|
<?php foreach ($nations as $nation) : ?>
|
||||||
@@ -137,25 +142,28 @@ $(function(){
|
|||||||
<td <?= ($me == $myNationID || $you == $myNationID) ? 'style="background-color:' . GameConst::$basecolor3 . '"' : '' ?>><?php
|
<td <?= ($me == $myNationID || $you == $myNationID) ? 'style="background-color:' . GameConst::$basecolor3 . '"' : '' ?>><?php
|
||||||
if ($me == $you) {
|
if ($me == $you) {
|
||||||
echo $sameNationStateChar;
|
echo $sameNationStateChar;
|
||||||
}
|
} else if ($me == $myNationID || $you == $myNationID || $session->userGrade >= 5) {
|
||||||
else if($me==$myNationID || $you==$myNationID || $session->userGrade >= 5){
|
|
||||||
echo $infomativeStateCharMap[$diplomacyList[$me][$you]] ?? $defaultStateChar;
|
echo $infomativeStateCharMap[$diplomacyList[$me][$you]] ?? $defaultStateChar;
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
echo $neutralStateCharMap[$diplomacyList[$me][$you]] ?? $defaultStateChar;
|
echo $neutralStateCharMap[$diplomacyList[$me][$you]] ?? $defaultStateChar;
|
||||||
}
|
}
|
||||||
?></td>
|
?></td>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</tr>
|
</tr>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
<tr><td colspan=<?=$nationCnt+1?> align=center>불가침 : <font color=limegreen>@</font>, 통상 : ㆍ, 선포 : <font color=magenta>▲</font>, 교전 : <font color=red>★</font></td></tr>
|
<tr>
|
||||||
|
<td colspan=<?= $nationCnt + 1 ?> align=center>불가침 : <font color=limegreen>@</font>, 통상 : ㆍ, 선포 : <font color=magenta>▲</font>, 교전 : <font color=red>★</font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<?php if ($realConflict) : ?>
|
<?php if ($realConflict) : ?>
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
<table align='center' width=1000 class='tb_layout bg0'>
|
<table align='center' width=1000 class='tb_layout bg0'>
|
||||||
<tr><td colspan=2 align=center bgcolor=magenta>분 쟁 현 황</td></tr>
|
<tr>
|
||||||
|
<td colspan=2 align=center bgcolor=magenta>분 쟁 현 황</td>
|
||||||
|
</tr>
|
||||||
<?php foreach ($realConflict as list($cityID, $cityName, $conflict)) : ?>
|
<?php foreach ($realConflict as list($cityID, $cityName, $conflict)) : ?>
|
||||||
<tr>
|
<tr>
|
||||||
<td align=center width=48><?= $cityName ?></td>
|
<td align=center width=48><?= $cityName ?></td>
|
||||||
@@ -163,15 +171,11 @@ else{
|
|||||||
<table class='tb_layout bg0' style='width:100%;'>
|
<table class='tb_layout bg0' style='width:100%;'>
|
||||||
<?php foreach ($conflict as $item) : ?>
|
<?php foreach ($conflict as $item) : ?>
|
||||||
<tr>
|
<tr>
|
||||||
<td
|
<td width=130 align=right style='color:<?= newColor($item['color']) ?>;background-color:<?= $item['color'] ?>;'><?= $item['name'] ?> </td>
|
||||||
width=130
|
|
||||||
align=right
|
|
||||||
style='color:<?=newColor($item['color'])?>;background-color:<?=$item['color']?>;'
|
|
||||||
><?=$item['name']?> </td>
|
|
||||||
<td width=48 align=right><?= (float)$item['percent'] ?> % </td>
|
<td width=48 align=right><?= (float)$item['percent'] ?> % </td>
|
||||||
<td width=*><div
|
<td width=*>
|
||||||
style='display:inline-block;width:<?=$item['percent']?>%;background-color:<?=$item['color']?>;'
|
<div style='display:inline-block;width:<?= $item['percent'] ?>%;background-color:<?= $item['color'] ?>;'> </div>
|
||||||
> </div></td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</table>
|
</table>
|
||||||
@@ -179,7 +183,9 @@ else{
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
<tr><td colspan=2 height=5 class='bg1'></td></tr>
|
<tr>
|
||||||
|
<td colspan=2 height=5 class='bg1'></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
@@ -187,7 +193,9 @@ else{
|
|||||||
<br>
|
<br>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan=5 align=center bgcolor=green><font size=3>중 원 지 도</font></td>
|
<td colspan=5 align=center bgcolor=green>
|
||||||
|
<font size=3>중 원 지 도</font>
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td width=698 height=420>
|
<td width=698 height=420>
|
||||||
@@ -221,8 +229,13 @@ else{
|
|||||||
<br>
|
<br>
|
||||||
|
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=backButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?></td></tr>
|
<td><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+71
-32
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -32,8 +33,7 @@ $permission = checkSecretPermission($me);
|
|||||||
if ($permission < 0) {
|
if ($permission < 0) {
|
||||||
echo '국가에 소속되어있지 않습니다.';
|
echo '국가에 소속되어있지 않습니다.';
|
||||||
die();
|
die();
|
||||||
}
|
} else if ($permission < 1) {
|
||||||
else if ($permission < 1) {
|
|
||||||
echo "권한이 부족합니다. 수뇌부가 아니거나 사관년도가 부족합니다.";
|
echo "권한이 부족합니다. 수뇌부가 아니거나 사관년도가 부족합니다.";
|
||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
@@ -48,24 +48,29 @@ $templates = new \League\Plates\Engine('templates');
|
|||||||
<?php if ($con == 1) {
|
<?php if ($con == 1) {
|
||||||
MessageBox("접속제한이 얼마 남지 않았습니다!");
|
MessageBox("접속제한이 얼마 남지 않았습니다!");
|
||||||
} ?>
|
} ?>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<title><?= UniqueConst::$serverName ?>: 암행부</title>
|
<title><?= UniqueConst::$serverName ?>: 암행부</title>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>암 행 부<br><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><form name=form1 method=get>정렬순서 :
|
<td>암 행 부<br><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<form name=form1 method=get>정렬순서 :
|
||||||
<select name=type size=1>
|
<select name=type size=1>
|
||||||
<option <?= $sel[1] ?? '' ?> value=1>자금</option>
|
<option <?= $sel[1] ?? '' ?> value=1>자금</option>
|
||||||
<option <?= $sel[2] ?? '' ?> value=2>군량</option>
|
<option <?= $sel[2] ?? '' ?> value=2>군량</option>
|
||||||
@@ -76,8 +81,10 @@ $templates = new \League\Plates\Engine('templates');
|
|||||||
<option <?= $sel[7] ?? '' ?> value=7>턴</option>
|
<option <?= $sel[7] ?? '' ?> value=7>턴</option>
|
||||||
<option <?= $sel[8] ?? '' ?> value=8>부대</option>
|
<option <?= $sel[8] ?? '' ?> value=8>부대</option>
|
||||||
</select>
|
</select>
|
||||||
<input type=submit value='정렬하기'></form>
|
<input type=submit value='정렬하기'>
|
||||||
</td></tr>
|
</form>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<?php
|
<?php
|
||||||
$troopName = [];
|
$troopName = [];
|
||||||
@@ -87,14 +94,30 @@ foreach($db->queryAllLists('SELECT troop_leader, name FROM troop WHERE nation=%i
|
|||||||
|
|
||||||
$orderSQL = '';
|
$orderSQL = '';
|
||||||
switch ($type) {
|
switch ($type) {
|
||||||
case 1: $orderSQL = "order by gold desc"; break;
|
case 1:
|
||||||
case 2: $orderSQL = "order by rice desc"; break;
|
$orderSQL = "order by gold desc";
|
||||||
case 3: $orderSQL = "order by city"; break;
|
break;
|
||||||
case 4: $orderSQL = "order by crewtype desc"; break;
|
case 2:
|
||||||
case 5: $orderSQL = "order by crew desc"; break;
|
$orderSQL = "order by rice desc";
|
||||||
case 6: $orderSQL = "order by killturn"; break;
|
break;
|
||||||
case 7: $orderSQL = "order by turntime"; break;
|
case 3:
|
||||||
case 8: $orderSQL = "order by troop desc"; break;
|
$orderSQL = "order by city";
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
$orderSQL = "order by crewtype desc";
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
$orderSQL = "order by crew desc";
|
||||||
|
break;
|
||||||
|
case 6:
|
||||||
|
$orderSQL = "order by killturn";
|
||||||
|
break;
|
||||||
|
case 7:
|
||||||
|
$orderSQL = "order by turntime";
|
||||||
|
break;
|
||||||
|
case 8:
|
||||||
|
$orderSQL = "order by troop desc";
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
$generals = $db->query(
|
$generals = $db->query(
|
||||||
@@ -108,8 +131,7 @@ $generalTurnList = [];
|
|||||||
foreach ($db->queryAllLists(
|
foreach ($db->queryAllLists(
|
||||||
'SELECT general_id, turn_idx, brief FROM general_turn WHERE general_id IN %li AND turn_idx < 5 ORDER BY general_id ASC, turn_idx ASC',
|
'SELECT general_id, turn_idx, brief FROM general_turn WHERE general_id IN %li AND turn_idx < 5 ORDER BY general_id ASC, turn_idx ASC',
|
||||||
array_column($generals, 'no')
|
array_column($generals, 'no')
|
||||||
) as [$generalID, $turnIdx, $brief]
|
) as [$generalID, $turnIdx, $brief]) {
|
||||||
){
|
|
||||||
if (!key_exists($generalID, $generalTurnList)) {
|
if (!key_exists($generalID, $generalTurnList)) {
|
||||||
$generalTurnList[$generalID] = [];
|
$generalTurnList[$generalID] = [];
|
||||||
}
|
}
|
||||||
@@ -214,24 +236,36 @@ foreach($generals as $general){
|
|||||||
<table style='width:1000px;margin:5px auto' class='tb_layout bg0'>
|
<table style='width:1000px;margin:5px auto' class='tb_layout bg0'>
|
||||||
<thead>
|
<thead>
|
||||||
<colgroup>
|
<colgroup>
|
||||||
<col style="width:120px;"><col>
|
<col style="width:120px;">
|
||||||
<col style="width:120px;"><col>
|
<col>
|
||||||
<col style="width:120px;"><col>
|
<col style="width:120px;">
|
||||||
<col style="width:120px;"><col>
|
<col>
|
||||||
|
<col style="width:120px;">
|
||||||
|
<col>
|
||||||
|
<col style="width:120px;">
|
||||||
|
<col>
|
||||||
</colgroup>
|
</colgroup>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td class='bg1'>전체 금</td><td><?=number_format($totalGold)?></td>
|
<td class='bg1'>전체 금</td>
|
||||||
<td class='bg1'>전체 쌀</td><td><?=number_format($totalRice)?></td>
|
<td><?= number_format($totalGold) ?></td>
|
||||||
<td class='bg1'>평균 금</td><td><?=number_format($totalGold/$genCntEff, 2)?></td>
|
<td class='bg1'>전체 쌀</td>
|
||||||
<td class='bg1'>평균 쌀</td><td><?=number_format($totalRice/$genCntEff, 2)?></td>
|
<td><?= number_format($totalRice) ?></td>
|
||||||
|
<td class='bg1'>평균 금</td>
|
||||||
|
<td><?= number_format($totalGold / $genCntEff, 2) ?></td>
|
||||||
|
<td class='bg1'>평균 쌀</td>
|
||||||
|
<td><?= number_format($totalRice / $genCntEff, 2) ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class='bg1'>전체 병력/장수</td><td><?=number_format($crewTotal)?>/<?=number_format($genCntEff)?></td>
|
<td class='bg1'>전체 병력/장수</td>
|
||||||
<td class='bg1'>훈사 90 병력/장수</td><td><?=number_format($crew90)?>/<?=number_format($gen90)?></td>
|
<td><?= number_format($crewTotal) ?>/<?= number_format($genCntEff) ?></td>
|
||||||
<td class='bg1'>훈사 80 병력/장수</td><td><?=number_format($crew80)?>/<?=number_format($gen80)?></td>
|
<td class='bg1'>훈사 90 병력/장수</td>
|
||||||
<td class='bg1'>훈사 60 병력/장수</td><td><?=number_format($crew60)?>/<?=number_format($gen60)?></td>
|
<td><?= number_format($crew90) ?>/<?= number_format($gen90) ?></td>
|
||||||
|
<td class='bg1'>훈사 80 병력/장수</td>
|
||||||
|
<td><?= number_format($crew80) ?>/<?= number_format($gen80) ?></td>
|
||||||
|
<td class='bg1'>훈사 60 병력/장수</td>
|
||||||
|
<td><?= number_format($crew60) ?>/<?= number_format($gen60) ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -239,8 +273,13 @@ foreach($generals as $general){
|
|||||||
<?= $templates->render('generalList', ['generals' => $generals]) ?>
|
<?= $templates->render('generalList', ['generals' => $generals]) ?>
|
||||||
|
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=closeButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?></td></tr>
|
<td><?= closeButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+73
-29
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -35,13 +36,13 @@ $nation = $db->queryFirstRow('SELECT nation,name,level,color,chief_set from nati
|
|||||||
<title><?= UniqueConst::$serverName ?>: 인사부</title>
|
<title><?= UniqueConst::$serverName ?>: 인사부</title>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/bossInfo.js') ?>
|
<?= WebUtil::printJS('dist_js/bossInfo.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../e_lib/select2/select2.min.css') ?>
|
<?= WebUtil::printCSS('../e_lib/select2/select2.min.css') ?>
|
||||||
<?= WebUtil::printCSS('../e_lib/select2/select2-bootstrap4.css') ?>
|
<?= WebUtil::printCSS('../e_lib/select2/select2-bootstrap4.css') ?>
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
var chiefStatMin = <?= GameConst::$chiefStatMin ?>;
|
var chiefStatMin = <?= GameConst::$chiefStatMin ?>;
|
||||||
@@ -93,26 +94,33 @@ var candidateAuditors = <?=Json::encode(array_map(function($value){
|
|||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>인 사 부<br><?=backButton()?></td></tr>
|
<tr>
|
||||||
|
<td>인 사 부<br><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
$lv = getNationChiefLevel($nation['level']);
|
$lv = getNationChiefLevel($nation['level']);
|
||||||
if($meLevel >= 5) { $btn = "button"; }
|
if ($meLevel >= 5) {
|
||||||
else { $btn = "hidden"; }
|
$btn = "button";
|
||||||
|
} else {
|
||||||
|
$btn = "hidden";
|
||||||
|
}
|
||||||
|
|
||||||
$level = Util::convertArrayToDict(
|
$level = Util::convertArrayToDict(
|
||||||
$db->query(
|
$db->query(
|
||||||
'SELECT name,officer_level,city,picture,imgsvr,belong from general where nation=%i and officer_level>=%i order by officer_level desc',
|
'SELECT name,officer_level,city,picture,imgsvr,belong from general where nation=%i and officer_level>=%i order by officer_level desc',
|
||||||
$nationID, $lv
|
$nationID,
|
||||||
|
$lv
|
||||||
),
|
),
|
||||||
'officer_level'
|
'officer_level'
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
$tigers = $db->query('SELECT value, name
|
$tigers = $db->query(
|
||||||
|
'SELECT value, name
|
||||||
FROM rank_data LEFT JOIN general ON rank_data.general_id = general.no
|
FROM rank_data LEFT JOIN general ON rank_data.general_id = general.no
|
||||||
WHERE rank_data.nation_id = %i AND rank_data.type = "killnum" AND value > 0 ORDER BY value DESC LIMIT 5',
|
WHERE rank_data.nation_id = %i AND rank_data.type = "killnum" AND value > 0 ORDER BY value DESC LIMIT 5',
|
||||||
$nationID
|
$nationID
|
||||||
@@ -122,7 +130,8 @@ $tigerstr = join(', ', array_map(function($arr){
|
|||||||
return "{$arr['name']}【{$number}】";
|
return "{$arr['name']}【{$number}】";
|
||||||
}, $tigers));
|
}, $tigers));
|
||||||
|
|
||||||
$eagles = $db->query('SELECT value, name
|
$eagles = $db->query(
|
||||||
|
'SELECT value, name
|
||||||
FROM rank_data LEFT JOIN general ON rank_data.general_id = general.no
|
FROM rank_data LEFT JOIN general ON rank_data.general_id = general.no
|
||||||
WHERE rank_data.nation_id = %i AND rank_data.type = "firenum" AND value > 0 ORDER BY value DESC LIMIT 7',
|
WHERE rank_data.nation_id = %i AND rank_data.type = "firenum" AND value > 0 ORDER BY value DESC LIMIT 7',
|
||||||
$nationID
|
$nationID
|
||||||
@@ -141,17 +150,26 @@ $eaglestr = join(', ', array_map(function($arr){
|
|||||||
</tr>
|
</tr>
|
||||||
<?php
|
<?php
|
||||||
for ($i = 12; $i >= $lv; $i -= 2) {
|
for ($i = 12; $i >= $lv; $i -= 2) {
|
||||||
$i1 = $i; $i2 = $i - 1;
|
$i1 = $i;
|
||||||
|
$i2 = $i - 1;
|
||||||
$imageTemp1 = GetImageURL($level[$i1]['imgsvr'] ?? 0);
|
$imageTemp1 = GetImageURL($level[$i1]['imgsvr'] ?? 0);
|
||||||
$imageTemp2 = GetImageURL($level[$i2]['imgsvr'] ?? 0);
|
$imageTemp2 = GetImageURL($level[$i2]['imgsvr'] ?? 0);
|
||||||
?>
|
?>
|
||||||
<tr>
|
<tr>
|
||||||
<td width=98 align=center class='bg1'><font size=4><?=getOfficerLevelText($i1, $nation['level'])?></font></td>
|
<td width=98 align=center class='bg1'>
|
||||||
|
<font size=4><?= getOfficerLevelText($i1, $nation['level']) ?></font>
|
||||||
|
</td>
|
||||||
<td width=64 class='generalIcon' height=64 style='background:no-repeat center url("<?= $imageTemp1 ?>/<?= $level[$i1]['picture'] ?? 'default.jpg' ?>");background-size:64px;'></td>
|
<td width=64 class='generalIcon' height=64 style='background:no-repeat center url("<?= $imageTemp1 ?>/<?= $level[$i1]['picture'] ?? 'default.jpg' ?>");background-size:64px;'></td>
|
||||||
<td width=332><font size=4><?=$level[$i1]['name']??'-'?>(<?=$level[$i1]['belong']??'-'?>년)</font></td>
|
<td width=332>
|
||||||
<td width=98 align=center class='bg1'><font size=4><?=getOfficerLevelText($i2, $nation['level'])?></font></td>
|
<font size=4><?= $level[$i1]['name'] ?? '-' ?>(<?= $level[$i1]['belong'] ?? '-' ?>년)</font>
|
||||||
|
</td>
|
||||||
|
<td width=98 align=center class='bg1'>
|
||||||
|
<font size=4><?= getOfficerLevelText($i2, $nation['level']) ?></font>
|
||||||
|
</td>
|
||||||
<td width=64 class='generalIcon' height=64 style='background:no-repeat center url("<?= $imageTemp2 ?>/<?= $level[$i2]['picture'] ?? 'default.jpg' ?>");background-size:64px;'></td>
|
<td width=64 class='generalIcon' height=64 style='background:no-repeat center url("<?= $imageTemp2 ?>/<?= $level[$i2]['picture'] ?? 'default.jpg' ?>");background-size:64px;'></td>
|
||||||
<td width=332><font size=4><?=$level[$i2]['name']??'-'?>(<?=$level[$i2]['belong']??'-'?>년)</font></td>
|
<td width=332>
|
||||||
|
<font size=4><?= $level[$i2]['name'] ?? '-' ?>(<?= $level[$i2]['belong'] ?? '-' ?>년)</font>
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<?php
|
<?php
|
||||||
}
|
}
|
||||||
@@ -167,8 +185,12 @@ for($i=12; $i >= $lv; $i-=2) {
|
|||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td colspan=6 height=5></td></tr>
|
<tr>
|
||||||
<tr><td colspan=2 align=center bgcolor=red>추 방</td></tr>
|
<td colspan=6 height=5></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan=2 align=center bgcolor=red>추 방</td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td width=498 align=right class='bg1'>대상 장수</td>
|
<td width=498 align=right class='bg1'>대상 장수</td>
|
||||||
<td width=498>
|
<td width=498>
|
||||||
@@ -178,8 +200,7 @@ if($meLevel >= 5){
|
|||||||
$candidateStrength = $db->query('SELECT no,name,officer_level,city,npc from general where nation=%i and officer_level!=12 and strength>=%i order by npc,binary(name)', $nationID, GameConst::$chiefStatMin);
|
$candidateStrength = $db->query('SELECT no,name,officer_level,city,npc from general where nation=%i and officer_level!=12 and strength>=%i order by npc,binary(name)', $nationID, GameConst::$chiefStatMin);
|
||||||
$candidateIntel = $db->query('SELECT no,name,officer_level,city,npc from general where nation=%i and officer_level!=12 and intel>=%i order by npc,binary(name)', $nationID, GameConst::$chiefStatMin);
|
$candidateIntel = $db->query('SELECT no,name,officer_level,city,npc from general where nation=%i and officer_level!=12 and intel>=%i order by npc,binary(name)', $nationID, GameConst::$chiefStatMin);
|
||||||
$candidateAny = $db->query('SELECT no,name,officer_level,city,npc,leadership,strength,intel,killturn from general where nation=%i and officer_level!=12 order by npc,binary(name)', $nationID); //추방 때문에 조금 더 김
|
$candidateAny = $db->query('SELECT no,name,officer_level,city,npc,leadership,strength,intel,killturn from general where nation=%i and officer_level!=12 order by npc,binary(name)', $nationID); //추방 때문에 조금 더 김
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$candidateStrength = [];
|
$candidateStrength = [];
|
||||||
$candidateIntel = [];
|
$candidateIntel = [];
|
||||||
$candidateAny = [];
|
$candidateAny = [];
|
||||||
@@ -240,7 +261,6 @@ if($meLevel >= 5 && !isOfficerSet($nation['chief_set'], 11)) {
|
|||||||
if (key_exists(11, $level)) {
|
if (key_exists(11, $level)) {
|
||||||
echo "{$level[11]['name']} 【" . CityConst::byID($level[11]['city'])->name . "】";
|
echo "{$level[11]['name']} 【" . CityConst::byID($level[11]['city'])->name . "】";
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
echo "
|
echo "
|
||||||
</td>
|
</td>
|
||||||
@@ -248,7 +268,9 @@ echo "
|
|||||||
";
|
";
|
||||||
|
|
||||||
for ($i = 10; $i >= $lv; $i--) {
|
for ($i = 10; $i >= $lv; $i--) {
|
||||||
if($i % 2 == 0) { echo "<tr>"; }
|
if ($i % 2 == 0) {
|
||||||
|
echo "<tr>";
|
||||||
|
}
|
||||||
$officerLevelText = getOfficerLevelText($i, $nation['level']);
|
$officerLevelText = getOfficerLevelText($i, $nation['level']);
|
||||||
echo "
|
echo "
|
||||||
<td width=98 align=right class='bg1'>{$officerLevelText}</td>
|
<td width=98 align=right class='bg1'>{$officerLevelText}</td>
|
||||||
@@ -281,7 +303,9 @@ for($i=10; $i >= $lv; $i--) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
echo "</td>";
|
echo "</td>";
|
||||||
if($i % 2 == 1) { echo "</tr>"; }
|
if ($i % 2 == 1) {
|
||||||
|
echo "</tr>";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
echo "
|
echo "
|
||||||
<tr><td colspan=4>※ <font color=red>빨간색</font>은 현재 임명중인 장수, <font color=orange>노란색</font>은 다른 관직에 임명된 장수, 하얀색은 일반 장수를 뜻합니다.</td></tr>
|
<tr><td colspan=4>※ <font color=red>빨간색</font>은 현재 임명중인 장수, <font color=orange>노란색</font>은 다른 관직에 임명된 장수, 하얀색은 일반 장수를 뜻합니다.</td></tr>
|
||||||
@@ -292,8 +316,12 @@ echo "
|
|||||||
if ($meLevel == 12) :
|
if ($meLevel == 12) :
|
||||||
?>
|
?>
|
||||||
<table align='center' width='1000' class='tb_layout bg0'>
|
<table align='center' width='1000' class='tb_layout bg0'>
|
||||||
<tr><td colspan='4' height='5'></td></tr>
|
<tr>
|
||||||
<tr><td colspan='4' align='center' bgcolor='purple'>외 교 권 자 임 명</td></tr>
|
<td colspan='4' height='5'></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan='4' align='center' bgcolor='purple'>외 교 권 자 임 명</td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td width=98 align=right class='bg1'>외교권자</td>
|
<td width=98 align=right class='bg1'>외교권자</td>
|
||||||
<td width=398>
|
<td width=398>
|
||||||
@@ -313,7 +341,9 @@ if($meLevel == 12):
|
|||||||
endif;
|
endif;
|
||||||
?>
|
?>
|
||||||
<table align=center width=1000 id='officer_list' class='tb_layout bg0'>
|
<table align=center width=1000 id='officer_list' class='tb_layout bg0'>
|
||||||
<tr><td colspan=5 height=5></td></tr>
|
<tr>
|
||||||
|
<td colspan=5 height=5></td>
|
||||||
|
</tr>
|
||||||
<?php
|
<?php
|
||||||
if ($meLevel >= 5) {
|
if ($meLevel >= 5) {
|
||||||
$officerLevelText = getOfficerLevelText(4, $nation['level']);
|
$officerLevelText = getOfficerLevelText(4, $nation['level']);
|
||||||
@@ -495,9 +525,16 @@ foreach($db->query('SELECT city,name,level,region,officer_set from city where na
|
|||||||
$cityOfficerList = $officerList[$cityID] ?? [];
|
$cityOfficerList = $officerList[$cityID] ?? [];
|
||||||
?>
|
?>
|
||||||
<?php if ($region != $city['region']) : ?>
|
<?php if ($region != $city['region']) : ?>
|
||||||
<tr><td colspan=5 height=3 class='bg1'></td></tr>
|
<tr>
|
||||||
<tr><td colspan=5 class='bg1'><font size=4 color=skyblue> 【 <?=CityConst::$regionMap[$city['region']]?> 】 </font></td></tr>
|
<td colspan=5 height=3 class='bg1'></td>
|
||||||
<?php endif; $region = $city['region']; ?>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan=5 class='bg1'>
|
||||||
|
<font size=4 color=skyblue> 【 <?= CityConst::$regionMap[$city['region']] ?> 】 </font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<?php endif;
|
||||||
|
$region = $city['region']; ?>
|
||||||
<tr>
|
<tr>
|
||||||
<td width=78 align=center style='color:<?= $textColor ?>;background-color:<?= $nationColor ?>;font-size:1.2em;'>【<?= $citylevel[$city['level']] ?>】</td>
|
<td width=78 align=center style='color:<?= $textColor ?>;background-color:<?= $nationColor ?>;font-size:1.2em;'>【<?= $citylevel[$city['level']] ?>】</td>
|
||||||
<td width=78 align=right style='color:<?= $textColor ?>;background-color:<?= $nationColor ?>;font-size:1.2em;'><?= $city['name'] ?> </td>
|
<td width=78 align=right style='color:<?= $textColor ?>;background-color:<?= $nationColor ?>;font-size:1.2em;'><?= $city['name'] ?> </td>
|
||||||
@@ -516,12 +553,19 @@ $officer = $cityOfficerList[$officerLevel];
|
|||||||
|
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
<tr><td colspan=5>※ <font color=orange>노란색</font>은 변경 불가능, 하얀색은 변경 가능 관직입니다.</td></tr>
|
<tr>
|
||||||
|
<td colspan=5>※ <font color=orange>노란색</font>은 변경 불가능, 하얀색은 변경 가능 관직입니다.</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<br>
|
<br>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=backButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?></td></tr>
|
<td><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+75
-22
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -35,20 +36,24 @@ $sel = [$type => "selected"];
|
|||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<title><?= UniqueConst::$serverName ?>: 세력도시</title>
|
<title><?= UniqueConst::$serverName ?>: 세력도시</title>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/extExpandCity.js') ?>
|
<?= WebUtil::printJS('dist_js/extExpandCity.js') ?>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>세 력 도 시<br><?=backButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><form name=form1 method=post>정렬순서 :
|
<td>세 력 도 시<br><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<form name=form1 method=post>정렬순서 :
|
||||||
<select name=type size=1>
|
<select name=type size=1>
|
||||||
<option <?= $sel[1] ?? '' ?> value=1>기본</option>
|
<option <?= $sel[1] ?? '' ?> value=1>기본</option>
|
||||||
<option <?= $sel[2] ?? '' ?> value=2>인구</option>
|
<option <?= $sel[2] ?? '' ?> value=2>인구</option>
|
||||||
@@ -63,8 +68,10 @@ $sel = [$type => "selected"];
|
|||||||
<option <?= $sel[11] ?? '' ?> value=11>지역</option>
|
<option <?= $sel[11] ?? '' ?> value=11>지역</option>
|
||||||
<option <?= $sel[12] ?? '' ?> value=12>규모</option>
|
<option <?= $sel[12] ?? '' ?> value=12>규모</option>
|
||||||
</select>
|
</select>
|
||||||
<input type=submit value='정렬하기'></form>
|
<input type=submit value='정렬하기'>
|
||||||
</td></tr>
|
</form>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -84,30 +91,71 @@ $cityList = $db->query('SELECT *,pop/pop_max as poprate from city where nation=%
|
|||||||
|
|
||||||
|
|
||||||
switch ($type) {
|
switch ($type) {
|
||||||
case 1: break;
|
case 1:
|
||||||
case 2: usort($cityList, function($lhs, $rhs){return $rhs['pop'] <=> $lhs['pop'];}); break;
|
break;
|
||||||
case 3: usort($cityList, function($lhs, $rhs){return $rhs['poprate'] <=> $lhs['poprate'];}); break;
|
case 2:
|
||||||
case 4: usort($cityList, function($lhs, $rhs){return $rhs['trust'] <=> $lhs['trust'];}); break;
|
usort($cityList, function ($lhs, $rhs) {
|
||||||
case 5: usort($cityList, function($lhs, $rhs){return $rhs['agri'] <=> $lhs['agri'];}); break;
|
return $rhs['pop'] <=> $lhs['pop'];
|
||||||
case 6: usort($cityList, function($lhs, $rhs){return $rhs['comm'] <=> $lhs['comm'];}); break;
|
});
|
||||||
case 7: usort($cityList, function($lhs, $rhs){return $rhs['secu'] <=> $lhs['secu'];}); break;
|
break;
|
||||||
case 8: usort($cityList, function($lhs, $rhs){return $rhs['def'] <=> $lhs['def'];}); break;
|
case 3:
|
||||||
case 9: usort($cityList, function($lhs, $rhs){return $rhs['wall'] <=> $lhs['wall'];}); break;
|
usort($cityList, function ($lhs, $rhs) {
|
||||||
case 10: usort($cityList, function($lhs, $rhs){return $rhs['trade'] <=> $lhs['trade'];}); break;
|
return $rhs['poprate'] <=> $lhs['poprate'];
|
||||||
case 11: usort($cityList, function($lhs, $rhs){
|
});
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
usort($cityList, function ($lhs, $rhs) {
|
||||||
|
return $rhs['trust'] <=> $lhs['trust'];
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
usort($cityList, function ($lhs, $rhs) {
|
||||||
|
return $rhs['agri'] <=> $lhs['agri'];
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
case 6:
|
||||||
|
usort($cityList, function ($lhs, $rhs) {
|
||||||
|
return $rhs['comm'] <=> $lhs['comm'];
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
case 7:
|
||||||
|
usort($cityList, function ($lhs, $rhs) {
|
||||||
|
return $rhs['secu'] <=> $lhs['secu'];
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
case 8:
|
||||||
|
usort($cityList, function ($lhs, $rhs) {
|
||||||
|
return $rhs['def'] <=> $lhs['def'];
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
case 9:
|
||||||
|
usort($cityList, function ($lhs, $rhs) {
|
||||||
|
return $rhs['wall'] <=> $lhs['wall'];
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
case 10:
|
||||||
|
usort($cityList, function ($lhs, $rhs) {
|
||||||
|
return $rhs['trade'] <=> $lhs['trade'];
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
case 11:
|
||||||
|
usort($cityList, function ($lhs, $rhs) {
|
||||||
$cmpTrust = $lhs['region'] <=> $rhs['region'];
|
$cmpTrust = $lhs['region'] <=> $rhs['region'];
|
||||||
if ($cmpTrust != 0) {
|
if ($cmpTrust != 0) {
|
||||||
return $cmpTrust;
|
return $cmpTrust;
|
||||||
}
|
}
|
||||||
return $rhs['level'] <=> $lhs['level'];
|
return $rhs['level'] <=> $lhs['level'];
|
||||||
}); break;
|
});
|
||||||
case 12: usort($cityList, function($lhs, $rhs){
|
break;
|
||||||
|
case 12:
|
||||||
|
usort($cityList, function ($lhs, $rhs) {
|
||||||
$cmpTrust = $rhs['level'] <=> $lhs['level'];
|
$cmpTrust = $rhs['level'] <=> $lhs['level'];
|
||||||
if ($cmpTrust != 0) {
|
if ($cmpTrust != 0) {
|
||||||
return $cmpTrust;
|
return $cmpTrust;
|
||||||
}
|
}
|
||||||
return $lhs['region'] <=> $rhs['region'];
|
return $lhs['region'] <=> $rhs['region'];
|
||||||
}); break;
|
});
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
$region = 0;
|
$region = 0;
|
||||||
@@ -201,9 +249,14 @@ foreach($cityList as $city){
|
|||||||
?>
|
?>
|
||||||
|
|
||||||
<table align=center width=1000 class='tb_layout bg0 anchor'>
|
<table align=center width=1000 class='tb_layout bg0 anchor'>
|
||||||
<tr><td><?=backButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?></td></tr>
|
<td><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
<div id="helper_genlist" style="display:none;"></div>
|
<div id="helper_genlist" style="display:none;"></div>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+31
-13
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -44,20 +45,24 @@ if($gameStor->isunited){
|
|||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<title><?= UniqueConst::$serverName ?>: 세력장수</title>
|
<title><?= UniqueConst::$serverName ?>: 세력장수</title>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>세 력 장 수<br><?=backButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><form name=form1 method=post>정렬순서 :
|
<td>세 력 장 수<br><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<form name=form1 method=post>정렬순서 :
|
||||||
<select name=type size=1>
|
<select name=type size=1>
|
||||||
<option <?= $sel[1] ?? '' ?> value=1>관직</option>
|
<option <?= $sel[1] ?? '' ?> value=1>관직</option>
|
||||||
<option <?= $sel[2] ?? '' ?> value=2>계급</option>
|
<option <?= $sel[2] ?? '' ?> value=2>계급</option>
|
||||||
@@ -75,8 +80,10 @@ if($gameStor->isunited){
|
|||||||
<option <?= $sel[14] ?? '' ?> value=14>사관</option>
|
<option <?= $sel[14] ?? '' ?> value=14>사관</option>
|
||||||
<option <?= $sel[15] ?? '' ?> value=15>NPC</option>
|
<option <?= $sel[15] ?? '' ?> value=15>NPC</option>
|
||||||
</select>
|
</select>
|
||||||
<input type=submit value='정렬하기'></form>
|
<input type=submit value='정렬하기'>
|
||||||
</td></tr>
|
</form>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -143,9 +150,13 @@ foreach($generalList as $general){
|
|||||||
$intel = "{$general['intel']}";
|
$intel = "{$general['intel']}";
|
||||||
}
|
}
|
||||||
|
|
||||||
if($general['npc'] >= 2) { $name = "<font color=cyan>{$general['name']}</font>"; }
|
if ($general['npc'] >= 2) {
|
||||||
elseif($general['npc'] == 1) { $name = "<font color=skyblue>{$general['name']}</font>"; }
|
$name = "<font color=cyan>{$general['name']}</font>";
|
||||||
else { $name = "{$general['name']}"; }
|
} elseif ($general['npc'] == 1) {
|
||||||
|
$name = "<font color=skyblue>{$general['name']}</font>";
|
||||||
|
} else {
|
||||||
|
$name = "{$general['name']}";
|
||||||
|
}
|
||||||
|
|
||||||
if (key_exists($general['owner'], $ownerNameList)) {
|
if (key_exists($general['owner'], $ownerNameList)) {
|
||||||
$name = $name . '<br><small>(' . $ownerNameList[$general['owner']] . ')</small>';
|
$name = $name . '<br><small>(' . $ownerNameList[$general['owner']] . ')</small>';
|
||||||
@@ -156,7 +167,9 @@ foreach($generalList as $general){
|
|||||||
<tr>
|
<tr>
|
||||||
<td align=center class='generalIcon' style='background:no-repeat center url(\"{$imageTemp}/{$general['picture']}\");background-size:64px;' height=64></td>
|
<td align=center class='generalIcon' style='background:no-repeat center url(\"{$imageTemp}/{$general['picture']}\");background-size:64px;' height=64></td>
|
||||||
<td align=center>$name</td>
|
<td align=center>$name</td>
|
||||||
<td align=center>"; echo getOfficerLevelText($general['officer_level'], $nationLevel); echo "</td>
|
<td align=center>";
|
||||||
|
echo getOfficerLevelText($general['officer_level'], $nationLevel);
|
||||||
|
echo "</td>
|
||||||
<td align=center>" . getDed($general['dedication']) . "</td>
|
<td align=center>" . getDed($general['dedication']) . "</td>
|
||||||
<td align=center>" . getHonor($general['experience']) . "</td>
|
<td align=center>" . getHonor($general['experience']) . "</td>
|
||||||
<td align=center>" . getBill($general['dedication']) . "</td>
|
<td align=center>" . getBill($general['dedication']) . "</td>
|
||||||
@@ -168,7 +181,8 @@ foreach($generalList as $general){
|
|||||||
<td align=center>" . displayCharInfo($general['personal']) . "</td>
|
<td align=center>" . displayCharInfo($general['personal']) . "</td>
|
||||||
<td align=center>" . displaySpecialDomesticInfo($general['special']) . " / " . displaySpecialWarInfo($general['special2']) . "</td>
|
<td align=center>" . displaySpecialDomesticInfo($general['special']) . " / " . displaySpecialWarInfo($general['special2']) . "</td>
|
||||||
<td align=center>{$general['belong']}</td>
|
<td align=center>{$general['belong']}</td>
|
||||||
<td align=center>{$general['connect']}"; echo "<br>(".getConnect($general['connect']).")</td>
|
<td align=center>{$general['connect']}";
|
||||||
|
echo "<br>(" . getConnect($general['connect']) . ")</td>
|
||||||
</tr>";
|
</tr>";
|
||||||
}
|
}
|
||||||
echo "
|
echo "
|
||||||
@@ -178,8 +192,12 @@ foreach($generalList as $general){
|
|||||||
?>
|
?>
|
||||||
|
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=backButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?></td></tr>
|
<td><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
|||||||
+13
-7
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -29,17 +30,19 @@ if($nationID == 0) {
|
|||||||
<title><?= UniqueConst::$serverName ?>: 세력정보</title>
|
<title><?= UniqueConst::$serverName ?>: 세력정보</title>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>세 력 정 보<br><?=backButton()?></td></tr>
|
<tr>
|
||||||
|
<td>세 력 정 보<br><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<br>
|
<br>
|
||||||
<?php
|
<?php
|
||||||
@@ -56,8 +59,7 @@ foreach($cityList as $city){
|
|||||||
$maxPop += $city['pop_max'];
|
$maxPop += $city['pop_max'];
|
||||||
if ($city['city'] == $nation['capital']) {
|
if ($city['city'] == $nation['capital']) {
|
||||||
$cityNames[] = "<span style='color:cyan;'>{$city['name']}</span>";
|
$cityNames[] = "<span style='color:cyan;'>{$city['name']}</span>";
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$cityNames[] = $city['name'];
|
$cityNames[] = $city['name'];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -153,8 +155,12 @@ if ($budgetricediff > 0) {
|
|||||||
<br>
|
<br>
|
||||||
|
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=backButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?></td></tr>
|
<td><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
|||||||
+26
-9
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -43,6 +44,7 @@ $use_auto_nation_turn = $me->getAuxVar('use_auto_nation_turn')??1;
|
|||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
@@ -53,17 +55,19 @@ var availableDieImmediately = <?=$availableDieImmediately?'true':'false'?>;
|
|||||||
</script>
|
</script>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/myPage.js') ?>
|
<?= WebUtil::printJS('dist_js/myPage.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td>내 정 보<br><?=backButton()?></td></tr>
|
<tr>
|
||||||
|
<td>내 정 보<br><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr>
|
<tr>
|
||||||
@@ -124,8 +128,12 @@ var availableDieImmediately = <?=$availableDieImmediately?'true':'false'?>;
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td align=center class='bg1'><font color=skyblue size=3>개인 기록</font></td>
|
<td align=center class='bg1'>
|
||||||
<td align=center class='bg1'><font color=orange size=3>전투 기록</font></td>
|
<font color=skyblue size=3>개인 기록</font>
|
||||||
|
</td>
|
||||||
|
<td align=center class='bg1'>
|
||||||
|
<font color=orange size=3>전투 기록</font>
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td valign=top>
|
<td valign=top>
|
||||||
@@ -142,8 +150,12 @@ var availableDieImmediately = <?=$availableDieImmediately?'true':'false'?>;
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td align=center class='bg1'><font color=skyblue size=3>장수 열전</font></td>
|
<td align=center class='bg1'>
|
||||||
<td align=center class='bg1'><font color=orange size=3>전투 결과</font></td>
|
<font color=skyblue size=3>장수 열전</font>
|
||||||
|
</td>
|
||||||
|
<td align=center class='bg1'>
|
||||||
|
<font color=orange size=3>전투 결과</font>
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td valign=top>
|
<td valign=top>
|
||||||
@@ -158,8 +170,13 @@ var availableDieImmediately = <?=$availableDieImmediately?'true':'false'?>;
|
|||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=backButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?></td></tr>
|
<td><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+21
-11
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -14,8 +15,7 @@ function die_redirect()
|
|||||||
global $isChiefTurn;
|
global $isChiefTurn;
|
||||||
if (!$isChiefTurn) {
|
if (!$isChiefTurn) {
|
||||||
header('location:index.php', true, 303);
|
header('location:index.php', true, 303);
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
header('location:b_chiefcenter.php', true, 303);
|
header('location:b_chiefcenter.php', true, 303);
|
||||||
}
|
}
|
||||||
die();
|
die();
|
||||||
@@ -46,8 +46,7 @@ $general = General::createGeneralObjFromDB($session->generalID);
|
|||||||
|
|
||||||
if (!$isChiefTurn) {
|
if (!$isChiefTurn) {
|
||||||
$commandObj = buildGeneralCommandClass($commandType, $general, $env);
|
$commandObj = buildGeneralCommandClass($commandType, $general, $env);
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
if ($general->getVar('officer_level') < 5) {
|
if ($general->getVar('officer_level') < 5) {
|
||||||
die_redirect();
|
die_redirect();
|
||||||
}
|
}
|
||||||
@@ -70,6 +69,7 @@ $cssList = $commandObj->getCSSFiles();
|
|||||||
|
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<title><?= $commandObj->getName() ?></title>
|
<title><?= $commandObj->getName() ?></title>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
@@ -77,6 +77,7 @@ $cssList = $commandObj->getCSSFiles();
|
|||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
<?= WebUtil::printJS('d_shared/base_map.js') ?>
|
<?= WebUtil::printJS('d_shared/base_map.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/processing.js') ?>
|
<?= WebUtil::printJS('dist_js/processing.js') ?>
|
||||||
@@ -88,11 +89,10 @@ window.turnList = [<?=join(', ',$turnList)?>];
|
|||||||
window.isChiefTurn = <?= $isChiefTurn ? 'true' : 'false' ?>;
|
window.isChiefTurn = <?= $isChiefTurn ? 'true' : 'false' ?>;
|
||||||
var jsPlugins = <?= Json::encode($jsList) ?>;
|
var jsPlugins = <?= Json::encode($jsList) ?>;
|
||||||
</script>
|
</script>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../e_lib/select2/select2.min.css') ?>
|
<?= WebUtil::printCSS('../e_lib/select2/select2.min.css') ?>
|
||||||
<?= WebUtil::printCSS('../e_lib/select2/select2-bootstrap4.css') ?>
|
<?= WebUtil::printCSS('../e_lib/select2/select2-bootstrap4.css') ?>
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printCSS('css/main.css') ?>
|
<?= WebUtil::printCSS('css/main.css') ?>
|
||||||
<?= WebUtil::printCSS('css/map.css') ?>
|
<?= WebUtil::printCSS('css/map.css') ?>
|
||||||
@@ -104,23 +104,33 @@ foreach($cssList as $css){
|
|||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="img_back">
|
<body class="img_back">
|
||||||
<table class="tb_layout bg0" style="width:1000px;margin:auto;">
|
<table class="tb_layout bg0" style="width:1000px;margin:auto;">
|
||||||
<tr><td class="bg1" style='text-align:center;'><?=$commandObj->getName()?></td></tr>
|
<tr>
|
||||||
<tr><td>
|
<td class="bg1" style='text-align:center;'><?= $commandObj->getName() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
<input type=button value='돌아가기' onclick="history.back();"><br>
|
<input type=button value='돌아가기' onclick="history.back();"><br>
|
||||||
</td></tr></table>
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
<div class="tb_layout bg0" style="width:1000px;margin:auto;padding-bottom:2em;border:solid 1px gray;">
|
<div class="tb_layout bg0" style="width:1000px;margin:auto;padding-bottom:2em;border:solid 1px gray;">
|
||||||
<?= $commandObj->getForm() ?>
|
<?= $commandObj->getForm() ?>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<table class="tb_layout bg0" style="width:1000px;margin:auto;">
|
<table class="tb_layout bg0" style="width:1000px;margin:auto;">
|
||||||
<tr><td>
|
<tr>
|
||||||
|
<td>
|
||||||
<input type=button value='돌아가기' onclick="history.back();"><br>
|
<input type=button value='돌아가기' onclick="history.back();"><br>
|
||||||
<?= banner() ?>
|
<?= banner() ?>
|
||||||
</td></tr></table>
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
@@ -43,7 +43,7 @@ case 3: $tnmt_type = "<font color=cyan>설전</font>"; $tp = "intel"; $tp2 = "
|
|||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<title><?=UniqueConst::$serverName?>: 토너먼트</title>
|
<title><?=UniqueConst::$serverName?>: 토너먼트</title>
|
||||||
<?=WebUtil::printCSS('../d_shared/common.css')?>
|
<?=WebUtil::printCSS('../d_shared/common.css')?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?=WebUtil::printCSS('dist_css/common.css')?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
|
|||||||
+42
-18
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -24,8 +25,7 @@ foreach($db->query('SELECT troop_leader,name FROM troop WHERE nation = %i', $me[
|
|||||||
foreach ($db->query(
|
foreach ($db->query(
|
||||||
'SELECT no,name,turntime,troop,city FROM general WHERE troop!=0 AND nation = %i ORDER BY turntime ASC',
|
'SELECT no,name,turntime,troop,city FROM general WHERE troop!=0 AND nation = %i ORDER BY turntime ASC',
|
||||||
$me['nation']
|
$me['nation']
|
||||||
) as $general
|
) as $general) {
|
||||||
){
|
|
||||||
if (!key_exists($general['troop'], $troops)) {
|
if (!key_exists($general['troop'], $troops)) {
|
||||||
trigger_error("올바르지 않은 부대 소속 {$general['no']}, {$general['name']} : {$general['troop']}");
|
trigger_error("올바르지 않은 부대 소속 {$general['no']}, {$general['name']} : {$general['troop']}");
|
||||||
continue;
|
continue;
|
||||||
@@ -46,8 +46,7 @@ if($troops){
|
|||||||
foreach ($db->queryAllLists(
|
foreach ($db->queryAllLists(
|
||||||
'SELECT general_id, turn_idx, brief FROM general_turn WHERE general_id IN %li AND turn_idx < 5 ORDER BY general_id ASC, turn_idx ASC',
|
'SELECT general_id, turn_idx, brief FROM general_turn WHERE general_id IN %li AND turn_idx < 5 ORDER BY general_id ASC, turn_idx ASC',
|
||||||
array_column($troopLeaders, 'no')
|
array_column($troopLeaders, 'no')
|
||||||
) as [$generalID, $turnIdx, $brief]
|
) as [$generalID, $turnIdx, $brief]) {
|
||||||
){
|
|
||||||
if (!key_exists($generalID, $generalTurnList)) {
|
if (!key_exists($generalID, $generalTurnList)) {
|
||||||
$generalTurnList[$generalID] = [];
|
$generalTurnList[$generalID] = [];
|
||||||
}
|
}
|
||||||
@@ -80,6 +79,7 @@ uasort($troops, function($lhs, $rhs){
|
|||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
@@ -88,10 +88,10 @@ uasort($troops, function($lhs, $rhs){
|
|||||||
<?= WebUtil::preloadJS('dist_js/troop.js') ?>
|
<?= WebUtil::preloadJS('dist_js/troop.js') ?>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printCSS('dist_css/troop.css') ?>
|
<?= WebUtil::printCSS('dist_css/troop.css') ?>
|
||||||
<script>
|
<script>
|
||||||
@@ -102,7 +102,9 @@ uasort($troops, function($lhs, $rhs){
|
|||||||
<body>
|
<body>
|
||||||
<div style="width:1000px;margin:auto;">
|
<div style="width:1000px;margin:auto;">
|
||||||
<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>
|
||||||
<table id="troop_list" class='tb_layout bg0'>
|
<table id="troop_list" class='tb_layout bg0'>
|
||||||
<thead>
|
<thead>
|
||||||
@@ -114,14 +116,18 @@ uasort($troops, function($lhs, $rhs){
|
|||||||
<td width=130 class='bg1 center' style=table-layout:fixed;word-break:break-all;>부대장행동</td>
|
<td width=130 class='bg1 center' style=table-layout:fixed;word-break:break-all;>부대장행동</td>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<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=button id='btnJoinTroop' value='부 대 가 입'>
|
<input type=button id='btnJoinTroop' value='부 대 가 입'>
|
||||||
<?php else : ?>
|
<?php else : ?>
|
||||||
<input type=button id="btnLeaveTroop" value='부 대 탈 퇴'>
|
<input type=button id="btnLeaveTroop" value='부 대 탈 퇴'>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
</td></tr></tfoot>
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tfoot>
|
||||||
<tbody>
|
<tbody>
|
||||||
<?php
|
<?php
|
||||||
foreach ($troops as $troopNo => $troop) {
|
foreach ($troops as $troopNo => $troop) {
|
||||||
@@ -155,9 +161,15 @@ foreach ($troops as $troopNo=>$troop) {
|
|||||||
<td rowspan=2><?= $troopLeader['turnText'] ?></td>
|
<td rowspan=2><?= $troopLeader['turnText'] ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td align=center><font size=2>【턴】 <?=substr($troopLeader['turntime'], 14, 5)?></font></td>
|
<td align=center>
|
||||||
<td align=center><font size=1><?=$troopLeader['name']?></font></td></tr>
|
<font size=2>【턴】 <?= substr($troopLeader['turntime'], 14, 5) ?></font>
|
||||||
<tr><td colspan=5>
|
</td>
|
||||||
|
<td align=center>
|
||||||
|
<font size=1><?= $troopLeader['name'] ?></font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan=5>
|
||||||
|
|
||||||
<?php else : ?>
|
<?php else : ?>
|
||||||
<tr>
|
<tr>
|
||||||
@@ -181,11 +193,18 @@ foreach ($troops as $troopNo=>$troop) {
|
|||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr><td align=center><font size=2>【턴】 <?=substr($troopLeader['turntime'], 14, 5)?></font></td>
|
<tr>
|
||||||
<td align=center><font size=1><?=$troopLeader['name']?></font></td></tr>
|
<td align=center>
|
||||||
<tr><td colspan=5></td></tr>
|
<font size=2>【턴】 <?= substr($troopLeader['turntime'], 14, 5) ?></font>
|
||||||
|
</td>
|
||||||
|
<td align=center>
|
||||||
|
<font size=1><?= $troopLeader['name'] ?></font>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan=5></td>
|
||||||
|
</tr>
|
||||||
<?php endif;
|
<?php endif;
|
||||||
|
|
||||||
} //foreach ($troops as $troopNo=>$troop) {
|
} //foreach ($troops as $troopNo=>$troop) {
|
||||||
?>
|
?>
|
||||||
|
|
||||||
@@ -206,10 +225,15 @@ foreach ($troops as $troopNo=>$troop) {
|
|||||||
</table>
|
</table>
|
||||||
|
|
||||||
<table width=1000 class='tb_layout bg0'>
|
<table width=1000 class='tb_layout bg0'>
|
||||||
<tr><td><?=backButton()?></td></tr>
|
<tr>
|
||||||
<tr><td><?=banner()?> </td></tr>
|
<td><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><?= banner() ?> </td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<?= WebUtil::printJS('dist_js/troop.js') ?>
|
<?= WebUtil::printJS('dist_js/troop.js') ?>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+131
-151
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -18,8 +19,7 @@ if($me){
|
|||||||
$generalID = $me['no'];
|
$generalID = $me['no'];
|
||||||
$nationID = $me['nation'];
|
$nationID = $me['nation'];
|
||||||
$city = $db->queryFirstRow('SELECT city, level, def, wall FROM city WHERE city = %i', $me['city']);
|
$city = $db->queryFirstRow('SELECT city, level, def, wall FROM city WHERE city = %i', $me['city']);
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$generalID = 0;
|
$generalID = 0;
|
||||||
$nationID = 0;
|
$nationID = 0;
|
||||||
$city = [
|
$city = [
|
||||||
@@ -32,26 +32,26 @@ else{
|
|||||||
|
|
||||||
if ($nationID) {
|
if ($nationID) {
|
||||||
$nation = $db->queryFirstRow('SELECT level, type, tech, capital FROM nation WHERE nation = %i', $nationID);
|
$nation = $db->queryFirstRow('SELECT level, type, tech, capital FROM nation WHERE nation = %i', $nationID);
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
$nation = null;
|
$nation = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<title><?= UniqueConst::$serverName ?>: 전투 시뮬레이터</title>
|
<title><?= UniqueConst::$serverName ?>: 전투 시뮬레이터</title>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1100" />
|
<meta name="viewport" content="width=1100" />
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printCSS('css/battle_simulator.css') ?>
|
<?= WebUtil::printCSS('css/battle_simulator.css') ?>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<script>
|
<script>
|
||||||
var defaultSpecialDomestic = '<?= GameConst::$defaultSpecialDomestic ?>';
|
var defaultSpecialDomestic = '<?= GameConst::$defaultSpecialDomestic ?>';
|
||||||
var city = <?= Json::encode($city) ?>;
|
var city = <?= Json::encode($city) ?>;
|
||||||
@@ -59,6 +59,7 @@ var nation = <?=Json::encode($nation)?>;
|
|||||||
</script>
|
</script>
|
||||||
<?= WebUtil::printJS('dist_js/battle_simulator.js') ?>
|
<?= WebUtil::printJS('dist_js/battle_simulator.js') ?>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
<div class="card mb-3">
|
<div class="card mb-3">
|
||||||
@@ -70,34 +71,28 @@ var nation = <?=Json::encode($nation)?>;
|
|||||||
<div class="col-sm-6">
|
<div class="col-sm-6">
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<input type="number" class="form-control" aria-describedby="text_year" value="<?= $startYear ?>" disabled>
|
<input type="number" class="form-control" aria-describedby="text_year" value="<?= $startYear ?>" disabled>
|
||||||
<div class="input-group-append">
|
<div class="input-group-text"> 년 시작 </div>
|
||||||
<span class="input-group-text">년 시작</span>
|
|
||||||
</div>
|
|
||||||
<input type="number" class="form-control" id="year" value="<?= $year ?>" min="<?= $startYear ?>">
|
<input type="number" class="form-control" id="year" value="<?= $year ?>" min="<?= $startYear ?>">
|
||||||
<div class="input-group-append">
|
<div class="input-group-text"> 년 </div>
|
||||||
<span class="input-group-text">년</span>
|
|
||||||
</div>
|
|
||||||
<input type="number" class="form-control" id="month" value="1" min="1" max="12">
|
<input type="number" class="form-control" id="month" value="1" min="1" max="12">
|
||||||
<div class="input-group-append">
|
<div class="input-group-text"> 월 </div>
|
||||||
<span class="input-group-text">월</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-6">
|
<div class="col-sm-6">
|
||||||
<div class="btn-toolbar" role="toolbar">
|
<div class="btn-toolbar" role="toolbar">
|
||||||
<div class="input-group mr-2" role="group">
|
<div class="input-group me-2" role="group">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">
|
||||||
<span class="input-group-text">반복 횟수</span>
|
반복 횟수
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select" id="repeat_cnt">
|
<select class="form-select" id="repeat_cnt">
|
||||||
<option value="1">1회 (로그 표기)</option>
|
<option value="1">1회 (로그 표기)</option>
|
||||||
<option value="1000">1000회 (요약 표기)</option>
|
<option value="1000">1000회 (요약 표기)</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-group mr-2" role="group">
|
<div class="btn-group me-2" role="group">
|
||||||
<button type="button" class="btn btn-danger btn-begin_battle">전투</button>
|
<button type="button" class="btn btn-danger btn-begin_battle">전투</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-group mr-2" role="group">
|
<div class="btn-group me-2" role="group">
|
||||||
<button type="button" class="btn btn-info btn-battle-save">모두 저장</button>
|
<button type="button" class="btn btn-info btn-battle-save">모두 저장</button>
|
||||||
<input type="file" class="form_load_battle_file" accept=".json" style="display: none;" />
|
<input type="file" class="form_load_battle_file" accept=".json" style="display: none;" />
|
||||||
<button type="button" class="btn btn-primary btn-battle-load">모두 불러오기</button>
|
<button type="button" class="btn btn-primary btn-battle-load">모두 불러오기</button>
|
||||||
@@ -115,44 +110,35 @@ var nation = <?=Json::encode($nation)?>;
|
|||||||
</div>
|
</div>
|
||||||
<div class="card-body nation_detail dragpad_battle">
|
<div class="card-body nation_detail dragpad_battle">
|
||||||
<div class="input-group mb-1">
|
<div class="input-group mb-1">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">국가 성향
|
||||||
<span class="input-group-text">국가 성향</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_nation_type" style="width:25ch;">
|
<select class="form-select form_nation_type" style="width:25ch;">
|
||||||
<?php foreach (GameConst::$availableNationType as $typeID) : ?>
|
<?php foreach (GameConst::$availableNationType as $typeID) : ?>
|
||||||
<?php $nationTypeClass = buildNationTypeClass($typeID) ?>
|
<?php $nationTypeClass = buildNationTypeClass($typeID) ?>
|
||||||
<option value="<?= $typeID ?>"><?= $nationTypeClass->getName() ?> (<?= $nationTypeClass::$pros ?>, <?= $nationTypeClass::$cons ?>)</option>
|
<option value="<?= $typeID ?>"><?= $nationTypeClass->getName() ?> (<?= $nationTypeClass::$pros ?>, <?= $nationTypeClass::$cons ?>)</option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">기술 </div>
|
||||||
<span class="input-group-text">기술</span>
|
|
||||||
</div>
|
|
||||||
<input type="number" class="form-control form_tech" value="1" min="0" max="12">
|
<input type="number" class="form-control form_tech" value="1" min="0" max="12">
|
||||||
<div class="input-group-append">
|
<div class="input-group-text">등급 </div>
|
||||||
<span class="input-group-text">등급</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group mb-3">
|
<div class="input-group mb-3">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">국가 규모 </div>
|
||||||
<span class="input-group-text">국가 규모</span>
|
<select class="form-select form_nation_level">
|
||||||
</div>
|
|
||||||
<select class="custom-select form_nation_level">
|
|
||||||
<?php foreach (getNationLevelList() as $nationLevel => [$name, $chiefCnt, $cityCnt]) : ?>
|
<?php foreach (getNationLevelList() as $nationLevel => [$name, $chiefCnt, $cityCnt]) : ?>
|
||||||
<option value="<?= $nationLevel ?>"><?= $name ?></option>
|
<option value="<?= $nationLevel ?>"><?= $name ?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">도시 규모
|
||||||
<span class="input-group-text">도시 규모</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_city_level">
|
<select class="form-select form_city_level">
|
||||||
<?php foreach (getCityLevelList() as $levelID => $name) : ?>
|
<?php foreach (getCityLevelList() as $levelID => $name) : ?>
|
||||||
<option value="<?= $levelID ?>"><?= $name ?></option>
|
<option value="<?= $levelID ?>"><?= $name ?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">수도
|
||||||
<span class="input-group-text">수도</span>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group-append btn-group btn-group-toggle" data-toggle="buttons">
|
<div class="input-group-text btn-group btn-group-toggle" data-toggle="buttons">
|
||||||
<label class="btn btn-secondary">
|
<label class="btn btn-secondary">
|
||||||
<input type="radio" name="is_attacker_capital" class="form_is_capital" value="1" autocomplete="off">Y
|
<input type="radio" name="is_attacker_capital" class="form_is_capital" value="1" autocomplete="off">Y
|
||||||
</label>
|
</label>
|
||||||
@@ -169,12 +155,12 @@ var nation = <?=Json::encode($nation)?>;
|
|||||||
</div>
|
</div>
|
||||||
<div class="card mb-2 attacker_form general_form" data-general_no='1'>
|
<div class="card mb-2 attacker_form general_form" data-general_no='1'>
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<div class="float-sm-left" style="line-height:25px;">출병자 설정</div>
|
<div class="float-sm-start" style="line-height:25px;">출병자 설정</div>
|
||||||
<div class="float-sm-right btn-toolbar" role="toolbar">
|
<div class="float-sm-end btn-toolbar" role="toolbar">
|
||||||
<div class="btn-group btn-group-sm mr-2" role="group">
|
<div class="btn-group btn-group-sm me-2" role="group">
|
||||||
<button type="button" class="btn btn-success btn-general-import-server">서버에서 가져오기</button>
|
<button type="button" class="btn btn-success btn-general-import-server">서버에서 가져오기</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-group btn-group-sm mr-2" role="group">
|
<div class="btn-group btn-group-sm me-2" role="group">
|
||||||
<button type="button" class="btn btn-info btn-general-save">저장</button>
|
<button type="button" class="btn btn-info btn-general-save">저장</button>
|
||||||
<input type="file" class="form_load_general_file" accept=".json" style="display: none;" />
|
<input type="file" class="form_load_general_file" accept=".json" style="display: none;" />
|
||||||
<button type="button" class="btn btn-primary btn-general-load">불러오기</button>
|
<button type="button" class="btn btn-primary btn-general-load">불러오기</button>
|
||||||
@@ -190,44 +176,38 @@ var nation = <?=Json::encode($nation)?>;
|
|||||||
</div>
|
</div>
|
||||||
<div class="card-body dragpad_battle">
|
<div class="card-body dragpad_battle">
|
||||||
<div class="input-group mb-1">
|
<div class="input-group mb-1">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">국가 성향
|
||||||
<span class="input-group-text">국가 성향</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_nation_type" style="width:25ch;">
|
<select class="form-select form_nation_type" style="width:25ch;">
|
||||||
<?php foreach (GameConst::$availableNationType as $typeID) : ?>
|
<?php foreach (GameConst::$availableNationType as $typeID) : ?>
|
||||||
<?php $nationTypeObj = buildNationTypeClass($typeID) ?>
|
<?php $nationTypeObj = buildNationTypeClass($typeID) ?>
|
||||||
<option value="<?= $typeID ?>"><?= $nationTypeObj->getName() ?> (<?= $nationTypeObj::$pros ?>, <?= $nationTypeObj::$cons ?>)</option>
|
<option value="<?= $typeID ?>"><?= $nationTypeObj->getName() ?> (<?= $nationTypeObj::$pros ?>, <?= $nationTypeObj::$cons ?>)</option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">기술
|
||||||
<span class="input-group-text">기술</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_tech" value="1" min="0" max="12">
|
<input type="number" class="form-control form_tech" value="1" min="0" max="12">
|
||||||
<div class="input-group-append">
|
<div class="input-group-text">등급
|
||||||
<span class="input-group-text">등급</span>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group mb-3">
|
<div class="input-group mb-3">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">국가 규모
|
||||||
<span class="input-group-text">국가 규모</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_nation_level">
|
<select class="form-select form_nation_level">
|
||||||
<?php foreach (getNationLevelList() as $nationLevel => [$name, $chiefCnt, $cityCnt]) : ?>
|
<?php foreach (getNationLevelList() as $nationLevel => [$name, $chiefCnt, $cityCnt]) : ?>
|
||||||
<option value="<?= $nationLevel ?>"><?= $name ?></option>
|
<option value="<?= $nationLevel ?>"><?= $name ?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">도시 규모
|
||||||
<span class="input-group-text">도시 규모</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_city_level">
|
<select class="form-select form_city_level">
|
||||||
<?php foreach (getCityLevelList() as $levelID => $name) : ?>
|
<?php foreach (getCityLevelList() as $levelID => $name) : ?>
|
||||||
<option value="<?= $levelID ?>"><?= $name ?></option>
|
<option value="<?= $levelID ?>"><?= $name ?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">수도
|
||||||
<span class="input-group-text">수도</span>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group-append btn-group btn-group-toggle" data-toggle="buttons">
|
<div class="input-group-text btn-group btn-group-toggle" data-toggle="buttons">
|
||||||
<label class="btn btn-secondary">
|
<label class="btn btn-secondary">
|
||||||
<input type="radio" name="is_defender_capital" class="form_is_capital" value="1" autocomplete="off">Y
|
<input type="radio" name="is_defender_capital" class="form_is_capital" value="1" autocomplete="off">Y
|
||||||
</label>
|
</label>
|
||||||
@@ -237,12 +217,10 @@ var nation = <?=Json::encode($nation)?>;
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group mb-1">
|
<div class="input-group mb-1">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">수비
|
||||||
<span class="input-group-text">수비</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_def" id="city_def" value="1000" min="10" step="10">
|
<input type="number" class="form-control form_def" id="city_def" value="1000" min="10" step="10">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">성벽
|
||||||
<span class="input-group-text">성벽</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_wall" id="city_wall" value="1000" min="0" step="10">
|
<input type="number" class="form-control form_wall" id="city_wall" value="1000" min="0" step="10">
|
||||||
</div>
|
</div>
|
||||||
@@ -250,9 +228,9 @@ var nation = <?=Json::encode($nation)?>;
|
|||||||
</div>
|
</div>
|
||||||
<div class="card mb-2 defender_add_form">
|
<div class="card mb-2 defender_add_form">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<div class="float-sm-left" style="line-height:25px;">수비자 설정</div>
|
<div class="float-sm-start" style="line-height:25px;">수비자 설정</div>
|
||||||
<div class="float-sm-right btn-toolbar" role="toolbar">
|
<div class="float-sm-end btn-toolbar" role="toolbar">
|
||||||
<div class="btn-group btn-group-sm mr-2" role="group">
|
<div class="btn-group btn-group-sm me-2" role="group">
|
||||||
<button type="button" class="btn btn-dark btn-reorder_defender">수비 순서대로 정렬</button>
|
<button type="button" class="btn btn-dark btn-reorder_defender">수비 순서대로 정렬</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-group btn-group-sm" role="group">
|
<div class="btn-group btn-group-sm" role="group">
|
||||||
@@ -263,12 +241,12 @@ var nation = <?=Json::encode($nation)?>;
|
|||||||
</div>
|
</div>
|
||||||
<div class="card mb-2 form_sample">
|
<div class="card mb-2 form_sample">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<div class="float-sm-left" style="line-height:25px;">수비자 설정</div>
|
<div class="float-sm-start" style="line-height:25px;">수비자 설정</div>
|
||||||
<div class="float-sm-right btn-toolbar" role="toolbar">
|
<div class="float-sm-end btn-toolbar" role="toolbar">
|
||||||
<div class="btn-group btn-group-sm mr-2" role="group">
|
<div class="btn-group btn-group-sm me-2" role="group">
|
||||||
<button type="button" class="btn btn-success btn-general-import-server">서버에서 가져오기</button>
|
<button type="button" class="btn btn-success btn-general-import-server">서버에서 가져오기</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-group btn-group-sm mr-2" role="group">
|
<div class="btn-group btn-group-sm me-2" role="group">
|
||||||
<button type="button" class="btn btn-info btn-general-save">저장</button>
|
<button type="button" class="btn btn-info btn-general-save">저장</button>
|
||||||
<input type="file" class="form_load_general_file" accept=".json" style="display: none;" />
|
<input type="file" class="form_load_general_file" accept=".json" style="display: none;" />
|
||||||
<button type="button" class="btn btn-primary btn-general-load">불러오기</button>
|
<button type="button" class="btn btn-primary btn-general-load">불러오기</button>
|
||||||
@@ -281,14 +259,12 @@ var nation = <?=Json::encode($nation)?>;
|
|||||||
</div>
|
</div>
|
||||||
<div class="card-body general_detail">
|
<div class="card-body general_detail">
|
||||||
<div class="input-group mb-3">
|
<div class="input-group mb-3">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">이름
|
||||||
<span class="input-group-text">이름</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="text" class="form-control form_general_name" value="무명" style="width:15ch;">
|
<input type="text" class="form-control form_general_name" value="무명" style="width:15ch;">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">직위
|
||||||
<span class="input-group-text">직위</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_officer_level" style="width:8ch;">
|
<select class="form-select form_officer_level" style="width:8ch;">
|
||||||
<option value="1">일반</option>
|
<option value="1">일반</option>
|
||||||
<option value="4">태수</option>
|
<option value="4">태수</option>
|
||||||
<option value="3">군사</option>
|
<option value="3">군사</option>
|
||||||
@@ -298,49 +274,42 @@ var nation = <?=Json::encode($nation)?>;
|
|||||||
<option value="11">참모</option>
|
<option value="11">참모</option>
|
||||||
<option value="12">군주</option>
|
<option value="12">군주</option>
|
||||||
</select>
|
</select>
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">Level
|
||||||
<span class="input-group-text">Level</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_exp_level" value="20" min="0" max="300" step="1">
|
<input type="number" class="form-control form_exp_level" value="20" min="0" max="300" step="1">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group mb-1">
|
<div class="input-group mb-1">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">통솔
|
||||||
<span class="input-group-text">통솔</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_leadership" value="50" min="1" max="300" step="1">
|
<input type="number" class="form-control form_leadership" value="50" min="1" max="300" step="1">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">무력
|
||||||
<span class="input-group-text">무력</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_strength" value="50" min="1" max="300" step="1">
|
<input type="number" class="form-control form_strength" value="50" min="1" max="300" step="1">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">지력
|
||||||
<span class="input-group-text">지력</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_intel" value="50" min="1" max="300" step="1">
|
<input type="number" class="form-control form_intel" value="50" min="1" max="300" step="1">
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group mb-1">
|
<div class="input-group mb-1">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">명마
|
||||||
<span class="input-group-text">명마</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_general_horse">
|
<select class="form-select form_general_horse">
|
||||||
<option value='None'>-</option>
|
<option value='None'>-</option>
|
||||||
<?php foreach (GameConst::$allItems['horse'] as $horseID => $cnt) : ?>
|
<?php foreach (GameConst::$allItems['horse'] as $horseID => $cnt) : ?>
|
||||||
<option value="<?= $horseID ?>"><?= getItemName($horseID) ?></option>
|
<option value="<?= $horseID ?>"><?= getItemName($horseID) ?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">무기
|
||||||
<span class="input-group-text">무기</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_general_weap">
|
<select class="form-select form_general_weap">
|
||||||
<option value='None'>-</option>
|
<option value='None'>-</option>
|
||||||
<?php foreach (GameConst::$allItems['weapon'] as $weaponID => $cnt) : ?>
|
<?php foreach (GameConst::$allItems['weapon'] as $weaponID => $cnt) : ?>
|
||||||
<option value="<?= $weaponID ?>"><?= getItemName($weaponID) ?></option>
|
<option value="<?= $weaponID ?>"><?= getItemName($weaponID) ?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">서적
|
||||||
<span class="input-group-text">서적</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_general_book">
|
<select class="form-select form_general_book">
|
||||||
<option value='None'>-</option>
|
<option value='None'>-</option>
|
||||||
<?php foreach (GameConst::$allItems['book'] as $bookID => $cnt) : ?>
|
<?php foreach (GameConst::$allItems['book'] as $bookID => $cnt) : ?>
|
||||||
<option value="<?= $bookID ?>"><?= getItemName($bookID) ?></option>
|
<option value="<?= $bookID ?>"><?= getItemName($bookID) ?></option>
|
||||||
@@ -348,21 +317,17 @@ var nation = <?=Json::encode($nation)?>;
|
|||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group mb-3">
|
<div class="input-group mb-3">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">부상
|
||||||
<span class="input-group-text">부상</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_injury" value="0" min="0" max="80" step="1">
|
<input type="number" class="form-control form_injury" value="0" min="0" max="80" step="1">
|
||||||
<div class="input-group-append">
|
<div class="input-group-text">%(<span class="injury_helptext">건강</span>)
|
||||||
<span class="input-group-text">%(<span class="injury_helptext">건강</span>)</span>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">군량
|
||||||
<span class="input-group-text">군량</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_rice" value="5000" min="50" max="40000" step="50">
|
<input type="number" class="form-control form_rice" value="5000" min="50" max="40000" step="50">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">도구
|
||||||
<span class="input-group-text">도구</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_general_item">
|
<select class="form-select form_general_item">
|
||||||
<option value='None'>-</option>
|
<option value='None'>-</option>
|
||||||
<?php foreach (GameConst::$allItems['item'] as $itemID => $cnt) : ?>
|
<?php foreach (GameConst::$allItems['item'] as $itemID => $cnt) : ?>
|
||||||
<option value="<?= $itemID ?>"><?= getItemName($itemID) ?></option>
|
<option value="<?= $itemID ?>"><?= getItemName($itemID) ?></option>
|
||||||
@@ -370,93 +335,83 @@ var nation = <?=Json::encode($nation)?>;
|
|||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group mb-1">
|
<div class="input-group mb-1">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">병종
|
||||||
<span class="input-group-text">병종</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_crewtype">
|
<select class="form-select form_crewtype">
|
||||||
<?php foreach (GameUnitConst::all() as $crewTypeID => $crewType) : ?>
|
<?php foreach (GameUnitConst::all() as $crewTypeID => $crewType) : ?>
|
||||||
<?php if($crewType->armType === GameUnitConst::T_CASTLE){ continue; } ?>
|
<?php if ($crewType->armType === GameUnitConst::T_CASTLE) {
|
||||||
|
continue;
|
||||||
|
} ?>
|
||||||
<option value="<?= $crewTypeID ?>"><?= $crewType->name ?></option>
|
<option value="<?= $crewTypeID ?>"><?= $crewType->name ?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">병사
|
||||||
<span class="input-group-text">병사</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_crew" value="7000" min="100" step="100">
|
<input type="number" class="form-control form_crew" value="7000" min="100" step="100">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">성격
|
||||||
<span class="input-group-text">성격</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_general_character">
|
<select class="form-select form_general_character">
|
||||||
<?php foreach (getCharacterList(false) as $characterID => [$name, $info]) : ?>
|
<?php foreach (getCharacterList(false) as $characterID => [$name, $info]) : ?>
|
||||||
<option value="<?= $characterID ?>"><?= $name ?></option>
|
<option value="<?= $characterID ?>"><?= $name ?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group mb-3">
|
<div class="input-group mb-3">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">훈련
|
||||||
<span class="input-group-text">훈련</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_train" value="100" min="40" max="<?= GameConst::$maxTrainByWar ?>" step="1">
|
<input type="number" class="form-control form_train" value="100" min="40" max="<?= GameConst::$maxTrainByWar ?>" step="1">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">사기
|
||||||
<span class="input-group-text">사기</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_atmos" value="100" min="40" max="<?= GameConst::$maxAtmosByWar ?>" step="1">
|
<input type="number" class="form-control form_atmos" value="100" min="40" max="<?= GameConst::$maxAtmosByWar ?>" step="1">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">전특
|
||||||
<span class="input-group-text">전특</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_general_special_war">
|
<select class="form-select form_general_special_war">
|
||||||
<?php foreach (SpecialityHelper::getSpecialWarList(false) as $specialWarID => $specialObj) : ?>
|
<?php foreach (SpecialityHelper::getSpecialWarList(false) as $specialWarID => $specialObj) : ?>
|
||||||
<option value="<?= $specialWarID ?>"><?= $specialObj->getName() ?></option>
|
<option value="<?= $specialWarID ?>"><?= $specialObj->getName() ?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group mb-1">
|
<div class="input-group mb-1">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">보병숙련
|
||||||
<span class="input-group-text">보병숙련</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_dex1">
|
<select class="form-select form_dex1">
|
||||||
<?php foreach (getDexLevelList() as $dexLevel => [$dexAmount, $color, $name]) : ?>
|
<?php foreach (getDexLevelList() as $dexLevel => [$dexAmount, $color, $name]) : ?>
|
||||||
<option value="<?= $dexAmount ?>"><?= "{$name} (" . number_format($dexAmount) . ")" ?></option>
|
<option value="<?= $dexAmount ?>"><?= "{$name} (" . number_format($dexAmount) . ")" ?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">궁병숙련
|
||||||
<span class="input-group-text">궁병숙련</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_dex2">
|
<select class="form-select form_dex2">
|
||||||
<?php foreach (getDexLevelList() as $dexLevel => [$dexAmount, $color, $name]) : ?>
|
<?php foreach (getDexLevelList() as $dexLevel => [$dexAmount, $color, $name]) : ?>
|
||||||
<option value="<?= $dexAmount ?>"><?= "{$name} (" . number_format($dexAmount) . ")" ?></option>
|
<option value="<?= $dexAmount ?>"><?= "{$name} (" . number_format($dexAmount) . ")" ?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">기병숙련
|
||||||
<span class="input-group-text">기병숙련</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_dex3">
|
<select class="form-select form_dex3">
|
||||||
<?php foreach (getDexLevelList() as $dexLevel => [$dexAmount, $color, $name]) : ?>
|
<?php foreach (getDexLevelList() as $dexLevel => [$dexAmount, $color, $name]) : ?>
|
||||||
<option value="<?= $dexAmount ?>"><?= "{$name} (" . number_format($dexAmount) . ")" ?></option>
|
<option value="<?= $dexAmount ?>"><?= "{$name} (" . number_format($dexAmount) . ")" ?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group mb-3">
|
<div class="input-group mb-3">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">귀병숙련
|
||||||
<span class="input-group-text">귀병숙련</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_dex4">
|
<select class="form-select form_dex4">
|
||||||
<?php foreach (getDexLevelList() as $dexLevel => [$dexAmount, $color, $name]) : ?>
|
<?php foreach (getDexLevelList() as $dexLevel => [$dexAmount, $color, $name]) : ?>
|
||||||
<option value="<?= $dexAmount ?>"><?= "{$name} (" . number_format($dexAmount) . ")" ?></option>
|
<option value="<?= $dexAmount ?>"><?= "{$name} (" . number_format($dexAmount) . ")" ?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">차병숙련
|
||||||
<span class="input-group-text">차병숙련</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_dex5">
|
<select class="form-select form_dex5">
|
||||||
<?php foreach (getDexLevelList() as $dexLevel => [$dexAmount, $color, $name]) : ?>
|
<?php foreach (getDexLevelList() as $dexLevel => [$dexAmount, $color, $name]) : ?>
|
||||||
<option value="<?= $dexAmount ?>"><?= "{$name} (" . number_format($dexAmount) . ")" ?></option>
|
<option value="<?= $dexAmount ?>"><?= "{$name} (" . number_format($dexAmount) . ")" ?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
<div class="input-group-prepend only_defender">
|
<div class="input-group-text only_defender">수비여부
|
||||||
<span class="input-group-text">수비여부</span>
|
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select form_defence_train only_defender">
|
<select class="form-select form_defence_train only_defender">
|
||||||
<option value="90">훈사 90</option>
|
<option value="90">훈사 90</option>
|
||||||
<option value="80">훈사 80</option>
|
<option value="80">훈사 80</option>
|
||||||
<option value="60">훈사 60</option>
|
<option value="60">훈사 60</option>
|
||||||
@@ -465,16 +420,13 @@ var nation = <?=Json::encode($nation)?>;
|
|||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group mb-1">
|
<div class="input-group mb-1">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">전투 수
|
||||||
<span class="input-group-text">전투 수</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_warnum" value="0" step="1">
|
<input type="number" class="form-control form_warnum" value="0" step="1">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">승리 수
|
||||||
<span class="input-group-text">승리 수</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_killnum" value="0" step="1">
|
<input type="number" class="form-control form_killnum" value="0" step="1">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-text">사살 수
|
||||||
<span class="input-group-text">사살 수</span>
|
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_killcrew" value="0" step="1">
|
<input type="number" class="form-control form_killcrew" value="0" step="1">
|
||||||
</div>
|
</div>
|
||||||
@@ -490,15 +442,42 @@ var nation = <?=Json::encode($nation)?>;
|
|||||||
</div>
|
</div>
|
||||||
<table class="table">
|
<table class="table">
|
||||||
<tbody id="battle_result_summary">
|
<tbody id="battle_result_summary">
|
||||||
<tr><th style='width:18ch;'>전투 일시</th><td id='result_datetime'></td></tr>
|
<tr>
|
||||||
<tr><th>전투 횟수</th><td id='result_warcnt'></td></tr>
|
<th style='width:18ch;'>전투 일시</th>
|
||||||
<tr><th>전투 페이즈</th><td id='result_phase'></td></tr>
|
<td id='result_datetime'></td>
|
||||||
<tr><th>준 피해</th><td><span id='result_killed'>0</span><span id='result_varKilled'> (<span id='result_minKilled'>0</span> ~ <span id='result_maxKilled'>0</span>)</span></td></tr>
|
</tr>
|
||||||
<tr><th>받은 피해</th><td><span id='result_dead'>0</span><span id='result_varDead'> (<span id='result_minDead'>0</span> ~ <span id='result_maxDead'>0</span>)</span></td></tr>
|
<tr>
|
||||||
<tr><th>출병자 군량 소모</th><td id='result_attackerRice'></td></tr>
|
<th>전투 횟수</th>
|
||||||
<tr><th>수비자 군량 소모</th><td id='result_defenderRice'></td></tr>
|
<td id='result_warcnt'></td>
|
||||||
<tr><th>공격자 스킬</th><td id='result_attackerSkills'></td></tr>
|
</tr>
|
||||||
<tr class='result_defenderSkills'><th>수비자1 스킬</th><td></td></tr>
|
<tr>
|
||||||
|
<th>전투 페이즈</th>
|
||||||
|
<td id='result_phase'></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>준 피해</th>
|
||||||
|
<td><span id='result_killed'>0</span><span id='result_varKilled'> (<span id='result_minKilled'>0</span> ~ <span id='result_maxKilled'>0</span>)</span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>받은 피해</th>
|
||||||
|
<td><span id='result_dead'>0</span><span id='result_varDead'> (<span id='result_minDead'>0</span> ~ <span id='result_maxDead'>0</span>)</span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>출병자 군량 소모</th>
|
||||||
|
<td id='result_attackerRice'></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>수비자 군량 소모</th>
|
||||||
|
<td id='result_defenderRice'></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>공격자 스킬</th>
|
||||||
|
<td id='result_attackerSkills'></td>
|
||||||
|
</tr>
|
||||||
|
<tr class='result_defenderSkills'>
|
||||||
|
<th>수비자1 스킬</th>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
@@ -546,4 +525,5 @@ var nation = <?=Json::encode($nation)?>;
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+3
-1
@@ -1,2 +1,4 @@
|
|||||||
@charset "UTF-8";
|
|
||||||
|
|
||||||
|
.form-group{
|
||||||
|
margin-bottom: 1em;
|
||||||
|
}
|
||||||
+1
-1
@@ -12,7 +12,7 @@ function printLimitMsg($turntime) {
|
|||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?=WebUtil::printCSS('../d_shared/common.css')?>
|
<?=WebUtil::printCSS('../d_shared/common.css')?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?=WebUtil::printCSS('dist_css/common.css')?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ function requireAdminPermissionHTML()
|
|||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?= WebUtil::printCSS('css/common.css') ?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
|
|||||||
@@ -118,6 +118,7 @@ if (!$otherTextInfo) {
|
|||||||
<meta name="viewport" content="width=500" />
|
<meta name="viewport" content="width=500" />
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('d_shared/base_map.js') ?>
|
<?= WebUtil::printJS('d_shared/base_map.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors_vue.js', true) ?>
|
<?= WebUtil::printJS('dist_js/vendors_vue.js', true) ?>
|
||||||
<?= WebUtil::printJS('dist_js/v_main.js', true) ?>
|
<?= WebUtil::printJS('dist_js/v_main.js', true) ?>
|
||||||
|
|||||||
+81
-181
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -23,6 +24,7 @@ if($session->userGrade < 5 && !$allowReset){
|
|||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<title>설치</title>
|
<title>설치</title>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
@@ -30,13 +32,14 @@ if($session->userGrade < 5 && !$allowReset){
|
|||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/install.js') ?>
|
<?= WebUtil::printJS('dist_js/install.js') ?>
|
||||||
<?=WebUtil::printCSS('css/normalize.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('css/install.css') ?>
|
<?= WebUtil::printCSS('css/install.css') ?>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div class="container" style="min-width:720px;">
|
<div class="container">
|
||||||
<h1 class="row justify-content-md-center">삼국지 모의전투 HiDCHe 리셋</h1>
|
<h1 class="row justify-content-md-center">삼국지 모의전투 HiDCHe 리셋</h1>
|
||||||
<div class="row justify-content-md-center">
|
<div class="row justify-content-md-center">
|
||||||
|
|
||||||
@@ -52,30 +55,14 @@ if($session->userGrade < 5 && !$allowReset){
|
|||||||
<label for="turnterm" class="col-sm-3 col-form-label">턴 시간(분)</label>
|
<label for="turnterm" class="col-sm-3 col-form-label">턴 시간(분)</label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<div id="turnterm" class="btn-group btn-group-toggle" data-toggle="buttons">
|
<div id="turnterm" class="btn-group btn-group-toggle" data-toggle="buttons">
|
||||||
<label class="btn btn-secondary">
|
<input type="radio" class="btn-check" name="turnterm" id="turnterm_120" value="120"><label for="turnterm_120" class="btn btn-secondary">120</label>
|
||||||
<input type="radio" name="turnterm" value="120">120
|
<input type="radio" class="btn-check" name="turnterm" id="turnterm_60" value="60" checked><label for="turnterm_60" class="btn btn-secondary">60</label>
|
||||||
</label>
|
<input type="radio" class="btn-check" name="turnterm" id="turnterm_30" value="30"><label for="turnterm_30" class="btn btn-secondary">30</label>
|
||||||
<label class="btn btn-secondary active">
|
<input type="radio" class="btn-check" name="turnterm" id="turnterm_20" value="20"><label for="turnterm_20" class="btn btn-secondary">20</label>
|
||||||
<input type="radio" name="turnterm" value="60" checked>60
|
<input type="radio" class="btn-check" name="turnterm" id="turnterm_10" value="10"><label for="turnterm_10" class="btn btn-secondary">10</label>
|
||||||
</label>
|
<input type="radio" class="btn-check" name="turnterm" id="turnterm_5" value="5"><label for="turnterm_5" class="btn btn-secondary">5</label>
|
||||||
<label class="btn btn-secondary">
|
<input type="radio" class="btn-check" name="turnterm" id="turnterm_2" value="2"><label for="turnterm_2" class="btn btn-secondary">2</label>
|
||||||
<input type="radio" name="turnterm" value="30">30
|
<input type="radio" class="btn-check" name="turnterm" id="turnterm_1" value="1"><label for="turnterm_1" class="btn btn-secondary">1</label>
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="radio" name="turnterm" value="20">20
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="radio" name="turnterm" value="10">10
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="radio" name="turnterm" value="5">5
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="radio" name="turnterm" value="2">2
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="radio" name="turnterm" value="1">1
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -85,12 +72,8 @@ if($session->userGrade < 5 && !$allowReset){
|
|||||||
<label for="sync" class="col-sm-3 col-form-label">시간 동기화</label>
|
<label for="sync" class="col-sm-3 col-form-label">시간 동기화</label>
|
||||||
<div class="col-sm-9" style="display: inline-flex;">
|
<div class="col-sm-9" style="display: inline-flex;">
|
||||||
<div id="sync" class="btn-group btn-group-toggle" data-toggle="buttons">
|
<div id="sync" class="btn-group btn-group-toggle" data-toggle="buttons">
|
||||||
<label class="btn btn-secondary active">
|
<input class="btn-check" id="sync_1" type="radio" name="sync" value="1" checked><label class="btn btn-secondary" for="sync_1">Y</label>
|
||||||
<input type="radio" name="sync" value="1" checked>Y
|
<input class="btn-check" id="sync_0" type="radio" name="sync" value="0"><label class="btn btn-secondary" for="sync_0">N</label>
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="radio" name="sync" value="0">N
|
|
||||||
</label>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<small class="text-muted">
|
<small class="text-muted">
|
||||||
@@ -112,12 +95,8 @@ if($session->userGrade < 5 && !$allowReset){
|
|||||||
<label for="fiction" class="col-sm-3 col-form-label">NPC 상성</label>
|
<label for="fiction" class="col-sm-3 col-form-label">NPC 상성</label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<div id="fiction" class="btn-group btn-group-toggle" data-toggle="buttons">
|
<div id="fiction" class="btn-group btn-group-toggle" data-toggle="buttons">
|
||||||
<label class="btn btn-secondary active">
|
<input type="radio" id="fiction_0" class="btn-check" name="fiction" value="0" checked><label for="fiction_0" class="btn btn-secondary"> 연의 </label>
|
||||||
<input type="radio" name="fiction" value="0" checked>연의
|
<input type="radio" id="fiction_1" class="btn-check" name="fiction" value="1"><label for="fiction_1" class="btn btn-secondary"> 가상 </label>
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="radio" name="fiction" value="1">가상
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -126,12 +105,8 @@ if($session->userGrade < 5 && !$allowReset){
|
|||||||
<label for="extend" class="col-sm-3 col-form-label">확장 NPC</label>
|
<label for="extend" class="col-sm-3 col-form-label">확장 NPC</label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<div id="extend" class="btn-group btn-group-toggle" data-toggle="buttons">
|
<div id="extend" class="btn-group btn-group-toggle" data-toggle="buttons">
|
||||||
<label class="btn btn-secondary active">
|
<input type="radio" id="extend_1" class="btn-check" name="extend" value="1" checked><label for="extend_1" class="btn btn-secondary">포함</label>
|
||||||
<input type="radio" name="extend" value="1" checked>포함
|
<input type="radio" id="extend_0" class="btn-check" name="extend" value="0"><label for="extend_0" class="btn btn-secondary">미포함</label>
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="radio" name="extend" value="0">미포함
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -140,12 +115,8 @@ if($session->userGrade < 5 && !$allowReset){
|
|||||||
<label for="block_general_create" class="col-sm-3 col-form-label">장수 임의 생성</label>
|
<label for="block_general_create" class="col-sm-3 col-form-label">장수 임의 생성</label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<div id="block_general_create" class="btn-group btn-group-toggle" data-toggle="buttons">
|
<div id="block_general_create" class="btn-group btn-group-toggle" data-toggle="buttons">
|
||||||
<label class="btn btn-secondary">
|
<input type="radio" class="btn-check" id="block_general_create_0" name="block_general_create" value="0" checked><label for="block_general_create_0" class="btn btn-secondary">가능</label>
|
||||||
<input type="radio" name="block_general_create" value="0" checked>가능
|
<input type="radio" class="btn-check" id="block_general_create_1" name="block_general_create" value="1"><label for="block_general_create_1" class="btn btn-secondary">불가</label>
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary active">
|
|
||||||
<input type="radio" name="block_general_create" value="1">불가
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -154,15 +125,9 @@ if($session->userGrade < 5 && !$allowReset){
|
|||||||
<label for="npcmode" class="col-sm-3 col-form-label">NPC 빙의</label>
|
<label for="npcmode" class="col-sm-3 col-form-label">NPC 빙의</label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<div id="npcmode" class="btn-group btn-group-toggle" data-toggle="buttons">
|
<div id="npcmode" class="btn-group btn-group-toggle" data-toggle="buttons">
|
||||||
<label class="btn btn-secondary">
|
<input type="radio" id="npcmode_1" class="btn-check" name="npcmode" value="1"><label for="npcmode_1" class="btn btn-secondary"> 가능 </label>
|
||||||
<input type="radio" name="npcmode" value="1">가능
|
<input type="radio" id="npcmode_0" class="btn-check" name="npcmode" value="0" checked><label for="npcmode_0" class="btn btn-secondary"> 불가 </label>
|
||||||
</label>
|
<input type="radio" id="npcmode_2" class="btn-check" name="npcmode" value="2"><label for="npcmode_2" class="btn btn-secondary"> 선택 생성 가능 </label>
|
||||||
<label class="btn btn-secondary active">
|
|
||||||
<input type="radio" name="npcmode" value="0" checked>불가
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="radio" name="npcmode" value="2">선택 생성 가능
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -171,31 +136,20 @@ if($session->userGrade < 5 && !$allowReset){
|
|||||||
<label class="col-sm-3 col-form-label" id="autorun_set_label">휴식 턴 시 장수 턴</label>
|
<label class="col-sm-3 col-form-label" id="autorun_set_label">휴식 턴 시 장수 턴</label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<div class="input-group-prepend btn-group btn-group-toggle" data-toggle="buttons">
|
<div class="btn-group btn-group-toggle" data-toggle="buttons">
|
||||||
<label class="btn btn-secondary">
|
<input type="checkbox" id="autorun_develop" class="autorun_user_chk btn-check" data-key="develop" name="autorun_user[]" value="develop"><label class="btn btn-secondary" for="autorun_develop">내정</label>
|
||||||
<input type="checkbox" class="autorun_user_chk" data-key="develop" name="autorun_user[]" value="develop">내정
|
<input type="checkbox" id="autorun_warp" class="autorun_user_chk btn-check" data-key="warp" name="autorun_user[]" value="warp"><label class="btn btn-secondary" for="autorun_warp">순간이동</label>
|
||||||
</label>
|
<input type="checkbox" id="autorun_recruit" class="autorun_user_chk btn-check" data-key="recruit" name="autorun_user[]" value="recruit"><label class="btn btn-secondary" for="autorun_recruit">징병</label>
|
||||||
<label class="btn btn-secondary">
|
<input type="checkbox" id="autorun_recruit_high" class="autorun_user_chk btn-check" data-key="recruit_high" name="autorun_user[]" value="recruit_high"><label class="btn btn-secondary" for="autorun_recruit_high">모병</label>
|
||||||
<input type="checkbox" class="autorun_user_chk" data-key="warp" name="autorun_user[]" value="warp">순간이동
|
<input type="checkbox" id="autorun_train" class="autorun_user_chk btn-check" data-key="train" name="autorun_user[]" value="train"><label class="btn btn-secondary" for="autorun_train">훈사</label>
|
||||||
</label>
|
<input type="checkbox" id="autorun_battle" class="autorun_user_chk btn-check" data-key="battle" name="autorun_user[]" value="battle"><label class="btn btn-secondary" for="autorun_battle">출병</label>
|
||||||
<label class="btn btn-secondary">
|
<input type="checkbox" id="autorun_chief" class="autorun_user_chk btn-check" data-key="chief" name="autorun_user[]" value="chief"><label class="btn btn-secondary" for="autorun_chief">기본 사령턴</label>
|
||||||
<input type="checkbox" class="autorun_user_chk" data-key="recruit" name="autorun_user[]" value="recruit">징병
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="checkbox" class="autorun_user_chk" data-key="recruit_high" name="autorun_user[]" value="recruit_high">모병
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="checkbox" class="autorun_user_chk" data-key="train" name="autorun_user[]" value="train">훈사
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="checkbox" class="autorun_user_chk" data-key="battle" name="autorun_user[]" value="battle">출병
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="checkbox" class="autorun_user_chk" data-key="chief" name="autorun_user[]" value="chief">기본 사령턴
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group-append">
|
</div>
|
||||||
<span class="input-group-text">유효 시간</span>
|
</div>
|
||||||
|
<div class="col-sm-6 offset-sm-3">
|
||||||
|
<div class="input-group">
|
||||||
|
<div class="input-group-text">유효 시간
|
||||||
</div>
|
</div>
|
||||||
<select class="custom-select" name="autorun_user_minutes" id="autorun_user_minutes">
|
<select class="custom-select" name="autorun_user_minutes" id="autorun_user_minutes">
|
||||||
<option value="0" selected>꺼짐</option>
|
<option value="0" selected>꺼짐</option>
|
||||||
@@ -220,61 +174,12 @@ if($session->userGrade < 5 && !$allowReset){
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!--
|
|
||||||
<div class="form-group row">
|
|
||||||
<label class="col-sm-3 col-form-label">휴식 턴 시 사령 턴</label>
|
|
||||||
<div class="col-sm-9">
|
|
||||||
<div class="input-group">
|
|
||||||
<div class="input-group-prepend btn-group btn-group-toggle" data-toggle="buttons">
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="radio" name="autorun_chief_reward" id="autorun_chief_reward">포상/몰수
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="radio" name="autorun_chief_warp" id="autorun_chief_warp">발령
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="radio" name="autorun_chief_declaration" id="autorun_chief_declaration">선포
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
<div class="input-group-append">
|
|
||||||
<span class="input-group-text">유효 시간</span>
|
|
||||||
</div>
|
|
||||||
<select class="custom-select" name="autorun_chief_minutes" id="autorun_chief_minutes">
|
|
||||||
<option value="0" selected>꺼짐</option>
|
|
||||||
<option value="43200">항상</option>
|
|
||||||
<option value="10">10분</option>
|
|
||||||
<option value="20">20분</option>
|
|
||||||
<option value="30">30분</option>
|
|
||||||
<option value="60">1시간</option>
|
|
||||||
<option value="120">2시간</option>
|
|
||||||
<option value="180">3시간</option>
|
|
||||||
<option value="240">4시간</option>
|
|
||||||
<option value="360">6시간</option>
|
|
||||||
<option value="480">8시간</option>
|
|
||||||
<option value="600">10시간</option>
|
|
||||||
<option value="720">12시간</option>
|
|
||||||
<option value="1440">24시간</option>
|
|
||||||
<option value="2160">36시간</option>
|
|
||||||
<option value="2880">48시간</option>
|
|
||||||
<option value="3600">60시간</option>
|
|
||||||
<option value="4320">72시간</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
-->
|
|
||||||
|
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="join_mode" class="col-sm-3 col-form-label">임관 모드</label>
|
<label for="join_mode" class="col-sm-3 col-form-label">임관 모드</label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<div id="join_mode" class="btn-group btn-group-toggle" data-toggle="buttons">
|
<div id="join_mode" class="btn-group btn-group-toggle" data-toggle="buttons">
|
||||||
<label class="btn btn-secondary active">
|
<input class="btn-check" id="join_mode_full" type="radio" name="join_mode" value="full" checked><label class="btn btn-secondary" for="join_mode_full">일반</label>
|
||||||
<input type="radio" name="join_mode" value="full" checked>일반
|
<input class="btn-check" id="join_mode_onlyRandom" type="radio" name="join_mode" value="onlyRandom"><label class="btn btn-secondary" for="join_mode_onlyRandom">랜덤 임관</label>
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="radio" name="join_mode" value="onlyRandom">랜덤 임관
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -283,50 +188,26 @@ if($session->userGrade < 5 && !$allowReset){
|
|||||||
<label for="show_img_level" class="col-sm-3 col-form-label">이미지 표기</label>
|
<label for="show_img_level" class="col-sm-3 col-form-label">이미지 표기</label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<div id="show_img_level" class="btn-group btn-group-toggle" data-toggle="buttons">
|
<div id="show_img_level" class="btn-group btn-group-toggle" data-toggle="buttons">
|
||||||
<label class="btn btn-secondary">
|
<input type="radio" id="show_img_level_0" class="btn-check" name="show_img_level" value="0"><label for="show_img_level_0" class="btn btn-secondary">안함</label>
|
||||||
<input type="radio" name="show_img_level" value="0">안함
|
<input type="radio" id="show_img_level_1" class="btn-check" name="show_img_level" value="1"><label for="show_img_level_1" class="btn btn-secondary">전콘</label>
|
||||||
</label>
|
<input type="radio" id="show_img_level_2" class="btn-check" name="show_img_level" value="2"><label for="show_img_level_2" class="btn btn-secondary">전콘, 병종</label>
|
||||||
<label class="btn btn-secondary">
|
<input type="radio" id="show_img_level_3" class="btn-check" name="show_img_level" value="3" checked><label for="show_img_level_3" class="btn btn-secondary">전콘, 병종, NPC</label>
|
||||||
<input type="radio" name="show_img_level" value="1">전콘
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary">
|
|
||||||
<input type="radio" name="show_img_level" value="2">전콘, 병종
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary active">
|
|
||||||
<input type="radio" name="show_img_level" value="3" checked>전콘, 병종, NPC
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label for="tournament_trig" class="col-sm-3 col-form-label">토너먼트 자동 시작<br>경기 단위</label>
|
<label for="tournament_trig" class="col-sm-3 col-form-label"><span class="text-nowrap">토너먼트 자동 시작</span> <span class="text-nowrap">경기 단위</span></label>
|
||||||
<div class="col-sm-9" id="tournament_trig">
|
<div class="col-sm-9" id="tournament_trig">
|
||||||
<div id="tournament_trig" class="btn-group-toggle btn-group flex-wrap" data-toggle="buttons">
|
<div id="tournament_trig" class="btn-group-toggle btn-group flex-wrap" data-toggle="buttons">
|
||||||
<label class="btn btn-secondary w-25">
|
<input type="radio" class="btn-check" id="tournament_trig_0" name="tournament_trig" value="0"><label for="tournament_trig_0" class="btn btn-secondary w-25">안함</label>
|
||||||
<input type="radio" name="tournament_trig" value="0">안함
|
<input type="radio" class="btn-check" id="tournament_trig_1" name="tournament_trig" value="1"><label for="tournament_trig_1" class="btn btn-secondary w-25">12분(총 5일)</label>
|
||||||
</label>
|
<input type="radio" class="btn-check" id="tournament_trig_2" name="tournament_trig" value="2"><label for="tournament_trig_2" class="btn btn-secondary w-25">7분(총 10시간)</label>
|
||||||
<label class="btn btn-secondary w-25">
|
<input type="radio" class="btn-check" id="tournament_trig_3" name="tournament_trig" value="3"><label for="tournament_trig_3" class="btn btn-secondary w-25">3분(총 4시간)</label>
|
||||||
<input type="radio" name="tournament_trig" value="1">12분(총 5일)
|
<input type="radio" class="btn-check" id="tournament_trig_4" name="tournament_trig" value="4" checked><label for="tournament_trig_4" class="btn btn-secondary w-25">1분(총 82분)</label>
|
||||||
</label>
|
<input type="radio" class="btn-check" id="tournament_trig_5" name="tournament_trig" value="5"><label for="tournament_trig_5" class="btn btn-secondary w-25">30초(총 41분)</label>
|
||||||
<label class="btn btn-secondary w-25">
|
<input type="radio" class="btn-check" id="tournament_trig_6" name="tournament_trig" value="6"><label for="tournament_trig_6" class="btn btn-secondary w-25">15초(총 21분)</label>
|
||||||
<input type="radio" name="tournament_trig" value="2">7분(총 10시간)
|
<input type="radio" class="btn-check" id="tournament_trig_7" name="tournament_trig" value="7"><label for="tournament_trig_7" class="btn btn-secondary w-25">5초(총 7분)</label>
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary w-25">
|
|
||||||
<input type="radio" name="tournament_trig" value="3">3분(총 4시간)
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary w-25 active">
|
|
||||||
<input type="radio" name="tournament_trig" value="4" checked>1분(총 82분)
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary w-25">
|
|
||||||
<input type="radio" name="tournament_trig" value="5">30초(총 41분)
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary w-25">
|
|
||||||
<input type="radio" name="tournament_trig" value="6">15초(총 21분)
|
|
||||||
</label>
|
|
||||||
<label class="btn btn-secondary w-25">
|
|
||||||
<input type="radio" name="tournament_trig" value="7">5초(총 7분)
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -347,7 +228,7 @@ if($session->userGrade < 5 && !$allowReset){
|
|||||||
|
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<div class="col-sm-3"></div>
|
<div class="col-sm-3"></div>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9 d-grid">
|
||||||
<input type="submit" class="btn btn-primary btn-lg btn-block login-button" value="리셋 개시">
|
<input type="submit" class="btn btn-primary btn-lg btn-block login-button" value="리셋 개시">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -355,25 +236,44 @@ if($session->userGrade < 5 && !$allowReset){
|
|||||||
</div>
|
</div>
|
||||||
<h4 class="card-header">시나리오 정보</h4>
|
<h4 class="card-header">시나리오 정보</h4>
|
||||||
<table class="table table-striped">
|
<table class="table table-striped">
|
||||||
<colgroup><col style="width:100px;"><col></colgroup>
|
<colgroup>
|
||||||
|
<col style="width:100px;">
|
||||||
|
<col>
|
||||||
|
</colgroup>
|
||||||
<thead>
|
<thead>
|
||||||
<tr><th>설정</th><th>값</th>
|
<tr>
|
||||||
|
<th>설정</th>
|
||||||
|
<th>값</th>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr><th>시작 연도</th><td ><span id="scenario_begin">180년</span><small id="scenario_begin_with_sync"></small></td></tr>
|
<tr>
|
||||||
<tr><th>NPC 수</th><td><span id="scenario_npc"></span><span id="scenario_npc_extend"></span></td></tr>
|
<th>시작 연도</th>
|
||||||
<tr><th>국가</th><td><span id="scenario_nation"></span></td></tr>
|
<td><span id="scenario_begin">180년</span><small id="scenario_begin_with_sync"></small>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>NPC 수</th>
|
||||||
|
<td><span id="scenario_npc"></span><span id="scenario_npc_extend"></span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>국가</th>
|
||||||
|
<td><span id="scenario_nation"></span></td>
|
||||||
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
<tfoot>
|
<tfoot>
|
||||||
<tr><td colspan="2">
|
<tr>
|
||||||
|
<td colspan="2">
|
||||||
|
|
||||||
</td></tr>
|
</td>
|
||||||
|
</tr>
|
||||||
</tfoot>
|
</tfoot>
|
||||||
</table>
|
</table>
|
||||||
</div><!--GAME 폼 끝-->
|
</div>
|
||||||
|
<!--GAME 폼 끝-->
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+8
-2
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -16,6 +17,7 @@ if($session->userGrade == 5){
|
|||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<title>설치</title>
|
<title>설치</title>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
@@ -23,11 +25,13 @@ if($session->userGrade == 5){
|
|||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/install_db.js') ?>
|
<?= WebUtil::printJS('dist_js/install_db.js') ?>
|
||||||
<?= WebUtil::printCSS('css/normalize.css') ?>
|
<?= WebUtil::printCSS('css/normalize.css') ?>
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<?= WebUtil::printCSS('css/install.css') ?>
|
<?= WebUtil::printCSS('css/install.css') ?>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div class="container" style="min-width:720px;">
|
<div class="container" style="min-width:720px;">
|
||||||
<h1 class="row justify-content-md-center">삼국지 모의전투 HiDCHe 리셋</h1>
|
<h1 class="row justify-content-md-center">삼국지 모의전투 HiDCHe 리셋</h1>
|
||||||
@@ -104,10 +108,12 @@ if($session->userGrade == 5){
|
|||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div><!--DB 폼 끝-->
|
</div>
|
||||||
|
<!--DB 폼 끝-->
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+3
-4
@@ -20,12 +20,11 @@ include "func.php";
|
|||||||
'serverID' => UniqueConst::$serverID
|
'serverID' => UniqueConst::$serverID
|
||||||
]) ?>
|
]) ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('d_shared/base_map.js') ?>
|
<?= WebUtil::printJS('d_shared/base_map.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/recent_map.js') ?>
|
|
||||||
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?= WebUtil::printCSS('../e_lib/bootstrap.min.css') ?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<?= WebUtil::printCSS('css/common.css') ?>
|
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printCSS('css/map.css') ?>
|
<?= WebUtil::printCSS('css/map.css') ?>
|
||||||
<style>
|
<style>
|
||||||
@@ -53,7 +52,7 @@ include "func.php";
|
|||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<?= WebUtil::printJS('dist_js/recent_map.js') ?>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
@@ -9,7 +9,7 @@ $input-color: #303030;
|
|||||||
|
|
||||||
@import "./variables.scss";
|
@import "./variables.scss";
|
||||||
@import "./bootswatch_custom_variables.scss";
|
@import "./bootswatch_custom_variables.scss";
|
||||||
@import "../../node_modules/bootstrap5/scss/bootstrap.scss";
|
@import "/node_modules/bootstrap/scss/bootstrap.scss";
|
||||||
@import "./bootswatch_custom.scss";
|
@import "./bootswatch_custom.scss";
|
||||||
@import "./bootstrap_sammo.scss";
|
@import "./bootstrap_sammo.scss";
|
||||||
@import "./vue-multiselect.scss";
|
@import "./vue-multiselect.scss";
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
@import "./bootstrap5.scss";
|
@import "./common/bootstrap5.scss";
|
||||||
|
|
||||||
html * {
|
html * {
|
||||||
max-height: 1000000px;
|
max-height: 1000000px;
|
||||||
|
|||||||
@@ -52,7 +52,10 @@ input::-webkit-input-placeholder {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.login_btn_group {
|
.login_btn_group {
|
||||||
margin-top: 5px;
|
margin-top: 4px;
|
||||||
|
>.btn{
|
||||||
|
padding: 0.3rem 1rem;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.login-register {
|
.login-register {
|
||||||
@@ -108,11 +111,11 @@ input::-webkit-input-placeholder {
|
|||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
background-position: bottom center;
|
background-position: bottom center;
|
||||||
margin-top: 5px;
|
margin-top: 5px;
|
||||||
background-image: url('../oauth_kakao/kakao_login_join.png');
|
background-image: url('/oauth_kakao/kakao_login_join.png');
|
||||||
}
|
}
|
||||||
|
|
||||||
#btn_kakao_login:hover {
|
#btn_kakao_login:hover {
|
||||||
background-image: url('../oauth_kakao/kakao_login_join_ov.png');
|
background-image: url('/oauth_kakao/kakao_login_join_ov.png');
|
||||||
}
|
}
|
||||||
|
|
||||||
#bottom_box .container {
|
#bottom_box .container {
|
||||||
+2
-2
@@ -1,5 +1,5 @@
|
|||||||
@import "./break_500px.scss";
|
@import "./common/break_500px.scss";
|
||||||
@import "./bootstrap5.scss";
|
@import "./common/bootstrap5.scss";
|
||||||
|
|
||||||
body {
|
body {
|
||||||
color: white;
|
color: white;
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -39,15 +40,15 @@ foreach(getCharacterList(false) as $id=>[$name, $info]){
|
|||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<title><?= UniqueConst::$serverName ?>: 장수 선택</title>
|
<title><?= UniqueConst::$serverName ?>: 장수 선택</title>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024'" />
|
<meta name="viewport" content="width=1024'" />
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?= WebUtil::printCSS('../css/config.css') ?>
|
<?= WebUtil::printCSS('../css/config.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printCSS('css/select_general_from_pool.css') ?>
|
<?= WebUtil::printCSS('css/select_general_from_pool.css') ?>
|
||||||
|
|
||||||
@@ -66,6 +67,7 @@ var validCustomOption = <?=Json::encode(GameConst::$generalPoolAllowOption)?>;
|
|||||||
|
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/join.js') ?>
|
<?= WebUtil::printJS('dist_js/join.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/select_general_from_pool.js') ?>
|
<?= WebUtil::printJS('dist_js/select_general_from_pool.js') ?>
|
||||||
@@ -83,16 +85,20 @@ alert('더 이상 등록할 수 없습니다.');
|
|||||||
history.go(-1);
|
history.go(-1);
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
<?php
|
<?php
|
||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="bg0 with_border legacy_layout">장 수 선 택<br><?= backButton() ?></div>
|
<div class="bg0 with_border legacy_layout">장 수 선 택<br><?= backButton() ?></div>
|
||||||
<table style="width:100%;" class="bg0 with_border">
|
<table style="width:100%;" class="bg0 with_border">
|
||||||
<tr><td><?=info(0)?></td></tr>
|
<tr>
|
||||||
|
<td><?= info(0) ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<?= getInvitationList($nationList) ?>
|
<?= getInvitationList($nationList) ?>
|
||||||
@@ -111,7 +117,8 @@ history.go(-1);
|
|||||||
<div class="with_border legacy_layout" style="display:flex">
|
<div class="with_border legacy_layout" style="display:flex">
|
||||||
<div style='flex:1;' id='left_pad'>
|
<div style='flex:1;' id='left_pad'>
|
||||||
장수를<br>선택해주세요!
|
장수를<br>선택해주세요!
|
||||||
</div><div style='flex:4;'>
|
</div>
|
||||||
|
<div style='flex:4;'>
|
||||||
<form id='custom_form'>
|
<form id='custom_form'>
|
||||||
<table class='tb_layout' style='width:100%;text-align:left;'>
|
<table class='tb_layout' style='width:100%;text-align:left;'>
|
||||||
<?php
|
<?php
|
||||||
@@ -191,4 +198,5 @@ if ($admin['show_img_level'] >= 1 && $member['grade'] >= 1 && $member['picture']
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+12
-7
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -29,15 +30,15 @@ foreach($scoutMsgs as $nationID=>$scoutMsg){
|
|||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<title><?= UniqueConst::$serverName ?>: NPC빙의</title>
|
<title><?= UniqueConst::$serverName ?>: NPC빙의</title>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?= WebUtil::printCSS('../css/config.css') ?>
|
<?= WebUtil::printCSS('../css/config.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printCSS('css/select_npc.css') ?>
|
<?= WebUtil::printCSS('css/select_npc.css') ?>
|
||||||
|
|
||||||
@@ -57,8 +58,7 @@ foreach(SpecialityHelper::getSpecialWarList() as $specialID=>$specialObj){
|
|||||||
}
|
}
|
||||||
$specialAll['-'] = '없음';
|
$specialAll['-'] = '없음';
|
||||||
echo Json::encode($specialAll);
|
echo Json::encode($specialAll);
|
||||||
?>
|
?>;
|
||||||
;
|
|
||||||
var characterInfo =
|
var characterInfo =
|
||||||
<?php
|
<?php
|
||||||
$characterAll = [];
|
$characterAll = [];
|
||||||
@@ -66,12 +66,12 @@ foreach(getCharacterList(false) as $id=>[$name, $info]){
|
|||||||
$characterAll[$name] = $info;
|
$characterAll[$name] = $info;
|
||||||
}
|
}
|
||||||
echo Json::encode($characterAll);
|
echo Json::encode($characterAll);
|
||||||
?>
|
?>;
|
||||||
;
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/common.js') ?>
|
<?= WebUtil::printJS('dist_js/common.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/select_npc.js') ?>
|
<?= WebUtil::printJS('dist_js/select_npc.js') ?>
|
||||||
|
|
||||||
@@ -88,16 +88,20 @@ alert('더 이상 등록할 수 없습니다.');
|
|||||||
history.go(-1);
|
history.go(-1);
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
<?php
|
<?php
|
||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="bg0 with_border legacy_layout">장 수 선 택<br><?= backButton() ?></div>
|
<div class="bg0 with_border legacy_layout">장 수 선 택<br><?= backButton() ?></div>
|
||||||
<table style="width:100%;" class="bg0 with_border">
|
<table style="width:100%;" class="bg0 with_border">
|
||||||
<tr><td><?=info(0)?></td></tr>
|
<tr>
|
||||||
|
<td><?= info(0) ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<?= getInvitationList($nationList) ?>
|
<?= getInvitationList($nationList) ?>
|
||||||
@@ -146,4 +150,5 @@ history.go(-1);
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
+74
-23
@@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace sammo;
|
namespace sammo;
|
||||||
|
|
||||||
include "lib.php";
|
include "lib.php";
|
||||||
@@ -30,19 +31,19 @@ if ($permission < 1) {
|
|||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<title><?= UniqueConst::$serverName ?>: 외교부</title>
|
<title><?= UniqueConst::$serverName ?>: 외교부</title>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=1024" />
|
<meta name="viewport" content="width=1024" />
|
||||||
<?=WebUtil::printCSS('../e_lib/bootstrap.min.css')?>
|
|
||||||
<?= WebUtil::printCSS('../e_lib/select2/select2.min.css') ?>
|
<?= WebUtil::printCSS('../e_lib/select2/select2.min.css') ?>
|
||||||
<?= WebUtil::printCSS('../e_lib/select2/select2-bootstrap4.css') ?>
|
<?= WebUtil::printCSS('../e_lib/select2/select2-bootstrap4.css') ?>
|
||||||
<!--<?= WebUtil::printCSS('../e_lib/tui.editor/tui-editor.min.css') ?>-->
|
<!--<?= WebUtil::printCSS('../e_lib/tui.editor/tui-editor.min.css') ?>-->
|
||||||
<!--<?= WebUtil::printCSS('../e_lib/tui.editor/tui-editor-contents.min.css') ?>-->
|
<!--<?= WebUtil::printCSS('../e_lib/tui.editor/tui-editor-contents.min.css') ?>-->
|
||||||
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
<?= WebUtil::printCSS('../d_shared/common.css') ?>
|
||||||
<?= WebUtil::printCSS('../css/config.css') ?>
|
<?= WebUtil::printCSS('../css/config.css') ?>
|
||||||
<?=WebUtil::printCSS('css/common.css')?>
|
<?= WebUtil::printCSS('dist_css/common.css') ?>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css" />
|
||||||
<?= WebUtil::printCSS('css/diplomacy.css') ?>
|
<?= WebUtil::printCSS('css/diplomacy.css') ?>
|
||||||
<script>
|
<script>
|
||||||
@@ -50,28 +51,48 @@ var permissionLevel = <?=$permission?>; //
|
|||||||
</script>
|
</script>
|
||||||
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
<?= WebUtil::printJS('../d_shared/common_path.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
<?= WebUtil::printJS('dist_js/vendors.js') ?>
|
||||||
|
<?= WebUtil::printJS('dist_js/common_ts.js') ?>
|
||||||
<?= WebUtil::printJS('dist_js/diplomacy.js') ?>
|
<?= WebUtil::printJS('dist_js/diplomacy.js') ?>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<table style='width:1000px;margin:auto;' class='tb_layout bg0'>
|
<table style='width:1000px;margin:auto;' class='tb_layout bg0'>
|
||||||
<tr><td style='text-align:left;'>외 교 부<br><?=backButton()?></td></tr>
|
<tr>
|
||||||
|
<td style='text-align:left;'>외 교 부<br><?= backButton() ?></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<table id='newLetter' class='bg0' style='display:none;'>
|
<table id='newLetter' class='bg0' style='display:none;'>
|
||||||
<thead>
|
<thead>
|
||||||
<tr><td colspan='2' class='newLetterHeader'>새 외교문서 작성</td>
|
<tr>
|
||||||
|
<td colspan='2' class='newLetterHeader'>새 외교문서 작성</td>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr><th class='bg1'>이전 문서</th><td><select id='inputPrevNo'></select></td></tr>
|
<tr>
|
||||||
<tr><th class='bg1'>대상 국가</th><td><select id='inputDestNation'></select></td></tr>
|
<th class='bg1'>이전 문서</th>
|
||||||
<tr><th class='bg1'>내용(국가 내 공개)</th><td><textarea id='inputBrief' class='autosize'></textarea></td></tr>
|
<td><select id='inputPrevNo'></select></td>
|
||||||
<tr><th class='bg1'>내용(외교권자 전용)</th><td><textarea id='inputDetail' class='autosize'></textarea></td></tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th class='bg1'>대상 국가</th>
|
||||||
|
<td><select id='inputDestNation'></select></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th class='bg1'>내용(국가 내 공개)</th>
|
||||||
|
<td><textarea id='inputBrief' class='autosize'></textarea></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th class='bg1'>내용(외교권자 전용)</th>
|
||||||
|
<td><textarea id='inputDetail' class='autosize'></textarea></td>
|
||||||
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
<tfoot>
|
<tfoot>
|
||||||
<tr class='letterActionPlate'><th class='bg1'>동작</th><td>
|
<tr class='letterActionPlate'>
|
||||||
|
<th class='bg1'>동작</th>
|
||||||
|
<td>
|
||||||
<button type='button' id='btnSend'>전송</button>
|
<button type='button' id='btnSend'>전송</button>
|
||||||
</td></tr>
|
</td>
|
||||||
|
</tr>
|
||||||
</tfoot>
|
</tfoot>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
@@ -81,43 +102,73 @@ var permissionLevel = <?=$permission?>; //
|
|||||||
<div id='letterTemplate' style='display:none;'>
|
<div id='letterTemplate' style='display:none;'>
|
||||||
<table class='letterFrame bg0'>
|
<table class='letterFrame bg0'>
|
||||||
<thead>
|
<thead>
|
||||||
<tr><td colspan='2' class='letterHeader'><span class='letterNationName'></span>국과의 외교 문서<span class='letterDate'>2099-12-31 23:59:59</span></td>
|
<tr>
|
||||||
|
<td colspan='2' class='letterHeader'><span class='letterNationName'></span>국과의 외교 문서<span class='letterDate'>2099-12-31 23:59:59</span></td>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr><th class='bg1'>문서 번호</th><td><span class='letterNo'></span></td></tr>
|
<tr>
|
||||||
<tr><th class='bg1'>이전 문서</th><td><span class='letterPrevNo'></span></td></tr>
|
<th class='bg1'>문서 번호</th>
|
||||||
<tr><th class='bg1'>상태</th><td><span class='letterStatus'></span><span class='letterStatusOpt'></span></td></tr>
|
<td><span class='letterNo'></span></td>
|
||||||
<tr><th class='bg1'>내용(국가 내 공개)</th><td><div class='letterBrief'></div></td></tr>
|
</tr>
|
||||||
<tr><th class='bg1'>내용(외교권자 전용)</th><td><div class='letterDetail'></div></td></tr>
|
<tr>
|
||||||
|
<th class='bg1'>이전 문서</th>
|
||||||
|
<td><span class='letterPrevNo'></span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th class='bg1'>상태</th>
|
||||||
|
<td><span class='letterStatus'></span><span class='letterStatusOpt'></span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th class='bg1'>내용(국가 내 공개)</th>
|
||||||
|
<td>
|
||||||
|
<div class='letterBrief'></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th class='bg1'>내용(외교권자 전용)</th>
|
||||||
|
<td>
|
||||||
|
<div class='letterDetail'></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
<tfoot>
|
<tfoot>
|
||||||
<tr><th class='bg1'>서명인</th><td class='letterSignerPlate'>
|
<tr>
|
||||||
|
<th class='bg1'>서명인</th>
|
||||||
|
<td class='letterSignerPlate'>
|
||||||
<div class='letterSrc'>
|
<div class='letterSrc'>
|
||||||
<div class="signerImg"><img class='generalIcon' width='64px' height='64px'></div>
|
<div class="signerImg"><img class='generalIcon' width='64px' height='64px'></div>
|
||||||
<div class="signerNation"> </div>
|
<div class="signerNation"> </div>
|
||||||
<div class="signerName"> </div>
|
<div class="signerName"> </div>
|
||||||
</div><div class='letterDest'>
|
</div>
|
||||||
|
<div class='letterDest'>
|
||||||
<div class="signerImg"><img class='generalIcon' width='64px' height='64px'></div>
|
<div class="signerImg"><img class='generalIcon' width='64px' height='64px'></div>
|
||||||
<div class="signerNation"> </div>
|
<div class="signerNation"> </div>
|
||||||
<div class="signerName"> </div>
|
<div class="signerName"> </div>
|
||||||
</div>
|
</div>
|
||||||
</td></tr>
|
</td>
|
||||||
<tr class='letterActionPlate' style='display:none;'><th class='bg1'>동작</th><td>
|
</tr>
|
||||||
|
<tr class='letterActionPlate' style='display:none;'>
|
||||||
|
<th class='bg1'>동작</th>
|
||||||
|
<td>
|
||||||
<button type='button' class='btnAgree' style='display:none;'>승인</button>
|
<button type='button' class='btnAgree' style='display:none;'>승인</button>
|
||||||
<button type='button' class='btnDisagree' style='display:none;'>거부</button>
|
<button type='button' class='btnDisagree' style='display:none;'>거부</button>
|
||||||
<button type='button' class='btnRollback' style='display:none;'>회수</button>
|
<button type='button' class='btnRollback' style='display:none;'>회수</button>
|
||||||
<button type='button' class='btnDestroy' style='display:none;'>파기</button>
|
<button type='button' class='btnDestroy' style='display:none;'>파기</button>
|
||||||
<button type='button' class='btnRenew'>추가 문서 작성</button>
|
<button type='button' class='btnRenew'>추가 문서 작성</button>
|
||||||
</td></tr>
|
</td>
|
||||||
|
</tr>
|
||||||
</tfoot>
|
</tfoot>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<table style='width:1000px;margin:auto;' class='tb_layout bg0'>
|
<table style='width:1000px;margin:auto;' class='tb_layout bg0'>
|
||||||
<tr><td style='text-align:left;'>
|
<tr>
|
||||||
|
<td style='text-align:left;'>
|
||||||
<?= backButton() ?><br>
|
<?= backButton() ?><br>
|
||||||
<?= banner() ?>
|
<?= banner() ?>
|
||||||
</td></tr>
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
Vendored
-663
@@ -1,663 +0,0 @@
|
|||||||
// Type definitions for Bootstrap 4.6
|
|
||||||
// Project: https://github.com/twbs/bootstrap/, https://getbootstrap.com
|
|
||||||
// Definitions by: denisname <https://github.com/denisname>
|
|
||||||
// Piotr Błażejewicz <https://github.com/peterblazejewicz>
|
|
||||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
|
||||||
// TypeScript Version: 2.3
|
|
||||||
|
|
||||||
/// <reference types="jquery"/>
|
|
||||||
|
|
||||||
import * as Popper from "popper.js";
|
|
||||||
|
|
||||||
export as namespace Bootstrap;
|
|
||||||
|
|
||||||
// --------------------------------------------------------------------------
|
|
||||||
// Some Types and Interfaces
|
|
||||||
// --------------------------------------------------------------------------
|
|
||||||
|
|
||||||
export type Placement = "auto" | "top" | "bottom" | "left" | "right";
|
|
||||||
|
|
||||||
export type Trigger = "click" | "hover" | "focus" | "manual" |
|
|
||||||
"click hover" | "click focus" | "hover focus" |
|
|
||||||
"click hover focus";
|
|
||||||
|
|
||||||
export interface Delay {
|
|
||||||
show: number;
|
|
||||||
hide: number;
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface TooltipInstance<T extends TooltipOption> {
|
|
||||||
config: T;
|
|
||||||
element: Element;
|
|
||||||
tip: HTMLElement;
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface OffsetsExtend {
|
|
||||||
popper?: Partial<Popper.Offset> | undefined;
|
|
||||||
reference?: Partial<Popper.Offset> | undefined;
|
|
||||||
}
|
|
||||||
|
|
||||||
// --------------------------------------------------------------------------------------
|
|
||||||
// Options Interfaces
|
|
||||||
// --------------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
export interface CarouselOption {
|
|
||||||
/**
|
|
||||||
* The amount of time to delay between automatically cycling an item. If false, carousel will not automatically cycle.
|
|
||||||
*
|
|
||||||
* @default 5000
|
|
||||||
*/
|
|
||||||
interval?: false | number | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Whether the carousel should react to keyboard events.
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
keyboard?: boolean | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Use to easily control the position of the carousel. It accepts the keywords prev or next, which alters the slide position
|
|
||||||
* relative to its current position. Alternatively, use `data-slide-to` to pass a raw slide index to the carousel.
|
|
||||||
*
|
|
||||||
* @default false
|
|
||||||
*/
|
|
||||||
slide?: "next" | "prev" | false | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If set to "hover", pauses the cycling of the carousel on `mouseenter` and resumes the cycling of the carousel on `mouseleave`.
|
|
||||||
* If set to false, hovering over the carousel won't pause it.
|
|
||||||
*
|
|
||||||
* On touch-enabled devices, when set to "hover", cycling will pause on `touchend` (once the user finished interacting with the carousel)
|
|
||||||
* for two intervals, before automatically resuming. Note that this is in addition to the above mouse behavior.
|
|
||||||
*
|
|
||||||
* @default "hover"
|
|
||||||
*/
|
|
||||||
pause?: "hover" | false | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Autoplays the carousel after the user manually cycles the first item.
|
|
||||||
* If `carousel`, autoplays the carousel on load.
|
|
||||||
* @default false
|
|
||||||
*/
|
|
||||||
ride?: 'carousel' | boolean | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Whether the carousel should cycle continuously or have hard stops.
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
wrap?: boolean | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Whether the carousel should support left/right swipe interactions on touchscreen devices.
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
touch?: boolean | undefined;
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CollapseOption {
|
|
||||||
/**
|
|
||||||
* If parent is provided, then all collapsible elements under the specified parent will be closed when
|
|
||||||
* this collapsible item is shown. (similar to traditional accordion behavior - this is dependent on the card class).
|
|
||||||
* The attribute has to be set on the target collapsible area.
|
|
||||||
*
|
|
||||||
* @default ""
|
|
||||||
*/
|
|
||||||
parent?: string | JQuery | Element | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Toggles the collapsible element on invocation.
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
toggle?: boolean | undefined;
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface DropdownOption {
|
|
||||||
/**
|
|
||||||
* Offset of the dropdown relative to its target.
|
|
||||||
* For more information refer to Popper.js's offset docs.
|
|
||||||
*
|
|
||||||
* @default 0
|
|
||||||
*/
|
|
||||||
offset?: number | string | ((this: DropdownOption, offset: OffsetsExtend) => OffsetsExtend) | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Allow Dropdown to flip in case of an overlapping on the reference element.
|
|
||||||
* For more information refer to Popper.js's flip docs.
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
flip?: boolean | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Overflow constraint boundary of the dropdown menu.
|
|
||||||
* Accepts the values of 'viewport', 'window', 'scrollParent', or an HTMLElement reference (JavaScript only).
|
|
||||||
* For more information refer to Popper.js's preventOverflow docs.
|
|
||||||
*
|
|
||||||
* @default "scrollParent"
|
|
||||||
*/
|
|
||||||
boundary?: Popper.Boundary | HTMLElement | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Reference element of the dropdown menu. Accepts the values of 'toggle', 'parent', or an HTMLElement reference.
|
|
||||||
* For more information refer to Popper.js's referenceObject docs.
|
|
||||||
*
|
|
||||||
* @default "toggle"
|
|
||||||
*/
|
|
||||||
reference?: "toggle" | "parent" | HTMLElement | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* By default, we use Popper.js for dynamic positioning. Disable this with 'static'.
|
|
||||||
*
|
|
||||||
* @default "dynamic"
|
|
||||||
*/
|
|
||||||
display?: "dynamic" | "static" | undefined;
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface ModalOption {
|
|
||||||
/**
|
|
||||||
* Includes a modal-backdrop element.
|
|
||||||
* Alternatively, specify `static` for a backdrop which doesn't close the modal on click.
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
backdrop?: boolean | "static" | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Closes the modal when escape key is pressed.
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
keyboard?: boolean | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Puts the focus on the modal when initialized.
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
focus?: boolean | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Shows the modal when initialized.
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
show?: boolean | undefined;
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface PopoverOption extends TooltipOption {
|
|
||||||
/**
|
|
||||||
* Default content value if `data-content` attribute isn't present.
|
|
||||||
* If a function is given, it will be called with its `this` reference
|
|
||||||
* set to the element that the popover is attached to.
|
|
||||||
*
|
|
||||||
* @default ""
|
|
||||||
*/
|
|
||||||
content?: string | Element | ((this: Element) => string | Element) | undefined;
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface ScrollspyOption {
|
|
||||||
/**
|
|
||||||
* Finds which section the spied element is in:
|
|
||||||
* * `auto` will choose the best method get scroll coordinates.
|
|
||||||
* * `offset` will use jQuery offset method to get scroll coordinates.
|
|
||||||
* * `position` will use jQuery position method to get scroll coordinates.
|
|
||||||
*
|
|
||||||
* @default "auto"
|
|
||||||
*/
|
|
||||||
method?: "auto" | "offset" | "position" | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Pixels to offset from top when calculating position of scroll.
|
|
||||||
*
|
|
||||||
* @default 10
|
|
||||||
*/
|
|
||||||
offset?: number | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* A selector of the parent element or the parent element itself
|
|
||||||
* of any Bootstrap `.nav` or `.list-group` component.
|
|
||||||
*
|
|
||||||
* @default ""
|
|
||||||
*/
|
|
||||||
target?: string | JQuery<Element> | Element | undefined;
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface ToastOption {
|
|
||||||
/**
|
|
||||||
* Apply a CSS fade transition to the toast.
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
animation?: boolean | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Auto hide the toast.
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
autohide?: boolean | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Delay hiding the toast in millisecond.
|
|
||||||
*
|
|
||||||
* @default 500
|
|
||||||
*/
|
|
||||||
delay?: number | undefined;
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface TooltipOption {
|
|
||||||
/**
|
|
||||||
* Apply a CSS fade transition to the tooltip or popover.
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
animation?: boolean | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Appends the tooltip or popover to a specific element. Example: `container: 'body'`.
|
|
||||||
* This option is particularly useful in that it allows you to position the tooltip or popover
|
|
||||||
* in the flow of the document near the triggering element - which will prevent
|
|
||||||
* it from floating away from the triggering element during a window resize.
|
|
||||||
*
|
|
||||||
* @default false
|
|
||||||
*/
|
|
||||||
container?: string | Element | false | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Delay showing and hiding the tooltip or popover (ms) - does not apply to manual trigger type.
|
|
||||||
* If a number is supplied, delay is applied to both hide/show.
|
|
||||||
* Object structure is: `delay: { "show": 500, "hide": 100 }`.
|
|
||||||
*
|
|
||||||
* @default 0
|
|
||||||
*/
|
|
||||||
delay?: number | Delay | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Allow HTML in the tooltip or popover.
|
|
||||||
* If true, HTML tags will be rendered in the tooltip or popover.
|
|
||||||
* If false, jQuery's text method will be used to insert content into the DOM.
|
|
||||||
* Use text if you're worried about XSS attacks.
|
|
||||||
*
|
|
||||||
* @default false
|
|
||||||
*/
|
|
||||||
html?: boolean | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* How to position the tooltip or popover - auto | top | bottom | left | right.
|
|
||||||
* When "auto" is specified, it will dynamically reorient the tooltip or popover.
|
|
||||||
*
|
|
||||||
* When a function is used to determine the placement, it is called with
|
|
||||||
* the tooltip or popover DOM node as its first argument and the triggering element DOM node as its second.
|
|
||||||
* The `this` context is set to the tooltip or popover instance.
|
|
||||||
*
|
|
||||||
* @default tooltip: "top", popover: "right"
|
|
||||||
*/
|
|
||||||
placement?: Placement | ((this: TooltipInstance<this>, node: HTMLElement, trigger: Element) => Placement) | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If a selector is provided, tooltip or popover objects will be delegated to the specified targets.
|
|
||||||
* In practice, this is used to enable dynamic HTML content to have popovers added.
|
|
||||||
*
|
|
||||||
* @default false
|
|
||||||
*/
|
|
||||||
selector?: string | false | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Base HTML to use when creating the tooltip or popover.
|
|
||||||
* The tooltip's (resp., popover's) title will be injected into the `.tooltip-inner` (resp., `.popover-header`).
|
|
||||||
* The `.arrow` will become the tooltip's (resp., popover's) arrow.
|
|
||||||
* The outermost wrapper element should have the `.tooltip` (resp., .popover) class and `role="tooltip"`.
|
|
||||||
*
|
|
||||||
* @default '<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>'
|
|
||||||
* @default '<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'
|
|
||||||
*/
|
|
||||||
template?: string | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Default title value if title attribute isn't present.
|
|
||||||
* If a function is given, it will be called with its `this` reference set to the element
|
|
||||||
* that the tooltip or popover is attached to.
|
|
||||||
*
|
|
||||||
* @default ""
|
|
||||||
*/
|
|
||||||
title?: string | Element | ((this: Element) => string | Element) | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* How tooltip or popover is triggered - click | hover | focus | manual. You may pass multiple triggers; separate them with a space.
|
|
||||||
* 'manual' indicates that the tooltip will be triggered programmatically; this value cannot be combined with any other trigger.
|
|
||||||
* 'hover' should only be used if alternative methods for conveying the same information for keyboard users is present.
|
|
||||||
*
|
|
||||||
* @default tooltip: "hover focus", popover: "click"
|
|
||||||
*/
|
|
||||||
trigger?: Trigger | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Offset of the tooltip or popover relative to its target.
|
|
||||||
* For more information refer to Popper.js's offset docs.
|
|
||||||
*
|
|
||||||
* @default 0
|
|
||||||
*/
|
|
||||||
offset?: number | string | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Allow to specify which position Popper will use on fallback.
|
|
||||||
* For more information refer to Popper.js's behavior docs.
|
|
||||||
*
|
|
||||||
* @default "flip"
|
|
||||||
*/
|
|
||||||
fallbackPlacement?: Popper.Behavior | ReadonlyArray<Popper.Behavior> | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Add classes to the tooltip when it is shown. Note that these classes will be added in addition to any classes specified in the template.
|
|
||||||
* To add multiple classes, separate them with spaces: 'a b'.
|
|
||||||
* You can also pass a function that should return a single string containing additional class names.
|
|
||||||
* @default ''
|
|
||||||
*/
|
|
||||||
customClass?: string | (() => string) | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Overflow constraint boundary of the tooltip or popover.
|
|
||||||
* Accepts the values of 'viewport', 'window', 'scrollParent',
|
|
||||||
* or an HTMLElement reference (JavaScript only).
|
|
||||||
* For more information refer to Popper.js's preventOverflow docs.
|
|
||||||
*
|
|
||||||
* @default "scrollParent"
|
|
||||||
*/
|
|
||||||
boundary?: Popper.Boundary | HTMLElement | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enable or disable the sanitization. If activated 'template', 'content' and 'title' options will be sanitized.
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
sanitize?: boolean | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Object which contains allowed attributes and tags.
|
|
||||||
*/
|
|
||||||
whiteList?: {[key: string]: string[]} | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Here you can supply your own sanitize function. This can be useful if you prefer to use a dedicated library to perform sanitization.
|
|
||||||
*
|
|
||||||
* @default null
|
|
||||||
*/
|
|
||||||
sanitizeFn?: null | ((input: string) => string) | undefined;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* To change Bootstrap's default Popper.js config,
|
|
||||||
* see {@link https://popper.js.org/docs/v1/ Popper.js's configuration}
|
|
||||||
*/
|
|
||||||
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
||||||
popperConfig?: null | object | undefined;
|
|
||||||
}
|
|
||||||
|
|
||||||
// --------------------------------------------------------------------------------------
|
|
||||||
// Events
|
|
||||||
// --------------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
export interface CarouselEventHandler<TElement> extends JQuery.TriggeredEvent<TElement, undefined, HTMLElement, HTMLElement> {
|
|
||||||
/**
|
|
||||||
* The carousel dom element.
|
|
||||||
*/
|
|
||||||
target: HTMLElement; // overridden only for better JsDoc
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The direction in which the carousel is sliding.
|
|
||||||
*/
|
|
||||||
direction: "left" | "right";
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The DOM element that is being slid into place as the active item.
|
|
||||||
*/
|
|
||||||
relatedTarget: HTMLElement;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The index of the current item.
|
|
||||||
*/
|
|
||||||
from: number;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The index of the next item.
|
|
||||||
*/
|
|
||||||
to: number;
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface DropdownsEventHandler<TElement> extends JQuery.TriggeredEvent<TElement, undefined, HTMLElement, HTMLElement> {
|
|
||||||
/**
|
|
||||||
* The the dropdown's toggle and the dropdown menu container (the `.dropdown` element).
|
|
||||||
*/
|
|
||||||
target: HTMLElement; // overridden only for better JsDoc
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The toggling anchor element.
|
|
||||||
*/
|
|
||||||
relatedTarget: HTMLElement;
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface ModalEventHandler<TElement> extends JQuery.TriggeredEvent<TElement, undefined, HTMLElement, HTMLElement> {
|
|
||||||
/**
|
|
||||||
* The modal dom element.
|
|
||||||
*/
|
|
||||||
target: HTMLElement; // overridden only for better JsDoc
|
|
||||||
|
|
||||||
/**
|
|
||||||
* For `show.bs.modal` and `shown.bs.modal` is the clicked element, when caused by a _click_.
|
|
||||||
* Otherwise is undefined.
|
|
||||||
*/
|
|
||||||
relatedTarget: HTMLElement | undefined;
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface TapEventHandler<TElement> extends JQuery.TriggeredEvent<TElement, undefined, HTMLElement, HTMLElement> {
|
|
||||||
/**
|
|
||||||
* * For `show.bs.tab` and `shown.bs.tab`, is the newly activated tab.
|
|
||||||
* * For `hide.bs.tab`, is the current active tab.
|
|
||||||
* * For `hidden.bs.tab`, is the previous active tab.
|
|
||||||
*/
|
|
||||||
target: HTMLElement; // overridden only for better JsDoc
|
|
||||||
|
|
||||||
/**
|
|
||||||
* * For `show.bs.tab` and `shown.bs.tab`, is the previous active tab.
|
|
||||||
* * For `hide.bs.tab`, is the new soon-to-be-active tab.
|
|
||||||
* * For `hidden.bs.tab`, is the new active tab.
|
|
||||||
*/
|
|
||||||
relatedTarget: HTMLElement;
|
|
||||||
}
|
|
||||||
|
|
||||||
export type AlertEvent = "close.bs.alert" | "closed.bs.alert";
|
|
||||||
export type CarouselEvent = "slide.bs.carousel" | "slid.bs.carousel";
|
|
||||||
export type CollapseEvent = "show.bs.collapse" | "shown.bs.collapse" | "hide.bs.collapse" | "hidden.bs.collapse";
|
|
||||||
export type DropdownEvent = "show.bs.dropdown" | "shown.bs.dropdown" | "hide.bs.dropdown" | "hidden.bs.dropdown";
|
|
||||||
export type ModalEvent = "show.bs.modal" | "shown.bs.modal" | "hide.bs.modal" | "hidden.bs.modal" | "hidePrevented.bs.modal";
|
|
||||||
export type PopoverEvent = "show.bs.popover" | "shown.bs.popover" | "hide.bs.popover" | "hidden.bs.popover" | "inserted.bs.popover";
|
|
||||||
export type ScrollspyEvent = "activate.bs.scrollspy";
|
|
||||||
export type TapEvent = "show.bs.tab" | "shown.bs.tab" | "hide.bs.tab" | "hidden.bs.tab";
|
|
||||||
export type ToastEvent = "show.bs.toast" | "shown.bs.toast" | "hide.bs.toast" | "hidden.bs.toast";
|
|
||||||
export type TooltipEvent = "show.bs.tooltip" | "shown.bs.tooltip" | "hide.bs.tooltip" | "hidden.bs.tooltip" | "inserted.bs.tooltip";
|
|
||||||
|
|
||||||
// --------------------------------------------------------------------------------------
|
|
||||||
// jQuery
|
|
||||||
// --------------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
declare global {
|
|
||||||
interface JQuery<TElement = HTMLElement> {
|
|
||||||
/**
|
|
||||||
* If no _method_ is specified, makes an alert listen for click events on descendant elements which have the `data-dismiss="alert"` attribute.
|
|
||||||
* (Not necessary when using the data-api's auto-initialization.)
|
|
||||||
* Otherwise, call the method on the alert element:
|
|
||||||
* * `close` – Closes an alert by removing it from the DOM. If the `.fade` and `.show` classes are present on the element, the alert will fade out before it is removed.
|
|
||||||
* * `dispose` – Destroys an element's alert.
|
|
||||||
*/
|
|
||||||
alert(action?: "close" | "dispose"): this;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Call a method on the button element:
|
|
||||||
* * `toggle` – Toggles push state. Gives the button the appearance that it has been activated.
|
|
||||||
* * `dispose` – Destroys an element's button.
|
|
||||||
*/
|
|
||||||
button(action: "toggle" | "dispose"): this;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Call a method on the carousel element:
|
|
||||||
* * `cycle` – Cycles through the carousel items from left to right.
|
|
||||||
* * `pause` – Stops the carousel from cycling through items.
|
|
||||||
* * _number_ – Cycles the carousel to a particular frame (0 based, similar to an array).
|
|
||||||
* * `prev` – Cycles to the previous item.
|
|
||||||
* * `next` – Cycles to the next item.
|
|
||||||
* * `dispose` – Destroys an element's carousel.
|
|
||||||
*
|
|
||||||
* Returns to the caller before the target item has been shown (i.e. before the `slid.bs.carousel` event occurs).
|
|
||||||
*/
|
|
||||||
carousel(action: "cycle" | "pause" | number | "prev" | "next" | "dispose"): this;
|
|
||||||
/**
|
|
||||||
* Initializes the carousel and starts cycling through items.
|
|
||||||
*/
|
|
||||||
carousel(options?: CarouselOption): this;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Call a method on the collapsible element:
|
|
||||||
* * `toggle` – Toggles a collapsible element to shown or hidden.
|
|
||||||
* * `show` – Shows a collapsible element.
|
|
||||||
* * `hide` – Hides a collapsible element.
|
|
||||||
* * `dispose` – Destroys an element's collapse.
|
|
||||||
*
|
|
||||||
* Returns to the caller before the collapsible element has actually been shown or hidden (i.e. before the `shown.bs.collapse` or `hidden.bs.collapse` event occurs).
|
|
||||||
*/
|
|
||||||
collapse(action: "toggle" | "show" | "hide" | "dispose"): this;
|
|
||||||
/**
|
|
||||||
* Activates a content as a collapsible element.
|
|
||||||
*/
|
|
||||||
collapse(options?: CollapseOption): this;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Call a method on the dropdown element:
|
|
||||||
* * `toggle` – Toggles the dropdown menu of a given navbar or tabbed navigation.
|
|
||||||
* * `show` – Shows the dropdown menu of a given navbar or tabbed navigation.
|
|
||||||
* * `hide` – Hides the dropdown menu of a given navbar or tabbed navigation.
|
|
||||||
* * `update` – Updates the position of an element's dropdown.
|
|
||||||
* * `dispose` – Destroys an element's dropdown.
|
|
||||||
*/
|
|
||||||
dropdown(action: "toggle" | "show" | "hide" | "update" | "dispose"): this;
|
|
||||||
/**
|
|
||||||
* Toggle contextual overlays for displaying lists of links.
|
|
||||||
*
|
|
||||||
* The data-api, `data-toggle="dropdown"` is always required to be present on the dropdown's trigger element.
|
|
||||||
*/
|
|
||||||
dropdown(options?: DropdownOption): this;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Call a method on the modal element:
|
|
||||||
* * `toggle` – Manually toggles a modal.
|
|
||||||
* * `show` – Manually opens a modal.
|
|
||||||
* * `hide` – Manually hides a modal.
|
|
||||||
* * `handleUpdate` – Manually readjust the modal's position if the height of a modal changes while it is open (i.e. in case a scrollbar appears).
|
|
||||||
* * `dispose` – Destroys an element's modal.
|
|
||||||
*
|
|
||||||
* Returns to the caller before the modal has actually been shown or hidden (i.e. before the `shown.bs.modal` or `hidden.bs.modal` event occurs).
|
|
||||||
*/
|
|
||||||
modal(action: "toggle" | "show" | "hide" | "handleUpdate" | "dispose"): this;
|
|
||||||
/**
|
|
||||||
* Activates a content as a modal.
|
|
||||||
*/
|
|
||||||
modal(options?: ModalOption): this;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Call a method on the popover element:
|
|
||||||
* * `show` – Reveals an element's popover. Popovers whose both title and content are zero-length are never displayed.
|
|
||||||
* * `hide` – Hides an element's popover.
|
|
||||||
* * `toggle` – Toggles an element's popover.
|
|
||||||
* * `dispose` – Hides and destroys an element's popover.
|
|
||||||
* Popovers that use delegation (which are created using the `selector` option) cannot be individually destroyed on descendant trigger elements.
|
|
||||||
* * `enable` – Gives an element's popover the ability to be shown. Popovers are enabled by default.
|
|
||||||
* * `disable` – Removes the ability for an element's popover to be shown. The popover will only be able to be shown if it is re-enabled.
|
|
||||||
* * `toggleEnabled` – Toggles the ability for an element's popover to be shown or hidden.
|
|
||||||
* * `update` – Updates the position of an element's popover.
|
|
||||||
*
|
|
||||||
* Returns to the caller before the popover has actually been shown or hidden (i.e. before the `shown.bs.popover` or `hidden.bs.popover` event occurs).
|
|
||||||
* This is considered a "manual" triggering of the popover.
|
|
||||||
*/
|
|
||||||
popover(action: "show" | "hide" | "toggle" | "dispose" | "enable" | "disable" | "toggleEnabled" | "update"): this;
|
|
||||||
/**
|
|
||||||
* Initializes popovers for an element collection.
|
|
||||||
*/
|
|
||||||
popover(options?: PopoverOption): this;
|
|
||||||
|
|
||||||
// tslint:disable:jsdoc-format
|
|
||||||
/**
|
|
||||||
* Call a method on the scrollspy element:
|
|
||||||
* * `refresh` – When using scrollspy in conjunction with adding or removing of elements from the DOM, you'll need to call the refresh, see example.
|
|
||||||
* * `dispose` – Destroys an element's scrollspy.
|
|
||||||
*
|
|
||||||
* @example
|
|
||||||
```javascript
|
|
||||||
$('[data-spy="scroll"]').each(function () {
|
|
||||||
var $spy = $(this).scrollspy('refresh')
|
|
||||||
})
|
|
||||||
```
|
|
||||||
*/
|
|
||||||
// tslint:enable:jsdoc-format
|
|
||||||
scrollspy(action: "refresh" | "dispose"): this;
|
|
||||||
/**
|
|
||||||
* Add scrollspy behavior to a topbar navigation.
|
|
||||||
*/
|
|
||||||
scrollspy(options?: ScrollspyOption): this;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Call a method on the list item or tab element:
|
|
||||||
* * `show` – Selects the given list item or tab and shows its associated pane.
|
|
||||||
* Any other list item or tab that was previously selected becomes unselected and its associated pane is hidden.
|
|
||||||
* * `dispose` – Destroys an element's tab.
|
|
||||||
*
|
|
||||||
* Returns to the caller before the tab pane has actually been shown (i.e. before the `shown.bs.tab` event occurs).
|
|
||||||
*/
|
|
||||||
tab(action: "show" | "dispose"): this;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Call a method on the toast element:
|
|
||||||
* * `show` – Reveals an element's toast. You have to manually call this method, instead your toast won't show.
|
|
||||||
* * `hide` – Hides an element's toast. You have to manually call this method if you made `autohide` to false.
|
|
||||||
* * `dispose` – Hides an element's toast. Your toast will remain on the DOM but won't show anymore.
|
|
||||||
*
|
|
||||||
* Returns to the caller before the toast has actually been shown or hidden (i.e. before the `shown.bs.toast` or `hidden.bs.toast` event occurs).
|
|
||||||
*/
|
|
||||||
toast(action: "show" | "hide" | "dispose"): this;
|
|
||||||
/**
|
|
||||||
* Attaches a toast handler to an element collection.
|
|
||||||
*/
|
|
||||||
toast(options?: ToastOption): this;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Call a method on the tooltip element:
|
|
||||||
* * `show` – Reveals an element's tooltip. Tooltips with zero-length titles are never displayed.
|
|
||||||
* * `hide` – Hides an element's tooltip.
|
|
||||||
* * `toggle` – Toggles an element's tooltip.
|
|
||||||
* * `dispose` – Hides and destroys an element's tooltip.
|
|
||||||
* Tooltips that use delegation (which are created using `selector` option) cannot be individually destroyed on descendant trigger elements.
|
|
||||||
* * `enable` – Gives an element's tooltip the ability to be shown. Tooltips are enabled by default.
|
|
||||||
* * `disable` – Removes the ability for an element's tooltip to be shown. The tooltip will only be able to be shown if it is re-enabled.
|
|
||||||
* * `toggleEnabled` – Toggles the ability for an element's tooltip to be shown or hidden.
|
|
||||||
* * `update` – Updates the position of an element's tooltip.
|
|
||||||
*
|
|
||||||
* Returns to the caller before the tooltip has actually been shown or hidden (i.e. before the `shown.bs.tooltip` or `hidden.bs.tooltip` event occurs).
|
|
||||||
* This is considered a "manual" triggering of the tooltip.
|
|
||||||
*/
|
|
||||||
tooltip(action: "show" | "hide" | "toggle" | "dispose" | "enable" | "disable" | "toggleEnabled" | "update"): this;
|
|
||||||
/**
|
|
||||||
* Attaches a tooltip handler to an element collection.
|
|
||||||
*/
|
|
||||||
tooltip(options?: TooltipOption): this;
|
|
||||||
|
|
||||||
on(events: CarouselEvent, handler: JQuery.EventHandlerBase<TElement, CarouselEventHandler<TElement>>): this;
|
|
||||||
on(events: DropdownEvent, handler: JQuery.EventHandlerBase<TElement, DropdownsEventHandler<TElement>>): this;
|
|
||||||
on(events: ModalEvent, handler: JQuery.EventHandlerBase<TElement, ModalEventHandler<TElement>>): this;
|
|
||||||
on(events: TapEvent, handler: JQuery.EventHandlerBase<TElement, TapEventHandler<TElement>>): this;
|
|
||||||
on(
|
|
||||||
events: AlertEvent | CollapseEvent | PopoverEvent | ScrollspyEvent | ToastEvent | TooltipEvent,
|
|
||||||
handler: JQuery.EventHandler<TElement>
|
|
||||||
): this;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+8
-8
@@ -60,18 +60,18 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import "../scss/bootstrap5.scss";
|
import "@scss/common/bootstrap5.scss";
|
||||||
import "../scss/game_bg.scss";
|
import "@scss/game_bg.scss";
|
||||||
import "../../css/config.css";
|
import "../../css/config.css";
|
||||||
|
|
||||||
import { defineComponent, onMounted, reactive, ref } from "vue";
|
import { defineComponent, onMounted, reactive, ref } from "vue";
|
||||||
import TopBackBar from "./components/TopBackBar.vue";
|
import TopBackBar from "@/components/TopBackBar.vue";
|
||||||
import BoardArticle from "./components/BoardArticle.vue";
|
import BoardArticle from "@/components/BoardArticle.vue";
|
||||||
import { convertFormData } from "./util/convertFormData";
|
import { convertFormData } from "@util/convertFormData";
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import { InvalidResponse } from "./defs";
|
import { InvalidResponse } from "@/defs";
|
||||||
import { autoResizeTextarea } from "./util/autoResizeTextarea";
|
import { autoResizeTextarea } from "@util/autoResizeTextarea";
|
||||||
import { unwrap } from "./util/unwrap";
|
import { unwrap } from "@util/unwrap";
|
||||||
export type BoardResponse = {
|
export type BoardResponse = {
|
||||||
result: true;
|
result: true;
|
||||||
articles: Record<number, BoardArticleItem>;
|
articles: Record<number, BoardArticleItem>;
|
||||||
|
|||||||
+8
-8
@@ -294,11 +294,11 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import "../scss/bootstrap5.scss";
|
import "@scss/common/bootstrap5.scss";
|
||||||
import "../scss/game_bg.scss";
|
import "@scss/game_bg.scss";
|
||||||
|
|
||||||
import { defineComponent } from "vue";
|
import { defineComponent } from "vue";
|
||||||
import TopBackBar from "./components/TopBackBar.vue";
|
import TopBackBar from "@/components/TopBackBar.vue";
|
||||||
import {
|
import {
|
||||||
CTable,
|
CTable,
|
||||||
CTableBody,
|
CTableBody,
|
||||||
@@ -306,18 +306,18 @@ import {
|
|||||||
CTableHeaderCell,
|
CTableHeaderCell,
|
||||||
CTableDataCell,
|
CTableDataCell,
|
||||||
} from "@coreui/vue/src/components/table";
|
} from "@coreui/vue/src/components/table";
|
||||||
import { getIconPath } from "./util/getIconPath";
|
import { getIconPath } from "@util/getIconPath";
|
||||||
import { isBrightColor } from "./util/isBrightColor";
|
import { isBrightColor } from "@util/isBrightColor";
|
||||||
import {
|
import {
|
||||||
abilityLeadint,
|
abilityLeadint,
|
||||||
abilityLeadpow,
|
abilityLeadpow,
|
||||||
abilityPowint,
|
abilityPowint,
|
||||||
abilityRand,
|
abilityRand,
|
||||||
} from "./util/generalStats";
|
} from "@util/generalStats";
|
||||||
import { clone, shuffle, sum } from "lodash";
|
import { clone, shuffle, sum } from "lodash";
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import { InvalidResponse } from "./defs";
|
import { InvalidResponse } from "@/defs";
|
||||||
import NumberInputWithInfo from "./components/NumberInputWithInfo.vue";
|
import NumberInputWithInfo from "@/components/NumberInputWithInfo.vue";
|
||||||
|
|
||||||
declare const nationList: {
|
declare const nationList: {
|
||||||
nation: number;
|
nation: number;
|
||||||
|
|||||||
+10
-10
@@ -459,8 +459,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import "../scss/bootstrap5.scss";
|
import "@scss/common/bootstrap5.scss";
|
||||||
import "../scss/game_bg.scss";
|
import "@scss/game_bg.scss";
|
||||||
|
|
||||||
import { defineComponent } from "vue";
|
import { defineComponent } from "vue";
|
||||||
import {
|
import {
|
||||||
@@ -470,17 +470,17 @@ import {
|
|||||||
NPCChiefActions,
|
NPCChiefActions,
|
||||||
NPCGeneralActions,
|
NPCGeneralActions,
|
||||||
ToastType,
|
ToastType,
|
||||||
} from "./defs";
|
} from "@/defs";
|
||||||
import NumberInputWithInfo from "./components/NumberInputWithInfo.vue";
|
import NumberInputWithInfo from "@/components/NumberInputWithInfo.vue";
|
||||||
import { cloneDeep, isEqual, last } from "lodash";
|
import { cloneDeep, isEqual, last } from "lodash";
|
||||||
import { unwrap } from "./util/unwrap";
|
import { unwrap } from "@util/unwrap";
|
||||||
import { convertFormData } from "./util/convertFormData";
|
import { convertFormData } from "@util/convertFormData";
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import { NPCPriorityBtnHelpMessage } from "./helpTexts";
|
import { NPCPriorityBtnHelpMessage } from "@/helpTexts";
|
||||||
import draggable from "vuedraggable";
|
import draggable from "vuedraggable";
|
||||||
import MyToast from "./components/MyToast.vue";
|
import MyToast from "@/components/MyToast.vue";
|
||||||
import TopBackBar from "./components/TopBackBar.vue";
|
import TopBackBar from "@/components/TopBackBar.vue";
|
||||||
import { convertIDArray } from "./util/convertIDArray";
|
import { convertIDArray } from "@util/convertIDArray";
|
||||||
|
|
||||||
declare const nationID: number;
|
declare const nationID: number;
|
||||||
|
|
||||||
|
|||||||
+11
-14
@@ -56,9 +56,6 @@
|
|||||||
Math.min(maxTurn, viewMaxTurn)
|
Math.min(maxTurn, viewMaxTurn)
|
||||||
)"
|
)"
|
||||||
:key="turnIdx"
|
:key="turnIdx"
|
||||||
height="28"
|
|
||||||
:id="`command_${turnIdx}`"
|
|
||||||
:class="turnList.has(turnIdx) ? 'pressed' : ''"
|
|
||||||
>
|
>
|
||||||
<div class="idx_pad center d-grid" @click="toggleTurn(turnIdx)">
|
<div class="idx_pad center d-grid" @click="toggleTurn(turnIdx)">
|
||||||
<b-button
|
<b-button
|
||||||
@@ -206,13 +203,13 @@ import addMinutes from "date-fns/esm/addMinutes";
|
|||||||
import { range } from "lodash";
|
import { range } from "lodash";
|
||||||
import { stringifyUrl } from "query-string";
|
import { stringifyUrl } from "query-string";
|
||||||
import { defineComponent } from "vue";
|
import { defineComponent } from "vue";
|
||||||
import { formatTime } from "./util/formatTime";
|
import { formatTime } from "@util/formatTime";
|
||||||
import { joinYearMonth } from "./util/joinYearMonth";
|
import { joinYearMonth } from "@util/joinYearMonth";
|
||||||
import { mb_strwidth } from "./util/mb_strwidth";
|
import { mb_strwidth } from "@util/mb_strwidth";
|
||||||
import { parseTime } from "./util/parseTime";
|
import { parseTime } from "@util/parseTime";
|
||||||
import { parseYearMonth } from "./util/parseYearMonth";
|
import { parseYearMonth } from "@util/parseYearMonth";
|
||||||
import { sammoAPI } from "./util/sammoAPI";
|
import { sammoAPI } from "@util/sammoAPI";
|
||||||
import { filter초성withAlphabet } from "./util/filter초성withAlphabet";
|
import { filter초성withAlphabet } from "@util/filter초성withAlphabet";
|
||||||
|
|
||||||
type commandItem = {
|
type commandItem = {
|
||||||
value: string;
|
value: string;
|
||||||
@@ -547,10 +544,10 @@ export default defineComponent({
|
|||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import "../scss/break_500px.scss";
|
@import "@scss/common/break_500px.scss";
|
||||||
@import "../scss/variables.scss";
|
@import "@scss/common/variables.scss";
|
||||||
@import "../scss/bootswatch_custom_variables.scss";
|
@import "@scss/common/bootswatch_custom_variables.scss";
|
||||||
@import "../../node_modules/bootstrap5/scss/bootstrap-utilities.scss";
|
@import "bootstrap/scss/bootstrap-utilities.scss";
|
||||||
|
|
||||||
.commandPad {
|
.commandPad {
|
||||||
background-color: $gray-900;
|
background-color: $gray-900;
|
||||||
|
|||||||
+21
-14
@@ -1,17 +1,15 @@
|
|||||||
import { exportWindow } from './util/exportWindow';
|
|
||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import Popper from 'popper.js';
|
|
||||||
exportWindow(Popper, 'Popper');//XXX: 왜 popper를 이렇게 불러야 하는가?
|
|
||||||
import 'bootstrap';
|
import 'bootstrap';
|
||||||
import download from 'downloadjs';
|
import download from 'downloadjs';
|
||||||
import { unwrap } from "./util/unwrap";
|
import { unwrap } from "@util/unwrap";
|
||||||
import { isInteger } from 'lodash';
|
import { isInteger } from 'lodash';
|
||||||
import { combineArray, errUnknown, getNpcColor } from './common_legacy';
|
import { combineArray, errUnknown, getNpcColor } from '@/common_legacy';
|
||||||
import { isBrightColor } from "./util/isBrightColor";
|
import { isBrightColor } from "@util/isBrightColor";
|
||||||
import { numberWithCommas } from "./util/numberWithCommas";
|
import { numberWithCommas } from "@util/numberWithCommas";
|
||||||
import { unwrap_any } from './util/unwrap_any';
|
import { unwrap_any } from '@util/unwrap_any';
|
||||||
import { BasicGeneralListResponse, InvalidResponse } from './defs';
|
import { BasicGeneralListResponse, InvalidResponse } from '@/defs';
|
||||||
import { formatTime } from './util/formatTime';
|
import { formatTime } from '@util/formatTime';
|
||||||
|
import { Modal } from 'bootstrap';
|
||||||
|
|
||||||
type CityAttackerInfo = {
|
type CityAttackerInfo = {
|
||||||
level: number,
|
level: number,
|
||||||
@@ -126,6 +124,8 @@ declare global {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let modalImport: Modal|undefined = undefined;
|
||||||
|
|
||||||
$(function ($) {
|
$(function ($) {
|
||||||
|
|
||||||
|
|
||||||
@@ -225,7 +225,10 @@ $(function ($) {
|
|||||||
|
|
||||||
const $modal = $('#importModal');
|
const $modal = $('#importModal');
|
||||||
$modal.data('target', $card);
|
$modal.data('target', $card);
|
||||||
$modal.modal('show');
|
if(!modalImport){
|
||||||
|
modalImport = new Modal($modal[0]);
|
||||||
|
}
|
||||||
|
modalImport.show();
|
||||||
});
|
});
|
||||||
|
|
||||||
$('.btn-general-save').on('click', function () {
|
$('.btn-general-save').on('click', function () {
|
||||||
@@ -962,13 +965,15 @@ $(function ($) {
|
|||||||
const $card = $modal.data('target');
|
const $card = $modal.data('target');
|
||||||
importGeneralInfo($card, data.general);
|
importGeneralInfo($card, data.general);
|
||||||
|
|
||||||
$modal.modal('hide');
|
if(modalImport){
|
||||||
|
modalImport.hide();
|
||||||
|
}
|
||||||
}, errUnknown);
|
}, errUnknown);
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
$('#importModal').on('show.bs.modal', function () {
|
unwrap(document.querySelector('#importModal')).addEventListener('show.bs.modal', function () {
|
||||||
if (!initGeneralList) {
|
if (!initGeneralList) {
|
||||||
const $list = $('#modalSelector');
|
const $list = $('#modalSelector');
|
||||||
|
|
||||||
@@ -1011,7 +1016,9 @@ $(function ($) {
|
|||||||
}).then(function (data: BasicGeneralListResponse | InvalidResponse) {
|
}).then(function (data: BasicGeneralListResponse | InvalidResponse) {
|
||||||
if (!data.result) {
|
if (!data.result) {
|
||||||
alert(data.reason);
|
alert(data.reason);
|
||||||
$('#importModal').modal('hide');
|
if(modalImport){
|
||||||
|
modalImport.hide();
|
||||||
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+4
-4
@@ -1,9 +1,9 @@
|
|||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import { setAxiosXMLHttpRequest } from './util/setAxiosXMLHttpRequest';
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
import { InvalidResponse } from './defs';
|
import { InvalidResponse } from '@/defs';
|
||||||
import { convertFormData } from './util/convertFormData';
|
import { convertFormData } from '@util/convertFormData';
|
||||||
import { unwrap_any } from './util/unwrap_any';
|
import { unwrap_any } from '@util/unwrap_any';
|
||||||
|
|
||||||
$(function($){
|
$(function($){
|
||||||
setAxiosXMLHttpRequest();
|
setAxiosXMLHttpRequest();
|
||||||
|
|||||||
+4
-7
@@ -1,12 +1,9 @@
|
|||||||
import { exportWindow } from './util/exportWindow';
|
|
||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import { convertFormData } from './util/convertFormData';
|
import { convertFormData } from '@util/convertFormData';
|
||||||
import { InvalidResponse } from './defs';
|
import { InvalidResponse } from '@/defs';
|
||||||
import { unwrap_any } from './util/unwrap_any';
|
import { unwrap_any } from '@util/unwrap_any';
|
||||||
import { setAxiosXMLHttpRequest } from './util/setAxiosXMLHttpRequest';
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
import Popper from 'popper.js';
|
|
||||||
exportWindow(Popper, 'Popper');
|
|
||||||
import 'bootstrap';
|
import 'bootstrap';
|
||||||
import 'select2/dist/js/select2.full.js'
|
import 'select2/dist/js/select2.full.js'
|
||||||
|
|
||||||
|
|||||||
@@ -2,15 +2,15 @@ import axios from 'axios';
|
|||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import { range } from 'lodash';
|
import { range } from 'lodash';
|
||||||
import { addMinutes } from 'date-fns';
|
import { addMinutes } from 'date-fns';
|
||||||
import { errUnknown, getNpcColor } from './common_legacy';
|
import { errUnknown, getNpcColor } from '@/common_legacy';
|
||||||
import { InvalidResponse } from './defs';
|
import { InvalidResponse } from '@/defs';
|
||||||
import { unwrap } from "./util/unwrap";
|
import { unwrap } from "@util/unwrap";
|
||||||
import { convertFormData } from './util/convertFormData';
|
import { convertFormData } from '@util/convertFormData';
|
||||||
import { unwrap_any } from "./util/unwrap_any";
|
import { unwrap_any } from "@util/unwrap_any";
|
||||||
import { parseTime } from './util/parseTime';
|
import { parseTime } from '@util/parseTime';
|
||||||
import { formatTime } from './util/formatTime';
|
import { formatTime } from '@util/formatTime';
|
||||||
import { stringifyUrl } from 'query-string';
|
import { stringifyUrl } from 'query-string';
|
||||||
import { setAxiosXMLHttpRequest } from './util/setAxiosXMLHttpRequest';
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
|
|
||||||
setAxiosXMLHttpRequest();
|
setAxiosXMLHttpRequest();
|
||||||
|
|
||||||
|
|||||||
@@ -1,17 +1,15 @@
|
|||||||
import { exportWindow } from "./util/exportWindow";
|
import { exportWindow } from "@util/exportWindow";
|
||||||
import { activateFlip, errUnknown, errUnknownToast, quickReject, initTooltip } from "./common_legacy";
|
import { activateFlip, errUnknown, errUnknownToast, quickReject, initTooltip } from "@/common_legacy";
|
||||||
import { isBrightColor } from "./util/isBrightColor";
|
import { isBrightColor } from "@util/isBrightColor";
|
||||||
import { getIconPath } from "./util/getIconPath";
|
import { getIconPath } from "@util/getIconPath";
|
||||||
import { mb_strwidth } from "./util/mb_strwidth";
|
import { mb_strwidth } from "@util/mb_strwidth";
|
||||||
import { TemplateEngine } from "./util/TemplateEngine";
|
import { TemplateEngine } from "@util/TemplateEngine";
|
||||||
import { escapeHtml } from "./legacy/escapeHtml";
|
import { escapeHtml } from "@/legacy/escapeHtml";
|
||||||
import { nl2br } from "./util/nl2br";
|
import { nl2br } from "@util/nl2br";
|
||||||
import jQuery from "jquery";
|
import jQuery from "jquery";
|
||||||
import Popper from 'popper.js';
|
|
||||||
exportWindow(Popper, 'Popper');//XXX: 왜 popper를 이렇게 불러야 하는가?
|
|
||||||
import 'bootstrap';
|
import 'bootstrap';
|
||||||
|
|
||||||
import "../scss/common_legacy.scss";
|
import "@scss/common_legacy.scss";
|
||||||
|
|
||||||
exportWindow(jQuery, '$');
|
exportWindow(jQuery, '$');
|
||||||
exportWindow(jQuery, 'jQuery');
|
exportWindow(jQuery, 'jQuery');
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import $ from "jquery";
|
import $ from "jquery";
|
||||||
import axios from "axios";
|
import { Tooltip } from "bootstrap";
|
||||||
|
import { trim } from "lodash";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* object의 array를 id를 key로 삼는 object로 재 변환
|
* object의 array를 id를 key로 삼는 object로 재 변환
|
||||||
@@ -185,15 +186,16 @@ export function initTooltip($obj?: JQuery<HTMLElement>): void {
|
|||||||
if (!tooltipClassText) {
|
if (!tooltipClassText) {
|
||||||
tooltipClassText = '';
|
tooltipClassText = '';
|
||||||
}
|
}
|
||||||
const template = `<div class="tooltip ${tooltipClassText}" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>`;
|
const template = `<div class="tooltip ${tooltipClassText}" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>`;
|
||||||
|
|
||||||
$objTooltip.tooltip({
|
const oTooltip = new Tooltip(this, {
|
||||||
title: function(){
|
title: function(){
|
||||||
return $.trim($(this).find('.tooltiptext').html());
|
return trim(this.querySelector('.tooltiptext')?.innerHTML);
|
||||||
},
|
},
|
||||||
template: template,
|
template: template,
|
||||||
html: true
|
html: true
|
||||||
}).tooltip('show');
|
});
|
||||||
|
oTooltip.show();
|
||||||
|
|
||||||
$objTooltip.data('setObjTooltip', true);
|
$objTooltip.data('setObjTooltip', true);
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -50,12 +50,12 @@
|
|||||||
</table>
|
</table>
|
||||||
</template>
|
</template>
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { BoardArticleItem } from "../Board.vue";
|
import { BoardArticleItem } from "@/Board.vue";
|
||||||
import BoardComment from "./BoardComment.vue";
|
import BoardComment from "@/components/BoardComment.vue";
|
||||||
import { defineComponent, PropType } from "vue";
|
import { defineComponent, PropType } from "vue";
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import { convertFormData } from "../util/convertFormData";
|
import { convertFormData } from "@util/convertFormData";
|
||||||
import { InvalidResponse } from "../defs";
|
import { InvalidResponse } from "@/defs";
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: "BoardArticle",
|
name: "BoardArticle",
|
||||||
components: {
|
components: {
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</template>
|
</template>
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { BoardCommentItem } from "../Board.vue";
|
import { BoardCommentItem } from "@/Board.vue";
|
||||||
import { defineComponent, PropType } from "vue";
|
import { defineComponent, PropType } from "vue";
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent, PropType } from "vue";
|
import { defineComponent, PropType } from "vue";
|
||||||
import "../../scss/game_bg.scss";
|
import "@scss/game_bg.scss";
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: "TopBackBar",
|
name: "TopBackBar",
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
</template>
|
</template>
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent, PropType } from "vue";
|
import { defineComponent, PropType } from "vue";
|
||||||
import { ToastType } from "../defs";
|
import { ToastType } from "@/defs";
|
||||||
import { CToaster, CToast, CToastHeader, CToastBody } from "@coreui/vue/src/components/toast";
|
import { CToaster, CToast, CToastHeader, CToastBody } from "@coreui/vue/src/components/toast";
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent, PropType } from "vue";
|
import { defineComponent, PropType } from "vue";
|
||||||
import "../../scss/game_bg.scss";
|
import "@scss/game_bg.scss";
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: "TopBackBar",
|
name: "TopBackBar",
|
||||||
|
|||||||
@@ -1,7 +1,4 @@
|
|||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import { exportWindow } from './util/exportWindow';
|
|
||||||
import Popper from 'popper.js';
|
|
||||||
exportWindow(Popper, 'Popper');
|
|
||||||
import 'bootstrap';
|
import 'bootstrap';
|
||||||
import 'select2/dist/js/select2.full.js'
|
import 'select2/dist/js/select2.full.js'
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { reloadWorldMap } from "./map";
|
import { reloadWorldMap } from "@/map";
|
||||||
import { unwrap_any } from "./util/unwrap_any";
|
import { unwrap_any } from "@util/unwrap_any";
|
||||||
|
|
||||||
export function defaultSelectCityByMap(): void {
|
export function defaultSelectCityByMap(): void {
|
||||||
const $target = $("#destCityID");
|
const $target = $("#destCityID");
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { reloadWorldMap } from "./map";
|
import { reloadWorldMap } from "@/map";
|
||||||
import { unwrap_any } from "./util/unwrap_any";
|
import { unwrap_any } from "@util/unwrap_any";
|
||||||
|
|
||||||
export function defaultSelectNationByMap(): void{
|
export function defaultSelectNationByMap(): void{
|
||||||
const $target = $("#destNationID");
|
const $target = $("#destNationID");
|
||||||
|
|||||||
+4
-7
@@ -1,14 +1,11 @@
|
|||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import Popper from 'popper.js';
|
|
||||||
exportWindow(Popper, 'Popper');//XXX: 왜 popper를 이렇게 불러야 하는가?
|
|
||||||
import 'bootstrap';
|
import 'bootstrap';
|
||||||
import 'summernote/dist/summernote-bs4';
|
import 'summernote/dist/summernote-bs4';
|
||||||
import 'summernote/dist/summernote-bs4.css';
|
import 'summernote/dist/summernote-bs4.css';
|
||||||
import './summernote-image-flip';
|
import '@/summernote-image-flip';
|
||||||
import './summernote-ko-KR';
|
import '@/summernote-ko-KR';
|
||||||
import { activateFlip } from './common_legacy';
|
import { activateFlip } from '@/common_legacy';
|
||||||
import { setAxiosXMLHttpRequest } from './util/setAxiosXMLHttpRequest';
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
import { exportWindow } from './util/exportWindow';
|
|
||||||
|
|
||||||
declare const editable: boolean;
|
declare const editable: boolean;
|
||||||
|
|
||||||
|
|||||||
+8
-11
@@ -1,17 +1,14 @@
|
|||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import { unwrap_any } from './util/unwrap_any';
|
import { unwrap_any } from '@util/unwrap_any';
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import { isBrightColor } from "./util/isBrightColor";
|
import { isBrightColor } from "@util/isBrightColor";
|
||||||
import { setAxiosXMLHttpRequest } from './util/setAxiosXMLHttpRequest';
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
import { isString } from 'lodash';
|
import { isString } from 'lodash';
|
||||||
import { convertFormData } from './util/convertFormData';
|
import { convertFormData } from '@util/convertFormData';
|
||||||
import { InvalidResponse, NationStaticItem } from './defs';
|
import { InvalidResponse, NationStaticItem } from '@/defs';
|
||||||
import { escapeHtml } from './legacy/escapeHtml';
|
import { escapeHtml } from '@/legacy/escapeHtml';
|
||||||
import { nl2br } from './util/nl2br';
|
import { nl2br } from '@util/nl2br';
|
||||||
import { unwrap } from './util/unwrap';
|
import { unwrap } from '@util/unwrap';
|
||||||
import { exportWindow } from './util/exportWindow';
|
|
||||||
import Popper from 'popper.js';
|
|
||||||
exportWindow(Popper, 'Popper');
|
|
||||||
import 'bootstrap';
|
import 'bootstrap';
|
||||||
import 'select2/dist/js/select2.full.js'
|
import 'select2/dist/js/select2.full.js'
|
||||||
import { LoadingData } from 'select2';
|
import { LoadingData } from 'select2';
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import { unwrap_any } from './util/unwrap_any';
|
import { unwrap_any } from '@util/unwrap_any';
|
||||||
|
|
||||||
type UserItem = {
|
type UserItem = {
|
||||||
val: string,
|
val: string,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import { unwrap } from './util/unwrap';
|
import { unwrap } from '@util/unwrap';
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import { setAxiosXMLHttpRequest } from './util/setAxiosXMLHttpRequest';
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
|
|
||||||
type KingdomGeneral = {
|
type KingdomGeneral = {
|
||||||
html: JQuery<HTMLElement>,
|
html: JQuery<HTMLElement>,
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import { unwrap } from "./util/unwrap";
|
import { unwrap } from "@util/unwrap";
|
||||||
import { RuntimeError } from "./util/RuntimeError";
|
import { RuntimeError } from "@util/RuntimeError";
|
||||||
|
|
||||||
declare global {
|
declare global {
|
||||||
interface Window {
|
interface Window {
|
||||||
|
|||||||
@@ -1,14 +1,13 @@
|
|||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import Popper from 'popper.js';
|
|
||||||
exportWindow(Popper, 'Popper');//XXX: 왜 popper를 이렇게 불러야 하는가?
|
|
||||||
import { isNumber } from 'lodash';
|
import { isNumber } from 'lodash';
|
||||||
import { TemplateEngine } from '../util/TemplateEngine';
|
import { TemplateEngine } from '@util/TemplateEngine';
|
||||||
import { InvalidResponse } from '../defs';
|
import { InvalidResponse } from '@/defs';
|
||||||
import { setAxiosXMLHttpRequest } from '../util/setAxiosXMLHttpRequest';
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
import { unwrap_any } from '../util/unwrap_any';
|
import { unwrap_any } from '@util/unwrap_any';
|
||||||
import { convertFormData } from '../util/convertFormData';
|
import { convertFormData } from '@util/convertFormData';
|
||||||
import { exportWindow } from '../util/exportWindow';
|
import { exportWindow } from '@util/exportWindow';
|
||||||
|
import '@/gateway/common';
|
||||||
|
|
||||||
type UserEntry = {
|
type UserEntry = {
|
||||||
userID: string,
|
userID: string,
|
||||||
|
|||||||
@@ -1,11 +1,12 @@
|
|||||||
import { exportWindow } from '../util/exportWindow';
|
import { exportWindow } from '@util/exportWindow';
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import { setAxiosXMLHttpRequest } from '../util/setAxiosXMLHttpRequest';
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
import { InvalidResponse } from '../defs';
|
import { InvalidResponse } from '@/defs';
|
||||||
import { convertFormData } from '../util/convertFormData';
|
import { convertFormData } from '@util/convertFormData';
|
||||||
import { TemplateEngine } from "../util/TemplateEngine";
|
import { TemplateEngine } from "@util/TemplateEngine";
|
||||||
import { unwrap_any } from '../util/unwrap_any';
|
import { unwrap_any } from '@util/unwrap_any';
|
||||||
import { unwrap } from '../util/unwrap';
|
import { unwrap } from '@util/unwrap';
|
||||||
|
import '@/gateway/common';
|
||||||
|
|
||||||
type ServerUpdateResponse = {
|
type ServerUpdateResponse = {
|
||||||
result: true,
|
result: true,
|
||||||
|
|||||||
@@ -0,0 +1,3 @@
|
|||||||
|
|
||||||
|
import 'bootstrap';
|
||||||
|
import "@scss/common/bootstrap5.scss";
|
||||||
@@ -1,16 +1,14 @@
|
|||||||
import { exportWindow } from '../util/exportWindow';
|
import { exportWindow } from '@util/exportWindow';
|
||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
exportWindow($, '$');
|
exportWindow($, '$');
|
||||||
import Popper from 'popper.js';
|
|
||||||
exportWindow(Popper, 'Popper');//XXX: 왜 popper를 이렇게 불러야 하는가?
|
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import 'bootstrap';
|
import { initTooltip } from '@/common_legacy';
|
||||||
import { initTooltip } from '../common_legacy';
|
import { TemplateEngine } from '@util/TemplateEngine';
|
||||||
import { TemplateEngine } from "../util/TemplateEngine";
|
import { InvalidResponse } from '@/defs';
|
||||||
import { InvalidResponse } from '../defs';
|
import { getDateTimeNow } from '@util/getDateTimeNow';
|
||||||
import { getDateTimeNow } from '../util/getDateTimeNow';
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
import { setAxiosXMLHttpRequest } from '../util/setAxiosXMLHttpRequest';
|
import { loadPlugin as loadAdminPlugin } from '@/gateway/admin_server';
|
||||||
import { loadPlugin as loadAdminPlugin } from './admin_server';
|
import '@/gateway/common';
|
||||||
|
|
||||||
|
|
||||||
declare const isAdmin: boolean;
|
declare const isAdmin: boolean;
|
||||||
|
|||||||
@@ -1,14 +1,15 @@
|
|||||||
|
|
||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import { setAxiosXMLHttpRequest } from '../util/setAxiosXMLHttpRequest';
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
import { InvalidResponse } from '../defs';
|
import { InvalidResponse } from '@/defs';
|
||||||
import { JQValidateForm, NamedRules } from '../util/jqValidateForm';
|
import { JQValidateForm, NamedRules } from '@util/jqValidateForm';
|
||||||
import { convertFormData } from '../util/convertFormData';
|
import { convertFormData } from '@util/convertFormData';
|
||||||
import { unwrap_any } from '../util/unwrap_any';
|
import { unwrap_any } from '@util/unwrap_any';
|
||||||
import { mb_strwidth } from '../util/mb_strwidth';
|
import { mb_strwidth } from '@util/mb_strwidth';
|
||||||
import { isString } from 'lodash';
|
import { isString } from 'lodash';
|
||||||
import { sha512 } from 'js-sha512';
|
import { sha512 } from 'js-sha512';
|
||||||
|
import '@/gateway/common';
|
||||||
|
|
||||||
async function changeInstallMode() {
|
async function changeInstallMode() {
|
||||||
let result: {
|
let result: {
|
||||||
|
|||||||
@@ -1,13 +1,15 @@
|
|||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import { JQValidateForm, NamedRules } from '../util/jqValidateForm';
|
import { JQValidateForm, NamedRules } from '@util/jqValidateForm';
|
||||||
import { convertFormData } from '../util/convertFormData';
|
import { convertFormData } from '@util/convertFormData';
|
||||||
import { InvalidResponse } from '../defs';
|
import { InvalidResponse } from '@/defs';
|
||||||
import { setAxiosXMLHttpRequest } from '../util/setAxiosXMLHttpRequest';
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
import { unwrap_any } from '../util/unwrap_any';
|
import { unwrap_any } from '@util/unwrap_any';
|
||||||
import { sha512 } from 'js-sha512';
|
import { sha512 } from 'js-sha512';
|
||||||
import { isString } from 'lodash';
|
import { isString } from 'lodash';
|
||||||
import { mb_strwidth } from '../util/mb_strwidth';
|
import { mb_strwidth } from '@util/mb_strwidth';
|
||||||
|
import '@/gateway/common';
|
||||||
|
|
||||||
|
|
||||||
$(async function () {
|
$(async function () {
|
||||||
setAxiosXMLHttpRequest();
|
setAxiosXMLHttpRequest();
|
||||||
|
|||||||
+30
-19
@@ -1,18 +1,17 @@
|
|||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import 'popper.js';
|
import { JQValidateForm, NamedRules } from '@util/jqValidateForm';
|
||||||
import Popper from 'popper.js';
|
|
||||||
(window as unknown as { Popper: unknown }).Popper = Popper;
|
|
||||||
import 'bootstrap';
|
|
||||||
import { JQValidateForm, NamedRules } from '../util/jqValidateForm';
|
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import { convertFormData } from '../util/convertFormData';
|
import { convertFormData } from '@util/convertFormData';
|
||||||
import { setAxiosXMLHttpRequest } from '../util/setAxiosXMLHttpRequest';
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
import { unwrap_any } from '../util/unwrap_any';
|
import { unwrap_any } from '@util/unwrap_any';
|
||||||
import { sha512 } from 'js-sha512';
|
import { sha512 } from 'js-sha512';
|
||||||
import { unwrap } from '../util/unwrap';
|
import { unwrap } from '@util/unwrap';
|
||||||
import { InvalidResponse } from '../defs';
|
import { InvalidResponse } from '@/defs';
|
||||||
import internal from 'stream';
|
import { delay } from '@util/delay';
|
||||||
import { delay } from '../util/delay';
|
import { Modal } from 'bootstrap';
|
||||||
|
import '@/gateway/common';
|
||||||
|
|
||||||
|
import '@scss/gateway/login.scss';
|
||||||
|
|
||||||
type LoginResponse = {
|
type LoginResponse = {
|
||||||
result: true,
|
result: true,
|
||||||
@@ -55,6 +54,8 @@ declare global {
|
|||||||
declare const kakao_oauth_client_id: string;
|
declare const kakao_oauth_client_id: string;
|
||||||
declare const kakao_oauth_redirect_uri: string;
|
declare const kakao_oauth_redirect_uri: string;
|
||||||
|
|
||||||
|
let modalOTP: Modal | undefined = undefined;
|
||||||
|
|
||||||
let oauthMode: string | null = null;
|
let oauthMode: string | null = null;
|
||||||
|
|
||||||
const TOKEN_VERSION = 1;
|
const TOKEN_VERSION = 1;
|
||||||
@@ -229,11 +230,15 @@ async function doLoginUsingOAuth() {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const $modal = $('#modalOTP').modal() as unknown as JQuery;
|
const modalEl = unwrap(document.querySelector('#modalOTP'))
|
||||||
$modal.on('shown.bs.modal', function () {
|
if (!modalOTP) {
|
||||||
$('#otp_code').trigger('focus');
|
modalOTP = new Modal(modalEl);
|
||||||
|
modalEl.addEventListener('shown.bs.modal', function () {
|
||||||
|
unwrap(document.querySelector<HTMLElement>('#otp_code')).focus();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
modalOTP.show();
|
||||||
|
}
|
||||||
|
|
||||||
function postOAuthResult(mode: string) {
|
function postOAuthResult(mode: string) {
|
||||||
if (mode == 'join') {
|
if (mode == 'join') {
|
||||||
@@ -339,10 +344,14 @@ $(async function ($) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const $modal = $('#modalOTP').modal() as unknown as JQuery;
|
const modalEl = unwrap(document.querySelector('#modalOTP'))
|
||||||
$modal.on('shown.bs.modal', function () {
|
if (!modalOTP) {
|
||||||
$('#otp_code').trigger('focus');
|
modalOTP = new Modal(modalEl);
|
||||||
|
modalEl.addEventListener('shown.bs.modal', function () {
|
||||||
|
unwrap(document.querySelector<HTMLElement>('#otp_code')).focus();
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
modalOTP.show();
|
||||||
});
|
});
|
||||||
|
|
||||||
$('#otp_form').on('submit', async function (e) {
|
$('#otp_form').on('submit', async function (e) {
|
||||||
@@ -376,7 +385,9 @@ $(async function ($) {
|
|||||||
alert(result.reason);
|
alert(result.reason);
|
||||||
|
|
||||||
if (result.reset) {
|
if (result.reset) {
|
||||||
$('#modalOTP').modal('hide')
|
if (modalOTP) {
|
||||||
|
modalOTP.hide();
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
+14
-14
@@ -1,18 +1,16 @@
|
|||||||
import { setAxiosXMLHttpRequest } from "../util/setAxiosXMLHttpRequest";
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import Popper from 'popper.js';
|
|
||||||
exportWindow(Popper, 'Popper');//XXX: 왜 popper를 이렇게 불러야 하는가?
|
|
||||||
import 'bootstrap';
|
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import { subDays } from 'date-fns';
|
import { subDays } from 'date-fns';
|
||||||
import { getDateTimeNow } from "../util/getDateTimeNow";
|
import { getDateTimeNow } from '@util/getDateTimeNow';
|
||||||
import { sha512 } from "js-sha512";
|
import { sha512 } from "js-sha512";
|
||||||
import { convertFormData } from "../util/convertFormData";
|
import { convertFormData } from '@util/convertFormData';
|
||||||
import { InvalidResponse } from "../defs";
|
import { InvalidResponse } from '@/defs';
|
||||||
import { unwrap } from "../util/unwrap";
|
import { unwrap } from '@util/unwrap';
|
||||||
import { parseTime } from "../util/parseTime";
|
import { parseTime } from '@util/parseTime';
|
||||||
import { formatTime } from "../util/formatTime";
|
import { formatTime } from '@util/formatTime';
|
||||||
import { exportWindow } from "../util/exportWindow";
|
import '@/gateway/common';
|
||||||
|
import { Modal } from 'bootstrap';
|
||||||
|
|
||||||
type ResultUserInfo = {
|
type ResultUserInfo = {
|
||||||
result: true,
|
result: true,
|
||||||
@@ -131,14 +129,16 @@ function showAdjustServerModal(serverList: [string, string][]) {
|
|||||||
$form.append($item);
|
$form.append($item);
|
||||||
}
|
}
|
||||||
|
|
||||||
const $modal = $('#chooseServer');
|
const modalEl = unwrap(document.querySelector('#chooseServer'));
|
||||||
$modal.modal({
|
const modal = new Modal(modalEl, {
|
||||||
backdrop: 'static'
|
backdrop: 'static'
|
||||||
});
|
});
|
||||||
$modal.on('hidden.bs.modal', function () {
|
|
||||||
|
modalEl.addEventListener('hidden.bs.modal', function () {
|
||||||
location.reload();
|
location.reload();
|
||||||
return;
|
return;
|
||||||
});
|
});
|
||||||
|
modal.show();
|
||||||
|
|
||||||
$("#modal-apply").off("click").on("click", async function () {
|
$("#modal-apply").off("click").on("click", async function () {
|
||||||
const events: Promise<unknown>[] = [];
|
const events: Promise<unknown>[] = [];
|
||||||
|
|||||||
@@ -1,10 +1,7 @@
|
|||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import { stringifyUrl } from 'query-string';
|
import { stringifyUrl } from 'query-string';
|
||||||
import { initTooltip } from './common_legacy';
|
import { initTooltip } from '@/common_legacy';
|
||||||
import Popper from 'popper.js';
|
|
||||||
exportWindow(Popper, 'Popper');
|
|
||||||
import 'bootstrap';
|
import 'bootstrap';
|
||||||
import { exportWindow } from './util/exportWindow';
|
|
||||||
|
|
||||||
$(function ($) {
|
$(function ($) {
|
||||||
$('#by_scenario').on('change', function (e) {
|
$('#by_scenario').on('change', function (e) {
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
import { NPCChiefActions, NPCGeneralActions } from "./defs";
|
import { NPCChiefActions, NPCGeneralActions } from "@/defs";
|
||||||
|
|
||||||
export const NPCPriorityBtnHelpMessage: {
|
export const NPCPriorityBtnHelpMessage: {
|
||||||
[v in NPCChiefActions | NPCGeneralActions]: string;
|
[v in NPCChiefActions | NPCGeneralActions]: string;
|
||||||
|
|||||||
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import './map';
|
import '@/map';
|
||||||
|
|
||||||
declare const startYear:number;
|
declare const startYear:number;
|
||||||
declare const startMonth:number;
|
declare const startMonth:number;
|
||||||
|
|||||||
@@ -259,13 +259,13 @@
|
|||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent } from "vue";
|
import { defineComponent } from "vue";
|
||||||
import "../scss/bootstrap5.scss";
|
import "@scss/common/bootstrap5.scss";
|
||||||
import "../scss/game_bg.scss";
|
import "@scss/game_bg.scss";
|
||||||
import TopBackBar from "./components/TopBackBar.vue";
|
import TopBackBar from "@/components/TopBackBar.vue";
|
||||||
import _ from "lodash";
|
import _ from "lodash";
|
||||||
import { InvalidResponse } from "./defs";
|
import { InvalidResponse } from "@/defs";
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import NumberInputWithInfo from "./components/NumberInputWithInfo.vue";
|
import NumberInputWithInfo from "@/components/NumberInputWithInfo.vue";
|
||||||
|
|
||||||
type InheritanceType =
|
type InheritanceType =
|
||||||
| "previous"
|
| "previous"
|
||||||
|
|||||||
+5
-7
@@ -1,13 +1,11 @@
|
|||||||
import $ from "jquery";
|
import $ from "jquery";
|
||||||
import Popper from 'popper.js';
|
|
||||||
(window as unknown as {Popper:unknown}).Popper = Popper;//XXX: 왜 popper를 이렇게 불러야 하는가?
|
|
||||||
import 'bootstrap';
|
import 'bootstrap';
|
||||||
import { setAxiosXMLHttpRequest } from "./util/setAxiosXMLHttpRequest";
|
import { setAxiosXMLHttpRequest } from "@util/setAxiosXMLHttpRequest";
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import { InvalidResponse } from "./defs";
|
import { InvalidResponse } from "@/defs";
|
||||||
import { JQValidateForm, NamedRules } from "./util/jqValidateForm";
|
import { JQValidateForm, NamedRules } from "@util/jqValidateForm";
|
||||||
import { convertFormData } from "./util/convertFormData";
|
import { convertFormData } from "@util/convertFormData";
|
||||||
import { exportWindow } from "./util/exportWindow";
|
import { exportWindow } from "@util/exportWindow";
|
||||||
|
|
||||||
type ResponseScenarioItem = {
|
type ResponseScenarioItem = {
|
||||||
year?: number,
|
year?: number,
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
|
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import jQuery from 'jquery';
|
import jQuery from 'jquery';
|
||||||
import { JQValidateForm, NamedRules } from './util/jqValidateForm';
|
import { JQValidateForm, NamedRules } from '@util/jqValidateForm';
|
||||||
import { convertFormData } from './util/convertFormData';
|
import { convertFormData } from '@util/convertFormData';
|
||||||
import { InvalidResponse } from './defs';
|
import { InvalidResponse } from '@/defs';
|
||||||
import { setAxiosXMLHttpRequest } from './util/setAxiosXMLHttpRequest';
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
|
|
||||||
jQuery(async function ($) {
|
jQuery(async function ($) {
|
||||||
setAxiosXMLHttpRequest();
|
setAxiosXMLHttpRequest();
|
||||||
|
|||||||
+9
-11
@@ -1,21 +1,19 @@
|
|||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import Popper from 'popper.js';
|
|
||||||
exportWindow(Popper, 'Popper');//XXX: 왜 popper를 이렇게 불러야 하는가?
|
|
||||||
import 'bootstrap';
|
import 'bootstrap';
|
||||||
import { activateFlip, initTooltip } from './common_legacy';
|
import { activateFlip, initTooltip } from '@/common_legacy';
|
||||||
import './msg.ts';
|
import '@/msg.ts';
|
||||||
import './map.ts';
|
import '@/map.ts';
|
||||||
import { exportWindow } from './util/exportWindow';
|
import { exportWindow } from '@util/exportWindow';
|
||||||
|
|
||||||
import { scrollHardTo } from './util/scrollHardTo';
|
import { scrollHardTo } from '@util/scrollHardTo';
|
||||||
|
|
||||||
exportWindow(scrollHardTo, 'scrollHardTo');
|
exportWindow(scrollHardTo, 'scrollHardTo');
|
||||||
exportWindow($, '$');
|
exportWindow($, '$');
|
||||||
|
|
||||||
import '../scss/main.scss';
|
import '@scss/main.scss';
|
||||||
import { unwrap } from './util/unwrap';
|
import { unwrap } from '@util/unwrap';
|
||||||
import { auto500px } from './util/auto500px';
|
import { auto500px } from '@util/auto500px';
|
||||||
import { htmlReady } from './util/htmlReady';
|
import { htmlReady } from '@util/htmlReady';
|
||||||
|
|
||||||
$(function ($) {
|
$(function ($) {
|
||||||
$('.refreshPage').click(function () {
|
$('.refreshPage').click(function () {
|
||||||
|
|||||||
+5
-5
@@ -1,11 +1,11 @@
|
|||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import { extend, isNumber } from 'lodash';
|
import { extend, isNumber } from 'lodash';
|
||||||
import { convColorValue, convertDictById, stringFormat } from './common_legacy';
|
import { convColorValue, convertDictById, stringFormat } from '@/common_legacy';
|
||||||
import { InvalidResponse } from './defs';
|
import { InvalidResponse } from '@/defs';
|
||||||
import { unwrap } from "./util/unwrap";
|
import { unwrap } from "@util/unwrap";
|
||||||
import { convertFormData } from './util/convertFormData';
|
import { convertFormData } from '@util/convertFormData';
|
||||||
import { exportWindow } from './util/exportWindow';
|
import { exportWindow } from '@util/exportWindow';
|
||||||
|
|
||||||
declare const serverNick: string;
|
declare const serverNick: string;
|
||||||
declare const serverID: string;
|
declare const serverID: string;
|
||||||
|
|||||||
+12
-12
@@ -1,20 +1,20 @@
|
|||||||
|
|
||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import { InvalidResponse } from './defs';
|
import { InvalidResponse } from '@/defs';
|
||||||
import { getDateTimeNow } from './util/getDateTimeNow';
|
import { getDateTimeNow } from '@util/getDateTimeNow';
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import { convertFormData } from './util/convertFormData';
|
import { convertFormData } from '@util/convertFormData';
|
||||||
import { isBrightColor } from "./util/isBrightColor";
|
import { isBrightColor } from "@util/isBrightColor";
|
||||||
import { unwrap } from './util/unwrap';
|
import { unwrap } from '@util/unwrap';
|
||||||
import _ from 'lodash';
|
import _ from 'lodash';
|
||||||
import { addMinutes } from 'date-fns';
|
import { addMinutes } from 'date-fns';
|
||||||
import { parseTime } from './util/parseTime';
|
import { parseTime } from '@util/parseTime';
|
||||||
import { formatTime } from './util/formatTime';
|
import { formatTime } from '@util/formatTime';
|
||||||
import { TemplateEngine } from './util/TemplateEngine';
|
import { TemplateEngine } from '@util/TemplateEngine';
|
||||||
import { isNotNull } from './util/isNotNull';
|
import { isNotNull } from '@util/isNotNull';
|
||||||
import { unwrap_any } from './util/unwrap_any';
|
import { unwrap_any } from '@util/unwrap_any';
|
||||||
import { setAxiosXMLHttpRequest } from './util/setAxiosXMLHttpRequest';
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
import { exportWindow } from './util/exportWindow';
|
import { exportWindow } from '@util/exportWindow';
|
||||||
|
|
||||||
const messageTemplate = `<div
|
const messageTemplate = `<div
|
||||||
class="msg_plate msg_plate_<%msgType%> msg_plate_<%nationType%>"
|
class="msg_plate msg_plate_<%msgType%> msg_plate_<%nationType%>"
|
||||||
|
|||||||
+5
-5
@@ -1,10 +1,10 @@
|
|||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import { InvalidResponse } from './defs';
|
import { InvalidResponse } from '@/defs';
|
||||||
import { convertFormData } from './util/convertFormData';
|
import { convertFormData } from '@util/convertFormData';
|
||||||
import { setAxiosXMLHttpRequest } from './util/setAxiosXMLHttpRequest';
|
import { setAxiosXMLHttpRequest } from '@util/setAxiosXMLHttpRequest';
|
||||||
import { unwrap } from './util/unwrap';
|
import { unwrap } from '@util/unwrap';
|
||||||
import { unwrap_any } from './util/unwrap_any';
|
import { unwrap_any } from '@util/unwrap_any';
|
||||||
|
|
||||||
|
|
||||||
type LogResponse = {
|
type LogResponse = {
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user