#!/bin/bash
# =============================================================================
# set_profile.sh — Nasazení diagnostického profilu na Terkom terminál
# =============================================================================
# 1. Uprav ACTIVE_PROFILE níže (hlavní profily 1–5, legacy/advanced 6–9)
# 2. Nahraj tento soubor na CDN / server
# 3. Spusť na terminálu (dvě možnosti):
#      curl -fsSL https://cdn.public.altisima.cz/diagnostika/set_profile.sh | sudo bash -s -- 2
#      curl -fsSL https://cdn.public.altisima.cz/diagnostika/set_profile.sh | sudo bash
#      (bez argumentu použije ACTIVE_PROFILE z tohoto souboru)
# =============================================================================
# ↓↓↓ ZDE ZMĚŇ ČÍSLO PROFILU (1–9) ↓↓↓
ACTIVE_PROFILE=2
# ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
# Dostupné profily:
#   1  Standard                         20s  NORMAL
#   2  Výdejní freeze protection        10s  FAST
#   3  Network diagnostic / Čáslav      20s  NORMAL
#   4  Konzervativní monitoring         20s  NORMAL
#   5  Servisní agresivní                5s  ULTRA
#   6  Legacy: špička provozu           10s  FAST
#   7  Legacy: laboratoř                 5s  ULTRA
#   8  Legacy: kompromis                10s  FAST
#   9  Legacy: rychlý síť-only reboot   10s  FAST


# =============================================================================
# Automatické nasazení — není potřeba upravovat
# =============================================================================
# Pokud je script spuštěn přes /bin/sh (dash), přepni na bash
if [ -z "${BASH_VERSION:-}" ]; then
    if [ -f "$0" ]; then exec bash "$0" "$@"; fi
    echo "[ERROR] Vyžaduje bash. Spusť: curl -fsSL URL | sudo bash -s -- <profil>" >&2; exit 1
fi
set -euo pipefail

if [ "$(id -u)" != "0" ]; then
    echo "[ERROR] Spusť jako root (sudo)." >&2
    exit 1
fi

# Číslo profilu lze předat jako argument: curl ... | sudo bash -s -- 2
# Pokud není argument, použije se ACTIVE_PROFILE z hlavičky skriptu.
if [ -n "${1:-}" ]; then
    ACTIVE_PROFILE="$1"
fi

if ! [[ "$ACTIVE_PROFILE" =~ ^[1-9]$ ]]; then
    echo "[ERROR] Neplatné číslo profilu: '$ACTIVE_PROFILE'. Zadej 1–9." >&2
    exit 1
fi

APPLY_URL="${APPLY_URL:-https://cdn.public.altisima.cz/diagnostika/apply_diagnostic_profile.sh}"
TMP_APPLY="/tmp/terkom-apply-profile-$$.sh"

echo "[INFO] Nasazuji profil ${ACTIVE_PROFILE}..."
echo "[INFO] Stahuji apply_diagnostic_profile.sh z: $APPLY_URL"

if ! curl -fsSL "$APPLY_URL" -o "$TMP_APPLY" 2>/dev/null; then
    echo "[ERROR] Nepodařilo se stáhnout apply_diagnostic_profile.sh (síť?)" >&2
    rm -f "$TMP_APPLY"
    exit 1
fi

sed -i 's/\r//' "$TMP_APPLY" 2>/dev/null || true
BASH_ERR="$(bash -n "$TMP_APPLY" 2>&1 || true)"
if [ -n "$BASH_ERR" ]; then
    echo "[ERROR] Stažený skript není validní bash: $BASH_ERR" >&2
    rm -f "$TMP_APPLY"
    exit 1
fi

chmod 755 "$TMP_APPLY"
bash "$TMP_APPLY" "$ACTIVE_PROFILE"
rm -f "$TMP_APPLY"
