public async Task <IActionResult> Edit(string userId) { if (userId == null) // vérifie qu un id est bien passé en param { return(NotFound()); } //cherche le user dans la base var utilisateur = await _utilisateurManager.GetUtilisateurByIdAsync(userId); if (utilisateur == null) //si on en trouve pas { return(NotFound()); } ////////////////////////////////////////////////////////////////////////////////////////// // GESTION de la photo ////////////////////////////////////////////////////////////////////////////////////////// if (utilisateur.UrlAvatarImage != null) { string img = utilisateur.UrlAvatarImage.ToString(); ViewBag.ImgPath = img; } else { ViewBag.ImgPath = "/images/userDefault.png"; } /////////////////////////////////////////////////////////////////////// // FIN gestion image /////////////////////////////////////////////////////////////////////// ViewData["ApplicationUserID"] = utilisateur.ApplicationUserID; //pour la drop down list des roles var listeRoles = _context.Roles.ToList(); //trouve l id du role var role = _context.Roles.Where(r => r.Name == utilisateur.Role).FirstOrDefault(); var roleId = role.Id; ViewBag.listeRoles = new SelectList(listeRoles, "Id", "Name", roleId); //pour le DDL des roles return(View(utilisateur)); }
//GET Utilisateur/Inscription/userId public async Task <IActionResult> Inscription(string userId) { //je recupere la vraie identité de l user var ApplicationUser = _userManager.GetUserId(HttpContext.User); if (userId != ApplicationUser) { userId = ApplicationUser; } if (userId == null) { return(NotFound()); } //gestion du fait que l utilisateur peut deja exister => renvoi sur la vue details Utilisateur lutilisateur = await _utilisateurManager.GetUtilisateurByIdAsync(userId); if (lutilisateur != null) { return(RedirectToAction("MonCompte", new RouteValueDictionary(new { controller = "Utilisateur", action = "MonCompte", Id = userId }))); } // SINON //Ajoute un utilisateur "vierge" avec son bon ID de facon certaine var user = await _userManager.FindByIdAsync(userId); //sinon je crée un utilisateur Utilisateur nouvel_utilisateur = new Utilisateur { ApplicationUserID = user.Id, Pseudo = "", DateCreationUtilisateur = DateTime.Now, ProfilUtilisateurComplet = false, ConfirmEmail = user.EmailConfirmed, Email = user.Email, DateDeNaissance = DateTime.Now, Role = "Membre", UrlAvatarImage = "/images/userDefault.png" }; await _utilisateurManager.AddUtilisateur(user, nouvel_utilisateur); //ajoute le nouvel utilisateur // recherche utilisateur avec l'id var utilisateur = await _utilisateurManager.GetUtilisateurByIdAsync(userId); if (utilisateur == null) { return(NotFound()); } return(View(utilisateur)); }