From 107c41f4091cae654cabdbbf2280d1c4ec763812 Mon Sep 17 00:00:00 2001 From: Fred Tempez Date: Sat, 10 Oct 2020 20:22:14 +0200 Subject: [PATCH 1/8] 10303 routage --- CHANGES.md | 4 ++++ core/core.php | 6 +++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 8134da32..b5f7dc4c 100755 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,5 +1,9 @@ # Changelog +## version 10.3.03 +- Correction : + - Test incomplet dans le module de routage + ## version 10.3.02 - Correction : - Icône de pied de page github manquante. diff --git a/core/core.php b/core/core.php index 0ae013a9..e29d26a6 100644 --- a/core/core.php +++ b/core/core.php @@ -39,7 +39,7 @@ class common { const ACCESS_TIMER = 1800; // Numéro de version - const ZWII_VERSION = '10.3.02'; + const ZWII_VERSION = '10.3.03'; const ZWII_UPDATE_CHANNEL = "v10"; public static $actions = []; @@ -1742,7 +1742,8 @@ class core extends common { $access = null; $accessInfo['userName'] = ''; $accessInfo['pageId'] = ''; - if($this->getData(['page', $this->getUrl(0)]) !== null) { + if($this->getData(['page', $this->getUrl(0)]) !== null + OR $this->getData(['page', $this->getUrl(2)]) !== NULL) { // Page Redirection éviter une valeur nulle if( $this->getData(['page', $this->getUrl(0), 'group']) === self::GROUP_VISITOR OR ( @@ -1761,7 +1762,6 @@ class core extends common { } } } - /** * Contrôle si la page demandée est en édition ou accès à la gestion du site * conditions de blocage : From 920f01200739bad6461b565d0e975c1a0cc64243 Mon Sep 17 00:00:00 2001 From: Fred Tempez Date: Sun, 11 Oct 2020 03:34:13 +0200 Subject: [PATCH 2/8] bug routeur --- core/core.php | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/core/core.php b/core/core.php index e29d26a6..14055a7c 100644 --- a/core/core.php +++ b/core/core.php @@ -1743,7 +1743,7 @@ class core extends common { $accessInfo['userName'] = ''; $accessInfo['pageId'] = ''; if($this->getData(['page', $this->getUrl(0)]) !== null - OR $this->getData(['page', $this->getUrl(2)]) !== NULL) { // Page Redirection éviter une valeur nulle + ) { if( $this->getData(['page', $this->getUrl(0), 'group']) === self::GROUP_VISITOR OR ( @@ -1762,6 +1762,8 @@ class core extends common { } } } + var_dump($access); + echo $this->getUrl(0); /** * Contrôle si la page demandée est en édition ou accès à la gestion du site * conditions de blocage : @@ -1772,12 +1774,12 @@ class core extends common { */ foreach($this->getData(['user']) as $userId => $userIds){ $t = explode('/',$this->getData(['user', $userId, 'accessUrl'])); - if ( $this->getuser('id') && - $userId !== $this->getuser('id') && - $this->getData(['user', $userId,'accessUrl']) === $this->getUrl() && - array_intersect($t,self::$accessList) && - array_intersect($t,self::$accessExclude) !== false && - time() < $this->getData(['user', $userId,'accessTimer']) + self::ACCESS_TIMER + if ( $this->getuser('id') + AND $userId !== $this->getuser('id') + AND $this->getData(['user', $userId,'accessUrl']) === $this->getUrl() + AND array_intersect($t,self::$accessList) + AND array_intersect($t,self::$accessExclude) !== false + AND time() < $this->getData(['user', $userId,'accessTimer']) + self::ACCESS_TIMER ) { $access = false; $accessInfo['userName'] = $this->getData(['user', $userId, 'lastname']) . ' ' . $this->getData(['user', $userId, 'firstname']); @@ -1791,16 +1793,13 @@ class core extends common { } // Breadcrumb $title = $this->getData(['page', $this->getUrl(0), 'title']); - if (!empty($this->getData(['page', $this->getUrl(0), 'parentPageId'])) && - $this->getData(['page', $this->getUrl(0), 'breadCrumb'])) { - $title = '' . - ucfirst($this->getData(['page',$this->getData(['page', $this->getUrl(0), 'parentPageId']), 'title'])) . - ' › '. - $this->getData(['page', $this->getUrl(0), 'title']); + if (!empty($this->getData(['page', $this->getUrl(0), 'parentPageId'])) + AND $this->getData(['page', $this->getUrl(0), 'breadCrumb'])) { + $title = '' . ucfirst($this->getData(['page',$this->getData(['page', $this->getUrl(0), 'parentPageId']), 'title'])) . + ' › '. $this->getData(['page', $this->getUrl(0), 'title']); } - + var_dump($access); // Importe la page if( $this->getData(['page', $this->getUrl(0)]) !== null @@ -1874,6 +1873,7 @@ class core extends common { ) ) AND $output['access'] === true + AND $access !== false ) { // Enregistrement du contenu de la méthode POST lorsqu'une notice est présente if(common::$inputNotices) { @@ -1997,6 +1997,7 @@ class core extends common { } } } + var_dump($access); // Erreurs if($access === 'login') { http_response_code(302); From c83e0e6b4f826d69c4376941326902d767ebba74 Mon Sep 17 00:00:00 2001 From: Fred Tempez Date: Sun, 11 Oct 2020 03:48:03 +0200 Subject: [PATCH 3/8] instructions en double --- core/module/page/page.php | 8 -------- 1 file changed, 8 deletions(-) diff --git a/core/module/page/page.php b/core/module/page/page.php index 733d9d54..d9ae1aa5 100644 --- a/core/module/page/page.php +++ b/core/module/page/page.php @@ -210,14 +210,6 @@ class page extends common { ]); } // Impossible de supprimer la page des mentions légales affectée - elseif($url[0] === $this->getData(['config', 'legalPageId'])) { - // Valeurs en sortie - $this->addOutput([ - 'redirect' => helper::baseUrl() . 'config', - 'notification' => 'Désactiver la page dans la configuration avant de la supprimer' - ]); - } - // Impossible de supprimer la page des mentions légales affectée elseif($url[0] === $this->getData(['config', 'page404'])) { // Valeurs en sortie $this->addOutput([ From 2f3db2d42689ceef28fbd8e8ab4743a1ba4db5ba Mon Sep 17 00:00:00 2001 From: Fred Tempez Date: Sun, 11 Oct 2020 03:49:39 +0200 Subject: [PATCH 4/8] inversions --- core/module/page/page.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/module/page/page.php b/core/module/page/page.php index d9ae1aa5..e7e621cc 100644 --- a/core/module/page/page.php +++ b/core/module/page/page.php @@ -258,11 +258,11 @@ class page extends common { } // Suppression else { - // Met à jour le site map - $this->createSitemap('all'); // Effacer la page $this->deleteData(['page', $url[0]]); $this->deleteData(['module', $url[0]]); + // Met à jour le site map + $this->createSitemap('all'); // Valeurs en sortie $this->addOutput([ 'redirect' => helper::baseUrl(false), From f2fc03ce91eedd07e37a1e36950ebe9daacb9f55 Mon Sep 17 00:00:00 2001 From: Fred Tempez Date: Sun, 11 Oct 2020 04:15:38 +0200 Subject: [PATCH 5/8] modif routeur test en cours --- core/core.php | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/core/core.php b/core/core.php index 14055a7c..b425178c 100644 --- a/core/core.php +++ b/core/core.php @@ -1740,9 +1740,9 @@ class core extends common { } // Check l'accès à la page $access = null; - $accessInfo['userName'] = ''; - $accessInfo['pageId'] = ''; if($this->getData(['page', $this->getUrl(0)]) !== null + OR $this->getData(['page', $this->getUrl(1)]) !== null + OR $this->getData(['page', $this->getUrl(2)]) !== null ) { if( $this->getData(['page', $this->getUrl(0), 'group']) === self::GROUP_VISITOR @@ -1754,7 +1754,10 @@ class core extends common { $access = true; } else { - if($this->getUrl(0) === $this->getData(['config', 'homePageId'])) { + + if($this->getUrl(0) === 'user' + AND $this->getUrl(1) === 'login' + ) { $access = 'login'; } else { @@ -1763,7 +1766,7 @@ class core extends common { } } var_dump($access); - echo $this->getUrl(0); + echo $this->getUrl(1); /** * Contrôle si la page demandée est en édition ou accès à la gestion du site * conditions de blocage : @@ -1772,6 +1775,8 @@ class core extends common { * - Une partie de l'URL fait partie de la liste de filtrage (édition d'un module etc..) * - L'édition est ouverte depuis un temps dépassé, on considère que la page est restée ouverte et qu'elle ne sera pas validée */ + $accessInfo['userName'] = ''; + $accessInfo['pageId'] = ''; foreach($this->getData(['user']) as $userId => $userIds){ $t = explode('/',$this->getData(['user', $userId, 'accessUrl'])); if ( $this->getuser('id') @@ -1820,7 +1825,7 @@ class core extends common { } // Importe le module else { - // Id du module, et valeurs en sortie de la page si il s'agit d'un module de page + // Id du module, et valeurs en sortie de la page s'il s'agit d'un module de page if($access AND $this->getData(['page', $this->getUrl(0), 'moduleId'])) { $moduleId = $this->getData(['page', $this->getUrl(0), 'moduleId']); From 4104fdf736fe23c256c8e27b6beae76b0d165fea Mon Sep 17 00:00:00 2001 From: Fred Tempez Date: Sun, 11 Oct 2020 04:29:57 +0200 Subject: [PATCH 6/8] revert to core origin --- core/core.php | 50 ++++++++++++++++++++++---------------------------- 1 file changed, 22 insertions(+), 28 deletions(-) diff --git a/core/core.php b/core/core.php index b425178c..0ae013a9 100644 --- a/core/core.php +++ b/core/core.php @@ -39,7 +39,7 @@ class common { const ACCESS_TIMER = 1800; // Numéro de version - const ZWII_VERSION = '10.3.03'; + const ZWII_VERSION = '10.3.02'; const ZWII_UPDATE_CHANNEL = "v10"; public static $actions = []; @@ -1740,10 +1740,9 @@ class core extends common { } // Check l'accès à la page $access = null; - if($this->getData(['page', $this->getUrl(0)]) !== null - OR $this->getData(['page', $this->getUrl(1)]) !== null - OR $this->getData(['page', $this->getUrl(2)]) !== null - ) { + $accessInfo['userName'] = ''; + $accessInfo['pageId'] = ''; + if($this->getData(['page', $this->getUrl(0)]) !== null) { if( $this->getData(['page', $this->getUrl(0), 'group']) === self::GROUP_VISITOR OR ( @@ -1754,10 +1753,7 @@ class core extends common { $access = true; } else { - - if($this->getUrl(0) === 'user' - AND $this->getUrl(1) === 'login' - ) { + if($this->getUrl(0) === $this->getData(['config', 'homePageId'])) { $access = 'login'; } else { @@ -1765,8 +1761,7 @@ class core extends common { } } } - var_dump($access); - echo $this->getUrl(1); + /** * Contrôle si la page demandée est en édition ou accès à la gestion du site * conditions de blocage : @@ -1775,16 +1770,14 @@ class core extends common { * - Une partie de l'URL fait partie de la liste de filtrage (édition d'un module etc..) * - L'édition est ouverte depuis un temps dépassé, on considère que la page est restée ouverte et qu'elle ne sera pas validée */ - $accessInfo['userName'] = ''; - $accessInfo['pageId'] = ''; foreach($this->getData(['user']) as $userId => $userIds){ $t = explode('/',$this->getData(['user', $userId, 'accessUrl'])); - if ( $this->getuser('id') - AND $userId !== $this->getuser('id') - AND $this->getData(['user', $userId,'accessUrl']) === $this->getUrl() - AND array_intersect($t,self::$accessList) - AND array_intersect($t,self::$accessExclude) !== false - AND time() < $this->getData(['user', $userId,'accessTimer']) + self::ACCESS_TIMER + if ( $this->getuser('id') && + $userId !== $this->getuser('id') && + $this->getData(['user', $userId,'accessUrl']) === $this->getUrl() && + array_intersect($t,self::$accessList) && + array_intersect($t,self::$accessExclude) !== false && + time() < $this->getData(['user', $userId,'accessTimer']) + self::ACCESS_TIMER ) { $access = false; $accessInfo['userName'] = $this->getData(['user', $userId, 'lastname']) . ' ' . $this->getData(['user', $userId, 'firstname']); @@ -1798,13 +1791,16 @@ class core extends common { } // Breadcrumb $title = $this->getData(['page', $this->getUrl(0), 'title']); - if (!empty($this->getData(['page', $this->getUrl(0), 'parentPageId'])) - AND $this->getData(['page', $this->getUrl(0), 'breadCrumb'])) { - $title = '' . ucfirst($this->getData(['page',$this->getData(['page', $this->getUrl(0), 'parentPageId']), 'title'])) . - ' › '. $this->getData(['page', $this->getUrl(0), 'title']); + if (!empty($this->getData(['page', $this->getUrl(0), 'parentPageId'])) && + $this->getData(['page', $this->getUrl(0), 'breadCrumb'])) { + $title = '' . + ucfirst($this->getData(['page',$this->getData(['page', $this->getUrl(0), 'parentPageId']), 'title'])) . + ' › '. + $this->getData(['page', $this->getUrl(0), 'title']); } - var_dump($access); + // Importe la page if( $this->getData(['page', $this->getUrl(0)]) !== null @@ -1825,7 +1821,7 @@ class core extends common { } // Importe le module else { - // Id du module, et valeurs en sortie de la page s'il s'agit d'un module de page + // Id du module, et valeurs en sortie de la page si il s'agit d'un module de page if($access AND $this->getData(['page', $this->getUrl(0), 'moduleId'])) { $moduleId = $this->getData(['page', $this->getUrl(0), 'moduleId']); @@ -1878,7 +1874,6 @@ class core extends common { ) ) AND $output['access'] === true - AND $access !== false ) { // Enregistrement du contenu de la méthode POST lorsqu'une notice est présente if(common::$inputNotices) { @@ -2002,7 +1997,6 @@ class core extends common { } } } - var_dump($access); // Erreurs if($access === 'login') { http_response_code(302); From 589fe9f8cb6355676ddc4224fe12dcb4efc911da Mon Sep 17 00:00:00 2001 From: Fred Tempez Date: Sun, 11 Oct 2020 04:31:30 +0200 Subject: [PATCH 7/8] changes --- CHANGES.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGES.md b/CHANGES.md index b5f7dc4c..d725a086 100755 --- a/CHANGES.md +++ b/CHANGES.md @@ -2,7 +2,7 @@ ## version 10.3.03 - Correction : - - Test incomplet dans le module de routage + - Doublons de lignes. ## version 10.3.02 - Correction : From f0fe2c01775d24e15816082044951621ee5a2ebe Mon Sep 17 00:00:00 2001 From: Fred Tempez Date: Sun, 11 Oct 2020 05:06:08 +0200 Subject: [PATCH 8/8] Revert "instructions en double" This reverts commit c83e0e6b4f826d69c4376941326902d767ebba74. --- core/module/page/page.php | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/core/module/page/page.php b/core/module/page/page.php index e7e621cc..013c1a08 100644 --- a/core/module/page/page.php +++ b/core/module/page/page.php @@ -210,6 +210,14 @@ class page extends common { ]); } // Impossible de supprimer la page des mentions légales affectée + elseif($url[0] === $this->getData(['config', 'legalPageId'])) { + // Valeurs en sortie + $this->addOutput([ + 'redirect' => helper::baseUrl() . 'config', + 'notification' => 'Désactiver la page dans la configuration avant de la supprimer' + ]); + } + // Impossible de supprimer la page des mentions légales affectée elseif($url[0] === $this->getData(['config', 'page404'])) { // Valeurs en sortie $this->addOutput([