From 7e971a3e38280be7d18fc733c10f56980b3b2219 Mon Sep 17 00:00:00 2001 From: fredtempez Date: Thu, 17 Mar 2022 10:45:18 +0100 Subject: [PATCH 01/13] =?UTF-8?q?font=20par=20d=C3=A9faut=20du=20menu?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/module/install/ressource/defaultdata.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/module/install/ressource/defaultdata.php b/core/module/install/ressource/defaultdata.php index b55e5acb..62cb4560 100644 --- a/core/module/install/ressource/defaultdata.php +++ b/core/module/install/ressource/defaultdata.php @@ -283,7 +283,7 @@ class init extends common { 'menu' => [ 'backgroundColor' => 'rgba(32, 59, 82, 1)', 'backgroundColorSub' => 'rgba(32, 59, 82, 1)', - 'font' => 'georgia', + 'font' => 'arial', 'fontSize' => '1em', 'fontWeight' => 'normal', 'height' => '15px 10px', From 8c9f3d0bd517b949a940d488ed79c1b9756f7758 Mon Sep 17 00:00:00 2001 From: fredtempez Date: Thu, 17 Mar 2022 10:46:09 +0100 Subject: [PATCH 02/13] Police devient Fonte --- core/module/theme/view/footer/footer.php | 2 +- core/module/theme/view/header/header.php | 2 +- core/module/theme/view/menu/menu.php | 2 +- core/module/theme/view/site/site.php | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/core/module/theme/view/footer/footer.php b/core/module/theme/view/footer/footer.php index 7afcf447..f5e3af4a 100644 --- a/core/module/theme/view/footer/footer.php +++ b/core/module/theme/view/footer/footer.php @@ -172,7 +172,7 @@
'Police', + 'label' => 'Fonte', 'selected' => $this->getData(['theme', 'footer', 'font']), 'fonts' => true ]); ?> diff --git a/core/module/theme/view/header/header.php b/core/module/theme/view/header/header.php index 0f6abeaf..a0f86b11 100644 --- a/core/module/theme/view/header/header.php +++ b/core/module/theme/view/header/header.php @@ -107,7 +107,7 @@
'Police', + 'label' => 'Fonte', 'selected' => $this->getData(['theme', 'header', 'font']), 'fonts' => true ]); ?> diff --git a/core/module/theme/view/menu/menu.php b/core/module/theme/view/menu/menu.php index 46c943ba..161813f2 100644 --- a/core/module/theme/view/menu/menu.php +++ b/core/module/theme/view/menu/menu.php @@ -184,7 +184,7 @@
'Police', + 'label' => 'Fonte', 'selected' => $this->getData(['theme', 'menu', 'font']), 'fonts' => true ]); ?> diff --git a/core/module/theme/view/site/site.php b/core/module/theme/view/site/site.php index b4a6bd42..4157c3d4 100644 --- a/core/module/theme/view/site/site.php +++ b/core/module/theme/view/site/site.php @@ -159,7 +159,7 @@
'Police', + 'label' => 'Fonte', 'selected' => $this->getData(['theme', 'text', 'font']), 'fonts' => true ]); ?> @@ -180,7 +180,7 @@
'Police', + 'label' => 'Fonte', 'selected' => $this->getData(['theme', 'title', 'font']), 'fonts' => true ]); ?> From 82b3c27b8b064e3a0499c2181c4cfd97c94695d4 Mon Sep 17 00:00:00 2001 From: fredtempez Date: Fri, 18 Mar 2022 16:12:30 +0100 Subject: [PATCH 03/13] bug de fontes --- core/core.js.php | 4 +- core/core.php | 11 ++++-- core/module/theme/theme.php | 76 +++++++++++++++---------------------- 3 files changed, 40 insertions(+), 51 deletions(-) diff --git a/core/core.js.php b/core/core.js.php index afceb326..118c66a6 100644 --- a/core/core.js.php +++ b/core/core.js.php @@ -216,7 +216,7 @@ core.start = function() { var getUrl = window.location; var domain = "domain=" + getUrl.host + ";"; var path = "path=" + getUrl.pathname.split('/')[1] + ";"; - + var e = new Date(); e.setFullYear(e.getFullYear() + 1); var expires = "expires=" + e.toUTCString(); @@ -225,7 +225,7 @@ core.start = function() { var analytics = "getData(['config', 'seo', 'analyticsId']);?>"; // l'Id GA est défini dans la configuration, afficher la checkbox d'acceptation if( analytics.length > 0){ - // Traitement du retour de la checkbox + // Traitement du retour de la checkbox if ($("#googleAnalytics").is(":checked")) { // L'URL du serveur faut TRUE diff --git a/core/core.php b/core/core.php index b74c16ae..dcf8e092 100644 --- a/core/core.php +++ b/core/core.php @@ -410,7 +410,7 @@ class common { /** * Construit la liste des fontes dans un tableau * @return array @fonts - * + * */ public function getFonts() { @@ -2374,16 +2374,19 @@ class core extends common { */ foreach ($fonts as $fontId) { // Validité du tableau : - if ( isset($fontsAvailable['files'][$fontId]) && - file_exists(self::DATA_DIR . 'fonts/' . $f) ) { + if ( isset($fontsAvailable['files'][$fontId]) ) { + if (file_exists(self::DATA_DIR . 'fonts/' . $fontId) ) { // Chargement de la police //$formatFont = explode('.', self::DATA_DIR . 'fonts/' . $fontName); $css .= '@font-face {font-family:"' . $fontsAvailable['files'][$fontId]['font-family'] . '";'; $css .= 'src: url("' . helper::baseUrl(false) . self::DATA_DIR . 'fonts/' .$fontsAvailable['files'][$fontId]['resource'] . '");}'; // Tableau pour la construction de la feuille de style $fonts [$fontId] = $fontsAvailable['files'][$fontId]['font-family']; + } else { + // Le fichier de font n'est pas disponible, fonte par défaut + $fonts [$fontId] = 'verdana'; + } } - } // Fond du body diff --git a/core/module/theme/theme.php b/core/module/theme/theme.php index d47f7fe3..2db6ba31 100644 --- a/core/module/theme/theme.php +++ b/core/module/theme/theme.php @@ -621,37 +621,31 @@ class theme extends common { if ($this->isPost()) { // Type d'import en ligne ou local $type = $this->getInput('fontAddFontImported', helper::FILTER_BOOLEAN) ? 'imported' : 'files'; - $ressource = $type === 'imported' ? $this->getInput('fontAddUrl', helper::FILTER_STRING_SHORT) : $this->getInput('fontAddFile', helper::FILTER__SHORT_STRING); + $typeFlip = $type === 'files' ? 'imported' : 'files'; + $ressource = $type === 'imported' ? $this->getInput('fontAddUrl', helper::FILTER_STRING_SHORT) : $this->getInput('fontAddFile', helper::FILTER_STRING_SHORT); $fontId = $this->getInput('fontAddFontId', helper::FILTER_STRING_SHORT, true); $fontName = $this->getInput('fontAddFontName', helper::FILTER_STRING_SHORT, true); $fontFamilyName = $this->getInput('fontAddFontFamilyName', helper::FILTER_STRING_SHORT, true); - // Vérifier l'existence de fontId et validité de family name si usage en ligne de cdnFonts + // Supprime la fonte si elle existe dans le type inverse + if (is_array($this->getData(['fonts', $typeFlip, $fontId])) ) { + $this->deleteData(['fonts', $typeFlip, $fontId ]); + } + // Stocker la fonte + $this->setData(['fonts', + $type, + $fontId, [ + 'name' => $fontName, + 'font-family' => $fontFamilyName, + 'resource' => $ressource + ]]); - // Charger les données des fontes - $fonts = $this->getData(['fonts']); - - // Concaténation dans les tableaux existants - $t = [ $fontId => [ - 'name' => $fontName, - 'font-family' => $fontFamilyName, - 'resource' => $ressource - ]]; - - // Stocker les fontes - $this->setData(['fonts', $type, [ $fontId => - [ - 'name' => $fontName, - 'font-family' => $fontFamilyName, - 'resource' => $ressource - ]] - ]); // Copier la fonte si le nom du fichier est fourni if ( $type === 'files' && - is_file(self::FILE_DIR . 'source/' . $ressource) + file_exists(self::FILE_DIR . 'source/' . $ressource) ) { - copy ( self::FILE_DIR . 'source/' . $ressource, self::DATA_DIR . 'fonts/' . $ressource ); + copy ( self::FILE_DIR . 'source/' . $ressource, self::DATA_DIR . $ressource ); } // Valeurs en sortie @@ -677,37 +671,29 @@ class theme extends common { if ($this->isPost()) { // Type d'import en ligne ou local $type = $this->getInput('fontEditFontImported', helper::FILTER_BOOLEAN) ? 'imported' : 'files'; - $ressource = $type === 'imported' ? $this->getInput('fontEditUrl', helper::FILTER_STRING_SHORT) : $this->getInput('fontEditFile', helper::FILTER__SHORT_STRING); + $typeFlip = $type === 'files' ? 'imported' : 'files'; + $ressource = $type === 'imported' ? $this->getInput('fontEditUrl', helper::FILTER_STRING_SHORT) : $this->getInput('fontEditFile', helper::FILTER_STRING_SHORT); $fontId = $this->getInput('fontEditFontId', helper::FILTER_STRING_SHORT, true); $fontName = $this->getInput('fontEditFontName', helper::FILTER_STRING_SHORT, true); $fontFamilyName = $this->getInput('fontEditFontFamilyName', helper::FILTER_STRING_SHORT, true); - // Vérifier l'existence de fontId et validité de family name si usage en ligne de cdnFonts - - // Charger les données des fontes - $fonts = $this->getData(['fonts']); - - // Concaténation dans les tableaux existants - $t = [ $fontId => [ - 'name' => $fontName, - 'font-family' => $fontFamilyName, - 'resource' => $ressource - ]]; - + // Supprime la fonte si elle existe dans le type inverse + if (is_array($this->getData(['fonts', $typeFlip, $fontId])) ) { + $this->deleteData(['fonts', $typeFlip, $fontId ]); + } // Stocker les fontes - $this->setData(['fonts', $type, [ $fontId => - [ - 'name' => $fontName, - 'font-family' => $fontFamilyName, - 'resource' => $ressource - ]] - ]); - + $this->setData(['fonts', + $type, + $fontId, [ + 'name' => $fontName, + 'font-family' => $fontFamilyName, + 'resource' => $ressource + ]]); // Copier la fonte si le nom du fichier est fourni if ( $type === 'files' && - is_file(self::FILE_DIR . 'source/' . $ressource) + file_exists(self::FILE_DIR . 'source/' . $ressource) ) { - copy ( self::FILE_DIR . 'source/' . $ressource, self::DATA_DIR . 'fonts/' . $ressource ); + copy ( self::FILE_DIR . 'source/' . $ressource, self::DATA_DIR . $ressource ); } // Valeurs en sortie From 2285dd1cc518243459b8ea9b04d0b59bea62d22a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Tempez?= Date: Fri, 18 Mar 2022 18:19:21 +0100 Subject: [PATCH 04/13] bug de fonte admin, fichier de fonte absent --- core/core.php | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/core/core.php b/core/core.php index dcf8e092..7281a481 100644 --- a/core/core.php +++ b/core/core.php @@ -2618,16 +2618,19 @@ class core extends common { */ foreach ($fonts as $fontId) { // Validité du tableau : - if ( isset($fontsAvailable['files'][$fontId]) && - file_exists(self::DATA_DIR . 'fonts/' . $f) ) { + if ( isset($fontsAvailable['files'][$fontId]) ) { + if (file_exists(self::DATA_DIR . 'fonts/' . $fontId) ) { // Chargement de la police //$formatFont = explode('.', self::DATA_DIR . 'fonts/' . $fontName); $css .= '@font-face {font-family:"' . $fontsAvailable['files'][$fontId]['font-family'] . '";'; $css .= 'src: url("' . helper::baseUrl(false) . self::DATA_DIR . 'fonts/' .$fontsAvailable['files'][$fontId]['resource'] . '");}'; // Tableau pour la construction de la feuille de style $fonts [$fontId] = $fontsAvailable['files'][$fontId]['font-family']; + } else { + // Le fichier de font n'est pas disponible, fonte par défaut + $fonts [$fontId] = 'verdana'; + } } - } // Thème Administration From 3e5fde58397f33bd7679694a5a2cb9d49151a2c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Tempez?= Date: Fri, 18 Mar 2022 18:21:57 +0100 Subject: [PATCH 05/13] 12306-de --- CHANGES.md | 6 ++++++ README.md | 2 +- core/core.php | 53 ++++++++++++++++++++++++++------------------------- 3 files changed, 34 insertions(+), 27 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 69b0a08a..3b19f0c7 100755 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,6 +1,12 @@ # Changelog +## Version 11.3.06 +### Corrections : + - Bugs dans la gestion des fontes, fichier de fonte non disponible. +### Amélioration : + - Amléioration du code de gestion des fontes. + ## Version 11.3.05 ### Correction : - Dossier du fichier de fontes non créé empêchant la création du fichier des appels de fontes. diff --git a/README.md b/README.md index a88c8eb5..fac4b9db 100755 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# ZwiiCMS 11.3.05 +# ZwiiCMS 11.3.06 Zwii est un CMS sans base de données (flat-file) qui permet de créer et gérer facilement un site web sans aucune connaissance en programmation. diff --git a/core/core.php b/core/core.php index 7b83ea50..ee212222 100644 --- a/core/core.php +++ b/core/core.php @@ -45,7 +45,7 @@ class common { // Numéro de version const ZWII_UPDATE_URL = 'https://forge.chapril.org/ZwiiCMS-Team/update/raw/branch/master/'; - const ZWII_VERSION = '11.3.05'; + const ZWII_VERSION = '11.3.06'; const ZWII_UPDATE_CHANNEL = "v11"; public static $actions = []; @@ -2335,23 +2335,23 @@ class core extends common { unset($fonts[$fontId]); } } - /** * Fontes installées localement */ - // Validité du format - if ( !empty($localFonts) - ) { - foreach ($localFonts as $fontId => $fontName) { - // Validité du tableau : - if ( array_key_exists($fontId, self::$fonts) && - file_exists(self::DATA_DIR . 'fonts/' . $fontName) ) { - // Chargement de la police - //$formatFont = explode('.', self::DATA_DIR . 'fonts/' . $fontName); - $css .= '@font-face {font-family:"' . self::$fonts[$fontId] . '";'; - $css .= 'src: url("' . helper::baseUrl(false) . self::DATA_DIR . 'fonts/' . $fontName . '");}'; + foreach ($fonts as $fontId) { + // Validité du tableau : + if ( isset($fontsAvailable['files'][$fontId]) ) { + if (file_exists(self::DATA_DIR . 'fonts/' . $fontId) ) { + // Chargement de la police + //$formatFont = explode('.', self::DATA_DIR . 'fonts/' . $fontName); + $css .= '@font-face {font-family:"' . $fontsAvailable['files'][$fontId]['font-family'] . '";'; + $css .= 'src: url("' . helper::baseUrl(false) . self::DATA_DIR . 'fonts/' .$fontsAvailable['files'][$fontId]['resource'] . '");}'; + // Tableau pour la construction de la feuille de style + $fonts [$fontId] = $fontsAvailable['files'][$fontId]['font-family']; + } else { + // Le fichier de font n'est pas disponible, fonte par défaut + $fonts [$fontId] = 'verdana'; } - } } @@ -2571,19 +2571,20 @@ class core extends common { /** * Fontes installées localement */ - // Validité du format - if ( !empty($localFonts) - ) { - foreach ($localFonts as $fontId => $fontName) { - // Validité du tableau : - if ( array_key_exists($fontId, self::$fonts) && - file_exists(self::DATA_DIR . 'fonts/' . $fontName) ) { - // Chargement de la police - //$formatFont = explode('.', self::DATA_DIR . 'fonts/' . $fontName); - $css .= '@font-face {font-family:"' . self::$fonts[$fontId] . '";'; - $css .= 'src: url("' . helper::baseUrl(false) . self::DATA_DIR . 'fonts/' . $fontName . '");}'; + foreach ($fonts as $fontId) { + // Validité du tableau : + if ( isset($fontsAvailable['files'][$fontId]) ) { + if (file_exists(self::DATA_DIR . 'fonts/' . $fontId) ) { + // Chargement de la police + //$formatFont = explode('.', self::DATA_DIR . 'fonts/' . $fontName); + $css .= '@font-face {font-family:"' . $fontsAvailable['files'][$fontId]['font-family'] . '";'; + $css .= 'src: url("' . helper::baseUrl(false) . self::DATA_DIR . 'fonts/' .$fontsAvailable['files'][$fontId]['resource'] . '");}'; + // Tableau pour la construction de la feuille de style + $fonts [$fontId] = $fontsAvailable['files'][$fontId]['font-family']; + } else { + // Le fichier de font n'est pas disponible, fonte par défaut + $fonts [$fontId] = 'verdana'; } - } } From 30baba0a08e7e9be2b11e81c7a9bcfc0063efb80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Tempez?= Date: Fri, 18 Mar 2022 18:27:18 +0100 Subject: [PATCH 06/13] Revert "12306-de" This reverts commit 3e5fde58397f33bd7679694a5a2cb9d49151a2c7. --- CHANGES.md | 6 ------ README.md | 2 +- core/core.php | 53 +++++++++++++++++++++++++-------------------------- 3 files changed, 27 insertions(+), 34 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 3b19f0c7..69b0a08a 100755 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,12 +1,6 @@ # Changelog -## Version 11.3.06 -### Corrections : - - Bugs dans la gestion des fontes, fichier de fonte non disponible. -### Amélioration : - - Amléioration du code de gestion des fontes. - ## Version 11.3.05 ### Correction : - Dossier du fichier de fontes non créé empêchant la création du fichier des appels de fontes. diff --git a/README.md b/README.md index fac4b9db..a88c8eb5 100755 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# ZwiiCMS 11.3.06 +# ZwiiCMS 11.3.05 Zwii est un CMS sans base de données (flat-file) qui permet de créer et gérer facilement un site web sans aucune connaissance en programmation. diff --git a/core/core.php b/core/core.php index ee212222..7b83ea50 100644 --- a/core/core.php +++ b/core/core.php @@ -45,7 +45,7 @@ class common { // Numéro de version const ZWII_UPDATE_URL = 'https://forge.chapril.org/ZwiiCMS-Team/update/raw/branch/master/'; - const ZWII_VERSION = '11.3.06'; + const ZWII_VERSION = '11.3.05'; const ZWII_UPDATE_CHANNEL = "v11"; public static $actions = []; @@ -2335,23 +2335,23 @@ class core extends common { unset($fonts[$fontId]); } } + /** * Fontes installées localement */ - foreach ($fonts as $fontId) { - // Validité du tableau : - if ( isset($fontsAvailable['files'][$fontId]) ) { - if (file_exists(self::DATA_DIR . 'fonts/' . $fontId) ) { - // Chargement de la police - //$formatFont = explode('.', self::DATA_DIR . 'fonts/' . $fontName); - $css .= '@font-face {font-family:"' . $fontsAvailable['files'][$fontId]['font-family'] . '";'; - $css .= 'src: url("' . helper::baseUrl(false) . self::DATA_DIR . 'fonts/' .$fontsAvailable['files'][$fontId]['resource'] . '");}'; - // Tableau pour la construction de la feuille de style - $fonts [$fontId] = $fontsAvailable['files'][$fontId]['font-family']; - } else { - // Le fichier de font n'est pas disponible, fonte par défaut - $fonts [$fontId] = 'verdana'; + // Validité du format + if ( !empty($localFonts) + ) { + foreach ($localFonts as $fontId => $fontName) { + // Validité du tableau : + if ( array_key_exists($fontId, self::$fonts) && + file_exists(self::DATA_DIR . 'fonts/' . $fontName) ) { + // Chargement de la police + //$formatFont = explode('.', self::DATA_DIR . 'fonts/' . $fontName); + $css .= '@font-face {font-family:"' . self::$fonts[$fontId] . '";'; + $css .= 'src: url("' . helper::baseUrl(false) . self::DATA_DIR . 'fonts/' . $fontName . '");}'; } + } } @@ -2571,20 +2571,19 @@ class core extends common { /** * Fontes installées localement */ - foreach ($fonts as $fontId) { - // Validité du tableau : - if ( isset($fontsAvailable['files'][$fontId]) ) { - if (file_exists(self::DATA_DIR . 'fonts/' . $fontId) ) { - // Chargement de la police - //$formatFont = explode('.', self::DATA_DIR . 'fonts/' . $fontName); - $css .= '@font-face {font-family:"' . $fontsAvailable['files'][$fontId]['font-family'] . '";'; - $css .= 'src: url("' . helper::baseUrl(false) . self::DATA_DIR . 'fonts/' .$fontsAvailable['files'][$fontId]['resource'] . '");}'; - // Tableau pour la construction de la feuille de style - $fonts [$fontId] = $fontsAvailable['files'][$fontId]['font-family']; - } else { - // Le fichier de font n'est pas disponible, fonte par défaut - $fonts [$fontId] = 'verdana'; + // Validité du format + if ( !empty($localFonts) + ) { + foreach ($localFonts as $fontId => $fontName) { + // Validité du tableau : + if ( array_key_exists($fontId, self::$fonts) && + file_exists(self::DATA_DIR . 'fonts/' . $fontName) ) { + // Chargement de la police + //$formatFont = explode('.', self::DATA_DIR . 'fonts/' . $fontName); + $css .= '@font-face {font-family:"' . self::$fonts[$fontId] . '";'; + $css .= 'src: url("' . helper::baseUrl(false) . self::DATA_DIR . 'fonts/' . $fontName . '");}'; } + } } From 84b8ffffa907ce806cafd02cf7a1fcdedc51dc6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Tempez?= Date: Sun, 20 Mar 2022 09:15:06 +0100 Subject: [PATCH 07/13] init include fonts in progress --- CHANGES.md | 4 ++++ README.md | 2 +- core/core.php | 16 +++++++++------- core/module/config/view/connect/connect.php | 17 ++++++++--------- core/module/config/view/locale/locale.php | 4 ++-- core/module/config/view/network/network.php | 4 ++-- core/module/config/view/social/social.php | 12 ++++++------ core/module/theme/theme.php | 18 ++++++++++++++++++ 8 files changed, 50 insertions(+), 27 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 69b0a08a..d25527c3 100755 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,5 +1,9 @@ # Changelog +## Version 11.3.06 +### Corrections : + - Bug d'affichage des blocs de présentation. + - Une fonte Websafe remplace une fonte locale dont le fichier n'est pas disponible. ## Version 11.3.05 ### Correction : diff --git a/README.md b/README.md index a88c8eb5..fac4b9db 100755 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# ZwiiCMS 11.3.05 +# ZwiiCMS 11.3.06 Zwii est un CMS sans base de données (flat-file) qui permet de créer et gérer facilement un site web sans aucune connaissance en programmation. diff --git a/core/core.php b/core/core.php index 7b83ea50..ff6bc037 100644 --- a/core/core.php +++ b/core/core.php @@ -45,7 +45,7 @@ class common { // Numéro de version const ZWII_UPDATE_URL = 'https://forge.chapril.org/ZwiiCMS-Team/update/raw/branch/master/'; - const ZWII_VERSION = '11.3.05'; + const ZWII_VERSION = '11.3.06'; const ZWII_UPDATE_CHANNEL = "v11"; public static $actions = []; @@ -2339,17 +2339,18 @@ class core extends common { /** * Fontes installées localement */ - // Validité du format if ( !empty($localFonts) ) { foreach ($localFonts as $fontId => $fontName) { // Validité du tableau : - if ( array_key_exists($fontId, self::$fonts) && + if ( array_key_exists($fontId, self::$fonts) || file_exists(self::DATA_DIR . 'fonts/' . $fontName) ) { // Chargement de la police - //$formatFont = explode('.', self::DATA_DIR . 'fonts/' . $fontName); $css .= '@font-face {font-family:"' . self::$fonts[$fontId] . '";'; $css .= 'src: url("' . helper::baseUrl(false) . self::DATA_DIR . 'fonts/' . $fontName . '");}'; + } else { + // Le fichier de font n'est pas disponible, fonte par défaut + $fonts [$fontId] = 'verdana'; } } @@ -2571,17 +2572,18 @@ class core extends common { /** * Fontes installées localement */ - // Validité du format if ( !empty($localFonts) ) { foreach ($localFonts as $fontId => $fontName) { // Validité du tableau : - if ( array_key_exists($fontId, self::$fonts) && + if ( array_key_exists($fontId, self::$fonts) || file_exists(self::DATA_DIR . 'fonts/' . $fontName) ) { // Chargement de la police - //$formatFont = explode('.', self::DATA_DIR . 'fonts/' . $fontName); $css .= '@font-face {font-family:"' . self::$fonts[$fontId] . '";'; $css .= 'src: url("' . helper::baseUrl(false) . self::DATA_DIR . 'fonts/' . $fontName . '");}'; + } else { + // Le fichier de font n'est pas disponible, fonte par défaut + $fonts [$fontId] = 'verdana'; } } diff --git a/core/module/config/view/connect/connect.php b/core/module/config/view/connect/connect.php index a7a5f4f1..d1980853 100644 --- a/core/module/config/view/connect/connect.php +++ b/core/module/config/view/connect/connect.php @@ -11,14 +11,13 @@
- $this->getData(['config', 'connect','captcha']) - ]); ?> - $this->getData(['config', 'connect', 'captchaStrong']), - 'help' => 'Option recommandée pour sécuriser la connexion. S\'applique à tous les captchas du site. Le captcha simple se limite à une addition de nombres de 0 à 10. Le captcha complexe utilise quatre opérations de nombres de 0 à 20. Activation recommandée.' - ]); ?> -
+ $this->getData(['config', 'connect','captcha']) + ]); ?> + $this->getData(['config', 'connect', 'captchaStrong']), + 'help' => 'Option recommandée pour sécuriser la connexion. S\'applique à tous les captchas du site. Le captcha simple se limite à une addition de nombres de 0 à 10. Le captcha complexe utilise quatre opérations de nombres de 0 à 20. Activation recommandée.' + ]); ?>
-
+
\ No newline at end of file diff --git a/core/module/config/view/locale/locale.php b/core/module/config/view/locale/locale.php index fb8faa85..c71451c9 100644 --- a/core/module/config/view/locale/locale.php +++ b/core/module/config/view/locale/locale.php @@ -23,7 +23,7 @@ - +
'Bouton de validation', 'value' => $this->getData(['locale', 'cookies', 'buttonValidLabel']), 'placeHolder' => 'J\'ai compris' - ]); ?> + ]); ?>
diff --git a/core/module/config/view/network/network.php b/core/module/config/view/network/network.php index 9c7785de..c7524ef3 100644 --- a/core/module/config/view/network/network.php +++ b/core/module/config/view/network/network.php @@ -4,7 +4,7 @@

Paramètres - + @@ -37,7 +37,7 @@
-

SMTP +

SMTP diff --git a/core/module/config/view/social/social.php b/core/module/config/view/social/social.php index aa27d95f..8ef40e88 100644 --- a/core/module/config/view/social/social.php +++ b/core/module/config/view/social/social.php @@ -2,9 +2,9 @@
-

Paramètres +

Paramètres - + @@ -16,7 +16,7 @@ helper::baseUrl() . 'config/configMetaImage', 'value' => 'Générer une capture Open Graph' - + ]); ?>

@@ -52,9 +52,9 @@
-

Réseaux sociaux +

Réseaux sociaux - + @@ -125,7 +125,7 @@
-

Scripts externes +

Scripts externes diff --git a/core/module/theme/theme.php b/core/module/theme/theme.php index 5f988d5d..da5eac0e 100644 --- a/core/module/theme/theme.php +++ b/core/module/theme/theme.php @@ -960,6 +960,15 @@ class theme extends common { case 'admin': $zip->addFile(self::DATA_DIR.'admin.json',self::DATA_DIR.'admin.json'); $zip->addFile(self::DATA_DIR.'admin.css',self::DATA_DIR.'admin.css'); + // Ajoute les fontes + $zip->addEmptyDir(self::DATA_DIR .'fonts'); + $pathdir = self::DATA_DIR .'fonts'; + $dir = opendir(self::DATA_DIR .'fonts'); + while($file = readdir($dir)) { + if(is_file($pathdir.$file)) { + $zip -> addFile($pathdir.$file, $file); + } + } break; case 'theme': $zip->addFile(self::DATA_DIR.'theme.json',self::DATA_DIR.'theme.json'); @@ -984,6 +993,15 @@ class theme extends common { self::FILE_DIR . 'source/' . $value ); } } + // Ajoute les fontes + $zip->addEmptyDir(self::DATA_DIR .'fonts'); + $pathdir = self::DATA_DIR .'fonts'; + $dir = opendir(self::DATA_DIR .'fonts'); + while($file = readdir($dir)) { + if(is_file($pathdir.$file)) { + $zip -> addFile($pathdir.$file, $file); + } + } break; } $ret = $zip->close(); From 6f42bb480ff0a065c6c25a2e707e3e60694ac6e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Tempez?= Date: Sun, 20 Mar 2022 10:11:30 +0100 Subject: [PATCH 08/13] directory iterator wip --- core/module/theme/theme.php | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/core/module/theme/theme.php b/core/module/theme/theme.php index da5eac0e..c3ee98e6 100644 --- a/core/module/theme/theme.php +++ b/core/module/theme/theme.php @@ -958,17 +958,23 @@ class theme extends common { if ($zip->open(self::TEMP_DIR . $zipFilename, ZipArchive::CREATE | ZipArchive::OVERWRITE ) === TRUE) { switch ($modele) { case 'admin': - $zip->addFile(self::DATA_DIR.'admin.json',self::DATA_DIR.'admin.json'); - $zip->addFile(self::DATA_DIR.'admin.css',self::DATA_DIR.'admin.css'); + $zip->addFile(self::DATA_DIR.'admin.json'); + $zip->addFile(self::DATA_DIR.'admin.css'); // Ajoute les fontes $zip->addEmptyDir(self::DATA_DIR .'fonts'); - $pathdir = self::DATA_DIR .'fonts'; - $dir = opendir(self::DATA_DIR .'fonts'); - while($file = readdir($dir)) { - if(is_file($pathdir.$file)) { - $zip -> addFile($pathdir.$file, $file); + $path = realpath('site/data/fonts'); + foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)) as $fileName) + { + echo $fileName; + //var_dump($fileName !== $path . '/..' ); + echo "

"; + if ($fileName !== $path . '/.' || $fileName !== $path . '/..') { + $zip->addFile($fileName); + //echo $fileName; + //echo '

'; } } + die(); break; case 'theme': $zip->addFile(self::DATA_DIR.'theme.json',self::DATA_DIR.'theme.json'); From 3f65b79e829f17adc21bbbc501c486ac273dfd21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Tempez?= Date: Sun, 20 Mar 2022 18:56:31 +0100 Subject: [PATCH 09/13] ajout des fontes ok --- core/module/theme/theme.php | 37 +++++++++++++++++-------------------- 1 file changed, 17 insertions(+), 20 deletions(-) diff --git a/core/module/theme/theme.php b/core/module/theme/theme.php index c3ee98e6..1340d6de 100644 --- a/core/module/theme/theme.php +++ b/core/module/theme/theme.php @@ -958,23 +958,18 @@ class theme extends common { if ($zip->open(self::TEMP_DIR . $zipFilename, ZipArchive::CREATE | ZipArchive::OVERWRITE ) === TRUE) { switch ($modele) { case 'admin': - $zip->addFile(self::DATA_DIR.'admin.json'); - $zip->addFile(self::DATA_DIR.'admin.css'); + $zip->addFile(self::DATA_DIR.'admin.json',self::DATA_DIR.'admin.json'); + $zip->addFile(self::DATA_DIR.'admin.css',self::DATA_DIR.'admin.css'); // Ajoute les fontes $zip->addEmptyDir(self::DATA_DIR .'fonts'); - $path = realpath('site/data/fonts'); - foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)) as $fileName) - { - echo $fileName; - //var_dump($fileName !== $path . '/..' ); - echo "

"; - if ($fileName !== $path . '/.' || $fileName !== $path . '/..') { - $zip->addFile($fileName); - //echo $fileName; - //echo '

'; - } + $fonts = $this->getData(['fonts', 'files']); + foreach ($fonts as $fontId => $fontName) { + $zip->addFile(self::DATA_DIR .'fonts/' . $fontName, self::DATA_DIR.'fonts/' . $fontName); + } + if (file_exists(self::DATA_DIR .'fonts/fonts.html')) { + + $zip->addFile(self::DATA_DIR .'fonts/fonts.html', self::DATA_DIR .'fonts/fonts.html'); } - die(); break; case 'theme': $zip->addFile(self::DATA_DIR.'theme.json',self::DATA_DIR.'theme.json'); @@ -1001,13 +996,15 @@ class theme extends common { } // Ajoute les fontes $zip->addEmptyDir(self::DATA_DIR .'fonts'); - $pathdir = self::DATA_DIR .'fonts'; - $dir = opendir(self::DATA_DIR .'fonts'); - while($file = readdir($dir)) { - if(is_file($pathdir.$file)) { - $zip -> addFile($pathdir.$file, $file); - } + $fonts = $this->getData(['fonts', 'files']); + foreach ($fonts as $fontId => $fontName) { + $zip->addFile(self::DATA_DIR .'fonts/' . $fontName, self::DATA_DIR.'fonts/' . $fontName); } + if (file_exists(self::DATA_DIR .'fonts/fonts.html')) { + + $zip->addFile(self::DATA_DIR .'fonts/fonts.html', self::DATA_DIR .'fonts/fonts.html'); + } + break; } $ret = $zip->close(); From ef116225935d3fedd9199ed96cf5eb1c479c6db6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Tempez?= Date: Sun, 20 Mar 2022 18:57:26 +0100 Subject: [PATCH 10/13] ajoute les fontes --- core/module/theme/theme.php | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/core/module/theme/theme.php b/core/module/theme/theme.php index 2db6ba31..437b0a5a 100644 --- a/core/module/theme/theme.php +++ b/core/module/theme/theme.php @@ -1005,6 +1005,16 @@ class theme extends common { case 'admin': $zip->addFile(self::DATA_DIR.'admin.json',self::DATA_DIR.'admin.json'); $zip->addFile(self::DATA_DIR.'admin.css',self::DATA_DIR.'admin.css'); + // Ajoute les fontes + $zip->addEmptyDir(self::DATA_DIR .'fonts'); + $fonts = $this->getData(['fonts', 'files']); + foreach ($fonts as $fontId => $fontName) { + $zip->addFile(self::DATA_DIR .'fonts/' . $fontName, self::DATA_DIR.'fonts/' . $fontName); + } + if (file_exists(self::DATA_DIR .'fonts/fonts.html')) { + + $zip->addFile(self::DATA_DIR .'fonts/fonts.html', self::DATA_DIR .'fonts/fonts.html'); + } break; case 'theme': $zip->addFile(self::DATA_DIR.'theme.json',self::DATA_DIR.'theme.json'); @@ -1029,6 +1039,16 @@ class theme extends common { self::FILE_DIR . 'source/' . $value ); } } + // Ajoute les fontes + $zip->addEmptyDir(self::DATA_DIR .'fonts'); + $fonts = $this->getData(['fonts', 'files']); + foreach ($fonts as $fontId => $fontName) { + $zip->addFile(self::DATA_DIR .'fonts/' . $fontName, self::DATA_DIR.'fonts/' . $fontName); + } + if (file_exists(self::DATA_DIR .'fonts/fonts.html')) { + + $zip->addFile(self::DATA_DIR .'fonts/fonts.html', self::DATA_DIR .'fonts/fonts.html'); + } break; } $ret = $zip->close(); From 04324128f02bc8063b45127a5e086b413709e2cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Tempez?= Date: Sun, 20 Mar 2022 18:58:27 +0100 Subject: [PATCH 11/13] changes --- CHANGES.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGES.md b/CHANGES.md index d25527c3..c174411e 100755 --- a/CHANGES.md +++ b/CHANGES.md @@ -3,8 +3,11 @@ ## Version 11.3.06 ### Corrections : - Bug d'affichage des blocs de présentation. +### Amélioration : + - Sauvegarde des fontes avec le thème. - Une fonte Websafe remplace une fonte locale dont le fichier n'est pas disponible. + ## Version 11.3.05 ### Correction : - Dossier du fichier de fontes non créé empêchant la création du fichier des appels de fontes. From de202823d9b93ecba83f8694f5bc27d34474e87f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Tempez?= Date: Sun, 20 Mar 2022 19:21:02 +0100 Subject: [PATCH 12/13] =?UTF-8?q?bug=20double=20fontes=20=C3=A0=20tester?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/module/theme/theme.php | 38 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 20 deletions(-) diff --git a/core/module/theme/theme.php b/core/module/theme/theme.php index 1340d6de..9b624d66 100644 --- a/core/module/theme/theme.php +++ b/core/module/theme/theme.php @@ -603,13 +603,14 @@ class theme extends common { // Soumission du formulaire if ($this->isPost()) { - $fontId = $this->getInput('fontAddFontId', null, true); - $fontName = $this->getInput('fontAddFontName', null, true); - $filePath = $this->getInput('fontAddFile', null); + $fontId = $this->getInput('fontAddFontId', helper::FILTER_STRING_SHORT, true); + $fontName = $this->getInput('fontAddFontName',helper::FILTER_STRING_SHORT, true); + $filePath = $this->getInput('fontAddFile', helper::FILTER_STRING_SHORT); + $type = $this->getInput('fontAddFontImported', helper::FILTER_BOOLEAN) ? 'imported' : 'files'; $e = explode ('/', $filePath); $file = $e[count($e) - 1 ]; - // Vérifier l'existence de fontId et validité de family namesi usage en ligne de cdnFonts + // Vérifier l'existence de fontId et validité de family name si usage en ligne de cdnFonts $data = helper::getUrlContents('https://www.cdnfonts.com/' . $fontId . '.font'); if ( $filePath === '' @@ -626,23 +627,20 @@ class theme extends common { } else { - // Charger les données des fontes - $files = $this->getData(['fonts', 'files']); - $imported = $this->getData(['fonts', 'imported']); - // Concaténation dans les tableaux existants - $imported = array_merge([$fontId => $fontName], $imported); - $files = array_merge([$fontId => $file], $files); - - // Copier la fonte si le nom du fichier est fourni - if (!empty($filePath)) { - copy ( self::FILE_DIR . 'source/' . $filePath, self::DATA_DIR . 'fonts/' . $file ); - } - - // Mettre à jour le fichier des fontes - $this->setData(['fonts', 'imported', $imported ]); - if (!empty($filePath) ) { - $this->setData(['fonts', 'files', $files ]); + switch ($type) { + case 'imported': + $imported = $this->getData(['fonts', 'imported']); + $imported = array_merge([$fontId => $fontName], $imported); + $this->setData(['fonts', 'imported', $imported ]); + break; + case 'files': + $files = $this->getData(['fonts', 'files']); + $files = array_merge([$fontId => $file], $files); + $this->setData(['fonts', 'files', $files ]); + // Copier la fonte si le nom du fichier est fourni + copy ( self::FILE_DIR . 'source/' . $filePath, self::DATA_DIR . 'fonts/' . $file ); + break; } // Valeurs en sortie From edffeecda331195f9fc87535129ccecde28a615c Mon Sep 17 00:00:00 2001 From: fredtempez Date: Mon, 21 Mar 2022 09:33:12 +0100 Subject: [PATCH 13/13] fontes okay --- CHANGES.md | 3 ++- core/include/update.inc.php | 20 +++++++++++++++++--- core/module/theme/view/fontAdd/fontAdd.php | 2 +- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index c174411e..95ab67b9 100755 --- a/CHANGES.md +++ b/CHANGES.md @@ -3,7 +3,8 @@ ## Version 11.3.06 ### Corrections : - Bug d'affichage des blocs de présentation. -### Amélioration : + - Double déclaration d'une fonte locale. +### Améliorations : - Sauvegarde des fontes avec le thème. - Une fonte Websafe remplace une fonte locale dont le fichier n'est pas disponible. diff --git a/core/include/update.inc.php b/core/include/update.inc.php index ebe8a045..3f6d3a09 100644 --- a/core/include/update.inc.php +++ b/core/include/update.inc.php @@ -714,7 +714,7 @@ if ($this->getData(['core', 'dataVersion']) < 11200) { // Option de dévoilement du mdp $this->setData(['config', 'connect', 'showPassword', true]); - + // Mise à jour $this->setData(['core', 'dataVersion', 11200]); } @@ -722,7 +722,7 @@ if ($this->getData(['core', 'dataVersion']) < 11200) { // Version 11.2.02 if ($this->getData(['core', 'dataVersion']) < 11202) { - // Renommer les champs + // Renommer les champs $this->setData(['locale', 'cookies', 'mainLabel', $this->getData(['locale', 'cookies', 'cookiesZwiiText']) ]); $this->setData(['locale', 'cookies', 'gaLabel', $this->getData(['locale', 'cookies', 'cookiesGaText']) ]); $this->setData(['locale', 'cookies', 'titleLabel', $this->getData(['locale', 'cookies', 'cookiesTitleText']) ]); @@ -784,7 +784,7 @@ if ($this->getData(['core', 'dataVersion']) < 11300) { $this->setData(['theme', 'title', 'font', $fonts[ $this->getData (['theme', 'title', 'font' ]) ] ]); $this->setData(['admin', 'fontTitle', $fonts[ $this->getData (['admin', 'fontTitle' ]) ] ]); $this->setData(['admin', 'fontText', $fonts[$this->getData (['admin','fontText' ]) ] ]); - + unlink(self::DATA_DIR . 'admin.css'); unlink(self::DATA_DIR . 'theme.css'); @@ -808,3 +808,17 @@ if ($this->getData(['core', 'dataVersion']) < 11303) { // Mise à jour $this->setData(['core', 'dataVersion', 11303]); } + +// Version 11.3.06 +if ($this->getData(['core', 'dataVersion']) < 11306) { + + // Supprime les fontes déclarées en double par la version précédentes + $files = $this->getData(['fonts', 'files']); + foreach ($files as $fontId => $fontFile) { + if ( !is_null($this->getData(['fonts', 'imported', $fontId])) ) { + $this->deleteData(['fonts', 'imported', $fontId]); + } + } + // Mise à jour + $this->setData(['core', 'dataVersion', 11306]); +} diff --git a/core/module/theme/view/fontAdd/fontAdd.php b/core/module/theme/view/fontAdd/fontAdd.php index 9085f503..89bf4839 100644 --- a/core/module/theme/view/fontAdd/fontAdd.php +++ b/core/module/theme/view/fontAdd/fontAdd.php @@ -53,7 +53,7 @@ 'off', 'label' => 'Nom (Font Family)', - 'placeholder' => 'PerryGothic' + 'placeholder' => 'PerryGothic, sans-serif' ]); ?>