# Diplomarbeitsbuch
---
## 1. Einleitung
### Ausgangssituation
### Motivation
### Kurzbeschreibung des Projekts
### Persönlicher Aufgabenbereich
### Abgrenzung der Arbeit
Die Datenbankinfrastruktur war zum Projektstart bereits vorhanden und wurde nicht im Rahmen dieser Arbeit konzipiert. Die Diplomarbeit beschränkt sich auf die Entwicklung der Anwendungsschicht, bestehend aus CMS-Konfiguration, Modul- und Theme-Entwicklung.
### Individuelle Themenstellung
---
## 3. Projektumfeld & Rahmenbedingungen
### Einsatz eines bestehenden CMS (Oqtane)
### Teamarbeit
Das Projektteam wurde im Verlauf des Projekts von sechs auf drei Personen reduziert.
### Schulisches Umfeld (HTL)
### Zeitliche Rahmenbedingungen
---
## 4. Technologischer Überblick
### 4.1 Web-Entwicklung mit ASP.NET & C#
#### Backend-Logik
#### API-basierte Kommunikation
#### Zusammenspiel mit Oqtane
### 4.2 Oqtane – Überblick
#### Grundidee & Architektur
#### Modul- & Theme-Konzept
#### Vorteile für das Projekt
### 4.3 CMS-Grundkonfiguration
#### Initiale Einrichtung
#### Modul-Integration
#### Rollen & Berechtigungen
#### Grundlegende Systemeinstellungen
---
## 5. System- und Lösungsarchitektur
### Gesamtarchitektur des Systems
### Einordnung von CMS, Modulen und Theme
### Datenfluss
### Architekturentscheidungen
---
## 6. Entwicklung des Oqtane Themes
### 6.1 Ziel des Themes
Im Rahmen des Projekts AlumniHub wurde ein eigenes Theme für das Content-Management-System Oqtane entwickelt. Ziel dieser Entwicklung war es, das Standarddesign von Oqtane vollständig durch eine projektspezifische Benutzeroberfläche zu ersetzen, die den Anforderungen des Absolventenvereins entspricht. Dabei standen Übersichtlichkeit, Benutzerfreundlichkeit sowie eine moderne und konsistente Gestaltung im Vordergrund. Das Theme sollte zudem auf unterschiedlichen Endgeräten – sowohl Desktop als auch mobil – optimal dargestellt werden.
### 6.2 Technische Umsetzung
Als technische Grundlage diente die Theme-Architektur von Oqtane. Das Layout wurde in einer Razor-Datei (`Theme.razor`) definiert, welche von der Basisklasse `ThemeBase` erbt. Dadurch stehen zentrale Funktionen wie Seitenzustand (`PageState`), Navigation und Systemeinstellungen automatisch zur Verfügung.
#### Navigationsleiste
Im oberen Bereich wurde eine fixierte Navigationsleiste implementiert, die drei Hauptbereiche umfasst: links das Logo der Schule, in der Mitte die dynamisch generierten Navigationspunkte und rechts die Benutzerfunktionen (Login, Registrierung, Profil). Da die Standardkomponente `