neu AdminHelferLevel.php und teilweise headers in Funktionen
This commit is contained in:
parent
3f64d29910
commit
f123163c0a
|
|
@ -3,7 +3,12 @@
|
|||
require_once 'konfiguration.php';
|
||||
SESSION_START();
|
||||
require 'SQL.php';
|
||||
require '_functions.php';
|
||||
$db_link = ConnectDB();
|
||||
$pagename = "Admin-Funktionen"; // name of this page
|
||||
$backlink = "index.php"; // back button in table header from table header
|
||||
$header = PageHeader($pagename);
|
||||
$tablehead = TableHeader($pagename,$backlink);
|
||||
require '_login.php';
|
||||
|
||||
if ($AdminStatus != 1) {
|
||||
|
|
@ -11,22 +16,6 @@ if ($AdminStatus != 1) {
|
|||
echo '<!doctype html><head><meta http-equiv="Refresh" content="0; URL=index.php" /></head></html>';
|
||||
exit;
|
||||
}
|
||||
$header=<<<HEADER
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Admin <?php echo EVENTNAME ?></title>
|
||||
<link rel="stylesheet" href="css/style_common.css"/>
|
||||
<link rel="stylesheet" href="css/style_desktop.css" media="screen and (min-width:781px)"/>
|
||||
<link rel="stylesheet" href="css/style_mobile.css" media="screen and (max-width:780px)"/>
|
||||
|
||||
<meta name="viewport" content="width=480" />
|
||||
</head>
|
||||
<body>
|
||||
HEADER; //<?nop this bracket is just here for vim syntax highlighting
|
||||
|
||||
DatenbankAufDeutsch($db_link);
|
||||
|
||||
$AliasHelferID = 0;
|
||||
|
||||
if (isset($_SESSION["AliasHelferID"])) {
|
||||
|
|
@ -38,29 +27,38 @@ if (isset($_POST["AliasHelferID"])) {
|
|||
header("Location: " . $_SERVER['PHP_SELF']);
|
||||
}
|
||||
|
||||
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
||||
// POST from _login.php after login
|
||||
//echo var_dump($_POST);
|
||||
//header("Location: " . $_SERVER['PHP_SELF']);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
if ($AliasHelferID != 0) {
|
||||
$_SESSION["AliasHelferID"] = $AliasHelferID;
|
||||
}
|
||||
echo $header; // muss nach redirect-headern fuer POST ausgegeben werden
|
||||
$db_erg = Helferdaten($db_link, $HelferID);
|
||||
while ($zeile = mysqli_fetch_array($db_erg, MYSQLI_ASSOC)) {
|
||||
$HelferName = $zeile['Name'];
|
||||
$HelferIsAdmin = $zeile['Admin'];
|
||||
}
|
||||
echo $header; // muss nach redirect-headern fuer POST ausgegeben werden
|
||||
echo $tablehead; // variablen aus _login.php
|
||||
?>
|
||||
|
||||
<div style="width: 100%;">
|
||||
|
||||
<table class="commontable">
|
||||
<th>
|
||||
<button name="BackHelferdaten" value="1" onclick="window.location.href = 'index.php';">
|
||||
<b>↩</b>
|
||||
</button>
|
||||
<b>Admin <?php echo EVENTNAME; ?></b>
|
||||
</th>
|
||||
<tr>
|
||||
|
||||
|
||||
<tr>
|
||||
<tr onclick="window.location.href='AdminHelferLevel.php';">
|
||||
<td>
|
||||
<a class="fallbacklink" href='AdminHelferLevel.php'>
|
||||
<img src="Bilder/PfeilRechts.jpeg" style="width:30px;height:30px;">
|
||||
<b>HelferLevel verwalten und Accounterstellung</b>
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<tr onclick="window.location.href='AdminDienste.php';">
|
||||
<td>
|
||||
<a class="fallbacklink" href='AdminDienste.php'>
|
||||
|
|
@ -69,9 +67,9 @@ while ($zeile = mysqli_fetch_array($db_erg, MYSQLI_ASSOC)) {
|
|||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr onclick="window.location.href='CreateHelfer.php';"> <td>
|
||||
<!--tr onclick="window.location.href='CreateHelfer.php';"> <td>
|
||||
<img src="Bilder/More.jpeg" style="width:30px;height:30px;"><b>Seite zur selbst-Registrierung</b>
|
||||
</td> </tr>
|
||||
</td> </tr-->
|
||||
|
||||
<tr onclick="window.location.href='EmailZuToken.php';"> <td>
|
||||
<img src="Bilder/PfeilRechts.jpeg" style="width:30px;height:30px;"><b>persönliche Einladungslink(s) generieren</b>
|
||||
|
|
@ -80,16 +78,17 @@ while ($zeile = mysqli_fetch_array($db_erg, MYSQLI_ASSOC)) {
|
|||
<td>
|
||||
<a class="fallbacklink" href='AdminHelferUebersicht.php'>
|
||||
<img src="Bilder/PfeilRechts.jpeg" style="width:30px;height:30px;">
|
||||
<b>Helferübersicht und als Admin ändern <br>(Anm: dieses Menü soll die Punkte unterhalb ablösen)</b>
|
||||
<b>Helferübersicht und -verwaltung<!--br>(Anm: dieses Menü soll die Punkte unterhalb ablösen)</b-->
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<th>
|
||||
<!-- <th>
|
||||
<b>Als Admin ändern:<b>
|
||||
<form style="display:inline-block;" method=post>
|
||||
<select style="height:33px;width:350px;font-size:20" name="AliasHelferID" id="AliasHelferID" onchange="submit()">
|
||||
<?php
|
||||
-->
|
||||
<!--?php
|
||||
$db_erg = HelferListe($db_link);
|
||||
while ($zeile = mysqli_fetch_array($db_erg, MYSQLI_ASSOC)) {
|
||||
if ($AliasHelferID != $zeile['HelferID']) {
|
||||
|
|
@ -104,16 +103,13 @@ if( ! isset($selectedSet) or ! $selectedSet) {
|
|||
}
|
||||
|
||||
|
||||
?>
|
||||
?--><!--
|
||||
</select></form>
|
||||
</b>
|
||||
</td>
|
||||
</th>
|
||||
<tr><!--td-->
|
||||
<!--<table class="innertable" style="padding:15px"><!-
|
||||
- inner table for indent-->
|
||||
<tr>
|
||||
<tr onclick="window.location.href='AdminUserdaten.php';">
|
||||
<!--td class="invis"></td-->
|
||||
<td>
|
||||
<img src="Bilder/dot.png" width="30px" height="2px">
|
||||
<img src="Bilder/PfeilRechts.jpeg" style="width:30px;height:30px;">
|
||||
|
|
@ -134,8 +130,7 @@ if( ! isset($selectedSet) or ! $selectedSet) {
|
|||
<b> Schichten Hinzufügen</b>
|
||||
</td>
|
||||
</tr>
|
||||
<!--</table></td> </tr> inner table for indent end-->
|
||||
<!--<tr><th>Weiteres</th></tr>-->
|
||||
-->
|
||||
<tr onclick="window.location.href='Kalender-all.php';">
|
||||
<td><img src="Bilder/More.jpeg" style="width:30px;height:30px"><b> Admin Kalenderansicht</b> </td>
|
||||
</tr>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,155 @@
|
|||
<?php
|
||||
// Login und Admin Status testen. Wenn kein Admin-Status, Weiterleiten auf index.php und beenden
|
||||
require_once 'konfiguration.php';
|
||||
SESSION_START();
|
||||
require 'SQL.php';
|
||||
require '_functions.php';
|
||||
$db_link = ConnectDB();
|
||||
$pagename = "HelferLevel verwalten"; // name of this page
|
||||
$backlink = "Admin.php"; // back button in table header from table header
|
||||
$header = PageHeader($pagename);
|
||||
$tablehead = TableHeader($pagename,$backlink);
|
||||
require '_login.php';
|
||||
|
||||
if ($AdminStatus != 1) {
|
||||
//Seite nur fuer Admins. Weiter zu index.php und exit, wenn kein Admin
|
||||
echo '<!doctype html><head><meta http-equiv="Refresh" content="0; URL=index.php" /></head></html>';
|
||||
exit;
|
||||
}
|
||||
$AliasHelferID = 0;
|
||||
|
||||
if (isset($_SESSION["AliasHelferID"])) {
|
||||
$AliasHelferID = $_SESSION["AliasHelferID"];
|
||||
}
|
||||
|
||||
$HelferLevelInfo = AlleHelferLevelAlles($db_link);
|
||||
|
||||
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
||||
if (isset($_POST["AliasHelferID"])) {
|
||||
$AliasHelferID = $_POST["AliasHelferID"];
|
||||
}
|
||||
if (isset($_POST['save'])){
|
||||
$level = intval($_POST['save']);
|
||||
$beschreibung = $_POST['beschreibung'][$level] ?? $HelferLevelInfo[$level]['HelferLevelBeschreibung'] ;
|
||||
$linkcode = $_POST['linkcode'][$level] ?? $HelferLevelInfo[$level]['linkcode'];
|
||||
HelferLevelUpdate($db_link, $level, $beschreibung, $linkcode);
|
||||
}
|
||||
|
||||
if (isset($_POST['create'])) {
|
||||
$beschreibung_neu = trim($_POST['beschreibung_neu'] ?? '');
|
||||
$linkcode_neu = trim($_POST['linkcode_neu'] ?? '');
|
||||
if ($beschreibung_neu !== '' && $linkcode_neu !== '') {
|
||||
HelferLevelInsert($db_link, $beschreibung_neu, $linkcode_neu);
|
||||
}
|
||||
}
|
||||
if (isset($_POST['delete'])) {
|
||||
$level = intval($_POST['delete']);
|
||||
HelferLevelDelete($db_link, $level);
|
||||
}
|
||||
|
||||
// POST from _login.php after login
|
||||
//echo var_dump($_POST);
|
||||
header("Location: " . $_SERVER['PHP_SELF']);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
if ($AliasHelferID != 0) {
|
||||
$_SESSION["AliasHelferID"] = $AliasHelferID;
|
||||
}
|
||||
$db_erg = Helferdaten($db_link, $HelferID);
|
||||
while ($zeile = mysqli_fetch_array($db_erg, MYSQLI_ASSOC)) {
|
||||
$HelferName = $zeile['Name'];
|
||||
$HelferIsAdmin = $zeile['Admin'];
|
||||
}
|
||||
echo $header; // muss nach redirect-headern fuer POST ausgegeben werden
|
||||
echo $tablehead; // variablen aus _login.php
|
||||
?>
|
||||
<p>
|
||||
<img src="Bilder/Info.jpeg" width="25px" height="25px">
|
||||
<b>HelferLevel</b> definieren die Rollen der Accounts und helfen Aufgaben abzugrenzen.
|
||||
Jeder Account ist genau einem Level zugeordnet.
|
||||
Hier können Levels bearbeitet, erstellt oder unbenutzte Levels gelöscht werden. Nutzung durch Accounts und Dienste in den Spalten davor.
|
||||
</p><p>
|
||||
Der Button ganz rechts verlinkt eine Accounterstellungsseit pro Level (Link auf Erstellungsseite enthält jeweiligen "linkcode").<br>
|
||||
Alternativ zur Accounterstellungsseite kann ein
|
||||
<a href="EmailZuToken.php"
|
||||
title="Account mit diesem Level anlegen"
|
||||
class="buttonlike"
|
||||
style="text-decoration: none; padding: 15px 12px 9px 12px; background-color: #eee; border: 2px solid #777; border-radius: 3px; display: inline-block; ">
|
||||
<span style="white-space: nowrap">✉️ </span></a> persönlicher Einladungslink per Email verschickt werden</b>, der automatisch einen Account "auf Klick" anlegt.
|
||||
</a>
|
||||
</p>
|
||||
|
||||
<form action="AdminHelferLevel.php" method="post">
|
||||
<table class="commontable">
|
||||
<tr>
|
||||
<th>Level</th>
|
||||
<th>Beschreibung</th>
|
||||
<th>Linkcode</th>
|
||||
<th>Accounts</th>
|
||||
<th>Dienste</th>
|
||||
<th>Aktion</th>
|
||||
</tr>
|
||||
<?php
|
||||
foreach ($HelferLevelInfo as $level => $info) {
|
||||
$beschreibung = htmlspecialchars($info['HelferLevelBeschreibung']);
|
||||
$linkcode = htmlspecialchars($info['linkcode']);
|
||||
$accounts = AnzahlAccountsMitHelferLevel($db_link, $level);
|
||||
$dienste = AnzahlDiensteMitHelferLevel($db_link, $level);
|
||||
|
||||
if ($accounts == 0 && $dienste == 0) {
|
||||
$loeschButton = "<button type=\"submit\" name=\"delete\" value=\"$level\" title=\"Eintrag löschen\" style=\"color:red;\">❌</button>";
|
||||
} else {
|
||||
$verwendung = [];
|
||||
if ($accounts > 0) $verwendung[] = "$accounts Account(s)";
|
||||
if ($dienste > 0) $verwendung[] = "$dienste Dienst(e)";
|
||||
$verwendungsText = implode(" und ", $verwendung);
|
||||
$escapedTitle = htmlspecialchars($verwendungsText, ENT_QUOTES);
|
||||
|
||||
$loeschButton = <<<EOL
|
||||
<button
|
||||
title="$escapedTitle nutzen dieses Level"
|
||||
onclick="alert('Dieser HelferLevel ist in Verwendung durch $escapedTitle und kann nicht gelöscht werden.')"
|
||||
style="opacity: 0.5; cursor: not-allowed;"
|
||||
>❌</button>
|
||||
EOL;
|
||||
}
|
||||
echo <<<EOL
|
||||
<tr>
|
||||
<td width="5%">$level</td>
|
||||
<td width="25%"><input type="text" name="beschreibung[$level]" value="$beschreibung" size="40"></td>
|
||||
<td width="25%"><input type="text" name="linkcode[$level]" value="$linkcode" size="40"></td>
|
||||
<td width="5%" style="text-align:center">$accounts</td>
|
||||
<td width="5%" style="text-align:center">$dienste</td>
|
||||
<td width="15%">
|
||||
<button type="submit" name="save" value="$level" title="Ändern">💾</button>
|
||||
$loeschButton
|
||||
|
||||
<a href="CreateHelfer.php?linkcode=$linkcode"
|
||||
title="Account mit diesem Level anlegen"
|
||||
class="buttonlike"
|
||||
style="text-decoration: none; padding: 15px 6px 9px 6px; background-color: #eee; border: 1px solid #777; border-radius: 3px; display: inline-block; ">
|
||||
<span style="white-space: nowrap"> 🧑➕ </span>
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
EOL;
|
||||
}
|
||||
?>
|
||||
<tr>
|
||||
<td>neu</td>
|
||||
<td><input type="text" name="beschreibung_neu" placeholder="Neue Beschreibung" size="40"></td>
|
||||
<td><input type="text" name="linkcode_neu" placeholder="Neuer Linkcode" size="40"></td>
|
||||
<td>-</td>
|
||||
<td>-</td>
|
||||
<td><button type="submit" name="create" value="1" title="Neu anlegen">➕</button></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
<a href="<?php echo $backlink; ?>"><button class=back name="BackHelferdaten" value="1" onclick="window.location.href = 'index.php';">
|
||||
<b>↩</b>
|
||||
</button>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -5,15 +5,21 @@ SESSION_START();
|
|||
require 'SQL.php';
|
||||
$db_link = ConnectDB();
|
||||
// Das hier wird über eine Art Token den Zugriff auf CreateHelfer erlauben
|
||||
// Jedes Token ist mit einem Helferlevel verknüpft, in dem dann Helfer angelegt
|
||||
$typeSecret = $_GET['invite_code'] ?? '';
|
||||
if (empty($typeSecret)) {
|
||||
die("Fehlender Zugangscode.");
|
||||
// Jedes Token ist mit einem Helferlevel verknüpft, in dem dann Helfer angelegt
|
||||
$linkcode = $_GET['linkcode'] ?? '';
|
||||
if (empty($linkcode)) {
|
||||
die("<br>Fehlender Einladungscode.<br>");
|
||||
}
|
||||
$HelferLevelDaten = HelferLevelAusEinladung($db_link, $linkcode);
|
||||
if ($HelferLevelDaten === false) {
|
||||
die("<br>Ungültiger Einladungscode.");
|
||||
}
|
||||
$HelferLevel = $HelferLevelDaten['HelferLevel'];
|
||||
$HelferLevelBeschreibung = $HelferLevelDaten['HelferLevelBeschreibung'];
|
||||
?>
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<head>
|
||||
<title><?php echo EVENTNAME ?></title>
|
||||
|
||||
<link rel="stylesheet" href="css/style_desktop.css" media="screen and (min-width:781px)"/>
|
||||
|
|
@ -21,8 +27,8 @@ if (empty($typeSecret)) {
|
|||
|
||||
|
||||
<meta name="viewport" content="width=480" />
|
||||
</head>
|
||||
<body>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<?php
|
||||
|
||||
|
|
@ -32,7 +38,6 @@ if (isset($_POST['sent'])) {
|
|||
$HelferName = $_POST['helfer-name'];
|
||||
$HelferEmail = $_POST['helfer-email'];
|
||||
$HelferHandy = $_POST['helfer-handy'];
|
||||
$HelferLevel = $_POST['helfer-level'];
|
||||
$HelferPasswort = $_POST['helfer-passwort'];
|
||||
$HelferPasswort2 = $_POST['helfer-passwort2'];
|
||||
|
||||
|
|
@ -82,9 +87,10 @@ if (isset($_POST['sent'])) {
|
|||
}
|
||||
|
||||
|
||||
echo "<p>Hier können Sie sich selbst einen Account im Level: $HelferLevelBeschreibung ($HelferLevel) anlegen.<br>";
|
||||
echo 'Danach zum <a href="index.php">Login</a></p>';
|
||||
?>
|
||||
|
||||
<p>Hier können Sie sich selbst einen Account als Helfer anlegen. Danach zum <a href="index.php">Login</a></p>
|
||||
<form method="post">
|
||||
|
||||
<table class="commontable">
|
||||
|
|
@ -121,39 +127,11 @@ if (isset($_POST['sent'])) {
|
|||
<input name="helfer-passwort2" type="password" value="<?php echo htmlspecialchars($HelferPasswort2 ?? '')?>" required>
|
||||
</td>
|
||||
</tr>
|
||||
<tr><td>Helferlevel </td></tr>
|
||||
<tr><td>
|
||||
<select hidden name="helfer-level">
|
||||
<?php
|
||||
$db_erg = HelferLevel($db_link);
|
||||
$selected = "";
|
||||
while ($zeile = mysqli_fetch_array($db_erg, MYSQLI_ASSOC)) {
|
||||
$HelferLevel = $zeile['HelferLevel'];
|
||||
$HelferLevelBeschreibung = $zeile['HelferLevelBeschreibung'];
|
||||
if ($HelferLevel == 1) {
|
||||
$selected = " selected " ;
|
||||
};
|
||||
echo "<option value='$HelferLevel' $selected>$HelferLevelBeschreibung</option>";
|
||||
$selected = "";
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<br>
|
||||
<button name="sent" value="1">Helfer Anlegen</button>
|
||||
<button name="sent" value="1">Account Anlegen</button>
|
||||
|
||||
|
||||
</form>
|
||||
|
||||
|
||||
|
||||
<?php
|
||||
|
||||
mysqli_free_result($db_erg);
|
||||
?>
|
||||
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
|||
88
html/SQL.php
88
html/SQL.php
|
|
@ -926,7 +926,7 @@ function LastInsertId($db_link)
|
|||
|
||||
function HelferLevel($db_link)
|
||||
{
|
||||
$sql = "select HelferLevel,HelferLevelBeschreibung from HelferLevel";
|
||||
$sql = "select HelferLevel, HelferLevelBeschreibung, linkcode from HelferLevel order by HelferLevel";
|
||||
$result = mysqli_query($db_link, $sql);
|
||||
if (! $result) {
|
||||
echo "Konnte HelferLevel nicht abfragen";
|
||||
|
|
@ -948,3 +948,89 @@ function alleHelferLevel($db_link)
|
|||
}
|
||||
|
||||
|
||||
function HelferLevelAusEinladung($db_link, string $linkcode): array|false {
|
||||
$sql = "SELECT HelferLevel, HelferLevelBeschreibung FROM HelferLevel WHERE linkcode = ?";
|
||||
$stmt = stmt_prepare_and_execute($db_link, $sql, "s", $linkcode);
|
||||
$result = mysqli_stmt_get_result($stmt);
|
||||
|
||||
if (!$result || $result->num_rows === 0) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return $result->fetch_assoc();
|
||||
}
|
||||
|
||||
function AlleHelferLevelAlles($db_link)
|
||||
{
|
||||
$result = HelferLevel($db_link);
|
||||
$alle = [];
|
||||
while ($zeile = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
|
||||
$level = $zeile['HelferLevel'];
|
||||
$alle[$level] = [
|
||||
'HelferLevelBeschreibung' => $zeile['HelferLevelBeschreibung'],
|
||||
'linkcode' => $zeile['linkcode'],
|
||||
];
|
||||
}
|
||||
return $alle;
|
||||
}
|
||||
|
||||
function HelferLevelUpdate($db_link, int $level, string $beschreibung, string $linkcode): bool {
|
||||
$sql = "UPDATE HelferLevel SET HelferLevelBeschreibung = ?, linkcode = ? WHERE HelferLevel = ?";
|
||||
$stmt = stmt_prepare_and_execute($db_link, $sql, "ssi", $beschreibung, $linkcode, $level);
|
||||
if (!$stmt) {
|
||||
return false;
|
||||
}
|
||||
mysqli_stmt_close($stmt);
|
||||
return true;
|
||||
}
|
||||
|
||||
function HelferLevelInsert($db_link, string $beschreibung, string $linkcode): bool {
|
||||
$sql = "INSERT INTO HelferLevel (HelferLevelBeschreibung, linkcode) VALUES (?, ?)";
|
||||
$stmt = stmt_prepare_and_execute($db_link, $sql, "ss", $beschreibung, $linkcode);
|
||||
return $stmt !== false;
|
||||
}
|
||||
|
||||
function HelferLevelDelete($db_link, int $level): bool {
|
||||
$sql = "DELETE FROM HelferLevel WHERE HelferLevel = ?";
|
||||
$stmt = stmt_prepare_and_execute($db_link, $sql, "i", $level);
|
||||
return $stmt !== false;
|
||||
}
|
||||
|
||||
function AnzahlAccountsMitHelferLevel($db_link, int $level): int {
|
||||
$sql = "SELECT COUNT(*) AS Anzahl FROM Helfer WHERE HelferLevel = ?";
|
||||
$stmt = stmt_prepare_and_execute($db_link, $sql, "i", $level);
|
||||
$result = mysqli_stmt_get_result($stmt);
|
||||
if ($result && ($row = mysqli_fetch_assoc($result))) {
|
||||
return (int)$row['Anzahl'];
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
function AnzahlDiensteMitHelferLevel($db_link, $level) {
|
||||
$sql = "SELECT COUNT(*) FROM Dienst WHERE HelferLevel = ?";
|
||||
$stmt = stmt_prepare_and_execute($db_link, $sql, 'i', $level);
|
||||
$stmt->bind_result($anzahl);
|
||||
$stmt->fetch();
|
||||
return $anzahl;
|
||||
}
|
||||
|
||||
|
||||
|
||||
// falls man sowohl nach HelferLevel, Beschreibung oder Invite Code filtern will
|
||||
//function HelferLevelAbfrage($db_link, string $spalte, string $wert): array|false {
|
||||
// // Nur bestimmte Spalten zulassen, um SQL-Injection zu verhindern
|
||||
// $erlaubteSpalten = ['linkcode', 'HelferLevel', 'HelferLevelBeschreibung'];
|
||||
// if (!in_array($spalte, $erlaubteSpalten, true)) {
|
||||
// return false;
|
||||
// }
|
||||
//
|
||||
// $sql = "SELECT HelferLevel, HelferLevelBeschreibung, linkcode FROM HelferLevel WHERE $spalte = ?";
|
||||
// $result = stmt_prepare_and_execute($db_link, $sql, "s", $wert);
|
||||
//
|
||||
// if (!$result || $result->num_rows === 0) {
|
||||
// return false;
|
||||
// }
|
||||
//
|
||||
// return $result->fetch_assoc();
|
||||
//}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,24 +1,17 @@
|
|||
<?php
|
||||
// Login und Admin Status testen. Wenn kein Admin-Status, Weiterleiten auf index.php und beenden
|
||||
require_once 'konfiguration.php';
|
||||
require_once '_functions.php';
|
||||
SESSION_START();
|
||||
require 'SQL.php';
|
||||
$db_link = ConnectDB();
|
||||
$pagename = "Accountdaten"; // for header in _login.php
|
||||
$backlink = "index.php"; // back button in table header from table header
|
||||
$header = PageHeader($pagename);
|
||||
$tablehead = TableHeader($pagename,$backlink);
|
||||
|
||||
require '_login.php';
|
||||
|
||||
$header= <<< HEADER
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<title><?php echo EVENTNAME ?> Persönliche Daten ändern</title>
|
||||
|
||||
<link rel="stylesheet" href="css/style_desktop.css" media="screen and (min-width:781px)"/>
|
||||
<link rel="stylesheet" href="css/style_mobile.css" media="screen and (max-width:780px)"/>
|
||||
<meta name="viewport" content="width=480" />
|
||||
</head>
|
||||
<body>
|
||||
HEADER; //<? vim syntax-highlight-fix
|
||||
|
||||
|
||||
$HelferID = $_SESSION["HelferID"];
|
||||
$AdminID = $_SESSION["AdminID"];
|
||||
|
|
|
|||
|
|
@ -2,39 +2,38 @@
|
|||
|
||||
require_once 'konfiguration.php';
|
||||
|
||||
function HelferAuswahlButton($db_link, $AliasHelferID)
|
||||
{
|
||||
echo '<b>Helfer wählen:<b>';
|
||||
echo '<form style="display:inline-block;" method=post>';
|
||||
echo '<select style="height:33px;width:350px;" name="AliasHelferID" id="AliasHelferID" onchange="submit()">';
|
||||
$db_erg = HelferListe($db_link);
|
||||
while ($zeile = mysqli_fetch_array($db_erg, MYSQLI_ASSOC)) {
|
||||
if ($AliasHelferID != $zeile['HelferID']) {
|
||||
echo "<option value='" . $zeile['HelferID'] . "'>" . $zeile['Name'] . "</optionen>";
|
||||
} else {
|
||||
echo "<option value='" . $zeile['HelferID'] . "' selected='selected'>" . $zeile['Name'] . "</optionen>";
|
||||
}
|
||||
}
|
||||
echo '</select></form>';
|
||||
function PageHeader ($pagename, $eventname = EVENTNAME){
|
||||
$header = <<<HEADER
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<title>$pagename $eventname </title>
|
||||
<link rel="stylesheet" href="css/style_common.css"/>
|
||||
<link rel="stylesheet" href="css/style_desktop.css" media="screen and (min-width:781px)"/>
|
||||
<link rel="stylesheet" href="css/style_mobile.css" media="screen and (max-width:780px)"/>
|
||||
<meta name="viewport" content="width=480" />
|
||||
</head>
|
||||
<body>
|
||||
HEADER; //<?vim this bracket is just here for vim syntax highlighting
|
||||
return $header;
|
||||
}
|
||||
function TableHeader ($pagename, $backlink, $eventname = EVENTNAME){
|
||||
$tablehead = <<<TABLEHEAD
|
||||
<div style="width: 100%;">
|
||||
<table class="commontable">
|
||||
<tr>
|
||||
<th>
|
||||
<a href='$backlink'>
|
||||
<button name="BackHelferdaten">
|
||||
<b>↩</b>
|
||||
</button>
|
||||
</a>
|
||||
<b>$pagename $eventname</b>
|
||||
</th>
|
||||
</tr>
|
||||
</table>
|
||||
TABLEHEAD; // <?vim
|
||||
return $tablehead;
|
||||
}
|
||||
|
||||
if (isset($_POST['AliasHelferID'])) {
|
||||
$AliasHelferID = $_POST['AliasHelferID'];
|
||||
} elseif (isset($_SESSION["AliasHelferID"])) {
|
||||
$AliasHelferID = $_SESSION["AliasHelferID"];
|
||||
} else {
|
||||
HelferAuswahlButton($db_link, $AliasHelferID);
|
||||
echo "<p>Erst Helfer auswählen</p>";
|
||||
exit;
|
||||
}
|
||||
HelferAuswahlButton($db_link, $AliasHelferID);
|
||||
|
||||
$_SESSION["AliasHelferID"] = $AliasHelferID;
|
||||
$AdminID = $_SESSION["AdminID"];
|
||||
|
||||
$db_erg = Helferdaten($db_link, $AliasHelferID);
|
||||
while ($zeile = mysqli_fetch_array($db_erg, MYSQLI_ASSOC)) {
|
||||
$HelferName = $zeile['Name'];
|
||||
$AliasHelferLevel = $zeile['HelferLevel'];
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -102,4 +102,5 @@ $AdminID = isset($_SESSION["AdminID"]) ? $_SESSION["AdminID"] : -1;
|
|||
//TODO vereinheitlichen. index.php verwendet HelferIsAdmin
|
||||
$HelferIsAdmin = $AdminStatus = $_SESSION["AdminStatus"];
|
||||
$HelferLevel = $_SESSION["HelferLevel"];
|
||||
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ input, select, textarea {
|
|||
width: 95%;
|
||||
}
|
||||
|
||||
.commontable button,.back button,.helfer button,#customers button {
|
||||
.commontable button,.back button,.helfer button,#customers button, .buttonlink{
|
||||
text-decoration: none; /* dont underline links */
|
||||
display: inline-block; /* makes it possible to set top and bottom margins */
|
||||
width: 45px;
|
||||
|
|
@ -82,3 +82,5 @@ summary {
|
|||
font-size: 3px;
|
||||
height: 2px;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue