data(); if(($this->status = $data->status()) === false) return "impossible de lire la liste des statuts"; return true; } function index(&$env) { $data = $env->data(); if ( $env->set_out ( "users", $data->users ( $_GET[$env->param("start")] ? $_GET[$env->param("start")] : 0, $_GET[$env->param("alpha")], $_GET[$env->param("status")] ) ) !== false ) { if($this->status) { $env->set_out("status", $this->status); } else $env->erreur("impossible de lire la liste des status"); } else $env->erreur("impossible de lire la liste des utilisateurs"); } function add(&$env) { $data = $env->data(); if($this->status) { $env->set_out("status", $this->status); $env->set_out("user", array("status" => $data->creation_default_status())); if($_POST) { $env->set_out("user", $_POST); if($_POST["login"]) { if(($exists = $data->user($_POST["login"])) !== false) { if(!$exists) { $VALID = true; if(!$_POST["email"]) { $env->message("merci de preciser un email"); $VALID = false; } if(!$_POST["password"]) { $env->message("merci de preciser un mot de passe"); $VALID = false; } if($_POST["password"] != $_POST["password_confirm"]) { $env->message("la confirmation du mot de passe est incorrecte"); $VALID = false; } if($VALID) { if ( $data->add_user ( $_POST["login"], md5($_POST["password"]), $_POST["email"], $_POST["status"] ) ) $env->redirect ( $env->url("admin/users"), "l'utilisateur ".$_POST["login"]." a été ajouté" ); else $env->erreur("Impossible d'ajouter l'utilisateur"); } } else $env->message("ce login existe déjà"); } else $env->erreur("impossible de savoir si cet login existe déjà"); } else $env->message("merci de préciser un login"); } } else $env->erreur("impossible de lire la liste des status"); } function edit(&$env) { $data = $env->data(); if($this->status) { $env->set_out("status", $this->status); if($env->set_out("user", $data->user($_GET[$env->param("id")]))) { if($_POST) { $user = $env->out("user"); $id = $user["id"]; $login = $user["login"]; $password = $user["password"]; $_POST["login"] = $login; $env->set_out("user", $_POST); $VALID = true; if(!$_POST["email"]) { $env->message("merci de preciser un email"); $VALID = false; } if(isset($_POST["change_password"]) && $_POST["change_password"]) { if(!$_POST["password"]) { $env->message("merci de preciser un mot de passe"); $VALID = false; } if($_POST["password"] != $_POST["password_confirm"]) { $env->message("la confirmation du mot de passe est incorrecte"); $VALID = false; } } if($VALID) { if ( $data->set_user ( $id, $login, isset($_POST["change_password"]) && $_POST["change_password"] ? md5($_POST["password"]) : $password, $_POST["email"], $_POST["status"] ) ) $env->redirect ( $env->url("admin/users"), "l'utilisateur ".$login." a été modifié" ); else $env->erreur("Impossible de mettre à jour l'utilisateur"); } } } else $env->erreur("Impossible de lire les informations de cet utilisateur"); } else $env->erreur("impossible de lire la liste des status"); } function del(&$env) { $data = $env->data(); if($env->set_out("user", $data->user($_GET[$env->param("id")]))) { $user = $env->out("user"); if($data->del_user($_GET[$env->param("id")])) $env->redirect ( $env->url("admin/users"), "l'utilisateur ".$user["login"]." a été supprimé" ); else $env->erreur("Impossible de supprimer l'utilisateur"); } else $env->erreur("Impossible de lire les informations de cet utilisateur"); } } ?>