/**
  * Get the test configuration overlay (configuration overwritten in instance)
  *
  * @param integer $testUid UID of the test
  * @return array
  */
 public function getTestConfigurationOverlayForTestUid($testUid)
 {
     $overlayConfig = FALSE;
     if ($this->testConfigurationOverlay) {
         $fftools = new \TYPO3\CMS\Core\Configuration\FlexForm\FlexFormTools();
         $tests = $fftools->getArrayValueByPath('data/sDEF/lDEF/testconfigurations/el', $this->testConfigurationOverlay);
         if (is_array($tests)) {
             foreach ($tests as $key => $el) {
                 if ($tests[$key]['test']['el']['test_service']['vDEF'] == $testUid) {
                     $overlayConfig = $tests[$key]['test']['el']['test_conf']['vDEF'];
                     $overlayConfig['hidden'] = $tests[$key]['test']['el']['test_hidden']['vDEF'];
                     $overlayConfig['overwritten_in']['title'] = $this->title;
                     $overlayConfig['overwritten_in']['uid'] = $this->uid;
                     $overlayConfig['overwritten_in']['id'] = $this->getCaretakerNodeId();
                 }
             }
         }
     }
     if (!$overlayConfig) {
         $overlayConfig = parent::getTestConfigurationOverlayForTestUid($testUid);
     }
     return $overlayConfig;
 }
 /**
  * @param string $table
  * @param array $row
  * @param string $field
  * @param string $itemFormElName
  * @return mixed
  */
 protected function getFFValue($table, $row, $field, $itemFormElName)
 {
     $path = str_replace('data[' . $table . '][' . $row['uid'] . '][' . $field . '][', '', $itemFormElName);
     $path = rtrim($path, ']');
     $path = explode('][', $path);
     $fftools = new \TYPO3\CMS\Core\Configuration\FlexForm\FlexFormTools();
     $val = $fftools->getArrayValueByPath($path, \TYPO3\CMS\Core\Utility\GeneralUtility::xml2array($row[$field]));
     return $val;
 }