diff --git a/application/controllers/Posts.php b/application/controllers/Posts.php index 5082021..8edcd6e 100644 --- a/application/controllers/Posts.php +++ b/application/controllers/Posts.php @@ -211,6 +211,39 @@ exit; } + if($post[0]['user_id'] != $_SESSION['user']['ID']) { + echo json_encode(['success' => false, 'message' => 'Du kannst keine Posts löschen, die dir nicht gehören.']); + exit; + } + $post = $this->PostsModel->preparePostList($post); + $body = $this->load->view('network/posts/delete_modal', ['post' => $post[0]], true); + + echo json_encode(['success' => true, 'title' => 'Post löschen', 'body' => $body]); + } + + public function deletePost() { + header('Content-Type: application/json'); + if(!isset($_SESSION['user'])) { + echo json_encode(['success' => false, 'message' => 'Du musst eingeloggt sein, um die Posts deines Accounts zu löschen']); + exit; + } + + $uuid = $this->input->post('uuid'); + $post = $this->PostsModel->getPostByUUID($uuid); + + if(empty($post)) { + echo json_encode(['success' => false, 'message' => 'Der angegebene Post existiert nicht.']); + exit; + } + + if($post[0]['user_id'] != $_SESSION['user']['ID']) { + echo json_encode(['success' => false, 'message' => 'Du kannst keine Posts löschen, die dir nicht gehören.']); + exit; + } + + $this->PostsModel->deletePost($_SESSION['user']['ID'], $uuid); + + echo json_encode(['success' => true, 'message' => 'Der Post wurde erfolgreich gelöscht.']); } } \ No newline at end of file diff --git a/application/controllers/User.php b/application/controllers/User.php index f370d5d..e2d5426 100644 --- a/application/controllers/User.php +++ b/application/controllers/User.php @@ -210,14 +210,13 @@ Bitte erstelle dir entweder kostenlos einen neuen Account oder - melde dich an. + melde dich an + . input->post('postMedia')); - $content = $this->input->post('content'); if (strlen($content) >= 10000) { ?> @@ -247,23 +246,25 @@ } $media = $this->input->post('postMedia'); - foreach ($media as $entry) { - $image = str_replace(' ', '+', $entry['image']); - $image = substr($image, strpos($image, ',') + 1); - $image = base64_decode($image); + if (!empty($media)) { + foreach ($media as $entry) { + $image = str_replace(' ', '+', $entry['image']); + $image = substr($image, strpos($image, ',') + 1); + $image = base64_decode($image); - $fileUrl = $this->FileModel->uploadFileByContent($image, $entry['name'], $entry['type'], $entry['size']); + $fileUrl = $this->FileModel->uploadFileByContent($image, $entry['name'], $entry['type'], $entry['size']); - $this->PostsModel->addImageToPost($postID, $fileUrl); + $this->PostsModel->addImageToPost($postID, $fileUrl); + } + + ?> +