public ActionResult DeleteConfirmed(Guid id) { RequestForDemo requestForDemo = db.RequestForDemo.Find(id); db.RequestForDemo.Remove(requestForDemo); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "RequestID,OrganizationFullName,OrganizationShortName,AdministratorEmail,AdministratorFirstName,AdministratorLastName,AdministratorPhoneNumber,DateCreated")] RequestForDemo requestForDemo) { if (ModelState.IsValid) { db.Entry(requestForDemo).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(requestForDemo)); }
public void TestGetAllRequestsForDemo() { RequestForDemo requestForDemo = new RequestForDemo { }; var testRequestForDemo = new HomeController(); var result = (JsonResult)testRequestForDemo.Index(); Console.WriteLine(result.Data); Assert.IsTrue((result.Data + "").Contains("Ok")); }
public async Task SendMailToUser(RequestForDemo requestForDemo) { var RecipientEmail = requestForDemo.AdministratorEmail; string Subject = "Techspecialist - ProcureEase App"; string Body = new EmailTemplateHelper().GetTemplateContent("RequestForDemoTemplate_User"); string newTemplateContent = string.Format(Body, requestForDemo.AdministratorFirstName); //newTemplateContent = newTemplateContent.Replace("[RecipientEmail]", RecipientEmail.Trim()); Message message = new Message(RecipientEmail, Subject, newTemplateContent); EmailHelper emailHelper = new EmailHelper(); await emailHelper.AddEmailToQueue(message); }
public async Task SendMailToTechspecialist(RequestForDemo requestForDemo) { var RecipientEmail = GetConfiguration("TechspecialistAdminEmail"); string Subject = "Request For Demo"; string Body = new EmailTemplateHelper().GetTemplateContent("RequestForDemoTemplate_Techspecialist"); string newTemplateContent = string.Format(Body, requestForDemo.AdministratorEmail); //newTemplateContent = newTemplateContent.Replace("[RecipientEmail]", RecipientEmail.Trim()); Message message = new Message(RecipientEmail, Subject, newTemplateContent); EmailHelper emailHelper = new EmailHelper(); await emailHelper.AddEmailToQueue(message); }
public ActionResult Create([Bind(Include = "RequestID,OrganizationFullName,OrganizationShortName,AdministratorEmail,AdministratorFirstName,AdministratorLastName,AdministratorPhoneNumber,DateCreated")] RequestForDemo requestForDemo) { if (ModelState.IsValid) { requestForDemo.RequestID = Guid.NewGuid(); db.RequestForDemo.Add(requestForDemo); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(requestForDemo)); }
// GET: RequestForDemoes/Edit/5 public ActionResult Edit(Guid?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } RequestForDemo requestForDemo = db.RequestForDemo.Find(id); if (requestForDemo == null) { return(HttpNotFound()); } return(View(requestForDemo)); }
public async Task TestPostRequestForDemo_Successful() { RequestForDemo requestForDemo = new RequestForDemo { OrganizationFullName = "The Organization", OrganizationShortName = "TO", AdministratorEmail = "*****@*****.**", AdministratorFirstName = "Muyiwer", AdministratorLastName = "Aro", AdministratorPhoneNumber = "+2348165389524", }; var testRequestForDemo = new HomeController(); JsonResult result = (JsonResult)await testRequestForDemo.RequestForDemo(requestForDemo); Console.WriteLine(result.Data); Assert.IsTrue((result.Data + "").Contains("Request Sent Successfully")); }
public async Task TestPostRequestForDemo_UnSuccessful() { RequestForDemo requestForDemo = new RequestForDemo { OrganizationFullName = "My Organization", OrganizationShortName = "MO", AdministratorEmail = "*****@*****.**", AdministratorFirstName = "Anita", AdministratorLastName = "Ajekuko", AdministratorPhoneNumber = "+2348100009525", }; var testRequestForDemo = new HomeController(); JsonResult result = (JsonResult)await testRequestForDemo.RequestForDemo(requestForDemo); result = (JsonResult)await testRequestForDemo.RequestForDemo(requestForDemo);//Duplicate insertion attempt Console.WriteLine(result.Data); Assert.IsTrue((result.Data + "").Contains("Request Sent Successfully")); }
public async Task <ActionResult> RequestForDemo(RequestForDemo requestForDemo) { try { var OrganizationFullName = db.RequestForDemo.Where(x => x.OrganizationFullName == requestForDemo.OrganizationFullName).Select(x => x.OrganizationFullName).FirstOrDefault(); if (OrganizationFullName != null) { LogHelper.Log(Log.Event.REQUESTFORDEMO, "Duplicate insertion attempt, OrganizationFullName already exist"); Response.StatusCode = (int)HttpStatusCode.BadRequest; return(Error("Duplicate insertion attempt, Organization Full Name already exist")); } var OrganizationShortName = db.RequestForDemo.Where(x => x.OrganizationShortName == requestForDemo.OrganizationShortName).Select(x => x.OrganizationShortName).FirstOrDefault(); if (OrganizationShortName != null) { LogHelper.Log(Log.Event.REQUESTFORDEMO, "Duplicate insertion attempted, OrganizationShortName already exist"); Response.StatusCode = (int)HttpStatusCode.BadRequest; return(Error("Duplicate insertion attempt, Organization Short Name already exist")); } var AdministratorEmail = db.RequestForDemo.Where(x => x.AdministratorEmail == requestForDemo.AdministratorEmail).Select(x => x.AdministratorEmail).FirstOrDefault(); if (AdministratorEmail != null) { LogHelper.Log(Log.Event.REQUESTFORDEMO, "Duplicate insertion attempted, AdministratorEmail already exist"); Response.StatusCode = (int)HttpStatusCode.BadRequest; return(Error("Duplicate insertion attempt, Administrator Email already exist")); } var AdministratorPhoneNumber = db.RequestForDemo.Where(x => x.AdministratorPhoneNumber == requestForDemo.AdministratorPhoneNumber).Select(x => x.AdministratorPhoneNumber).FirstOrDefault(); if (AdministratorPhoneNumber != null) { LogHelper.Log(Log.Event.REQUESTFORDEMO, "Duplicate insertion attempted, AdministratorPhoneNumber already exist"); Response.StatusCode = (int)HttpStatusCode.BadRequest; return(Error("Duplicate insertion attempt, Administrator PhoneNumber already exist")); } DateTime dt = DateTime.Now; requestForDemo.RequestID = Guid.NewGuid(); requestForDemo.IsOnboarded = false; requestForDemo.DateCreated = dt; db.RequestForDemo.Add(requestForDemo); db.SaveChanges(); await SendMailToTechspecialist(requestForDemo); await SendMailToUser(requestForDemo); } catch (Exception ex) { LogHelper.Log(Log.Event.REQUESTFORDEMO, ex.Message); Response.StatusCode = (int)HttpStatusCode.InternalServerError; ExceptionError(ex.Message, ex.StackTrace); } return(Json(new { success = true, message = "Request Sent Successfully", data = db.RequestForDemo.Where(x => x.RequestID == requestForDemo.RequestID).Select(x => new { x.RequestID, x.OrganizationFullName, x.OrganizationShortName, x.AdministratorEmail, x.AdministratorFirstName, x.AdministratorLastName, x.AdministratorPhoneNumber, x.IsOnboarded, x.DemoEndDate, x.DemoStartDate, DateCreated = x.DateCreated.Value.ToString() }) })); }