Index: branches/5.1.x/core/editor/editor/filemanager/connectors/php/commands.php
===================================================================
diff -u -N -r13086 -r14241
--- branches/5.1.x/core/editor/editor/filemanager/connectors/php/commands.php (.../commands.php) (revision 13086)
+++ branches/5.1.x/core/editor/editor/filemanager/connectors/php/commands.php (.../commands.php) (revision 14241)
@@ -1,272 +1,272 @@
-' ;
- }
-
- closedir( $oCurrentFolder ) ;
-
- // Open the "Folders" node.
- echo "" ;
-
- natcasesort( $aFolders ) ;
- foreach ( $aFolders as $sFolder )
- echo $sFolder ;
-
- // Close the "Folders" node.
- echo "" ;
-}
-
-function GetFoldersAndFiles( $resourceType, $currentFolder )
-{
- // Map the virtual path to the local server path.
- $sServerDir = ServerMapFolder( $resourceType, $currentFolder, 'GetFoldersAndFiles' ) ;
-
- // Arrays that will hold the folders and files names.
- $aFolders = array() ;
- $aFiles = array() ;
-
- $oCurrentFolder = opendir( $sServerDir ) ;
-
- while ( $sFile = readdir( $oCurrentFolder ) )
- {
- if ( $sFile != '.' && $sFile != '..' )
- {
- if ( is_dir( $sServerDir . $sFile ) )
- $aFolders[] = '' ;
- else
- {
- $iFileSize = @filesize( $sServerDir . $sFile ) ;
- if ( !$iFileSize ) {
- $iFileSize = 0 ;
- }
- if ( $iFileSize > 0 )
- {
- $iFileSize = round( $iFileSize / 1024 ) ;
- if ( $iFileSize < 1 ) $iFileSize = 1 ;
- }
-
- $aFiles[] = '' ;
- }
- }
- }
-
- // Send the folders
- natcasesort( $aFolders ) ;
- echo '' ;
-
- foreach ( $aFolders as $sFolder )
- echo $sFolder ;
-
- echo '' ;
-
- // Send the files
- natcasesort( $aFiles ) ;
- echo '' ;
-
- foreach ( $aFiles as $sFiles )
- echo $sFiles ;
-
- echo '' ;
-}
-
-function CreateFolder( $resourceType, $currentFolder )
-{
- if (!isset($_GET)) {
- global $_GET;
- }
- $sErrorNumber = '0' ;
- $sErrorMsg = '' ;
-
- if ( isset( $_GET['NewFolderName'] ) )
- {
- $sNewFolderName = $_GET['NewFolderName'] ;
- $sNewFolderName = SanitizeFolderName( $sNewFolderName ) ;
-
- if ( strpos( $sNewFolderName, '..' ) !== FALSE )
- $sErrorNumber = '102' ; // Invalid folder name.
- else
- {
- // Map the virtual path to the local server path of the current folder.
- $sServerDir = ServerMapFolder( $resourceType, $currentFolder, 'CreateFolder' ) ;
-
- if ( is_writable( $sServerDir ) )
- {
- $sServerDir .= $sNewFolderName ;
-
- $sErrorMsg = CreateServerFolder( $sServerDir ) ;
-
- switch ( $sErrorMsg )
- {
- case '' :
- $sErrorNumber = '0' ;
- break ;
- case 'Invalid argument' :
- case 'No such file or directory' :
- $sErrorNumber = '102' ; // Path too long.
- break ;
- default :
- $sErrorNumber = '110' ;
- break ;
- }
- }
- else
- $sErrorNumber = '103' ;
- }
- }
- else
- $sErrorNumber = '102' ;
-
- // Create the "Error" node.
- echo '' ;
-}
-
-function FileUpload( $resourceType, $currentFolder, $sCommand )
-{
- if (!isset($_FILES)) {
- global $_FILES;
- }
- $sErrorNumber = '0' ;
- $sFileName = '' ;
-
- if ( isset( $_FILES['NewFile'] ) && !is_null( $_FILES['NewFile']['tmp_name'] ) )
- {
- global $Config ;
-
- $oFile = $_FILES['NewFile'] ;
-
- // Map the virtual path to the local server path.
- $sServerDir = ServerMapFolder( $resourceType, $currentFolder, $sCommand ) ;
-
- // Get the uploaded file name.
- $sFileName = $oFile['name'] ;
- $sFileName = SanitizeFileName( $sFileName ) ;
-
- $sOriginalFileName = $sFileName ;
-
- // Get the extension.
- $sExtension = substr( $sFileName, ( strrpos($sFileName, '.') + 1 ) ) ;
- $sExtension = strtolower( $sExtension ) ;
-
- if ( isset( $Config['SecureImageUploads'] ) )
- {
- if ( ( $isImageValid = IsImageValid( $oFile['tmp_name'], $sExtension ) ) === false )
- {
- $sErrorNumber = '202' ;
- }
- }
-
- if ( isset( $Config['HtmlExtensions'] ) )
- {
- if ( !IsHtmlExtension( $sExtension, $Config['HtmlExtensions'] ) &&
- ( $detectHtml = DetectHtml( $oFile['tmp_name'] ) ) === true )
- {
- $sErrorNumber = '202' ;
- }
- }
-
- // Check if it is an allowed extension.
- if ( !$sErrorNumber && IsAllowedExt( $sExtension, $resourceType ) )
- {
- $iCounter = 0 ;
-
- while ( true )
- {
- $sFilePath = $sServerDir . $sFileName ;
-
- if ( is_file( $sFilePath ) )
- {
- $iCounter++ ;
- $sFileName = RemoveExtension( $sOriginalFileName ) . '(' . $iCounter . ').' . $sExtension ;
- $sErrorNumber = '201' ;
- }
- else
- {
- move_uploaded_file( $oFile['tmp_name'], $sFilePath ) ;
-
- if ( is_file( $sFilePath ) )
- {
- if ( isset( $Config['ChmodOnUpload'] ) && !$Config['ChmodOnUpload'] )
- {
- break ;
- }
-
- $permissions = 0777;
-
- if ( isset( $Config['ChmodOnUpload'] ) && $Config['ChmodOnUpload'] )
- {
- $permissions = $Config['ChmodOnUpload'] ;
- }
-
- $oldumask = umask(0) ;
- chmod( $sFilePath, $permissions ) ;
- umask( $oldumask ) ;
- }
-
- break ;
- }
- }
-
- if ( file_exists( $sFilePath ) )
- {
- //previous checks failed, try once again
- if ( isset( $isImageValid ) && $isImageValid === -1 && IsImageValid( $sFilePath, $sExtension ) === false )
- {
- @unlink( $sFilePath ) ;
- $sErrorNumber = '202' ;
- }
- else if ( isset( $detectHtml ) && $detectHtml === -1 && DetectHtml( $sFilePath ) === true )
- {
- @unlink( $sFilePath ) ;
- $sErrorNumber = '202' ;
- }
- }
- }
- else
- $sErrorNumber = '202' ;
- }
- else
- $sErrorNumber = '202' ;
-
-
- $sFileUrl = CombinePaths( GetResourceTypePath( $resourceType, $sCommand ) , $currentFolder ) ;
- $sFileUrl = CombinePaths( $sFileUrl, $sFileName ) ;
-
- SendUploadResults( $sErrorNumber, $sFileUrl, $sFileName ) ;
-
- exit ;
+' ;
+ }
+
+ closedir( $oCurrentFolder ) ;
+
+ // Open the "Folders" node.
+ echo "" ;
+
+ natcasesort( $aFolders ) ;
+ foreach ( $aFolders as $sFolder )
+ echo $sFolder ;
+
+ // Close the "Folders" node.
+ echo "" ;
+}
+
+function GetFoldersAndFiles( $resourceType, $currentFolder )
+{
+ // Map the virtual path to the local server path.
+ $sServerDir = ServerMapFolder( $resourceType, $currentFolder, 'GetFoldersAndFiles' ) ;
+
+ // Arrays that will hold the folders and files names.
+ $aFolders = array() ;
+ $aFiles = array() ;
+
+ $oCurrentFolder = opendir( $sServerDir ) ;
+
+ while ( $sFile = readdir( $oCurrentFolder ) )
+ {
+ if ( $sFile != '.' && $sFile != '..' )
+ {
+ if ( is_dir( $sServerDir . $sFile ) )
+ $aFolders[] = '' ;
+ else
+ {
+ $iFileSize = @filesize( $sServerDir . $sFile ) ;
+ if ( !$iFileSize ) {
+ $iFileSize = 0 ;
+ }
+ if ( $iFileSize > 0 )
+ {
+ $iFileSize = round( $iFileSize / 1024 ) ;
+ if ( $iFileSize < 1 ) $iFileSize = 1 ;
+ }
+
+ $aFiles[] = '' ;
+ }
+ }
+ }
+
+ // Send the folders
+ natcasesort( $aFolders ) ;
+ echo '' ;
+
+ foreach ( $aFolders as $sFolder )
+ echo $sFolder ;
+
+ echo '' ;
+
+ // Send the files
+ natcasesort( $aFiles ) ;
+ echo '' ;
+
+ foreach ( $aFiles as $sFiles )
+ echo $sFiles ;
+
+ echo '' ;
+}
+
+function CreateFolder( $resourceType, $currentFolder )
+{
+ if (!isset($_GET)) {
+ global $_GET;
+ }
+ $sErrorNumber = '0' ;
+ $sErrorMsg = '' ;
+
+ if ( isset( $_GET['NewFolderName'] ) )
+ {
+ $sNewFolderName = $_GET['NewFolderName'] ;
+ $sNewFolderName = SanitizeFolderName( $sNewFolderName ) ;
+
+ if ( strpos( $sNewFolderName, '..' ) !== FALSE )
+ $sErrorNumber = '102' ; // Invalid folder name.
+ else
+ {
+ // Map the virtual path to the local server path of the current folder.
+ $sServerDir = ServerMapFolder( $resourceType, $currentFolder, 'CreateFolder' ) ;
+
+ if ( is_writable( $sServerDir ) )
+ {
+ $sServerDir .= $sNewFolderName ;
+
+ $sErrorMsg = CreateServerFolder( $sServerDir ) ;
+
+ switch ( $sErrorMsg )
+ {
+ case '' :
+ $sErrorNumber = '0' ;
+ break ;
+ case 'Invalid argument' :
+ case 'No such file or directory' :
+ $sErrorNumber = '102' ; // Path too long.
+ break ;
+ default :
+ $sErrorNumber = '110' ;
+ break ;
+ }
+ }
+ else
+ $sErrorNumber = '103' ;
+ }
+ }
+ else
+ $sErrorNumber = '102' ;
+
+ // Create the "Error" node.
+ echo '' ;
+}
+
+function FileUpload( $resourceType, $currentFolder, $sCommand )
+{
+ if (!isset($_FILES)) {
+ global $_FILES;
+ }
+ $sErrorNumber = '0' ;
+ $sFileName = '' ;
+
+ if ( isset( $_FILES['NewFile'] ) && !is_null( $_FILES['NewFile']['tmp_name'] ) )
+ {
+ global $Config ;
+
+ $oFile = $_FILES['NewFile'] ;
+
+ // Map the virtual path to the local server path.
+ $sServerDir = ServerMapFolder( $resourceType, $currentFolder, $sCommand ) ;
+
+ // Get the uploaded file name.
+ $sFileName = $oFile['name'] ;
+ $sFileName = SanitizeFileName( $sFileName ) ;
+
+ $sOriginalFileName = $sFileName ;
+
+ // Get the extension.
+ $sExtension = substr( $sFileName, ( strrpos($sFileName, '.') + 1 ) ) ;
+ $sExtension = strtolower( $sExtension ) ;
+
+ if ( isset( $Config['SecureImageUploads'] ) )
+ {
+ if ( ( $isImageValid = IsImageValid( $oFile['tmp_name'], $sExtension ) ) === false )
+ {
+ $sErrorNumber = '202' ;
+ }
+ }
+
+ if ( isset( $Config['HtmlExtensions'] ) )
+ {
+ if ( !IsHtmlExtension( $sExtension, $Config['HtmlExtensions'] ) &&
+ ( $detectHtml = DetectHtml( $oFile['tmp_name'] ) ) === true )
+ {
+ $sErrorNumber = '202' ;
+ }
+ }
+
+ // Check if it is an allowed extension.
+ if ( !$sErrorNumber && IsAllowedExt( $sExtension, $resourceType ) )
+ {
+ $iCounter = 0 ;
+
+ while ( true )
+ {
+ $sFilePath = $sServerDir . $sFileName ;
+
+ if ( is_file( $sFilePath ) )
+ {
+ $iCounter++ ;
+ $sFileName = RemoveExtension( $sOriginalFileName ) . '(' . $iCounter . ').' . $sExtension ;
+ $sErrorNumber = '201' ;
+ }
+ else
+ {
+ move_uploaded_file( $oFile['tmp_name'], $sFilePath ) ;
+
+ if ( is_file( $sFilePath ) )
+ {
+ if ( isset( $Config['ChmodOnUpload'] ) && !$Config['ChmodOnUpload'] )
+ {
+ break ;
+ }
+
+ $permissions = 0777;
+
+ if ( isset( $Config['ChmodOnUpload'] ) && $Config['ChmodOnUpload'] )
+ {
+ $permissions = $Config['ChmodOnUpload'] ;
+ }
+
+ $oldumask = umask(0) ;
+ chmod( $sFilePath, $permissions ) ;
+ umask( $oldumask ) ;
+ }
+
+ break ;
+ }
+ }
+
+ if ( file_exists( $sFilePath ) )
+ {
+ //previous checks failed, try once again
+ if ( isset( $isImageValid ) && $isImageValid === -1 && IsImageValid( $sFilePath, $sExtension ) === false )
+ {
+ @unlink( $sFilePath ) ;
+ $sErrorNumber = '202' ;
+ }
+ else if ( isset( $detectHtml ) && $detectHtml === -1 && DetectHtml( $sFilePath ) === true )
+ {
+ @unlink( $sFilePath ) ;
+ $sErrorNumber = '202' ;
+ }
+ }
+ }
+ else
+ $sErrorNumber = '202' ;
+ }
+ else
+ $sErrorNumber = '202' ;
+
+
+ $sFileUrl = CombinePaths( GetResourceTypePath( $resourceType, $sCommand ) , $currentFolder ) ;
+ $sFileUrl = CombinePaths( $sFileUrl, $sFileName ) ;
+
+ SendUploadResults( $sErrorNumber, $sFileUrl, $sFileName ) ;
+
+ exit ;
}
\ No newline at end of file