#!/usr/bin/env bash
# Sunucuda root olarak çalıştırın.
# /root/.nova_livekit.env içeriğini okuyup tüm novazeka document root’larına
# aynı config/livekit_local.php yazar (developer + ana site aynı JWT iss için).
#
# Kurulum:
#   cp /path/to/novazeka/config/.nova_livekit.env.example /root/.nova_livekit.env
#   nano /root/.nova_livekit.env   # gerçek key/secret
#   chmod 600 /root/.nova_livekit.env
#   bash /path/to/novazeka/scripts/sync_livekit_php_config.sh
#
# Özel env yolu:
#   NOVA_LIVEKIT_ENV=/root/.nova_livekit.env bash sync_livekit_php_config.sh

set -euo pipefail

ENV_FILE="${NOVA_LIVEKIT_ENV:-/root/.nova_livekit.env}"
CP_USER="${NOVA_CP_USER:-novazekacom}"
BASE="${NOVA_PUBLIC_HTML:-/home/${CP_USER}/public_html}"

if [[ ! -f "$ENV_FILE" ]]; then
  echo "Yok: $ENV_FILE"
  echo "Örnek: cp novazeka/config/.nova_livekit.env.example $ENV_FILE && chmod 600 $ENV_FILE && düzenle"
  exit 1
fi

set -a
# shellcheck disable=SC1090
source "$ENV_FILE"
set +a

if [[ -z "${LIVEKIT_URL:-}" || -z "${LIVEKIT_API_KEY:-}" || -z "${LIVEKIT_API_SECRET:-}" ]]; then
  echo "LIVEKIT_URL, LIVEKIT_API_KEY, LIVEKIT_API_SECRET dolu olmalı ($ENV_FILE)"
  exit 1
fi

BROWSER="${LIVEKIT_URL_BROWSER:-}"

write_php() {
  local dir="$1"
  [[ -d "$dir" ]] || return 0
  local out="$dir/livekit_local.php"
  umask 077
  cat >"$out" <<PHP
<?php
\$LIVEKIT_URL = '${LIVEKIT_URL//\'/\\\'}';
\$LIVEKIT_URL_BROWSER = '${BROWSER//\'/\\\'}';
\$LIVEKIT_API_KEY = '${LIVEKIT_API_KEY//\'/\\\'}';
\$LIVEKIT_API_SECRET = '${LIVEKIT_API_SECRET//\'/\\\'}';
PHP
  chown "${CP_USER}:${CP_USER}" "$out"
  chmod 640 "$out"
  echo "OK $out"
}

write_php "${BASE}/novazeka/config"
write_php "${BASE}/developer.novazeka.com.tr/novazeka/config"

echo "Bitti. Her iki kökte de aynı LiveKit anahtarları kullanılıyor."
