pubblicato (in vigore) con traccia approvazione/pubblicazione + snapshot versione. IDEMPOTENTE. */ if (PHP_SAPI !== 'cli') { http_response_code(403); exit("CLI only\n"); } require_once __DIR__ . '/../config/env.php'; require_once __DIR__ . '/../config/database.php'; $pdo = Database::getInstance(); function ex(PDO $p,string $s,array $a=[]):void{$st=$p->prepare($s);$st->execute($a);} function one(PDO $p,string $s,array $a=[]){$st=$p->prepare($s);$st->execute($a);return $st->fetch(PDO::FETCH_ASSOC);} function all(PDO $p,string $s,array $a=[]){$st=$p->prepare($s);$st->execute($a);return $st->fetchAll(PDO::FETCH_ASSOC);} $NOW='2026-06-20 13:30:00'; $TODAY='2026-06-20'; $NEXT='2027-06-20'; $ORGID=996003; $RSGSI=326; $PRES=103; $m=one($pdo,"SELECT id FROM isms_models WHERE organization_id=?",[$ORGID]); $modelId=(int)$m['id']; $docs=all($pdo,"SELECT id,version,status,body_html FROM isms_documents WHERE isms_model_id=? AND status='approved'",[$modelId]); $pub=0; foreach($docs as $d){ $v=$d['version']?:'1.0'; // snapshot pubblicazione (evita doppioni) $exsnap=one($pdo,"SELECT id FROM isms_document_versions WHERE document_id=? AND version=? AND status='published'",[$d['id'],$v]); if(!$exsnap){ ex($pdo,"INSERT INTO isms_document_versions (document_id,isms_model_id,organization_id,version,status,body_html,change_note,created_by,created_at) VALUES (?,?,?,?, 'published', ?, ?, ?, ?)", [$d['id'],$modelId,$ORGID,$v,$d['body_html'],'Pubblicazione versione '.$v.' (set documentale iniziale)',$PRES,$NOW]); } ex($pdo,"UPDATE isms_documents SET status='published', approved_by=?, approved_at=?, reviewed_by=?, reviewed_at=?, published_by=?, published_at=?, effective_date=?, next_review_date=?, updated_at=? WHERE id=?", [$RSGSI,$NOW,$RSGSI,$NOW,$PRES,$NOW,$TODAY,$NEXT,$NOW,$d['id']]); $pub++; } $tot=one($pdo,"SELECT COUNT(*) c FROM isms_documents WHERE isms_model_id=? AND status='published'",[$modelId])['c']; echo "Pubblicati ora: $pub. Totale documenti PUBBLICATI: $tot / ".one($pdo,"SELECT COUNT(*) c FROM isms_documents WHERE isms_model_id=?",[$modelId])['c']."\n"; echo "FASE 6 OK\n";