Flask-Files/app/routes/dashboard.py
2025-03-22 12:30:45 +01:00

24 lines
No EOL
1.1 KiB
Python

from flask import render_template
from flask_login import login_required, current_user
from app.routes import dashboard_bp
from app.models import File, Share
from datetime import datetime
@dashboard_bp.route('/')
@login_required
def index():
# Get some stats for the dashboard
total_files = File.query.filter_by(user_id=current_user.id, is_folder=False).count()
total_folders = File.query.filter_by(user_id=current_user.id, is_folder=True).count()
recent_files = File.query.filter_by(user_id=current_user.id, is_folder=False).order_by(File.updated_at.desc()).limit(5).all()
active_shares = Share.query.filter_by(user_id=current_user.id).filter(
(Share.expires_at > datetime.now()) | (Share.expires_at.is_(None))
).count()
return render_template('dashboard.html',
title='Dashboard',
total_files=total_files,
total_folders=total_folders,
recent_files=recent_files,
active_shares=active_shares,
now=datetime.now())