mirror of
https://github.com/simple-login/app.git
synced 2024-09-28 20:51:29 +02:00
make sure to not notify alias in HibpNotifiedAlias
This commit is contained in:
parent
5821bd6512
commit
6c12b31060
15
cron.py
15
cron.py
@ -56,6 +56,7 @@ from app.models import (
|
|||||||
DeletedAlias,
|
DeletedAlias,
|
||||||
DomainDeletedAlias,
|
DomainDeletedAlias,
|
||||||
Hibp,
|
Hibp,
|
||||||
|
HibpNotifiedAlias,
|
||||||
)
|
)
|
||||||
from app.utils import sanitize_email
|
from app.utils import sanitize_email
|
||||||
from server import create_app
|
from server import create_app
|
||||||
@ -271,7 +272,7 @@ def increase_percent(old, new) -> str:
|
|||||||
return "N/A"
|
return "N/A"
|
||||||
|
|
||||||
increase = (new - old) / old * 100
|
increase = (new - old) / old * 100
|
||||||
return f"{increase:.1f}%. Delta: {new-old}"
|
return f"{increase:.1f}%. Delta: {new - old}"
|
||||||
|
|
||||||
|
|
||||||
def bounce_report() -> List[Tuple[str, int]]:
|
def bounce_report() -> List[Tuple[str, int]]:
|
||||||
@ -781,6 +782,7 @@ def notify_hibp():
|
|||||||
db.session.query(Alias)
|
db.session.query(Alias)
|
||||||
.options(joinedload(Alias.hibp_breaches))
|
.options(joinedload(Alias.hibp_breaches))
|
||||||
.filter(Alias.hibp_breaches.any())
|
.filter(Alias.hibp_breaches.any())
|
||||||
|
.filter(Alias.id.notin_(db.session.query(HibpNotifiedAlias.alias_id)))
|
||||||
.distinct(Alias.user_id)
|
.distinct(Alias.user_id)
|
||||||
.all()
|
.all()
|
||||||
)
|
)
|
||||||
@ -795,7 +797,11 @@ def notify_hibp():
|
|||||||
.all()
|
.all()
|
||||||
)
|
)
|
||||||
|
|
||||||
LOG.d(f"Send new breaches found email to user {user}")
|
LOG.d(
|
||||||
|
f"Send new breaches found email to %s for %s breaches aliases",
|
||||||
|
user,
|
||||||
|
len(breached_aliases),
|
||||||
|
)
|
||||||
|
|
||||||
send_email(
|
send_email(
|
||||||
user.email,
|
user.email,
|
||||||
@ -812,6 +818,11 @@ def notify_hibp():
|
|||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# add the breached aliases to HibpNotifiedAlias to avoid sending another email
|
||||||
|
for alias in breached_aliases:
|
||||||
|
HibpNotifiedAlias.create(user_id=user.id, alias_id=alias.id)
|
||||||
|
db.session.commit()
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
LOG.d("Start running cronjob")
|
LOG.d("Start running cronjob")
|
||||||
|
Loading…
Reference in New Issue
Block a user