#!/usr/bin/env bash
# maj7-inbox — zeigt die unsortierten Eintraege der Maj7-Sammelbox.
#
#   maj7-inbox          -> menschenlesbare Liste (jederzeit aufrufbar)
#   maj7-inbox --hook   -> JSON fuer den SessionStart-Hook (additionalContext)
#
# "Unsortiert" = offene Checkbox-Zeilen ("- [ ] ...") in der Sammelbox.
# Beim Einsortieren werden diese Zeilen aus der Sammelbox entfernt.
set -euo pipefail

SAMMELBOX="__MAJ7_DIR__/Sammelbox.md"
[ -f "$SAMMELBOX" ] || exit 0

COUNT="$(grep -c '^- \[ \]' "$SAMMELBOX" 2>/dev/null || true)"
COUNT="${COUNT:-0}"

if [ "${1:-}" = "--hook" ]; then
  [ "$COUNT" -eq 0 ] && exit 0
  LIST="$(grep '^- \[ \]' "$SAMMELBOX")"
  MSG="$(printf '🔔 Maj7-Sammelbox: %s neue(r), unsortierte(r) Eintrag/Eintraege aus anderen Sessions:\n%s\n\nSprich das beim Einstieg proaktiv an und sortiere gemeinsam in Aufgaben.md / Heute.md ein; danach die Zeilen aus der Sammelbox entfernen.' "$COUNT" "$LIST")"
  MSG="$MSG" python3 -c 'import json,os,sys; sys.stdout.write(json.dumps({"hookSpecificOutput":{"hookEventName":"SessionStart","additionalContext":os.environ["MSG"]}}))'
  exit 0
fi

if [ "$COUNT" -eq 0 ]; then
  echo "Sammelbox ist leer — nichts Unsortiertes. ✅"
else
  echo "🔔 $COUNT unsortierte(r) Eintrag/Eintraege in der Maj7-Sammelbox:"
  grep '^- \[ \]' "$SAMMELBOX"
fi
