diff --git a/html/.gitignore b/html/.gitignore new file mode 100644 index 0000000..2059e7f --- /dev/null +++ b/html/.gitignore @@ -0,0 +1,2 @@ +scheduler +scheduler-6.0.5 diff --git a/html/Admin4-ori.php b/html/Admin4-ori.php new file mode 100644 index 0000000..9551c33 --- /dev/null +++ b/html/Admin4-ori.php @@ -0,0 +1,117 @@ +'; + exit; +} +?> + + + Admin Stochercon + + + + + + + +"; +if(isset($_SESSION["AliasHelferID"])) +{ + $AliasHelferID = $_SESSION["AliasHelferID"]; +} + +//echo "AliasHelfer=$AliasHelferID
"; + +if(isset($_POST["AliasHelfer"])) +{ + $AliasHelferID = $_POST["AliasHelfer"]; + //echo "post
"; +} + +if($AliasHelferID!=0) +{ + $_SESSION["AliasHelferID"]=$AliasHelferID; +} +//echo "AliasHelfer=$AliasHelferID
"; + +$db_erg = Helferdaten($db_link,$HelferID); +while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) +{ + $HelferName=$zeile['Name']; + $HelferIsAdmin=$zeile['Admin']; +} + +?> + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  Admin Stochercon 2023 +
Helfer ändern:
+
Helferdaten ändern
Schichten Anzeigen/Löschen
Schichten Hinzufügen
Weiters
+ Einladungs-Links erstellen/versenden +
+ Ausdrucke +
Dienste und Schichten
+ + + diff --git a/html/Admin4.php b/html/Admin4.php new file mode 100644 index 0000000..15bc873 --- /dev/null +++ b/html/Admin4.php @@ -0,0 +1,141 @@ +'; + exit; +} +?> + + + + Admin Stochercon + + + + + + + + +"; +if(isset($_SESSION["AliasHelferID"])) +{ + $AliasHelferID = $_SESSION["AliasHelferID"]; +} + +//echo "AliasHelfer=$AliasHelferID
"; + +if(isset($_POST["AliasHelfer"])) +{ + $AliasHelferID = $_POST["AliasHelfer"]; + //echo "post
"; +} + +if($AliasHelferID!=0) +{ + $_SESSION["AliasHelferID"]=$AliasHelferID; +} +//echo "AliasHelfer=$AliasHelferID
"; + +$db_erg = Helferdaten($db_link,$HelferID); +while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) +{ + $HelferName=$zeile['Name']; + $HelferIsAdmin=$zeile['Admin']; +} + +?> + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  Admin HelferDB +
+ Dienste und Schichten verwalten +
+ Seite zur Helfer selbst-Registrierung +
+ Helfer per Link einladen +
+ Helferübersicht +
Helfer als Admin ändern:
+
+ +
Helferdaten ändern
Schichten Anzeigen/Löschen
Schichten Hinzufügen
Admin Kalenderansicht
Ausdrucke
Ausdrucke mit Abreißzetteln
Ausdruck Schichten
+

Dienst: z.B. Badgekontrolle Eingang A. Schicht: ein Dienst zu einer bestimmten Zeit zB 9-12 Uhr +

+ + + diff --git a/html/AdminAlleSchichten4.php b/html/AdminAlleSchichten4.php new file mode 100644 index 0000000..220d6f8 --- /dev/null +++ b/html/AdminAlleSchichten4.php @@ -0,0 +1,501 @@ +'; + exit; +} +?> + + + + Helfer Stochercon Alle Schichten + + + + + + + + + + +
+". $SchichtID . "
"; + + $zeile = DetailSchicht($db_link,$InfoMeineSchichtID); + + $Was = $zeile['Was']; + $Wo = $zeile['Wo']; + $Dauer = $zeile['Dauer']; + $Leiter = $zeile['Name']; + $LeiterHandy = $zeile['Handy']; + $LeiterEmail = $zeile['Email']; + $Info = $zeile['Info']; + +} + + +if(isset($_GET['InfoAlleSchichtID'])) +{ + $InfoAlleSchichtID = $_GET['InfoAlleSchichtID']; + UNSET($InfoMeineSchichtID); + //echo "". $SchichtID . "
"; + + $zeile = DetailSchicht($db_link,$InfoAlleSchichtID); + + $Was = $zeile['Was']; + $Wo = $zeile['Wo']; + $Dauer=$zeile['Dauer']; + $Leiter = $zeile['Name']; + $LeiterHandy = $zeile['Handy']; + $LeiterEmail = $zeile['Email']; + $Info = $zeile['Info']; + + + + // Beteiligte Helfer Holen + $db_erg = BeteiligteHelfer($db_link,$InfoAlleSchichtID); + + + $x=0; + + while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) + { + $MitHelferID[$x] = $zeile['HelferID']; + $MitHelfer[$x] = $zeile['Name']; + $MitHelferHandy[$x]= $zeile['Handy']; + $x++; + } + + +} + +if(isset($_GET['ZeitBereich'])) +{ + $ZeitBereich = $_GET['ZeitBereich']; +} +else +{ + $ZeitBereich = 1; +} + +function HelferAuswahlButton($db_link,$AliasHelferID){ +echo 'Helfer wählen:
'; +} + +if(isset($_POST['AliasHelfer'])) { + $AliasHelferID=$_POST['AliasHelfer']; +}elseif(isset($_SESSION["AliasHelferID"])){ + $AliasHelferID = $_SESSION["AliasHelferID"]; +}else{ + HelferAuswahlButton($db_link,$AliasHelferID); +exit; +} +HelferAuswahlButton($db_link,$AliasHelferID); + +$_SESSION["AliasHelferID"]=$AliasHelferID; +$AdminID = $_SESSION["AdminID"]; + +$db_erg=Helferdaten($db_link,$HelferID); +while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) +{ + $HelferName=$zeile['Name']; +} + +// Helferliste Anzeigen +//////////////////////////////////////////////////////// + +?> + + + + +
+'); + } + else + { + // Fehlermeldungen ausgeben: + echo '
    '; + foreach($messages as $message) + { + echo '
  • '.htmlspecialchars($message).'
  • '; + } + echo '
'; + } + + +} + +if(isset($_POST['minusschicht'])) { +// Mich aus Schicht entfernen + $messages = []; + + $SchichtID = $_POST['minusschicht']; + + if(empty($messages)) + { + // Helfer aus Schicht entfernen + $db_erg = HelferVonSchichtLoeschen_SchichtID($db_link,$AliasHelferID,$SchichtID,$AdminID); + + } + else + { + // Fehlermeldungen ausgeben: + echo '
    '; + foreach($messages as $message) + { + echo '
  • '.htmlspecialchars($message).'
  • '; + } + echo '
'; + } + + + +} + +/// Ausgabe auf Deutsch umstellen +///////////////////////////////////////////////////////////////////////// + + DatenbankAufDeutsch($db_link); + + +// Zusammenfassung Eigener Schichten + $db_erg = SchichtenSummeEinesHelfers($db_link,$AliasHelferID); + $zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC); + + echo '
'; + echo " Dienstplan von $HelferName (Zusammenfassung)
"; + echo $zeile['Anzahl']; + echo " Schichten insgesamt "; + echo $zeile['Dauer']/3600; + echo " Stunden"; + echo '


'; +/// Schichten Auswahl +//////////////////////////////////////////////////////// +$addschicht =$_SESSION["addschicht"]; +$dienstsort =$_SESSION["dienstsort"]; + + + +if(isset($_POST['addschicht']) && $_POST['addschicht']=='1') +{ + $addschicht='1'; + $dienstsort='1'; +} +if(isset($_POST['addschicht']) && $_POST['addschicht']=='2') +{ + $addschicht='2'; + $dienstsort='2'; +} +if(isset($_POST['addschicht']) && $_POST['addschicht']=='0') +{ + $addschicht='0'; +} + +$_SESSION["addschicht"] =$addschicht; +$_SESSION["dienstsort"] =$dienstsort; + +//echo "
Detail=".$addschicht."
"; + +if($addschicht=='0') +{ + echo "

Schichten Hinzufügen geordnet nach"; + echo ""; + echo "

"; +} + +//echo "InfoAlleSchichtID ".$InfoAlleSchichtID; + +if($addschicht!='0') +{ + //$db_erg = AlleSchichten($db_link,$dienstsort); + //$db_erg = AlleSchichtenImZeitbereich($db_link,"2023-05-18 00:00:00","2023-05-19 00:00:00"); + if ($ZeitBereich==1) // Alle + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2000-09-15 00:00:00","2200-05-19 00:00:00",-1); + } + if ($ZeitBereich==2) // Davor + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2000-05-18 00:00:00","2023-09-15 00:00:00",-1); + } + if ($ZeitBereich==3) // Fr + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2023-09-15 00:00:00","2023-09-16 00:00:00",-1); + } + if ($ZeitBereich==4) // Sa + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2023-09-16 00:00:00","2023-09-17 00:00:00",-1); + } + if ($ZeitBereich==5) // So + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2023-09-17 00:00:00","2023-09-18 00:00:00",-1); + } + if ($ZeitBereich==6) // So + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2023-09-17 00:00:00","2023-09-18 00:00:00",-1); + } + if ($ZeitBereich==7) // Danach + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2023-09-18 00:00:00","2223-09-22 00:00:00",-1); + } + // fuer Anzahlanzeige in Ueberschrift + $iAlleSchichtenCount = AlleSchichtenCount($db_link); + $iBelegteSchichtenCount = AlleBelegteSchichtenCount($db_link); + + + //echo "

"; + echo ''; + echo ""; + echo ""; + echo ""; + + /* + if ($dienstsort=='1') + { + echo ""; + } + else + { + echo ""; + } + */ + if ($ZeitBereich==1) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==2) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==3) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==4) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==5) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==6) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==7) + { + echo ""; + } + else + { + echo ""; + } + //echo ""; + //echo ""; + //echo ""; + //echo ""; + //echo ""; + //echo ""; + + echo ""; + echo ""; + + $OldTag = ""; + $OldWas = ""; + # um Zeilen mit von mir belegten Schichten hervorzuheben + $MeineDienste = SchichtIdArrayEinesHelfers($db_link,$AliasHelferID); + //print_r($MeineDienste); + + echo '
". "Alle Schichten der Con (" . $iBelegteSchichtenCount."/".$iAlleSchichtenCount. ")
". "Dienst" . "". "Von" . "". "Alle" . "". "Alle" . "". "Davor" . "". "Davor" . "". "Do" . "". "Do" . "". "Fr" . "". "Fr" . "". "Sa" . "". "Sa" . "". "So" . "". "So" . "". "Danach" . "". "Danach" . "". "Davor" . "". "Do" . "". "Fr" . "". "Sa" . "". "So" . "". "Danach" . "
'; + echo ''; + + while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) + { + + + if ($dienstsort=='1') + { + $Tag = $zeile['Tag']; + + if ($Tag!=$OldTag) + { + echo ""; + $OldTag = $Tag; + } + } + else + { + $Was = $zeile['Was']; + + if ($Was!=$OldWas) + { + echo ""; + /* + echo ""; + echo ""; + echo ""; + echo ""; + */ + echo ""; + $OldWas = $Was; + } + } + $Color="red"; + if ( $zeile['Ist'] > 0 ) + { + $Color="yellow"; + } + if ( $zeile['Ist'] >= $zeile['Soll'] ) + { + $Color="green"; + } + $Von = $zeile['Ab']; + $Bis = $zeile['Bis']; + if ( substr($Von,0,2) == substr($Bis,0,2)) + { + $Bis = substr($Bis,2); + } + $Von = substr($Von,2); + + // Meine Schichten gruen einfaerben + if(in_array($zeile['SchichtID'], $MeineDienste)) { + $rowstyle = ' style="background-color:lightgreen" '; + $regtext = 'Meine!'; + } else { + // dummy-style, um SchichtID unsichtbar im Tag anzuzeigen + $rowstyle = 'style="dummy:'.$zeile['SchichtID'].'"'; + $regtext = ''; + } + + echo ''; + + if ($dienstsort=='1') + { + echo ""; + } + else + { + echo ""; + } + echo ""; + echo ""; + echo ""; + # buttons sind in der selben Zelle + echo ""; + //echo ""; + echo "\n"; + + } + echo "
"; + echo $Tag; + echo "
"; + echo $Was; + echo "". "Von" . "". "Bis" . "". "Ist/Soll" . "". "Add" . "
". $zeile['Was'] . "". $zeile['Tag'] . "". $Von . "". $Bis . "". $zeile['Ist'] . "/"; + echo "". $zeile['Soll'] . "" . "" .""; + echo "" . "   $regtext" ."$regtext
"; + + +} + + + + + + + +mysqli_free_result( $db_erg ); + + +?> + +
+
+ + + diff --git a/html/AdminDienste4.php b/html/AdminDienste4.php new file mode 100644 index 0000000..341abc5 --- /dev/null +++ b/html/AdminDienste4.php @@ -0,0 +1,361 @@ +'; + exit; +} +?> + + + + Admin Stochercon + + + + + + + +
+"; + } + + } + + + + if(isset($_POST['ShowSchicht'])) { + $SchichtID=$_POST['SchichtSearch']; + } + if(isset($_POST['SchichtSearch'])) { + $SchichtID=$_POST['SchichtSearch']; + } + + if(isset($_POST['ShowSchichten'])) { + $DienstID=$_POST['DienstSearch']; + } + + if(isset($_POST['DienstSearch'])) { + $DienstID=$_POST['DienstSearch']; + $SchichtID=0; + } + + + + +// Dienste Anzeigen +//////////////////////////////////////////////////////// + +?> + +
+ + "; +echo "
Dienst"; +echo "
"; +echo "

"; +//echo ""; + +// Aktueller Dienst und dessen Schichten Anzeigen +//////////////////////////////////////////////////////// + +?> + + + + + + + + + + + + + + + + + + + + + + + +
Was
+ +
Wo
+ +
Info
+ +
Leiter
+ + + "; + $db_erg = HelferListe($db_link); + while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) + { + if ($zeile['HelferID']!=$Leiter) + { + echo ""; + + } + else + { + echo ""; + + } + } + echo ""; + ?> +
Gruppe
+ + "; + $db_erg = GetDiensteChilds($db_link,0); + while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) + { + + if ($zeile['DienstID']!=$Gruppe && $DienstID!=$zeile['DienstID']) + { + echo ""; + + } + else + { + echo ""; + + } + } + echo ""; + echo ""; + ?> +
HelferLevel
+ +
+ +

+ +
+ + + + +
+ + "; +echo "
Schicht"; +echo "
"; +echo "

"; +//echo ""; + +?> + + + + + + + + + + + + + + + +
Von
+ +
Bis
+ +
Soll
+ +
+

+ + +
+ + + + + + + +
+ + + diff --git a/html/AdminDiensteUebersicht.php b/html/AdminDiensteUebersicht.php new file mode 100644 index 0000000..2352992 --- /dev/null +++ b/html/AdminDiensteUebersicht.php @@ -0,0 +1,112 @@ +'; + exit; +} +?> + + + + Admin Stochercon + + + + + + + +
+ + + + +"; + $i+=1; +} + +mysqli_free_result( $db_erg ); + + +//$_SESSION["DienstID"] = $DienstID; +//$_SESSION["SchichtID"] = $SchichtID; + + +?> + + + + + + diff --git a/html/AdminMeineSchichten4.php b/html/AdminMeineSchichten4.php new file mode 100644 index 0000000..0cb36fe --- /dev/null +++ b/html/AdminMeineSchichten4.php @@ -0,0 +1,288 @@ +'; + exit; +} +?> + + + + Admin Stochercon - Schichten editieren + + + + + + + +

Admin: Schichten editieren

+
+". $SchichtID . "
"; + + $zeile = DetailSchicht($db_link,$InfoMeineSchichtID); + + $Was = $zeile['Was']; + $Wo = $zeile['Wo']; + $Dauer = $zeile['Dauer']; + $Leiter = $zeile['Name']; + $LeiterHandy = $zeile['Handy']; + $LeiterEmail = $zeile['Email']; + $Info = $zeile['Info']; + +} + + +if(isset($_GET['InfoAlleSchichtID'])) +{ + $InfoAlleSchichtID = $_GET['InfoAlleSchichtID']; + UNSET($InfoMeineSchichtID); + //echo "". $SchichtID . "
"; + + $zeile = DetailSchicht($db_link,$InfoAlleSchichtID); + + $Was = $zeile['Was']; + $Wo = $zeile['Wo']; + $Dauer=$zeile['Dauer']; + $Leiter = $zeile['Name']; + $LeiterHandy = $zeile['Handy']; + $LeiterEmail = $zeile['Email']; + $Info = $zeile['Info']; + + + + // Beteiligte Helfer Holen + $db_erg = BeteiligteHelfer($db_link,$InfoAlleSchichtID); + + + $x=0; + + while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) + { + $MitHelferID[$x] = $zeile['HelferID']; + $MitHelfer[$x] = $zeile['Name']; + $MitHelferHandy[$x]= $zeile['Handy']; + $x++; + } + + +} + +function HelferAuswahlButton($db_link,$AliasHelferID){ +echo 'Helfer wählen:
'; +} + + + +if(isset($_POST['AliasHelfer'])) { + $AliasHelferID=$_POST['AliasHelfer']; + echo "AliasHelfer: $AliasHelferID
"; +}elseif(isset($_SESSION["AliasHelferID"])){ + $AliasHelferID = $_SESSION["AliasHelferID"]; +}else{ + HelferAuswahlButton($db_link,$AliasHelferID); +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']; +} + +/// Schicht Löschen +//////////////////////////////////////////////////////// + + if(isset($_POST['Del'])) { + + $messages = []; + + $EinzelSchichtID = $_POST['Del']; + + + // Eingaben überprüfen: + + //if(!preg_match('/^[a-zA-Z]+[a-zA-Z0-9._]+$/', $HelferName)) { + // $messages[] = 'Bitte prüfen Sie die eingegebenen Namen'; + //} + + + + if(empty($messages)) { + + $db_erg = HelferVonSchichtLoeschen($db_link,$AliasHelferID,$EinzelSchichtID,$HelferID); + + } else { + // Fehlermeldungen ausgeben: + echo '
    '; + foreach($messages as $message) { + echo '
  • '.htmlspecialchars($message).'
  • '; + } + echo '
'; + } + +} + + + +// Helferliste Anzeigen +//////////////////////////////////////////////////////// + +?> + + + +
+'); + } + else + { + // Fehlermeldungen ausgeben: + echo '
    '; + foreach($messages as $message) + { + echo '
  • '.htmlspecialchars($message).'
  • '; + } + echo '
'; + } + + +} + +/// Ausgabe auf Deutsch umstellen +///////////////////////////////////////////////////////////////////////// + + DatenbankAufDeutsch($db_link); + +/// Alle Schichten Des Helfers Anzeigen +//////////////////////////////////////////////////////// + + +$db_erg = AlleSchichtenEinesHelfers($db_link,$AliasHelferID); + +if ( ! $db_erg ) +{ + echo "AlleSchichten des Helfes ungültige Abfrage"; + die('Ungültige Abfrage: ' . mysqli_error()); +} + + $iSQLCount = mysqli_num_rows($db_erg); + //$iSQLCount = 3; + +echo '
IDDienstWoLeiterGruppeStunden(Soll/Haben)HelferlevelInfo
$DienstID$Was$Wo$Leiter$GruppeTODO:Stunden$HelferLevel"; + // display:none ist eigentlich im css definiert, wird aber von irgend etwas ueberschrieben + echo " + + +
"; + echo "$Info"; + echo "
'; + + echo ""; + echo ""; + echo ""; + //echo ""; + //echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + + + +while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) +{ + + //echo ''; + echo ''; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + +} +echo "
". "Schichten von $HelferName (".$iSQLCount." Schichten)
". "Von" . "". "Bis" . "". "Del" . "
". $zeile['Was'] . "". $zeile['Ab'] . "". $zeile['Bis'] . "". "

" . "
"; + +echo "

"; + +$iAlleSchichtenCount = AlleSchichtenCount($db_link); +$iBelegteSchichtenCount = AlleBelegteSchichtenCount($db_link); + +echo ''; + echo ""; + echo ""; + echo ""; +echo "
". "Alle Schichten der Con (".$iBelegteSchichtenCount."/".$iAlleSchichtenCount.")
"; + + +mysqli_free_result( $db_erg ); + + +?> + + +
+ + + diff --git a/html/AdminUserdaten4.php b/html/AdminUserdaten4.php new file mode 100644 index 0000000..a459670 --- /dev/null +++ b/html/AdminUserdaten4.php @@ -0,0 +1,188 @@ +'; + exit; + + + +} + +function HelferAuswahlButton($db_link,$AliasHelferID){ +echo 'Helfer wählen:
'; +} + +if(isset($_POST['AliasHelfer'])) { + $AliasHelferID=$_POST['AliasHelfer']; +}elseif(isset($_SESSION["AliasHelferID"])){ + $AliasHelferID = $_SESSION["AliasHelferID"]; +}else{ + HelferAuswahlButton($db_link,$AliasHelferID); + exit; +} +HelferAuswahlButton($db_link,$AliasHelferID); + +$_SESSION["AliasHelferID"]=$AliasHelferID; +$AdminID = $_SESSION["AdminID"]; + +echo "Admin=$AdminID
"; +echo "Helfer=$HelferID
"; +echo "Alias=$AliasHelferID
"; + + +?> + + + + Stochercon Helferdaten ändern + + + + + + + +"; + } + else + { + $HelferIsAdmin=0; + } + if(empty($messages)) { + // Helferdaten Ändern + HelferdatenAendern($db_link,$HelferName,$HelferEmail,$HelferHandy,$HelferNewPasswort,$AliasHelferID,$HelferIsAdmin,$HelferID); + + } else { + // Fehlermeldungen ausgeben: + echo '
    '; + foreach($messages as $message) { + echo '
  • '.htmlspecialchars($message).'
  • '; + } + echo '
'; + } + } + + +/////////////////////////////////////////////////////////////// +// Helfer Loeschen +/////////////////////////////////////////////////////////////// + +if(isset($_POST['del'])) +{ + HelferLoeschen($db_link,$AliasHelferID,$AdminID); +} + +//////////////////////////////////////////////////////////////// +// Helferdate holen +/////////////////////////////////////////////////////////////// + +$db_erg = Helferdaten($db_link,$AliasHelferID); + + +while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) +{ + $HelferName = $zeile['Name']; + $HelferEmail = $zeile['Email']; + $HelferHandy = $zeile['Handy']; + $HelferIsAdmin = $zeile['Admin']; + +} + +?> + + + + + + + + + + + + + + + + + + + + + + + + + +
Helferdaten
Name
+ +
Email
+ +
Handy
+ +
Admin Passwort
+ +
Neues Helfer Passwort
+ +
+ + + + + + + +
>ist Admin
+

+

+ + + + diff --git a/html/AlleSchichten4-boot.php b/html/AlleSchichten4-boot.php new file mode 100644 index 0000000..027ca44 --- /dev/null +++ b/html/AlleSchichten4-boot.php @@ -0,0 +1,467 @@ + + + Helfer Stochercon Alle Schichten + + + + + + + + + + +
+". $SchichtID . "
"; + + $zeile = DetailSchicht($db_link,$InfoMeineSchichtID); + + $Was = $zeile['Was']; + $Wo = $zeile['Wo']; + $Dauer = $zeile['Dauer']; + $Leiter = $zeile['Name']; + $LeiterHandy = $zeile['Handy']; + $LeiterEmail = $zeile['Email']; + $Info = $zeile['Info']; + +} + + +if(isset($_GET['InfoAlleSchichtID'])) +{ + $InfoAlleSchichtID = $_GET['InfoAlleSchichtID']; + UNSET($InfoMeineSchichtID); + //echo "". $SchichtID . "
"; + + $zeile = DetailSchicht($db_link,$InfoAlleSchichtID); + + $Was = $zeile['Was']; + $Wo = $zeile['Wo']; + $Dauer=$zeile['Dauer']; + $Leiter = $zeile['Name']; + $LeiterHandy = $zeile['Handy']; + $LeiterEmail = $zeile['Email']; + $Info = $zeile['Info']; + + + + // Beteiligte Helfer Holen + $db_erg = BeteiligteHelfer($db_link,$InfoAlleSchichtID); + + + $x=0; + + while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) + { + $MitHelferID[$x] = $zeile['HelferID']; + $MitHelfer[$x] = $zeile['Name']; + $MitHelferHandy[$x]= $zeile['Handy']; + $x++; + } + + +} + +if(isset($_GET['ZeitBereich'])) +{ + $ZeitBereich = $_GET['ZeitBereich']; +} +else +{ + $ZeitBereich = 1; +} + + + +// Helferliste Anzeigen +//////////////////////////////////////////////////////// + +?> + + +
+'); + } + else + { + // Fehlermeldungen ausgeben: + echo '
    '; + foreach($messages as $message) + { + echo '
  • '.htmlspecialchars($message).'
  • '; + } + echo '
'; + } + + +} + +if(isset($_POST['minusschicht'])) { +// Mich aus Schicht entfernen + $messages = []; + + $SchichtID = $_POST['minusschicht']; + + if(empty($messages)) + { + // Helfer aus Schicht entfernen + $db_erg = HelferVonSchichtLoeschen_SchichtID($db_link,$HelferID,$SchichtID); + + } + else + { + // Fehlermeldungen ausgeben: + echo '
    '; + foreach($messages as $message) + { + echo '
  • '.htmlspecialchars($message).'
  • '; + } + echo '
'; + } + + + +} + +/// Ausgabe auf Deutsch umstellen +///////////////////////////////////////////////////////////////////////// + + DatenbankAufDeutsch($db_link); + + +// Zusammenfassung Eigener Schichten + $db_erg = SchichtenSummeEinesHelfers($db_link,$HelferID); + $zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC); + + echo '
'; + echo " Mein Dienstplan (Zusammenfassung)
"; + echo $zeile['Anzahl']; + echo " Schichten insgesamt "; + echo $zeile['Dauer']/3600; + echo " Stunden"; + echo '


'; +/// Schichten Auswahl +//////////////////////////////////////////////////////// +$addschicht =$_SESSION["addschicht"]; +$dienstsort =$_SESSION["dienstsort"]; + + + +if(isset($_POST['addschicht']) && $_POST['addschicht']=='1') +{ + $addschicht='1'; + $dienstsort='1'; +} +if(isset($_POST['addschicht']) && $_POST['addschicht']=='2') +{ + $addschicht='2'; + $dienstsort='2'; +} +if(isset($_POST['addschicht']) && $_POST['addschicht']=='0') +{ + $addschicht='0'; +} + +$_SESSION["addschicht"] =$addschicht; +$_SESSION["dienstsort"] =$dienstsort; + +//echo "
Detail=".$addschicht."
"; + +if($addschicht=='0') +{ + echo "

Schichten Hinzufügen geordnet nach"; + echo ""; + echo "

"; +} + +//echo "InfoAlleSchichtID ".$InfoAlleSchichtID; + +if($addschicht!='0') +{ + //$db_erg = AlleSchichten($db_link,$dienstsort); + //$db_erg = AlleSchichtenImZeitbereich($db_link,"2023-05-18 00:00:00","2023-05-19 00:00:00",$HelferLevel); + if ($ZeitBereich==1) // Alle + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2000-05-18 00:00:00","2200-05-19 00:00:00",$HelferLevel); + } + if ($ZeitBereich==2) // Davor + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2000-05-18 00:00:00","2023-09-15 00:00:00",$HelferLevel); + } + if ($ZeitBereich==3) // Do + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2023-09-15 00:00:00","2023-09-16 00:00:00",$HelferLevel); + } + if ($ZeitBereich==4) // Fr + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2023-09-16 00:00:00","2023-09-17 00:00:00",$HelferLevel); + } + if ($ZeitBereich==5) // Sa + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2023-09-17 00:00:00","2023-09-18 00:00:00",$HelferLevel); + } + if ($ZeitBereich==6) // So + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2023-09-17 00:00:00","2023-09-18 00:00:00",$HelferLevel); + } + if ($ZeitBereich==7) // Danach + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2023-09-18 00:00:00","2223-05-22 00:00:00",$HelferLevel); + } + // fuer Anzahlanzeige in Ueberschrift + $iAlleSchichtenCount = AlleSchichtenCount($db_link); + $iBelegteSchichtenCount = AlleBelegteSchichtenCount($db_link); + + + //echo "

"; + echo ''; + echo ""; + echo ""; + echo ""; + + /* + if ($dienstsort=='1') + { + echo ""; + } + else + { + echo ""; + } + */ + if ($ZeitBereich==1) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==2) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==3) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==4) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==5) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==6) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==7) + { + echo ""; + } + else + { + echo ""; + } + //echo ""; + //echo ""; + //echo ""; + //echo ""; + //echo ""; + //echo ""; + + echo ""; + echo ""; + + $OldTag = ""; + $OldWas = ""; + # um Zeilen mit von mir belegten Schichten hervorzuheben + $MeineDienste = SchichtIdArrayEinesHelfers($db_link,$HelferID); + //print_r($MeineDienste); + + echo '
". "Alle Schichten der Con (" . $iBelegteSchichtenCount."/".$iAlleSchichtenCount. ")
". "Dienst" . "". "Von" . "". "Alle" . "". "Alle" . "". "Davor" . "". "Davor" . "". "Do" . "". "Do" . "". "Fr" . "". "Fr" . "". "Sa" . "". "Sa" . "". "So" . "". "So" . "". "Danach" . "". "Danach" . "". "Davor" . "". "Do" . "". "Fr" . "". "Sa" . "". "So" . "". "Danach" . "
'; + echo ''; + while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) + { + + + if ($dienstsort=='1') + { + $Tag = $zeile['Tag']; + + if ($Tag!=$OldTag) + { + echo ""; + $OldTag = $Tag; + } + } + else + { + $Was = $zeile['Was']; + + if ($Was!=$OldWas) + { + echo ""; + echo ""; + /* + echo ""; + echo ""; + echo ""; + echo ""; + */ + echo ""; + echo ""; + $OldWas = $Was; + } + } + $Color="red"; + if ( $zeile['Ist'] > 0 ) + { + $Color="yellow"; + } + if ( $zeile['Ist'] >= $zeile['Soll'] ) + { + $Color="green"; + } + $Von = $zeile['Ab']; + $Bis = $zeile['Bis']; + if ( substr($Von,0,2) == substr($Bis,0,2)) + { + $Bis = substr($Bis,2); + } + $Von = substr($Von,2); + + // Meine Schichten gruen einfaerben + if(in_array($zeile['SchichtID'], $MeineDienste)) { + $rowstyle = ' style="background-color:lightgreen" '; + $regtext = 'Meine!'; + } else { + // dummy-style, um SchichtID unsichtbar im Tag anzuzeigen + $rowstyle = 'style="SchichtID:'.$zeile['SchichtID'].';helferlvl:'.$HelferLevel.'"'; + $regtext = ''; + } + + echo ''; + + if ($dienstsort=='1') + { + echo ""; + } + else + { + echo ""; + } + echo ""; + echo ""; + echo ""; + # buttons sind in der selben Zelle + echo ""; + //echo ""; + echo "\n"; + + } + echo "
"; + echo $Tag; + echo "
"; + echo $Was; + echo "". "Von" . "". "Bis" . "". "Ist/Soll" . "". "Add" . "
". $zeile['Was'] . "". $zeile['Tag'] . "". $Von . "". $Bis . "". $zeile['Ist'] . "/"; + echo "". $zeile['Soll'] . "" . "

" .""; + echo "" . "   $regtext

" ."
$regtext
"; + + +} + + + + + + + +mysqli_free_result( $db_erg ); + + +?> + +
+
+ + + diff --git a/html/AlleSchichten4.php b/html/AlleSchichten4.php new file mode 100644 index 0000000..64b3cf8 --- /dev/null +++ b/html/AlleSchichten4.php @@ -0,0 +1,464 @@ + + + Helfer Stochercon Alle Schichten + + + + + + + + + + +
+". $SchichtID . "
"; + + $zeile = DetailSchicht($db_link,$InfoMeineSchichtID); + + $Was = $zeile['Was']; + $Wo = $zeile['Wo']; + $Dauer = $zeile['Dauer']; + $Leiter = $zeile['Name']; + $LeiterHandy = $zeile['Handy']; + $LeiterEmail = $zeile['Email']; + $Info = $zeile['Info']; + +} + + +if(isset($_GET['InfoAlleSchichtID'])) +{ + $InfoAlleSchichtID = $_GET['InfoAlleSchichtID']; + UNSET($InfoMeineSchichtID); + //echo "". $SchichtID . "
"; + + $zeile = DetailSchicht($db_link,$InfoAlleSchichtID); + + $Was = $zeile['Was']; + $Wo = $zeile['Wo']; + $Dauer=$zeile['Dauer']; + $Leiter = $zeile['Name']; + $LeiterHandy = $zeile['Handy']; + $LeiterEmail = $zeile['Email']; + $Info = $zeile['Info']; + + + + // Beteiligte Helfer Holen + $db_erg = BeteiligteHelfer($db_link,$InfoAlleSchichtID); + + + $x=0; + + while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) + { + $MitHelferID[$x] = $zeile['HelferID']; + $MitHelfer[$x] = $zeile['Name']; + $MitHelferHandy[$x]= $zeile['Handy']; + $x++; + } + + +} + +if(isset($_GET['ZeitBereich'])) +{ + $ZeitBereich = $_GET['ZeitBereich']; +} +else +{ + $ZeitBereich = 1; +} + + + +// Helferliste Anzeigen +//////////////////////////////////////////////////////// + +?> + + +
+'); + } + else + { + // Fehlermeldungen ausgeben: + echo '
    '; + foreach($messages as $message) + { + echo '
  • '.htmlspecialchars($message).'
  • '; + } + echo '
'; + } + + +} + +if(isset($_POST['minusschicht'])) { +// Mich aus Schicht entfernen + $messages = []; + + $SchichtID = $_POST['minusschicht']; + + if(empty($messages)) + { + // Helfer aus Schicht entfernen + $db_erg = HelferVonSchichtLoeschen_SchichtID($db_link,$HelferID,$SchichtID); + + } + else + { + // Fehlermeldungen ausgeben: + echo '
    '; + foreach($messages as $message) + { + echo '
  • '.htmlspecialchars($message).'
  • '; + } + echo '
'; + } + + + +} + +/// Ausgabe auf Deutsch umstellen +///////////////////////////////////////////////////////////////////////// + + DatenbankAufDeutsch($db_link); + + +// Zusammenfassung Eigener Schichten + $db_erg = SchichtenSummeEinesHelfers($db_link,$HelferID); + $zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC); + + echo '
'; + echo " Mein Dienstplan (Zusammenfassung)
"; + echo $zeile['Anzahl']; + echo " Schichten insgesamt "; + echo $zeile['Dauer']/3600; + echo " Stunden"; + echo '


'; +/// Schichten Auswahl +//////////////////////////////////////////////////////// +$addschicht =$_SESSION["addschicht"]; +$dienstsort =$_SESSION["dienstsort"]; + + + +if(isset($_POST['addschicht']) && $_POST['addschicht']=='1') +{ + $addschicht='1'; + $dienstsort='1'; +} +if(isset($_POST['addschicht']) && $_POST['addschicht']=='2') +{ + $addschicht='2'; + $dienstsort='2'; +} +if(isset($_POST['addschicht']) && $_POST['addschicht']=='0') +{ + $addschicht='0'; +} + +$_SESSION["addschicht"] =$addschicht; +$_SESSION["dienstsort"] =$dienstsort; + +//echo "
Detail=".$addschicht."
"; + +if($addschicht=='0') +{ + echo "

Schichten Hinzufügen geordnet nach"; + echo ""; + echo "

"; +} + +//echo "InfoAlleSchichtID ".$InfoAlleSchichtID; + +if($addschicht!='0') +{ + //$db_erg = AlleSchichten($db_link,$dienstsort); + //$db_erg = AlleSchichtenImZeitbereich($db_link,"2023-05-18 00:00:00","2023-05-19 00:00:00",$HelferLevel); + if ($ZeitBereich==1) // Alle + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2000-05-18 00:00:00","2200-05-19 00:00:00",$HelferLevel); + } + if ($ZeitBereich==2) // Davor + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2000-05-18 00:00:00","2023-09-15 00:00:00",$HelferLevel); + } + if ($ZeitBereich==3) // Do + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2023-09-15 00:00:00","2023-09-16 00:00:00",$HelferLevel); + } + if ($ZeitBereich==4) // Fr + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2023-09-16 00:00:00","2023-09-17 00:00:00",$HelferLevel); + } + if ($ZeitBereich==5) // Sa + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2023-09-17 00:00:00","2023-09-18 00:00:00",$HelferLevel); + } + if ($ZeitBereich==6) // So + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2023-09-17 00:00:00","2023-09-18 00:00:00",$HelferLevel); + } + if ($ZeitBereich==7) // Danach + { + $db_erg = AlleSchichtenImZeitbereich($db_link,"2023-09-18 00:00:00","2223-05-22 00:00:00",$HelferLevel); + } + // fuer Anzahlanzeige in Ueberschrift + $iAlleSchichtenCount = AlleSchichtenCount($db_link); + $iBelegteSchichtenCount = AlleBelegteSchichtenCount($db_link); + echo ""; + + //echo "

"; + echo ''; + echo ""; + echo ""; + + /* + if ($dienstsort=='1') + { + echo ""; + } + else + { + echo ""; + } + */ + echo ""; // Zeitbereich tr + if ($ZeitBereich==1) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==2) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==3) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==4) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==5) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==6) + { + echo ""; + } + else + { + echo ""; + } + if ($ZeitBereich==7) + { + echo ""; + } + else + { + echo ""; + } + //echo ""; + //echo ""; + //echo ""; + //echo ""; + //echo ""; + //echo ""; + + echo ""; //Zeitbereich tr + + $OldTag = ""; + $OldWas = ""; + # um Zeilen mit von mir belegten Schichten hervorzuheben + $MeineDienste = SchichtIdArrayEinesHelfers($db_link,$HelferID); + //print_r($MeineDienste); + + echo '
". "Alle Schichten der Con (" . $iBelegteSchichtenCount."/".$iAlleSchichtenCount. ")
". "Dienst" . "". "Von" . "
". "Alle" . "". "Alle" . "". "Davor" . "". "Davor" . "". "Do" . "". "Do" . "". "Fr" . "". "Fr" . "". "Sa" . "". "Sa" . "". "So" . "". "So" . "". "Danach" . "". "Danach" . "". "Davor" . "". "Do" . "". "Fr" . "". "Sa" . "". "So" . "". "Danach" . "
'; + echo ''; + while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) + { + + + if ($dienstsort=='1') + { + $Tag = $zeile['Tag']; + + if ($Tag!=$OldTag) + { + echo ""; + $OldTag = $Tag; + } + } + else + { + $Was = $zeile['Was']; + + if ($Was!=$OldWas) + { + echo ""; + /* + echo ""; + echo ""; + echo ""; + echo ""; + */ + echo ""; + $OldWas = $Was; + } + } + $Color="red"; + if ( $zeile['Ist'] > 0 ) + { + $Color="yellow"; + } + if ( $zeile['Ist'] >= $zeile['Soll'] ) + { + $Color="green"; + } + $Von = $zeile['Ab']; + $Bis = $zeile['Bis']; + if ( substr($Von,0,2) == substr($Bis,0,2)) + { + $Bis = substr($Bis,2); + } + $Von = substr($Von,2); + + // Meine Schichten gruen einfaerben + if(in_array($zeile['SchichtID'], $MeineDienste)) { + $rowstyle = ' style="background-color:lightgreen" '; + $regtext = 'Meine!'; + } else { + // dummy-style, um SchichtID unsichtbar im Tag anzuzeigen + $rowstyle = 'dbinfo="SchichtID:'.$zeile['SchichtID'].';helferlvl:'.$HelferLevel.'" '; + $regtext = ''; + } + + echo ''; + + if ($dienstsort=='1') + { + echo ""; + } + else + { + echo ""; + } + echo ""; + echo ""; + echo ""; + # buttons sind in der selben Zelle + echo ""; + //echo ""; + echo "\n"; + + } + echo "
"; + echo $Tag; + echo "
"; + echo $Was; + echo "". "Von" . "". "Bis" . "". "Ist/Soll" . "". "Add" . "
". $zeile['Was'] . "". $zeile['Tag'] . "". $Von . "". $Bis . "". $zeile['Ist'] . "/"; + echo "". $zeile['Soll'] . "" . "" .""; + echo "" . "   $regtext" ."$regtext
"; + + +} + + + + + + + +mysqli_free_result( $db_erg ); + + +?> + +
+
+ + + diff --git a/html/Ausdrucke4.php b/html/Ausdrucke4.php new file mode 100644 index 0000000..0e7cb48 --- /dev/null +++ b/html/Ausdrucke4.php @@ -0,0 +1,166 @@ + + + Admin Stochercon + + + + + + + + + + +
+ + + + + + + +
  Übersicht Dienst Stochercon 2023
+ + +'; + +$db_erg = GetDiensteChilds($db_link,0); +while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) +{ + echo ""; + echo $zeile["Was"]; + echo ""; + + $db_erg2 = GetDiensteChilds($db_link,$zeile["DienstID"]); + while ($zeile = mysqli_fetch_array( $db_erg2, MYSQLI_ASSOC)) + { + echo ""; + echo $zeile["Was"]; + echo ""; + } + +} + +echo ""; + + + + +$db_erg = AlleSchichtenImZeitbereich($db_link,"2000-05-18 00:00:00","2200-05-19 00:00:00"); + +$OldWas=""; +echo "

"; +?> + + + +"; + //echo '
  Übersicht Schichten der Dienste Stochercon 2023
'; + echo '
'; + echo ""; + $OldWas=$Was; + + + } + + echo ""; + + +} + +echo "
"; + echo $Was; + echo "
"; + echo $zeile["Ab"]; + echo ""; + echo $zeile["Bis"]; + echo ""; + + $db_erg2 = BeteiligteHelfer($db_link,$zeile["SchichtID"]); + while ($zeile = mysqli_fetch_array( $db_erg2, MYSQLI_ASSOC)) + { + + echo $zeile["Name"]; + echo " "; + echo $zeile["Handy"]; + echo ","; + } + echo "
"; + +$OldHelferName=""; + +echo "

"; +?> + + + +"; + //echo '
  Übersicht Helfer und Ihre Schichten Stochercon 2023
'; + echo '
'; + echo ""; + $OldHelferName=$HelferName; + + + } + + echo ""; + + +} + + +echo "
"; + echo $HelferName; + echo "
"; + echo (int)$zeile["Dauer"]; + echo ""; + echo $zeile["Was"]; + echo "
"; + +?> + + + + + + + + diff --git a/html/Ausdrucke5.php b/html/Ausdrucke5.php new file mode 100644 index 0000000..35dc3b6 --- /dev/null +++ b/html/Ausdrucke5.php @@ -0,0 +1,172 @@ + + + Admin Stochercon + + + + + + + + + + +
+ + + +".strftime('%A, %e. %B %Y',$unixtime+$day*24*60*60).""; + $db_erg = GetDiensteForDay($db_link,2,$datestring); + while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) + { + $db_erg2 = GetSchichtenForDienstForDay($db_link,$zeile["DienstId"],$datestring); + echo ""; + echo ""; + $schichten=0; + $OldVon=0; + $OldSoll=0; + while($zeile2 = mysqli_fetch_array($db_erg2, MYSQLI_ASSOC)) + { + if($zeile2["Von"]!=$OldVon && $schichten!=0) + { + while($schichten<$OldSoll) + { + $schichten++; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + } + $schichten=0; + } + $schichten++; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + $OldVon = $zeile2["Von"]; + $OldBis = $zeile2["Bis"]; + $OldSoll = $zeile2["Soll"]; + if(empty($zeile2["Name"])) + { + while($schichten<$OldSoll) + { + $schichten++; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + } + } + } + + echo "
".$zeile["Was"]."
".$schichten."/".$OldSoll." ".date('H:i',strtotime($OldVon))." - ".date('H:i',strtotime($OldBis))."".strftime('%a %H:%M',strtotime($OldVon))." ".$zeile["Was"]."
".$zeile["Wo"]."
".$zeile["Info"]."
".$schichten."/".$zeile2["Soll"]." ".date('H:i',strtotime($zeile2["Von"]))." - ".date('H:i',strtotime($zeile2["Bis"]))."".$zeile2["Name"]." ".$zeile2["Handy"]."".strftime('%a %H:%M',strtotime($zeile2["Von"]))." ".$zeile["Was"]."
".$zeile["Wo"]."
".$zeile["Info"]."
".$schichten."/".$OldSoll." ".date('H:i',strtotime($OldVon))." - ".date('H:i',strtotime($OldBis))."".strftime('%a %H:%M',strtotime($OldVon))." ".$zeile["Was"]."
".$zeile["Wo"]."
".$zeile["Info"]."
"; + } +} + +$unixtime=strtotime('2023-09-15'); +for($day=0; $day<3; $day++) +{ + $datestring=date('Y-m-d',$unixtime+$day*24*60*60); + echo "

".strftime('%A, %e. %B %Y',$unixtime+$day*24*60*60)."

"; + $db_erg = GetDiensteForDay($db_link,1,$datestring); + while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) + { + $db_erg2 = GetSchichtenForDienstForDay($db_link,$zeile["DienstId"],$datestring); + echo ""; + echo ""; + $schichten=0; + $OldVon=0; + $OldSoll=0; + while($zeile2 = mysqli_fetch_array($db_erg2, MYSQLI_ASSOC)) + { + if($zeile2["Von"]!=$OldVon && $schichten!=0) + { + while($schichten<$OldSoll) + { + $schichten++; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + } + $schichten=0; + } + $schichten++; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + $OldVon = $zeile2["Von"]; + $OldBis = $zeile2["Bis"]; + $OldSoll = $zeile2["Soll"]; + if(empty($zeile2["Name"])) + { + while($schichten<$OldSoll) + { + $schichten++; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + } + } + } + + echo "
".$zeile["Was"]."
".$schichten."/".$OldSoll." ".date('H:i',strtotime($OldVon))." - ".date('H:i',strtotime($OldBis))."".strftime('%a %H:%M',strtotime($OldVon))." ".$zeile["Was"]."
".$zeile["Wo"]."
".$zeile["Info"]."
".$schichten."/".$zeile2["Soll"]." ".date('H:i',strtotime($zeile2["Von"]))." - ".date('H:i',strtotime($zeile2["Bis"]))."".$zeile2["Name"]." ".$zeile2["Handy"]."".strftime('%a %H:%M',strtotime($zeile2["Von"]))." ".$zeile["Was"]."
".$zeile["Wo"]."
".$zeile["Info"]."
".$schichten."/".$OldSoll." ".date('H:i',strtotime($OldVon))." - ".date('H:i',strtotime($OldBis))."".strftime('%a %H:%M',strtotime($OldVon))." ".$zeile["Was"]."
".$zeile["Wo"]."
".$zeile["Info"]."
"; + } +} + +?> + + + diff --git a/html/Bilder/Attention_Sign.svg b/html/Bilder/Attention_Sign.svg index 2e424ce..f9bb1dc 100644 --- a/html/Bilder/Attention_Sign.svg +++ b/html/Bilder/Attention_Sign.svg @@ -3,8 +3,8 @@ + + Stochercon 2023 + + + + + + + + + +
"; + $HelferName = ''; + $HelferEmail = ''; + $HelferHandy = ''; + $HelferPasswort = ''; + $HelferPasswort2 = ''; + + //die('

"; + } + } else { + // Fehlermeldungen ausgeben: + echo '
    '; + foreach($messages as $message) { + echo '
  • '.htmlspecialchars($message).'
  • '; + } + echo '
'; + } + + +} + + +?> + +

Hier können Sie sich selbst einen Account als Helfer anlegen.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Helferdaten
Name
+ +
Email
+ +
Handy
+ +
Passwort
+ +
Passwort wiederholen
+ +
Helferlevel
+ +
+ +
+ + + +
+ + + + + + + diff --git a/html/DASHelferDatenbank2023.pdf b/html/DASHelferDatenbank2023.pdf new file mode 100644 index 0000000..6f81667 Binary files /dev/null and b/html/DASHelferDatenbank2023.pdf differ diff --git a/html/DecodeToken.php b/html/DecodeToken.php index 757160b..09d5b13 100644 --- a/html/DecodeToken.php +++ b/html/DecodeToken.php @@ -1,47 +1,45 @@ - \n"; - echo "iv: $encrypted_iv
\n"; +if(isset($_GET['token']) ) { - // Erstellen eines Cipher-Objekts für die Verschlüsselung - $cipher_method = "AES-256-CBC"; - $iv_length = openssl_cipher_iv_length($cipher_method); - $iv = base64_decode($encrypted_iv); - $cipher_options = OPENSSL_RAW_DATA; - $cipher_key = openssl_digest($secret_key, 'SHA256', true); +// E-Mail-Adresse des Nutzers +$encrypted_data = $_GET['token']; +$encrypted_iv = $_GET['iv']; +echo "token: $encrypted_data
\n"; +echo "iv: $encrypted_iv
\n"; - // Entschlüsseln des verschlüsselten Textes - $decoded_cipher_text = base64_decode($encrypted_data); - $iv = base64_decode($encrypted_iv); - $iv = substr($decoded_cipher_text, 0, $iv_length); - $cipher_text = substr($decoded_cipher_text, $iv_length); - $decrypted_email = openssl_decrypt($cipher_text, $cipher_method, $cipher_key, $cipher_options, $iv); +// Erstellen eines Cipher-Objekts für die Verschlüsselung +$cipher_method = "AES-256-CBC"; +$iv_length = openssl_cipher_iv_length($cipher_method); +$iv = base64_decode($encrypted_iv); +$cipher_options = OPENSSL_RAW_DATA; +$cipher_key = openssl_digest($secret_key, 'SHA256', true); - // Verifikationsstring überprüfen und entfernen - $verification_length = strlen($secret_verification); - if (substr($decrypted_email, -$verification_length) == $secret_verification) { - $decrypted_email = substr($decrypted_email, 0, -$verification_length); - } +// Entschlüsseln des verschlüsselten Textes +$decoded_cipher_text = base64_decode($encrypted_data); +$iv = base64_decode($encrypted_iv); +$iv = substr($decoded_cipher_text, 0, $iv_length); +$cipher_text = substr($decoded_cipher_text, $iv_length); +$decrypted_email = openssl_decrypt($cipher_text, $cipher_method, $cipher_key, $cipher_options, $iv); + +// Verifikationsstring überprüfen und entfernen +$verification_length = strlen($secret_verification); +if(substr($decrypted_email, -$verification_length) == $secret_verification) { + $decrypted_email = substr($decrypted_email, 0, -$verification_length); +} + +// Ausgabe der entschlüsselten E-Mail-Adresse +echo "E-Mail-Adresse: ", $decrypted_email, "
\n"; - // Ausgabe der entschlüsselten E-Mail-Adresse - echo "E-Mail-Adresse: ", $decrypted_email, "
\n"; } else { - echo "Kein gültiges Token!
"; + +echo "Kein gültiges Token!
"; } ?> diff --git a/html/DetailsSchichten4.php b/html/DetailsSchichten4.php new file mode 100644 index 0000000..59135b5 --- /dev/null +++ b/html/DetailsSchichten4.php @@ -0,0 +1,178 @@ + + + Helfer Stochercon + + + + + + + +
+?> +
+". $SchichtID . "
"; + + $zeile = DetailSchicht($db_link,$InfoAlleSchichtID); + + $Was = $zeile['Was']; + $Wo = $zeile['Wo']; + $Dauer=$zeile['Dauer']; + $Leiter = $zeile['Name']; + $LeiterHandy = $zeile['Handy']; + $LeiterEmail = $zeile['Email']; + $Info = $zeile['Info']; + + + + // Beteiligte Helfer Holen + $db_erg = BeteiligteHelfer($db_link,$InfoAlleSchichtID); + + + $x=0; + + while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC)) + { + $MitHelferID[$x] = $zeile['HelferID']; + $MitHelfer[$x] = $zeile['Name']; + $MitHelferHandy[$x]= $zeile['Handy']; + $x++; + } + + +} + + +$HelferID = $_SESSION["HelferID"]; +$AdminID = $_SESSION["AdminID"]; + +if(isset($_POST['HelferID'])) +{ + $HelferID = $_POST['HelferID']; +} + if(isset($_POST['ShowHelfer'])) { + $HelferID=$_POST['HelperSearch']; + } + +$_SESSION["HelferID"] = $HelferID; + + + + + + + + + + + + + + + + + + + + +?> + + + +
+'; + + + + echo "".$Was.""; + echo ""; + + //echo "


"; + echo "Beschreibung:
"; + echo $Info . "

"; + echo "Ort:
". $Wo . "

"; + echo "Dauer:
". $Dauer . "

"; + echo "Ansprechparter:
". $Leiter .", "; + echo $LeiterHandy.", "; + echo $LeiterEmail . "

"; + echo "Helfer der Schicht:
"; + $x=0; + $arrayLength = count($MitHelfer); + while ($x<$arrayLength) + { + echo "ID:".$MitHelferID[$x].", "; + echo $MitHelfer[$x].", "; + echo $MitHelferHandy[$x]."
"; + $x++; + } + + echo "\n"; + + + + echo ""; + + + + + + + + + +mysqli_free_result( $db_erg ); + + +?> + +

+
+ + + diff --git a/html/EmailZuToken.php b/html/EmailZuToken.php index 0e56502..55ba083 100644 --- a/html/EmailZuToken.php +++ b/html/EmailZuToken.php @@ -1,37 +1,36 @@ '; - exit; +if($AdminStatus != 1) { + //Seite nur fuer Admins. Weiter zu index.php und exit, wenn kein Admin + echo ''; + exit; } -function validate_email($email) -{ +function validate_email($email) { // Prüfen, ob die Email-Adresse syntaktisch gültig ist if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { return false; } - + // Prüfen, ob das @-Symbol enthalten ist if (strpos($email, '@') === false) { return false; } - + // Prüfen, ob der Teil nach dem @-Symbol eine gültige Domain enthält $parts = explode('@', $email); $domain = $parts[1]; if (!filter_var($domain, FILTER_VALIDATE_DOMAIN)) { return false; } - + // Alle Checks bestanden return true; } @@ -39,27 +38,28 @@ function validate_email($email) // wird immer auf 2 (Teilnehmer) gesetzt und wird auch nicht gespeichert, wenn anders gesetzt // andere level muessen jedes Mal gesetzt werden -$level = 2; +$level=2; -if (isset($_POST['helfer-status'])) { - $level = $_POST['helfer-status']; +if(isset($_POST['helfer-status'])) { + $level=$_POST['helfer-status']; } // nicht sicher, wo so ein default-text herkommen sollte // oder ob es tatsächlich einen geben sollte -$email_subject = EVENTNAME . " beginnt bald!"; -if (isset($_POST['email-subject'])) { - $email_subject = $_POST['email-subject']; +$email_subject="Stochercon Helferschichten"; +if(isset($_POST['email-subject'])) { + $email_subject=$_POST['email-subject']; } -$email_cc = "drophelfer@gmail.com"; -if (isset($_POST['email-cc'])) { - $email_cc = $_POST['email-cc']; +$email_cc="helfer@jonglaria.org"; +if(isset($_POST['email-cc'])) { + $email_cc=$_POST['email-cc']; } -$email_text = " -Lieber Teilnehmer, -trage dich bitte mit folgendem Link für eine Stunde pro Person als Helfer bei uns ein.Wir verschicken eine Mail pro Emailaddresse, also bitte für alle, die mit dieser Emailaddresse angemeldet sind. +$email_text=" +Lieber Teilnehmer der Stochercon, + +trage dich bitte mit folgendem Link für eine Stunde pro Person als Helfer bei uns ein. Wir verschicken eine Mail pro Emailaddresse, also bitte für alle, die mit dieser Emailaddresse angemeldet sind. Danke für deine Mithilfe! @@ -68,26 +68,26 @@ XXtokenXX Du kannst dich auch später wieder über den Link einloggen und die Schicht ändern. Viele Grüße, -dein " . EVENTNAME . " Team +dein Stocherconteam "; -if (isset($_POST['email-text'])) { - $email_text = $_POST['email-text']; +if(isset($_POST['email-text'])) { + $email_text=$_POST['email-text']; } -$sendmail = 0; -if (isset($_POST['sendmail'])) { - $sendmail = $_POST['sendmail']; +$sendmail=0; +if(isset($_POST['sendmail'])) { + $sendmail=$_POST['sendmail']; } ?> - Helfer <?php echo EVENTNAME ?>: Email Tokens generieren + Helfer Stochercon: Email Tokens generieren - - + + @@ -96,7 +96,7 @@ if (isset($_POST['sendmail'])) { ?> - +

Emails mit Login-Link zur HelferDB generieren

@@ -113,24 +113,20 @@ Als Passwort wird das Token gesetzt. Man kann sich mit dem Link danach wieder in

Subject der Email:
- +

CC (Kopie) der Email geht an:
- +

Emailtext (XXtokenXX an die Stelle schreiben, an der der Link im Emailtext stehen soll):

@@ -146,49 +142,51 @@ Liste von Emails, an die Anschreiben verschickt wird (Eine Email pro Zeile, nur

"; - echo $sendmail . "
"; - echo "=======================================
"; - echo "To: " . $decrypted_data['email'] . " (level: " . $decrypted_data['level'] . "):
"; - echo "CC: " . $email_cc . "
"; - echo "
" . $email_subst_text . "

"; - echo "$email: $token_url (check: " . $decrypted_data['email'] . ", lv: " . $decrypted_data['level'] . ")
"; - } else { - // Email verschicken - send mail - $to = $decrypted_data['email']; - $from = "root"; - $headers = 'From: ' . $from . "\r\n"; - $headers .= 'CC: ' . $email_cc . "\r\n"; - if (mail($to, $email_subject, $email_subst_text, $headers)) { - echo "Die E-Mail an $to wurde erfolgreich versendet."; - error_log(date('Y-m-d H:i') . "(AdminID:$AdminID) Name: $HelferName (HelferID:$HelferID) hat Email mit Link verschickt an: $to mit CC an: $email_cc\n", 3, LOGFILE); - } else { - echo "Beim Versenden der E-Mail an $to ist ein Fehler aufgetreten."; - } - } + //mit explode: jede Email in einer Zeile, andere Leerzeichen koennen zur Email werden + // $emails = explode("\n", $email_list); + + //preg_split, um bei allen Leerzeichen zu trennen + $email_array = preg_split('/\s+/', $email_list); // Trennzeichen: 1 oder mehr Whitespace-Zeichen + foreach ($email_array as $email) { + $email=trim($email); + $encrypted_data=encode_string($secret_key, $email,$level,$secret_verification); + $token_url = "$urlprefix?token=$encrypted_data"; + // Ausgabe des verschluesselten Textes in der URL + $decrypted_data = decode_string($secret_key, urldecode($encrypted_data),$secret_verification); + $email_subst_text = str_replace('XXtokenXX', $token_url, $email_text); + if($sendmail != 1){ + // keine Emails verschicken, wir gebeben die Inhalte unten als Text aus + echo "Verschicken nicht ausgewählt. Zeige Emails an:
"; + echo $sendmail ."
"; + echo "=======================================
"; + echo "To: ".$decrypted_data['email']." (level: ".$decrypted_data['level']."):
"; + echo "CC: ".$email_cc."
"; + echo "
".$email_subst_text."

"; + echo "$email: $token_url (check: ".$decrypted_data['email'].", lv: ".$decrypted_data['level'].")
"; + } else { + // Email verschicken - send mail + $to=$decrypted_data['email']; + $from="helfer@jonglaria.org"; + $headers = 'From: ' . $from . "\r\n"; + $headers .= 'CC: ' . $email_cc . "\r\n"; + if (mail($to, $email_subject, $email_subst_text, $headers, '-fhelfer@jonglaria.org')) { + echo "Die E-Mail an $to wurde erfolgreich versendet."; + error_log(date('Y-m-d H:i') . "(AdminID:$AdminID) Name: $HelferName (HelferID:$HelferID) hat Email mit Link verschickt an: $to mit CC an: $email_cc\n",3,LOGFILE); + } else { + echo "Beim Versenden der E-Mail an $to ist ein Fehler aufgetreten."; + } } + } } @@ -201,7 +199,7 @@ if (isset($_POST['email-liste'])) { + + Schicht Hinzufügen + + + + + Kalenderansicht + + + + Logs + + + + + Admin + + + + + + + Logout + + + + + + + diff --git a/html/Info4.php b/html/Info4.php new file mode 100644 index 0000000..b89ff41 --- /dev/null +++ b/html/Info4.php @@ -0,0 +1,26 @@ + + + + Helfer Stochercon Home + + + + + + + + + + + + + + + + + + + +
Turnerheim
Tennishalle
+ + diff --git a/html/Kalender-all.html b/html/Kalender-all.html index e7d5f6c..15b1024 100644 --- a/html/Kalender-all.html +++ b/html/Kalender-all.html @@ -1,85 +1,86 @@ - Helferdienste - - - - - - - + + -
+
  -Mehrtagesdienste anzeigen: -Einfärben: -Filtern: -
- + Mehrtagesdienste anzeigen: + Einfärben: + Filtern: +
+
-
-
 
-
 
-
-
-
-
-
-
-
- -
-
-
-
- - + - +