Ejemplo n.º 1
0
 /**
  * wrapper for GeneralUtility::mkdir_deep
  * checks for overwrite settings
  *
  * @param string $directory base path
  * @param string $deepDirectory
  */
 protected function mkdir_deep($directory, $deepDirectory)
 {
     if (!$this->roundTripEnabled) {
         GeneralUtility::mkdir_deep($directory, $deepDirectory);
     } else {
         $subDirectories = explode('/', $deepDirectory);
         $tmpBasePath = $directory;
         foreach ($subDirectories as $subDirectory) {
             $overWriteMode = RoundTrip::getOverWriteSettingForPath($tmpBasePath . $subDirectory, $this->extension);
             //throw new \Exception($directory . $subDirectory . '/' . $overWriteMode);
             if ($overWriteMode === -1) {
                 // skip creation
                 return;
             }
             if (!is_dir($deepDirectory) || $this->roundTripEnabled && $overWriteMode < 2) {
                 GeneralUtility::mkdir_deep($tmpBasePath, $subDirectory);
             }
             $tmpBasePath .= $subDirectory . '/';
         }
     }
 }