forked from ZwiiCMS-Team/ZwiiCMS
Gestion des fichiers par certains membres
This commit is contained in:
parent
5d09fb6146
commit
ff93b545b9
@ -2683,6 +2683,7 @@ class layout extends common {
|
|||||||
$items .= '<span id="footerDisplayMemberAccount"';
|
$items .= '<span id="footerDisplayMemberAccount"';
|
||||||
$items .= $this->getData(['theme','footer','displaymemberAccount']) === false ? ' class="displayNone"' : '';
|
$items .= $this->getData(['theme','footer','displaymemberAccount']) === false ? ' class="displayNone"' : '';
|
||||||
$items .= '><wbr> | <a href="' . helper::baseUrl() . 'user/edit/' . $this->getUser('id'). '/' . $_SESSION['csrf'] . '" data-tippy-content="Gérer mon compte" >' . template::ico('user', 'all') . '</a>';
|
$items .= '><wbr> | <a href="' . helper::baseUrl() . 'user/edit/' . $this->getUser('id'). '/' . $_SESSION['csrf'] . '" data-tippy-content="Gérer mon compte" >' . template::ico('user', 'all') . '</a>';
|
||||||
|
if( $this->getData(['user', $this->getUser('id') , 'files']) === true) $items .= '<wbr><a href="' . helper::baseUrl(false) . 'core/vendor/filemanager/dialog.php?type=0&akey=' . md5_file(self::DATA_DIR.'core.json') .'" data-tippy-content="Gérer les fichiers" data-lity>' . template::ico('folder') . '</a>';
|
||||||
$items .= '<wbr><a id="barLogout" href="' . helper::baseUrl() . 'user/logout" data-tippy-content="Me déconnecter">' . template::ico('logout','left') . '</a>';
|
$items .= '<wbr><a id="barLogout" href="' . helper::baseUrl() . 'user/logout" data-tippy-content="Me déconnecter">' . template::ico('logout','left') . '</a>';
|
||||||
$items .= '</span>';
|
$items .= '</span>';
|
||||||
}
|
}
|
||||||
@ -2914,6 +2915,7 @@ class layout extends common {
|
|||||||
|| $this->getData(['theme','footer','displayMemberBar']) === false
|
|| $this->getData(['theme','footer','displayMemberBar']) === false
|
||||||
)
|
)
|
||||||
) {
|
) {
|
||||||
|
if( $this->getData(['user', $this->getUser('id') , 'files']) === true) $itemsRight .= '<li><a href="' . helper::baseUrl(false) . 'core/vendor/filemanager/dialog.php?type=0&akey=' . md5_file(self::DATA_DIR.'core.json') .'" data-tippy-content="Gérer les fichiers" data-lity>' . template::ico('folder') . '</a></li>';
|
||||||
$itemsRight .= '<li><a href="' . helper::baseUrl() . 'user/edit/' . $this->getUser('id'). '/' . $_SESSION['csrf'] . '" data-tippy-content="Gérer mon compte">' . template::ico('user', 'right') . '</a></li>';
|
$itemsRight .= '<li><a href="' . helper::baseUrl() . 'user/edit/' . $this->getUser('id'). '/' . $_SESSION['csrf'] . '" data-tippy-content="Gérer mon compte">' . template::ico('user', 'right') . '</a></li>';
|
||||||
$itemsRight .= '<li><a id="barLogout" href="' . helper::baseUrl() . 'user/logout" data-tippy-content="Me déconnecter">' . template::ico('logout') . '</a></li>';
|
$itemsRight .= '<li><a id="barLogout" href="' . helper::baseUrl() . 'user/logout" data-tippy-content="Me déconnecter">' . template::ico('logout') . '</a></li>';
|
||||||
}
|
}
|
||||||
|
@ -87,7 +87,8 @@ class user extends common {
|
|||||||
"connectTimeout" => null,
|
"connectTimeout" => null,
|
||||||
"accessUrl" => null,
|
"accessUrl" => null,
|
||||||
"accessTimer" => null,
|
"accessTimer" => null,
|
||||||
"accessCsrf" => null
|
"accessCsrf" => null,
|
||||||
|
"files" => $this->getInput('userAddFiles', helper::FILTER_BOOLEAN)
|
||||||
]
|
]
|
||||||
]);
|
]);
|
||||||
|
|
||||||
@ -256,7 +257,8 @@ class user extends common {
|
|||||||
'connectTimeout' => $this->getData(['user',$this->getUrl(2),'connectTimeout']),
|
'connectTimeout' => $this->getData(['user',$this->getUrl(2),'connectTimeout']),
|
||||||
'accessUrl' => $this->getData(['user',$this->getUrl(2),'accessUrl']),
|
'accessUrl' => $this->getData(['user',$this->getUrl(2),'accessUrl']),
|
||||||
'accessTimer' => $this->getData(['user',$this->getUrl(2),'accessTimer']),
|
'accessTimer' => $this->getData(['user',$this->getUrl(2),'accessTimer']),
|
||||||
'accessCsrf' => $this->getData(['user',$this->getUrl(2),'accessCsrf'])
|
'accessCsrf' => $this->getData(['user',$this->getUrl(2),'accessCsrf']),
|
||||||
|
'files' => $this->getInput('userEditFiles', helper::FILTER_BOOLEAN)
|
||||||
]
|
]
|
||||||
]);
|
]);
|
||||||
// Redirection spécifique si l'utilisateur change son mot de passe
|
// Redirection spécifique si l'utilisateur change son mot de passe
|
||||||
@ -714,4 +716,4 @@ class user extends common {
|
|||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -42,4 +42,29 @@ $("#userAddId").on("change keydown keyup", function(event) {
|
|||||||
$("#userAddGroup").on("change", function() {
|
$("#userAddGroup").on("change", function() {
|
||||||
$(".userAddGroupDescription").hide();
|
$(".userAddGroupDescription").hide();
|
||||||
$("#userAddGroupDescription" + $(this).val()).show();
|
$("#userAddGroupDescription" + $(this).val()).show();
|
||||||
}).trigger("change");
|
}).trigger("change");
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Autorisation d'upload et de download pour un membre
|
||||||
|
*/
|
||||||
|
$(document).ready(function(){
|
||||||
|
if($("#userAddGroup").val() === '1') {
|
||||||
|
$("#userAddMemberFiles").slideDown();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$("#userAddMemberFiles").slideUp(function() {
|
||||||
|
$("#userAddtFiles").prop("checked", false).trigger("change");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#userAddGroup").on("change", function() {
|
||||||
|
if($("#userAddGroup").val() === '1') {
|
||||||
|
$("#userAddMemberFiles").slideDown();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$("#userAddMemberFiles").slideUp(function() {
|
||||||
|
$("#userAddFiles").prop("checked", false).trigger("change");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}).trigger("change");
|
||||||
|
@ -46,6 +46,11 @@
|
|||||||
'label' => 'Groupe',
|
'label' => 'Groupe',
|
||||||
'selected' => self::GROUP_MEMBER
|
'selected' => self::GROUP_MEMBER
|
||||||
]); ?>
|
]); ?>
|
||||||
|
<div id="userAddMemberFiles" class="displayNone">
|
||||||
|
<?php echo template::checkbox('userAddFiles', true, 'Updown et download autorisés', [
|
||||||
|
'checked' => false
|
||||||
|
]); ?>
|
||||||
|
</div>
|
||||||
Autorisations :
|
Autorisations :
|
||||||
<ul id="userAddGroupDescription<?php echo self::GROUP_MEMBER; ?>" class="userAddGroupDescription displayNone">
|
<ul id="userAddGroupDescription<?php echo self::GROUP_MEMBER; ?>" class="userAddGroupDescription displayNone">
|
||||||
<li>Accès aux pages privées membres</li>
|
<li>Accès aux pages privées membres</li>
|
||||||
|
@ -22,4 +22,28 @@ $("#userEditGroup").on("change", function() {
|
|||||||
} else {
|
} else {
|
||||||
$("#userEditLabelAuth").css("display","inline-block");
|
$("#userEditLabelAuth").css("display","inline-block");
|
||||||
}
|
}
|
||||||
}).trigger("change");
|
}).trigger("change");
|
||||||
|
|
||||||
|
$(document).ready(function(){
|
||||||
|
// Membre avec ou sans gestion de fichiers
|
||||||
|
if($("#userEditGroup").val() === '1') {
|
||||||
|
$("#userEditMemberFiles").slideDown();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$("#userEditMemberFiles").slideUp(function() {
|
||||||
|
$("#userEditFiles").prop("checked", false).trigger("change");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#userEditGroup").on("change", function() {
|
||||||
|
// Membre avec ou sans gestion de fichiers
|
||||||
|
if($("#userEditGroup").val() === '1') {
|
||||||
|
$("#userEditMemberFiles").slideDown();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$("#userEditMemberFiles").slideUp(function() {
|
||||||
|
$("#userEditFiles").prop("checked", false).trigger("change");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}).trigger("change");
|
||||||
|
@ -64,7 +64,13 @@
|
|||||||
'label' => 'Groupe',
|
'label' => 'Groupe',
|
||||||
'selected' => $this->getData(['user', $this->getUrl(2), 'group'])
|
'selected' => $this->getData(['user', $this->getUrl(2), 'group'])
|
||||||
]); ?>
|
]); ?>
|
||||||
<div id="userEditLabelAuth">Autorisations :</div>
|
<div id="userEditMemberFiles" class="displayNone">
|
||||||
|
<?php echo template::checkbox('userEditFiles', true, 'Updown et download autorisés', [
|
||||||
|
'checked' => $this->getData(['user', $this->getUrl(2), 'files']),
|
||||||
|
'help' => 'Ce membre pourra déposer ou télécharger des fichiers dans le dossier \'updown\' et ses sous-dossiers'
|
||||||
|
]); ?>
|
||||||
|
</div>
|
||||||
|
<div id="userEditLabelAuth">Autorisations :</div>
|
||||||
<ul id="userEditGroupDescription<?php echo self::GROUP_MEMBER; ?>" class="userEditGroupDescription displayNone">
|
<ul id="userEditGroupDescription<?php echo self::GROUP_MEMBER; ?>" class="userEditGroupDescription displayNone">
|
||||||
<li>Accès aux pages privées membres</li>
|
<li>Accès aux pages privées membres</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
114
core/vendor/filemanager/config/config.php
vendored
114
core/vendor/filemanager/config/config.php
vendored
@ -13,6 +13,75 @@ ob_start('mb_output_handler');
|
|||||||
date_default_timezone_set('Europe/Paris');
|
date_default_timezone_set('Europe/Paris');
|
||||||
setlocale(LC_CTYPE, 'fr_FR'); //correct transliteration
|
setlocale(LC_CTYPE, 'fr_FR'); //correct transliteration
|
||||||
|
|
||||||
|
/* Lecture du groupe de l'utilisateur connecté pour attribuer les droits et les dossiers */
|
||||||
|
$userId = $_COOKIE['ZWII_USER_ID'];
|
||||||
|
$json = file_get_contents('../../../site/data/user.json');
|
||||||
|
$tab = json_decode($json, true);
|
||||||
|
$group = $tab['user'][$userId]['group'];
|
||||||
|
$uploadDir = '/site/file/source/';
|
||||||
|
$currentPath = '../../../site/file/source/';
|
||||||
|
if( $group === 3){
|
||||||
|
// Administrateur, droits maximum
|
||||||
|
$deleteFiles = true;
|
||||||
|
$createFolders = true;
|
||||||
|
$deleteFolders = true;
|
||||||
|
$uploadFiles = true;
|
||||||
|
$renameFiles = true;
|
||||||
|
$renameFolders = true;
|
||||||
|
$duplicateFiles = true;
|
||||||
|
$extractFiles = true;
|
||||||
|
$copycutFiles = true;
|
||||||
|
$copycutDirs = true;
|
||||||
|
$chmodFiles = true;
|
||||||
|
$chmodDirs = true;
|
||||||
|
$previewtextFiles = true;
|
||||||
|
$edittextFiles = true;
|
||||||
|
$createtextFiles = true;
|
||||||
|
$downloadFiles = true;
|
||||||
|
}
|
||||||
|
elseif( $group === 2){
|
||||||
|
// Modérateur éditeur
|
||||||
|
$deleteFiles = false;
|
||||||
|
$createFolders = true;
|
||||||
|
$deleteFolders = false;
|
||||||
|
$uploadFiles = true;
|
||||||
|
$renameFiles = true;
|
||||||
|
$renameFolders = false;
|
||||||
|
$duplicateFiles = true;
|
||||||
|
$extractFiles = true;
|
||||||
|
$copycutFiles = true;
|
||||||
|
$copycutDirs = false;
|
||||||
|
$chmodFiles = false;
|
||||||
|
$chmodDirs = false;
|
||||||
|
$previewtextFiles = true;
|
||||||
|
$edittextFiles = true;
|
||||||
|
$createtextFiles = true;
|
||||||
|
$downloadFiles = true;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
// Membre avec droits d'upload / download
|
||||||
|
$uploadDir = '/site/file/source/updown/';
|
||||||
|
$currentPath = '../../../site/file/source/updown/';
|
||||||
|
if(!is_dir('../../../site/file/source/updown')) mkdir ('../../../site/file/source/updown');
|
||||||
|
$deleteFiles = false;
|
||||||
|
$createFolders = false;
|
||||||
|
$deleteFolders = false;
|
||||||
|
$uploadFiles = true;
|
||||||
|
$renameFiles = false;
|
||||||
|
$renameFolders = false;
|
||||||
|
$duplicateFiles = false;
|
||||||
|
$extractFiles = false;
|
||||||
|
$copycutFiles = true;
|
||||||
|
$copycutDirs = false;
|
||||||
|
$chmodFiles = false;
|
||||||
|
$chmodDirs = false;
|
||||||
|
$previewtextFiles = false;
|
||||||
|
$edittextFiles = false;
|
||||||
|
$createtextFiles = false;
|
||||||
|
$downloadFiles = true;
|
||||||
|
}
|
||||||
|
/* Fin lecture du groupe de l'utilisateur connecté pour attribuer les droits et les dossiers */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
| Optional security
|
| Optional security
|
||||||
@ -77,7 +146,7 @@ $config = array(
|
|||||||
| with start and final /
|
| with start and final /
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
'upload_dir' => '/site/file/source/',
|
'upload_dir' => $uploadDir,
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
| relative path from filemanager folder to upload folder
|
| relative path from filemanager folder to upload folder
|
||||||
@ -86,7 +155,7 @@ $config = array(
|
|||||||
| with final /
|
| with final /
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
'current_path' => '../../../site/file/source/',
|
'current_path' => $currentPath,
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
@ -128,7 +197,7 @@ $config = array(
|
|||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
|
|
|
|
||||||
| 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 /
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
@ -299,7 +368,7 @@ $config = array(
|
|||||||
//******************
|
//******************
|
||||||
//
|
//
|
||||||
// WATERMARK IMAGE
|
// WATERMARK IMAGE
|
||||||
//
|
//
|
||||||
//Watermark path or false
|
//Watermark path or false
|
||||||
'image_watermark' => false,//"../watermark.png",
|
'image_watermark' => false,//"../watermark.png",
|
||||||
# Could be a pre-determined position such as:
|
# Could be a pre-determined position such as:
|
||||||
@ -336,22 +405,23 @@ $config = array(
|
|||||||
//*************************
|
//*************************
|
||||||
//Permissions configuration
|
//Permissions configuration
|
||||||
//******************
|
//******************
|
||||||
'delete_files' => true,
|
|
||||||
'create_folders' => true,
|
'delete_files' => $deleteFiles,
|
||||||
'delete_folders' => true,
|
'create_folders' => $createFolders,
|
||||||
'upload_files' => true,
|
'delete_folders' => $deleteFolders,
|
||||||
'rename_files' => true,
|
'upload_files' => $uploadFiles,
|
||||||
'rename_folders' => true,
|
'rename_files' => $renameFiles,
|
||||||
'duplicate_files' => true,
|
'rename_folders' => $renameFolders,
|
||||||
'extract_files' => true,
|
'duplicate_files' => $duplicateFiles,
|
||||||
'copy_cut_files' => true, // for copy/cut files
|
'extract_files' => $extractFiles,
|
||||||
'copy_cut_dirs' => true, // for copy/cut directories
|
'copy_cut_files' => $copycutFiles, // for copy/cut files
|
||||||
'chmod_files' => true, // change file permissions
|
'copy_cut_dirs' => $copycutDirs, // for copy/cut directories
|
||||||
'chmod_dirs' => true, // change folder permissions
|
'chmod_files' => $chmodFiles, // change file permissions
|
||||||
'preview_text_files' => true, // eg.: txt, log etc.
|
'chmod_dirs' => $chmodDirs, // change folder permissions
|
||||||
'edit_text_files' => true, // eg.: txt, log etc.
|
'preview_text_files' => $previewtextFiles, // eg.: txt, log etc.
|
||||||
'create_text_files' => true, // only create files with exts. defined in $config['editable_text_file_exts']
|
'edit_text_files' => $edittextFiles, // eg.: txt, log etc.
|
||||||
'download_files' => true, // allow download files or just preview
|
'create_text_files' => $createtextFiles, // only create files with exts. defined in $config['editable_text_file_exts']
|
||||||
|
'download_files' => $downloadFiles, // allow download files or just preview
|
||||||
|
|
||||||
// you can preview these type of files if $preview_text_files is true
|
// you can preview these type of files if $preview_text_files is true
|
||||||
'previewable_text_file_exts' => array( "bsh", "c","css", "cc", "cpp", "cs", "csh", "cyc", "cv", "htm", "html", "java", "js", "m", "mxml", "perl", "pl", "pm", "py", "rb", "sh", "xhtml", "xml","xsl",'txt', 'log', 'gpx', 'kml', '' ),
|
'previewable_text_file_exts' => array( "bsh", "c","css", "cc", "cpp", "cs", "csh", "cyc", "cv", "htm", "html", "java", "js", "m", "mxml", "perl", "pl", "pm", "py", "rb", "sh", "xhtml", "xml","xsl",'txt', 'log', 'gpx', 'kml', '' ),
|
||||||
@ -567,9 +637,9 @@ return array_merge(
|
|||||||
'tui_defaults_config' => array(
|
'tui_defaults_config' => array(
|
||||||
//'common.bi.image' => $config['common.bi.image'],
|
//'common.bi.image' => $config['common.bi.image'],
|
||||||
//'common.bisize.width' => $config['common.bisize.width'],
|
//'common.bisize.width' => $config['common.bisize.width'],
|
||||||
//'common.bisize.height' => $config['common.bisize.height'],
|
//'common.bisize.height' => $config['common.bisize.height'],
|
||||||
'common.backgroundImage' => $config['common.backgroundImage'],
|
'common.backgroundImage' => $config['common.backgroundImage'],
|
||||||
'common.backgroundColor' => $config['common.backgroundColor'],
|
'common.backgroundColor' => $config['common.backgroundColor'],
|
||||||
'common.border' => $config['common.border'],
|
'common.border' => $config['common.border'],
|
||||||
'header.backgroundImage' => $config['header.backgroundImage'],
|
'header.backgroundImage' => $config['header.backgroundImage'],
|
||||||
'header.backgroundColor' => $config['header.backgroundColor'],
|
'header.backgroundColor' => $config['header.backgroundColor'],
|
||||||
|
Loading…
x
Reference in New Issue
Block a user