# Database Credentials for all services

# These are used by the 'postgres' service to initialize the database
# These are used by 'backend' (Go) and 'sabredav' (PHP)
POSTGRES_USER=myuser
POSTGRES_PASSWORD=mypassword
POSTGRES_DB=mydb

# and to connect to the 'postgres' service on the Docker network
POSTGRES_HOST=postgres
POSTGRES_PORT=5432

JWT_SECRET_KEY="a-very-secret-key-that-should-be-in-env"

# S3/R2 Configuration (for image storage)
# Dev: Uses local Rustfs container (see compose.yml)
# Prod: Use Cloudflare R2 credentials
S3_ENDPOINT=http://localhost:9000
S3_PUBLIC_URL=http://192.168.1.135:9000
S3_ACCESS_KEY=rustfsadmin
S3_SECRET_KEY=rustfsadmin
S3_BUCKET=crussell
S3_PROFILE_PICS_BUCKET=crussell-profile-pics
AWS_REGION=eu-west-2

# Prod: Set R2_ENDPOINT for Cloudflare R2 (overrides S3_* vars in non-dev builds)
R2_ENDPOINT=
# R2_ACCESS_KEY=<your-access-key>
# R2_SECRET_KEY=<your-secret-key>
# R2_BUCKET=crussell
# R2_PUBLIC_URL=https://pub-<your-domain>.r2.dev

# Square Payment Gateway
SQUARE_ACCESS_TOKEN=
SQUARE_LOCATION_ID=
SQUARE_ENVIRONMENT=mock
SQUARE_WEBHOOK_SIGNATURE_KEY=
SQUARE_WEBHOOK_NOTIFICATION_URL=

# Test Database (separate from main DB)
# Used by testutils/testdb for running tests without corrupting dev data
TEST_DB_HOST=localhost
TEST_DB_DSN=

# Dev/CI mode — set to "true" to enable mock services
# Disables zxcvbn password checks, skips artificial Square mock delays,
# skips DAV sync, and relaxes production guardrails
GO_TESTING=

# CardDAV (SabreDAV) — profile photo sync
DAV_BASE_URL=http://localhost:8080
DAV_ADMIN_PASSWORD=admin

# Logging
# Set to "true" to disable ANSI color escape sequences in log output
NO_COLOR=

# Frontend
VITE_BACKEND_URL=http://localhost:8080

# Local S3 (Rustfs) — requires GO_TESTING=1 or dev build tag
# These are dev-only overrides used by the dev S3 implementation
RUSTFS_ENDPOINT=http://rustfs:9000
RUSTFS_ACCESS_KEY=rustfsadmin
RUSTFS_SECRET_KEY=rustfsadmin
RUSTFS_BUCKET=crussell
