mirror of
https://github.com/chatmail/relay.git
synced 2026-05-20 04:48:06 +00:00
ruff again :)
This commit is contained in:
@@ -106,7 +106,8 @@ def lookup_passdb(db, config: Config, user, cleartext_password):
|
|||||||
if userdata:
|
if userdata:
|
||||||
# Update last login time.
|
# Update last login time.
|
||||||
conn.execute(
|
conn.execute(
|
||||||
"UPDATE users SET last_login=? WHERE addr=?", (round(int(time.time()) // 86400), user)
|
"UPDATE users SET last_login=? WHERE addr=?",
|
||||||
|
(round(int(time.time()) // 86400), user),
|
||||||
)
|
)
|
||||||
|
|
||||||
userdata["home"] = f"/home/vmail/mail/{config.mail_domain}/{user}"
|
userdata["home"] = f"/home/vmail/mail/{config.mail_domain}/{user}"
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ from socketserver import (
|
|||||||
from .config import Config, read_config
|
from .config import Config, read_config
|
||||||
from .database import Database
|
from .database import Database
|
||||||
|
|
||||||
|
|
||||||
def remove_users(db: Database, cutoff_date: int):
|
def remove_users(db: Database, cutoff_date: int):
|
||||||
db.connect()
|
db.connect()
|
||||||
try:
|
try:
|
||||||
@@ -25,6 +25,7 @@ def remove_users(db: Database, cutoff_date: int):
|
|||||||
finally:
|
finally:
|
||||||
db.close()
|
db.close()
|
||||||
|
|
||||||
|
|
||||||
def remove_user_data(db: Database, cutoff_date: int, dir: Path):
|
def remove_user_data(db: Database, cutoff_date: int, dir: Path):
|
||||||
"""Collects all users where last_login < cutoff_date and deletes corresponding directories."""
|
"""Collects all users where last_login < cutoff_date and deletes corresponding directories."""
|
||||||
db.connect()
|
db.connect()
|
||||||
@@ -33,13 +34,13 @@ def remove_user_data(db: Database, cutoff_date: int, dir: Path):
|
|||||||
select_query = "SELECT user FROM users WHERE last_login <?"
|
select_query = "SELECT user FROM users WHERE last_login <?"
|
||||||
cursor = db.execute_query(select_query, (cutoff_date,))
|
cursor = db.execute_query(select_query, (cutoff_date,))
|
||||||
usernames = cursor.fetchall()
|
usernames = cursor.fetchall()
|
||||||
|
|
||||||
for username in usernames:
|
for username in usernames:
|
||||||
user_dir = dir / username[0]
|
user_dir = dir / username[0]
|
||||||
if user_dir.exists() and user_dir.is_dir():
|
if user_dir.exists() and user_dir.is_dir():
|
||||||
shutil.rmtree(user_dir)
|
shutil.rmtree(user_dir)
|
||||||
print(f"Deleted directory: {user_dir}")
|
print(f"Deleted directory: {user_dir}")
|
||||||
|
|
||||||
finally:
|
finally:
|
||||||
db.close()
|
db.close()
|
||||||
|
|
||||||
@@ -50,4 +51,4 @@ def main():
|
|||||||
today = round(int(time.time()) // 86400)
|
today = round(int(time.time()) // 86400)
|
||||||
|
|
||||||
cutoff_date = today - config.delete_accounts_after
|
cutoff_date = today - config.delete_accounts_after
|
||||||
remove_user_data(db, cutoff_date)
|
remove_user_data(db, cutoff_date)
|
||||||
|
|||||||
Reference in New Issue
Block a user