_board_name = $board_name; $this->_boards_entity = $this->getBoardsModel()->getEntityByID($this->getBoardName()); } public function getBoardsModel(): BoardsModel { if ($this->_boards_model === null) { $this->_boards_model = new BoardsModel(); } return $this->_boards_model; } public function getBoardsEntity(): BoardsEntity { return $this->_boards_entity; } public function setBoardsEntity(BoardsEntity $boards_entity): void { $this->_boards_entity = $boards_entity; } //---------------------------------------------------------------------// public function getBoardName(): string { return $this->_board_name; } public function getBoardModel(): BoardModel { if ($this->_board_model === null) { $this->_board_model = new BoardModel("mb_" . $this->getBoardName()); } return $this->_board_model; } public function getBoardEntity(): BoardEntity { if ($this->_board_entity === null) { throw new \Exception("{$this->getBoardName()} 게시판 정보가 없습니다."); } return $this->_board_entity; } public function setBoardEntity(BoardEntity $board_entity): void { $this->_board_entity = $board_entity; } public function getUserEntity(): UserEntity { if ($this->_user_entity === null) { throw new \Exception("사용자정보가 없습니다."); } return $this->_user_entity; } public function setUserEntity(UserEntity $user_entity): void { $this->_user_entity = $user_entity; } public function createBoard(array $listInfo): void { //미디어관련정보 entity에 넣기 $formDatas = []; $formDatas['title'] = $listInfo["title"]; $formDatas['user_pid'] = $this->getUserEntity()->getPK(); $formDatas['user_id'] = $this->getUserEntity()->getID(); $formDatas['user_name'] = $listInfo["nickname"] != "" ? $listInfo["nickname"] : $this->getUserEntity()->getTitle(); $formDatas['level'] = $this->getBoardsEntity()->getListLevel(); $formDatas['hit'] = $listInfo['hit']; $formDatas['reg_date'] = date("Y-m-d H:i:s", strtotime($listInfo['date'])); $formDatas['data_type'] = "html"; $formDatas['editor_type'] = "S"; $formDatas['image_path'] = ""; $formDatas['content'] = ""; //망보드 게시판에 등록 $this->setBoardEntity($this->getBoardModel()->create($formDatas)); log_message("notice", message: __FUNCTION__ . "=>{$this->getBoardName()} 생성 작업 완료"); } public function modifyBoard(array $media_tags): void { $content = implode("\n", $media_tags["content"]); if ($content !== "") { $formDatas = [ "image_path" => array_shift($media_tags["image_path"]), "content" => $content ]; $this->getBoardModel()->modify($this->getBoardEntity(), $formDatas); log_message("notice", __FUNCTION__ . "=>{$this->getBoardEntity()->getPK()}:{$this->getBoardEntity()->getTitle()} 수정 작업 완료"); } else { $this->getBoardModel()->delete([$this->getBoardModel()->getPKField() => $this->getBoardEntity()->getPK()]); log_message("warning", __FUNCTION__ . "=>{$this->getBoardEntity()->getPK()}:{$this->getBoardEntity()->getTitle()} 내용이 없어 삭제처리"); } } }