put stuff in AlleSchichten in functions

This commit is contained in:
root 2025-07-10 10:47:34 +02:00
parent 1e3158eb33
commit d582440ae3
4 changed files with 98 additions and 98 deletions

View File

@ -15,19 +15,15 @@ $tablehead = TableHeader($pagename,$backlink);
// Admin Seite setzt HelferID aus AliasHelferID, sonst bleibt wie aus _login.php gesetzt normale Seite nicht
// Nutzer hat hier zuletzt etwas geändert und wir klappen das deshalb auf
$SchichtID = $_SESSION["SchichtIdAktiv"] ?? "";
$SchichtID = $_SESSION["SchichtIdAktiv"] ?? ""; // sollte die Session Var hier auf nichts zurück gesetzt werden?
$HelferID = $_SESSION["AliasHelferID"] ?? $HelferID; // Alias nur Adminseite
$HelferLevelAnzeige = $_SESSION["HelferLevelAnzeige"] ?? $HelferLevel;
// POST vor HTML Ausgabe
AlleSchichtenCheckPOST($db_link,$HelferID,$AdminStatus,$AdminID);
echo $header;
HelferAuswahlButton($db_link, $HelferID); // Admin Button welcher Helfer bearbeitet wird
echo $tablehead;
HelferAuswahlButton($db_link, $AliasHelferID); // Admin Button welcher Helfer bearbeitet wird
?>
<a href="AdminHelferUebersicht.php">
<button name="BackHelferdaten">
<b>&larrhk;</b>
</button></a>
<?php echo "<b>" . EVENTNAME . "</b>"; ?>
<h1> Alle Schichten / Schichten hinzuf&uuml;gen </h1>
<div style="width: 100%;">
<?php
@ -46,7 +42,7 @@ HelferAuswahlButton($db_link, $HelferID); // Admin Button welcher Helfer bearbei
//"Dienstplan"
echo '<table class="commontable"><tr class="header"><th onclick="window.location.href=\'AdminMeineSchichten.php\'">';
echo '<img src="Bilder/PfeilRechts2.png" style="width:30px;height:30px;align:middle;">' . "Dienstplan von $HelferName: ";
echo '<img src="Bilder/PfeilRechts2.png" style="width:30px;height:30px;align:middle;">' . "Dienstplan von $AliasHelferName (";
echo $zeile['Anzahl'];
echo " Schichten, ";
echo $zeile['Dauer'] / 3600;
@ -54,21 +50,7 @@ HelferAuswahlButton($db_link, $HelferID); // Admin Button welcher Helfer bearbei
echo '</th></tr></table>';
/// Schichten Auswahl
////////////////////////////////////////////////////////
// jeder soll sich alle HelferLevel anzeigen lassen koennen
$HelferLevelAnzeige = $HelferLevel;
if (isset($_POST['helfer-level-anzeige']))
{
$HelferLevelAnzeige = $_POST['helfer-level-anzeige'];
}
echo '<select style="width:200px" name="helfer-level-anzeige" onchange="submit()">';
$alleHelferLevel = alleHelferLevel($db_link);
foreach ($alleHelferLevel as $HelferLevelIteration => $HelferLevelBeschreibung) {
$selected = ($HelferLevelIteration == $HelferLevelAnzeige) ? "selected" : "" ;
echo "<option value='$HelferLevelIteration' $selected>$HelferLevelBeschreibung</option>";
}
echo '</select>';
HelferLevelAuswahl($db_link,$HelferLevelAnzeige);
echo '<table class="commontable">';
@ -78,13 +60,13 @@ $MeinVon = $Bereich['MeinVon'];
$MeinBis = $Bereich['MeinBis'];
$db_erg = AlleSchichtenImZeitbereich($db_link, $MeinVon, $MeinBis, $HelferLevelAnzeige);
echo "<button type='button' onclick='expand_all_table_rows();'>Alles Ausklappen</button>";
function ZeigeHelferLevelTabelle($db_link,$HelferLevel,$HelferLevelAnzeige){
// fuer Anzahlanzeige in Ueberschrift
$iAlleSchichtenCount = AlleSchichtenCount($db_link);
$iBelegteSchichtenCount = AlleBelegteSchichtenCount($db_link);
echo '</table>';
echo "<button type='button' onclick='expand_all_table_rows();'>Alles Ausklappen</button>";
// "Alle Schichten der Con"
// "Alle Schichten der Con" (Gesamtstatistik besetzt/gewollt)
echo '<table class="commontable">';
echo "<tr class='infoheader'>";
echo "<th colspan='5'>Alle Schichten der Con (Besetzt/Gesamt) " . $iBelegteSchichtenCount . "/" . $iAlleSchichtenCount . "</th></tr>";
@ -103,7 +85,9 @@ foreach ($alleHelferLevel as $HelferLevelIteration => $HelferLevelBeschreibung)
$iBelegteSchichtenCount = AlleBelegteSchichtenCount($db_link, $HelferLevelIteration);
echo "<tr class='infoheader'><th colspan='5' >&nbsp;&nbsp; &rightarrow; Schichten $HelferLevelBeschreibung (Besetzt/Gesamt) (" . $iBelegteSchichtenCount . "/" . $iAlleSchichtenCount . ") $meine</th></tr>";
}
echo '</table>';
}
ZeigeHelferLevelTabelle($db_link,$HelferLevel,$HelferLevelAnzeige);
$OldTag = "";
$OldWas = "";

View File

@ -15,17 +15,16 @@ $tablehead = TableHeader($pagename,$backlink);
// Admin Seite setzt HelferID aus AliasHelferID, sonst bleibt wie aus _login.php gesetzt normale Seite nicht
// Nutzer hat hier zuletzt etwas geändert und wir klappen das deshalb auf
$SchichtID = $_SESSION["SchichtIdAktiv"] ?? "";
$SchichtID = $_SESSION["SchichtIdAktiv"] ?? ""; // sollte die Session Var hier auf nichts zurück gesetzt werden?
$_SESSION["AliasHelferID"] = $HelferID; // reset this for admin
$AliasHelferID=$HelferID;
$AliasHelferName=$HelferName;// revert this after putting output in function
$HelferLevelAnzeige = $_SESSION["HelferLevelAnzeige"] ?? $HelferLevel;
// POST vor HTML Ausgabe
AlleSchichtenCheckPOST($db_link,$HelferID,$AdminStatus,$AdminID);
echo $header;
echo $tablehead;
?>
<a href="index.php">
<button name="BackHelferdaten">
<b>&larrhk;</b>
</button></a>
<?php echo "<b>" . EVENTNAME . "</b>"; ?>
<h1> Alle Schichten / Schichten hinzuf&uuml;gen </h1>
<div style="width: 100%;">
<?php
@ -44,7 +43,7 @@ echo $header;
//"Dienstplan"
echo '<table class="commontable"><tr class="header"><th onclick="window.location.href=\'MeineSchichten.php\'">';
echo '<img src="Bilder/PfeilRechts2.png" style="width:30px;height:30px;align:middle;">' . " Mein Dienstplan (";
echo '<img src="Bilder/PfeilRechts2.png" style="width:30px;height:30px;align:middle;">' . "Dienstplan von $AliasHelferName (";
echo $zeile['Anzahl'];
echo " Schichten, ";
echo $zeile['Dauer'] / 3600;
@ -52,21 +51,7 @@ echo $header;
echo '</th></tr></table>';
/// Schichten Auswahl
////////////////////////////////////////////////////////
// jeder soll sich alle HelferLevel anzeigen lassen koennen
$HelferLevelAnzeige = $HelferLevel;
if (isset($_POST['helfer-level-anzeige']))
{
$HelferLevelAnzeige = $_POST['helfer-level-anzeige'];
}
echo '<select style="width:200px" name="helfer-level-anzeige" onchange="submit()">';
$alleHelferLevel = alleHelferLevel($db_link);
foreach ($alleHelferLevel as $HelferLevelIteration => $HelferLevelBeschreibung) {
$selected = ($HelferLevelIteration == $HelferLevelAnzeige) ? "selected" : "" ;
echo "<option value='$HelferLevelIteration' $selected>$HelferLevelBeschreibung</option>";
}
echo '</select>';
HelferLevelAuswahl($db_link,$HelferLevelAnzeige);
echo '<table class="commontable">';
@ -74,15 +59,15 @@ require('_zeitbereich.php');
$Bereich = AusgabeZeitbereichZeile($start_date, $ZeitBereich, $TageNamenDeutsch, $_SERVER['PHP_SELF']);
$MeinVon = $Bereich['MeinVon'];
$MeinBis = $Bereich['MeinBis'];
$db_erg = AlleSchichtenImZeitbereich($db_link, $MeinVon, $MeinBis, $HelferLevel);
$db_erg = AlleSchichtenImZeitbereich($db_link, $MeinVon, $MeinBis, $HelferLevelAnzeige);
echo "<button type='button' onclick='expand_all_table_rows();'>Alles Ausklappen</button>";
function ZeigeHelferLevelTabelle($db_link,$HelferLevel,$HelferLevelAnzeige){
// fuer Anzahlanzeige in Ueberschrift
$iAlleSchichtenCount = AlleSchichtenCount($db_link);
$iBelegteSchichtenCount = AlleBelegteSchichtenCount($db_link);
echo '</table>';
echo "<button type='button' onclick='expand_all_table_rows();'>Alles Ausklappen</button>";
// "Alle Schichten der Con"
// "Alle Schichten der Con" (Gesamtstatistik besetzt/gewollt)
echo '<table class="commontable">';
echo "<tr class='infoheader'>";
echo "<th colspan='5'>Alle Schichten der Con (Besetzt/Gesamt) " . $iBelegteSchichtenCount . "/" . $iAlleSchichtenCount . "</th></tr>";
@ -101,7 +86,9 @@ foreach ($alleHelferLevel as $HelferLevelIteration => $HelferLevelBeschreibung)
$iBelegteSchichtenCount = AlleBelegteSchichtenCount($db_link, $HelferLevelIteration);
echo "<tr class='infoheader'><th colspan='5' >&nbsp;&nbsp; &rightarrow; Schichten $HelferLevelBeschreibung (Besetzt/Gesamt) (" . $iBelegteSchichtenCount . "/" . $iAlleSchichtenCount . ") $meine</th></tr>";
}
echo '</table>';
}
ZeigeHelferLevelTabelle($db_link,$HelferLevel,$HelferLevelAnzeige);
$OldTag = "";
$OldWas = "";
@ -109,7 +96,6 @@ $OldWas = "";
$MeineDienste = SchichtIdArrayEinesHelfers($db_link, $HelferID);
//print_r($MeineDienste);
echo '</table>';
// Tabelle mit allen Diensten und Schichten
echo '<table class="commontable collapsible">';
while ($zeile = mysqli_fetch_array($db_erg, MYSQLI_ASSOC)) {
@ -119,8 +105,8 @@ while ($zeile = mysqli_fetch_array($db_erg, MYSQLI_ASSOC)) {
echo "<tr class='header'><th colspan='5' style='width:100%'><span>+</span> ";
$SchichtID = $zeile['SchichtID'];
$DienstID = $zeile['DienstID'];
$iAlleSchichtenCount = AlleSchichtenCount($db_link, $HelferLevel, $DienstID);
$iBelegteSchichtenCount = AlleBelegteSchichtenCount($db_link, $HelferLevel, $DienstID);
$iAlleSchichtenCount = AlleSchichtenCount($db_link, $HelferLevelAnzeige, $DienstID);
$iBelegteSchichtenCount = AlleBelegteSchichtenCount($db_link, $HelferLevelAnzeige, $DienstID);
echo "$Was ($iBelegteSchichtenCount/$iAlleSchichtenCount) <!-- Abfrage $HelferLevel, $DienstID -->";
echo "</th>";
echo "</tr>";

View File

@ -75,7 +75,9 @@ if (isset($_GET['ZeitBereich'])) {
function HelferAuswahlButton($db_link, $AliasHelferID)
{
echo '<b>Helfer w&auml;hlen:<b> <form style="display:inline-block;" method=post><select style="height:33px;width:350px;" name="AliasHelferID" id="AliasHelferID" onchange="submit()">';
echo '<b>Helfer w&auml;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']) {
@ -88,6 +90,10 @@ function HelferAuswahlButton($db_link, $AliasHelferID)
}
function AlleSchichtenCheckPOST($db_link,$ZielHelferID,$AdminStatus,$AdminID) {
if (isset($_GET['helfer-level-anzeige'])) {
$_SESSION["HelferLevelAnzeige"] = $_GET['helfer-level-anzeige'];
}
// Wenn es ein Admin ist ZielHelferID AliasHelferID, sonst HelferID
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
// Neu Schicht fuer Helfer Eintragen
@ -116,6 +122,10 @@ function AlleSchichtenCheckPOST($db_link,$ZielHelferID,$AdminStatus,$AdminID) {
exit;
}
}
// jeder soll sich alle HelferLevel anzeigen lassen koennen
if (isset($_POST['helfer-level-anzeige'])) {
$_SESSION["HelferLevelAnzeige"] = $_POST['helfer-level-anzeige'];
}
if (isset($_POST['minusschicht'])) {
// Mich aus Schicht entfernen
@ -138,8 +148,26 @@ function AlleSchichtenCheckPOST($db_link,$ZielHelferID,$AdminStatus,$AdminID) {
}
// Wenn es ein Admin wird ZielHelferID AliasHelferID, sonst HelferID
if ($AdminStatus == 1 && isset($_POST['AliasHelferID'])){
$_SESSION["AliasHelferID"] = $_POST['AliasHelferID'];
$_SESSION["AliasHelferID"] = $AliasHelferID = $_POST['AliasHelferID'];
$db_erg = Helferdaten($db_link, $AliasHelferID);
while ($zeile = mysqli_fetch_array($db_erg, MYSQLI_ASSOC)) {
$AliasHelferName = $zeile['Name'];
}
$_SESSION["AliasHelferName"] = $AliasHelferName;
}
//$db_link->close();
header("Location: " . $_SERVER['PHP_SELF']);
}
}
function HelferLevelAuswahl($db_link,$HelferLevelAnzeige){
echo '<select style="width:200px" name="helfer-level-anzeige" onchange="submit()">';
$alleHelferLevel = alleHelferLevel($db_link);
foreach ($alleHelferLevel as $HelferLevelIteration => $HelferLevelBeschreibung) {
$selected = ($HelferLevelIteration == $HelferLevelAnzeige) ? "selected" : "" ;
echo "<option value='$HelferLevelIteration' $selected>$HelferLevelBeschreibung</option>";
}
echo '</select>';
return;
}

View File

@ -101,6 +101,8 @@ $HelferEmail = $_SESSION["HelferEmail"];
$AdminID = isset($_SESSION["AdminID"]) ? $_SESSION["AdminID"] : -1;
//TODO vereinheitlichen. index.php verwendet HelferIsAdmin
$HelferIsAdmin = $AdminStatus = $_SESSION["AdminStatus"];
$AliasHelferID = $_SESSION["AliasHelferID"] ?? $HelferID ;
$AliasHelferName = $_SESSION["AliasHelferName"] ?? $HelferName ;
$HelferLevel = $_SESSION["HelferLevel"];
?>