public ActionResult Register(RegisterViewModel model) { if (ModelState.IsValid) { USER_Service userService = new USER_Service(); bool userAlreadyExist = userService.FindUserByUserName(model.Username) != null || userService.FindByEmail(model.Email) != null; if (userAlreadyExist) { ModelState.AddModelError("", UiStrings.register_error_user_already_exists); return(View(model)); } model.Password = EncryptionUtil.Encrypt(model.Password); var user = new USER().CreateFromModel(model); bool isRegistered = new USER_Service().AddOrUpdateUser(user); if (isRegistered) { SetCurrentUser(user.USERNAME, user.PK_ID_USER); return(RedirectToAction("Index", "Home")); } } // Si nous sommes arrivés là, un échec s’est produit. Réafficher le formulaire return(View(model)); }
public ActionResult Edit() { int UserID = int.Parse(Request.Cookies["UserID"].Value); var model = new USER_Service().GetEditUserViewModelByID(UserID); return(View(model)); }
public ActionResult LoginOrRegisterExternal(LoginExternalViewModel model) { if (ModelState.IsValid) { USER_Service userService = new USER_Service(); USER user = userService.FindByEmail(model.Email); if (user == null) { user = new USER().CreateFromExternalLoginModel(model); //Génération du username var generatedUsername = user.FIRSTNAME.ToLower() + user.LASTNAME.ToLower(); var usernameAlreadyExistsWithSameBaseCount = userService.FindAllByUsernameStartWith(generatedUsername).Count(); if (usernameAlreadyExistsWithSameBaseCount > 0) { generatedUsername += usernameAlreadyExistsWithSameBaseCount; } user.USERNAME = generatedUsername; //Ajout en BDD bool isRegistered = userService.AddOrUpdateUser(user); if (isRegistered) { SetCurrentUser(user.USERNAME, user.PK_ID_USER); return(RedirectToAction("Index", "Home")); } } else { switch (model.ProviderType) { case LoginExternalViewModel.Provider.Google: user.GOOGLEID = model.ProviderUserId; break; case LoginExternalViewModel.Provider.Facebook: user.FACEBOOKID = model.ProviderUserId; break; } userService.AddOrUpdateUser(user); SetCurrentUser(user.USERNAME, user.PK_ID_USER); return(RedirectToAction("Index", "Home")); } } ModelState.AddModelError("", UiStrings.login_error_auth); return(View("Login", new LoginViewModel())); }
public ActionResult LoginAuto(ShortEditUserViewModel model) { model.Password = string.IsNullOrWhiteSpace(model.Password) ? "" : EncryptionUtil.Encrypt(model.Password); var user = new USER_Service().LoginUser(model.Username, model.Password); if (user != null) { SetCurrentUser(user.USERNAME, user.PK_ID_USER); return(RedirectToAction("Index", "Home")); } else { return(View(model)); } }
public ActionResult Login(LoginViewModel model) { if (!ModelState.IsValid) { return(View(model)); } model.Password = string.IsNullOrWhiteSpace(model.Password) ? "" : EncryptionUtil.Encrypt(model.Password); var user = new USER_Service().LoginUser(model.Username, model.Password); if (user != null) { SetCurrentUser(user.USERNAME, user.PK_ID_USER); FlashMessage.Confirmation(UiStrings.login_message_disconnected); return(RedirectToAction("Index", "Home")); } else { ModelState.AddModelError("", UiStrings.login_error_invalid_connexion); return(View(model)); } }
public ActionResult Edit(EditUserViewModel model) { if (ModelState.IsValid) { int UserID = int.Parse(Request.Cookies["UserID"].Value); var user = new USER_Service().FindUserByID(UserID); user.EditFromModel(model); //user.PK_ID_USER = UserID; bool isEdited = new USER_Service().AddOrUpdateUser(user); if (isEdited) { FlashMessage.Confirmation("Votre profil a été modifié."); return(RedirectToAction("Edit")); } } FlashMessage.Danger("Une erreur est survenue lors de la modification de votre profil."); return(RedirectToAction("Edit")); }
public static MailMessage GenerateMailMessage(string typeDemande, TASK task = null, PanierViewModel panier = null) { var message = new MailMessage(); var user = new USER(); if (task != null) { message = new MailMessage("*****@*****.**", task.USER.EMAIL); } else { user = new USER_Service().FindUserByID(panier.UserId); message = new MailMessage("*****@*****.**", user.EMAIL); } message.IsBodyHtml = true; message.BodyEncoding = Encoding.UTF8; switch (typeDemande) { case Enums.StringManager.CONVERSION_TERMINEE: { message.Subject = "Votre conversion n°" + task.PK_ID_TASK; message.Body = "Bonjour " + task.USER.FIRSTNAME + " " + task.USER.LASTNAME + ", <br/> <br/>"; message.Body += "Votre conversion n° " + task.PK_ID_TASK + " a été effectuée. <br/>"; message.Body += "Vous pouvez télécharger votre média en vous rendant sur Transcoder dans la section 'Mes Conversions'<br/>"; message.Body += "Nous vous souhaitons une agréable journée. <br/>"; message.Body += "Cordialement, <br/>"; message.Body += "<p> L'équipe TRANSCODER France </p> <br/>"; break; } case Enums.StringManager.PAIEMENT_ACCEPTE: { message.Subject = "Votre commande n° " + panier.TransactionId; message.Body = "<style>table tr td { border: solid 1px gray;} thead tr { background: #CCC; }</style>"; message.Body = "<p>Bonjour " + user.FIRSTNAME + " " + user.LASTNAME + ",</p> <br/>"; message.Body += "Votre paiement pour la commande n° " + panier.TransactionId + " a été accepté et est en cours de traitement par nos services. <br/><br/>"; message.Body += "Vous recevrez un mail lorsque votre commande sera terminée et prête a être téléchargée. <br/><br/>"; message.Body += "<h3> Récapitulatif de votre commande </h3><hr/>"; message.Body += "<table>"; message.Body += "<thead>"; message.Body += "<tr><td><strong>Nom du fichier</strong></td><td><strong>Format de base</strong></td><td><strong>Format de conversion</strong></td><td><strong>Statut</strong></td><td><strong>Prix</strong></td><tr></thead>"; foreach (var item in panier.ListOfConversions) { message.Body += "<tr>"; message.Body += "<td>" + item.FILE_URL_ACCESS + "</td>"; message.Body += "<td>" + item.FORMAT_BASE + "</td>"; message.Body += "<td>" + item.FORMAT_CONVERT + "</td>"; message.Body += "<td>" + item.STATUS + "</td>"; message.Body += "<td>" + item.PRICE + "</td>"; message.Body += "</tr>"; } message.Body += "</table><hr/><h3 style='color: green'>Montant total de votre commande :<span style='float:right;' >" + panier.GlobalPrice + "€</span></h3>"; message.Body += "Nous vous souhaitons une agréable journée. <br/>"; message.Body += "Cordialement, <br/>"; message.Body += "<p> L'équipe TRANSCODER France </p> <br/>"; break; } default: { break; } } return(message); }