d3583af1fdeda976ff7dd653f8358ff9fe1668ad
[mtweb] / web / app / mods / users / infos.php
1 <?php
2
3   class mw_users_infos extends mw_mod{
4
5     var $users_compte_mod;
6
7     function validate(&$env){
8       if($this->users_compte_mod = $env->get_mod("users/compte")){
9         return $this->users_compte_mod->validate($env);
10       }
11       return "impossible de trouver le module users/compte";
12     }
13
14     function index(&$env){
15       $env->run("users/infos/edit");
16     }
17
18     function edit(&$env){
19       if(isset($this->users_compte_mod->user) && $this->users_compte_mod->user !== false){
20         $user = $this->users_compte_mod->user;
21         if($_POST){
22           $data = $env->data();
23           $VALID = true;
24           if($_POST["email"]) $user["email"] = $_POST["email"];
25           else{
26             $env->message("merci de preciser un email");
27             $VALID = false;
28           }
29           if($VALID && isset($_POST["change_password"]) && $_POST["change_password"]){
30             if($_POST["password"]){
31               if($_POST["password"] == $_POST["password_confirm"]){
32                 $user["password"] = md5($_POST["password"]);
33               }
34               else{
35                 $env->message("la confirmation du mot de passe est incorrecte");
36                 $VALID = false;
37               }
38             }
39             else{
40               $env->message("merci de preciser un mot de passe");
41               $VALID = false;
42             }
43           }
44           if($VALID){
45             if(
46               $data->set_user(
47                 $user["id"],
48                 $user["login"],
49                 $user["password"],
50                 $user["email"],
51                 $user["status"]
52               )
53             )
54             $env->redirect(
55               $env->url("users/infos"),
56               "vos informations ont &eacute;t&eacute; modifi&eacute;es"
57             );
58             else $env->erreur("Impossible de mettre &agrave; jour l'utilisateur");
59           }
60         }
61         $env->set_out("user", $user);
62         $env->set_out("status", $this->users_compte_mod->status);
63       }
64       else $env->erreur("Impossible de lire les informations de l'utilisateur");
65     }
66
67   }
68
69 ?>