#!/usr/bin/env bash
set -euo pipefail

command -v zenity >/dev/null 2>&1 || { echo "zenity is required." >&2; exit 1; }

value_from() {
  local file="$1" key="$2"
  sed -n "s/^${key}=//p" "$file" 2>/dev/null | head -n1 | tr -d '"'
}

healthos_version="$(value_from /etc/brz-healthos/release VERSION)"
base_os="$(value_from /etc/os-release PRETTY_NAME)"
agent_version="$(/usr/local/sbin/brz-health-agent version 2>/dev/null || true)"
[[ -n "$agent_version" ]] || agent_version="Not installed"
[[ -n "$healthos_version" ]] || healthos_version="Not installed"
[[ -n "$base_os" ]] || base_os="Unknown"

if systemctl is-active --quiet brz-health-agent.service 2>/dev/null; then agent_state="Running"; else agent_state="Not running"; fi
if systemctl is-active --quiet brz-healthos-recovery-health.timer 2>/dev/null; then recovery_state="Active"; else recovery_state="Not active"; fi
if [[ -e /var/lib/brz-healthos/enrolled ]]; then enrollment_state="Enrolled"; else enrollment_state="Not enrolled"; fi

zenity --info \
  --title="About BRZ HealthOS" \
  --window-icon="brz-healthos" \
  --width=560 \
  --ok-label="Close" \
  --text="<big><b>BRZ HealthOS ${healthos_version}</b></big>\nHealthcare Operating System\n\n<b>Agent:</b> ${agent_version}\n<b>Agent service:</b> ${agent_state}\n<b>Recovery monitoring:</b> ${recovery_state}\n<b>Device:</b> $(hostname)\n<b>Management:</b> ${enrollment_state}\n<b>Ubuntu base:</b> ${base_os}\n\nБрз Термин Лимитед"
