Bonjour, bonjour tout le monde !

Je travaille actuellement sur un site web d'un client qui souhaite y intégrer FCKEditor comme éditeur WYSIWYG.
J'ai pas mal touché aux nombreuses config afin qu'il corresponde au mieux à ses besoins mais je bute sur la limitation des dimensions d'une image lors de l'upload avec ImageUpload.

Voici la partie modifiée du fichier commands.php (fckeditor/editor/filemanager/connectors/php/commands.php) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
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'] ;
		
		$size = getimagesize($_FILES['NewFile']['tmp_name']);
		$width = $size[0];
		$height = $size[1];
		
		if ($width <= $Config['MaxWidthImageUpload'] && $width <= $Config['MaxHeightImageUpload']) {

			// 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 exit();
	}
	else
		$sErrorNumber = '202' ;


	$sFileUrl = CombinePaths( GetResourceTypePath( $resourceType, $sCommand ) , $currentFolder ) ;
	$sFileUrl = CombinePaths( $sFileUrl, $sFileName ) ;

	SendUploadResults( $sErrorNumber, $sFileUrl, $sFileName ) ;

	exit ;
}

Puis j'ai rajouté les deux lignes suivantes dans config.php (fckeditor/editor/filemanager/connectors/php/commands.php)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
$Config['MaxWidthImageUpload'] = 100;
$Config['MaxHeightImageUpload'] = 100;
En testant, j'ai l'impression que le code fonctionne bien, mais le fait d'uploader une image trop grande me fait planter le script - c'est le exit() -

Je pense avoir trouvé une solution... En supprimant le exit() et en créant un nouveau $sErrorNumber dans un des fichiers de FCKEditor ce qui me permettrait d'afficher une erreur js avec un message personnalisé, mais je ne sais pas où le trouver...

Pouvez-vous m'aider ?

Merci d'avance