public ActionResult RenderForm_EditPrayer(string nodeId) { try { //Obtain the prayer request as a model and pass to the view. PrayerRequest prayer = new PrayerRequest(Umbraco.TypedContent(nodeId)); //Populate data into modell var prayerRequest = new PrayerRequestModel(); prayerRequest.Prayer = prayer.Prayer; prayerRequest.PrayerTitle = prayer.PrayerTitle; prayerRequest.UserId = prayer.PrayerRequestMember.Id; prayerRequest.Id = Convert.ToInt32(nodeId); prayerRequest.totalPrayersOffered = prayer.TotalPrayersOffered; //Call edit page with model data return(PartialView("~/Views/Partials/PrayerCorner/_editPrayer.cshtml", prayerRequest)); } catch (Exception ex) { StringBuilder sb = new StringBuilder(); sb.AppendLine(@"PrayerController.cs : RenderForm_EditPrayer()"); sb.AppendLine("nodeId:" + nodeId); Common.SaveErrorMessage(ex, sb, typeof(PrayerController)); ModelState.AddModelError("", "*An error occured while creating an edit form with your prayers."); return(PartialView("~/Views/Partials/PrayerCorner/_editPrayer.cshtml")); } }
private async Task NewPrayerRequest() { var prayerRequest = new PrayerRequestModel() { Request = "New Request" }; await ViewModel.InsertPrayerRequest(prayerRequest); //ViewModel.GetPrayerRequests.Execute(null); }
public ActionResult UpdatePrayerRequest(PrayerRequestModel model) { try { if (ModelState.IsValid) { //Instantiate variables IContentService contentService = Services.ContentService; IContent icPrayerRequest = contentService.GetById(model.Id); //Update data icPrayerRequest.SetValue(PrayerRequest.GetModelPropertyType(x => x.PrayerTitle).PropertyTypeAlias, model.PrayerTitle); icPrayerRequest.SetValue(PrayerRequest.GetModelPropertyType(x => x.Prayer).PropertyTypeAlias, model.Prayer); var result = contentService.SaveAndPublishWithStatus(icPrayerRequest); if (result.Success) { //Return to page TempData["PrayerUpdatedSuccessfully"] = true; return(RedirectToUmbracoPage((int)(Models.Common.siteNode.PrayerRequests))); } else { //Save error message to umbraco StringBuilder sb = new StringBuilder(); sb.AppendLine(@"Controllers/PrayerController.cs : UpdatePrayerRequest()"); sb.AppendLine(@"Updating prayer request was not successful."); sb.AppendLine("model:" + Newtonsoft.Json.JsonConvert.SerializeObject(model)); sb.AppendLine("result:" + Newtonsoft.Json.JsonConvert.SerializeObject(result)); Exception ex = new Exception(); Common.SaveErrorMessage(ex, sb, typeof(PrayerController)); //Return with error ModelState.AddModelError(string.Empty, "An error occured while updating your prayer request."); return(CurrentUmbracoPage()); } } else { return(CurrentUmbracoPage()); } } catch (Exception ex) { //Save error message to umbraco StringBuilder sb = new StringBuilder(); sb.AppendLine(@"PrayerController.cs : UpdatePrayerRequest()"); sb.AppendLine("model:" + Newtonsoft.Json.JsonConvert.SerializeObject(model)); Common.SaveErrorMessage(ex, sb, typeof(PrayerController)); ModelState.AddModelError(string.Empty, "An error occured while updating your prayer request."); return(CurrentUmbracoPage()); } }
public ActionResult RenderForm_PrayerPledges(string userName) { //Intsantiate list List <PrayerRequestModel> lstPrayers = new List <PrayerRequestModel>(); try { // IMember member = Services.MemberService.GetByUsername(userName); if (member != null) { //Instantiate list List <_prayerRequest> lstJsonPrayersOffered = new List <_prayerRequest>(); //Populate list with any existing data if (member.HasProperty(Common.NodeProperties.prayersOfferedFor) && member.GetValue(Common.NodeProperties.prayersOfferedFor) != null) { lstJsonPrayersOffered = JsonConvert.DeserializeObject <List <_prayerRequest> >(member.GetValue(Common.NodeProperties.prayersOfferedFor).ToString()); } // foreach (_prayerRequest prayerOffered in lstJsonPrayersOffered) { PrayerRequestModel prayerRequest = new PrayerRequestModel(); IPublishedContent ipPrayer = Umbraco.TypedContent(prayerOffered.prayer); prayerRequest.Id = ipPrayer.Id; prayerRequest.date = Convert.ToDateTime(prayerOffered.date); prayerRequest.PrayerTitle = ipPrayer.GetPropertyValue <String>(PrayerRequest.GetModelPropertyType(x => x.PrayerTitle).PropertyTypeAlias); prayerRequest.Url = ipPrayer.Url; lstPrayers.Add(prayerRequest); } } } catch (Exception ex) { StringBuilder sb = new StringBuilder(); sb.AppendLine(@"PrayerController.cs : RenderForm_PrayerPledges()"); sb.AppendLine("userName:"******"model:" + Newtonsoft.Json.JsonConvert.SerializeObject(lstPrayers)); Common.SaveErrorMessage(ex, sb, typeof(PrayerController)); ModelState.AddModelError("", "*An error occured while..."); return(CurrentUmbracoPage()); } return(PartialView("~/Views/Partials/PrayerCorner/_prayerPledges.cshtml", lstPrayers)); }
//Render Form public ActionResult RenderForm_NewPrayer(string userName) { try { //Instantiate variables var prayerRequest = new PrayerRequestModel(); var memberShipHelper = new Umbraco.Web.Security.MembershipHelper(UmbracoContext.Current); //Get member's ID from prayerRequest.UserId = memberShipHelper.GetByUsername(userName).Id; return(PartialView("~/Views/Partials/PrayerCorner/_newPrayer.cshtml", prayerRequest)); } catch (Exception ex) { StringBuilder sb = new StringBuilder(); sb.AppendLine(@"PrayerController.cs : RenderForm_NewPrayer()"); sb.AppendLine("userName:"******"", "*An error occured while creating a new prayer form."); return(PartialView("~/Views/Partials/PrayerCorner/_newPrayer.cshtml")); } }
public ActionResult SubmitNewPrayerRequest(PrayerRequestModel model) { try { if (ModelState.IsValid) { //Instantiate variables IContentService contentService = Services.ContentService; IContent content = contentService.CreateContent(name: model.PrayerTitle, parentId: (int)Common.siteNode.ThePrayerCorner, contentTypeAlias: docType.PrayerRequest); content.SetValue(PrayerRequest.GetModelPropertyType(x => x.PrayerTitle).PropertyTypeAlias, model.PrayerTitle); content.SetValue(PrayerRequest.GetModelPropertyType(x => x.Prayer).PropertyTypeAlias, model.Prayer); content.SetValue(PrayerRequest.GetModelPropertyType(x => x.PrayerRequestMember).PropertyTypeAlias, model.UserId); content.SetValue(PrayerRequest.GetModelPropertyType(x => x.RequestDate).PropertyTypeAlias, DateTime.Now); content.SetValue(PrayerRequest.GetModelPropertyType(x => x.BaseCalculationDate).PropertyTypeAlias, DateTime.Now); content.SetValue(PrayerRequest.GetModelPropertyType(x => x.TotalPrayersOffered).PropertyTypeAlias, 0); content.SetValue(PrayerRequest.GetModelPropertyType(x => x.CurrentPercentage).PropertyTypeAlias, 0); var result = contentService.SaveAndPublishWithStatus(content); //contentService.RePublishAll(model.UserId); if (result.Success) { //Add Prayer Request to member's records IMember member = Services.MemberService.GetById(model.UserId); if (member == null) { //Save error message to umbraco StringBuilder sb = new StringBuilder(); sb.AppendLine(@"Controllers/PrayerController.cs : SubmitNewPrayerRequest()"); sb.AppendLine(@"Member Id returned nothing. Cannot add prayer request to member."); sb.AppendLine("model:" + Newtonsoft.Json.JsonConvert.SerializeObject(model)); Exception ex = new Exception(); Common.SaveErrorMessage(ex, sb, typeof(PrayerController)); } else { //Instantiate list List <Models._prayerRequest> lstPrayerRequests = new List <Models._prayerRequest>(); //Populate list with any existing data if (member.HasProperty(NodeProperties.prayerRequests) && member.GetValue(NodeProperties.prayerRequests) != null) { lstPrayerRequests = JsonConvert.DeserializeObject <List <Models._prayerRequest> >(member.GetValue(NodeProperties.prayerRequests).ToString()); } //Add latest prayer request to Models._prayerRequest newRequest = new Models._prayerRequest(); newRequest.prayer = content.Id.ToString(); newRequest.date = DateTime.Now.ToString("yyyy-MM-dd"); lstPrayerRequests.Add(newRequest); //Add data to member and save member.SetValue(NodeProperties.prayerRequests, JsonConvert.SerializeObject(lstPrayerRequests)); Services.MemberService.Save(member); } //Return to page TempData["NewPrayerCreatedSuccessfully"] = true; return(RedirectToUmbracoPage((int)(Models.Common.siteNode.PrayerRequests))); } else { //Save error message to umbraco StringBuilder sb = new StringBuilder(); sb.AppendLine(@"Controllers/PrayerController.cs : SubmitNewPrayerRequest()"); sb.AppendLine("model:" + Newtonsoft.Json.JsonConvert.SerializeObject(model)); sb.AppendLine("result:" + Newtonsoft.Json.JsonConvert.SerializeObject(result)); Exception ex = new Exception(); Common.SaveErrorMessage(ex, sb, typeof(PrayerController)); //Return with error ModelState.AddModelError(string.Empty, "An error occured while creating your prayer request."); return(CurrentUmbracoPage()); } } else { return(CurrentUmbracoPage()); } } catch (Exception ex) { //Save error message to umbraco StringBuilder sb = new StringBuilder(); sb.AppendLine(@"PrayerController.cs : SubmitNewPrayerRequest()"); sb.AppendLine("model:" + Newtonsoft.Json.JsonConvert.SerializeObject(model)); Common.SaveErrorMessage(ex, sb, typeof(PrayerController)); ModelState.AddModelError(string.Empty, "An error occured while submitting your prayer request."); return(CurrentUmbracoPage()); } }
public async Task InsertPrayerRequest(PrayerRequestModel prayerRequest) { await _prayerRequestContext.InsertPrayerRequest(prayerRequest); await FetchPrayerRequests(); }