import os

# Twilio WhatsApp API credentials – replace placeholders with real values from Twilio.
TWILIO_ACCOUNT_SID = os.getenv("TWILIO_ACCOUNT_SID", "YOUR_ACCOUNT_SID")
TWILIO_AUTH_TOKEN = os.getenv("TWILIO_AUTH_TOKEN", "YOUR_AUTH_TOKEN")
TWILIO_WHATSAPP_FROM = os.getenv("TWILIO_WHATSAPP_FROM", "whatsapp:+YOUR_SANDBOX_NUMBER")

OTP_LENGTH = int(os.getenv("SWIFTCART_OTP_LENGTH", "6"))
OTP_EXPIRY_MINUTES = int(os.getenv("SWIFTCART_OTP_EXPIRY_MINUTES", "10"))
OTP_MAX_ATTEMPTS = int(os.getenv("SWIFTCART_OTP_MAX_ATTEMPTS", "5"))
OTP_RESEND_COOLDOWN_SECONDS = int(os.getenv("SWIFTCART_OTP_RESEND_COOLDOWN_SECONDS", "60"))

SMTP_HOST = os.getenv("SWIFTCART_SMTP_HOST", "swiftcart.urpos.website")
SMTP_PORT = int(os.getenv("SWIFTCART_SMTP_PORT", "465"))
SMTP_USERNAME = os.getenv("SWIFTCART_SMTP_USERNAME", "official@swiftcart.urpos.website")
SMTP_PASSWORD = os.getenv("SWIFTCART_SMTP_PASSWORD", "ahmad@12345@#$")
SMTP_USE_TLS = os.getenv("SWIFTCART_SMTP_USE_TLS", "0") != "0"
SMTP_USE_SSL = os.getenv("SWIFTCART_SMTP_USE_SSL", "1") != "0"
MAIL_FROM = os.getenv("SWIFTCART_MAIL_FROM", "official@swiftcart.urpos.website")
REGISTRATION_OTP_DEV_LOG = os.getenv("SWIFTCART_OTP_DEV_LOG", "0") != "0"
# When Twilio SMS fails (e.g. trial account, unverified destination), log OTP to server console
# and still return success so signup can continue in development. Set SWIFTCART_SMS_OTP_FALLBACK=0 in production
# if you require real SMS delivery only.
SMS_OTP_FALLBACK_ON_FAILURE = os.getenv("SWIFTCART_SMS_OTP_FALLBACK", "1") != "0"
REGISTRATION_VERIFICATION_GRACE_MINUTES = int(
    os.getenv("SWIFTCART_REGISTRATION_VERIFICATION_GRACE_MINUTES", "30")
)

SECRET_KEY = os.getenv("SWIFTCART_SECRET_KEY", "swiftcart_super_secret_key_123")
SQLALCHEMY_DATABASE_URI = os.getenv("SWIFTCART_DATABASE_URI", "sqlite:///swiftcart_cloud.db")
