#!/bin/bash

# Script to create Stripe Price for Subscription
# This will create a $19.99/month recurring price with NO trial period

echo "======================================"
echo "🎯 Creating Stripe Price"
echo "======================================"
echo ""

# Check if Stripe CLI is installed
if ! command -v stripe &> /dev/null; then
    echo "❌ Stripe CLI is not installed"
    echo ""
    echo "To install:"
    echo "  brew install stripe/stripe-cli/stripe"
    echo ""
    exit 1
fi

echo "✅ Stripe CLI found"
echo ""

# Check if logged in
if ! stripe config --list &> /dev/null; then
    echo "⚠️  Not logged in to Stripe"
    echo "Running: stripe login"
    echo ""
    stripe login
fi

echo ""
echo "Creating product..."
echo ""

# Create product
PRODUCT=$(stripe products create \
  --name="Facility Management Subscription" \
  --description="Monthly subscription for facility owners - No trial period, immediate billing" \
  2>&1)

if [ $? -ne 0 ]; then
    echo "❌ Failed to create product"
    echo "$PRODUCT"
    exit 1
fi

# Extract product ID
PRODUCT_ID=$(echo "$PRODUCT" | grep -o 'id: prod_[a-zA-Z0-9]*' | head -1 | cut -d' ' -f2)

if [ -z "$PRODUCT_ID" ]; then
    echo "❌ Failed to extract product ID"
    exit 1
fi

echo "✅ Product created: $PRODUCT_ID"
echo ""

echo "Creating price..."
echo ""

# Create price (1999 cents = $19.99)
PRICE=$(stripe prices create \
  --product="$PRODUCT_ID" \
  --unit-amount=1999 \
  --currency=usd \
  --recurring[interval]=month \
  --billing-scheme=per_unit \
  2>&1)

if [ $? -ne 0 ]; then
    echo "❌ Failed to create price"
    echo "$PRICE"
    exit 1
fi

# Extract price ID
PRICE_ID=$(echo "$PRICE" | grep -o 'id: price_[a-zA-Z0-9]*' | head -1 | cut -d' ' -f2)

if [ -z "$PRICE_ID" ]; then
    echo "❌ Failed to extract price ID"
    exit 1
fi

echo "✅ Price created: $PRICE_ID"
echo ""
echo "======================================"
echo "🎉 Success!"
echo "======================================"
echo ""
echo "Your new Price ID: $PRICE_ID"
echo ""
echo "📝 Next steps:"
echo ""
echo "1. Update your .env.local file:"
echo "   STRIPE_PRICE_ID=$PRICE_ID"
echo ""
echo "2. Restart your dev server:"
echo "   npm run dev"
echo ""
echo "======================================"
echo ""

# Offer to update .env.local automatically
read -p "Would you like to update .env.local automatically? (y/n) " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]; then
    ENV_FILE=".env.local"
    
    if [ ! -f "$ENV_FILE" ]; then
        echo "⚠️  .env.local not found, checking .env..."
        ENV_FILE=".env"
    fi
    
    if [ -f "$ENV_FILE" ]; then
        # Backup existing file
        cp "$ENV_FILE" "$ENV_FILE.backup"
        echo "✅ Backed up $ENV_FILE to $ENV_FILE.backup"
        
        # Update or add STRIPE_PRICE_ID
        if grep -q "STRIPE_PRICE_ID" "$ENV_FILE"; then
            # Replace existing
            sed -i.tmp "s/STRIPE_PRICE_ID=.*/STRIPE_PRICE_ID=$PRICE_ID/" "$ENV_FILE"
            rm "$ENV_FILE.tmp"
            echo "✅ Updated STRIPE_PRICE_ID in $ENV_FILE"
        else
            # Add new
            echo "" >> "$ENV_FILE"
            echo "# Stripe Price ID (created $(date))" >> "$ENV_FILE"
            echo "STRIPE_PRICE_ID=$PRICE_ID" >> "$ENV_FILE"
            echo "✅ Added STRIPE_PRICE_ID to $ENV_FILE"
        fi
        
        echo ""
        echo "✅ Configuration updated!"
        echo ""
        echo "⚠️  Don't forget to restart your dev server!"
    else
        echo "❌ Could not find .env or .env.local file"
    fi
fi

echo ""
echo "✅ Setup complete!"







