Enveloppage des fonction du module admin dans des classes.
This commit is contained in:
parent
b9737b3283
commit
8d47727b8d
|
@ -1,6 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
class Connexion {
|
class AdminConnexion {
|
||||||
public function action($chemin, $action, $paramètres) {
|
public function action($chemin, $action, $paramètres) {
|
||||||
if ($action == "connexion") {
|
if ($action == "connexion") {
|
||||||
if (connexion($paramètres["utilisateur"], $paramètres["mdp"])) {
|
if (connexion($paramètres["utilisateur"], $paramètres["mdp"])) {
|
||||||
|
|
|
@ -1,45 +1,47 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
function action($chemin, $action, $paramètres) {
|
class AdminCouleurs {
|
||||||
if ($action == "anuler") {
|
public function action($chemin, $action, $paramètres) {
|
||||||
return redirect($chemin);
|
if ($action == "anuler") {
|
||||||
} else {
|
return redirect($chemin);
|
||||||
if (is_set($paramètres["Couleur_A"])) {
|
|
||||||
// Stocker couleur A
|
|
||||||
}
|
|
||||||
if (is_set($paramètres["Couleur_B"])) {
|
|
||||||
// Stocker couleur B
|
|
||||||
}
|
|
||||||
if (is_set($paramètres["Couleur_C"])) {
|
|
||||||
// Stocker couleur C
|
|
||||||
}
|
|
||||||
// ...
|
|
||||||
|
|
||||||
if (is_set($paramètres["vue"])) {
|
|
||||||
self::vue($chemin, $paramètres["vue"]);
|
|
||||||
} else {
|
} else {
|
||||||
self::vue($chemin);
|
if (is_set($paramètres["Couleur_A"])) {
|
||||||
|
// Stocker couleur A
|
||||||
|
}
|
||||||
|
if (is_set($paramètres["Couleur_B"])) {
|
||||||
|
// Stocker couleur B
|
||||||
|
}
|
||||||
|
if (is_set($paramètres["Couleur_C"])) {
|
||||||
|
// Stocker couleur C
|
||||||
|
}
|
||||||
|
// ...
|
||||||
|
|
||||||
|
if (is_set($paramètres["vue"])) {
|
||||||
|
self::vue($chemin, $paramètres["vue"]);
|
||||||
|
} else {
|
||||||
|
self::vue($chemin);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
public function vue($chemin, $vue = "normal") {
|
||||||
function vue($chemin, $vue = "normal") {
|
if ($vue == "normal") {
|
||||||
if ($vue == "normal") {
|
// Si l'utilisateur a l'autorisation de modifier les propriétés,
|
||||||
// Si l'utilisateur a l'autorisation de modifier les propriétés,
|
// on affiche la version modifiable plutôt que la "vue".
|
||||||
// on affiche la version modifiable plutôt que la "vue".
|
$ret = "";
|
||||||
$ret = "";
|
$ret .= "<input ... Couleur A />";
|
||||||
$ret .= "<input ... Couleur A />";
|
$ret .= "<input ... Couleur B />";
|
||||||
$ret .= "<input ... Couleur B />";
|
$ret .= "<input ... Couleur C />";
|
||||||
$ret .= "<input ... Couleur C />";
|
$ret .= ...
|
||||||
$ret .= ...
|
return "Vue normale de la page.";
|
||||||
return "Vue normale de la page.";
|
} else if ($vue == "css") {
|
||||||
} else if ($vue == "css") {
|
// TODO : où mettre ce gen_css... ?
|
||||||
// TODO : où mettre ce gen_css... ?
|
return Site::gen_css(array(
|
||||||
return Site::gen_css(array(
|
"Couleur_A" => Stockage::get_prop($chemin, "Coucleur_A"),
|
||||||
"Couleur_A" => Stockage::get_prop($chemin, "Coucleur_A"),
|
"Couleur_B" => Stockage::get_prop($chemin, "Coucleur_B"),
|
||||||
"Couleur_B" => Stockage::get_prop($chemin, "Coucleur_B"),
|
"Couleur_C" => Stockage::get_prop($chemin, "Coucleur_C")
|
||||||
"Couleur_C" => Stockage::get_prop($chemin, "Coucleur_C")
|
));
|
||||||
));
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,34 +1,36 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
function action($chemin, $action, $paramètres) {
|
class AdminPermissions {
|
||||||
$singleton = new Chemin("/admin/permissions/");
|
function action($chemin, $action, $paramètres) {
|
||||||
if ($action == "anuler") {
|
$singleton = new Chemin("/admin/permissions/");
|
||||||
return redirect($chemin);
|
if ($action == "anuler") {
|
||||||
} else {
|
return redirect($chemin);
|
||||||
if (is_set($paramètres["regles"])) {
|
|
||||||
Stockage::set_prop($singleton, "regles", $paramètres["regles"]);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (is_set($paramètres["vue"])) {
|
|
||||||
self::vue($chemin, $paramètres["vue"]);
|
|
||||||
} else {
|
} else {
|
||||||
self::vue($chemin);
|
if (is_set($paramètres["regles"])) {
|
||||||
|
Stockage::set_prop($singleton, "regles", $paramètres["regles"]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (is_set($paramètres["vue"])) {
|
||||||
|
self::vue($chemin, $paramètres["vue"]);
|
||||||
|
} else {
|
||||||
|
self::vue($chemin);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
function vue($chemin, $vue = "normal") {
|
||||||
function vue($chemin, $vue = "normal") {
|
$singleton = new Chemin("/admin/permissions/");
|
||||||
$singleton = new Chemin("/admin/permissions/");
|
if ($vue == "normal") {
|
||||||
if ($vue == "normal") {
|
$ret = "";
|
||||||
$ret = "";
|
$ret .= "<h1>Règles de sécurité</h1>";
|
||||||
$ret .= "<h1>Règles de sécurité</h1>";
|
$ret .= "<p>La première règle correspondant à une action de l'utilisateur est appliquée. Bla-bla blabla sur le fonctionnement.</p>";
|
||||||
$ret .= "<p>La première règle correspondant à une action de l'utilisateur est appliquée. Bla-bla blabla sur le fonctionnement.</p>";
|
if (vérifier_permission($singleton, "set_prop", get_utilisateur())) {
|
||||||
if (vérifier_permission($singleton, "set_prop", get_utilisateur())) {
|
$ret .= "<textarea ...>" . Stockage::get_prop($singleton, "regles") . "</textarea>"; // TODO : html escape chars etc.
|
||||||
$ret .= "<textarea ...>" . Stockage::get_prop($singleton, "regles") . "</textarea>"; // TODO : html escape chars etc.
|
} else {
|
||||||
} else {
|
$ret .= "<pre><code>" . Stockage::get_prop($singleton, "regles") . "</code></pre>"; // TODO : html escape chars etc.
|
||||||
$ret .= "<pre><code>" . Stockage::get_prop($singleton, "regles") . "</code></pre>"; // TODO : html escape chars etc.
|
}
|
||||||
|
return $ret;
|
||||||
}
|
}
|
||||||
return $ret;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,68 +1,70 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
function action($chemin, $action, $paramètres) {
|
class AdminUtilisateurs {
|
||||||
$singleton = new Chemin("/admin/utilisateurs/");
|
public function action($chemin, $action, $paramètres) {
|
||||||
if ($action == "anuler") {
|
$singleton = new Chemin("/admin/utilisateurs/");
|
||||||
return redirect($chemin);
|
if ($action == "anuler") {
|
||||||
|
return redirect($chemin);
|
||||||
// TODO ...
|
|
||||||
// Solution A (propre) :
|
|
||||||
// Il faut que le bouton "nouvel utilisateur" crée une nouvelle page et redirect vers la page utilisateur_S_ (la page en cours)
|
|
||||||
// Puis sur la page utilisateur_S_ on modifie les champs de l'utilisateur X, on clique sur appliquer,
|
|
||||||
// ça POST vers la page de X, qui fait les modifs et redirect vers utiliseur_S_.
|
|
||||||
// Solution B :
|
|
||||||
// [nom] [mdp] [peut_se_connecter] [[nouvel utilisateur]] -> crée nouvelle page "nom", définit le mot de passe et peut_se_connecter.
|
|
||||||
// Puis redirect vers utilisateur_S_
|
|
||||||
// [nom] [mdp] [peut_se_connecter] [[Appliquer]] -> renome la page, définit le mdp et peut_se_connecter.
|
|
||||||
|
|
||||||
// Solution B :
|
|
||||||
} else {
|
|
||||||
if (is_set($paramètres["nouveau_nom"]) && ($action == "nouvelle_page")) {
|
|
||||||
// TODO : SECURITE : Si la page existe déjà, laisser tomber !
|
|
||||||
Stockage::nouvelle_page($singleton, $paramètres["nouveau_nom"]);
|
|
||||||
$paramètres["nom"] = $paramètres["nouveau_nom"];
|
|
||||||
// TODO : message de confirmation quelque part ?
|
|
||||||
}
|
|
||||||
|
|
||||||
if (is_set($paramètres["nouveau_nom"]) && is_set($paramètres["nom"])) {
|
// TODO ...
|
||||||
// renomer la page $paramètres["nom"]
|
// Solution A (propre) :
|
||||||
$paramètres["nom"] = $paramètres["nouveau_nom"];
|
// Il faut que le bouton "nouvel utilisateur" crée une nouvelle page et redirect vers la page utilisateur_S_ (la page en cours)
|
||||||
}
|
// Puis sur la page utilisateur_S_ on modifie les champs de l'utilisateur X, on clique sur appliquer,
|
||||||
|
// ça POST vers la page de X, qui fait les modifs et redirect vers utiliseur_S_.
|
||||||
|
// Solution B :
|
||||||
|
// [nom] [mdp] [peut_se_connecter] [[nouvel utilisateur]] -> crée nouvelle page "nom", définit le mot de passe et peut_se_connecter.
|
||||||
|
// Puis redirect vers utilisateur_S_
|
||||||
|
// [nom] [mdp] [peut_se_connecter] [[Appliquer]] -> renome la page, définit le mdp et peut_se_connecter.
|
||||||
|
|
||||||
if (is_set($paramètres["mot_de_passe"]) && is_set($paramètres["nom"])) {
|
// Solution B :
|
||||||
Stockage::set_pop($singleton->enfant($paramètres["nom"]), "mot_de_passe", $paramètres["mot_de_passe"]);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (is_set($paramètres["peut_se_connecter"]) && is_set($paramètres["nom"])) {
|
|
||||||
Stockage::set_pop($singleton->enfant($paramètres["nom"]), "peut_se_connecter", $paramètres["peut_se_connecter"]);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (is_set($paramètres["vue"])) {
|
|
||||||
self::vue($chemin, $paramètres["vue"]);
|
|
||||||
} else {
|
} else {
|
||||||
self::vue($chemin);
|
if (is_set($paramètres["nouveau_nom"]) && ($action == "nouvelle_page")) {
|
||||||
|
// TODO : SECURITE : Si la page existe déjà, laisser tomber !
|
||||||
|
Stockage::nouvelle_page($singleton, $paramètres["nouveau_nom"]);
|
||||||
|
$paramètres["nom"] = $paramètres["nouveau_nom"];
|
||||||
|
// TODO : message de confirmation quelque part ?
|
||||||
|
}
|
||||||
|
|
||||||
|
if (is_set($paramètres["nouveau_nom"]) && is_set($paramètres["nom"])) {
|
||||||
|
// renomer la page $paramètres["nom"]
|
||||||
|
$paramètres["nom"] = $paramètres["nouveau_nom"];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (is_set($paramètres["mot_de_passe"]) && is_set($paramètres["nom"])) {
|
||||||
|
Stockage::set_pop($singleton->enfant($paramètres["nom"]), "mot_de_passe", $paramètres["mot_de_passe"]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (is_set($paramètres["peut_se_connecter"]) && is_set($paramètres["nom"])) {
|
||||||
|
Stockage::set_pop($singleton->enfant($paramètres["nom"]), "peut_se_connecter", $paramètres["peut_se_connecter"]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (is_set($paramètres["vue"])) {
|
||||||
|
self::vue($chemin, $paramètres["vue"]);
|
||||||
|
} else {
|
||||||
|
self::vue($chemin);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
public function vue($chemin, $vue = "normal") {
|
||||||
function vue($chemin, $vue = "normal") {
|
$singleton = new Chemin("/admin/utilisateurs/");
|
||||||
$singleton = new Chemin("/admin/utilisateurs/");
|
if ($vue == "normal") {
|
||||||
if ($vue == "normal") {
|
$ret = '';
|
||||||
$ret = '';
|
$ret .= "<h1>Utilisateurs</h1>";
|
||||||
$ret .= "<h1>Utilisateurs</h1>";
|
if (vérifier_permission($chemin, "nouvelle_page", get_utilisateur())) {
|
||||||
if (vérifier_permission($chemin, "nouvelle_page", get_utilisateur())) {
|
// afficher le lien "Nouvel utilisateur"
|
||||||
// afficher le lien "Nouvel utilisateur"
|
}
|
||||||
|
$ret .= '<table class="utilisateurs index"><thead><th>Nom</th><th>Prénom</th><th>Groupe</th><th>Mot de passe</th></thead><tbody>';
|
||||||
|
$listegroupes = // Construire la liste des groupes sous forme de menu drop-down.
|
||||||
|
foreach (stockage::liste_enfants($chemin) as $k) { // TODO : trier par ordre alphabétique du nom ?
|
||||||
|
$ret .= '<tr>' . modules::vue($k) . '</tr>'; // ??? TODO
|
||||||
|
// Le champ mot de passe doit être un lien / bouton "nouveau
|
||||||
|
// mot de passe automatique" qui redirige vers
|
||||||
|
// $chemin->enfant("$utilisateur") ?action=gen_mdp .
|
||||||
|
}
|
||||||
|
$ret .= '</tbody></table>';
|
||||||
|
return $ret;
|
||||||
}
|
}
|
||||||
$ret .= '<table class="utilisateurs index"><thead><th>Nom</th><th>Prénom</th><th>Groupe</th><th>Mot de passe</th></thead><tbody>';
|
|
||||||
$listegroupes = // Construire la liste des groupes sous forme de menu drop-down.
|
|
||||||
foreach (stockage::liste_enfants($chemin) as $k) { // TODO : trier par ordre alphabétique du nom ?
|
|
||||||
$ret .= '<tr>' . modules::vue($k) . '</tr>'; // ??? TODO
|
|
||||||
// Le champ mot de passe doit être un lien / bouton "nouveau
|
|
||||||
// mot de passe automatique" qui redirige vers
|
|
||||||
// $chemin->enfant("$utilisateur") ?action=gen_mdp .
|
|
||||||
}
|
|
||||||
$ret .= '</tbody></table>';
|
|
||||||
return $ret;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user