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

95 lines
3.3 KiB
PHP

<?php
namespace HermannTelser\Zuladungsliste\PunkteZuweisung;
use ForceUTF8\Encoding;
use TYPO3\CMS\Core\Database\ConnectionPool;
use TYPO3\CMS\Core\Utility\GeneralUtility;
use HermannTelser\Zuladungsliste\Utilities\Message;
// use TYPO3\CMS\Core\Database\Query\Restriction\DeletedRestriction;
use HermannTelser\Zuladungsliste\Utilities\Resources;
/***
*
* 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.
*
*
* Copyright notice
*
* (c) 2017 - 2022 Hermann Telser <hermann.telser@gmail.com>
*¨
* All rights reserved
* ************************************************************* */
class PunkteZuweisungen
{
/**
* @return void
*/
public static function laden()
{
$user = $GLOBALS['TSFE']->fe_user->user;
$queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable('tx_zuladungsliste_domain_model_wettbewerbe');
// $queryBuilder->getRestrictions()->removeAll()->add(GeneralUtility::makeInstance(DeletedRestriction::class));
$queryBuilder
->select('uid', 'wettbewerb', 'bundesland', 'kriteriumid', 'entscheidungstermin', 'abgabetermin')
->from('tx_zuladungsliste_domain_model_wettbewerbe');
$_wettbewerbe = $queryBuilder->execute()->fetchAll();
$queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable('tx_zuladungsliste_wettbewerbe_architekten_mm');
// $queryBuilder->getRestrictions()->removeAll()->add(GeneralUtility::makeInstance(DeletedRestriction::class));
$queryBuilder
->select('uid_wettbewerbe', 'tstamp_zuordnung', 'tstamp_aktivierung')
->from('tx_zuladungsliste_wettbewerbe_architekten_mm')
->where($queryBuilder->expr()->eq('uid_user', (int) $user['uid']));
$res = $queryBuilder->execute()->fetchAll();
$punktestatus = [];
foreach ($res as $key => $value) {
$punktestatus[$value['uid_wettbewerbe']] = $value;
}
$bundeslaender = Resources::bundeslaender();
$bundeslaender = array_flip($bundeslaender);
$_return = [];
foreach ($_wettbewerbe as $key => $value) {
$value["bundeslandid"] = $bundeslaender[$value["bundesland"]];
$year = date('Y', strtotime($value["entscheidungstermin"]));
if (strtotime($value["entscheidungstermin"]) > 0) {
$value["jahr"] = (int) $year;
} else {
$value["jahr"] = (int) date('Y', strtotime($value["abgabetermin"]));
}
unset($value["entscheidungstermin"]);
unset($value["abgabetermin"]);
$wettbewerbeId = $value["uid"];
$value["status"] = 0;
if (isset($punktestatus[$wettbewerbeId])) {
$tmp = $punktestatus[$wettbewerbeId];
if ($tmp["tstamp_zuordnung"]>0) {
$value["status"] = 1;
}
if ($tmp["tstamp_aktivierung"]>0) {
$value["status"] = 2;
}
}
$_return[] = $value;
}
header('Content-Type: application/json');
echo json_encode($_return);
exit();
}
}