Merge branch 'dev' into '50-lerninhalte-interface'

# Conflicts:
#   webseite/topic.php
This commit is contained in:
Matthias Grief
2025-01-03 19:41:37 +01:00
16 changed files with 360 additions and 12 deletions

View File

@@ -95,6 +95,7 @@ if (!isset($topicData)) {
<div class="max-w-7xl mx-auto mt-5">
<div class="mt-16"></div>
<!-- Related Topics -->
<div class="related-topics bg-gray-100 p-4 rounded-lg">
<h4>Verwandte Themen:</h4>
<ul class="flex flex-wrap gap-2">
@@ -118,6 +119,7 @@ if (!isset($topicData)) {
</ul>
</div>
<!-- Topic Content -->
<div class="content-card mt-[8px]">
<h1 class="content-title"><?php echo($topicData->displayName); ?></h1>
<p class="content-text">
@@ -148,6 +150,63 @@ if (!isset($topicData)) {
</div>
</div>
<!-- Tasks -->
<?php
$tasks = $topicData->getTasks();
// nur anzeigen, wenn Aufgaben vorhanden sind
if ($tasks != null) {
?>
<div class="content-card mt-[8px]">
<h1 class="content-title">Aufgaben</h1>
<div style="display: flex; flex-wrap: wrap; gap: 0.5rem;">
<?php
foreach ($tasks as $taskIndex => $task) {
$taskId = $taskIndex;
?>
<div class="task-container"
data-task-id="<?php echo htmlspecialchars($taskId, ENT_QUOTES, 'UTF-8'); ?>">
<p>
<?php echo '<b>Aufgabe ' . ($taskIndex + 1) . ':</b> ' . htmlspecialchars($task->getText(), ENT_QUOTES, 'UTF-8'); ?>
</p>
<!-- Diesen Bereich für jeden Eintrag in Variables anzeigen lassen, z.B. x = [Textfeld] ... -->
<?php
$variables = $task->getVariables();
foreach ($variables as $variableIndex => $variable) {
$correctAnswer = $variable;
?>
<div class="variable-container" style="display: flex; flex-wrap: wrap; gap: 0.5rem; ">
<label for="answer<?php echo $taskId . '_' . $variableIndex; ?>"></label>
<input class="variable-input border-2 border-[var(--primary-color)]" id="answer<?php echo $taskId . '_' . $variableIndex; ?>" type="text"
placeholder="<?php echo $variableIndex; ?>" data-correct-answer="<?php echo $correctAnswer; ?>"/>
<button class="check-answer bg-white text-[var(--primary-color)] border-2 border-[var(--primary-color)] w-10 h-10 flex items-center justify-center rounded-lg hover:bg-[var(--primary-color)] hover:text-white transition duration-300">
<i class="fa-solid fa-check"></i>
</button>
<button class="show-answer bg-white text-[var(--primary-color)] border-2 border-[var(--primary-color)] w-10 h-10 flex items-center justify-center rounded-lg hover:bg-[var(--primary-color)] hover:text-white transition duration-300">
<i class="fa-solid fa-eye"></i>
</button>
</div>
<?php
}
?>
</div>
<hr>
<?php
}
?>
</div>
</div>
<!-- Toasts Container -->
<div id="toasts" class="fixed top-5 right-5 flex flex-col items-end space-y-4 z-50">
<!-- Einzelne Toasts werden hier dynamisch hinzugefügt -->
</div>
<?php
}
?>
<!-- Related Topics -->
<div class="related-topics bg-gray-100 p-4 rounded-lg">
<h4>Verwandte Themen:</h4>
<ul class="flex flex-wrap gap-2">