Compare commits

..

3 commits

Author SHA1 Message Date
Edward Betts 30b4d27c6a Add UniAuth 2025-11-16 05:30:50 +00:00
Edward Betts d25a3a6622 Drop support for old database name. 2025-11-16 05:29:54 +00:00
Edward Betts 80db4664b8 Update .gitignore 2025-11-16 05:27:58 +00:00
3 changed files with 19 additions and 6 deletions

1
.gitignore vendored
View file

@ -2,3 +2,4 @@
__pycache__
instance
.env
run.fcgi

View file

@ -1,14 +1,17 @@
"""Package initialization for the alt text generator app."""
import sys
from pathlib import Path
from flask import Flask
sys.path.append("/home/edward/src/2024/UniAuth") # isort:skip
from .cache import AltTextCache
from .config import load_settings
from .immich import ImmichClient
from .openai_client import AltTextGenerator
from .mastodon import MastodonClient
from .openai_client import AltTextGenerator
def create_app() -> Flask:
@ -26,17 +29,16 @@ def create_app() -> Flask:
secret_key = app.config.get("SECRET_KEY") or "dev-secret-key"
app.config["SECRET_KEY"] = secret_key
app.config["UNIAUTH_URL"] = "https://edwardbetts.com/UniAuth"
app.config["REQUIRE_AUTH"] = True
app.config["AUTH_CALLBACK_ENDPOINT"] = "main.auth_callback"
instance_dir = Path(app.instance_path)
instance_dir.mkdir(parents=True, exist_ok=True)
db_path = app.config.get("STATION_DB")
if not db_path:
old_db = instance_dir / "alt_text_cache.db"
new_db = instance_dir / "station_announcer.db"
if old_db.exists() and not new_db.exists():
old_db.rename(new_db)
db_path = str(new_db)
db_path = str(instance_dir / "station_announcer.db")
app.config["STATION_DB"] = db_path
app.immich_client = ImmichClient(

View file

@ -5,6 +5,7 @@ from __future__ import annotations
import base64
from datetime import datetime
import UniAuth.auth
from flask import (
Blueprint,
Response,
@ -105,6 +106,15 @@ def _unique_asset_ids(values: list[str]) -> list[str]:
MAX_MEDIA_ATTACHMENTS = 4
bp.before_request(UniAuth.auth.require_authentication)
@bp.route("/callback")
def auth_callback():
"""Process the authentication callback."""
return UniAuth.auth.auth_callback()
@bp.route("/")
def index():
return redirect(url_for("main.compose_select"))