Files
2026-10-06 19:40:28 +02:00

76 lines
2.6 KiB
PHP

<?php
namespace HermannTelser\Zuladungsliste\Berechnung;
use HermannTelser\Zuladungsliste\Utilities\Message;
/***
*
* This file is part of the "Zuladungsliste Steiermark" Extension for TYPO3 CMS.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* (c) 2019 Hermann Telser <hermann.telser@gmail.com>, NUH-Odds GmbH
*
***/
class Neueinsteiger
{
/**
* @param mixed $_liste
* @param mixed $user_objekt
*
* @return void
*/
public static function load($_liste, $user_objekt)
{
if (_Berechnung::$debug) {
Message::debug(__FILE__, __LINE__, 'Load NeueinsteigerPunkt');
}
if ('0000-00-00' == $user_objekt['vereidigung']) {
$_liste['auswertung']['neueinsteigerpunkt']['punkte'] = 0;
$_liste['auswertung']['neueinsteigerpunkt']['kommentar'] = 'Kein Vereidigungsdatum verfügbar';
return $_liste;
}
$vereidigung = strtotime($user_objekt['vereidigung']);
$_sektionstag = Sektionstage::filter($vereidigung);
$datetime1 = new \DateTime();
if (0 != _Berechnung::$_config['berechne_bis']) {
$datetime1->setTimestamp(_Berechnung::$_config['berechne_bis']);
}
$datetime2 = new \DateTime($user_objekt['vereidigung']);
$interval = $datetime1->diff($datetime2);
$monate_seit_vereidigung = $interval->m + ($interval->y * 12);
if ($monate_seit_vereidigung > $_sektionstag['neueinsteiger']) {
$_liste['auswertung']['neueinsteigerpunkt']['punkte'] = 0;
$_liste['auswertung']['neueinsteigerpunkt']['kommentar'] = 'Neueinsteigerpunkt ist verfallen. Vereidigung '.$user_objekt['vereidigung'];
return $_liste;
}
$jahre_seit_vereidigung = $interval->y;
if ($jahre_seit_vereidigung < 5) {
$neueinsteigerpunkt = 5 - $jahre_seit_vereidigung;
$datetime2->modify('+5 year');
$_liste['auswertung']['neueinsteigerpunkt']['punkte'] = $neueinsteigerpunkt;
$_liste['punkte'] = $_liste['punkte'] + $neueinsteigerpunkt;
$_liste['auswertung']['neueinsteigerpunkt']['kommentar'] = 'Neueinsteigerpunkt Vereidigung '.$user_objekt['vereidigung'];
$_liste['auswertung']['neueinsteigerpunkt']['gueltig_bis'] = $datetime2->format('Y-m-d');
} else {
$_liste['auswertung']['neueinsteigerpunkt']['punkte'] = 0;
$_liste['auswertung']['neueinsteigerpunkt']['kommentar'] = 'Neueinsteigerpunkt ist verfallen. Vereidigung '.$user_objekt['vereidigung'];
}
return $_liste;
}
}