"""
Aplicação Principal do Sistema de Barbearia (Estilo Navalhe.com.br).
FastAPI + SQLite + Tailwind CSS.
"""
from fastapi import FastAPI, Request
from fastapi.responses import RedirectResponse
from fastapi.staticfiles import StaticFiles
from fastapi.templating import Jinja2Templates
import os

from app.database import init_db
from app.seed import seed_database
from app.routers import public, admin, api, master, auth

# Inicializar banco de dados e dados padrão
init_db()
seed_database()

app = FastAPI(
    title="NaRégua · Plataforma para Barbearias",
    description="Plataforma SaaS multi-tenant de agendamento e gestão para barbearias inspirada no Navalhe.com.br",
    version="2.0.0"
)

# Roteadores
app.include_router(auth.router)
app.include_router(master.router)
app.include_router(public.router)
app.include_router(admin.router)
app.include_router(api.router)

TEMPLATES_DIR = os.path.join(os.path.dirname(__file__), "templates")
templates = Jinja2Templates(directory=TEMPLATES_DIR)

# Rota raiz: Landing Page Comercial do SaaS (Apresentação, Vantagens, Preços e Cadastro)
@app.get("/")
def home_landing_page(request: Request):
    return templates.TemplateResponse(
        request=request,
        name="landing/index.html",
        context={}
    )

if __name__ == "__main__":
    import uvicorn
    uvicorn.run("app.main:app", host="127.0.0.1", port=8000, reload=True)
