- * ... All fileoperations must be within the filemount-paths. Further the fileextension MUST validate true with the f_ext array

- *

- * The unzip-function allows unzip only if the destination path has it's f_ext[]['allow'] set to '*'!!

- * You are allowed to copy/move folders within the same 'space' (web/ftp).

- * You are allowed to copy/move folders between spaces (web/ftp) IF the destination has it's f_ext[]['allow'] set to '*'!

- *

- * Advice:

- * You should always exclude php-files from the webspace. This will keep people from uploading, copy/moving and renaming files to the php3/php-extension.

- * You should never mount a ftp_space 'below' the webspace so that it reaches into the webspace. This is because if somebody unzips a zip-file in the ftp-space so that it reaches out into the webspace this will be a violation of the safety

- * For example this is a bad idea: you have an ftp-space that is '/www/' and a web-space that is '/www/htdocs/'

- *

- * @author Kasper Skaarhoj <kasperYYYY@typo3.com>

- * @package TYPO3

- * @subpackage t3lib

- */

-class t3lib_extFileFunctions extends t3lib_basicFileFunctions {

-

- // External static variables:

- // Notice; some of these are overridden in the start() method with values from $GLOBALS['TYPO3_CONF_VARS']['BE']

- var $actionPerms = Array( // This array is self-explaning (look in the class below). It grants access to the functions. This could be set from outside in order to enabled functions to users. See also the function init_actionPerms() which takes input directly from the user-record

- 'deleteFile' => 0, // Deleting files physically

- 'deleteFolder' => 0, // Deleting foldes physically

- 'deleteFolderRecursively' => 0, // normally folders are deleted by the PHP-function rmdir(), but with this option a user deletes with 'rm -Rf ....' which is pretty wild!

- 'moveFile' => 0,

- 'moveFolder' => 0,

- 'copyFile' => 0,

- 'copyFolder' => 0,

- 'newFolder' => 0,

- 'newFile' => 0,

- 'editFile' => 0,

- 'unzipFile' => 0,

- 'uploadFile' => 0,

- 'renameFile' => 0,

- 'renameFolder' => 0

- );

-

- var $recyclerFN = '_recycler_'; // This is regarded to be the recycler folder

- var $useRecycler = 1; // 0 = no, 1 = if available, 2 = always

-

- // Internal, static:

- var $PHPFileFunctions = 0; // If set, all fileoperations are done by the default PHP-functions. This is necessary under windows! On UNIX the system commands by exec() can be used unless safe_mode is enabled