Explorer
/tmp/split_variants.py
← Zurück ↓ Download
from pathlib import Path
p=Path('/opt/struktur/social-media-agent/publish_ready.py'); s=p.read_text()
old='''        item["variants"] = [dict(v) for v in variants]
        item["media_status"] = media_status_label(item)'''
new='''        item["variants"] = [dict(v) for v in variants]
        groups = {}
        for variant in item["variants"]:
            groups.setdefault(variant["generation_group_id"], []).append(variant)
        latest_group = max(groups, key=lambda key: max((v.get("created_at", "") for v in groups[key]), default="")) if groups else None
        item["current_variants"] = sorted(groups.get(latest_group, []), key=lambda v: v.get("variant_order", 0)) if latest_group else []
        item["legacy_variants"] = [v for v in item["variants"] if v not in item["current_variants"]]
        item["media_status"] = media_status_label(item)'''
assert s.count(old)==1; p.write_text(s.replace(old,new)); print('split current and legacy variants')