id_task = $data['id_task'] ?? null; $comment->id_accounts = $current_user_id; $comment->id_answer = $data['id_answer'] ?? null; // Ответ на комментарий $comment->text = $data['text'] ?? ''; $result = $comment->create(); RestApi::response($result); } // Обновление комментария if ($action === 'update') { $comment->id = $data['id'] ?? null; $comment->id_accounts = $current_user_id; $comment->text = $data['text'] ?? ''; $result = $comment->update(); RestApi::response($result); } // Удаление комментария if ($action === 'delete') { $id = $data['id'] ?? null; $result = Comment::delete($id, $current_user_id); RestApi::response($result); } // Загрузка файла к комментарию (только автор) if ($action === 'upload_image') { $comment_id = $data['comment_id'] ?? null; $file_base64 = $data['file_data'] ?? null; $file_name = $data['file_name'] ?? null; $result = Comment::uploadFile($comment_id, $file_base64, $file_name, $current_user_id); RestApi::response($result); } // Удаление файлов комментария (автор или админ проекта) if ($action === 'delete_image') { $comment_id = $data['comment_id'] ?? null; $file_names = $data['file_names'] ?? $data['file_name'] ?? null; $result = Comment::deleteFile($comment_id, $file_names, $current_user_id); RestApi::response($result); } // Метод не указан if (!$action) { RestApi::response(['success' => false, 'error' => 'Укажите метод'], 400); } } if ($method === 'GET') { // Получение комментариев задачи // ?id_task=X (обязательный) $id_task = $_GET['id_task'] ?? null; if (!$id_task) { RestApi::response(['success' => false, 'errors' => ['id_task' => 'Задача не указана']], 400); } $comment = new Comment(); $comments = $comment->getByTask($id_task); RestApi::response(['success' => true, 'data' => $comments]); } ?>