from pathlib import Path
portal=Path('/opt/struktur/portal/app.py')
s=portal.read_text()
old=''' <div class="card card-local">\n <div class="card-icon">⚙️</div>\n <div class="card-title">Hermes Scout</div>\n <div class="card-desc">Startet die blaue Hermes-Scout-Desktop-Version.</div>\n <div class="card-button-row">\n <a class="card-action-btn" href="hermes-scout://start">Desktop</a>\n </div>\n </div>'''
new=''' <a class="card" href="/kundenprojekte">\n <div class="card-icon">💼</div>\n <div class="card-title">Kundenprojekte</div>\n <div class="card-desc">Fünf Geschäftsfelder mit Aufwand, Erlösmodellen, Zielkunden, Akquise und Projektstatus.</div>\n <div class="card-action-btn">Öffnen</div>\n </a>'''
if old not in s: raise SystemExit('portal card block not found')
s=s.replace(old,new,1)
route="""\n\n@app.route('/kundenprojekte')\ndef kundenprojekte():\n return Path('/opt/struktur/portal/kundenprojekte.html').read_text(encoding='utf-8')\n"""
if "@app.route('/kundenprojekte')" not in s:
s=s.replace("\nHTML = \"\"\"", route+"\nHTML = \"\"\"",1)
s=s.replace("import os\n", "import os\nfrom pathlib import Path\n",1)
portal.write_text(s)
dash=Path('/opt/struktur/dashboard/app.py')
d=dash.read_text()
insert=""" {\n 'id': 'home-scout',\n 'name': 'Home Scout',\n 'desc': 'Startet die blaue Hermes-Scout-Desktop-Version.',\n 'icon': '🛰️',\n 'url': 'hermes-scout://start',\n 'container': None,\n 'compose': None,\n 'external': True,\n },\n"""
marker="SERVICES = [\n"
if "'id': 'home-scout'" not in d:
d=d.replace(marker,marker+insert,1)
dash.write_text(d)
print('PATCH_OK')