TYPO3 v15 dev-main snapshot ()

This commit is contained in:
2026-08-10 22:31:09 +02:00
commit af8cc155b5
6818 changed files with 642608 additions and 0 deletions
@@ -0,0 +1,63 @@
<?php
declare(strict_types=1);
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
namespace TYPO3\CMS\Core\TypoScript\IncludeTree\Event;
use Psr\Http\Message\ServerRequestInterface;
use TYPO3\CMS\Core\Site\Entity\SiteInterface;
/**
* A PSR-14 event fired when sys_template rows have been fetched.
*
* This event is intended to add own rows based on given rows or site resolution.
*/
final class AfterTemplatesHaveBeenDeterminedEvent
{
public function __construct(
private readonly array $rootline,
private readonly ?ServerRequestInterface $request,
private array $templateRows,
) {}
public function getRootline(): array
{
return $this->rootline;
}
public function getRequest(): ?ServerRequestInterface
{
return $this->request;
}
/**
* Convenience method to directly retrieve the Site. May be null though!
*/
public function getSite(): ?SiteInterface
{
return $this->request?->getAttribute('site');
}
public function getTemplateRows(): array
{
return $this->templateRows;
}
public function setTemplateRows(array $templateRows): void
{
$this->templateRows = $templateRows;
}
}
@@ -0,0 +1,45 @@
<?php
declare(strict_types=1);
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
namespace TYPO3\CMS\Core\TypoScript\IncludeTree\Event;
/**
* Extensions can add global page TSconfig right before they are loaded from other sources
* like the global page.tsconfig file.
*
* Note: The added config should not depend on runtime / request. This is considered static
* config and thus should be identical on every request.
*/
final class BeforeLoadedPageTsConfigEvent
{
public function __construct(private array $tsConfig = []) {}
public function getTsConfig(): array
{
return $this->tsConfig;
}
public function addTsConfig(string $tsConfig): void
{
$this->tsConfig[] = $tsConfig;
}
public function setTsConfig(array $tsConfig): void
{
$this->tsConfig = $tsConfig;
}
}
@@ -0,0 +1,45 @@
<?php
declare(strict_types=1);
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
namespace TYPO3\CMS\Core\TypoScript\IncludeTree\Event;
/**
* Extensions can add global user TSconfig right before they are loaded from other sources
* like the global user.tsconfig file.
*
* Note: The added config should not depend on runtime / request. This is considered static
* config and thus should be identical on every request.
*/
final class BeforeLoadedUserTsConfigEvent
{
public function __construct(private array $tsConfig = []) {}
public function getTsConfig(): array
{
return $this->tsConfig;
}
public function addTsConfig(string $tsConfig): void
{
$this->tsConfig[] = $tsConfig;
}
public function setTsConfig(array $tsConfig): void
{
$this->tsConfig = $tsConfig;
}
}
@@ -0,0 +1,46 @@
<?php
declare(strict_types=1);
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
namespace TYPO3\CMS\Core\TypoScript\IncludeTree\Event;
/**
* Extensions can modify page TSconfig entries that can be overridden or added, based on the root line
*/
final class ModifyLoadedPageTsConfigEvent
{
public function __construct(private array $tsConfig, private readonly array $rootLine) {}
public function getTsConfig(): array
{
return $this->tsConfig;
}
public function addTsConfig(string $tsConfig): void
{
$this->tsConfig[] = $tsConfig;
}
public function setTsConfig(array $tsConfig): void
{
$this->tsConfig = $tsConfig;
}
public function getRootLine(): array
{
return $this->rootLine;
}
}