From 9443e76118559a85f96857914a0d1a2226af103b Mon Sep 17 00:00:00 2001 From: root Date: Mon, 2 Jun 2025 23:14:03 +0200 Subject: [PATCH] helfer liste export fuer arme --- html/AdminHelferUebersicht.php | 40 +++++++++++++++++++++++++--------- html/AlleSchichten.php | 12 +++++----- 2 files changed, 35 insertions(+), 17 deletions(-) diff --git a/html/AdminHelferUebersicht.php b/html/AdminHelferUebersicht.php index 6f32652..44dabcc 100644 --- a/html/AdminHelferUebersicht.php +++ b/html/AdminHelferUebersicht.php @@ -11,6 +11,16 @@ if ($AdminStatus != 1) { echo ''; exit; } +if (isset($_GET['einfachHelfer'])) { + // Das in der URL zu setzen laesst das Formular weg und erlaubt glatte + // Zeilen aus der Tabelle zu kopieren, um die Helfer zB in Pretix zu importieren + // TODO: Helfer-Export als csv oder xls und entsprechend auch Dienstelisten als csv + $einfachHelfer = $_GET['einfachHelfer']; + $csvTrenner='|'; +} else { +$einfachHelfer = 0; +$csvTrenner=''; +} ?> @@ -74,10 +84,11 @@ echo "

";
"; - echo ""; + echo "$HelferUeberschrift "; + echo ""; + echo ""; echo ""; + echo ""; $db_erg = AlleHelferSchichtenUebersicht($db_link, $HelferLevelIteration); $dauer = 0; $i = 0; @@ -100,22 +111,31 @@ foreach ($alleHelferLevel as $HelferLevelIteration => $HelferLevelBeschreibung) $EinzelDienstStundenZeile = ""; // Tabellenzeile mit EinzelDienstStunden $HelferUeberschrift = ""; $OldHelferHandy=""; + $OldHelferEmail=""; - echo ""; + echo ""; while ($zeile = mysqli_fetch_array($db_erg, MYSQLI_ASSOC)) { - $HelferName = $zeile["Name"]; + $HelferName = $zeile["Name"] ?: "-"; $HelferLevel = $zeile["HelferLevel"]; $AliasHelferID = $zeile["AliasHelferID"]; - $HelferHandy = $zeile["Handy"]; + $HelferHandy = $zeile["Handy"] ?: "-"; + $HelferEmail = $zeile["Email"] ?: "-"; if ($AliasHelferID != $OldAliasHelferID) { if ($EinzelDienstStundenZeile != "") { - outputHelperInformation($HelferUeberschrift, $OldAliasHelferID, $dauer, $EinzelDienstStundenZeile,$OldHelferHandy); + outputHelperInformation($HelferUeberschrift, $OldAliasHelferID, $dauer, $EinzelDienstStundenZeile,$OldHelferHandy,$OldHelferEmail,$csvTrenner); } $dauer = 0; $EinzelDienstStundenZeile = ""; - $HelferUeberschrift = "
$dauer Stunden$HelferHandy $dauer Stunden $csvTrenner $HelferHandy$csvTrenner$HelferEmail$csvTrenner
"; echo "
\n"; echo " "; @@ -92,7 +103,7 @@ function outputHelperInformation($HelferUeberschrift, $OldAliasHelferID, $dauer, $alleHelferLevel = alleHelferLevel($db_link); asort($alleHelferLevel); // sort, jetzt sind dauerhelfer lvl1 oben, lvl2 danach foreach ($alleHelferLevel as $HelferLevelIteration => $HelferLevelBeschreibung) { - echo "
$HelferLevelBeschreibung (Lvl: $HelferLevelIteration)
$HelferLevelBeschreibung (Lvl: $HelferLevelIteration)
AccountdatenSchichten anzeigenHandySchichten ändern
AccountdatenSchichten anzeigenHandyEmailSchichten ändern
 $HelferName
"; + $HelferUeberschrift = "
 $HelferName
"; + if($einfachHelfer){ + $HelferUeberschrift = "
$HelferName $csvTrenner"; + } $OldHelferHandy=$HelferHandy; + $OldHelferEmail=$HelferEmail; $OldHelferName = $HelferName; $OldAliasHelferID = $AliasHelferID; $i += 1; @@ -126,7 +146,7 @@ foreach ($alleHelferLevel as $HelferLevelIteration => $HelferLevelBeschreibung) $dauer = $dauer + (int)$zeile["Dauer"]; } if ($EinzelDienstStundenZeile != "") { - outputHelperInformation($HelferUeberschrift, $OldAliasHelferID, $dauer, $EinzelDienstStundenZeile,$HelferHandy); + outputHelperInformation($HelferUeberschrift, $OldAliasHelferID, $dauer, $EinzelDienstStundenZeile,$HelferHandy,$HelferEmail,$csvTrenner); } } echo "
"; diff --git a/html/AlleSchichten.php b/html/AlleSchichten.php index bbce021..40d0857 100644 --- a/html/AlleSchichten.php +++ b/html/AlleSchichten.php @@ -36,15 +36,13 @@ if (isset($_POST['CloseInfo'])) { } // wird nie gesetzt //if (isset($_POST['InfoMeineSchichtID'])) { - function SchichtInfo($SchichtID, &$Was, &$Wo, &$Dauer, &$Leiter, &$LeiterHandy, &$LeiterEmail, &$Info) +function SchichtInfo($SchichtID, &$Was, &$Wo, &$Dauer, &$Leiter, &$LeiterHandy, &$LeiterEmail, &$Info) { - $db_link = ConnectDB(); - // $InfoMeineSchichtID = $_POST['InfoMeineSchichtID']; - - $zeile = DetailSchicht($db_link, $SchichtID); + $db_link = ConnectDB(); + $zeile = DetailSchicht($db_link, $SchichtID); if(!isset($zeile['Was'])){ - error_log("Zeile not set in Schichtinfo"); - error_log("called with: SchichtID $SchichtID $Was, $Wo, $Dauer, $Leiter, $LeiterHandy etc"); + //error_log("Zeile not set in Schichtinfo"); + //error_log("called with: SchichtID $SchichtID $Was, $Wo, $Dauer, $Leiter, $LeiterHandy etc"); // Das ist vermutlich kein Fehler mehr, wenn wir den selben Account mehrfach auf die selbe Schicht lassen für Familien etc } $Was = $zeile['Was'];