#!/usr/bin/env bash
# tv-info.sh – Geräte-Steckbrief: Modell, Android-Version, Build, Sprache, Auflösung
#
#   ./tv-info.sh              # Steckbrief ausgeben
#   ./tv-info.sh --serial     # zusätzlich die Seriennummer (nicht weitergeben!)
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
# shellcheck source=tv-lib.sh
. "$SCRIPT_DIR/tv-lib.sh"

case "${1:-}" in
  -h|--help) sed -n '2,5p' "$0" | sed 's/^# \{0,1\}//'; exit 0 ;;
esac

tv_connect

row()  { printf '%-22s %s\n' "$1" "$2"; }
prop() { tv_out getprop "$1"; }

row "Ziel"               "$TV_HOST"
row "Hersteller"         "$(prop ro.product.manufacturer)"
row "Marke"              "$(prop ro.product.brand)"
row "Modell"             "$(prop ro.product.model)"
row "Gerätename"         "$(tv_out settings get global device_name)"
row "Android-Version"    "$(prop ro.build.version.release)"
row "API-Level"          "$(prop ro.build.version.sdk)"
row "Build"              "$(prop ro.build.display.id)"
row "Sicherheitspatch"   "$(prop ro.build.version.security_patch)"
row "Systemsprache"      "$(prop persist.sys.locale)"
row "Auflösung"          "$(tv_out wm size | tr '\n' ' ')"
row "Dichte"             "$(tv_out wm density | tr '\n' ' ')"
row "Laufzeit"           "$(tv_out uptime)"
row "ADB eingeschaltet"  "$(tv_out settings get global adb_enabled)"
row "Entwickleroptionen" "$(tv_out settings get global development_settings_enabled)"
if [ "${1:-}" = "--serial" ]; then
  row "Seriennummer"     "$(prop ro.serialno)"
fi
