mirror of
https://github.com/ION606/static-site-hosting.git
synced 2026-05-14 22:16:54 +00:00
c1f26094de
* split into files * attempted path fix * perms fix * added missed functions * fixed circular dependancy * I hate splitting * env fix * path fix
28 lines
796 B
Python
28 lines
796 B
Python
from flask import current_app
|
|
from datetime import datetime, timedelta
|
|
import os
|
|
import shutil
|
|
|
|
|
|
def delete_inactive_sites():
|
|
from .models import db, Site # lazy import to avoid circular dependency
|
|
|
|
with current_app.app_context():
|
|
cutoff = datetime.utcnow() - timedelta(days=30)
|
|
sites = Site.query.filter(Site.last_accessed < cutoff).all()
|
|
for site in sites:
|
|
site_dir = os.path.join(
|
|
current_app.config["UPLOAD_FOLDER"], str(site.user_id), str(site.id)
|
|
)
|
|
if os.path.exists(site_dir):
|
|
shutil.rmtree(site_dir)
|
|
db.session.delete(site)
|
|
db.session.commit()
|
|
|
|
|
|
def list_files(directory):
|
|
try:
|
|
return os.listdir(directory)
|
|
except FileNotFoundError:
|
|
return []
|