Corrections dans admin-utilisateurs.
This commit is contained in:
parent
345a4be1ce
commit
777195e69b
|
@ -10,17 +10,26 @@ class Debug {
|
|||
}
|
||||
public static function error($msg) {
|
||||
array_push(self::$errors, "Error : $msg");
|
||||
self::afficher();
|
||||
self::afficher(true, true, false);
|
||||
echo "\n";
|
||||
debug_print_backtrace();
|
||||
self::afficher(false, false, true);
|
||||
die();
|
||||
}
|
||||
public static function afficher() {
|
||||
echo "<pre>";
|
||||
echo '<span style="color:red">Erreurs:</span>' . "\n";
|
||||
foreach (self::$errors as $e) {
|
||||
echo $e . "\n";
|
||||
public static function afficher($start = true, $print = true, $end = true) {
|
||||
if ($start) {
|
||||
echo "<pre>";
|
||||
echo '<span style="color:red">Erreurs:</span>' . "\n";
|
||||
}
|
||||
if ($print) {
|
||||
foreach (self::$errors as $e) {
|
||||
echo $e . "\n";
|
||||
}
|
||||
}
|
||||
if ($end) {
|
||||
echo '<span style="color:red">Fin erreurs.</span>' . "\n";
|
||||
echo "</pre>";
|
||||
}
|
||||
echo '<span style="color:red">Fin erreurs.</span>' . "\n";
|
||||
echo "</pre>";
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -74,6 +74,9 @@ class ElementDocument {
|
|||
$elem = new self($fn);
|
||||
|
||||
foreach (self::$attributsÉléments[$fn] as $i => $nom) {
|
||||
if (!isset($args[$i])) {
|
||||
Debug::error("Argument manquant : $nom pour " . $elem->type);
|
||||
}
|
||||
$elem->attr($nom, $args[$i]);
|
||||
}
|
||||
|
||||
|
@ -85,7 +88,7 @@ class ElementDocument {
|
|||
array_unshift($a, $this);
|
||||
return call_user_func_array($f, $a);
|
||||
} else {
|
||||
Debug::error("Impossible d'ajouter un élément $fn");
|
||||
Debug::error("Impossible d'ajouter un élément $fn à " . $this->type);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
@ -104,7 +107,7 @@ ElementDocument::ajouter_type_élément("header", "title");
|
|||
ElementDocument::ajouter_type_élément("title", "text");
|
||||
ElementDocument::ajouter_type_élément("footer", "");
|
||||
ElementDocument::ajouter_type_élément("nav", "ul");
|
||||
ElementDocument::ajouter_type_élément("article", "ul p form");
|
||||
ElementDocument::ajouter_type_élément("article", "ul p form span"); // span ?
|
||||
ElementDocument::ajouter_type_élément("script", "", "src");
|
||||
ElementDocument::ajouter_type_élément("style", "", "src");
|
||||
ElementDocument::ajouter_type_élément("ul", "li");
|
||||
|
@ -138,7 +141,7 @@ ElementDocument::ajouter_widget("description", function($d, $select){
|
|||
|
||||
|
||||
ElementDocument::ajouter_widget("field", function($d, $select){
|
||||
$f = $d->span();
|
||||
$f = $d->span("field");
|
||||
$f->text("NIY : " . $select);
|
||||
return $f;
|
||||
});
|
||||
|
|
|
@ -39,14 +39,18 @@ class Page {
|
|||
return $this->parent;
|
||||
}
|
||||
|
||||
public function rendu() {
|
||||
public function rendu($res = null, $d = null) {
|
||||
// Renvoie un document (classe ElementDocument).
|
||||
// L'appel à une fonction statique via $this-> n'est pas propre, mais comment appeller la
|
||||
// fonction du sous-type et pas celle de Page sinon ?
|
||||
if (count($this->ressources_dynamiques()) == 0)
|
||||
return new Document();
|
||||
$res = $this->ressources_dynamiques();
|
||||
return call_user_func(array($this, "res_" . $res[0]));
|
||||
if ($res === null) {
|
||||
$ressources = $this->ressources_dynamiques();
|
||||
$res = $ressources[0];
|
||||
}
|
||||
if ($d === null) {
|
||||
$d = new Document();
|
||||
}
|
||||
return call_user_func(array($this, "res_" . $res), $d);
|
||||
}
|
||||
|
||||
public function url($ressource = null) {
|
||||
|
@ -83,6 +87,11 @@ class Page {
|
|||
public function __get($nom) {
|
||||
// s'il y a un getter (trigger), on l'appelle, sinon on appelle get_prop_direct();
|
||||
// le getter fait ce qu'il veut, puis appelle set_prop_direct();
|
||||
// if (is_callable(array($this,"get_".$nom)) {
|
||||
// return call_user_func(array($this,"get_".$nom));
|
||||
// } else {
|
||||
// return $this->get_prop_direct($nom);
|
||||
// }
|
||||
niy("get $nom");
|
||||
}
|
||||
|
||||
|
@ -94,6 +103,11 @@ class Page {
|
|||
public function __set($nom, $val) {
|
||||
// s'il y a un setter (trigger), on l'appelle, sinon on appelle set_prop_direct();
|
||||
// le setter fait ce qu'il veut, puis appelle set_prop_direct();
|
||||
// if (is_callable(array($this,"get_".$nom)) {
|
||||
// return call_user_func(array($this,"get_".$nom), $val);
|
||||
// } else {
|
||||
// return $this->set_prop_direct($nom, $val);
|
||||
// }
|
||||
niy("set $name = $val");
|
||||
}
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ class AdminListeUtilisateurs extends Page {
|
|||
return qw("i_icône_nouvelle_page c_style");
|
||||
}
|
||||
public static function ressources_dynamiques() {
|
||||
return qw("h_page");
|
||||
return qw("h_page h_liste_mots_de_passe");
|
||||
}
|
||||
public static function types_enfants() {
|
||||
return qw("AdminUtilisateur");
|
||||
|
@ -22,19 +22,25 @@ class AdminListeUtilisateurs extends Page {
|
|||
niy("res_c_style");
|
||||
}
|
||||
|
||||
public function res_h_page() {
|
||||
$d = new Document();
|
||||
public function res_h_page($d) {
|
||||
$d->w_titre("Utilisateurs");
|
||||
|
||||
$l = $d->article()->w_liste($this->enfants(true, "nom asc prenom asc"), function($e, $li) {
|
||||
$li->append(
|
||||
$e->rendu("h_admin")
|
||||
);
|
||||
$e->rendu("h_admin", $li);
|
||||
});
|
||||
$nouveau = $l->li();
|
||||
$nouveau->text("Nouvel utilisateur");
|
||||
return $d;
|
||||
}
|
||||
|
||||
public function res_h_liste_mots_de_passe($d) {
|
||||
$d->w_titre("Liste de mots de passe.");
|
||||
|
||||
$l = $d->article()->w_liste($this->enfants("@groupe = utilisateurs", "nom asc prenom asc"), function($e, $li) {
|
||||
$e->rendu("h_admin_mdp", $li);
|
||||
});
|
||||
return $d;
|
||||
}
|
||||
}
|
||||
|
||||
class AdminUtilisateur extends Page {
|
||||
|
@ -49,24 +55,44 @@ class AdminUtilisateur extends Page {
|
|||
return qw("AdminUtilisateur");
|
||||
}
|
||||
public static function attributs() {
|
||||
return qw("nom prenom equipe mot_de_passe");
|
||||
return array(
|
||||
"nom" => "Dupondt",
|
||||
"prenom" => "Jean",
|
||||
"equipe" => null, // TODO
|
||||
"mot_de_passe" => "",
|
||||
"groupe" => "utilisateurs",
|
||||
"peut_se_connecter" => false // TODO : permissions différentes (l'utilisateur ne peut pas modifier ça).
|
||||
);
|
||||
}
|
||||
|
||||
public function res_c_style() {
|
||||
niy("res_c_style");
|
||||
}
|
||||
|
||||
public function res_h_admin() {
|
||||
public function res_h_admin($d) {
|
||||
// Vue de l'utilisateur pour inclusion dans admin/utilisateurs.
|
||||
$d = new Document();
|
||||
$d->w_titre("" . $this->nom . $this->prenom);
|
||||
$a = $d->article();
|
||||
//$d->w_titre("" . $this->nom . $this->prenom);
|
||||
|
||||
$d->w_field($this->nom);
|
||||
$d->w_field($this->prenom);
|
||||
$d->w_field($this->equipe);
|
||||
$d->w_field($this->mot_de_passe);
|
||||
$a->w_field($this->nom);
|
||||
$a->w_field($this->prenom);
|
||||
$a->w_field($this->equipe);
|
||||
$a->w_field($this->mot_de_passe);
|
||||
$a->w_field($this->groupe); // TODO : menu de séléction
|
||||
$a->w_field($this->peut_se_connecter); // TODO : checkbox
|
||||
|
||||
return $d;
|
||||
return $a;
|
||||
}
|
||||
|
||||
public function res_h_admin_mdp($d) {
|
||||
// Vue de l'utilisateur pour inclusion dans admin/utilisateurs/liste des mots de passe.
|
||||
|
||||
$a = $d->article();
|
||||
$a->w_field($this->nom);
|
||||
$a->w_field($this->prenom);
|
||||
$a->w_field($this->mot_de_passe);
|
||||
|
||||
return $a;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -30,13 +30,11 @@ abstract class GalerieBase extends Page {
|
|||
niy("res_c_style");
|
||||
}
|
||||
|
||||
public function res_h_page() {
|
||||
$d = new Document();
|
||||
public function res_h_page($d) {
|
||||
$d->w_en_tete(); // En-tête standard.
|
||||
$l = $d->article()->w_liste($this->enfants(true, "date desc"), function($e, $li) {
|
||||
$li->a($e->uid())->append(
|
||||
$e->rendu("h_miniature")
|
||||
);
|
||||
$a = $li->a($e->uid());
|
||||
$e->rendu("h_miniature", $a);
|
||||
});
|
||||
$nouveau = $l->li();
|
||||
$nouveau->span("miniature")->img("", $this->url("i_icône_nouvelle_page"));
|
||||
|
@ -44,18 +42,17 @@ abstract class GalerieBase extends Page {
|
|||
return $d;
|
||||
}
|
||||
|
||||
public function res_h_miniature() {
|
||||
$e = new ElementDocument();
|
||||
$e->span("miniature")->append($this->res_h_mini_miniature());
|
||||
$e->span("titre")->_field($this->titre);
|
||||
return $e;
|
||||
public function res_h_miniature($d) {
|
||||
$d->span("miniature")->append($this->res_h_mini_miniature());
|
||||
$d->span("titre")->_field($this->titre);
|
||||
return $d;
|
||||
}
|
||||
|
||||
public function res_h_mini_miniature() {
|
||||
public function res_h_mini_miniature($d) {
|
||||
$a = $this->enfants("@apercu = true", "date desc", 1);
|
||||
if ($a->size() != 1)
|
||||
$a = $this->enfants(true, "date desc", 1);
|
||||
return $a->get(0)->rendu("h_mini_miniature");
|
||||
return $a->get(0)->rendu("h_mini_miniature", $d);;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -110,15 +107,13 @@ class GaleriePhoto {
|
|||
niy("GaleriePhoto::res_c_style");
|
||||
}
|
||||
|
||||
public function res_h_page() {
|
||||
$d = new Document();
|
||||
public function res_h_page($d) {
|
||||
$d->w_en_tete($this->titre, "".$this->description); // En-tête standard.
|
||||
$d->w_img($this->description, $this->i_image);
|
||||
return $d;
|
||||
}
|
||||
|
||||
public function res_h_mini_miniature() {
|
||||
$d = new Document();
|
||||
public function res_h_mini_miniature($d) {
|
||||
$d->img($this->description, $this->i_image);
|
||||
return $d;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user