75 lines
2.6 KiB
PHP
75 lines
2.6 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace HermannTelser\Zuladungsliste\Middleware;
|
|
|
|
use HermannTelser\Zuladungsliste\Berechnung\_Berechnung;
|
|
use HermannTelser\Zuladungsliste\Bootstrap\_BootstrapController;
|
|
use HermannTelser\Zuladungsliste\Download\_DownloadController;
|
|
use HermannTelser\Zuladungsliste\Liste\_ListeController;
|
|
use HermannTelser\Zuladungsliste\Zuteilungen\_ZuteilungenController;
|
|
use HermannTelser\Zuladungsliste\Zuladungsliste\_ZuladungslisteController;
|
|
use HermannTelser\Zuladungsliste\PunkteZuweisung\_PunkteZuweisungController;
|
|
use HermannTelser\Zuladungsliste\Einreichen\_EinreichenController;
|
|
use HermannTelser\Zuladungsliste\User\_UserController;
|
|
use HermannTelser\Zuladungsliste\Upload\_UploadController;
|
|
|
|
use Psr\Http\Message\ResponseInterface;
|
|
use Psr\Http\Message\ServerRequestInterface;
|
|
use Psr\Http\Server\MiddlewareInterface;
|
|
use Psr\Http\Server\RequestHandlerInterface;
|
|
use TYPO3\CMS\Core\Http\JsonResponse;
|
|
|
|
define("WETTBEWERBE_PID", 38);
|
|
setlocale(LC_TIME, 'de_DE.UTF8');
|
|
|
|
class Ajax implements MiddlewareInterface
|
|
{
|
|
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
|
|
{
|
|
$response = $handler->handle($request);
|
|
if (!isset($request->getQueryParams()['zlcontroller'])) {
|
|
return $response;
|
|
}
|
|
$xaction = $request->getQueryParams()['xaction'];
|
|
|
|
// $user = $GLOBALS['TSFE']->fe_user->user;
|
|
$zlcontroller = $request->getQueryParams()['zlcontroller'];
|
|
switch ($zlcontroller) {
|
|
case 'bootstrap_controller':
|
|
new _BootstrapController($xaction);
|
|
break;
|
|
case 'liste_controller':
|
|
new _ListeController($xaction);
|
|
break;
|
|
case 'download_controller':
|
|
new _DownloadController($xaction);
|
|
break;
|
|
case 'zuteilungen_controller':
|
|
new _ZuteilungenController($xaction);
|
|
break;
|
|
case 'zuladungsliste_controller':
|
|
new _ZuladungslisteController($xaction);
|
|
break;
|
|
case 'punktezuweisung_controller':
|
|
new _PunkteZuweisungController($xaction);
|
|
break;
|
|
case 'einreichen_controller':
|
|
new _EinreichenController($xaction);
|
|
break;
|
|
case 'user_controller':
|
|
new _UserController($xaction);
|
|
break;
|
|
case 'upload_controller':
|
|
new _UploadController($xaction);
|
|
break;
|
|
default:
|
|
_Berechnung::$_return = ['error' => __FILE__.': call \''.$zlcontroller.'\' not implemented'];
|
|
break;
|
|
}
|
|
|
|
return new JsonResponse(_Berechnung::$_return);
|
|
}
|
|
}
|