diff --git a/module/blog/blog.php b/module/blog/blog.php
index e9c9619e..5de45b4d 100755
--- a/module/blog/blog.php
+++ b/module/blog/blog.php
@@ -113,7 +113,7 @@ class blog extends common {
$comment['userId'] ? $this->getData(['user', $comment['userId'], 'firstname']) . ' ' . $this->getData(['user', $comment['userId'], 'lastname']) : $comment['author'],
template::button('blogCommentDelete' . $commentIds[$i], [
'class' => 'blogCommentDelete buttonRed',
- 'href' => helper::baseUrl() . $this->getUrl(0) . '/comment-delete/' . $comment['articleId'] . '/' . $commentIds[$i],
+ 'href' => helper::baseUrl() . $this->getUrl(0) . '/comment-delete/' . $comment['articleId'] . '/' . $commentIds[$i] . '/' . $_SESSION['csrf'] ,
'value' => template::ico('cancel')
])
];
@@ -136,6 +136,14 @@ class blog extends common {
'access' => false
]);
}
+ // Jeton incorrect
+ elseif ($this->getUrl(4) !== $_SESSION['csrf']) {
+ // Valeurs en sortie
+ $this->addOutput([
+ 'redirect' => helper::baseUrl() . $this->getUrl(0) . '/config',
+ 'notification' => 'Action non autorisée'
+ ]);
+ }
// Suppression
else {
$this->deleteData(['module', $this->getUrl(0), $this->getUrl(2), 'comment', $this->getUrl(3)]);
@@ -169,12 +177,12 @@ class blog extends common {
utf8_encode(strftime('%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],
+ 'href' => helper::baseUrl() . $this->getUrl(0) . '/edit/' . $articleIds[$i] . '/' . $_SESSION['csrf'],
'value' => template::ico('pencil')
]),
template::button('blogConfigDelete' . $articleIds[$i], [
'class' => 'blogConfigDelete buttonRed',
- 'href' => helper::baseUrl() . $this->getUrl(0) . '/delete/' . $articleIds[$i] . '&csrf=' . $_SESSION['csrf'],
+ 'href' => helper::baseUrl() . $this->getUrl(0) . '/delete/' . $articleIds[$i] . '/' . $_SESSION['csrf'],
'value' => template::ico('cancel')
])
];
@@ -190,33 +198,23 @@ class blog extends common {
* Suppression
*/
public function delete() {
- // $url prend l'adresse sans le token
- $url = explode('&',$this->getUrl(2));
- // L'article n'existe pas
- if($this->getData(['module', $this->getUrl(0), $url[0]]) === null) {
+ if($this->getData(['module', $this->getUrl(0), $this->getUrl(2)]) === null) {
// Valeurs en sortie
$this->addOutput([
'access' => false
]);
}
// Jeton incorrect
- elseif(!isset($_GET['csrf'])) {
+ elseif ($this->getUrl(3) !== $_SESSION['csrf']) {
// Valeurs en sortie
$this->addOutput([
- 'redirect' => helper::baseUrl(). $this->getUrl(0) . '/config',
- 'notification' => 'Jeton invalide'
- ]);
- }
- elseif ($_GET['csrf'] !== $_SESSION['csrf']) {
- // Valeurs en sortie
- $this->addOutput([
- 'redirect' => helper::baseUrl() . $this->getUrl(0) . '/config',
- 'notification' => 'Suppression non autorisée'
+ 'redirect' => helper::baseUrl() . $this->getUrl(0) . '/config',
+ 'notification' => 'Action non autorisée'
]);
}
// Suppression
else {
- $this->deleteData(['module', $this->getUrl(0), $url[0]]);
+ $this->deleteData(['module', $this->getUrl(0), $this->getUrl(2)]);
// Valeurs en sortie
$this->addOutput([
'redirect' => helper::baseUrl() . $this->getUrl(0) . '/config',
@@ -230,6 +228,14 @@ class blog extends common {
* Édition
*/
public function edit() {
+ // Jeton incorrect
+ if ($this->getUrl(3) !== $_SESSION['csrf']) {
+ // Valeurs en sortie
+ $this->addOutput([
+ 'redirect' => helper::baseUrl() . $this->getUrl(0) . '/config',
+ 'notification' => 'Action non autorisée'
+ ]);
+ }
// L'article n'existe pas
if($this->getData(['module', $this->getUrl(0), $this->getUrl(2)]) === null) {
// Valeurs en sortie
@@ -240,7 +246,7 @@ class blog extends common {
// L'article existe
else {
// Soumission du formulaire
- if($this->isPost()) {
+ if($this->isPost()) {
$articleId = $this->getInput('blogEditTitle', helper::FILTER_ID, true);
// Incrémente le nouvel id de l'article
if($articleId !== $this->getUrl(2)) {
diff --git a/module/blog/view/article/article.php b/module/blog/view/article/article.php
index 80008a55..3fe44fa4 100755
--- a/module/blog/view/article/article.php
+++ b/module/blog/view/article/article.php
@@ -115,7 +115,7 @@ code d'origine
'buttonBlue',
- 'href' => helper::baseUrl() . $this->getUrl(0) . '/edit/' . $this->getUrl(1),
+ 'href' => helper::baseUrl() . $this->getUrl(0) . '/edit/' . $this->getUrl(1) . '/' . $_SESSION['csrf'],
'value' => 'Editer'
]); ?>
diff --git a/module/gallery/gallery.php b/module/gallery/gallery.php
index 6d3d517b..c75acb46 100755
--- a/module/gallery/gallery.php
+++ b/module/gallery/gallery.php
@@ -54,12 +54,12 @@ class gallery extends common {
$gallery['config']['name'],
$gallery['config']['directory'],
template::button('galleryConfigEdit' . $galleryId, [
- 'href' => helper::baseUrl() . $this->getUrl(0) . '/edit/' . $galleryId,
+ 'href' => helper::baseUrl() . $this->getUrl(0) . '/edit/' . $galleryId . '/' . $_SESSION['csrf'],
'value' => template::ico('pencil')
]),
template::button('galleryConfigDelete' . $galleryId, [
'class' => 'galleryConfigDelete buttonRed',
- 'href' => helper::baseUrl() . $this->getUrl(0) . '/delete/' . $galleryId . '&csrf=' . $_SESSION['csrf'],
+ 'href' => helper::baseUrl() . $this->getUrl(0) . '/delete/' . $galleryId . '/' . $_SESSION['csrf'],
'value' => template::ico('cancel')
])
];
@@ -93,33 +93,25 @@ class gallery extends common {
* Suppression
*/
public function delete() {
- // $url prend l'adresse sans le token
- $url = explode('&',$this->getUrl(2));
+ // $url prend l'adresse sans le token
// La galerie n'existe pas
- if($this->getData(['module', $this->getUrl(0), $url[0]]) === null) {
+ if($this->getData(['module', $this->getUrl(0), $this->getUrl(2)]) === null) {
// Valeurs en sortie
$this->addOutput([
'access' => false
]);
}
// Jeton incorrect
- elseif(!isset($_GET['csrf'])) {
- // Valeurs en sortie
- $this->addOutput([
- 'redirect' => helper::baseUrl() . 'config',
- 'notification' => 'Jeton invalide'
- ]);
- }
elseif ($_GET['csrf'] !== $_SESSION['csrf']) {
// Valeurs en sortie
$this->addOutput([
- 'redirect' => helper::baseUrl() . 'config',
+ 'redirect' => helper::baseUrl() . $this->getUrl(0) . '/config',
'notification' => 'Suppression non autorisée'
]);
- }
+ }
// Suppression
else {
- $this->deleteData(['module', $this->getUrl(0), $url[0]]);
+ $this->deleteData(['module', $this->getUrl(0), $this->getUrl(2)]);
// Valeurs en sortie
$this->addOutput([
'redirect' => helper::baseUrl() . $this->getUrl(0) . '/config',
@@ -144,6 +136,14 @@ class gallery extends common {
* Édition
*/
public function edit() {
+ // Jeton incorrect
+ if ($this->getUrl(3) !== $_SESSION['csrf']) {
+ // Valeurs en sortie
+ $this->addOutput([
+ 'redirect' => helper::baseUrl() . $this->getUrl(0) . '/config',
+ 'notification' => 'Action non autorisée'
+ ]);
+ }
// La galerie n'existe pas
if($this->getData(['module', $this->getUrl(0), $this->getUrl(2)]) === null) {
// Valeurs en sortie
diff --git a/module/news/news.php b/module/news/news.php
index 93c0b5cf..34d32f22 100755
--- a/module/news/news.php
+++ b/module/news/news.php
@@ -95,12 +95,12 @@ class news extends common {
utf8_encode(strftime('%H:%M', $this->getData(['module', $this->getUrl(0), $newsIds[$i], 'publishedOn']))),
self::$states[$this->getData(['module', $this->getUrl(0), $newsIds[$i], 'state'])],
template::button('newsConfigEdit' . $newsIds[$i], [
- 'href' => helper::baseUrl() . $this->getUrl(0) . '/edit/' . $newsIds[$i],
+ 'href' => helper::baseUrl() . $this->getUrl(0) . '/edit/' . $newsIds[$i]. '/' . $_SESSION['csrf'],
'value' => template::ico('pencil')
]),
template::button('newsConfigDelete' . $newsIds[$i], [
'class' => 'newsConfigDelete buttonRed',
- 'href' => helper::baseUrl() . $this->getUrl(0) . '/delete/' . $newsIds[$i] . '&csrf=' . $_SESSION['csrf'],
+ 'href' => helper::baseUrl() . $this->getUrl(0) . '/delete/' . $newsIds[$i] . '/' . $_SESSION['csrf'],
'value' => template::ico('cancel')
])
];
@@ -115,34 +115,25 @@ class news extends common {
/**
* Suppression
*/
- public function delete() {
- // $url prend l'adresse sans le token
- $url = explode('&',$this->getUrl(2));
+ public function delete() {
// La news n'existe pas
- if($this->getData(['module', $this->getUrl(0), $url[0]]) === null) {
+ if($this->getData(['module', $this->getUrl(0), $this->getUrl(2)]) === null) {
// Valeurs en sortie
$this->addOutput([
'access' => false
]);
}
// Jeton incorrect
- elseif(!isset($_GET['csrf'])) {
+ elseif ($this->getUrl(3) !== $_SESSION['csrf']) {
// Valeurs en sortie
$this->addOutput([
- 'redirect' => helper::baseUrl(). $this->getUrl(0) . '/config',
- 'notification' => 'Jeton invalide'
- ]);
- }
- elseif ($_GET['csrf'] !== $_SESSION['csrf']) {
- // Valeurs en sortie
- $this->addOutput([
- 'redirect' => helper::baseUrl() . $this->getUrl(0) . '/config',
- 'notification' => 'Suppression non autorisée'
+ 'redirect' => helper::baseUrl() . $this->getUrl(0) . '/config',
+ 'notification' => 'Action non autorisée'
]);
}
// Suppression
else {
- $this->deleteData(['module', $this->getUrl(0), $url[0]]);
+ $this->deleteData(['module', $this->getUrl(0), $this->getUrl(2)]);
// Valeurs en sortie
$this->addOutput([
'redirect' => helper::baseUrl() . $this->getUrl(0) . '/config',
@@ -156,6 +147,14 @@ class news extends common {
* Édition
*/
public function edit() {
+ // Jeton incorrect
+ if ($this->getUrl(3) !== $_SESSION['csrf']) {
+ // Valeurs en sortie
+ $this->addOutput([
+ 'redirect' => helper::baseUrl() . $this->getUrl(0) . '/config',
+ 'notification' => 'Action non autorisée'
+ ]);
+ }
// La news n'existe pas
if($this->getData(['module', $this->getUrl(0), $this->getUrl(2)]) === null) {
// Valeurs en sortie