forked from ZwiiCMS-Team/ZwiiCMS
Merge branch '11000' of https://forge.chapril.org/ZwiiCMS-Team/ZwiiCMS into 11000
This commit is contained in:
commit
24d9d08f96
@ -10,6 +10,12 @@
|
|||||||
- Activation et désactivation de la déconnexion automatique empêchant plusieurs sessions avec le même compte.
|
- Activation et désactivation de la déconnexion automatique empêchant plusieurs sessions avec le même compte.
|
||||||
|
|
||||||
## version 10.4.00
|
## version 10.4.00
|
||||||
|
Corrections :
|
||||||
|
- Bug de pages non accessibles dans le menu suite à la création d'entrées fantômes dans le fichier de données de modules.
|
||||||
|
- Nettoyage du fichiers des données de modules des entrées fantômes.
|
||||||
|
- Thème : déformation des images en arrière-plan dans les modes responsives cover et contain lorsque la longueur de la page change. L'image en arrière-plan est désormais placée dans la balise html et l'option fixe s'active lorsque cover ou contain sont sélectionnés.
|
||||||
|
- Thème : déformation du sélecteur de fichiers dans certains formats de page.
|
||||||
|
- Module Form : mauvais affichage du guillemet et de l'apostrophe dans les noms des champs lors de l'édition.
|
||||||
- Modifications :
|
- Modifications :
|
||||||
- Filtrage des URL générées par facebook (FBCLID) occasionnant une erreur 404
|
- Filtrage des URL générées par facebook (FBCLID) occasionnant une erreur 404
|
||||||
- Captcha arithmétique, activation recommandée dans la configuration.
|
- Captcha arithmétique, activation recommandée dans la configuration.
|
||||||
|
@ -1532,12 +1532,8 @@ class common {
|
|||||||
foreach ($pageList as $parentKey => $parent) {
|
foreach ($pageList as $parentKey => $parent) {
|
||||||
//La page est un blog
|
//La page est un blog
|
||||||
if ($this->getData(['page',$parent,'moduleId']) === 'blog' ) {
|
if ($this->getData(['page',$parent,'moduleId']) === 'blog' ) {
|
||||||
//echo "<pre>".$parent;
|
|
||||||
$articleIds = array_keys(helper::arrayCollumn($this->getData(['module', $parent, 'posts']), 'publishedOn', 'SORT_DESC'));
|
$articleIds = array_keys(helper::arrayCollumn($this->getData(['module', $parent, 'posts']), 'publishedOn', 'SORT_DESC'));
|
||||||
//var_dump($articleIds);
|
|
||||||
foreach ($articleIds as $key => $article) {
|
foreach ($articleIds as $key => $article) {
|
||||||
//echo $article;
|
|
||||||
//echo "<p>";
|
|
||||||
// Droits les deux groupes
|
// Droits les deux groupes
|
||||||
$this->setData(['module', $parent, 'posts', $article,'editConsent', 3]);
|
$this->setData(['module', $parent, 'posts', $article,'editConsent', 3]);
|
||||||
// Limite de taille 500
|
// Limite de taille 500
|
||||||
@ -1575,7 +1571,6 @@ class common {
|
|||||||
$path = realpath('site/data');
|
$path = realpath('site/data');
|
||||||
foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)) as $filename)
|
foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)) as $filename)
|
||||||
{
|
{
|
||||||
echo "$filename</br>";
|
|
||||||
if (strpos($filename,'back.json')) {
|
if (strpos($filename,'back.json')) {
|
||||||
rename($filename, str_replace('back.json','backup.json',$filename));
|
rename($filename, str_replace('back.json','backup.json',$filename));
|
||||||
}
|
}
|
||||||
@ -1589,6 +1584,16 @@ class common {
|
|||||||
unlink('module/search/ressource/vartheme.css');
|
unlink('module/search/ressource/vartheme.css');
|
||||||
$this->deleteData(['theme','search','keywordColor']);
|
$this->deleteData(['theme','search','keywordColor']);
|
||||||
|
|
||||||
|
// Nettoyer les modules avec des données null
|
||||||
|
|
||||||
|
$modules = $this->getData(['module']);
|
||||||
|
foreach($modules as $key => $value) {
|
||||||
|
if (is_null($value) ) {
|
||||||
|
unset($modules[$key]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->setData (['module',$modules]);
|
||||||
|
|
||||||
$this->setData(['core', 'dataVersion', 10400]);
|
$this->setData(['core', 'dataVersion', 10400]);
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -1697,20 +1702,27 @@ class core extends common {
|
|||||||
$css = '/*' . md5(json_encode($this->getData(['theme']))) . '*/';
|
$css = '/*' . md5(json_encode($this->getData(['theme']))) . '*/';
|
||||||
// Import des polices de caractères
|
// Import des polices de caractères
|
||||||
$css .= '@import url("https://fonts.googleapis.com/css?family=' . $this->getData(['theme', 'text', 'font']) . '|' . $this->getData(['theme', 'title', 'font']) . '|' . $this->getData(['theme', 'header', 'font']) . '|' . $this->getData(['theme', 'menu', 'font']) . '");';
|
$css .= '@import url("https://fonts.googleapis.com/css?family=' . $this->getData(['theme', 'text', 'font']) . '|' . $this->getData(['theme', 'title', 'font']) . '|' . $this->getData(['theme', 'header', 'font']) . '|' . $this->getData(['theme', 'menu', 'font']) . '");';
|
||||||
// Fond du site
|
// Fond du body
|
||||||
$colors = helper::colorVariants($this->getData(['theme', 'body', 'backgroundColor']));
|
$colors = helper::colorVariants($this->getData(['theme', 'body', 'backgroundColor']));
|
||||||
$css .= 'body,div.mce-edit-area{background-color:' . $colors['normal'] . ';font-family:"' . str_replace('+', ' ', $this->getData(['theme', 'text', 'font'])) . '",sans-serif}';
|
// Body
|
||||||
// Fond TinyMCe
|
$css .= 'body{font-family:"' . str_replace('+', ' ', $this->getData(['theme', 'text', 'font'])) . '",sans-serif}';
|
||||||
$css .= 'div.mce-edit-area{background-color:' . $colors['normal'] . ' !important}';
|
|
||||||
if($themeBodyImage = $this->getData(['theme', 'body', 'image'])) {
|
if($themeBodyImage = $this->getData(['theme', 'body', 'image'])) {
|
||||||
$css .= 'body,div.mce-edit-area{background-image:url("../file/source/' . $themeBodyImage . '");background-position:' . $this->getData(['theme', 'body', 'imagePosition']) . ';background-attachment:' . $this->getData(['theme', 'body', 'imageAttachment']) . ';background-size:' . $this->getData(['theme', 'body', 'imageSize']) . ';background-repeat:' . $this->getData(['theme', 'body', 'imageRepeat']) . '}';
|
// Image dans html pour éviter les déformations.
|
||||||
$css .= 'div.mce-edit-area{background-image:url("../file/source/' . $themeBodyImage . '") !important;background-position:' . $this->getData(['theme', 'body', 'imagePosition']) . ';background-attachment:' . $this->getData(['theme', 'body', 'imageAttachment']) . ';background-size:' . $this->getData(['theme', 'body', 'imageSize']) . ';background-repeat:' . $this->getData(['theme', 'body', 'imageRepeat']) . '}';
|
$css .= 'html{background-image:url("../file/source/' . $themeBodyImage . '");background-position:' . $this->getData(['theme', 'body', 'imagePosition']) . ';background-attachment:' . $this->getData(['theme', 'body', 'imageAttachment']) . ';background-size:' . $this->getData(['theme', 'body', 'imageSize']) . ';background-repeat:' . $this->getData(['theme', 'body', 'imageRepeat']) . '}';
|
||||||
|
// Couleur du body transparente
|
||||||
|
$css .= 'body{background-color: rgba(0,0,0,0)}';
|
||||||
|
} else {
|
||||||
|
// Pas d'image couleur du body
|
||||||
|
$css .= 'html{background-color:' . $colors['normal'] . ';}';
|
||||||
}
|
}
|
||||||
// Icône BacktoTop
|
// Icône BacktoTop
|
||||||
$css .= '#backToTop {background-color:' .$this->getData(['theme', 'body', 'toTopbackgroundColor']). ';color:'.$this->getData(['theme', 'body', 'toTopColor']).';}';
|
$css .= '#backToTop {background-color:' .$this->getData(['theme', 'body', 'toTopbackgroundColor']). ';color:'.$this->getData(['theme', 'body', 'toTopColor']).';}';
|
||||||
// Site
|
// Site
|
||||||
$colors = helper::colorVariants($this->getData(['theme', 'text', 'linkColor']));
|
$colors = helper::colorVariants($this->getData(['theme', 'text', 'linkColor']));
|
||||||
$css .= 'a{color:' . $colors['normal'] . '}';
|
$css .= 'a{color:' . $colors['normal'] . '}';
|
||||||
|
// Fond TinyMCe
|
||||||
|
$css .= 'div.mce-edit-area{background-color:' . $colors['normal'] . ' !important}';
|
||||||
|
$css .= 'div.mce-edit-area{background-color:' . $colors['normal'] . ';font-family:"' . str_replace('+', ' ', $this->getData(['theme', 'text', 'font'])) . '",sans-serif}';
|
||||||
//$css .= 'a:hover:not(.inputFile, button){color:' . $colors['darken'] . '}';
|
//$css .= 'a:hover:not(.inputFile, button){color:' . $colors['darken'] . '}';
|
||||||
$css .= 'body,.row > div{font-size:' . $this->getData(['theme', 'text', 'fontSize']) . '}';
|
$css .= 'body,.row > div{font-size:' . $this->getData(['theme', 'text', 'fontSize']) . '}';
|
||||||
$css .= 'body{color:' . $this->getData(['theme', 'text', 'textColor']) . '}';
|
$css .= 'body{color:' . $this->getData(['theme', 'text', 'textColor']) . '}';
|
||||||
|
@ -1149,7 +1149,7 @@ textarea {
|
|||||||
}
|
}
|
||||||
|
|
||||||
label {
|
label {
|
||||||
display: inline-block;
|
display: block;
|
||||||
margin-bottom: 4px;
|
margin-bottom: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -808,17 +808,7 @@ class init extends common {
|
|||||||
'values' => ''
|
'values' => ''
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
],
|
]
|
||||||
'locale' => [
|
|
||||||
'homePageId' => 'accueil',
|
|
||||||
'page302' => 'erreur302',
|
|
||||||
'page403' => 'erreur403',
|
|
||||||
'page404' => 'erreur404',
|
|
||||||
'legalPageId' => 'mentions-legales',
|
|
||||||
'searchPageId' => 'recherche',
|
|
||||||
'metaDescription' => 'Zwii est un CMS sans base de données qui permet de créer et gérer facilement un site web sans aucune connaissance en programmation.',
|
|
||||||
'title' => 'Votre site en quelques clics !'
|
|
||||||
],
|
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
@ -317,8 +317,10 @@ class page extends common {
|
|||||||
$this->setData(['page', $childrenPageId, 'parentPageId', $pageId]);
|
$this->setData(['page', $childrenPageId, 'parentPageId', $pageId]);
|
||||||
}
|
}
|
||||||
// Change l'id de page dans les données des modules
|
// Change l'id de page dans les données des modules
|
||||||
$this->setData(['module', $pageId, $this->getData(['module', $this->getUrl(2)])]);
|
if ($this->getData(['module', $this->getUrl(2)]) !== null ) {
|
||||||
$this->deleteData(['module', $this->getUrl(2)]);
|
$this->setData(['module', $pageId, $this->getData(['module', $this->getUrl(2)])]);
|
||||||
|
$this->deleteData(['module', $this->getUrl(2)]);
|
||||||
|
}
|
||||||
// Si la page correspond à la page d'accueil, change l'id dans la configuration du site
|
// Si la page correspond à la page d'accueil, change l'id dans la configuration du site
|
||||||
if($this->getData(['locale', 'homePageId']) === $this->getUrl(2)) {
|
if($this->getData(['locale', 'homePageId']) === $this->getUrl(2)) {
|
||||||
$this->setData(['locale', 'homePageId', $pageId]);
|
$this->setData(['locale', 'homePageId', $pageId]);
|
||||||
|
@ -21,15 +21,25 @@ $(document).ready(function(){
|
|||||||
* Aperçu en direct
|
* Aperçu en direct
|
||||||
*/
|
*/
|
||||||
$("input, select").on("change", function() {
|
$("input, select").on("change", function() {
|
||||||
|
|
||||||
|
// Option fixe pour contain et cover
|
||||||
|
var themeBodyImageSize = $("#themeBodyImageSize").val();
|
||||||
|
|
||||||
|
if(themeBodyImageSize === "cover" ||
|
||||||
|
themeBodyImageSize === "contain" ) {
|
||||||
|
$("#themeBodyImageAttachment").val("fixed");
|
||||||
|
}
|
||||||
|
|
||||||
// Couleur du fond
|
// Couleur du fond
|
||||||
var css = "body{background-color:" + $("#themeBodyBackgroundColor").val() + "}";
|
var css = "html{background-color:" + $("#themeBodyBackgroundColor").val() + "}";
|
||||||
// Image du fond
|
// Image du fond
|
||||||
var themeBodyImage = $("#themeBodyImage").val();
|
var themeBodyImage = $("#themeBodyImage").val();
|
||||||
if(themeBodyImage) {
|
if(themeBodyImage) {
|
||||||
css += "body{background-image:url('<?php echo helper::baseUrl(false); ?>site/file/source/" + themeBodyImage + "');background-repeat:" + $("#themeBodyImageRepeat").val() + ";background-position:" + $("#themeBodyImagePosition").val() + ";background-attachment:" + $("#themeBodyImageAttachment").val() + ";background-size:" + $("#themeBodyImageSize").val() + "}";
|
css += "html{background-image:url('<?php echo helper::baseUrl(false); ?>site/file/source/" + themeBodyImage + "');background-repeat:" + $("#themeBodyImageRepeat").val() + ";background-position:" + $("#themeBodyImagePosition").val() + ";background-attachment:" + $("#themeBodyImageAttachment").val() + ";background-size:" + $("#themeBodyImageSize").val() + "}";
|
||||||
|
css += "html{background-color:rgba(0,0,0,0);}";
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
css += "body{background-image:none}";
|
css += "html{background-image:none}";
|
||||||
}
|
}
|
||||||
css += '#backToTop {background-color:' + $("#themeBodyToTopBackground").val() + ';color:' + $("#themeBodyToTopColor").val() + ';}';
|
css += '#backToTop {background-color:' + $("#themeBodyToTopBackground").val() + ';color:' + $("#themeBodyToTopColor").val() + ';}';
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@ class form extends common {
|
|||||||
|
|
||||||
public static $pagination;
|
public static $pagination;
|
||||||
|
|
||||||
const FORM_VERSION = '2.5';
|
const FORM_VERSION = '2.6';
|
||||||
|
|
||||||
// Objets
|
// Objets
|
||||||
const TYPE_MAIL = 'mail';
|
const TYPE_MAIL = 'mail';
|
||||||
@ -94,7 +94,7 @@ class form extends common {
|
|||||||
$inputs = [];
|
$inputs = [];
|
||||||
foreach($this->getInput('formConfigPosition', null) as $index => $position) {
|
foreach($this->getInput('formConfigPosition', null) as $index => $position) {
|
||||||
$inputs[] = [
|
$inputs[] = [
|
||||||
'name' => $this->getInput('formConfigName[' . $index . ']'),
|
'name' => htmlspecialchars_decode($this->getInput('formConfigName[' . $index . ']'),ENT_QUOTES),
|
||||||
'position' => helper::filter($position, helper::FILTER_INT),
|
'position' => helper::filter($position, helper::FILTER_INT),
|
||||||
'required' => $this->getInput('formConfigRequired[' . $index . ']', helper::FILTER_BOOLEAN),
|
'required' => $this->getInput('formConfigRequired[' . $index . ']', helper::FILTER_BOOLEAN),
|
||||||
'type' => $this->getInput('formConfigType[' . $index . ']'),
|
'type' => $this->getInput('formConfigType[' . $index . ']'),
|
||||||
|
Loading…
Reference in New Issue
Block a user