/// <summary> /// Html für EMail Registrierung generieren /// </summary> /// <param name="request">UserInfos</param> /// <returns></returns> public string GetRegistrationEmail(ExEmailRegistration request) { var htmlEMailOrder = ViewRenderer.Render("EMail/EMailRegistration", request); return(htmlEMailOrder); }
public async Task <ExSaveDataResult> RegisterShop(ExShopRegistration exShopRegistration) { using (Db db = new Db()) { var shop = await db.TblStores.FirstOrDefaultAsync(a => a.EMail.ToLower() == exShopRegistration.EMail.ToLower()); if (shop == null) { //NEU ANLEGEN shop = new TableStore(); shop.EMail = exShopRegistration.EMail.ToLower(); shop.CreatedAt = DateTime.UtcNow; shop.CompanyName = ""; db.TblStores.Add(shop); } else if (shop.Activated) { return(new ExSaveDataResult { Result = EnumSaveDataResult.Error }); } string pwd = PasswordHelper.GeneratePassword(6); shop.Password = PasswordHelper.CumputeHash(pwd); shop.ActivationCode = PasswordHelper.GeneratePassword(10); await db.SaveChangesAsync(); BissEMail bm = new BissEMail(WebAppSettings.EmailCredentials); ExEmailRegistration er = new ExEmailRegistration(); er.Message = $"Bitte bestätige den folgenden Link um dein Geschäft freizuschalten. Du kannst dich anschließend mit dem Passwort {pwd} einloggen"; er.ApproveLink = $"{Constants.WebAppBaseUrl}Activate/?guid={shop.ActivationCode}"; List <string> eMails2Inform; if (Constants.CurrentAppSettings.AppConfigurationConstants == 0) //master { eMails2Inform = new List <string> { exShopRegistration.EMail }; //ToDo: Wenn die Settings Tabelle existiert dann über die Settings Tabelle } else { eMails2Inform = new List <string> { "*****@*****.**", exShopRegistration.EMail }; //ToDo: Wenn die Settings Tabelle existiert dann über die Settings Tabelle } string email = _mailgenerator.GetRegistrationEmail(er); var res = await bm.SendHtmlEMail(Constants.SendEMailAs, eMails2Inform, "Danke für die Registrierung", email, Constants.SendEMailAsDisplayName); return(new ExSaveDataResult()); } }