"""
feat: Update frontend and backend configurations for development environment - Downgrade PyP100 version in requirements.txt for compatibility. - Add new frontend routes for index, login, dashboard, printers, jobs, and profile pages. - Modify docker-compose files for development setup, including environment variables and service names. - Update Caddyfile for local development with Raspberry Pi backend. - Adjust health check route to use updated backend URL. - Enhance setup-backend-url.sh for development environment configuration. """
This commit is contained in:
@@ -7,7 +7,7 @@ from datetime import datetime, timedelta
|
||||
from typing import Dict, List, Optional, Tuple, Any, Union
|
||||
from functools import wraps
|
||||
|
||||
from flask import Flask, request, jsonify, session
|
||||
from flask import Flask, request, jsonify, session, render_template, redirect, url_for
|
||||
from flask_login import LoginManager, UserMixin, login_user, logout_user, current_user, login_required
|
||||
import sqlalchemy.exc
|
||||
from PyP100 import PyP110
|
||||
@@ -972,6 +972,81 @@ def stop_scheduler_api():
|
||||
"running": scheduler.is_running()
|
||||
})
|
||||
|
||||
# Frontend-Routen
|
||||
@app.route("/")
|
||||
def index():
|
||||
"""Hauptseite - Weiterleitung zum Dashboard oder Login."""
|
||||
if current_user.is_authenticated:
|
||||
return redirect(url_for('dashboard'))
|
||||
return redirect(url_for('login_page'))
|
||||
|
||||
|
||||
@app.route("/login")
|
||||
def login_page():
|
||||
"""Login-Seite."""
|
||||
if current_user.is_authenticated:
|
||||
return redirect(url_for('dashboard'))
|
||||
return render_template('login.html')
|
||||
|
||||
|
||||
@app.route("/dashboard")
|
||||
@login_required
|
||||
def dashboard():
|
||||
"""Dashboard-Seite."""
|
||||
return render_template('dashboard.html')
|
||||
|
||||
|
||||
@app.route("/printers")
|
||||
@login_required
|
||||
def printers_page():
|
||||
"""Drucker-Übersichtsseite."""
|
||||
return render_template('printers.html')
|
||||
|
||||
|
||||
@app.route("/jobs")
|
||||
@login_required
|
||||
def jobs_page():
|
||||
"""Jobs-Übersichtsseite."""
|
||||
return render_template('jobs.html')
|
||||
|
||||
|
||||
@app.route("/jobs/new")
|
||||
@login_required
|
||||
def new_job_page():
|
||||
"""Neuen Job erstellen."""
|
||||
return render_template('job_create.html')
|
||||
|
||||
|
||||
@app.route("/jobs/<int:job_id>")
|
||||
@login_required
|
||||
@job_owner_required
|
||||
def job_detail_page(job_id):
|
||||
"""Job-Detailseite."""
|
||||
return render_template('job_detail.html', job_id=job_id)
|
||||
|
||||
|
||||
@app.route("/stats")
|
||||
@login_required
|
||||
def stats_page():
|
||||
"""Statistiken-Seite."""
|
||||
return render_template('stats.html')
|
||||
|
||||
|
||||
@app.route("/admin")
|
||||
@login_required
|
||||
@admin_required
|
||||
def admin_page():
|
||||
"""Admin-Panel."""
|
||||
return render_template('admin.html')
|
||||
|
||||
|
||||
@app.route("/profile")
|
||||
@login_required
|
||||
def profile_page():
|
||||
"""Benutzerprofil."""
|
||||
return render_template('profile.html')
|
||||
|
||||
|
||||
# Scheduler starten
|
||||
def start_scheduler():
|
||||
"""Initialisiert und startet den Scheduler mit den erforderlichen Tasks."""
|
||||
|
Reference in New Issue
Block a user