import os from flask import Blueprint, render_template from .auth import oidc from .port_utils import get_user_ports from dotenv import load_dotenv main = Blueprint('main', __name__) load_dotenv() @main.route("/") @oidc.require_login def home(): username = oidc.user_getfield("preferred_username") server_path = f"./servers/mc-{username}" has_server = os.path.exists(server_path) return render_template("home.html", has_server=has_server) @main.route('/setup') @oidc.require_login def setup(): return render_template('setup.html') @main.route('/dashboard') @oidc.require_login def dashboard(): username = oidc.user_getfield('preferred_username') server_path = f"./servers/mc-{username}" has_server = os.path.exists(server_path) ip = os.getenv("SERVER_IP") ports = get_user_ports(username) if (has_server): return render_template('dashboard.html', username=username, ip=ip, ports=ports) else: return render_template('setup.html', username=username, ip=ip, ports=ports)