67 lines
1.7 KiB
PHP
67 lines
1.7 KiB
PHP
<?php
|
|
|
|
$adminPassword = 'geheim';
|
|
|
|
// Login prüfen
|
|
if (isset($_POST['password'])) {
|
|
if ($_POST['password'] === $adminPassword) {
|
|
$_SESSION['logged_in'] = true;
|
|
} else {
|
|
$error = "Falsches Passwort!";
|
|
}
|
|
}
|
|
|
|
// Nicht eingeloggt → Login-Formular anzeigen
|
|
if (!($_SESSION['logged_in'] ?? false)) {
|
|
?>
|
|
<h2>🔐 Admin Login</h2>
|
|
<?php if(isset($error)): ?>
|
|
<p style="color:red"><?= $error ?></p>
|
|
<?php endif; ?>
|
|
<form method="post">
|
|
<input type="password" name="password" placeholder="Passwort">
|
|
<button type="submit">Login</button>
|
|
</form>
|
|
<?php
|
|
return;
|
|
}
|
|
|
|
// Konfiguration laden
|
|
$configFile = 'config.php';
|
|
include $configFile;
|
|
|
|
// Speichern
|
|
if (isset($_POST['save'])) {
|
|
foreach ($services as $key => $service) {
|
|
$services[$key]['active'] = isset($_POST['services'][$key]);
|
|
}
|
|
|
|
$content = "<?php\n\$services = [\n";
|
|
foreach ($services as $key => $service) {
|
|
$name = addslashes($service['name']);
|
|
$active = $service['active'] ? 'true' : 'false';
|
|
$content .= " '$key' => ['name' => '$name', 'active' => $active],\n";
|
|
}
|
|
$content .= "];\n?>";
|
|
|
|
file_put_contents($configFile, $content);
|
|
$message = "Konfiguration gespeichert!";
|
|
}
|
|
?>
|
|
|
|
<h2>🛠 Service Verwaltung</h2>
|
|
|
|
<?php if(isset($message)): ?>
|
|
<p style="color:green"><?= $message ?></p>
|
|
<?php endif; ?>
|
|
|
|
<form method="post">
|
|
<?php foreach ($services as $key => $service): ?>
|
|
<label>
|
|
<input type="checkbox" name="services[<?= $key ?>]" <?= $service['active'] ? 'checked' : '' ?>>
|
|
<?= htmlspecialchars($service['name']) ?>
|
|
</label><br>
|
|
<?php endforeach; ?>
|
|
<br>
|
|
<button type="submit" name="save">Speichern</button>
|
|
</form>
|