private static string GetShippingProviderTemplates(HttpContext context) { var ajaxInfo = NBrightBuyUtils.GetAjaxInfo(context); var activeprovider = ajaxInfo.GetXmlProperty("genxml/radiobuttonlist/shippingprovider"); var currentcart = new CartData(PortalSettings.Current.PortalId); var shipoption = currentcart.GetShippingOption(); // we don't want to overwrite the selected shipping option. currentcart.AddExtraInfo(ajaxInfo); currentcart.SetShippingOption(shipoption); currentcart.Save(); if (activeprovider == "") { activeprovider = currentcart.PurchaseInfo.GetXmlProperty("genxml/extrainfo/genxml/radiobuttonlist/shippingprovider"); } var strRtn = ""; var pluginData = new PluginData(PortalSettings.Current.PortalId); var provList = pluginData.GetShippingProviders(); if (provList != null && provList.Count > 0) { if (activeprovider == "") { activeprovider = provList.First().Key; } foreach (var d in provList) { if (activeprovider == d.Key) { var p = d.Value; var shippingkey = p.GetXmlProperty("genxml/textbox/ctrl"); var shipprov = ShippingInterface.Instance(shippingkey); if (shipprov != null) { var razorTempl = shipprov.GetTemplate(currentcart.PurchaseInfo); if (razorTempl != "") { var objList = new List <NBrightInfo>(); objList.Add(currentcart.PurchaseInfo); var nbRazor = new NBrightRazor(objList.Cast <object>().ToList(), NBrightBuyUtils.GetPassSettings(ajaxInfo), HttpContext.Current.Request.QueryString); nbRazor.ModuleId = -1; nbRazor.FullTemplateName = ""; nbRazor.TemplateName = ""; nbRazor.ThemeFolder = ""; nbRazor.Lang = Utils.GetCurrentCulture(); strRtn += NBrightBuyUtils.RazorRender(nbRazor, razorTempl, shippingkey + "shippingtemplate", true); } } } } } return(strRtn); }