Fix: complete extending maestro
This commit is contained in:
@@ -33,6 +33,7 @@
|
||||
<script type="text/javascript" src="./../../../resources/jquery/jquery-3.3.1.min.js"></script>
|
||||
<script type="text/javascript" src="./../../game/lib/util/number_util.js"></script>
|
||||
<script type="text/javascript" src="./../js/main.js"></script>
|
||||
<script type="text/javascript" src="./../js/maestro_available_date.js"></script>
|
||||
<script type="text/javascript" src="./../js/request_server.js"></script>
|
||||
<script type="text/javascript" src="./../js/lib/account_info.js"></script>
|
||||
<script type="text/javascript">
|
||||
@@ -171,23 +172,10 @@
|
||||
// console.log("day : " + availableDateArray[2]);
|
||||
var endDate = new Date(availableDateArray[0], availableDateArray[1] - 1, availableDateArray[2]);
|
||||
// console.log("endDate : " + endDate);
|
||||
/*
|
||||
var newDate = new Date(endDate.setFullYear(endDate.getFullYear() + 1));
|
||||
// console.log("newDate : " + newDate);
|
||||
// var newAvailableDate = newDate.toISOString().substring(0, 10);
|
||||
var newAvailableDate = newDate.getFullYear() + "-" + ("0"+(newDate.getMonth()+1)).slice(-2) + "-" + ("0" + newDate.getDate()).slice(-2);
|
||||
var maestroAvailableDate = new MaestroAvailableDate();
|
||||
maestroAvailableDate.setEndDate(endDate);
|
||||
newAvailableDate = maestroAvailableDate.getNewAvailableDate();
|
||||
// console.log("newAvailableDate : " + newAvailableDate);
|
||||
*/
|
||||
var today = new Date();
|
||||
var endDay = new Date(endDate);
|
||||
var diffDay = (endDay.getTime() - today.getTime()) / (1000 * 60 * 60 * 24);
|
||||
var newDate = null;
|
||||
if(diffDay < 0) // end date is over
|
||||
newDate = new Date(today.setFullYear(today.getFullYear() + 1));
|
||||
else
|
||||
newDate = new Date(endDay.setFullYear(endDay.getFullYear() + 1));
|
||||
newAvailableDate = newDate.getFullYear() + "-" + ("0"+(newDate.getMonth()+1)).slice(-2) + "-" + ("0" + newDate.getDate()).slice(-2);
|
||||
console.log("newAvailableDate : " + newAvailableDate);
|
||||
|
||||
// console.log(maestroExtensionID);
|
||||
// console.log(maestroID);
|
||||
|
||||
@@ -21,12 +21,26 @@ MaestroAvailableDate.prototype.getDiffDay = function() {
|
||||
return Math.ceil(diffDay);
|
||||
}
|
||||
|
||||
MaestroAvailableDate.prototype.getNewAvailableDate = function(diffDay) {
|
||||
MaestroAvailableDate.prototype.isExpiredMaestro = function() {
|
||||
if(this.getDiffDay() < 0)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
MaestroAvailableDate.prototype.getAvailableDate = function() {
|
||||
return this.endDate;
|
||||
}
|
||||
|
||||
MaestroAvailableDate.prototype.getNewAvailableDate = function() {
|
||||
var diffDay = this.getDiffDay();
|
||||
|
||||
var newDate = null;
|
||||
if(diffDay < 0) // end date is over
|
||||
newDate = new Date(new Date().setFullYear(this.today.getFullYear() + 1));
|
||||
else
|
||||
newDate = new Date(new Date().setFullYear(this.endDay.getFullYear() + 1));
|
||||
newDate = new Date(new Date(this.endDate).setFullYear(this.endDay.getFullYear() + 1));
|
||||
// console.log("# newDate : " + newDate);
|
||||
|
||||
var year2Digits = newDate.getFullYear();
|
||||
var month2Digits = ("0"+(newDate.getMonth()+1)).slice(-2);
|
||||
@@ -45,7 +59,7 @@ MaestroAvailableDate.prototype.showMaestroExtensionMessage = function(maestroNam
|
||||
|
||||
var message = "";
|
||||
if(diffDay > 0)
|
||||
message = "<span class='font-weight-bold'>" + maestroName + "</span> 계정의 유효기간이 얼마 남지 않았습니다.<br/>1년 더 사용을 원하신다면 우측의 [유효기간 연장] 버튼을 눌러주세요.";
|
||||
message = "<span class='font-weight-bold'>" + maestroName + "</span> 계정의 유효기간이 얼마 남지 않았습니다.<br/>1년 더 사용하기를 원하신다면 우측의 [유효기간 연장] 버튼을 눌러주세요.";
|
||||
else
|
||||
message = "<span class='font-weight-bold'>" + maestroName + "</span> 계정의 유효기간이 지났습니다. 등록된 학생들의 정보는 유지되지만, 로그인이 제한됩니다.<br/>유효기간 연장을 하시면 다시 로그인하고 사용할 수 있게 됩니다.";
|
||||
|
||||
@@ -61,12 +75,12 @@ MaestroAvailableDate.prototype.showEndDate = function() {
|
||||
$("#end_day").html(this.endDate);
|
||||
|
||||
if(diffDay < 0) {
|
||||
$("#maestro_count_down_date").html("유효 기간 : ~ " + this.endDate + " <span id='countdown_day'>(" + Math.abs(diffDay) + "일 경과) </span>");
|
||||
$("#maestro_count_down_date").html("유효기간 : ~ " + this.endDate + " <span id='countdown_day'>(" + Math.abs(diffDay) + "일 경과) </span>");
|
||||
|
||||
$("#countdown_day").addClass("bg-danger font-weight-bold text-light");
|
||||
}
|
||||
else {
|
||||
$("#maestro_count_down_date").html("유효 기간 : ~ " + this.endDate + " <span id='countdown_day'>(남은 기간 : " + diffDay + "일)</span>");
|
||||
$("#maestro_count_down_date").html("유효기간 : ~ " + this.endDate + " <span id='countdown_day'>(남은 기간 : " + diffDay + "일)</span>");
|
||||
|
||||
if(diffDay < 10)
|
||||
$("#countdown_day").addClass("bg-danger text-light");
|
||||
|
||||
@@ -48,11 +48,14 @@ function showMaestroName(maestroName) {
|
||||
function extendMaestroAccount() {
|
||||
// console.log("extend maestro account");
|
||||
|
||||
console.log("maestroID : " + maestroID);
|
||||
console.log("availableDate : " + availableDate);
|
||||
console.log("newAvailableDate : " + newAvailableDate);
|
||||
console.log("registeredAccountType : " + registeredAccountType);
|
||||
return;
|
||||
availableDate = maestroAvailableDate.getAvailableDate();
|
||||
newAvailableDate = maestroAvailableDate.getNewAvailableDate();
|
||||
|
||||
// console.log("maestroID : " + maestroID);
|
||||
// console.log("availableDate : " + availableDate);
|
||||
// console.log("newAvailableDate : " + newAvailableDate);
|
||||
// console.log("registeredAccountType : " + registeredAccountType);
|
||||
// return;
|
||||
|
||||
sendRequestServer( //url, sendParams, onSuccess, onFail, isDebugMode);
|
||||
"./../server/maestro/request_extension_maestro.php",
|
||||
@@ -64,7 +67,7 @@ function extendMaestroAccount() {
|
||||
|
||||
(function(jsonData) {
|
||||
// console.log(jsonData);
|
||||
alert("연장 신청이 등록되었습니다.\n입금 확인과 처리에 시간이 조금 걸립니다. 양해 부탁드립니다.");
|
||||
alert("연장 신청이 등록되었습니다.\n아래 정보를 참고하여 송금 부탁드립니다.\n입금 내역 확인과 처리에 시간이 조금 걸리는 점 양해 부탁드립니다.");
|
||||
// location.href="main_menu.html";
|
||||
}),
|
||||
|
||||
@@ -119,8 +122,8 @@ function extendMaestroAccount() {
|
||||
<div class="px-2 mb-4">
|
||||
<h5 class="card-title">유효 기간을 <span class="text-primary">+1년 연장</span>합니다.</h5>
|
||||
<ul>
|
||||
<li>만료일 이내 : 유효 기간 만료일(<span id="end_day"></span>) 기준으로 1년이 추가됩니다.</li>
|
||||
<li>만료일 경과 : 연장 결재가 이루어진 날을 기준으로 1년이 추가됩니다</li>
|
||||
<li><span class="text-primary">만료일 이내</span> 연장 신청시 : 유효 기간 만료일(<span id="end_day"></span>) 기준으로 1년이 추가됩니다.</li>
|
||||
<li><span class="text-danger">만료일 이후</span> 연장 신청시 : 연장 결재가 이루어진 날을 기준으로 1년이 추가됩니다</li>
|
||||
</ul>
|
||||
|
||||
<h5 class="card-title">연장 신청 방법</h5>
|
||||
|
||||
@@ -44,6 +44,9 @@ function onLoadSuccessMaestroInfo() {
|
||||
maestroAvailableDate.setEndDateTime(maestroInfo.availableActivateDateTime);
|
||||
maestroAvailableDate.showEndDate();
|
||||
maestroAvailableDate.showMaestroExtensionMessage(maestroInfo.maestroName);
|
||||
if(maestroAvailableDate.isExpiredMaestro()) {
|
||||
$("#expiredMaestroModal").modal();
|
||||
}
|
||||
|
||||
$("#maestro_info_player_count").val("학생수 : " + maestroInfo.getRegisteredPlayerCount() + " / " + maestroInfo.getMaxPlayerCount());
|
||||
|
||||
@@ -126,6 +129,37 @@ function showModal(popupModalID, popupContentID, contentFileName) {
|
||||
</script>
|
||||
|
||||
|
||||
<div class="modal fade" id="expiredMaestroModal" tabindex="-1" role="dialog" aria-labelledby="expiredMaestroModalLabel" aria-hidden="true">
|
||||
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header alert-danger">
|
||||
<h5 class="modal-title" id="exerienceMaestroModalLabel">마에스트로 계정 만료</h5>
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div class="modal-body">
|
||||
▶ 마에스트로 계정 유효기간이 지났습니다.
|
||||
<br/>
|
||||
- <span class="text-primary">화면 상단의 <kbd>유효기간 연장</kbd> 버튼을 클릭하여, 유효기간을 연장하세요.</span><br/>
|
||||
- 연장 신청에 대한 입금 내역이 확인된 후에 연장 처리됩니다.<br/>
|
||||
<span class="text-muted mx-3">(수작업으로 입금을 확인하고 있어서 시간이 조금 걸립니다. 양해 부탁드립니다)</span><br/>
|
||||
<br/>
|
||||
▶ [학생 로그인] 제한<br/>
|
||||
- <span class="text-danger">유효기간이 지난 계정에서는 학생들의 로그인이 제한됩니다.</span><br/>
|
||||
- 학생들의 정보는 그대로 유지됩니다. 연장이 이루어지면 다시 정상적으로 로그인할 수 있습니다.<br/>
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">닫기</button>
|
||||
<!-- <button type="button" class="btn btn-primary">Save changes</button> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="modal fade" id="experienceMaestroModal" tabindex="-1" role="dialog" aria-labelledby="experienceMaestroModalLabel" aria-hidden="true">
|
||||
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||
<div class="modal-content">
|
||||
|
||||
@@ -15,16 +15,12 @@ $maestro_name = $_POST["maestro_name"];
|
||||
$new_available_date = $_POST["new_available_date"];
|
||||
$registered_account_type = $_POST["registered_account_type"];
|
||||
|
||||
$maestro_data = get_maestro_data($maestro_id);
|
||||
set_data("maestro_data", $maestro_data);
|
||||
send_result_fail("test");
|
||||
exit;
|
||||
|
||||
extension_maestro($maestro_id);
|
||||
extension_maestro($maestro_id, $new_available_date);
|
||||
|
||||
change_extension_request_status_to_close($maestro_id);
|
||||
change_extension_request_status_to_applied($maestro_extension_id);
|
||||
|
||||
$maestro_data = get_maestro_data($maestro_id);
|
||||
// $maestro_name, $new_available_date, $maestro_email
|
||||
sendMailExtensionDone($maestro_data["name"], $new_available_date, $maestro_data["email"]);
|
||||
insertMaestroLog("extension_maestro", $maestro_id, $maestro_name."(".$registered_account_type.")");
|
||||
@@ -37,16 +33,21 @@ exit;
|
||||
|
||||
|
||||
|
||||
function extension_maestro($maestro_id) {
|
||||
function extension_maestro($maestro_id, $new_available_date) {
|
||||
global $db_conn;
|
||||
|
||||
// $query = "
|
||||
// UPDATE maestro
|
||||
// SET ActivateStatus = 1, AvailableActivateDateTime = DATE_ADD(AvailableActivateDateTime, INTERVAL 1 YEAR)
|
||||
// WHERE MaestroID = ?;
|
||||
// ";
|
||||
$query = "
|
||||
UPDATE maestro
|
||||
SET ActivateStatus = 1, AvailableActivateDateTime = DATE_ADD(AvailableActivateDateTime, INTERVAL 1 YEAR)
|
||||
SET ActivateStatus = 1, AvailableActivateDateTime = DATE_FORMAT(?, '%Y-%m-%d')
|
||||
WHERE MaestroID = ?;
|
||||
";
|
||||
$stmt = $db_conn->prepare($query);
|
||||
$stmt->bind_param("i", $maestro_id);
|
||||
$stmt->bind_param("si", $new_available_date, $maestro_id);
|
||||
$stmt->execute();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user