# # Copyright © 2021,2022 IsardVDI S.L. # # This file is part of DD # # DD is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or (at your # option) any later version. # # DD is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more # details. # # You should have received a copy of the GNU Affero General Public License # along with DD. If not, see . # # SPDX-License-Identifier: AGPL-3.0-or-later import json import logging as log import os import sys import time import traceback from typing import TYPE_CHECKING from uuid import uuid4 from flask import ( Response, jsonify, redirect, render_template, request, send_from_directory, url_for, ) if TYPE_CHECKING: from api.flaskapp import ApiFlaskApp from ..lib.avatars import Avatars avatars = Avatars() def setup_avatar_views(app: "ApiFlaskApp") -> None: # TODO: check if this is redundant and remove it @app.route("/avatar/", methods=["GET"]) def avatar(username: str) -> Response: file = 'dd.jpg' filepath = '/custom/avatars/' if username != 'admin': file = avatars.get_user_avatar(username) filepath = os.path.join("", "../avatars/master-avatars/") return send_from_directory( filepath, file, mimetype="image/jpg", )