lots of typing fixes

This commit is contained in:
Iain Learmonth 2022-05-16 11:44:03 +01:00
parent 51f580a304
commit 3665c34961
43 changed files with 260 additions and 178 deletions

View file

@ -1,6 +1,8 @@
from datetime import datetime, timedelta, timezone
from typing import Optional
from flask import Blueprint, render_template, request
from flask.typing import ResponseReturnValue
from sqlalchemy import desc, or_
from app.models.activity import Activity
@ -43,13 +45,13 @@ def calculate_mirror_expiry(s: datetime) -> str:
@portal.app_template_filter("format_datetime")
def format_datetime(s: datetime) -> str:
def format_datetime(s: Optional[datetime]) -> str:
if s is None:
return "Unknown"
return s.strftime("%a, %d %b %Y %H:%M:%S")
def total_origins_blocked():
def total_origins_blocked() -> int:
count = 0
for o in Origin.query.filter(Origin.destroyed == None).all():
for a in o.alarms:
@ -59,8 +61,9 @@ def total_origins_blocked():
break
return count
@portal.route("/")
def portal_home():
def portal_home() -> ResponseReturnValue:
groups = Group.query.order_by(Group.group_name).all()
now = datetime.now(timezone.utc)
proxies = Proxy.query.filter(Proxy.destroyed == None).all()
@ -86,7 +89,7 @@ def portal_home():
@portal.route("/search")
def search():
def search() -> ResponseReturnValue:
query = request.args.get("query")
proxies = Proxy.query.filter(or_(Proxy.url.contains(query)), Proxy.destroyed == None).all()
origins = Origin.query.filter(or_(Origin.description.contains(query), Origin.domain_name.contains(query))).all()
@ -94,7 +97,7 @@ def search():
@portal.route('/alarms')
def view_alarms():
def view_alarms() -> ResponseReturnValue:
one_day_ago = datetime.now(timezone.utc) - timedelta(days=1)
alarms = Alarm.query.filter(Alarm.last_updated >= one_day_ago).order_by(
desc(Alarm.alarm_state), desc(Alarm.state_changed)).all()