<?php

(function (string $extensionKey, string $tableName) {
    \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::registerPageTSConfigFile(
        $extensionKey,
        'Configuration/PageTSconfig/Index.tsconfig',
        $extensionKey
    );

    $languagePath = 'LLL:EXT:' . $extensionKey . '/Resources/Private/Language/locallang_tca.xlf:' . $tableName . '.';

    \TYPO3\CMS\Core\Utility\ArrayUtility::mergeRecursiveWithOverrule($GLOBALS['TCA'][$tableName], [
        'columns' => [
            'rel' => [
                'label' => 'rel Attribute of generated a Tag',
                'config' => [
                    'type' => 'input',
                ],
            ],
            'url' => [
                'config' => [
                    'type' => 'link',
                ],
            ],
            'lastUpdated' => [
                'label' => $languagePath . 'lastUpdated',
                'config' => [
                    'eval' => 'date,int',
                ],
            ],
            'description' => [
                'config' => [
                    'max' => 200,
                ],
            ],
        ],
    ]);

    \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes(
        $tableName,
        'rel',
        (string) \TYPO3\CMS\Core\Domain\Repository\PageRepository::DOKTYPE_LINK,
        'after:url'
    );

})('ds_site', 'pages');