1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- <?php require_once __DIR__.DIRECTORY_SEPARATOR.'header.php';
- $accountMenu = array();
- $_['section'] = !isset($_['section']) ? 'global': $_['section'];
- $page = basename($_SERVER['PHP_SELF']);
- ?>
- <div class="row justify-content-md-center">
- <div class="col-md-9 text-center">
- <h5><i class="fas fa-unlock"></i> Mot de passe oublié</h5>
- <?php if(isset($_['token'])):
- $tokenInfos = explode('::',base64_decode($_['token']));
- if(count($tokenInfos)<2) throw new Exception("Token incorrect");
- list($login,$token) = $tokenInfos;
- global $conf;
-
- $baseToken = UserPreference::load(array('user'=>$login,'key'=>'lost_password'));
- if (!$baseToken) throw new Exception("Token incorrect ou inexistant");
- if ($baseToken->value!=$token) throw new Exception("Token incorrect ou inexistant");
- UserPreference::deleteById($baseToken->id);
- unset($_SESSION['users']);
- $users = User::getAll(true);
- foreach($users as $user){
- if($user->login==$login){
- global $myUser,$myFirm,$_;
-
- $user->loadPreferences();
- $user->loadRanks();
- $defaultFirm = !empty($user->preference('default_firm')) ? $user->preferences['default_firm'] : key($user->firms);
- $_SESSION['firm'] = serialize(Firm::getById($defaultFirm));
- $myFirm = isset($_SESSION['firm']) ? unserialize($_SESSION['firm']) : new Firm();
-
- $user->loadRights();
-
- Plugin::callHook("user_login", array(&$user, $user->login,null,true,true,true));
-
- if($user == false || empty($user->login)) throw new Exception("Utilisateur inexistant");
- $myUser = $user;
- $_SESSION['currentUser'] = serialize($myUser);
- break;
- }
- }
- if(!$myUser->connected()) throw new Exception("Erreur lors de la récuperation du compte, veuillez contacter un administrateur");
-
- ?>
- <h6>Bienvenue <?php echo $myUser->fullName(); ?>!</h6>
- <p>Veuillez changer votre mot de passe dans la rubrique <a href="account.php?section=global">"Mon compte"</a></p>
-
- <?php else:
- if($myUser->connected()) throw new Exception("Vous devez être déconnecté pour accéder à cette fonctionnalité",401);
- ?>
- <p>Veuillez remplir le formulaire ci dessous pour procéder au changement de mot de passe</p>
- <p>Un e-mail sera envoyé à la boite spécifiée si celle ci est liée à un compte.</p>
- <label>Adresse e-mail du compte</label>
- <input class="form-control col-sm-3 m-auto text-center" placeholder="email@email.com" type="text" id="mail">
- <div class="btn btn-info col-sm-3 mt-2" onclick="account_lost_password()"><i class="far fa-envelope-open"></i> Envoyer</div>
- <?php endif; ?>
- </div>
- </div>
- <?php require_once __ROOT__.'footer.php' ?>
|