/// <summary> /// Reset della password. Viene inviata una mail all'utente con la nuova password. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void ButtonReset_Click(object sender, EventArgs e) { try { string emailDestinatario = string.Empty; BusinessObjects.ConfigurationSetting objConfigurationSetting = new BusinessObjects.ConfigurationSetting(); string emailMittente = objConfigurationSetting.getValue("EmailNoReply"); string idDestinatario = string.Empty; string Password = objUtilita.GenerateRandomPassword(); Utente objUtente = new Utente(); Clienti objClienti = new Clienti(); objUtente.ReadByUser(InputUser.Text); emailDestinatario = objUtente.Ute_email.ToString(); objClienti.Read(objUtente.Cli_id_cliente, qCultureInfoName); if (objUtente.Ute_id_utente.IsNull) { idDestinatario = ""; } else { idDestinatario = objUtente.Ute_id_utente.ToString(); } MailMessage email = new MailMessage(); MailAddress oFrom = new MailAddress(emailMittente); email.From = oFrom; //Devo prima cancellare i valori precedenti. email.To.Clear(); email.IsBodyHtml = true; email.Priority = MailPriority.Normal; email.Subject = "Invio / Reset password di accesso"; email.Body = FormattaEmail(Password, objClienti.Cli_link_taf.ToString()); if (idDestinatario == "") { divLoginMessage.Visible = true; LabelMessage.InnerText = "Errore durante il reset della password User Id non presente o errato."; LabelMessage.Style.Add("color", "red"); } else { objUtente.Ute_id_utente = Convert.ToInt32(idDestinatario); objUtente.Read(); email.To.Add(emailDestinatario); SendEmail(email); objUtente.Ute_password = EncryptPwd(Password); objUtente.Ute_expiration_date = DateTime.Now.AddDays(-1); objUtente.Update(); divLoginMessage.Visible = true; LabelMessage.InnerText = "Password resettata correttamente, controllare la casella di posta elettronica."; } } catch (Exception ex) { strERRORE = ex.Message; ExceptionPolicy.HandleException(ex, "Propagate Policy"); } }