Explorer
/proc/111/root/tmp/patch_template_qa_v3.py
← Zurück ↓ Download
from pathlib import Path
p=Path('/opt/struktur/social-media-agent/templates/publication_packages.html')
s=p.read_text()
old="""<div class="media-status {% if p.image_status == 'present' %}present{% elif p.image_status == 'error' %}error{% else %}idea{% endif %}">{% if p.image_status == 'present' %}Bild vorhanden{% elif p.image_status == 'error' %}Bildfehler{% elif p.image_prompt %}Bildidee vorhanden{% else %}Kein Bild{% endif %}</div>"""
new="""<div class="media-status {% if p.image_status == 'present' and (p.qa_status == 'passed' or p.image_generator != 'Codex built-in image_gen') %}present{% elif p.qa_status == 'failed' %}error{% else %}idea{% endif %}">{% if p.qa_status == 'failed' %}Technische Bildprüfung nicht bestanden{% elif p.image_status == 'present' and (p.qa_status == 'passed' or p.image_generator != 'Codex built-in image_gen') %}Bild vorhanden{% elif p.image_prompt %}Bildidee vorhanden{% else %}Kein Bild{% endif %}</div>
      <div class="pp-meta">Technische QA: {% if p.qa_status == 'passed' %}technisch geprüft{% elif p.qa_status == 'failed' %}technisch abgelehnt{% else %}noch nicht geprüft{% endif %}</div>"""
assert s.count(old)==1
s=s.replace(old,new)
old="""{% if p.image_status == 'present' and p.image_path %}"""
new="""{% if p.image_status == 'present' and p.qa_status != 'failed' and (p.qa_status == 'passed' or p.image_generator != 'Codex built-in image_gen') and p.image_path %}"""
assert s.count(old)==1
s=s.replace(old,new)
old="""{% if p.image_prompt and p.image_status != 'present' %}"""
new="""{% if p.image_prompt and (p.image_status != 'present' or p.qa_status == 'failed') %}"""
assert s.count(old)==1
s=s.replace(old,new)
old="""{% if p.image_status == 'present' %}<a href="/bereit/{{ p.package_id }}/bild/download">Bild herunterladen</a><form method="post" action="/bereit/{{ p.package_id }}/bild"><input type="hidden" name="action" value="new"><button type="submit">KI-Bild neu erzeugen</button></form>{% else %}"""
new="""{% if p.image_status == 'present' and p.qa_status != 'failed' and (p.qa_status == 'passed' or p.image_generator != 'Codex built-in image_gen') %}<a href="/bereit/{{ p.package_id }}/bild/download">Bild herunterladen</a><form method="post" action="/bereit/{{ p.package_id }}/bild"><input type="hidden" name="action" value="new"><button type="submit">KI-Bild neu erzeugen</button></form>{% else %}"""
assert s.count(old)==1
s=s.replace(old,new)
needle="""{% if p.image_error %}<div class="pp-warning">{% if 'OpenAI API Credential erforderlich' in p.image_error %}Historischer Direct-API-Versuch fehlgeschlagen; der aktuelle manuelle Bildpfad verwendet Codex built-in image_gen.{% else %}{{ p.image_error }}{% endif %}</div>{% endif %}"""
addition=needle+"\n      {% if p.qa_failure_reasons and p.qa_status == 'failed' %}<div class=\"pp-warning\">Ablehnungsgrund: {{ p.qa_failure_reasons }}</div>{% endif %}"
assert s.count(needle)==1
p.write_text(s.replace(needle,addition))
print('patched QA UI')