Bug : vérifier_permission() => Permissions::vérifier_permission().

This commit is contained in:
Georges Dupéron 2010-08-02 08:23:33 +02:00
parent aada4c8f39
commit a7ae5b7fa7
11 changed files with 27 additions and 27 deletions

View File

@ -24,7 +24,7 @@ class AdminPermissions {
$ret = "";
$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>";
if (vérifier_permission($singleton, "set_prop", get_utilisateur())) {
if (Permissions::vérifier_permission($singleton, "set_prop", get_utilisateur())) {
$ret .= "<textarea ...>" . Stockage::get_prop($singleton, "regles") . "</textarea>"; // TODO : html escape chars etc.
} else {
$ret .= "<pre><code>" . Stockage::get_prop($singleton, "regles") . "</code></pre>"; // TODO : html escape chars etc.

View File

@ -60,7 +60,7 @@ class AdminUtilisateurs {
if ($vue == "normal") {
$ret = '';
$ret .= "<h1>Utilisateurs</h1>";
if (vérifier_permission($chemin, "nouvelle_page", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "nouvelle_page", get_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><th>Peut se connecter</th><th colspan="2"></th></thead><tbody>';

View File

@ -23,7 +23,7 @@ class ForumIndex {
if ($vue == "normal") {
$ret = '';
$ret .= "<h1>Forum</h1>";
if (vérifier_permission($chemin, "nouvelle_page", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "nouvelle_page", get_utilisateur())) {
// afficher le lien "Nouveau sujet"
}
$ret .= '<ul class="forum index">';

View File

@ -23,12 +23,12 @@ function action($chemin, $action, $paramètres) {
function vue($chemin, $vue = "normal") {
if ($vue == "normal") {
$ret = '';
if (vérifier_permission($chemin, "set_prop", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "set_prop", get_utilisateur())) {
$ret .= formulaire_édition_texte_enrichi(get_prop($chemin, "message"), "message");
} else {
$ret .= affichage_texte_enrichi(get_prop($chemin, "message"));
}
if (vérifier_permission($chemin, "supprimer", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "supprimer", get_utilisateur())) {
// peut-être afficher le bouton "Supprimer" ??? ou est-ce trop d'options ?
}
// Peut-être afficher le bouton "citer" ? ou est-ce trop d'options ?

View File

@ -33,7 +33,7 @@ class ForumSujet {
public function vue($chemin, $vue = "normal") {
if ($vue == "normal") {
$ret = '';
if (vérifier_permission($chemin, "set_prop", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "set_prop", get_utilisateur())) {
$ret .= '<form action="' . $chemin->get_url() . '">';
$ret .= '<input type="text" name="titre" class="forum sujet titre edition" value="' . Stockage::get_prop($chemin, "titre") . '"/>';
$ret .= '<input type="submit" value="renomer" />';
@ -41,7 +41,7 @@ class ForumSujet {
} else {
$ret .= '<h1 class="forum sujet titre affichage">' . get_prop($chemin, "titre") . '</h1>';
}
if (vérifier_permission($chemin, "supprimer", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "supprimer", get_utilisateur())) {
$ret .= '<form action="' . $chemin->get_url() . '">';
$ret .= '<input type="hidden" name="action" value="supprimer"/>';
$ret .= '<input type="submit" value="Supprimer"/>';
@ -52,7 +52,7 @@ class ForumSujet {
$ret .= '<li>' . Modules::vue($k) . '</li>';
}
$ret .= '</ul>';
if (vérifier_permission($chemin, "nouvelle_page", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "nouvelle_page", get_utilisateur())) {
$ret .= '<form action="' . $chemin->get_url() . '">';
$ret .= '<input type="hidden" name="action" value="nouvelle_page"/>';
$ret .= '<input type="submit" value="Nouvelle page"/>';

View File

@ -32,20 +32,20 @@ class GalerieÉvènement {
public function vue($chemin, $vue = "normal") {
if ($vue == "normal") {
$ret = '';
if (vérifier_permission($chemin, "set_prop", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "set_prop", get_utilisateur())) {
$ret .= '<input type="text" name="titre" value="' . Stockage::get_prop($chemin, "titre") . '" />';
$ret .= formulaire_édition_texte_enrichi(get_prop($chemin, "description"), "message");
} else {
$ret .= '<h1>' . get_prop($chemin, "titre") . '</h1>';
$ret .= '<p class="galerie evenement description affichage">' . get_prop($chemin, "description") . '</p>';
}
if (vérifier_permission($chemin, "nouvelle_page", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "nouvelle_page", get_utilisateur())) {
$ret .= '<form action="' . $chemin->get_url() . '">';
$ret .= '<input type="hidden" name="action" value="nouvelle_page"/>';
$ret .= '<input type="submit" value="Nouvelle page"/>';
$ret .= '</form>';
}
if (vérifier_permission($chemin, "supprimer", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "supprimer", get_utilisateur())) {
$ret .= '<form action="' . $chemin->get_url() . '">';
$ret .= '<input type="hidden" name="action" value="supprimer"/>';
$ret .= '<input type="submit" value="Supprimer"/>';

View File

@ -39,13 +39,13 @@ class GalerieIndex {
$ret .= '<h1>' . get_prop($chemin, "titre") . '</h1>';
$ret .= '<p class="galerie index description affichage">' . get_prop($chemin, "description") . '</p>';
}
if (vérifier_permission($chemin, "nouvelle_page", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "nouvelle_page", get_utilisateur())) {
$ret .= '<form action="' . $chemin->get_url() . '">';
$ret .= '<input type="hidden" name="action" value="nouvelle_page"/>';
$ret .= '<input type="submit" value="Nouvelle page"/>';
$ret .= '</form>';
}
if (vérifier_permission($chemin, "supprimer", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "supprimer", get_utilisateur())) {
$ret .= '<form action="' . $chemin->get_url() . '">';
$ret .= '<input type="hidden" name="action" value="supprimer"/>';
$ret .= '<input type="submit" value="Supprimer"/>';

View File

@ -32,20 +32,20 @@ class GaleriePériode {
public function vue($chemin, $vue = "normal") {
if ($vue == "normal") {
$ret = '';
if (vérifier_permission($chemin, "set_prop", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "set_prop", get_utilisateur())) {
$ret .= '<input type="text" name="titre" value="' . Stockage::get_prop($chemin, "titre") . '" />';
$ret .= formulaire_édition_texte_enrichi(get_prop($chemin, "description"), "message");
} else {
$ret .= '<h1>' . get_prop($chemin, "titre") . '</h1>';
$ret .= '<p class="galerie periode description affichage">' . get_prop($chemin, "description") . '</p>';
}
if (vérifier_permission($chemin, "nouvelle_page", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "nouvelle_page", get_utilisateur())) {
$ret .= '<form action="' . $chemin->get_url() . '">';
$ret .= '<input type="hidden" name="action" value="nouvelle_page"/>';
$ret .= '<input type="submit" value="Nouvelle page"/>';
$ret .= '</form>';
}
if (vérifier_permission($chemin, "supprimer", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "supprimer", get_utilisateur())) {
$ret .= '<form action="' . $chemin->get_url() . '">';
$ret .= '<input type="hidden" name="action" value="supprimer"/>';
$ret .= '<input type="submit" value="Supprimer"/>';

View File

@ -35,7 +35,7 @@ class GaleriePhoto {
public function vue($chemin, $vue = "normal") {
if ($vue == "normal") {
$ret = '';
if (vérifier_permission($chemin, "set_prop", get_utilisateur())) {
if (Permissions::vérifier_permission($chemin, "set_prop", get_utilisateur())) {
$ret .= '<input type="text" name="titre" value="' . Stockage::get_prop($chemin, "titre") . '" />';
$ret .= '<img src="' . $chemin->get_url("?vue=image") . '"></img>';
$ret .= '<input type="filename" .../>';

View File

@ -12,7 +12,7 @@ class Permissions {
}
// Vérifie si $utilisateur a la permission d'effectuer $action sur $chemin.
public function vérifier_permission($chemin, $action, $utilisateur = null) {
public function Permissions::vérifier_permission($chemin, $action, $utilisateur = null) {
if ($utilisateur === null) {
$utilisateur = Authentification::get_utilisateur();
}

View File

@ -1,13 +1,13 @@
<?php
// Chaque fonction appelle vérifier_permission($chemin, $action, $utilisateur).
// Chaque fonction appelle Permissions::vérifier_permission($chemin, $action, $utilisateur).
// Chaque fonction ajoute un chemin de base (pour le stockage) avant
// $chemin, puis appelle une fonction de systeme-fichiers.php
class Stockage {
public function nouvelle_page($chemin, $nom, $type) {
if (vérifier_permission($chemin, "nouvelle_page")) {
if (Permissions::vérifier_permission($chemin, "nouvelle_page")) {
$enfant = $chemin->enfant($nom);
SystemeFichiers::créer_dossier($enfant->get_fs_stockage());
self::set_prop($enfant, "type", $type);
@ -38,7 +38,7 @@ class Stockage {
}
public function set_prop($chemin, $prop, $valeur) {
if (vérifier_permission($chemin, "set_prop")) {
if (Permissions::vérifier_permission($chemin, "set_prop")) {
return SystemeFichiers::écrire(self::fichier_prop($chemin, $prop), $valeur);
} else {
return false;
@ -47,7 +47,7 @@ class Stockage {
// Stocke le contenu de $fichier dans $prop, et supprime $fichier.
public function set_prop_fichier($chemin, $prop, $fichier) {
if (vérifier_permission($chemin, "set_prop")) {
if (Permissions::vérifier_permission($chemin, "set_prop")) {
return SystemeFichiers::déplacer($fichier, self::fichier_prop($chemin, $prop));
} else {
return false;
@ -56,7 +56,7 @@ class Stockage {
// Comme pour set_prop_fichier, mais pour un fichier reçu (uploadé).
public function set_prop_fichier_reçu($chemin, $prop, $fichier) {
if (vérifier_permission($chemin, "set_prop")) {
if (Permissions::vérifier_permission($chemin, "set_prop")) {
return SystemeFichiers::déplacer_fichier_téléchargé($fichier, self::fichier_prop($chemin, $prop));
} else {
return false;
@ -64,7 +64,7 @@ class Stockage {
}
public function get_prop($chemin, $prop, $forcer_permissions = false) {
// $forcer_permissions permet à vérifier_permission() et ses
// $forcer_permissions permet à Permissions::vérifier_permission() et ses
// dépendances get_regles() et get_groupe() de faire des get_prop
// même si l'utilisateur courant n'en a pas le droit.
if ($forcer_permissions || Permissions::vérifier_permission($chemin, "get_prop")) {
@ -77,7 +77,7 @@ class Stockage {
public function get_prop_sendfile($chemin, $prop) {
// Envoie tout le conctenu de $prop sur le réseau.
// Équivalent à appeller sendfile sur le fichier qui contient $prop.
if (vérifier_permission($chemin, "get_prop")) {
if (Permissions::vérifier_permission($chemin, "get_prop")) {
return SystemeFichiers::envoyer_fichier_directement(self::fichier_prop($chemin, $prop));
} else {
return false;
@ -89,7 +89,7 @@ class Stockage {
// récursive sur un niveau seulement, ce qui n'est pas possible avec ce
// code.
public function supprimer($chemin, $récursif) {
if (vérifier_permission($chemin, "supprimer")) {
if (Permissions::vérifier_permission($chemin, "supprimer")) {
// TODO : désactiver_réécriture($chemin) récursivement
return SystèmeFichier::supprimer($chemin->get_fs_stockage(), $récursif);
} else {
@ -114,7 +114,7 @@ class Stockage {
return true;
}
if (vérifier_permission($chemin->parent(), "nouvelle_page") && vérifier_permission($chemin, "supprimer")) {
if (Permissions::vérifier_permission($chemin->parent(), "nouvelle_page") && vérifier_permission($chemin, "supprimer")) {
// TODO : désactiver_réécriture($chemin) récursivement
// TODO : puis activer_réécriture($chemin) récursivement
return SystemeFichiers::déplacer($chemin->get_fs_stockage(), $chemin->renomer($nouveau_nom)->get_fs_stockage());