#!/usr/bin/env bash

set -euo pipefail

VERSION="0.1.0"

INSTALL_DIR="$HOME/.local/bin"
WAYNEKERR_DIR="$HOME/.waynekerr"

echo ""
echo "==================================="
echo " Wayne Kerr Developer Platform"
echo "==================================="
echo ""
echo "Installing waynekerr ${VERSION}..."
echo ""

mkdir -p "$INSTALL_DIR"
mkdir -p "$WAYNEKERR_DIR"

cat > "$INSTALL_DIR/waynekerr" <<'EOF'
#!/usr/bin/env bash

set -euo pipefail

VERSION="0.1.0"

WAYNEKERR_DIR="$HOME/.waynekerr"
SESSION_FILE="$WAYNEKERR_DIR/session.json"

show_help() {
cat <<HELP

Wayne Kerr Developer Platform

Usage:

  waynekerr version
  waynekerr doctor
  waynekerr login
  waynekerr logout
  waynekerr whoami
  waynekerr install programmer

HELP
}

doctor() {
  echo "Running diagnostics..."
  echo ""

  for cmd in git node npm python3 curl jq; do
    if command -v "$cmd" >/dev/null 2>&1; then
      echo "✅ $cmd found"
    else
      echo "❌ $cmd missing"
    fi
  done
}

login() {
  echo ""
  echo "Waynekerr Login"
  echo ""
  echo "Login functionality coming soon."
  echo ""
  echo "Future endpoint:"
  echo "https://login.waynekerr.com"
}

logout() {
  rm -f "$SESSION_FILE"
  echo "Logged out."
}

whoami() {
  if [ ! -f "$SESSION_FILE" ]; then
    echo "Not logged in."
    exit 1
  fi

  cat "$SESSION_FILE"
}

install_programmer() {
  echo ""
  echo "Programmer profile installation"
  echo ""
  echo "This feature will use authenticated downloads."
  echo "Please run:"
  echo ""
  echo "  waynekerr login"
  echo ""
}

case "${1:-}" in
  version)
    echo "waynekerr ${VERSION}"
    ;;

  doctor)
    doctor
    ;;

  login)
    login
    ;;

  logout)
    logout
    ;;

  whoami)
    whoami
    ;;

  install)
    case "${2:-}" in
      programmer)
        install_programmer
        ;;
      *)
        echo "Unknown profile."
        exit 1
        ;;
    esac
    ;;

  *)
    show_help
    ;;
esac
EOF

chmod +x "$INSTALL_DIR/waynekerr"

if ! echo "$PATH" | grep -q "$INSTALL_DIR"; then
  echo ""
  echo "Add this to your shell profile:"
  echo ""
  echo "export PATH=\"$INSTALL_DIR:\$PATH\""
  echo ""
fi

echo ""
echo "Installation complete."
echo ""
echo "Try:"
echo ""
echo "  waynekerr version"
echo "  waynekerr doctor"
echo ""
