<?php

namespace Medienreaktor\Energize\DataProcessing;


use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Extbase\Utility\DebuggerUtility;
use TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer;
use TYPO3\CMS\Frontend\ContentObject\DataProcessorInterface;
use TYPO3\CMS\Core\Configuration\FlexForm\FlexFormTools;

class FlexFormProcessor implements DataProcessorInterface
{
    public function process(ContentObjectRenderer $cObj, array $contentObjectConfiguration, array $processorConfiguration, array $processedData)
    {
        $flexformService = GeneralUtility::makeInstance(\TYPO3\CMS\Core\Service\FlexFormService::class);
        $fieldname = $processorConfiguration["fieldname"];

        if (isset($processedData["data"][$fieldname])) {
            $xml = $processedData["data"][$fieldname];
            $parsedXML = $flexformService->convertFlexFormContentToArray($xml);

            $processedData["data"][$fieldname] = $parsedXML;
        }

        return $processedData;

    }


}
