<?php
declare(strict_types=1);

namespace Wga\Core\Routing\Aspect;

use TYPO3\CMS\Core\Routing\Aspect\PersistedPatternMapper as CorePersistedPatternMapper;

/**
 * Class PersistedAliasMapper
 */
class PersistedPatternMapper extends CorePersistedPatternMapper
{
    /**
     * {@inheritdoc}
     */
    public function resolve(string $value): ?string
    {
        $result = parent::resolve($value);

        if (!empty($result) && !empty($this->settings['pageMode'])) {
            $GLOBALS['pageMode'] = $this->settings['pageMode'];
        }

        if (!empty($result) && !empty($this->settings['seo'])) {
            $seoSettings = $this->settings['seo'];
            $recordUid = $result;
            $recordTable = $this->settings['tableName'];
            $GLOBALS['wga_seo'] = [
                'seoSettings' => $seoSettings,
                'recordUid' => $recordUid,
                'recordTable' => $recordTable,
            ];
        }

        return $result;
    }
}
