from fastapi import APIRouter, HTTPException
from models.users import User
from configuration import DBSessionDep

router = APIRouter(prefix="/api")

@router.get("/users")
def get_users(session: DBSessionDep):
    resultado = session.query(User).order_by(User.last_visit_date.desc()).limit(10).all()
    if resultado == []:
        return 'Usuário não encontrado'
    else:
        return resultado

@router.get("/search-user")
def search_user(query: str, db: DBSessionDep):
    user = db.query(User).filter(
        (User.name.ilike(f"%{query}%")) |
        (User.email.ilike(f"%{query}%")) |
        (User.username.ilike(f"%{query}%"))
    ).all()

    if not user:
        raise HTTPException(status_code=404, detail="Usuário não encontrado")

    return user

# @router.get("/study-track-access-log")
# def get_study_track_access_log(session: DBSessionDep):
#     if resultado == []:
#         return 'Nenhum registro encontrado'
#     else:
#         return resultado