deputat/fetch_mutterschutz.php
2023-04-25 13:25:59 +02:00

126 lines
3.8 KiB
PHP
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
session_start();
#if(isset($_POST['get_option'])){
$jahrgang = $_SESSION["jahrgang"];
$jahrgang2 = $jahrgang+1;
require_once("config/datenbankanbindung.php"); // f&uuml;gt die Datenbankanbindung ein: Sys:\php\includes\kurs\datenbankanbindung.php
require_once("func_timediff.php"); // Funktionen für die Berechnung der Differenz der Tage
$beginn_funktion = preg_replace('/^(\\d{2})\\.(\\d{2})\\.(\\d{4})$/', '$3-$2-$1', $_POST['get_beginn_funktion']);
$ende_funktion = preg_replace('/^(\\d{2})\\.(\\d{2})\\.(\\d{4})$/', '$3-$2-$1', $_POST['get_ende_funktion']);
$dat_min = strtotime($jahrgang."-09-01");
$dat_max = strtotime($jahrgang2."-08-31");
$dat_beginn = strtotime($beginn_funktion);
$dat_ende = strtotime($ende_funktion);
if($dat_beginn <= $dat_min or $beginn_funktion == ''){
$beginn_funktion = $jahrgang."-09-01";
}
if($dat_ende >= $dat_max or $ende_funktion == ''){
$ende_funktion = $jahrgang2."-08-31";
}
$year_start = substr($beginn_funktion,0,4);
$mon_start = substr($beginn_funktion,5,2);
$day_start = substr($beginn_funktion,8,2);
$year_ende = substr($ende_funktion,0,4);
$mon_ende = substr($ende_funktion,5,2);
$day_ende = substr($ende_funktion,8,2);
/*Grundsätzlich beginnen die Beauftragungen / Funktionen an der Hochschule zum Monatsersten und enden am Monatsletzten.
Aber: ich kann auch nicht mit 100%iger Sicherheit sagen, dass dies immer so ist. Daher sollten wir zur Sicherheit mit Tagen rechnen.
Im Beispiel unten: Beauftragung vom 1.10.2019 30.09.2022. Für das Studienjahr 2019/20 bedeutet dies, dass er für 335 von 365 Tagen die Ermäßigung erhält.
Das sind 60,57 LVS Ermäßigung. Hatten wir hier uns schon auf eine Rundung festgelegt? Falls nicht, würde ich auf 2 Stellen nach dem Komma runden, dann wäre die Ermäßigung (nach Rundung) 60,58 LVS.
*/
# Wie viele Tage hat das Schuljahr 365 bzw 366 Tage
$start = mktime(0, 0, 0, 9, 1, $jahrgang);
$ende = mktime(0, 0, 0, 8, 31+1, $jahrgang+1);
$jahr_tage = tage($start, $ende);
# Wie viele Tage wurde die Funktion ausgeübt
$start2 = mktime(0, 0, 0, $mon_start, $day_start, $year_start);
$ende2 = mktime(0, 0, 0, $mon_ende, $day_ende+1, $year_ende);
$mutterschutztage = tage($start2, $ende2);
$ende2_form = mktime(0, 0, 0, $mon_ende, $day_ende, $year_ende);
# func_timediff.php
# Je nach vorgehensweise. Werden die Anzahl der Tage im Jahr zugrunde gerlegt (tage()) 300/365
# oder die Anzahl der Monate (datediff_ymd()) 11/12
# $module = $_COOKIE["modulid"];
$db = dbconnect();
$query_lvs = $db->query("SELECT lvs
FROM dep_kat_lvs
WHERE jahr <=$jahrgang
ORDER BY jahr desc
LIMIT 1");
$row_lvs = $query_lvs->fetch_array();
$lvs = $row_lvs['lvs'];
# Die 33 sind Semesterwochen aus dep_kat_lvs
# Bsp Beauftragung ging 11 Monate
$ausgabe = round($mutterschutztage/$jahr_tage*$lvs,2);
echo "<b>Berechnung:</b>
<table>
<tr>
<td>
Funktionsbeginn:
</td>
<td>"
.date("d.m.Y", $start2)."
</td>
</tr>
<tr>
<td>
Funktionsende:
</td>
<td>"
.date("d.m.Y",$ende2_form)."
</td>
</tr>
<tr>
<td>
Mutterschutztage:
</td>
<td>"
.$mutterschutztage."
</td>
</tr>
<tr>
<td>
Rechenweg:
</td>
<td>
$mutterschutztage / $jahr_tage x $lvs
</td>
</tr>
<tr>
<td>
Ermäßigung:
</td>
<td>"
.number_format($ausgabe, 2, ',', '.')."
</td>
</tr>
</table>||".$ausgabe;
#echo "Rechenweg: $std*$sw*$funk_tage/$jahr_tage<br>LVS: $ausgabe||$ausgabe";
exit;
#}
?>