{
"tool_response": {
"type": "text",
"file": {
"filePath": "\/var\/www\/dev.campus.systemische-tools.de\/src\/Infrastructure\/Persistence\/ContentConfigRepository.php",
"content": " WHERE 1=1';\n $params = [];\n\n if ($typeFilter !== null && $typeFilter !== '') {\n $sql .= ' AND c.type = ?';\n $params[] = $typeFilter;\n }\n\n if ($statusFilter !== null && $statusFilter !== '') {\n $sql .= ' AND c.status = ?';\n $params[] = $statusFilter;\n }\n\n $sql .= ' ORDER BY c.type, c.name';\n\n $stmt = $this->pdo->prepare($sql);\n $stmt->execute($params);\n\n return $stmt->fetchAll(\\PDO::FETCH_ASSOC);\n }\n\n public function findAllByType(string $type): array\n {\n $stmt = $this->pdo->prepare(\n \"SELECT id, name, slug, content, type, status\n FROM content_config\n WHERE type = ? AND status = 'active'\n ORDER BY name\"\n );\n $stmt->execute([$type]);\n\n return $stmt->fetchAll(\\PDO::FETCH_ASSOC);\n }\n\n public function create(\n string $type,\n string $name,\n string $slug,\n ?string $description,\n string $content,\n string $version,\n string $status,\n ?int $parentId\n ): int {\n $stmt = $this->pdo->prepare(\n 'INSERT INTO content_config (type, name, slug, description, content, version, status, parent_id)\n VALUES (?, ?, ?, ?, ?, ?, ?, ?)'\n );\n $stmt->execute([$type, $name, $slug, $description, $content, $version, $status, $parentId]);\n\n return (int) $this->pdo->lastInsertId();\n }\n\n public function update(\n int $id,\n string $name,\n string $slug,\n ?string $description,\n string $content,\n string $version,\n string $status,\n ?int $parentId\n ): void {\n $stmt = $this->pdo->prepare(\n 'UPDATE content_config\n SET name = ?, slug = ?, description = ?, content = ?, version = ?, status = ?, parent_id = ?\n WHERE id = ?'\n );\n $stmt->execute([$name, $slug, $description, $content, $version, $status, $parentId, $id]);\n }\n\n public function delete(int $id): void\n {\n $stmt = $this->pdo->prepare('DELETE FROM content_config WHERE id = ?');\n $stmt->execute([$id]);\n }\n\n public function saveHistory(int $configId, string $content, string $version, string $changedBy, string $changeDescription): void\n {\n $stmt = $this->pdo->prepare(\n 'INSERT INTO content_config_history (config_id, content, version, changed_by, change_description)\n VALUES (?, ?, ?, ?, ?)'\n );\n $stmt->execute([$configId, $content, $version, $changedBy, $changeDescription]);\n }\n\n public function deleteHistory(int $configId): void\n {\n $stmt = $this->pdo->prepare('DELETE FROM content_config_history WHERE config_id = ?');\n $stmt->execute([$configId]);\n }\n\n public function countChildren(int $parentId): int\n {\n $stmt = $this->pdo->prepare('SELECT COUNT(*) FROM content_config WHERE parent_id = ?');\n $stmt->execute([$parentId]);\n\n return (int) $stmt->fetchColumn();\n }\n",
"numLines": 100,
"startLine": 50,
"totalLines": 234
}
}
}