#!/bin/bash
# Läuft Beratungsfolge-Scraper in Tranchen bis alles fertig ist

cd "$(dirname "$0")/.."
source .venv/bin/activate

LOG_FILE="data/beratungen_batches.log"
BATCH_SIZE=200
PAUSE_SECONDS=10

echo "=== Beratungsfolge-Batch-Runner gestartet $(date) ===" | tee -a "$LOG_FILE"

while true; do
    echo "" | tee -a "$LOG_FILE"
    echo "--- Starte Batch $(date +%H:%M:%S) ---" | tee -a "$LOG_FILE"
    
    python scripts/scrape_beratungsfolge.py --limit $BATCH_SIZE 2>&1 | tee -a "$LOG_FILE"
    
    # Prüfe ob noch Vorlagen ohne Beschlusstext übrig sind
    REMAINING=$(python -c "
import sqlite3
conn = sqlite3.connect('data/tracker_remote.db')
r = conn.execute('''
    SELECT COUNT(DISTINCT v.id)
    FROM vorlagen v
    LEFT JOIN beratungen b ON v.id = b.vorlage_id AND b.beschlusstext IS NOT NULL
    WHERE v.web_url IS NOT NULL AND b.id IS NULL
''').fetchone()[0]
print(r)
")
    
    echo "Verbleibend: $REMAINING" | tee -a "$LOG_FILE"
    
    if [ "$REMAINING" -eq 0 ]; then
        echo "" | tee -a "$LOG_FILE"
        echo "=== ALLE FERTIG $(date) ===" | tee -a "$LOG_FILE"
        break
    fi
    
    echo "Pause ${PAUSE_SECONDS}s..." | tee -a "$LOG_FILE"
    sleep $PAUSE_SECONDS
done

echo "Runner beendet." | tee -a "$LOG_FILE"
