1.6.02 routeur d'espace dans la config de RFM WIP

This commit is contained in:
Fred Tempez 2024-02-28 14:26:32 +01:00
parent f65fe62da7
commit d2dc4c64c0

View File

@ -45,17 +45,8 @@ if (!is_null($u) && !is_null($g) && !is_null($userId)) {
$folder['delete'] = true; $folder['delete'] = true;
$folder['copycut'] = true; $folder['copycut'] = true;
$folder['chmod'] = true; $folder['chmod'] = true;
// Pointe vers le dossier du cours $uploadDir = '/site/file/source/';
if ( $currentPath = '../../../site/file/source/';
isset($courseId)
&& $courseId != 'home'
) {
$uploadDir = '/site/file/source/' . $courseId . '/';
$currentPath = '../../../site/file/source/' . $courseId . '/';
} else {
$uploadDir = '/site/file/source/';
$currentPath = '../../../site/file/source/';
}
break; break;
case 2: case 2:
case 1: case 1:
@ -66,30 +57,24 @@ if (!is_null($u) && !is_null($g) && !is_null($userId)) {
is_null($profil) is_null($profil)
|| $g['profil'][$group][$profil]['filemanager'] === false || $g['profil'][$group][$profil]['filemanager'] === false
) )
exit('Accès interdit'); exit("<h1 style='color: red'>Accès interdit au gestionnaire de fichiers !</h1>");
// lecture du profil
$file = $g['profil'][$group][$profil]['file']; $file = $g['profil'][$group][$profil]['file'];
$folder = $g['profil'][$group][$profil]['folder']; $folder = $g['profil'][$group][$profil]['folder'];
if ( // Chemin du dossier partagé dans le profil
isset($courseId) $sharedPathKey = ($courseId === 'home') ? 'homePath' : 'coursePath';
// Le membre est sur l'accueil $sharedPath = isset($folder[$sharedPathKey]) ? $folder[$sharedPathKey] : '';
&& $courseId === 'home'
) { // Un dossier renvoie vers le dossier confiné
// Le dossier affiché est celui du profil $uploadDir = empty($sharedPath) ? '/site/file/source/' . $courseId . '/' : $sharedPath;
$uploadDir = $g['profil'][$group][$profil]['folder']['path']; // Le premier slash est dans la variable
$currentPath = '../../..' . $g['profil'][$group][$profil]['folder']['path']; $currentPath = '../../..' . $uploadDir . '/';
} else {
// Le membre est dans un espace, forçage vers le dossier de l'espace
$uploadDir = '/site/file/source/' . $courseId . '/';
$currentPath = '../../../site/file/source/' . $courseId . '/';
}
break; break;
default: default:
// Pas d'autorisation d'accès au gestionnaire de fichiers // Pas d'autorisation d'accès au gestionnaire de fichiers
exit('Accès interdit'); exit("<h1 style='color: red'>Accès interdit au gestionnaire de fichiers !</h1>");
} }
} }
@ -144,77 +129,77 @@ define('DEBUG_ERROR_MESSAGE', false); // TRUE or FALSE
$config = array( $config = array(
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| DON'T TOUCH (base url (only domain) of site). | DON'T TOUCH (base url (only domain) of site).
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| without final / (DON'T TOUCH) | without final / (DON'T TOUCH)
| |
*/ */
'base_url' => ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] && !in_array(strtolower($_SERVER['HTTPS']), array('off', 'no'))) ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . rtrim(str_replace('/core/vendor/filemanager', '', pathinfo($_SERVER['PHP_SELF'])['dirname']), ' /'), 'base_url' => ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] && !in_array(strtolower($_SERVER['HTTPS']), array('off', 'no'))) ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . rtrim(str_replace('/core/vendor/filemanager', '', pathinfo($_SERVER['PHP_SELF'])['dirname']), ' /'),
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| path from base_url to base of upload folder | path from base_url to base of upload folder
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| with start and final / | with start and final /
| |
*/ */
'upload_dir' => $uploadDir, 'upload_dir' => $uploadDir,
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| relative path from filemanager folder to upload folder | relative path from filemanager folder to upload folder
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| with final / | with final /
| |
*/ */
'current_path' => $currentPath, 'current_path' => $currentPath,
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| relative path from filemanager folder to thumbs folder | relative path from filemanager folder to thumbs folder
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| with final / | with final /
| DO NOT put inside upload folder | DO NOT put inside upload folder
| |
*/ */
'thumbs_base_path' => '../../../site/file/thumb/', 'thumbs_base_path' => '../../../site/file/thumb/',
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| path from base_url to base of thumbs folder | path from base_url to base of thumbs folder
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| with final / | with final /
| DO NOT put inside upload folder | DO NOT put inside upload folder
| |
*/ */
'thumbs_upload_dir' => '/thumb/', 'thumbs_upload_dir' => '/thumb/',
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| mime file control to define files extensions | mime file control to define files extensions
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| If you want to be forced to assign the extension starting from the mime type | If you want to be forced to assign the extension starting from the mime type
| |
*/ */
'mime_extension_rename' => false, 'mime_extension_rename' => false,
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| FTP configuration BETA VERSION | FTP configuration BETA VERSION
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| If you want enable ftp use write these parametres otherwise leave empty | If you want enable ftp use write these parametres otherwise leave empty
| Remember to set base_url properly to point in the ftp server domain and | Remember to set base_url properly to point in the ftp server domain and
| upload dir will be ftp_base_folder + upload_dir so without final / | upload dir will be ftp_base_folder + upload_dir so without final /
| |
*/ */
'ftp_host' => false, 'ftp_host' => false,
//put the FTP host //put the FTP host
'ftp_user' => "user", 'ftp_user' => "user",
@ -224,52 +209,52 @@ $config = array(
// Directory where place files before to send to FTP with final / // Directory where place files before to send to FTP with final /
'ftp_temp_folder' => "../temp/", 'ftp_temp_folder' => "../temp/",
/* /*
|--------------------------------------------------------------------------- |---------------------------------------------------------------------------
| path from ftp_base_folder to base of thumbs folder with start and final / | path from ftp_base_folder to base of thumbs folder with start and final /
|--------------------------------------------------------------------------- |---------------------------------------------------------------------------
*/ */
'ftp_thumbs_dir' => '/thumbs/', 'ftp_thumbs_dir' => '/thumbs/',
'ftp_ssl' => false, 'ftp_ssl' => false,
'ftp_port' => 21, 'ftp_port' => 21,
/* EXAMPLE /* EXAMPLE
'ftp_host' => "host.com", 'ftp_host' => "host.com",
'ftp_user' => "test@host.com", 'ftp_user' => "test@host.com",
'ftp_pass' => "pass.1", 'ftp_pass' => "pass.1",
'ftp_base_folder' => "", 'ftp_base_folder' => "",
'ftp_base_url' => "http://host.com/testFTP", 'ftp_base_url' => "http://host.com/testFTP",
*/ */
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Multiple files selection | Multiple files selection
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| The user can delete multiple files, select all files , deselect all files | The user can delete multiple files, select all files , deselect all files
*/ */
'multiple_selection' => true, 'multiple_selection' => true,
/* /*
| |
| The user can have a select button that pass a json to external input or pass the first file selected to editor | The user can have a select button that pass a json to external input or pass the first file selected to editor
| If you use responsivefilemanager tinymce extension can copy into editor multiple object like images, videos, audios, links in the same time | If you use responsivefilemanager tinymce extension can copy into editor multiple object like images, videos, audios, links in the same time
| |
*/ */
'multiple_selection_action_button' => true, 'multiple_selection_action_button' => true,
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Access keys | Access keys
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| add access keys eg: array('myPrivateKey', 'someoneElseKey'); | add access keys eg: array('myPrivateKey', 'someoneElseKey');
| keys should only containt (a-z A-Z 0-9 \ . _ -) characters | keys should only containt (a-z A-Z 0-9 \ . _ -) characters
| if you are integrating lets say to a cms for admins, i recommend making keys randomized something like this: | if you are integrating lets say to a cms for admins, i recommend making keys randomized something like this:
| $username = 'Admin'; | $username = 'Admin';
| $salt = 'dsflFWR9u2xQa' (a hard coded string) | $salt = 'dsflFWR9u2xQa' (a hard coded string)
| $akey = md5($username.$salt); | $akey = md5($username.$salt);
| DO NOT use 'key' as access key! | DO NOT use 'key' as access key!
| Keys are CASE SENSITIVE! | Keys are CASE SENSITIVE!
| |
*/ */
'access_keys' => array($privateKey), 'access_keys' => array($privateKey),
@ -278,51 +263,51 @@ $config = array(
//-------------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------------
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Maximum size of all files in source folder | Maximum size of all files in source folder
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| in Megabytes | in Megabytes
| |
*/ */
'MaxSizeTotal' => false, 'MaxSizeTotal' => false,
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Maximum upload size | Maximum upload size
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| in Megabytes | in Megabytes
| |
*/ */
'MaxSizeUpload' => 20000, 'MaxSizeUpload' => 20000,
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| File and Folder permission | File and Folder permission
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
*/ */
'filePermission' => 0644, 'filePermission' => 0644,
'folderPermission' => 0777, 'folderPermission' => 0777,
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| default language file name | default language file name
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
*/ */
'default_language' => 'fr_FR', 'default_language' => 'fr_FR',
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Icon theme | Icon theme
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| Default available: ico and ico_dark | Default available: ico and ico_dark
| Can be set to custom icon inside filemanager/img | Can be set to custom icon inside filemanager/img
| |
*/ */
'icon_theme' => "ico", 'icon_theme' => "ico",
@ -360,12 +345,12 @@ $config = array(
'image_max_height' => 0, 'image_max_height' => 0,
'image_max_mode' => 'auto', 'image_max_mode' => 'auto',
/* /*
# $option: 0 / exact = defined size; # $option: 0 / exact = defined size;
# 1 / portrait = keep aspect set height; # 1 / portrait = keep aspect set height;
# 2 / landscape = keep aspect set width; # 2 / landscape = keep aspect set width;
# 3 / auto = auto; # 3 / auto = auto;
# 4 / crop= resize and crop; # 4 / crop= resize and crop;
*/ */
//Automatic resizing // //Automatic resizing //
// If you set $image_resizing to TRUE the script converts all uploaded images exactly to image_resizing_width x image_resizing_height dimension // If you set $image_resizing to TRUE the script converts all uploaded images exactly to image_resizing_width x image_resizing_height dimension
@ -500,13 +485,13 @@ $config = array(
'empty_filename' => false, 'empty_filename' => false,
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| accept files without extension | accept files without extension
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| If you want to accept files without extension, remember to add '' extension on allowed extension | If you want to accept files without extension, remember to add '' extension on allowed extension
| |
*/ */
'files_without_extension' => false, 'files_without_extension' => false,
/****************** /******************
@ -627,12 +612,12 @@ $config = array(
'fixed_image_creation_height' => array(480), 'fixed_image_creation_height' => array(480),
//height of image //height of image
/* /*
# $option: 0 / exact = defined size; # $option: 0 / exact = defined size;
# 1 / portrait = keep aspect set height; # 1 / portrait = keep aspect set height;
# 2 / landscape = keep aspect set width; # 2 / landscape = keep aspect set width;
# 3 / auto = auto; # 3 / auto = auto;
# 4 / crop= resize and crop; # 4 / crop= resize and crop;
*/ */
'fixed_image_creation_option' => array('auto', 'crop'), 'fixed_image_creation_option' => array('auto', 'crop'),
//set the type of the crop //set the type of the crop
@ -655,12 +640,12 @@ $config = array(
'relative_image_creation_height' => array(200, 300), 'relative_image_creation_height' => array(200, 300),
//height of image //height of image
/* /*
# $option: 0 / exact = defined size; # $option: 0 / exact = defined size;
# 1 / portrait = keep aspect set height; # 1 / portrait = keep aspect set height;
# 2 / landscape = keep aspect set width; # 2 / landscape = keep aspect set width;
# 3 / auto = auto; # 3 / auto = auto;
# 4 / crop= resize and crop; # 4 / crop= resize and crop;
*/ */
'relative_image_creation_option' => array('crop', 'crop'), 'relative_image_creation_option' => array('crop', 'crop'),
//set the type of the crop //set the type of the crop