version 8.4.0
This commit is contained in:
parent
b8180f22fc
commit
5095135b09
32
.htaccess
32
.htaccess
@ -1,32 +0,0 @@
|
||||
# Cache le PHPSESSID de l'url
|
||||
SetEnv SESSION_USE_TRANS_SID 0
|
||||
|
||||
# Bloque l'accès à la liste des fichiers
|
||||
Options -Indexes
|
||||
|
||||
<<<<<<< HEAD
|
||||
# Attention, surtout ne rien modifier ci-dessous !
|
||||
=======
|
||||
# Attention, surtout ne rien modifier ci-dessous !
|
||||
<ifModule mod_rewrite.c>
|
||||
RewriteEngine on
|
||||
RewriteBase /ZwiiCMS-dev/
|
||||
RewriteCond %{REQUEST_FILENAME} !-f
|
||||
RewriteCond %{REQUEST_FILENAME} !-d
|
||||
RewriteRule ^(.*)$ index.php?$1 [L]
|
||||
</ifModule>
|
||||
<ifModule mod_rewrite.c>
|
||||
RewriteEngine on
|
||||
RewriteBase /ZwiiCMS-dev/
|
||||
RewriteCond %{REQUEST_FILENAME} !-f
|
||||
RewriteCond %{REQUEST_FILENAME} !-d
|
||||
RewriteRule ^(.*)$ index.php?$1 [L]
|
||||
</ifModule>
|
||||
<ifModule mod_rewrite.c>
|
||||
RewriteEngine on
|
||||
RewriteBase /ZwiiCMS-dev/
|
||||
RewriteCond %{REQUEST_FILENAME} !-f
|
||||
RewriteCond %{REQUEST_FILENAME} !-d
|
||||
RewriteRule ^(.*)$ index.php?$1 [L]
|
||||
</ifModule>
|
||||
>>>>>>> 8.3.14
|
1
.vscode/settings.json
vendored
1
.vscode/settings.json
vendored
@ -1 +0,0 @@
|
||||
{}
|
@ -2,13 +2,7 @@
|
||||
|
||||
Zwii est un CMS sans base de données (Flat-File) qui permet à ses utilisateurs de créer et gérer facilement un site web sans aucune connaissance en programmation.
|
||||
|
||||
[Site](http://zwiicms.com/) - [Forum](http://forum.zwiicms.com/) - [GitHub version initiale](https://github.com/remijean/ZwiiCMS/) - [GitHub](https://github.com/fredtempez/ZwiiCMS)
|
||||
|
||||
Zwii a été créé par un développeur de talent, [Rémi Jean](https://remijean.fr/), il est désormais maintenu par la communauté et hébergé sur ce git.
|
||||
|
||||
## Version stable
|
||||
|
||||
* La version stable est numérotée 8.4.0 (équivalente à la dév 8.3.14)
|
||||
[Site](http://zwiicms.com/) - [Forum](http://forum.zwiicms.com/) - [GitHub](https://github.com/remijean/ZwiiCMS/)
|
||||
|
||||
## Configuration recommandée
|
||||
|
||||
|
@ -192,11 +192,11 @@ core.start = function() {
|
||||
// Disparition de la notification
|
||||
notificationTimer = setTimeout(function() {
|
||||
$("#notification").fadeOut();
|
||||
}, 4000);
|
||||
}, 1500);
|
||||
// Barre de progression
|
||||
$("#notificationProgress").animate({
|
||||
"width": "0%"
|
||||
}, 4000, "linear");
|
||||
}, 1500, "linear");
|
||||
})
|
||||
.trigger("mouseleave");
|
||||
$("#notificationClose").on("click", function() {
|
||||
|
@ -45,7 +45,7 @@ h3 {
|
||||
font-size: 1.4em;
|
||||
}
|
||||
h4 {
|
||||
font-size: 1.2em;
|
||||
font-size: 1.0em;
|
||||
}
|
||||
|
||||
/* Listes */
|
||||
@ -86,6 +86,16 @@ img[align='right'] {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
/*
|
||||
Signature dans les articles blog et news
|
||||
*/
|
||||
|
||||
.signature {
|
||||
font-size: 0.8em;
|
||||
font-style: italic;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
/* Tableau */
|
||||
:not([class^="col"]) > .tableWrapper {
|
||||
margin: 10px 0;
|
||||
|
@ -1,9 +1,11 @@
|
||||
<?php echo template::formOpen('pageEditForm'); ?>
|
||||
<div class="row">
|
||||
<div class="col2">
|
||||
<div class="col2">
|
||||
<?php $href = helper::baseUrl() . $this->getUrl(2); ?>
|
||||
<?php if ($this->getData(['page', $this->getUrl(2), 'moduleId']) === 'redirection')$href = helper::baseUrl(); ?>
|
||||
<?php echo template::button('pageEditBack', [
|
||||
'class' => 'buttonGrey',
|
||||
'href' => helper::baseUrl() . $this->getUrl(2),
|
||||
'href' => $href,
|
||||
'ico' => 'left',
|
||||
'value' => 'Retour'
|
||||
]); ?>
|
||||
|
2
core/vendor/filemanager/UploadHandler.php
vendored
2
core/vendor/filemanager/UploadHandler.php
vendored
@ -1403,7 +1403,7 @@ class UploadHandler
|
||||
}
|
||||
if(is_file($targetFile)) {
|
||||
chmod($targetFile, $this->options['config']['filePermission']);
|
||||
}else{
|
||||
}elseif(is_dir($targetFile)){
|
||||
chmod($targetFile, $this->options['config']['folderPermission']);
|
||||
}
|
||||
}else{
|
||||
|
60
core/vendor/filemanager/config/config.php
vendored
60
core/vendor/filemanager/config/config.php
vendored
@ -1,5 +1,5 @@
|
||||
<?php
|
||||
$version = "9.12.2";
|
||||
$version = "9.13.1";
|
||||
if (session_id() == '') session_start();
|
||||
|
||||
mb_internal_encoding('UTF-8');
|
||||
@ -8,7 +8,7 @@ mb_http_input('UTF-8');
|
||||
mb_language('uni');
|
||||
mb_regex_encoding('UTF-8');
|
||||
ob_start('mb_output_handler');
|
||||
date_default_timezone_set('Europe/Paris');
|
||||
date_default_timezone_set('Europe/Rome');
|
||||
setlocale(LC_CTYPE, 'fr_FR'); //correct transliteration
|
||||
|
||||
/*
|
||||
@ -98,6 +98,17 @@ $config = array(
|
||||
'thumbs_base_path' => '../../../site/file/thumb/',
|
||||
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| mime file control to define files extensions
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| If you want to be forced to assign the extension starting from the mime type
|
||||
|
|
||||
*/
|
||||
'mime_extension_rename' => true,
|
||||
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| FTP configuration BETA VERSION
|
||||
@ -132,6 +143,20 @@ $config = array(
|
||||
'ftp_base_url' => "http://host.com/testFTP",
|
||||
*/
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Multiple files selection
|
||||
|--------------------------------------------------------------------------
|
||||
| The user can delete multiple files, select all files , deselect all files
|
||||
*/
|
||||
'multiple_selection' => false,
|
||||
/*
|
||||
|
|
||||
| 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
|
||||
|
|
||||
*/
|
||||
'multiple_selection_action_button' => false,
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
@ -215,13 +240,13 @@ $config = array(
|
||||
//Show or not language selection feature in filemanager
|
||||
'show_language_selection' => true,
|
||||
//active or deactive the transliteration (mean convert all strange characters in A..Za..z0..9 characters)
|
||||
'transliteration' => true,
|
||||
'transliteration' => false,
|
||||
//convert all spaces on files name and folders name with $replace_with variable
|
||||
'convert_spaces' => true,
|
||||
'convert_spaces' => false,
|
||||
//convert all spaces on files name and folders name this value
|
||||
'replace_with' => "_",
|
||||
//convert to lowercase the files and folders name
|
||||
'lower_case' => true,
|
||||
'lower_case' => false,
|
||||
|
||||
//Add ?484899493349 (time value) to returned images to prevent cache
|
||||
'add_time_to_img' => false,
|
||||
@ -262,8 +287,8 @@ $config = array(
|
||||
//
|
||||
// WATERMARK IMAGE
|
||||
//
|
||||
//Watermark url or false
|
||||
'image_watermark' => false,
|
||||
//Watermark path or false
|
||||
'image_watermark' => false,//"../watermark.png",
|
||||
# Could be a pre-determined position such as:
|
||||
# tl = top left,
|
||||
# t = top (middle),
|
||||
@ -279,7 +304,7 @@ $config = array(
|
||||
# padding: If using a pre-determined position you can
|
||||
# adjust the padding from the edges by passing an amount
|
||||
# in pixels. If using co-ordinates, this value is ignored.
|
||||
'image_watermark_padding' => 0,
|
||||
'image_watermark_padding' => 10,
|
||||
|
||||
//******************
|
||||
// Default layout setting
|
||||
@ -338,11 +363,18 @@ $config = array(
|
||||
//**********************
|
||||
//Allowed extensions (lowercase insert)
|
||||
//**********************
|
||||
'ext_img' => array('jpg', 'jpeg', 'png', 'gif', 'bmp', 'tiff', 'svg','ico'), //Images
|
||||
'ext_file' => array('doc', 'docx', 'rtf', 'pdf', 'xls', 'xlsx', 'txt', 'csv', 'html', 'xhtml', 'psd', 'sql', 'log', 'fla', 'xml', 'ade', 'adp', 'mdb', 'accdb', 'ppt', 'pptx', 'odt', 'ots', 'ott', 'odb', 'odg', 'otp', 'otg', 'odf', 'ods', 'odp', 'css', 'ai', 'kmz','dwg', 'dxf', 'hpgl', 'plt', 'spl', 'step', 'stp', 'iges', 'igs', 'sat', 'cgm'), //Files
|
||||
'ext_video' => array('mov', 'mpeg', 'm4v', 'mp4', 'avi', 'mpg', 'wma', 'flv', 'webm'), //Video
|
||||
'ext_music' => array('mp3', 'mpga', 'm4a', 'ac3', 'aiff', 'mid', 'ogg', 'wav'), //Audio
|
||||
'ext_misc' => array('7z', 'zip', 'rar', 'gz', 'tar', 'iso', 'dmg'), //Archives
|
||||
'ext_img' => array( 'jpg', 'jpeg', 'png', 'gif', 'bmp', 'tiff', 'svg', 'ico' ), //Images
|
||||
'ext_file' => array( 'doc', 'docx', 'rtf', 'pdf', 'xls', 'xlsx', 'txt', 'csv', 'html', 'xhtml', 'psd', 'sql', 'log', 'fla', 'xml', 'ade', 'adp', 'mdb', 'accdb', 'ppt', 'pptx', 'odt', 'ots', 'ott', 'odb', 'odg', 'otp', 'otg', 'odf', 'ods', 'odp', 'css', 'ai', 'kmz','dwg', 'dxf', 'hpgl', 'plt', 'spl', 'step', 'stp', 'iges', 'igs', 'sat', 'cgm', 'tiff'), //Files
|
||||
'ext_video' => array( 'mov', 'mpeg', 'm4v', 'mp4', 'avi', 'mpg', 'wma', "flv", "webm" ), //Video
|
||||
'ext_music' => array( 'mp3', 'mpga', 'm4a', 'ac3', 'aiff', 'mid', 'ogg', 'wav' ), //Audio
|
||||
'ext_misc' => array( 'zip', 'rar', 'gz', 'tar', 'iso', 'dmg' ), //Archives
|
||||
|
||||
|
||||
//*********************
|
||||
// If you insert an extensions blacklist array the filemanager don't check any extensions but simply block the extensions in the list
|
||||
// otherwise check Allowed extensions configuration
|
||||
//*********************
|
||||
'ext_blacklist' => false, //['jpg'],
|
||||
|
||||
/******************
|
||||
* AVIARY config
|
||||
@ -352,7 +384,7 @@ $config = array(
|
||||
'aviary_language' => "fr",
|
||||
'aviary_theme' => "light",
|
||||
'aviary_tools' => "all",
|
||||
'aviary_maxSize' => "1920",
|
||||
'aviary_maxSize' => "1400",
|
||||
// Add or modify the Aviary options below as needed - they will be json encoded when added to the configuration so arrays can be utilized as needed
|
||||
|
||||
//The filter and sorter are managed through both javascript and php scripts because if you have a lot of
|
||||
|
7
core/vendor/filemanager/css/style.css
vendored
7
core/vendor/filemanager/css/style.css
vendored
File diff suppressed because one or more lines are too long
98
core/vendor/filemanager/dialog.php
vendored
98
core/vendor/filemanager/dialog.php
vendored
@ -44,13 +44,16 @@ include 'include/utils.php';
|
||||
$subdir_path = '';
|
||||
if (isset($_GET['fldr']) && !empty($_GET['fldr'])) {
|
||||
$subdir_path = rawurldecode(trim(strip_tags($_GET['fldr']),"/"));
|
||||
}elseif(isset($_SESSION['RF']['fldr']) && !empty($_SESSION['RF']['fldr'])){
|
||||
$subdir_path = rawurldecode(trim(strip_tags($_SESSION['RF']['fldr']),"/"));
|
||||
}
|
||||
if (strpos($subdir_path,'../') === FALSE
|
||||
&& strpos($subdir_path,'./') === FALSE
|
||||
&& strpos($subdir_path,'..\\') === FALSE
|
||||
&& strpos($subdir_path,'.\\') === FALSE)
|
||||
{
|
||||
$subdir = $subdir_path ."/";
|
||||
$subdir = strip_tags($subdir_path) ."/";
|
||||
$_SESSION['RF']['fldr'] = $subdir_path;
|
||||
$_SESSION['RF']["filter"]='';
|
||||
}
|
||||
else { $subdir = ''; }
|
||||
@ -143,7 +146,19 @@ if(!$ftp){
|
||||
|
||||
if (!is_dir($thumbs_path.$subdir))
|
||||
{
|
||||
create_folder(FALSE, $thumbs_path.$subdir);
|
||||
create_folder(FALSE, $thumbs_path.$subdir,$ftp,$config);
|
||||
}
|
||||
}
|
||||
$multiple=null;
|
||||
if (isset($_GET['multiple'])){
|
||||
if($_GET['multiple'] == 1){
|
||||
$multiple = 1;
|
||||
$config['multiple_selection'] = true;
|
||||
$config['multiple_selection_action_button'] = true;
|
||||
}elseif($_GET['multiple'] == 0){
|
||||
$multiple = 0;
|
||||
$config['multiple_selection'] = false;
|
||||
$config['multiple_selection_action_button'] = false;
|
||||
}
|
||||
}
|
||||
if (isset($_GET['callback']))
|
||||
@ -253,22 +268,27 @@ if (isset($_GET['editor']))
|
||||
$editor = strip_tags($_GET['editor']);
|
||||
} else {
|
||||
if($_GET['type']==0){
|
||||
$editor=false;
|
||||
$editor=null;
|
||||
} else {
|
||||
$editor='tinymce';
|
||||
}
|
||||
}
|
||||
|
||||
if (!isset($_GET['field_id'])) $_GET['field_id'] = '';
|
||||
|
||||
$field_id = isset($_GET['field_id']) ? fix_get_params($_GET['field_id']) : '';
|
||||
$field_id = isset($_GET['field_id']) ? fix_get_params($_GET['field_id']) : null;
|
||||
$type_param = fix_get_params($_GET['type']);
|
||||
$apply = null;
|
||||
if($multiple){
|
||||
$apply = 'apply_multiple';
|
||||
}
|
||||
if ($type_param==1) $apply_type = 'apply_img';
|
||||
elseif($type_param==2) $apply_type = 'apply_link';
|
||||
elseif($type_param==0 && !$field_id) $apply_type = 'apply_none';
|
||||
elseif($type_param==3) $apply_type = 'apply_video';
|
||||
else $apply_type = 'apply';
|
||||
|
||||
if ($type_param==1) $apply = 'apply_img';
|
||||
elseif($type_param==2) $apply = 'apply_link';
|
||||
elseif($type_param==0 && $_GET['field_id']=='') $apply = 'apply_none';
|
||||
elseif($type_param==3) $apply = 'apply_video';
|
||||
else $apply = 'apply';
|
||||
if(!$apply){
|
||||
$apply = $apply_type;
|
||||
}
|
||||
|
||||
$get_params = array(
|
||||
'editor' => $editor,
|
||||
@ -278,6 +298,7 @@ $get_params = array(
|
||||
'crossdomain' => $crossdomain,
|
||||
'extensions' => ($extensions) ? urlencode(json_encode($extensions)) : null ,
|
||||
'field_id' => $field_id,
|
||||
'multiple' => $multiple,
|
||||
'relative_url' => $return_relative_url,
|
||||
'akey' => (isset($_GET['akey']) && $_GET['akey'] != '' ? $_GET['akey'] : 'key')
|
||||
);
|
||||
@ -334,7 +355,6 @@ $get_params = http_build_query($get_params);
|
||||
|
||||
<script>
|
||||
var ext_img=new Array('<?php echo implode("','", $ext_img)?>');
|
||||
var allowed_ext=new Array('<?php echo implode("','", $ext)?>');
|
||||
var image_editor=<?php echo $aviary_active?"true":"false";?>;
|
||||
if (image_editor) {
|
||||
var featherEditor = new Aviary.Feather({
|
||||
@ -408,11 +428,13 @@ $get_params = http_build_query($get_params);
|
||||
<input type="hidden" id="view" value="<?php echo $view;?>" />
|
||||
<input type="hidden" id="subdir" value="<?php echo $subdir;?>" />
|
||||
<input type="hidden" id="field_id" value="<?php echo $field_id;?>" />
|
||||
<input type="hidden" id="multiple" value="<?php echo $multiple;?>" />
|
||||
<input type="hidden" id="type_param" value="<?php echo $type_param;?>" />
|
||||
<input type="hidden" id="upload_dir" value="<?php echo $upload_dir;?>" />
|
||||
<input type="hidden" id="cur_dir" value="<?php echo $cur_dir;?>" />
|
||||
<input type="hidden" id="cur_dir_thumb" value="<?php echo $thumbs_path.$subdir;?>" />
|
||||
<input type="hidden" id="insert_folder_name" value="<?php echo trans('Insert_Folder_Name');?>" />
|
||||
<input type="hidden" id="rename_existing_folder" value="<?php echo trans('Rename_existing_folder');?>" />
|
||||
<input type="hidden" id="new_folder" value="<?php echo trans('New_Folder');?>" />
|
||||
<input type="hidden" id="ok" value="<?php echo trans('OK');?>" />
|
||||
<input type="hidden" id="cancel" value="<?php echo trans('Cancel');?>" />
|
||||
@ -429,8 +451,8 @@ $get_params = http_build_query($get_params);
|
||||
<input type="hidden" id="descending" value="<?php echo $descending?1:0;?>" />
|
||||
<input type="hidden" id="current_url" value="<?php echo str_replace(array('&filter='.$filter,'&sort_by='.$sort_by,'&descending='.intval($descending)),array(''),$base_url.$_SERVER['REQUEST_URI']);?>" />
|
||||
<input type="hidden" id="lang_show_url" value="<?php echo trans('Show_url');?>" />
|
||||
<input type="hidden" id="copy_cut_files_allowed" value="<?php if($copy_cut_files) echo 1; else echo 0;?>" />
|
||||
<input type="hidden" id="copy_cut_dirs_allowed" value="<?php if($copy_cut_dirs) echo 1; else echo 0;?>" />
|
||||
<input type="hidden" id="copy_cut_files_allowed" value="<?php if($config['copy_cut_files']) echo 1; else echo 0;?>" />
|
||||
<input type="hidden" id="copy_cut_dirs_allowed" value="<?php if($config['copy_cut_dirs']) echo 1; else echo 0;?>" />
|
||||
<input type="hidden" id="copy_cut_max_size" value="<?php echo $copy_cut_max_size;?>" />
|
||||
<input type="hidden" id="copy_cut_max_count" value="<?php echo $copy_cut_max_count;?>" />
|
||||
<input type="hidden" id="lang_copy" value="<?php echo trans('Copy');?>" />
|
||||
@ -652,7 +674,7 @@ foreach($files as $k=>$file){
|
||||
'date'=>$date,
|
||||
'size'=>$size,
|
||||
'permissions' => $file['permissions'],
|
||||
'extension'=>strtolower($file_ext)
|
||||
'extension'=>fix_strtolower($file_ext)
|
||||
);
|
||||
}else{
|
||||
|
||||
@ -673,7 +695,7 @@ foreach($files as $k=>$file){
|
||||
'date'=>$date,
|
||||
'size'=>$size,
|
||||
'permissions' =>'',
|
||||
'extension'=>strtolower($file_ext)
|
||||
'extension'=>fix_strtolower($file_ext)
|
||||
);
|
||||
if($show_folder_size){
|
||||
$sorted[$k]['nfiles'] = $nfiles;
|
||||
@ -760,10 +782,22 @@ $files=$sorted;
|
||||
<?php if($create_folders){ ?>
|
||||
<button class="tip btn new-folder" title="<?php echo trans('New_Folder')?>"><i class="icon-plus"></i><i class="icon-folder-open"></i></button>
|
||||
<?php } ?>
|
||||
<?php if($copy_cut_files || $copy_cut_dirs){ ?>
|
||||
<?php if($config['copy_cut_files'] || $config['copy_cut_dirs']){ ?>
|
||||
<button class="tip btn paste-here-btn" title="<?php echo trans('Paste_Here');?>"><i class="rficon-clipboard-apply"></i></button>
|
||||
<button class="tip btn clear-clipboard-btn" title="<?php echo trans('Clear_Clipboard');?>"><i class="rficon-clipboard-clear"></i></button>
|
||||
<?php } ?>
|
||||
<div id="multiple-selection" style="display:none;">
|
||||
<?php if($config['multiple_selection']){ ?>
|
||||
<?php if($config['delete_files']){ ?>
|
||||
<button class="tip btn multiple-delete-btn" title="<?php echo trans('Erase');?>" data-confirm="<?php echo trans('Confirm_del');?>"><i class="icon-trash"></i></button>
|
||||
<?php } ?>
|
||||
<button class="tip btn multiple-select-btn" title="<?php echo trans('Select_All');?>"><i class="icon-check"></i></button>
|
||||
<button class="tip btn multiple-deselect-btn" title="<?php echo trans('Deselect_All');?>"><i class="icon-ban-circle"></i></button>
|
||||
<?php if($apply_type!="apply_none" && $config['multiple_selection_action_button']){ ?>
|
||||
<button class="btn multiple-action-btn btn-inverse" data-function="<?php echo $apply_type;?>"><?php echo trans('Select'); ?></button>
|
||||
<?php } ?>
|
||||
<?php } ?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="span2 half view-controller">
|
||||
<button class="btn tip<?php if($view==0) echo " btn-inverse";?>" id="view0" data-value="0" title="<?php echo trans('View_boxes');?>"><i class="icon-th <?php if($view==0) echo "icon-white";?>"></i></button>
|
||||
@ -772,7 +806,7 @@ $files=$sorted;
|
||||
</div>
|
||||
<div class="span6 entire types">
|
||||
<span><?php echo trans('Filters');?>:</span>
|
||||
<?php if($_GET['type']!=1 && $_GET['type']!=3 && $show_filter_buttons){ ?>
|
||||
<?php if($_GET['type']!=1 && $_GET['type']!=3 && $config['show_filter_buttons']){ ?>
|
||||
<?php if(count($ext_file)>0 or false){ ?>
|
||||
<input id="select-type-1" name="radio-sort" type="radio" data-item="ff-item-type-1" checked="checked" class="hide" />
|
||||
<label id="ff-item-type-1" title="<?php echo trans('Files');?>" for="select-type-1" class="tip btn ff-label-type-1"><i class="icon-file"></i></label>
|
||||
@ -892,7 +926,7 @@ $files=$sorted;
|
||||
|
||||
foreach ($files as $file_array) {
|
||||
$file=$file_array['file'];
|
||||
if($file == '.' || ( substr($file, 0, 1) == '.' && isset( $file_array[ 'extension' ] ) && $file_array[ 'extension' ] == strtolower(trans( 'Type_dir' ) )) || (isset($file_array['extension']) && $file_array['extension']!=strtolower(trans('Type_dir'))) || ($file == '..' && $subdir == '') || in_array($file, $hidden_folders) || ($filter!='' && $n_files>$file_number_limit_js && $file!=".." && stripos($file,$filter)===false)){
|
||||
if($file == '.' || ( substr($file, 0, 1) == '.' && isset( $file_array[ 'extension' ] ) && $file_array[ 'extension' ] == fix_strtolower(trans( 'Type_dir' ) )) || (isset($file_array['extension']) && $file_array['extension']!=fix_strtolower(trans('Type_dir'))) || ($file == '..' && $subdir == '') || in_array($file, $hidden_folders) || ($filter!='' && $n_files>$file_number_limit_js && $file!=".." && stripos($file,$filter)===false)){
|
||||
continue;
|
||||
}
|
||||
$new_name=fix_filename($file,$config);
|
||||
@ -920,7 +954,7 @@ $files=$sorted;
|
||||
}
|
||||
|
||||
?>
|
||||
<li data-name="<?php echo $file ?>" class="<?php if($file=='..') echo 'back'; else echo 'dir';?>" <?php if(($filter!='' && stripos($file,$filter)===false)) echo ' style="display:none;"';?>><?php
|
||||
<li data-name="<?php echo $file ?>" class="<?php if($file=='..') echo 'back'; else echo 'dir';?> <?php if(!$config['multiple_selection']){ ?>no-selector<?php } ?>" <?php if(($filter!='' && stripos($file,$filter)===false)) echo ' style="display:none;"';?>><?php
|
||||
$file_prevent_rename = false;
|
||||
$file_prevent_delete = false;
|
||||
if (isset($filePermissions[$file])) {
|
||||
@ -958,14 +992,14 @@ $files=$sorted;
|
||||
<input type="hidden" class="name" value="<?php echo $file_array['file_lcase'];?>"/>
|
||||
<input type="hidden" class="date" value="<?php echo $file_array['date'];?>"/>
|
||||
<input type="hidden" class="size" value="<?php echo $file_array['size'];?>"/>
|
||||
<input type="hidden" class="extension" value="<?php echo trans('Type_dir');?>"/>
|
||||
<input type="hidden" class="extension" value="<?php echo fix_strtolower(trans('Type_dir'));?>"/>
|
||||
<div class="file-date"><?php echo date(trans('Date_type'),$file_array['date']);?></div>
|
||||
<?php if($show_folder_size){ ?>
|
||||
<div class="file-size"><?php echo makeSize($file_array['size']);?></div>
|
||||
<input type="hidden" class="nfiles" value="<?php echo $file_array['nfiles'];?>"/>
|
||||
<input type="hidden" class="nfolders" value="<?php echo $file_array['nfolders'];?>"/>
|
||||
<?php } ?>
|
||||
<div class='file-extension'><?php echo trans('Type_dir');?></div>
|
||||
<div class='file-extension'><?php echo fix_strtolower(trans('Type_dir'));?></div>
|
||||
<figcaption>
|
||||
<a href="javascript:void('')" class="tip-left edit-button rename-file-paths <?php if($rename_folders && !$file_prevent_rename) echo "rename-folder";?>" title="<?php echo trans('Rename')?>" data-folder="1" data-permissions="<?php echo $file_array['permissions']; ?>" data-path="<?php echo $rfm_subfolder.$subdir.$file;?>">
|
||||
<i class="icon-pencil <?php if(!$rename_folders || $file_prevent_rename) echo 'icon-white';?>"></i></a>
|
||||
@ -984,7 +1018,7 @@ $files=$sorted;
|
||||
foreach ($files as $nu=>$file_array) {
|
||||
$file=$file_array['file'];
|
||||
|
||||
if($file == '.' || $file == '..' || $file_array['extension']==trans('Type_dir') || !in_array(fix_strtolower($file_array['extension']), $ext) || ($filter!='' && $n_files>$file_number_limit_js && stripos($file,$filter)===false))
|
||||
if($file == '.' || $file == '..' || $file_array['extension']==fix_strtolower(trans('Type_dir')) || (!$config['ext_blacklist'] && !in_array(fix_strtolower($file_array['extension']), $ext)) || ($config['ext_blacklist'] && in_array(fix_strtolower($file_array['extension']), $config['ext_blacklist'])) || ($filter!='' && $n_files>$file_number_limit_js && stripos($file,$filter)===false))
|
||||
continue;
|
||||
foreach ( $hidden_files as $hidden_file ) {
|
||||
if ( fnmatch($hidden_file, $file, FNM_PATHNAME) ) {
|
||||
@ -1089,7 +1123,7 @@ $files=$sorted;
|
||||
}
|
||||
if((!($_GET['type']==1 && !$is_img) && !(($_GET['type']==3 && !$is_video) && ($_GET['type']==3 && !$is_audio))) && $class_ext>0){
|
||||
?>
|
||||
<li class="ff-item-type-<?php echo $class_ext;?> file" data-name="<?php echo $file;?>" <?php if(($filter!='' && stripos($file,$filter)===false)) echo ' style="display:none;"';?>><?php
|
||||
<li class="ff-item-type-<?php echo $class_ext;?> file <?php if(!$config['multiple_selection']){ ?>no-selector<?php } ?>" data-name="<?php echo $file;?>" <?php if(($filter!='' && stripos($file,$filter)===false)) echo ' style="display:none;"';?>><?php
|
||||
$file_prevent_rename = false;
|
||||
$file_prevent_delete = false;
|
||||
if (isset($filePermissions[$file])) {
|
||||
@ -1103,11 +1137,25 @@ $files=$sorted;
|
||||
<a href="javascript:void('')" class="link" data-file="<?php echo $file;?>" data-function="<?php echo $apply;?>">
|
||||
<div class="img-precontainer">
|
||||
<?php if($is_icon_thumb){ ?><div class="filetype"><?php echo $file_array['extension'] ?></div><?php } ?>
|
||||
<?php if($config['multiple_selection']){ ?><div class="selector">
|
||||
<label class="cont">
|
||||
<input type="checkbox" class="selection" name="selection[]" value="<?php echo $file;?>">
|
||||
<span class="checkmark"></span>
|
||||
</label>
|
||||
</div>
|
||||
<?php } ?>
|
||||
<div class="img-container">
|
||||
<img class="<?php echo $show_original ? "original" : "" ?><?php echo $is_icon_thumb ? " icon" : "" ?>" data-src="<?php echo $src_thumb;?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="img-precontainer-mini <?php if($is_img) echo 'original-thumb' ?>">
|
||||
<?php if($config['multiple_selection']){ ?><div class="selector">
|
||||
<label class="cont">
|
||||
<input type="checkbox" class="selection" name="selection[]" value="<?php echo $file;?>">
|
||||
<span class="checkmark"></span>
|
||||
</label>
|
||||
</div>
|
||||
<?php } ?>
|
||||
<div class="filetype <?php echo $file_array['extension'] ?> <?php if(in_array($file_array['extension'], $editable_text_file_exts)) echo 'edit-text-file-allowed' ?> <?php if(!$is_icon_thumb){ echo "hide"; }?>"><?php echo $file_array['extension'] ?></div>
|
||||
<div class="img-container-mini">
|
||||
<?php if($mini_src!=""){ ?>
|
||||
@ -1118,8 +1166,6 @@ $files=$sorted;
|
||||
<?php if($is_icon_thumb){ ?>
|
||||
<div class="cover"></div>
|
||||
<?php } ?>
|
||||
</a>
|
||||
<a href="javascript:void('')" class="link" data-file="<?php echo $file;?>" data-function="<?php echo $apply;?>">
|
||||
<div class="box">
|
||||
<h4 class="<?php if($ellipsis_title_after_first_row){ echo "ellipsis"; } ?>">
|
||||
<?php echo $filename;?></h4>
|
||||
|
108
core/vendor/filemanager/execute.php
vendored
108
core/vendor/filemanager/execute.php
vendored
@ -57,26 +57,55 @@ while($cycle && $i<$max_cycles)
|
||||
$path = fix_dirname($path)."/";
|
||||
}
|
||||
|
||||
$path = $current_path.$_POST['path'];
|
||||
$path_thumb = $thumbs_base_path.$_POST['path'];
|
||||
|
||||
if($ftp){
|
||||
$path = $ftp_base_folder.$upload_dir.$_POST['path'];
|
||||
$path_thumb = $ftp_base_folder.$ftp_thumbs_dir.$_POST['path'];
|
||||
function returnPaths($_path,$_name,$config){
|
||||
global $ftp;
|
||||
$path = $config['current_path'].$_path;
|
||||
$path_thumb = $config['thumbs_base_path'].$_path;
|
||||
$name = null;
|
||||
if($ftp){
|
||||
$path = $config['ftp_base_folder'].$config['upload_dir'].$_path;
|
||||
$path_thumb = $config['ftp_base_folder'].$config['ftp_thumbs_dir'].$_path;
|
||||
}
|
||||
if ($_name)
|
||||
{
|
||||
$name = fix_filename($_name,$config);
|
||||
if (strpos($name,'../') !== FALSE || strpos($name,'..\\') !== FALSE)
|
||||
{
|
||||
response(trans('wrong name').AddErrorLocation())->send();
|
||||
exit;
|
||||
}
|
||||
}
|
||||
return array($path,$path_thumb,$name);
|
||||
}
|
||||
|
||||
if (isset($_POST['name']))
|
||||
{
|
||||
$name = fix_filename($_POST['name'],$config);
|
||||
if (strpos($name,'../') !== FALSE || strpos($name,'..\\') !== FALSE)
|
||||
{
|
||||
response(trans('wrong name').AddErrorLocation())->send();
|
||||
exit;
|
||||
if(isset($_POST['paths'])){
|
||||
$paths = $paths_thumb = $names = array();
|
||||
foreach ($_POST['paths'] as $key => $path) {
|
||||
$name = null;
|
||||
if(isset($_POST['names'][$key])){
|
||||
$name = $_POST['names'][$key];
|
||||
}
|
||||
list($path,$path_thumb,$name) = returnPaths($path,$name,$config);
|
||||
$paths[] = $path;
|
||||
$paths_thumb[] = $path_thumb;
|
||||
$names = $name;
|
||||
}
|
||||
}else{
|
||||
$name = null;
|
||||
if(isset($_POST['name'])){
|
||||
$name = $_POST['name'];
|
||||
}
|
||||
list($path,$path_thumb,$name) = returnPaths($_POST['path'],$name,$config);
|
||||
|
||||
}
|
||||
|
||||
$info = pathinfo($path);
|
||||
if (isset($info['extension']) && !(isset($_GET['action']) && $_GET['action']=='delete_folder') && !in_array(strtolower($info['extension']), $ext) && $_GET['action'] != 'create_file')
|
||||
if (isset($info['extension']) && !(isset($_GET['action']) && $_GET['action']=='delete_folder') &&
|
||||
(
|
||||
(!$config['ext_blacklist'] && !in_array(strtolower($info['extension']), $ext)) ||
|
||||
($config['ext_blacklist'] && in_array(fix_strtolower($file_array['extension']),$config['ext_blacklist']))
|
||||
)
|
||||
&& $_GET['action'] != 'create_file' )
|
||||
{
|
||||
response(trans('wrong extension').AddErrorLocation())->send();
|
||||
exit;
|
||||
@ -87,49 +116,15 @@ if (isset($_GET['action']))
|
||||
switch($_GET['action'])
|
||||
{
|
||||
case 'delete_file':
|
||||
if ($delete_files){
|
||||
if($ftp){
|
||||
try{
|
||||
$ftp->delete("/".$path);
|
||||
@$ftp->delete("/".$path_thumb);
|
||||
}catch(FtpClient\FtpException $e){
|
||||
return;
|
||||
}
|
||||
}else{
|
||||
|
||||
unlink($path);
|
||||
if (file_exists($path_thumb)){
|
||||
unlink($path_thumb);
|
||||
}
|
||||
}
|
||||
deleteFile($path,$path_thumb,$config);
|
||||
|
||||
$info=pathinfo($path);
|
||||
if (!$ftp && $relative_image_creation){
|
||||
foreach($relative_path_from_current_pos as $k=>$path)
|
||||
{
|
||||
if ($path!="" && $path[strlen($path)-1]!="/") $path.="/";
|
||||
|
||||
if (file_exists($info['dirname']."/".$path.$relative_image_creation_name_to_prepend[$k].$info['filename'].$relative_image_creation_name_to_append[$k].".".$info['extension']))
|
||||
{
|
||||
unlink($info['dirname']."/".$path.$relative_image_creation_name_to_prepend[$k].$info['filename'].$relative_image_creation_name_to_append[$k].".".$info['extension']);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!$ftp && $fixed_image_creation)
|
||||
{
|
||||
foreach($fixed_path_from_filemanager as $k=>$path)
|
||||
{
|
||||
if ($path!="" && $path[strlen($path)-1] != "/") $path.="/";
|
||||
|
||||
$base_dir=$path.substr_replace($info['dirname']."/", '', 0, strlen($current_path));
|
||||
if (file_exists($base_dir.$fixed_image_creation_name_to_prepend[$k].$info['filename'].$fixed_image_creation_to_append[$k].".".$info['extension']))
|
||||
{
|
||||
unlink($base_dir.$fixed_image_creation_name_to_prepend[$k].$info['filename'].$fixed_image_creation_to_append[$k].".".$info['extension']);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 'delete_files':
|
||||
foreach ($paths as $key => $p) {
|
||||
deleteFile($p,$paths_thumb[$key],$config);
|
||||
}
|
||||
|
||||
break;
|
||||
case 'delete_folder':
|
||||
if ($delete_folders){
|
||||
@ -166,7 +161,10 @@ if (isset($_GET['action']))
|
||||
$name = fix_filename($_POST['name'],$config);
|
||||
$path .= $name;
|
||||
$path_thumb .= $name;
|
||||
create_folder(fix_path($path,$config),fix_path($path_thumb,$config),$ftp,$config);
|
||||
$res = create_folder(fix_path($path,$config),fix_path($path_thumb,$config),$ftp,$config);
|
||||
if(!$res){
|
||||
response(trans('Rename_existing_folder').AddErrorLocation())->send();
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 'rename_folder':
|
||||
|
71
core/vendor/filemanager/include/utils.php
vendored
71
core/vendor/filemanager/include/utils.php
vendored
@ -94,6 +94,63 @@ if ( ! function_exists('trans'))
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete file
|
||||
*
|
||||
* @param string $path
|
||||
* @param string $path_thumb
|
||||
* @param string $config
|
||||
*
|
||||
* @return nothing
|
||||
*/
|
||||
function deleteFile($path,$path_thumb,$config){
|
||||
if ($config['delete_files']){
|
||||
$ftp = ftp_con($config);
|
||||
if($ftp){
|
||||
try{
|
||||
$ftp->delete("/".$path);
|
||||
@$ftp->delete("/".$path_thumb);
|
||||
}catch(FtpClient\FtpException $e){
|
||||
return;
|
||||
}
|
||||
}else{
|
||||
if (file_exists($path)){
|
||||
unlink($path);
|
||||
}
|
||||
if (file_exists($path_thumb)){
|
||||
unlink($path_thumb);
|
||||
}
|
||||
}
|
||||
|
||||
$info=pathinfo($path);
|
||||
if (!$ftp && $config['relative_image_creation']){
|
||||
foreach($config['relative_path_from_current_pos'] as $k=>$path)
|
||||
{
|
||||
if ($path!="" && $path[strlen($path)-1]!="/") $path.="/";
|
||||
|
||||
if (file_exists($info['dirname']."/".$path.$config['relative_image_creation_name_to_prepend'][$k].$info['filename'].$config['relative_image_creation_name_to_append'][$k].".".$info['extension']))
|
||||
{
|
||||
unlink($info['dirname']."/".$path.$config['relative_image_creation_name_to_prepend'][$k].$info['filename'].$config['relative_image_creation_name_to_append'][$k].".".$info['extension']);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!$ftp && $config['fixed_image_creation'])
|
||||
{
|
||||
foreach($config['fixed_path_from_filemanager'] as $k=>$path)
|
||||
{
|
||||
if ($path!="" && $path[strlen($path)-1] != "/") $path.="/";
|
||||
|
||||
$base_dir=$path.substr_replace($info['dirname']."/", '', 0, strlen($current_path));
|
||||
if (file_exists($base_dir.$config['fixed_image_creation_name_to_prepend'][$k].$info['filename'].$config['fixed_image_creation_to_append'][$k].".".$info['extension']))
|
||||
{
|
||||
unlink($base_dir.$config['fixed_image_creation_name_to_prepend'][$k].$info['filename'].$config['fixed_image_creation_to_append'][$k].".".$info['extension']);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete directory
|
||||
*
|
||||
@ -462,10 +519,13 @@ function create_folder($path = null, $path_thumbs = null,$ftp = null,$config = n
|
||||
$ftp->mkdir($path);
|
||||
$ftp->mkdir($path_thumbs);
|
||||
}else{
|
||||
if(file_exists($path)){
|
||||
return false;
|
||||
}
|
||||
$oldumask = umask(0);
|
||||
if ($path && ! file_exists($path))
|
||||
if ($path && !file_exists($path))
|
||||
{
|
||||
$permission = 0755;
|
||||
$permission = $config['folderPermission'];
|
||||
if(isset($config['folderPermission'])){
|
||||
$permission = $config['folderPermission'];
|
||||
}
|
||||
@ -473,9 +533,10 @@ function create_folder($path = null, $path_thumbs = null,$ftp = null,$config = n
|
||||
} // or even 01777 so you get the sticky bit set
|
||||
if ($path_thumbs && ! file_exists($path_thumbs))
|
||||
{
|
||||
mkdir($path_thumbs, 0755, true) or die("$path_thumbs cannot be found");
|
||||
mkdir($path_thumbs, $config['folderPermission'], true) or die("$path_thumbs cannot be found");
|
||||
} // or even 01777 so you get the sticky bit set
|
||||
umask($oldumask);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@ -731,7 +792,7 @@ function image_check_memory_usage($img, $max_breedte, $max_hoogte)
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
function endsWith($haystack, $needle)
|
||||
function ends_with($haystack, $needle)
|
||||
{
|
||||
return $needle === "" || substr($haystack, -strlen($needle)) === $needle;
|
||||
}
|
||||
@ -780,7 +841,7 @@ function new_thumbnails_creation($targetPath, $targetFile, $name, $current_path,
|
||||
{
|
||||
create_folder($targetPath . $path, false);
|
||||
}
|
||||
if ( ! endsWith($targetPath, $path))
|
||||
if ( ! ends_with($targetPath, $path))
|
||||
{
|
||||
if ( ! create_img($targetFile, $targetPath . $path . $config['relative_image_creation_name_to_prepend'][ $k ] . $info['filename'] . $config['relative_image_creation_name_to_append'][ $k ] . "." . $info['extension'], $config['relative_image_creation_width'][ $k ], $config['relative_image_creation_height'][ $k ], $config['relative_image_creation_option'][ $k ]))
|
||||
{
|
||||
|
4
core/vendor/filemanager/js/include.js
vendored
4
core/vendor/filemanager/js/include.js
vendored
File diff suppressed because one or more lines are too long
4
core/vendor/filemanager/js/plugins.js
vendored
4
core/vendor/filemanager/js/plugins.js
vendored
File diff suppressed because one or more lines are too long
2
core/vendor/filemanager/lang/fr_FR.php
vendored
2
core/vendor/filemanager/lang/fr_FR.php
vendored
@ -3,6 +3,8 @@
|
||||
return array(
|
||||
|
||||
'Select' => 'Sélectionner',
|
||||
'Deselect_All' => 'Deselect All',
|
||||
'Select_All' => 'Select All',
|
||||
'Erase' => 'Effacer',
|
||||
'Open' => 'Ouvrir',
|
||||
'Confirm_del' => 'Êtes-vous sûr de vouloir effacer ce fichier ?',
|
||||
|
2
core/vendor/filemanager/plugin.min.js
vendored
2
core/vendor/filemanager/plugin.min.js
vendored
@ -1 +1 @@
|
||||
tinymce.PluginManager.add("filemanager",function(e){function n(t){0===e.settings.external_filemanager_path.toLowerCase().indexOf(t.origin.toLowerCase())&&"responsivefilemanager"===t.data.sender&&(tinymce.activeEditor.windowManager.getParams().setUrl(t.data.url),tinymce.activeEditor.windowManager.close(),window.removeEventListener?window.removeEventListener("message",n,!1):window.detachEvent("onmessage",n))}function t(t,i,a,s){var r=window.innerWidth-30,g=window.innerHeight-60;if(r>1800&&(r=1800),g>1200&&(g=1200),r>600){var d=(r-20)%138;r=r-d+10}urltype=2,"image"==a&&(urltype=1),"media"==a&&(urltype=3);var o="RESPONSIVE FileManager";"undefined"!=typeof e.settings.filemanager_title&&e.settings.filemanager_title&&(o=e.settings.filemanager_title);var l="key";"undefined"!=typeof e.settings.filemanager_access_key&&e.settings.filemanager_access_key&&(l=e.settings.filemanager_access_key);var f="";"undefined"!=typeof e.settings.filemanager_sort_by&&e.settings.filemanager_sort_by&&(f="&sort_by="+e.settings.filemanager_sort_by);var m=0;"undefined"!=typeof e.settings.filemanager_descending&&e.settings.filemanager_descending&&(m=e.settings.filemanager_descending);var c="";"undefined"!=typeof e.settings.filemanager_subfolder&&e.settings.filemanager_subfolder&&(c="&fldr="+e.settings.filemanager_subfolder);var v="";"undefined"!=typeof e.settings.filemanager_crossdomain&&e.settings.filemanager_crossdomain&&(v="&crossdomain=1",window.addEventListener?window.addEventListener("message",n,!1):window.attachEvent("onmessage",n)),tinymce.activeEditor.windowManager.open({title:o,file:e.settings.external_filemanager_path+"dialog.php?type="+urltype+"&descending="+m+f+c+v+"&lang="+e.settings.language+"&akey="+l,width:r,height:g,resizable:!0,maximizable:!0,inline:1},{setUrl:function(n){var i=s.document.getElementById(t);if(i.value=e.convertURL(n),"createEvent"in document){var a=document.createEvent("HTMLEvents");a.initEvent("change",!1,!0),i.dispatchEvent(a)}else i.fireEvent("onchange")}})}return tinymce.activeEditor.settings.file_browser_callback=t,!1});
|
||||
tinymce.PluginManager.add("filemanager",function(e){function n(t){0===e.settings.external_filemanager_path.toLowerCase().indexOf(t.origin.toLowerCase())&&"responsivefilemanager"===t.data.sender&&(tinymce.activeEditor.windowManager.getParams().setUrl(t.data.url),tinymce.activeEditor.windowManager.close(),window.removeEventListener?window.removeEventListener("message",n,!1):window.detachEvent("onmessage",n))}function t(t,i,a,s){var r=window.innerWidth-30,g=window.innerHeight-60;if(r>1800&&(r=1800),g>1200&&(g=1200),r>600){var d=(r-20)%138;r=r-d+10}urltype=2,"image"==a&&(urltype=1),"media"==a&&(urltype=3);var o="RESPONSIVE FileManager";"undefined"!=typeof e.settings.filemanager_title&&e.settings.filemanager_title&&(o=e.settings.filemanager_title);var l="key";"undefined"!=typeof e.settings.filemanager_access_key&&e.settings.filemanager_access_key&&(l=e.settings.filemanager_access_key);var f="";"undefined"!=typeof e.settings.filemanager_sort_by&&e.settings.filemanager_sort_by&&(f="&sort_by="+e.settings.filemanager_sort_by);var m=0;"undefined"!=typeof e.settings.filemanager_descending&&e.settings.filemanager_descending&&(m=e.settings.filemanager_descending);var c="";"undefined"!=typeof e.settings.filemanager_subfolder&&e.settings.filemanager_subfolder&&(c="&fldr="+e.settings.filemanager_subfolder);var v="";"undefined"!=typeof e.settings.filemanager_crossdomain&&e.settings.filemanager_crossdomain&&(v="&crossdomain=1",window.addEventListener?window.addEventListener("message",n,!1):window.attachEvent("onmessage",n)),tinymce.activeEditor.windowManager.open({title:o,file:e.settings.external_filemanager_path+"dialog.php?type="+urltype+"&descending="+m+f+c+v+"&lang="+e.settings.language+"&akey="+l,width:r,height:g,resizable:!0,maximizable:!0,inline:1},{setUrl:function(n){var i=s.document.getElementById(t);if(i.value=e.convertURL(n),"createEvent"in document){var a=document.createEvent("HTMLEvents");a.initEvent("change",!1,!0),i.dispatchEvent(a)}else i.fireEvent("onchange")}})}return e.settings.file_browser_callback=t,!1});
|
279
core/vendor/filemanager/upload.php
vendored
279
core/vendor/filemanager/upload.php
vendored
@ -1,141 +1,166 @@
|
||||
<?php
|
||||
if (!isset($config)){
|
||||
$config = include 'config/config.php';
|
||||
}
|
||||
try{
|
||||
if (!isset($config)){
|
||||
$config = include 'config/config.php';
|
||||
}
|
||||
|
||||
include 'include/utils.php';
|
||||
include 'include/utils.php';
|
||||
|
||||
if ($_SESSION['RF']["verify"] != "RESPONSIVEfilemanager")
|
||||
{
|
||||
response(trans('forbiden').AddErrorLocation(), 403)->send();
|
||||
exit;
|
||||
}
|
||||
|
||||
include 'include/mime_type_lib.php';
|
||||
|
||||
|
||||
$ftp=ftp_con($config);
|
||||
if($ftp){
|
||||
$source_base = $config['ftp_base_folder'].$config['upload_dir'];
|
||||
$thumb_base = $config['ftp_base_folder'].$config['ftp_thumbs_dir'];
|
||||
|
||||
}else{
|
||||
$source_base = $config['current_path'];
|
||||
$thumb_base = $config['thumbs_base_path'];
|
||||
}
|
||||
if(isset($_POST["fldr"])){
|
||||
$_POST['fldr'] = str_replace('undefined','',$_POST['fldr']);
|
||||
$storeFolder = $source_base.$_POST["fldr"];
|
||||
$storeFolderThumb = $thumb_base.$_POST["fldr"];
|
||||
}else{
|
||||
return;
|
||||
}
|
||||
|
||||
$fldr = rawurldecode(trim(strip_tags($_POST['fldr']),"/") ."/");
|
||||
|
||||
if (strpos($fldr,'../') !== FALSE
|
||||
|| strpos($fldr,'./') !== FALSE
|
||||
|| strpos($fldr,'..\\') !== FALSE
|
||||
|| strpos($fldr,'.\\') !== FALSE )
|
||||
{
|
||||
response(trans('wrong path'.AddErrorLocation()))->send();
|
||||
exit;
|
||||
}
|
||||
|
||||
$path = $storeFolder;
|
||||
$cycle = TRUE;
|
||||
$max_cycles = 50;
|
||||
$i = 0;
|
||||
//GET config
|
||||
while ($cycle && $i < $max_cycles)
|
||||
{
|
||||
$i++;
|
||||
if ($path == $config['current_path']) $cycle = FALSE;
|
||||
if (file_exists($path."config.php"))
|
||||
if ($_SESSION['RF']["verify"] != "RESPONSIVEfilemanager")
|
||||
{
|
||||
$configTemp = include $path.'config.php';
|
||||
$config = array_merge($config,$configTemp);
|
||||
//TODO switch to array
|
||||
$cycle = FALSE;
|
||||
response(trans('forbiden').AddErrorLocation(), 403)->send();
|
||||
exit;
|
||||
}
|
||||
$path = fix_dirname($path).'/';
|
||||
}
|
||||
|
||||
require('UploadHandler.php');
|
||||
$messages = null;
|
||||
if(trans("Upload_error_messages")!=="Upload_error_messages"){
|
||||
$messages = trans("Upload_error_messages");
|
||||
}
|
||||
|
||||
if(isset($_POST['url'])){
|
||||
$temp = tempnam('/tmp','RF');
|
||||
$ch = curl_init($_POST['url']);
|
||||
$fp = fopen($temp, 'wb');
|
||||
curl_setopt($ch, CURLOPT_FILE, $fp);
|
||||
curl_setopt($ch, CURLOPT_HEADER, 0);
|
||||
curl_exec($ch);
|
||||
curl_close($ch);
|
||||
fclose($fp);
|
||||
|
||||
$_FILES['files'] = array(
|
||||
'name' => array(basename($_POST['url'])),
|
||||
'tmp_name' => array($temp),
|
||||
'size' => array(filesize($temp)),
|
||||
'type' => null
|
||||
);
|
||||
}
|
||||
$info = pathinfo($_FILES['files']['name'][0]);
|
||||
$mime_type = $_FILES['files']['type'][0];
|
||||
if (function_exists('mime_content_type')){
|
||||
$mime_type = mime_content_type($_FILES['files']['tmp_name'][0]);
|
||||
}elseif(function_exists('finfo_open')){
|
||||
$finfo = finfo_open(FILEINFO_MIME_TYPE);
|
||||
$mime_type = finfo_file($finfo, $_FILES['files']['tmp_name'][0]);
|
||||
}else{
|
||||
include 'include/mime_type_lib.php';
|
||||
$mime_type = get_file_mime_type($_FILES['files']['tmp_name'][0]);
|
||||
}
|
||||
$extension = get_extension_from_mime($mime_type);
|
||||
|
||||
|
||||
if($extension=='so' || $extension=='' || $mime_type == "text/troff"){
|
||||
$extension = $info['extension'];
|
||||
}
|
||||
$_FILES['files']['name'][0] = fix_filename($info['filename'].".".$extension,$config);
|
||||
// LowerCase
|
||||
if ($config['lower_case'])
|
||||
{
|
||||
$_FILES['files']['name'][0] = fix_strtolower($_FILES['files']['name'][0]);
|
||||
}
|
||||
if (!checkresultingsize($_FILES['files']['size'][0])) {
|
||||
$upload_handler->response['files'][0]->error = sprintf(trans('max_size_reached'),$MaxSizeTotal).AddErrorLocation();
|
||||
echo json_encode($upload_handler->response);
|
||||
exit();
|
||||
}
|
||||
$ftp=ftp_con($config);
|
||||
if($ftp){
|
||||
$source_base = $config['ftp_base_folder'].$config['upload_dir'];
|
||||
$thumb_base = $config['ftp_base_folder'].$config['ftp_thumbs_dir'];
|
||||
|
||||
$uploadConfig = array(
|
||||
'config' => $config,
|
||||
'storeFolder' => $storeFolder,
|
||||
'storeFolderThumb' => $storeFolderThumb,
|
||||
'ftp' => $ftp,
|
||||
'upload_dir'=> dirname($_SERVER['SCRIPT_FILENAME']).'/'.$storeFolder,
|
||||
'upload_url' => $config['base_url'].$config['upload_dir'].$_POST['fldr'],
|
||||
'mkdir_mode' => $config['folderPermission'],
|
||||
'accept_file_types' => '/\.('.implode('|',$config['ext']).')$/i',
|
||||
'max_file_size' => $config['MaxSizeUpload']*1024*1024,
|
||||
'correct_image_extensions' => true,
|
||||
'print_response' => false
|
||||
);
|
||||
|
||||
if($ftp){
|
||||
if (!is_dir($config['ftp_temp_folder'])) {
|
||||
mkdir($config['ftp_temp_folder'], $config['folderPermission'], true);
|
||||
}else{
|
||||
$source_base = $config['current_path'];
|
||||
$thumb_base = $config['thumbs_base_path'];
|
||||
}
|
||||
if (!is_dir($config['ftp_temp_folder']."thumbs")) {
|
||||
mkdir($config['ftp_temp_folder']."thumbs", $config['folderPermission'], true);
|
||||
if(isset($_POST["fldr"])){
|
||||
$_POST['fldr'] = str_replace('undefined','',$_POST['fldr']);
|
||||
$storeFolder = $source_base.$_POST["fldr"];
|
||||
$storeFolderThumb = $thumb_base.$_POST["fldr"];
|
||||
}else{
|
||||
return;
|
||||
}
|
||||
$uploadConfig['upload_dir'] = $config['ftp_temp_folder'];
|
||||
|
||||
$fldr = rawurldecode(trim(strip_tags($_POST['fldr']),"/") ."/");
|
||||
|
||||
if (strpos($fldr,'../') !== FALSE
|
||||
|| strpos($fldr,'./') !== FALSE
|
||||
|| strpos($fldr,'..\\') !== FALSE
|
||||
|| strpos($fldr,'.\\') !== FALSE )
|
||||
{
|
||||
response(trans('wrong path'.AddErrorLocation()))->send();
|
||||
exit;
|
||||
}
|
||||
|
||||
$path = $storeFolder;
|
||||
$cycle = TRUE;
|
||||
$max_cycles = 50;
|
||||
$i = 0;
|
||||
//GET config
|
||||
while ($cycle && $i < $max_cycles)
|
||||
{
|
||||
$i++;
|
||||
if ($path == $config['current_path']) $cycle = FALSE;
|
||||
if (file_exists($path."config.php"))
|
||||
{
|
||||
$configTemp = include $path.'config.php';
|
||||
$config = array_merge($config,$configTemp);
|
||||
//TODO switch to array
|
||||
$cycle = FALSE;
|
||||
}
|
||||
$path = fix_dirname($path).'/';
|
||||
}
|
||||
|
||||
require('UploadHandler.php');
|
||||
$messages = null;
|
||||
if(trans("Upload_error_messages")!=="Upload_error_messages"){
|
||||
$messages = trans("Upload_error_messages");
|
||||
}
|
||||
|
||||
if(isset($_POST['url'])){
|
||||
$temp = tempnam('/tmp','RF');
|
||||
$ch = curl_init($_POST['url']);
|
||||
$fp = fopen($temp, 'wb');
|
||||
curl_setopt($ch, CURLOPT_FILE, $fp);
|
||||
curl_setopt($ch, CURLOPT_HEADER, 0);
|
||||
curl_exec($ch);
|
||||
curl_close($ch);
|
||||
fclose($fp);
|
||||
|
||||
$_FILES['files'] = array(
|
||||
'name' => array(basename($_POST['url'])),
|
||||
'tmp_name' => array($temp),
|
||||
'size' => array(filesize($temp)),
|
||||
'type' => null
|
||||
);
|
||||
}
|
||||
|
||||
if($config['mime_extension_rename']){
|
||||
$info = pathinfo($_FILES['files']['name'][0]);
|
||||
$mime_type = $_FILES['files']['type'][0];
|
||||
if (function_exists('mime_content_type')){
|
||||
$mime_type = mime_content_type($_FILES['files']['tmp_name'][0]);
|
||||
}elseif(function_exists('finfo_open')){
|
||||
$finfo = finfo_open(FILEINFO_MIME_TYPE);
|
||||
$mime_type = finfo_file($finfo, $_FILES['files']['tmp_name'][0]);
|
||||
}else{
|
||||
include 'include/mime_type_lib.php';
|
||||
$mime_type = get_file_mime_type($_FILES['files']['tmp_name'][0]);
|
||||
}
|
||||
$extension = get_extension_from_mime($mime_type);
|
||||
|
||||
if($extension=='so' || $extension=='' || $mime_type == "text/troff"){
|
||||
$extension = $info['extension'];
|
||||
}
|
||||
$filename = $info['filename'].".".$extension;
|
||||
}else{
|
||||
$filename = $_FILES['files']['name'][0];
|
||||
}
|
||||
$_FILES['files']['name'][0] = fix_filename($filename,$config);
|
||||
|
||||
// LowerCase
|
||||
if ($config['lower_case'])
|
||||
{
|
||||
$_FILES['files']['name'][0] = fix_strtolower($_FILES['files']['name'][0]);
|
||||
}
|
||||
if (!checkresultingsize($_FILES['files']['size'][0])) {
|
||||
$upload_handler->response['files'][0]->error = sprintf(trans('max_size_reached'),$MaxSizeTotal).AddErrorLocation();
|
||||
echo json_encode($upload_handler->response);
|
||||
exit();
|
||||
}
|
||||
|
||||
$uploadConfig = array(
|
||||
'config' => $config,
|
||||
'storeFolder' => $storeFolder,
|
||||
'storeFolderThumb' => $storeFolderThumb,
|
||||
'ftp' => $ftp,
|
||||
'upload_dir'=> dirname($_SERVER['SCRIPT_FILENAME']).'/'.$storeFolder,
|
||||
'upload_url' => $config['base_url'].$config['upload_dir'].$_POST['fldr'],
|
||||
'mkdir_mode' => $config['folderPermission'],
|
||||
'max_file_size' => $config['MaxSizeUpload']*1024*1024,
|
||||
'correct_image_extensions' => true,
|
||||
'print_response' => false
|
||||
);
|
||||
if(!$config['ext_blacklist']){
|
||||
$uploadConfig['accept_file_types'] = '/\.('.implode('|',$config['ext']).')$/i';
|
||||
}else{
|
||||
$uploadConfig['accept_file_types'] = '/\.(?!('.implode('|',$config['ext_blacklist']).')$)/i';
|
||||
}
|
||||
|
||||
|
||||
if($ftp){
|
||||
if (!is_dir($config['ftp_temp_folder'])) {
|
||||
mkdir($config['ftp_temp_folder'], $config['folderPermission'], true);
|
||||
}
|
||||
if (!is_dir($config['ftp_temp_folder']."thumbs")) {
|
||||
mkdir($config['ftp_temp_folder']."thumbs", $config['folderPermission'], true);
|
||||
}
|
||||
$uploadConfig['upload_dir'] = $config['ftp_temp_folder'];
|
||||
}
|
||||
|
||||
$upload_handler = new UploadHandler($uploadConfig,true, $messages);
|
||||
|
||||
}catch(Exception $e){
|
||||
$return = array();
|
||||
foreach($_FILES['files']['name'] as $i => $name){
|
||||
$return[] = array(
|
||||
'name' => $name,
|
||||
'error' => $e->getMessage(),
|
||||
'size' => $_FILES['files']['size'][$i],
|
||||
'type' => $_FILES['files']['type'][$i]
|
||||
);
|
||||
}
|
||||
echo json_encode(array("files"=>$return));
|
||||
}
|
||||
|
||||
$upload_handler = new UploadHandler($uploadConfig,true, $messages);
|
||||
|
||||
|
@ -19,6 +19,10 @@ if(version_compare(PHP_VERSION, '5.6.0', '<')) {
|
||||
exit('PHP 5.6+ required.');
|
||||
}
|
||||
|
||||
/* Set locale to French */
|
||||
date_default_timezone_set('Europe/Paris');
|
||||
setlocale (LC_TIME, 'fra_fra');
|
||||
|
||||
/**
|
||||
* Initialisation de Zwii
|
||||
*/
|
||||
|
@ -106,7 +106,8 @@ class blog extends common {
|
||||
// Met en forme le tableau
|
||||
$comment = $comments[$commentIds[$i]];
|
||||
self::$comments[] = [
|
||||
date('d/m/Y H:i', $comment['createdOn']),
|
||||
//date('d/m/Y H:i', $comment['createdOn']),
|
||||
strftime('%d %B %Y à %H:%M', $comment['createdOn']),
|
||||
$comment['content'],
|
||||
$comment['userId'] ? $this->getData(['user', $comment['userId'], 'firstname']) . ' ' . $this->getData(['user', $comment['userId'], 'lastname']) : $comment['author'],
|
||||
template::button('blogCommentDelete' . $commentIds[$i], [
|
||||
@ -161,7 +162,8 @@ class blog extends common {
|
||||
// Met en forme le tableau
|
||||
self::$articles[] = [
|
||||
$this->getData(['module', $this->getUrl(0), $articleIds[$i], 'title']),
|
||||
date('d/m/Y H:i', $this->getData(['module', $this->getUrl(0), $articleIds[$i], 'publishedOn'])),
|
||||
// date('d/m/Y H:i', $this->getData(['module', $this->getUrl(0), $articleIds[$i], 'publishedOn'])),
|
||||
strftime('%d %B %Y à %H:%M', $this->getData(['module', $this->getUrl(0), $articleIds[$i], 'publishedOn'])),
|
||||
self::$states[$this->getData(['module', $this->getUrl(0), $articleIds[$i], 'state'])],
|
||||
template::button('blogConfigEdit' . $articleIds[$i], [
|
||||
'href' => helper::baseUrl() . $this->getUrl(0) . '/edit/' . $articleIds[$i],
|
||||
|
@ -1,10 +1,18 @@
|
||||
<!--
|
||||
<div id="blogArticlePicture" style="background-image:url('<?php echo helper::baseUrl(false) . 'site/file/source/' . $this->getData(['module', $this->getUrl(0), $this->getUrl(1), 'picture']); ?>');"></div>
|
||||
<h4 class="textAlignRight">
|
||||
<?php echo $this->getData(['user', $this->getData(['module', $this->getUrl(0), $this->getUrl(1), 'userId']), 'firstname']); ?>
|
||||
<?php echo $this->getData(['user', $this->getData(['module', $this->getUrl(0), $this->getUrl(1), 'userId']), 'lastname']); ?>
|
||||
le <?php echo date('d/m/Y H:i', $this->getData(['module', $this->getUrl(0), $this->getUrl(1), 'publishedOn'])); ?>
|
||||
</h4>
|
||||
-->
|
||||
<div><img src="<?php echo helper::baseUrl(false) . 'site/file/source/' . $this->getData(['module', $this->getUrl(0), $this->getUrl(1), 'picture']); ?>"></div>
|
||||
|
||||
<?php echo $this->getData(['module', $this->getUrl(0), $this->getUrl(1), 'content']); ?>
|
||||
|
||||
<!-- <h4 class="textAlignRight"> -->
|
||||
<p class="signature">
|
||||
<?php echo $this->getData(['user', $this->getData(['module', $this->getUrl(0), $this->getUrl(1), 'userId']), 'firstname']); ?>
|
||||
<?php echo $this->getData(['user', $this->getData(['module', $this->getUrl(0), $this->getUrl(1), 'userId']), 'lastname']); ?>
|
||||
le <?php echo strftime('%d %B %Y à %H:%M', $this->getData(['module', $this->getUrl(0), $this->getUrl(1), 'publishedOn'])); ?>
|
||||
<!-- </h4> -->
|
||||
</p>
|
||||
|
||||
<div class="clearBoth"></div>
|
||||
<h2 id="comment">
|
||||
<?php $commentsNb = count($this->getData(['module', $this->getUrl(0), $this->getUrl(1), 'comment'])); ?>
|
||||
@ -84,7 +92,7 @@
|
||||
<?php else: ?>
|
||||
<?php echo $comment['author']; ?>
|
||||
<?php endif; ?>
|
||||
le <?php echo date('d/m/Y - H:i', $comment['createdOn']); ?>
|
||||
le <?php echo strftime('%d %B %Y à %H:%M', $comment['createdOn']); ?>
|
||||
</h4>
|
||||
<?php echo $comment['content']; ?>
|
||||
</div>
|
||||
@ -93,8 +101,6 @@
|
||||
</div>
|
||||
<?php if($this->getUser('group') >= self::GROUP_ADMIN): ?>
|
||||
<div class="row">
|
||||
<div class="col4">
|
||||
</div>
|
||||
<div class="col2">
|
||||
<?php echo template::button('blogBack', [
|
||||
'class' => 'buttonGrey',
|
||||
@ -103,20 +109,13 @@
|
||||
'value' => 'Retour'
|
||||
]); ?>
|
||||
</div>
|
||||
<div class="col2">
|
||||
<div class="col2 offset8">
|
||||
<?php echo template::button('blogEdit', [
|
||||
'class' => 'buttonGrey',
|
||||
<<<<<<< HEAD
|
||||
'href' => helper::baseUrl() . $this->getUrl(0). '/edit/' . $this->getUrl(1),
|
||||
=======
|
||||
'class' => 'buttonBlue',
|
||||
'href' => helper::baseUrl() . $this->getUrl(0) . '/edit/' . $this->getUrl(1),
|
||||
>>>>>>> 8.3.14
|
||||
'value' => 'Editer'
|
||||
]); ?>
|
||||
</div>
|
||||
<div class="col4">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<?php else: ?>
|
||||
<div class="row">
|
||||
|
@ -4,8 +4,8 @@
|
||||
<?php foreach($module::$articles as $articleId => $article): ?>
|
||||
<div class="block">
|
||||
<h4>
|
||||
<?php echo $this->getData(['user', $article['userId'], 'firstname']) . ' ' . $this->getData(['user', $article['userId'], 'lastname']); ?>
|
||||
le <?php echo date('d/m/Y H:i', $article['publishedOn']); ?>
|
||||
<!-- Le <?php echo date('d M Y à H:i', $article['publishedOn']); ?> -->
|
||||
Le <?php echo strftime('%d %B %Y à %H:%M', $article['publishedOn']); ?>
|
||||
<div class="blogComment">
|
||||
<a href="<?php echo helper::baseUrl() . $this->getUrl(0) . '/' . $articleId; ?>#comment">
|
||||
<?php echo count($article['comment']); ?>
|
||||
@ -25,6 +25,9 @@
|
||||
<?php echo helper::subword(strip_tags($article['content']), 0, 150); ?>...
|
||||
<a href="<?php echo helper::baseUrl() . $this->getUrl(0) . '/' . $articleId; ?>">Lire la suite</a>
|
||||
</p>
|
||||
<p class="signature">
|
||||
<?php echo $this->getData(['user', $article['userId'], 'firstname']) . ' ' . $this->getData(['user', $article['userId'], 'lastname']); ?>
|
||||
</p>
|
||||
</div>
|
||||
<?php endforeach; ?>
|
||||
</div>
|
||||
|
@ -4,11 +4,13 @@
|
||||
<?php foreach($module::$news as $newsId => $news): ?>
|
||||
<div class="block">
|
||||
<h4>
|
||||
<?php echo $this->getData(['user', $news['userId'], 'firstname']) . ' ' . $this->getData(['user', $news['userId'], 'lastname']); ?>
|
||||
le <?php echo date('d/m/Y H:i', $news['publishedOn']); ?>
|
||||
Le <?php echo strftime('%d %B %Y à %H:%M', $news['publishedOn']); ?>
|
||||
</h4>
|
||||
<h2><?php echo $news['title']; ?></h2>
|
||||
<?php echo $news['content']; ?>
|
||||
<p class="signature">
|
||||
<?php echo $this->getData(['user', $news['userId'], 'firstname']) . ' ' . $this->getData(['user', $news['userId'], 'lastname']); ?>
|
||||
</p>
|
||||
<div class="clearBoth"></div>
|
||||
</div>
|
||||
<?php endforeach; ?>
|
||||
|
@ -12,21 +12,25 @@
|
||||
* @link http://zwiicms.com/
|
||||
*
|
||||
*
|
||||
**/
|
||||
*
|
||||
*
|
||||
* if (document.referrer.indexOf("edit") === -1)
|
||||
* {
|
||||
* core.confirm(
|
||||
* "Souhaitez-vous accéder à l'interface de modification de la page ? En cas de refus, vous serez redirigé vers l'URL saisie dans le module de redirection.",
|
||||
* function() {
|
||||
* $(location).attr("href", "<?php echo helper::baseUrl(); ?>page/edit/<?php echo $this->getUrl(0); ?>");
|
||||
* },
|
||||
* function() {
|
||||
* $(location).attr("href", "<?php echo helper::baseUrl() . $this->getUrl(); ?>/force");
|
||||
* }
|
||||
* );
|
||||
* }
|
||||
* else
|
||||
* {
|
||||
* $(location).attr("href", "<?php echo helper::baseUrl(); ?>");
|
||||
* }
|
||||
**/
|
||||
|
||||
if (document.referrer.indexOf("edit") === -1)
|
||||
{
|
||||
core.confirm(
|
||||
"Souhaitez-vous accéder à l'interface de modification de la page ? En cas de refus, vous serez redirigé vers l'URL saisie dans le module de redirection.",
|
||||
function() {
|
||||
$(location).attr("href", "<?php echo helper::baseUrl(); ?>page/edit/<?php echo $this->getUrl(0); ?>");
|
||||
},
|
||||
function() {
|
||||
$(location).attr("href", "<?php echo helper::baseUrl() . $this->getUrl(); ?>/force");
|
||||
}
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
$(location).attr("href", "<?php echo helper::baseUrl(); ?>");
|
||||
}
|
||||
|
||||
self.location='<?php echo helper::baseUrl(); ?>page/edit/<?php echo $this->getUrl(0); ?>';
|
||||
|
@ -1,126 +0,0 @@
|
||||
/**
|
||||
* Voici une feuille de style type, bien entendu vous pouvez ajouter
|
||||
* ou supprimer des propriétés CSS en fonction de vos besoins.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Éléments principaux
|
||||
*/
|
||||
|
||||
/* Fond du site */
|
||||
body {
|
||||
}
|
||||
|
||||
/* Site */
|
||||
#site {
|
||||
}
|
||||
|
||||
/* Bannière */
|
||||
header {
|
||||
}
|
||||
|
||||
/* Titre de la bannière */
|
||||
header span {
|
||||
}
|
||||
|
||||
/* Menu */
|
||||
nav {
|
||||
}
|
||||
|
||||
/* Items du menu */
|
||||
nav a {
|
||||
}
|
||||
|
||||
/* Items au survol du menu */
|
||||
nav a:hover {
|
||||
}
|
||||
|
||||
/* Item courant du menu */
|
||||
nav a.active {
|
||||
}
|
||||
|
||||
/* Bas de page */
|
||||
footer {
|
||||
}
|
||||
|
||||
/* Liens du bas de page */
|
||||
footer a {
|
||||
}
|
||||
|
||||
/* Réseaux sociaux dans le bas de page */
|
||||
#footerSocials {
|
||||
}
|
||||
|
||||
/* Texte libre dans le bas de page */
|
||||
#footerText {
|
||||
}
|
||||
|
||||
/* Copyright dans le bas de page */
|
||||
#footerCopyright {
|
||||
}
|
||||
|
||||
/**
|
||||
* Éléments de contenu
|
||||
*/
|
||||
|
||||
/* Titres */
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4 {
|
||||
}
|
||||
|
||||
/* Liens */
|
||||
a {
|
||||
}
|
||||
|
||||
/* Liens au survol */
|
||||
a:hover {
|
||||
}
|
||||
|
||||
/* Liens au clic */
|
||||
a:active {
|
||||
}
|
||||
|
||||
/* Boutons */
|
||||
.button,
|
||||
button[type='submit'],
|
||||
.pagination a {
|
||||
}
|
||||
|
||||
/* Boutons au survol */
|
||||
.button:hover,
|
||||
button[type='submit']:hover,
|
||||
.pagination a:hover {
|
||||
}
|
||||
|
||||
/* Boutons au clic */
|
||||
.button:active,
|
||||
button[type='submit']:active,
|
||||
.pagination a:active {
|
||||
}
|
||||
|
||||
/* Cases à cocher */
|
||||
input[type='checkbox']:checked + label:before {
|
||||
}
|
||||
|
||||
/* Cases à cocher au survol */
|
||||
input[type='checkbox']:not(:active):checked:hover + label:before,
|
||||
input[type='checkbox']:active + label:before {
|
||||
}
|
||||
|
||||
/* Champs de formulaire */
|
||||
input[type='text'],
|
||||
input[type='password'],
|
||||
.inputFile,
|
||||
select,
|
||||
textarea {
|
||||
}
|
||||
|
||||
/* Champs de formulaire au survol */
|
||||
input[type='text']:hover,
|
||||
input[type='password']:hover,
|
||||
.inputFile:hover,
|
||||
select:hover,
|
||||
textarea:hover {
|
||||
}
|
File diff suppressed because one or more lines are too long
@ -1,5 +0,0 @@
|
||||
<<<<<<< HEAD
|
||||
/*61addf487f6ccf8de490f4be6feb4c7f*/@import url("https://fonts.googleapis.com/css?family=Open+Sans|Oswald|Oswald");body{background-color:rgba(236,239,241,1);font-family:"Open Sans",sans-serif}a{color:rgba(74,105,189,1)}a:hover{color:rgba(59,90,174,1)}body,.row > div{font-size:14px}body,.block h4,input[type='email'],input[type='text'],input[type='password'],.inputFile,select,textarea,.inputFile,.button.buttonGrey,.button.buttonGrey:hover{color:rgba(33, 34, 35, 1)}.container{max-width:1170px}#site{background-color:rgba(255, 255, 255, 1);border-radius:0;box-shadow:0 #212223}.speechBubble,.button,.button:hover,button[type='submit'],.pagination a,.pagination a:hover,input[type='checkbox']:checked + label:before,input[type='radio']:checked + label:before,.helpContent{background-color:rgba(74,105,189,1);color:white}.helpButton span{color:rgba(74,105,189,1)}input[type='text']:hover,input[type='password']:hover,.inputFile:hover,select:hover,textarea:hover{border-color:rgba(74,105,189,1)}.speechBubble:before{border-color:rgba(74,105,189,1) transparent transparent transparent}.button:hover,button[type='submit']:hover,.pagination a:hover,input[type='checkbox']:not(:active):checked:hover + label:before,input[type='checkbox']:active + label:before,input[type='radio']:checked:hover + label:before,input[type='radio']:not(:checked):active + label:before{background-color:rgba(59,90,174,1)}.helpButton span:hover{color:rgba(59,90,174,1)}.button:active,button[type='submit']:active,.pagination a:active{background-color:rgba(54,85,169,1)}h1,h2,h3,h4,h5,h6{color:rgba(74,105,189,1);font-family:"Oswald",sans-serif;font-weight:normal;text-transform:none}header{background-size:auto}header{background-color:rgba(255,255,255,1);height:150px;line-height:150px;text-align:center}@media (max-width: 767px) {header{height:75px;line-height:75px;}}header span{color:rgba(33,34,35,1);font-family:"Oswald",sans-serif;font-weight:normal;font-size:2em;text-transform:none}nav,nav a{background-color:rgba(74,105,189,1)}nav a,#toggle span,nav a:hover{color:rgba(255, 255, 255, 1)}nav a:hover{background-color:rgba(59,90,174,1)}nav a.active{background-color:rgba(54,85,169,1)}#menu{text-align:left}#toggle span,#menu a{padding:15px 10px;font-weight:normal;font-size:1em;text-transform:none}footer{background-color:rgba(255,255,255,1);color:rgba(33, 34, 35, 1)}footer a{color:rgba(33, 34, 35, 1)}footer .container > div{margin:10px 0}#footerSocials{text-align:center}#footerText{text-align:center}#footerCopyright{text-align:center}
|
||||
=======
|
||||
/*eb112aa9a53e26e991af5d7ef6788311*/@import url("https://fonts.googleapis.com/css?family=Open+Sans|Oswald|Oswald");body{background-color:rgba(25,58,81,1);font-family:"Open Sans",sans-serif}a{color:rgba(74,105,189,1)}a:hover{color:rgba(59,90,174,1)}body,.row > div{font-size:14px}body,.block h4,input[type='email'],input[type='text'],input[type='password'],.inputFile,select,textarea,.inputFile,.button.buttonGrey,.button.buttonGrey:hover{color:rgba(33, 34, 35, 1)}.container{max-width:1170px}#site{background-color:rgba(255, 255, 255, 1);border-radius:0;box-shadow:0 #212223}.speechBubble,.button,.button:hover,button[type='submit'],.pagination a,.pagination a:hover,input[type='checkbox']:checked + label:before,input[type='radio']:checked + label:before,.helpContent{background-color:rgba(74,105,189,1);color:white}.helpButton span{color:rgba(74,105,189,1)}input[type='text']:hover,input[type='password']:hover,.inputFile:hover,select:hover,textarea:hover{border-color:rgba(74,105,189,1)}.speechBubble:before{border-color:rgba(74,105,189,1) transparent transparent transparent}.button:hover,button[type='submit']:hover,.pagination a:hover,input[type='checkbox']:not(:active):checked:hover + label:before,input[type='checkbox']:active + label:before,input[type='radio']:checked:hover + label:before,input[type='radio']:not(:checked):active + label:before{background-color:rgba(59,90,174,1)}.helpButton span:hover{color:rgba(59,90,174,1)}.button:active,button[type='submit']:active,.pagination a:active{background-color:rgba(54,85,169,1)}h1,h2,h3,h4,h5,h6{color:rgba(74,105,189,1);font-family:"Oswald",sans-serif;font-weight:normal;text-transform:none}header{background-size:auto}header{background-color:rgba(255,255,255,1);height:150px;line-height:150px;text-align:center}@media (max-width: 767px) {header{height:75px;line-height:75px;}}header span{color:rgba(33,34,35,1);font-family:"Oswald",sans-serif;font-weight:normal;font-size:2em;text-transform:none}nav,nav a{background-color:rgba(74,105,189,1)}nav a,#toggle span,nav a:hover{color:rgba(255, 255, 255, 1)}nav a:hover{background-color:rgba(59,90,174,1)}nav a.active{background-color:rgba(54,85,169,1)}#menu{text-align:left}#toggle span,#menu a{padding:15px 10px;font-weight:normal;font-size:1em;text-transform:none}footer{background-color:rgba(255,255,255,1);color:rgba(33, 34, 35, 1)}footer a{color:rgba(33, 34, 35, 1)}footer .container > div{margin:10px 0}#footerSocials{text-align:center}#footerText{text-align:center}#footerCopyright{text-align:center}
|
||||
>>>>>>> 8.3.14
|
Loading…
Reference in New Issue
Block a user