{
"event": "PreToolUse",
"tool_name": "Read",
"tool_input": {
"file_path": "\/var\/www\/dev.campus.systemische-tools.de\/docs\/plan-form-components-refactoring.md",
"offset": 493,
"limit": 60
}
}
{
"tool_response": {
"type": "text",
"file": {
"filePath": "\/var\/www\/dev.campus.systemische-tools.de\/docs\/plan-form-components-refactoring.md",
"content": "```\n\n### 0b.7 Dropdown-Query\n\n```php\n\/\/ CollectionRepository::getSearchable()\npublic function getSearchable(): array\n{\n return $this->db->query(\"\n SELECT collection_id, display_name, points_count\n FROM rag_collections\n WHERE is_active = 1 AND is_searchable = 1\n ORDER BY sort_order ASC, display_name ASC\n \")->fetchAll();\n}\n```\n\n### 0b.8 Partial: collections-select.php\n\n```php\n\/\/ \/src\/View\/partials\/form\/collections-select.php\n<?php\n$collections = $collections ?? [];\n$selected = $selected ?? [];\nif (is_string($selected)) {\n $selected = json_decode($selected, true) ?: [$selected];\n}\n$name = $name ?? 'collections[]';\n$variant = $variant ?? 'default';\n$class = $variant === 'inline' ? 'form-select--inline' : 'form-select';\n?>\n<select name=\"<?= $name ?>\" multiple class=\"<?= $class ?> collections-select\"\n title=\"Collections für RAG auswählen\">\n <?php foreach ($collections as $col): ?>\n <option value=\"<?= htmlspecialchars($col['collection_id']) ?>\"\n <?= in_array($col['collection_id'], $selected, true) ? 'selected' : '' ?>\n title=\"<?= number_format($col['points_count']) ?> Dokumente\">\n <?= htmlspecialchars($col['display_name']) ?>\n <\/option>\n <?php endforeach; ?>\n<\/select>\n```\n\n### 0b.9 Python-Pipeline Integration\n\n**Option A: Python liest direkt aus DB**\n```python\n# db.py\ndef get_active_collections():\n cursor = db.execute(\"\"\"\n SELECT collection_id, vector_size, embedding_model\n FROM rag_collections\n WHERE is_active = 1\n \"\"\")\n return cursor.fetchall()\n```\n\n**Option B: Config-Sync via Cron**\n```bash\n# \/opt\/scripts\/sync-collections-config.py",
"numLines": 60,
"startLine": 493,
"totalLines": 3947
}
}
}