Mukho

Fix Comment Delete Bug

...@@ -70,10 +70,10 @@ create table comment( ...@@ -70,10 +70,10 @@ create table comment(
70 >UPDATE board SET idx = @COUNT:=@COUNT+1; 70 >UPDATE board SET idx = @COUNT:=@COUNT+1;
71 71
72 --- 72 ---
73 -### 최종 수정: 2021-11-26 16:26<br> 73 +### 최종 수정: 2021-11-26 19:48<br>
74 ### 수정 내용: 74 ### 수정 내용:
75 0. 채팅 중 서버 재시작시 기존 참여자들 리셋시키기 이슈 75 0. 채팅 중 서버 재시작시 기존 참여자들 리셋시키기 이슈
76 -1. 채팅 구현 76 +1. 채팅 구현(팝업)
77 2. 시간 실시간 반영 77 2. 시간 실시간 반영
78 3. 프로필 사진 추가 78 3. 프로필 사진 추가
79 4. 프로필 검색 추가 79 4. 프로필 검색 추가
...@@ -81,4 +81,4 @@ create table comment( ...@@ -81,4 +81,4 @@ create table comment(
81 6. 채팅(socket) 사용 중 서버 재시작 시 서버 오류 해결 81 6. 채팅(socket) 사용 중 서버 재시작 시 서버 오류 해결
82 7. 코드 다듬음 82 7. 코드 다듬음
83 8. 버그 수정 83 8. 버그 수정
84 -9. 댓글 등록, 열람 기능 구현. 삭제 기능 불완전함(달린 댓글이 1개일 때만 삭제기능 동작)
...\ No newline at end of file ...\ No newline at end of file
84 +9. 댓글 등록, 열람, 삭제 기능 구현 및 버그 픽스
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -103,6 +103,7 @@ router.post('/write', function(req,res,next){ ...@@ -103,6 +103,7 @@ router.post('/write', function(req,res,next){
103 103
104 router.get('/read/:idx', function(req,res,next){ 104 router.get('/read/:idx', function(req,res,next){
105 var ip = requestIp.getClientIp(req); 105 var ip = requestIp.getClientIp(req);
106 +
106 var idx = req.params.idx 107 var idx = req.params.idx
107 var sql = "select idx, nickname, title, content, date_format(modidate,'%Y-%m-%d %H:%i:%s') modidate, " + 108 var sql = "select idx, nickname, title, content, date_format(modidate,'%Y-%m-%d %H:%i:%s') modidate, " +
108 "date_format(regdate,'%Y-%m-%d %H:%i:%s') regdate, hit, ID from board where idx=?"; 109 "date_format(regdate,'%Y-%m-%d %H:%i:%s') regdate, hit, ID from board where idx=?";
...@@ -152,9 +153,11 @@ router.post('/read/commentwrite', function(req,res,next){ ...@@ -152,9 +153,11 @@ router.post('/read/commentwrite', function(req,res,next){
152 }) 153 })
153 154
154 router.post('/read/commentdelete', function(req,res,next){ 155 router.post('/read/commentdelete', function(req,res,next){
156 +
157 +
155 var ip = requestIp.getClientIp(req); 158 var ip = requestIp.getClientIp(req);
156 var idx = req.body.idxcomment; 159 var idx = req.body.idxcomment;
157 - var idxbulletin = req.body.idx; 160 + var idxbulletin = (req.headers.referer).split('/')[5];
158 var ID = req.user.ID; 161 var ID = req.user.ID;
159 var datas = [ID, idx] 162 var datas = [ID, idx]
160 163
...@@ -174,22 +177,21 @@ router.post('/read/commentdelete', function(req,res,next){ ...@@ -174,22 +177,21 @@ router.post('/read/commentdelete', function(req,res,next){
174 if(err__) console.error(err__) 177 if(err__) console.error(err__)
175 178
176 var nickname = req.user.nickname; 179 var nickname = req.user.nickname;
177 - res.send("<script>alert('댓글이 운영자에 의해 삭제되었습니다.');history.back();</script>"); 180 + console.log(logString+"[Admin] "+req.user.ID+'('+nickname+') 유저가 '+idxbulletin+'번 글에서 '+idx+'번 댓글을 삭제했습니다.('+ip+')')
178 - console.log(logString+"[Admin] "+req.user.ID+'('+nickname+') 유저가 '+idx+'번 댓글을 삭제했습니다.('+ip+')') 181 + res.redirect('/board/read/'+idxbulletin)
179 }) 182 })
180 } 183 }
181 else{ // 작성자도, 운영자도 아니면 184 else{ // 작성자도, 운영자도 아니면
182 var nickname = req.user.nickname; 185 var nickname = req.user.nickname;
183 - console.log(logString+req.user.ID+'('+nickname+') 유저의 '+idx+'번 댓글 삭제를 거부했습니다.(권한없음 // '+ip+')') 186 + console.log(logString+req.user.ID+'('+nickname+') 유저의 '+idxbulletin+'번 글의 '+idx+'번 댓글 삭제를 거부했습니다.(권한없음 // '+ip+')')
184 res.send("<script>alert('댓글 작성자가 아닙니다');history.back();</script>"); 187 res.send("<script>alert('댓글 작성자가 아닙니다');history.back();</script>");
185 } 188 }
186 }) 189 })
187 } 190 }
188 else{ // 작성자인 경우 191 else{ // 작성자인 경우
189 - var id = req.user.ID;
190 var nickname = req.user.nickname; 192 var nickname = req.user.nickname;
191 - res.send("<script>alert('댓글이 삭제되었습니다.');history.back();</script>"); 193 + console.log(logString+req.user.ID+'('+nickname+') 유저가 '+idxbulletin+'번 글에서 '+idx+'번 댓글을 삭제했습니다.('+ip+')')
192 - console.log(logString+req.user.ID+'('+nickname+') 유저가 '+idx+'번 댓글을 삭제했습니다.('+ip+')') 194 + res.redirect('/board/read/'+idxbulletin)
193 } 195 }
194 }) 196 })
195 197
......