private void LoadPromos() { string errorResponse = string.Empty; PromoService promoService = new PromoService(); var promos = new List <Promo>(); // get category int?categoryId = null; if (!string.IsNullOrWhiteSpace(GetAttributeValue("CategoryId"))) { categoryId = Convert.ToInt32(GetAttributeValue("CategoryId")); } // get promo type bool isTopFree = false; bool isTopPaid = false; bool isFeatured = false; string promoType = GetAttributeValue("PromoType"); //"Top Paid, Top Free, Featured" switch (promoType) { case "Top Paid": isTopPaid = true; break; case "Top Free": isTopFree = true; break; case "Featured": isFeatured = true; break; } promos = promoService.GetPromos(categoryId, out errorResponse, isTopFree, isFeatured, isTopPaid); // check for errors ErrorCheck(errorResponse); var mergeFields = Rock.Lava.LavaHelper.GetCommonMergeFields(this.RockPage, this.CurrentPerson); mergeFields.Add("Promos", promos); // add link to detail page Dictionary <string, object> linkedPages = new Dictionary <string, object>(); linkedPages.Add("DetailPage", LinkedPageRoute("DetailPage")); mergeFields.Add("LinkedPages", linkedPages); lOutput.Text = GetAttributeValue("LavaTemplate").ResolveMergeFields(mergeFields); }
private void LoadPromos() { string errorResponse = string.Empty; PromoService promoService = new PromoService(); var promos = new List <Promo>(); // get category int?categoryId = null; if (!string.IsNullOrWhiteSpace(GetAttributeValue("CategoryId"))) { categoryId = Convert.ToInt32(GetAttributeValue("CategoryId")); } // get promo type bool isTopFree = false; bool isTopPaid = false; bool isFeatured = false; string promoType = GetAttributeValue("PromoType"); //"Top Paid, Top Free, Featured" switch (promoType) { case "Top Paid": isTopPaid = true; break; case "Top Free": isTopFree = true; break; case "Featured": isFeatured = true; break; } promos = promoService.GetPromos(categoryId, out errorResponse, isTopFree, isFeatured, isTopPaid); // check for errors ErrorCheck(errorResponse); var mergeFields = new Dictionary <string, object>(); mergeFields.Add("CurrentPerson", CurrentPerson); var globalAttributeFields = Rock.Web.Cache.GlobalAttributesCache.GetMergeFields(CurrentPerson); globalAttributeFields.ToList().ForEach(d => mergeFields.Add(d.Key, d.Value)); mergeFields.Add("Promos", promos); // add link to detail page Dictionary <string, object> linkedPages = new Dictionary <string, object>(); linkedPages.Add("DetailPage", LinkedPageUrl("DetailPage", null)); mergeFields.Add("LinkedPages", linkedPages); lOutput.Text = GetAttributeValue("LavaTemplate").ResolveMergeFields(mergeFields); // show debug info if (GetAttributeValue("EnableDebug").AsBoolean() && IsUserAuthorized(Authorization.EDIT)) { lDebug.Visible = true; lDebug.Text = mergeFields.lavaDebugInfo(); } }
public ActionResult ListPromos() { var promos = PromoService.GetPromos(); return(PartialView("~/Views/Shared/_ListPromos.cshtml", promos)); }