﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
677	Char no usable in url can be use in filemanager (like é or ù)	sblanc74@…		"Hi,

The file manager accept file or folder with char who can't
be read by a browser like
""Canyon du Crêt de la Neige.jpg""
so this file or folder can't be found on the web.

i modify some functions, CreateFolder() and FileUpload
(), in commands.php file to convert this ""bad"" char into
readable char

{{{
function CreateFolder( $resourceType, $currentFolder )
{
$sErrorNumber = '0' ;
$sErrorMsg = '' ;

if ( isset( $_GET['NewFolderName'] ) )
{
$sNewFolderName = $_GET['NewFolderName'] ;
// BEGIN OF CHANGE
$sNewFolderName= strtr
($sNewFolderName,""ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöø
ÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ"",""aaaaaaaaaaaaooooo
oooooooeeeeeeeecciiiiiiiiuuuuuuuuynn"");
$sNewFolderName = preg_replace('([^_a-zA-Z0-9])', '_',
$sNewFolderName ).""_"";
$sNewFolderName = eregi_replace ('^(_)*', '',
$sNewFolderName);
$sNewFolderName = eregi_replace ('(_)*$', '',
$sNewFolderName);
$sNewFolderName = eregi_replace ('(_){2,10}', '_',
$sNewFolderName);

// END OF CHANGE
if ( strpos( $sNewFolderName, '..' ) !== FALSE )
$sErrorNumber = '102' ; // Invalid folder name.
else
{
}}}
{{{
function FileUpload( $resourceType, $currentFolder )
{
$sErrorNumber = '0' ;
$sFileName = '' ;

if ( isset( $_FILES['NewFile'] ) && !is_null( $_FILES
['NewFile']['tmp_name'] ) )
{
$oFile = $_FILES['NewFile'] ;

// Map the virtual path to the local server path.
$sServerDir = ServerMapFolder( $resourceType,
$currentFolder ) ;

// Get the uploaded file name.
$sFileName = $oFile['name'] ;
$sOriginalFileName = $sFileName ;
$sExtension = substr( $sFileName, ( strrpos
($sFileName, '.') + 1 ) ) ;
$sExtension = strtolower( $sExtension ) ;

global $Config ;

$arAllowed = $Config['AllowedExtensions']
[$resourceType] ;
$arDenied = $Config['DeniedExtensions']
[$resourceType] ;

if ( ( count($arAllowed) == 0 || in_array( $sExtension,
$arAllowed ) ) && ( count($arDenied) == 0 || !in_array(
$sExtension, $arDenied ) ) )
{
$iCounter = 0 ;

while ( true )
{
// BEGIN OF CHANGE
$sFileName= strtr
($sFileName,""ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËè
éêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ"",""aaaaaaaaaaaaooooooooooo
oeeeeeeeecciiiiiiiiuuuuuuuuynn"");
$sFileName = preg_replace('([^_a-zA-Z0-9\.])', '_',
$sFileName ).""_"";
$sFileName = eregi_replace ('^(_)*', '', $sFileName);
$sFileName = eregi_replace ('(_)*$', '', $sFileName);
$sFileName = eregi_replace ('(_){2,10}', '_',
$sFileName);

// END OF CHANGE
$sFilePath = $sServerDir . $sFileName ;


if ( is_file( $sFilePath ) )
}}}



Regards
Sylvain B.
----
Moved from SF:[[BR]]
http://sourceforge.net/tracker/index.php?func=detail&aid=1325453&group_id=75348&atid=543653"	Bug	closed	Normal		File Browser		worksforme	SF Pending	
