core-bundle/src/Resources/contao/widgets/FileTree.php
protected function checkValue($varInput)
	{
		if ($varInput == '')
		{
			return;
		}

		if (strpos($varInput, ',') === false)
		{
			$arrUuids = array($varInput);
		}
		else
		{
			$arrUuids = array_filter(explode(',', $varInput));
		}

		$objFiles = FilesModel::findMultipleByUuids($arrUuids);

		if ($objFiles === null)
		{
			return;
		}

		$rootDir = System::getContainer()->getParameter('kernel.project_dir');

		foreach ($objFiles as $objFile)
		{
			// Only files can be selected
			if ($this->filesOnly && is_dir($rootDir . '/' . $objFile->path))
			{
				$this->addError($GLOBALS['TL_LANG']['ERR']['filesOnly']);
				break;
			}

			// Only folders can be selected
			if ($this->files === false && !is_dir($rootDir . '/' . $objFile->path))
			{
				$this->addError($GLOBALS['TL_LANG']['ERR']['foldersOnly']);
				break;
			}

			// Only files within a custom path can be selected
			if ($this->path && strpos($objFile->path, $this->path . '/') !== 0)
			{
				$this->addError(sprintf($GLOBALS['TL_LANG']['ERR']['pathOnly'], $this->path));
				break;
			}

			// Only certain file types can be selected
			if ($this->extensions && !is_dir($rootDir . '/' . $objFile->path))
			{
				$objFile = new File($objFile->path);
				$extensions = StringUtil::trimsplit(',', $this->extensions);

				if (!\in_array($objFile->extension, $extensions))
				{
					$this->addError(sprintf($GLOBALS['TL_LANG']['ERR']['extensionsOnly'], $this->extensions));
					break;
				}
			}
		}
	}
protected function checkValue($varInput)
	{
		if ($varInput == '')
		{
			return;
		}

		if (strpos($varInput, ',') === false)
		{
			$arrUuids = array($varInput);
		}
		else
		{
			$arrUuids = array_filter(explode(',', $varInput));
		}

		$objFiles = FilesModel::findMultipleByUuids($arrUuids);

		if ($objFiles === null)
		{
			return;
		}

		$rootDir = System::getContainer()->getParameter('kernel.project_dir');

		foreach ($objFiles as $objFile)
		{
			// Only files can be selected
			if ($this->filesOnly && is_dir($rootDir . '/' . $objFile->path))
			{
				$this->addError($GLOBALS['TL_LANG']['ERR']['filesOnly']);
				break;
			}

			// Only folders can be selected
			if ($this->files === false && !is_dir($rootDir . '/' . $objFile->path))
			{
				$this->addError($GLOBALS['TL_LANG']['ERR']['foldersOnly']);
				break;
			}

			// Only files within a custom path can be selected
			if ($this->path && strpos($objFile->path, $this->path . '/') !== 0)
			{
				$this->addError(sprintf($GLOBALS['TL_LANG']['ERR']['pathOnly'], $this->path));
				break;
			}

			// Only certain file types can be selected
			if ($this->extensions && !is_dir($rootDir . '/' . $objFile->path))
			{
				$objFile = new File($objFile->path);
				$extensions = StringUtil::trimsplit(',', $this->extensions);

				if (!\in_array($objFile->extension, $extensions))
				{
					$this->addError(sprintf($GLOBALS['TL_LANG']['ERR']['extensionsOnly'], $this->extensions));
					break;
				}
			}
		}
	}
protected function checkValue ( $ varInput ) { if ( $ varInput == '' ) { return ; } if ( strpos ( $ varInput , ',' ) === false ) { $ arrUuids = array ( $ varInput ) ; } else { $ arrUuids = array_filter ( explode ( ',' , $ varInput ) ) ; } $ objFiles = FilesModel :: findMultipleByUuids ( $ arrUuids ) ; if ( $ objFiles === null ) { return ; } $ rootDir = System :: getContainer ( ) -> getParameter ( 'kernel.project_dir' ) ; foreach ( $ objFiles as $ objFile ) { // Only files can be selected if ( $ this -> filesOnly && is_dir ( $ rootDir . '/' . $ objFile -> path ) ) { $ this -> addError ( $ GLOBALS [ 'TL_LANG' ] [ 'ERR' ] [ 'filesOnly' ] ) ; break ; } // Only folders can be selected if ( $ this -> files === false && ! is_dir ( $ rootDir . '/' . $ objFile -> path ) ) { $ this -> addError ( $ GLOBALS [ 'TL_LANG' ] [ 'ERR' ] [ 'foldersOnly' ] ) ; break ; } // Only files within a custom path can be selected if ( $ this -> path && strpos ( $ objFile -> path , $ this -> path . '/' ) !== 0 ) { $ this -> addError ( sprintf ( $ GLOBALS [ 'TL_LANG' ] [ 'ERR' ] [ 'pathOnly' ] , $ this -> path ) ) ; break ; } // Only certain file types can be selected if ( $ this -> extensions && ! is_dir ( $ rootDir . '/' . $ objFile -> path ) ) { $ objFile = new File ( $ objFile -> path ) ; $ extensions = StringUtil :: trimsplit ( ',' , $ this -> extensions ) ; if ( ! \ in_array ( $ objFile -> extension , $ extensions ) ) { $ this -> addError ( sprintf ( $ GLOBALS [ 'TL_LANG' ] [ 'ERR' ] [ 'extensionsOnly' ] , $ this -> extensions ) ) ; break ; } } } }
Check the selected value

@param mixed $varInput
Check the selected value