99 lines
3.5 KiB
PHTML
99 lines
3.5 KiB
PHTML
<?php
|
|
include dirname(__DIR__).'/header.phtml';
|
|
?>
|
|
|
|
<h2>Neuer Kurs</h2>
|
|
<form method="post">
|
|
<?php
|
|
function createInputField($label, $name, $errors, $validData, $type = 'input') {
|
|
$errorClass = isset($errors[$name]) ? 'error' : '';
|
|
$value = htmlspecialchars($validData[$name] ?? '');
|
|
$errorMessage = isset($errors[$name]) ? '<p class="error">' . htmlspecialchars($errors[$name]) . '</p>' : '';
|
|
|
|
if($type === 'textarea') {
|
|
return <<<HTML
|
|
<div style="grid-column: 1 / -1;" class="input">
|
|
<label for="{$name}">{$label}</label>
|
|
<textarea class="{$errorClass}" name="{$name}">{$value}</textarea>
|
|
{$errorMessage}
|
|
</div>
|
|
HTML;
|
|
}
|
|
|
|
return <<<HTML
|
|
<div class="input">
|
|
<label for="{$name}">{$label}</label>
|
|
<input class="{$errorClass}" type="text" name="{$name}" value="{$value}">
|
|
{$errorMessage}
|
|
</div>
|
|
HTML;
|
|
}
|
|
echo '<div style="margin-top: 32px;" class="form-grid-3">';
|
|
foreach ($labels as $name => $label) {
|
|
if($name === "|") {
|
|
echo '</div>';
|
|
echo '<div style="margin-top: 32px;" class="form-grid-3">';
|
|
} else {
|
|
echo createInputField($label, $name, $errors, $validData, $type = $name === 'beschreibung' ? 'textarea' : 'input');
|
|
}
|
|
}
|
|
echo '</div>';
|
|
?>
|
|
<input type="hidden" name="controller" value="admin">
|
|
<input type="hidden" name="do" value="validateForm">
|
|
<div class="form-grid-3" style="margin-top: 16px;">
|
|
<input style="grid-column: 3;" type="submit" name="submit" value="Absenden">
|
|
</div>
|
|
</form>
|
|
|
|
<?php
|
|
$adminModel = new \Blog\Model\AdminModel();
|
|
$courses = $adminModel->getMyCourses();
|
|
$doc = new DOMDocument('1.0', 'UTF-8');
|
|
|
|
if (!empty($courses)) {
|
|
echo '<div class="courses-view">';
|
|
foreach ($courses as $kurs) {
|
|
$courseCard = $doc->createElement('div');
|
|
$courseCard->setAttribute('class', 'course-card');
|
|
|
|
$courseImage = $doc->createElement('div');
|
|
$courseImage->setAttribute('class', 'course-image');
|
|
$courseCard->appendChild($courseImage);
|
|
|
|
$courseContent = $doc->createElement('div');
|
|
$courseContent->setAttribute('class', 'course-content');
|
|
$courseCard->appendChild($courseContent);
|
|
|
|
$courseLeft = $doc->createElement('div');
|
|
$courseLeft->setAttribute('class', 'course-left');
|
|
$courseContent->appendChild($courseLeft);
|
|
|
|
$note = $doc->createElement('div', htmlspecialchars($kurs['note'] ?? 'Keine Bewertung') . ' ★');
|
|
$courseLeft->appendChild($note);
|
|
|
|
$name = $doc->createElement('div', htmlspecialchars($kurs['name']));
|
|
$courseLeft->appendChild($name);
|
|
|
|
$address = $doc->createElement('div', htmlspecialchars($kurs['strasse'] . ', ' . $kurs['stadt'] . ' ' . $kurs['plz']));
|
|
$courseLeft->appendChild($address);
|
|
|
|
$courseRight = $doc->createElement('div');
|
|
$courseRight->setAttribute('class', 'course-right');
|
|
$courseContent->appendChild($courseRight);
|
|
|
|
$price = $doc->createElement('div', htmlspecialchars($kurs['preis']) . ' €');
|
|
$courseRight->appendChild($price);
|
|
|
|
$category = $doc->createElement('div', htmlspecialchars($kurs['kategorie'] ?? 'Keine Kategorie'));
|
|
$courseRight->appendChild($category);
|
|
|
|
echo $doc->saveHTML($courseCard);
|
|
}
|
|
echo '</div>';
|
|
} else {
|
|
echo '<p>Keine Kurse gefunden.</p>';
|
|
}
|
|
?>
|
|
|
|
<?php include dirname(__DIR__).'/footer.phtml'; ?> |