true, 'data' => $result]); } else { RestApi::response(['success' => false, 'errors' => ['project' => 'Проект не найден']], 404); } } // Установка колонки "Готово" для проекта if ($action === 'set_ready_column') { $project_id = $data['id_project'] ?? null; $column_id = $data['column_id'] ?? null; $result = Project::setReadyColumn($project_id, $column_id); RestApi::response($result); } // Создание проекта if ($action === 'create') { $project->name = $data['name'] ?? ''; $project->id_ready = $data['id_ready'] ?? null; $result = $project->create(); RestApi::response($result); } // Обновление проекта if ($action === 'update') { $project->id = $data['id'] ?? null; $project->name = $data['name'] ?? ''; $project->id_ready = $data['id_ready'] ?? null; $project->id_order = $data['id_order'] ?? null; $result = $project->update(); RestApi::response($result); } // Удаление проекта if ($action === 'delete') { $id = $data['id'] ?? null; $result = Project::delete($id); RestApi::response($result); } // Метод не указан if (!$action) { RestApi::response(['success' => false, 'error' => 'Укажите метод'], 400); } } if ($method === 'GET') { // Получение всех проектов // ?active=ID — дополнительно вернуть данные активного проекта $project = new Project(); $projects = $project->getAll(); $active_id = $_GET['active'] ?? null; if ($active_id) { // Возвращаем список проектов + данные активного $activeData = Project::getProjectData((int)$active_id); RestApi::response([ 'success' => true, 'data' => [ 'projects' => $projects, 'active' => $activeData ] ]); } else { // Только список проектов RestApi::response(['success' => true, 'data' => $projects]); } } ?>