diff --git a/html/SQL.php b/html/SQL.php
index ae9b79d..6f41eb7 100644
--- a/html/SQL.php
+++ b/html/SQL.php
@@ -644,6 +644,24 @@ function DeleteDienst($DienstID, $Rekursiv)
}
}
+function GetDiensteForDay($helferlevel, $datestring)
+{
+ $db = DB::getInstance();
+ $db->prepare(__METHOD__,"SELECT DienstId, Was, Wo, Info FROM Dienst INNER JOIN Schicht USING (DienstID) WHERE HelferLevel=" . $helferlevel . " GROUP BY DienstId HAVING MIN(Von)<:date1 AND MAX(Bis)>:date2 ORDER BY MIN(Von) ASC;");
+
+ $unixtime = strtotime($datestring);
+ $date1 =
+ $date2 = date('Y-m-d', $unixtime);
+
+ $db_erg = $db->execute(__METHOD__,[
+ 'date1' => date('Y-m-d', $unixtime + 24 * 60 * 60),
+ 'date2' => date('Y-m-d', $unixtime)
+ ]);
+ $db->onErrorDie(__METHOD__);
+ $schichten = $db->fetchAll(__METHOD__);
+ return $schichten;
+}
+
// ok
function GetSchichtenForDienstForDay($DienstID, $datestring)
{
diff --git a/html/SQL_old.php b/html/SQL_old.php
index 166b303..9d82e4c 100644
--- a/html/SQL_old.php
+++ b/html/SQL_old.php
@@ -649,7 +649,10 @@ function GetDiensteForDay($db_link, $helferlevel, $datestring)
echo "GetDienste ungueltige Abfrage";
die('Ungueltige Abfrage: ' . mysqli_error($db_link));
}
- return $db_erg;
+
+ while($zeilen[] = mysqli_fetch_array($db_erg, MYSQLI_ASSOC));
+ array_pop($zeilen);
+ return $zeilen;
}
function GetSchichtenForDienstForDay($db_link, $DienstID, $datestring)
diff --git a/html/testPDO.php b/html/testPDO.php
index c2d3352..1df4be7 100644
--- a/html/testPDO.php
+++ b/html/testPDO.php
@@ -447,15 +447,16 @@ function TestDeleteDienst(){
else echo "DeleteDienst ok\n";
}
+// ok
function TestGetDiensteForDay(){
$dbl = old\ConnectDB();
- $erg_old = old\GetDiensteForDay($dbl, $helferlevel, $datestring);
- $erg_new = GetDiensteForDay($helferlevel, $datestring);
+ $erg_old = old\GetDiensteForDay($dbl, 2, "2024-02-16");
+ $erg_new = GetDiensteForDay(2, "2024-02-16");
if((gettype($erg_old) != gettype($erg_new)) || ($erg_old != $erg_new)){
echo "Old GetDiensteForDay returns".var_export($erg_old, true)."\n";
echo "New GetDiensteForDay returns '".var_export($erg_new, true)."'\n";
}
- else echo "GetDiensteForDay ok";
+ else echo "GetDiensteForDay ok\n";
}
// ok
@@ -619,4 +620,5 @@ TestSchichtenSummeEinesHelfers();
TestLogSchichtEingabe();
TestDetailSchicht();
TestBeteiligteHelfer();
+TestGetDiensteForDay();
?>