From a55609c71d8ff545fed052217b8a5fdd3dfa1e52 Mon Sep 17 00:00:00 2001 From: SulthanDA28 <13521159@std.stei.itb.ac.id> Date: Thu, 16 Nov 2023 17:58:31 +0700 Subject: [PATCH] refactor url --- src/app/controllers/Home/ClickPostController.php | 6 ++++-- src/app/controllers/Home/GetPostIDController.php | 3 ++- .../controllers/Home/GetReplyPostController.php | 3 ++- src/app/controllers/Home/ReplyPostController.php | 3 ++- src/app/models/HomeModel.php | 16 ++++++++++++++++ src/public/js/post.js | 5 +++-- 6 files changed, 29 insertions(+), 7 deletions(-) diff --git a/src/app/controllers/Home/ClickPostController.php b/src/app/controllers/Home/ClickPostController.php index 4f7e0ef..d3dce42 100644 --- a/src/app/controllers/Home/ClickPostController.php +++ b/src/app/controllers/Home/ClickPostController.php @@ -13,7 +13,8 @@ class ClickPostController extends BaseController{ public function put($urlParams){ parse_str(file_get_contents('php://input'), $_PUT); $post_id = $_PUT['post_id']; - $owner_id = $_PUT['owner_id']; + $owner_user = $_PUT['owner_id']; + $owner_id = $this->srv->getUsernameByPostOwnerId($owner_user); $hasil = $this->srv->plusView($post_id,$owner_id); if($hasil==true){ $hasiljson = array( @@ -26,7 +27,8 @@ class ClickPostController extends BaseController{ else{ $hasiljson = array( 'status' => 'error', - 'message' => 'View gagal ditambahkan' + 'message' => 'View gagal ditambahkan', + 'data' => $owner_user ); header('Content-Type: application/json'); return json_encode($hasiljson); diff --git a/src/app/controllers/Home/GetPostIDController.php b/src/app/controllers/Home/GetPostIDController.php index fa9290d..aac0af7 100644 --- a/src/app/controllers/Home/GetPostIDController.php +++ b/src/app/controllers/Home/GetPostIDController.php @@ -12,7 +12,8 @@ class GetPostIDController extends BaseController{ } public function get($urlParams){ $postid = $urlParams[1]; - $owner = $urlParams[0]; + $owner_username = $urlParams[0]; + $owner = $this->srv->getUsernameByPostOwnerId($owner_username); $result = $this->srv->getPostByID($postid,$owner); if($result!=null){ echo json_encode($result); diff --git a/src/app/controllers/Home/GetReplyPostController.php b/src/app/controllers/Home/GetReplyPostController.php index 75632b1..748db59 100644 --- a/src/app/controllers/Home/GetReplyPostController.php +++ b/src/app/controllers/Home/GetReplyPostController.php @@ -12,7 +12,8 @@ class GetReplyPostController extends BaseController{ } public function get($urlParams){ $postid = $urlParams[1]; - $owner = $urlParams[0]; + $owner_user = $urlParams[0]; + $owner = $this->srv->getUsernameByPostOwnerId($owner_user); $result = $this->srv->getReply($postid,$owner); if($result){ echo json_encode($result); diff --git a/src/app/controllers/Home/ReplyPostController.php b/src/app/controllers/Home/ReplyPostController.php index 0cb69d1..24a964c 100644 --- a/src/app/controllers/Home/ReplyPostController.php +++ b/src/app/controllers/Home/ReplyPostController.php @@ -12,8 +12,9 @@ class ReplyPostController extends BaseController{ } public function post($urlParams){ $postid = $urlParams[1]; - $owner = $urlParams[0]; + $owner_user = $urlParams[0]; $body = $_POST['body']; + $owner = $this->srv->getUsernameByPostOwnerId($owner_user); $result = $this->srv->replyPost($postid,$owner,$body); if($result){ return json_encode(array( diff --git a/src/app/models/HomeModel.php b/src/app/models/HomeModel.php index e342130..ee97c31 100644 --- a/src/app/models/HomeModel.php +++ b/src/app/models/HomeModel.php @@ -228,6 +228,22 @@ class HomeModel return false; } } + public function getUsernameByPostOwnerId($owner_id){ + try{ + $db = PDOHandler::getInstance()->getPDO(); + $sql = "SELECT id FROM users WHERE username='$owner_id'"; + $result = $db->query($sql); + if($result){ + $data = $result->fetch(PDO::FETCH_ASSOC); + return $data['id']; + } + else{ + return false; + } + }catch(Exception $e){ + return false; + } + } } ?> \ No newline at end of file diff --git a/src/public/js/post.js b/src/public/js/post.js index c4010a0..4fce70c 100644 --- a/src/public/js/post.js +++ b/src/public/js/post.js @@ -66,7 +66,7 @@ function createPost(data,totalsemuapage,pagenow,owner_id=null){ const isitext = document.createElement('p'); isitext.textContent = element.body; isitext.classList.add('isitext'); - isitext.addEventListener('click',function(){gotoPost(element.post_id,element.id)}); + isitext.addEventListener('click',function(){gotoPost(element.post_id,element.username)}); box.appendChild(isitext); var pathToRemove = "/var/www/html"; var path = element.path; @@ -126,7 +126,8 @@ function gotoPost(postid,ownerid){ if (xhr.status === 200) { const response = JSON.parse(xhr.responseText); if(response.status==="error"){ - alert("Failed to go to post"); + console.log(response); + alert("Failed to go to post reply"); } else if(response.status==="success"){ console.log(response); -- GitLab