#!/bin/bash
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
APP="$ROOT/Resources/app.py"
LOGDIR="$HOME/.projectdrop"
mkdir -p "$LOGDIR"
LOG="$LOGDIR/app.log"
export PATH="/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin:$PATH"
PY=""
for c in python3 /opt/homebrew/bin/python3 /usr/local/bin/python3 /usr/bin/python3; do
  if command -v "$c" >/dev/null 2>&1; then PY=$(command -v "$c" 2>/dev/null || echo "$c"); break; fi
  if [ -x "$c" ]; then PY="$c"; break; fi
done
if [ -z "$PY" ]; then
  osascript -e 'display alert "ProjectDrop" message "Python 3 is required. Install it from python.org, then open ProjectDrop again."'
  exit 1
fi
echo "---- $(date) using $PY ----" >>"$LOG"
"$PY" "$APP" >>"$LOG" 2>&1 &
PID=$!
sleep 1.5
if ! kill -0 "$PID" 2>/dev/null; then
  TAIL=$(tail -c 400 "$LOG" | tr '"' "'")
  osascript -e "display alert \"ProjectDrop Quit\" message \"It closed right away. Last log:\n$TAIL\""
  exit 1
fi
wait "$PID"
STATUS=$?
if [ "$STATUS" -ne 0 ]; then
  TAIL=$(tail -c 400 "$LOG" | tr '"' "'")
  osascript -e "display alert \"ProjectDrop Quit\" message \"Exit $STATUS\n$TAIL\""
fi
exit $STATUS
