majuna/app/portal/report.py

22 lines
778 B
Python
Raw Normal View History

2023-10-23 17:33:17 +01:00
from flask import Blueprint, render_template
from flask.typing import ResponseReturnValue
from sqlalchemy import func, and_
from app.extensions import db
from app.models.mirrors import Proxy, Origin
report = Blueprint("report", __name__)
@report.route("/blocks", methods=['GET'])
def report_blocks() -> ResponseReturnValue:
2023-10-23 17:53:48 +01:00
blocked_today = db.session.query( # type: ignore[no-untyped-call]
2023-10-23 17:33:17 +01:00
Origin.domain_name,
Origin.description,
Proxy.added,
Proxy.deprecated,
Proxy.deprecation_reason
).join(Origin, Origin.id == Proxy.origin_id
).filter(and_(Proxy.deprecated > func.current_date(), Proxy.deprecation_reason.like('block_%'))).all()
return render_template("report_blocks.html.j2", blocked_today=blocked_today)