.PHONY: help start start-build stop build down ps logs prune-everything db-reset mercure-jwt cache-clear og-cache-clear

.DEFAULT_GOAL := help

help:
	@echo "Available commands:"
	@echo "  make start               - Start services without building (uses existing images)"
	@echo "  make start-build         - Start services and build images if needed"
	@echo "  make stop                - Stop running services"
	@echo "  make build               - Build Docker images only"
	@echo "  make down                - Stop and remove containers/networks"
	@echo "  make prune-everything    - Prune volumes, networks and images (DANGEROUS!)"
	@echo "  make db-reset            - Reset the database (drop, create, migrate) (DANGEROUS!)"
	@echo "  make ccp                 - Clear the production cache"
	@echo "  make cache-clear         - Clear all caches (Vite, Symfony, node_modules)"
	@echo "  make og-cache-clear      - Clear Open Graph cache only"

start:
	docker compose up -d

start-build:
	composer i
	bun run build
	docker compose up -d --build

stop:
	docker compose stop

build:
	docker compose build

down:
	docker compose down

prune-everything:
	@echo "WARNING: This will remove ALL containers, volumes, networks and images!"
	@read -p "Type 'yes' to confirm: " confirm; \
	if [ "$$confirm" != "yes" ]; then \
		echo "Aborted."; \
		exit 1; \
	fi
	docker compose down -v --rmi all --remove-orphans

mercure-jwt:
	@php bin/generate-mercure-jwt.php

db-reset:
	@echo "WARNING: This will DROP and RECREATE the database!"
	@read -p "Type 'yes' to confirm: " confirm; \
	if [ "$$confirm" != "yes" ]; then \
		echo "Aborted."; \
		exit 1; \
	fi
	bin/console doctrine:database:drop --force --if-exists --no-interaction
	bin/console doctrine:database:create --if-not-exists --no-interaction
	bin/console doctrine:migrations:migrate --no-interaction

ccp:
	bin/console cache:clear --no-warmup --env=prod

cache-clear:
	@echo "Clearing all caches..."
	@rm -rf node_modules/.vite
	@rm -rf .vite
	@rm -rf var/og-cache
	@php bin/console cache:clear --no-warmup
	@echo "✓ Vite cache cleared"
	@echo "✓ OG cache cleared"
	@echo "✓ Symfony cache cleared"
	@echo ""
	@echo "Rebuilding assets..."
	@bun run build
	@echo ""
	@echo "✓ All caches cleared and assets rebuilt!"
	@echo "  Next step: Refresh browser with Ctrl+Shift+R"

og-cache-clear:
	@echo "Clearing Open Graph cache..."
	@rm -rf var/og-cache
	@echo "✓ OG cache cleared!"
	@echo "  Battle card images will be regenerated on next access"



