class PlayerListManager { constructor(docList, docNav) { let self = this; this.docList = docList; this.docNav = docNav; this.playerListID = $(docList).attr("id"); this.list = new PlayerList(this.docList, this); this.list.updatePlayerList(null); this.listNavigator = new PlayerListNavigator(this, this.list, this.docNav); this.playerCount = 0; this.activePageNo = 1; this.lastPageNo = 0; this.searchPlayerName = ""; } setupAddPlayerList() { let self = this; sendRequestServer( //url, sendParams, onSuccess, onFail, isDebugMode); "./../server/player/registered_player_count.php", "maestro_id=" + maestroID, (jsonData) => { self.playerCount = jsonData["playerCount"]; self.lastPageNo = Math.ceil( (self.playerCount + 1) / 10 ); self.activePageNo = 1; self.loadAddPlayerListPage(self.activePageNo); self.listNavigator.updateNavigator(self.activePageNo, self.lastPageNo); }, (errorMessage, errorCode) => { if($("#error_message").length) { $("#error_message").text(errorMessage); } } ); } loadAddPlayerListPage(pageNo) { let self = this; this.activePageNo = pageNo; let pageIndex = pageNo - 1; let startNo = pageIndex * 10; let endNo = pageIndex * 10 + 9; sendRequestServer( //url, sendParams, onSuccess, onFail, isDebugMode); "./../server/player/registered_player_list.php", "maestro_id=" + maestroID + "&start_no=" + startNo + "&end_no=" + endNo, (jsonData) => { self.playerCount = jsonData["playerList"].length; self.list.updatePlayerList(jsonData["playerList"]); }, (errorMessage, errorCode) => { if($("#error_message").length) { $("#error_message").text(errorMessage); } } ); } updateAddPlayerListPage(pageNo) { let self = this; this.playerListPage = pageNo; let pageIndex = pageNo - 1; let startNo = pageIndex * 10; let endNo = pageIndex * 10 + 9; sendRequestServer( //url, sendParams, onSuccess, onFail, isDebugMode); "./../server/player/registered_player_list.php", "maestro_id=" + maestroID + "&start_no=" + startNo + "&end_no=" + endNo, (jsonData) => { self.playerCount = jsonData["playerList"].length; self.list.updatePlayerList(jsonData["playerList"]); self.listNavigator.updateNavigator(self.activePageNo, self.lastPageNo); }, (errorMessage, errorCode) => { if($("#error_message").length) { $("#error_message").text(errorMessage); } } ); } setupSearchPlayerList(playerName) { let self = this; this.searchPlayerName = playerName; sendRequestServer( //url, sendParams, onSuccess, onFail, isDebugMode); "./../server/player/search_player_count.php", "maestro_id=" + maestroID + "&player_name=" + this.searchPlayerName, (jsonData) => { self.playerCount = jsonData["playerCount"]; self.lastPageNo = Math.ceil( (self.playerCount + 1) / 10 ); self.activePageNo = 1; self.updateSearchPlayerListPage(this.searchPlayerName, 1); }, (errorMessage, errorCode) => { if($("#error_message").length) { $("#error_message").text(errorMessage); } } ); } updateSearchPlayerListPage(playerName, pageNo) { let self = this; this.playerListPage = pageNo; let pageIndex = pageNo - 1; let startNo = pageIndex * 10; let endNo = pageIndex * 10 + 9; sendRequestServer( //url, sendParams, onSuccess, onFail, isDebugMode); "./../server/player/search_player_list.php", "maestro_id=" + maestroID + "&player_name=" + playerName + "&start_no=" + startNo + "&end_no=" + endNo, (jsonData) => { self.playerCount = jsonData["playerList"].length; self.list.updatePlayerList(jsonData["playerList"]); self.listNavigator.updateNavigator(self.activePageNo, self.lastPageNo); }, (errorMessage, errorCode) => { if($("#error_message").length) { $("#error_message").text(errorMessage); } } ); } editPlayer(inputButton) { let self = this; console.log(inputButton); // let clickedObjectID = this.getClickedObjectID(inputButton); let id = $(inputButton).siblings(".player_id"); let playerID = id.text(); console.log(playerID); let name = $(inputButton).siblings(".player_name"); let playerName = name.val(); console.log(playerName); let enterCode = $(inputButton).siblings(".player_entercode"); let playerEnterCode = enterCode.val(); console.log(playerEnterCode); sendRequestServer( //url, sendParams, onSuccess, onFail, isDebugMode); "./../server/player/edit_player.php", "maestro_id=" + maestroID + "&player_id=" + playerID + "&player_name=" + playerName + "&enter_code=" + playerEnterCode, (jsonData) => { console.log(jsonData); if(this.playerListID === "add_player_list") { self.setupAddPlayerList(); } else if(this.playerListID === "search_player_list") { // let playerName = $("#search_name").val(); self.setupSearchPlayerList(this.searchPlayerName); } showErrorMessage("학생 데이터가 [ " + playerName + " / " + playerEnterCode + " ] 으로 변경되었습니다.", "success"); }, (errorMessage, errorCode) => { if($("#error_message").length) { $("#error_message").text(errorMessage); } } ); } deletePlayer(inputButton) { let self = this; let id = $(inputButton).siblings(".player_id"); let playerID = id.text(); let name = $(inputButton).siblings(".player_name"); let playerName = name.val(); console.log(playerName); // let clickedObjectID = this.getClickedObjectID(inputButton); if(playerID === null || playerID === "") return; sendRequestServer( //url, sendParams, onSuccess, onFail, isDebugMode); "./../server/player/delete_player.php", "maestro_id=" + maestroID + "&player_id=" + playerID, (jsonData) => { if(this.playerListID === "add_player_list") { self.setupAddPlayerList(); } else if(this.playerListID === "search_player_list") { // let searchPlayerName = $("#search_name").val(); self.setupSearchPlayerList(searchPlayerName); } showErrorMessage("[ " + playerName + "] 학생 데이터가 삭제되었습니다.", "success"); onChangePlayerCount(); }, (errorMessage, errorCode) => { if($("#error_message").length) { $("#error_message").text(errorMessage); } } ); } onClickPageNo(pageNo) { let self = this; self.activePageNo = pageNo; if(this.playerListID === "add_player_list") { self.updateAddPlayerListPage(self.activePageNo); } else if(this.playerListID === "search_player_list") { self.updateSearchPlayerListPage(this.searchPlayerName, self.activePageNo); } } }