Merge branch '10501' into 11000

This commit is contained in:
Fred Tempez 2021-03-23 08:43:56 +01:00
commit 1bd5e0b17c
12 changed files with 65 additions and 45 deletions

View File

@ -10,6 +10,13 @@
- Configuration du site :
- Activation et désactivation de la déconnexion automatique empêchant plusieurs sessions avec le même compte.
## version 10.5.01
- Modifications :
- Rechargement du fichier de style common.css et du jeu d'icônes du système après une mise à jour.
- News 2.3 : ajout de la signature du rédacteur dans le module news (actualités, idem module blog)
Corrections :
- Mode maintenance, titre non masqué d'une page personnalisée.
## version 10.5.00
**A partir de cette version, les versions de php inférieures à 7.2 ne sont plus supportées.**
- Nouveauté :

View File

@ -108,7 +108,7 @@ class helper {
// Creation du ZIP
$baseName = str_replace('/','',helper::baseUrl(false,false));
$baseName = empty($baseName) ? 'ZwiiCMS' : $baseName;
$fileName = $baseName . '-backup-' . date('Y-m-d-h-i-s', time()) . '.zip';
$fileName = $baseName . '-backup-' . date('Y-m-d-H-i-s', time()) . '.zip';
$zip = new ZipArchive();
$zip->open($folder . $fileName, ZipArchive::CREATE | ZipArchive::OVERWRITE);
$directory = 'site/';

View File

@ -1750,7 +1750,7 @@ class core extends common {
$css .= '.blogDate {color:' . $this->getData(['theme', 'text', 'textColor']) . ';}.blogPicture img{border:1px solid ' . $this->getData(['theme', 'text', 'textColor']) . '; box-shadow: 1px 1px 5px ' . $this->getData(['theme', 'text', 'textColor']) . ';}';
// Couleur fixée dans admin.css
//$css .= '.button.buttonGrey,.button.buttonGrey:hover{color:' . $this->getData(['theme', 'text', 'textColor']) . '}';
$css .= '.container{max-width:' . $this->getData(['theme', 'site', 'width']) . '}';
$css .= '.container, .helpDisplayContent{max-width:' . $this->getData(['theme', 'site', 'width']) . '}';
$margin = $this->getData(['theme', 'site', 'margin']) ? '0' : '20px';
// Marge supplémentaire lorsque le pied de page est fixe
if ( $this->getData(['theme', 'footer', 'fixed']) === true &&
@ -2527,7 +2527,7 @@ class layout extends common {
$items .= '<span id="footerDisplayLegal"';
$items .= $this->getData(['theme','footer','displayLegal']) === false ? ' class="displayNone" >' : '>';
if ($this->getData(['locale','legalPageId']) !== 'none') {
$items .= '<wbr>&nbsp;|&nbsp;<a href="' . helper::baseUrl() . $this->getData(['locale','legalPageId']) . '" data-tippy-content="Mentions Légales">Mentions légales</a>';
$items .= '<wbr>&nbsp;|&nbsp;<a href="' . helper::baseUrl() . $this->getData(['locale','legalPageId']) . '" data-tippy-content="Mentions légales">Mentions légales</a>';
}
$items .= '</span>';
// Affichage du lien de connexion
@ -3116,7 +3116,11 @@ class layout extends common {
foreach($vendorFiles as $vendorFile) {
switch(pathinfo($vendorFile, PATHINFO_EXTENSION)) {
case 'css':
echo '<link rel="stylesheet" href="' . helper::baseUrl(false) . $vendorPath . $vendorFile . '">';
// Force le rechargement lors d'une mise à jour du jeu d'icônes
$reload = $vendorPath === 'core/vendor/zwiico/'
? '?' . md5_file('core/vendor/zwiico/css/zwiico-codes.css')
: '';
echo '<link rel="stylesheet" href="' . helper::baseUrl(false) . $vendorPath . $vendorFile . $reload . '">';
break;
case 'js':
echo '<script src="' . helper::baseUrl(false) . $vendorPath . $vendorFile . '"></script>';

View File

@ -1694,15 +1694,17 @@ th.col12 {
.helpDisplayContent {
display: none;
position: fixed;
width: 100%;
bottom: 15px;
padding: 2px 10px;
margin-left: -20px;
-webkit-box-shadow: 5px 5px 11px 0px #222222;
box-shadow: 5px 5px 11px 0px #222222;
border-radius: 5px;
padding: 2px 10px;
background-color:#333;
color: white;
position: fixed;
z-index: 30;
bottom: 5px;
}
.helpDisplayButton {

View File

@ -11,7 +11,7 @@
<?php $layout->showFavicon(); ?>
<?php $layout->showVendor(); ?>
<?php $layout->showAnalytics(); ?>
<link rel="stylesheet" href="<?php echo helper::baseUrl(false); ?>core/layout/common.css">
<link rel="stylesheet" href="<?php echo helper::baseUrl(false); ?>core/layout/common.css?<?php echo md5_file('core/layout/common.css');?>">
<link rel="stylesheet" href="<?php echo helper::baseUrl(false) . self::DATA_DIR; ?>theme.css?<?php echo md5_file(self::DATA_DIR.'theme.css'); ?>">
<link rel="stylesheet" href="<?php echo helper::baseUrl(false) . self::DATA_DIR; ?>custom.css?<?php echo md5_file(self::DATA_DIR.'custom.css'); ?>">
<!-- Détection RSS -->

View File

@ -19,9 +19,9 @@
<?php else: ?>
<?php echo template::speech('Aucun module installé.'); ?>
<?php endif; ?>
<div class="col10 helpDisplayContent">
<p>Exporter produit une archive au nom du module contenant les pages concernées ainsi que les données et ressources utilisées par le module dans ces pages.
Vous pouvez vous en servir comme d'une sauvegarde partielle ou pour transférer les pages et les données du module vers un autre site.</p>
<p>Une fois le module installé l'import permet de restaurer les pages et les données sauvegardées. Si une page de même nom existe sur votre site vous serez invité à modifier son nom.</p>
<div class="helpDisplayContent">
<p>Exporter produit une archive au nom du module contenant les pages concernées ainsi que les données et ressources utilisées par le module dans ces pages.</p>
<p>Vous pouvez vous en servir comme d'une sauvegarde partielle ou pour transférer les pages et les données du module vers un autre site.</p>
<p>Une fois le module installé l'import permet de restaurer les pages et les données sauvegardées.
Si une page de même nom existe sur votre site vous serez invité à modifier son nom.</p>
</div>

View File

@ -33,7 +33,9 @@ class maintenance extends common {
AND $this->getData(['page',$this->getData(['locale','page302'])]) ) {
$this->addOutput([
'display' => self::DISPLAY_LAYOUT_LIGHT,
'title' => $this->getData(['page',$this->getData(['locale','page302']),'title']),
'title' => $this->getData(['page',$this->getData(['locale','page302']),'hideTitle'])
? ''
: $this->getData(['page',$this->getData(['locale','page302']),'title']),
'content' => $this->getdata(['page',$this->getData(['locale','page302']),'content']),
'view' => 'index'
]);

View File

@ -424,9 +424,11 @@ class theme extends common {
'imageContainer' => $this->getInput('themeHeaderImageContainer')
]]);
// Modification de la position du menu selon la position de la bannière
switch ($this->getInput('themeHeaderPosition') &&
$this->getData(['theme','menu','position']) !== 'site' &&
$this->getData(['theme','menu','position']) !== 'top' ) {
if ( $this->getInput('themeHeaderPosition') &&
( $this->getData(['theme','menu','position']) !== 'site' ||
$this->getData(['theme','menu','position']) !== 'top') )
{
switch ($this->getInput('themeHeaderPosition')) {
case 'site' :
$position = str_replace ('body','site',$this->getData(['theme','menu','position']));
break;
@ -436,6 +438,7 @@ class theme extends common {
default:
$position = $this->getData(['theme','menu','position']);
}
}
$this->setData(['theme', 'menu', [
'backgroundColor' => $this->getData(['theme', 'menu', 'backgroundColor']),
@ -774,7 +777,7 @@ class theme extends common {
*/
private function zipTheme($modele) {
// Creation du dossier
$zipFilename = $modele . ' ' .date('d m Y').' '.date('H i s ').'.zip';
$zipFilename = $modele . date('Y-m-d-H-i-s', time()) . '.zip';
$zip = new ZipArchive();
if ($zip->open(self::TEMP_DIR . $zipFilename, ZipArchive::CREATE | ZipArchive::OVERWRITE ) === TRUE) {
switch ($modele) {

View File

@ -12,7 +12,7 @@
* @link http://zwiicms.fr/
*/
$(document).ready(function(){
$(document).ready(function(){
$("header").css("line-height", "");
$("header").css("height", "");
});

View File

@ -80,14 +80,6 @@ $("input, select").on("change", function() {
css += 'nav{padding:0 10px;}';
}
// Ajout du css au DOM
$("#themePreview").remove();
$("<style>")
.attr("type", "text/css")
.attr("id", "themePreview")
.text(css)
.appendTo("head");
// Position du menu
switch($("#themeMenuPosition").val()) {
case 'hide':
@ -129,6 +121,15 @@ $("input, select").on("change", function() {
$("nav").show().prependTo("#site");
break;
}
// Ajout du css au DOM
$("#themePreview").remove();
$("<style>")
.attr("type", "text/css")
.attr("id", "themePreview")
.text(css)
.appendTo("head");
});
//
// Lien de connexion (addClass() et removeClass() au lieu de hide() et show() car ils ne conservent pas le display-inline: block; de #themeMenuLoginLink)

View File

@ -15,7 +15,7 @@
class news extends common {
const VERSION = '2.2';
const VERSION = '2.3';
const REALNAME = 'Actualités';
const DELETE = true;
const UPDATE = '0.0';
@ -304,6 +304,7 @@ class news extends common {
// News en fonction de la pagination
for($i = $pagination['first']; $i < $pagination['last']; $i++) {
self::$news[$newsIds[$i]] = $this->getData(['module', $this->getUrl(0),'posts', $newsIds[$i]]);
self::$news[$newsIds[$i]]['userId'] = $this->signature($this->getData(['module', $this->getUrl(0), 'posts', $newsIds[$i], 'userId']));
}
// Valeurs en sortie
$this->addOutput([

View File

@ -15,7 +15,7 @@
<?php echo mb_detect_encoding(strftime('%d %B %Y', $news['publishedOn']), 'UTF-8', true)
? strftime('%d %B %Y', $news['publishedOn'])
: utf8_encode(strftime('%d %B %Y', $news['publishedOn'])); ?>
- <?php echo $this->getData(['user', $news['userId'], 'firstname']) . ' ' . $this->getData(['user', $news['userId'], 'lastname']); ?>
- <?php echo $news['userId']; ?>
<!-- Bloc edition -->
<?php if (