remove legacy systems
This commit is contained in:
12 files changed
+191
-1188
No files matched your search
@@ -4,7 +4,7 @@ from __future__ import annotations
|
||||
import click
|
||||
from flask import Flask, render_template
|
||||
|
||||
from auth import current_user_id, is_logged_in
|
||||
from auth import current_user_id, is_logged_in, normalize_email
|
||||
from config import Config
|
||||
from db import database_extensions_available, db, init_database
|
||||
from extensions import csrf, limiter, mail
|
||||
@@ -62,6 +62,46 @@ def create_app(config_overrides: dict | None = None) -> Flask:
|
||||
|
||||
click.echo("Initialized database tables.")
|
||||
|
||||
@app.cli.command("grant-site-admin")
|
||||
@click.argument("email")
|
||||
def grant_site_admin_command(email: str) -> None:
|
||||
if not database_extensions_available() or db is None:
|
||||
raise click.ClickException(
|
||||
"Database dependencies are not installed. Run pip install -r requirements.txt."
|
||||
)
|
||||
|
||||
from db_models import User
|
||||
|
||||
normalized_email = normalize_email(email)
|
||||
with app.app_context():
|
||||
user = User.query.filter_by(email=normalized_email, disabled_at=None).one_or_none()
|
||||
if user is None:
|
||||
raise click.ClickException(f"No active user found for {normalized_email}.")
|
||||
user.is_site_admin = True
|
||||
db.session.commit()
|
||||
|
||||
click.echo(f"Granted site admin access to {normalized_email}.")
|
||||
|
||||
@app.cli.command("revoke-site-admin")
|
||||
@click.argument("email")
|
||||
def revoke_site_admin_command(email: str) -> None:
|
||||
if not database_extensions_available() or db is None:
|
||||
raise click.ClickException(
|
||||
"Database dependencies are not installed. Run pip install -r requirements.txt."
|
||||
)
|
||||
|
||||
from db_models import User
|
||||
|
||||
normalized_email = normalize_email(email)
|
||||
with app.app_context():
|
||||
user = User.query.filter_by(email=normalized_email).one_or_none()
|
||||
if user is None:
|
||||
raise click.ClickException(f"No user found for {normalized_email}.")
|
||||
user.is_site_admin = False
|
||||
db.session.commit()
|
||||
|
||||
click.echo(f"Revoked site admin access from {normalized_email}.")
|
||||
|
||||
return app
|
||||
|
||||
|
||||
|
||||
Reference in new issue
Block a user