Vous êtes déconnecté. Vous pouvez à présent retourner à la ";
$ret .= "page d'accueil";
$ret .= ".
";
- return $ret;
+ return new Page($ret, "Déconnexion réussie");
}
}
- public static function formulaire_connexion($message = "") {
+ public static function formulaire_connexion($chemin, $titre = "Connexion", $message = "") {
// TODO
- return "
Connexion
" . $message . "...";
+ $ret = "
" . $titre . "
";
+ $ret .= $message;
+ $ret .= '';
+ return $ret;
}
}
-Modules::enregister_module("AdminConnexion", "admin-connexion", "vue");
+Modules::enregister_module("AdminConnexion", "admin-connexion", "vue", "utilisateur mdp");
?>
\ No newline at end of file
diff --git a/__cms__/code/securite/authentification.php b/__cms__/code/securite/authentification.php
index f6abd14..c83806e 100644
--- a/__cms__/code/securite/authentification.php
+++ b/__cms__/code/securite/authentification.php
@@ -9,7 +9,7 @@ class Authentification {
$ch_utilisateur = self::singleton()->enfant($nom_utilisateur);
$mdp_réel = self::get_mot_de_passe($nom_utilisateur, true); // true => forcer permissions.
$peut_se_connecter = self::get_peut_se_connecter($nom_utilisateur, true); // true => forcer permissions.
- if ($mdp == $mdp_réel && $peut_se_connecter === "true") { // Triple égale. Pas d'entourloupe avec des casts miteux !
+ if ($mdp == $mdp_réel && $peut_se_connecter) {
// TODO : Vérifier si c'est sécurisé => stocké _uniquement_ sur le serveur.
Session::put("utilisateur", $nom_utilisateur);
return true;
@@ -75,12 +75,12 @@ class Authentification {
}
public static function set_peut_se_connecter($nom_utilisateur, $valeur) {
- Stockage::set_pop(self::singleton()->enfant($nom_utilisateur), "peut_se_connecter", $valeur ? "true" : "false");
+ Stockage::set_pop(self::singleton()->enfant($nom_utilisateur), "peut_se_connecter", $valeur ? "oui" : "non");
}
public static function get_peut_se_connecter($nom_utilisateur, $forcer_permissions = false) {
- $peut_se_connecter = Stockage::get_pop(self::singleton()->enfant($nom_utilisateur), "peut_se_connecter", $forcer_permissions);
- return ($peut_se_connecter == "true") ? true : false;
+ $peut_se_connecter = Stockage::get_prop(self::singleton()->enfant($nom_utilisateur), "peut_se_connecter", $forcer_permissions);
+ return ($peut_se_connecter == "oui") ? true : false;
}
}
diff --git a/__cms__/code/stockage/stockage.php b/__cms__/code/stockage/stockage.php
index dd042d0..b717bad 100644
--- a/__cms__/code/stockage/stockage.php
+++ b/__cms__/code/stockage/stockage.php
@@ -73,7 +73,8 @@ class Stockage {
if ($forcer_permissions || Permissions::vérifier_permission($chemin, "get_prop")) {
return Système_fichiers::lire(self::fichier_prop($chemin, $prop));
} else {
- return false;
+ Erreur::fatale("Permission non accordée pour la lecture de chemin: " . $chemin->get() . " propriété: " . $prop);
+ // return false;
}
}
diff --git a/__cms__/code/stockage/systeme-fichiers.php b/__cms__/code/stockage/systeme-fichiers.php
index ef886f3..7d73859 100644
--- a/__cms__/code/stockage/systeme-fichiers.php
+++ b/__cms__/code/stockage/systeme-fichiers.php
@@ -25,7 +25,7 @@ class Système_fichiers {
}
public static function lire($chemin_fs) {
- if (!file_exists($chemin_fs)) return false;
+ if (!file_exists($chemin_fs)) Erreur::fatale("Ne peut lire le fichier " . $chemin_fs); // return false;
return file_get_contents($chemin_fs);
}
diff --git a/__cms__/donnees/admin/connexion/__prop__type b/__cms__/donnees/admin/connexion/__prop__type
new file mode 100644
index 0000000..8ee8526
--- /dev/null
+++ b/__cms__/donnees/admin/connexion/__prop__type
@@ -0,0 +1 @@
+admin-connexion
\ No newline at end of file
diff --git a/__cms__/donnees/admin/permissions/__prop__regles b/__cms__/donnees/admin/permissions/__prop__regles
index 9793a8a..e12f49a 100644
--- a/__cms__/donnees/admin/permissions/__prop__regles
+++ b/__cms__/donnees/admin/permissions/__prop__regles
@@ -1,7 +1,8 @@
-/**|*|Administrateurs|oui|Les administrateurs ont tous les droits
+/**|*|Administrateurs|oui|Les administrateurs ont tous les droits.
/admin/**|*|Administrateurs|oui|Les administrateurs peuvent administer (redondant avec la règle ci-dessus).
+/admin/connexion/**|*|*|oui|Tout le monde peut se connecter.
/admin/**|*|*|non|Les non-administrateur n'ont pas accès à la section "admin".
/forum/|nouvelle_page|Utilisateurs|oui|Les utilisateurs peuvent créer de nouveaux sujets de discussion dans le forum.
/forum/*|nouvelle_page|Utilisateurs|oui|Les utilisateurs peuvent créer des messages dans les sujets de discussion.
-/forum/*/*|set_prop|Propriétaire|oui|L'auteur d'un message peut en définir le contenu (pas les autres, ce n'est pas un wiki).
+/forum/*/*|set_prop|Propriétaire|oui|L'auteur d'un message peut en définir le contenu (pas les autres, ce n'est pas un wiki).
/**|get_prop|Anonymes|oui|Le reste du monde peut consulter le site.
\ No newline at end of file
diff --git a/__cms__/donnees/admin/utilisateurs/admin/__prop__groupe b/__cms__/donnees/admin/utilisateurs/admin/__prop__groupe
new file mode 100644
index 0000000..f73fa2e
--- /dev/null
+++ b/__cms__/donnees/admin/utilisateurs/admin/__prop__groupe
@@ -0,0 +1 @@
+Administrateurs
\ No newline at end of file
diff --git a/__cms__/donnees/admin/utilisateurs/admin/__prop__mot_de_passe b/__cms__/donnees/admin/utilisateurs/admin/__prop__mot_de_passe
new file mode 100644
index 0000000..f77b004
--- /dev/null
+++ b/__cms__/donnees/admin/utilisateurs/admin/__prop__mot_de_passe
@@ -0,0 +1 @@
+admin
\ No newline at end of file
diff --git a/__cms__/donnees/admin/utilisateurs/admin/__prop__peut_se_connecter b/__cms__/donnees/admin/utilisateurs/admin/__prop__peut_se_connecter
new file mode 100644
index 0000000..887ff51
--- /dev/null
+++ b/__cms__/donnees/admin/utilisateurs/admin/__prop__peut_se_connecter
@@ -0,0 +1 @@
+oui
\ No newline at end of file
diff --git a/admin/connexion/index.php b/admin/connexion/index.php
new file mode 100644
index 0000000..9093528
--- /dev/null
+++ b/admin/connexion/index.php
@@ -0,0 +1,7 @@
+
\ No newline at end of file
diff --git a/permissions.sh b/permissions.sh
new file mode 100644
index 0000000..e1c515e
--- /dev/null
+++ b/permissions.sh
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+fichiers="index.php galerie admin __cms__/donnees"
+
+chgrp -R www-data $fichiers
+chmod 664 $fichiers
+find $fichiers -type d -print0 | xargs -0 chmod 775