Sneakers
Error executing template "Designs/Swift/Paragraph/Swift_ProductListGroupImage.cshtml" System.NullReferenceException: Object reference not set to an instance of an object. at CompiledRazorTemplates.Dynamic.RazorEngine_47a48877d37f412f94d258ca11479d38.ExecuteAsync() at RazorEngine.Templating.TemplateBase.Run(ExecuteContext context, TextWriter reader) at RazorEngine.Templating.RazorEngineCore.RunTemplate(ICompiledTemplate template, TextWriter writer, Object model, DynamicViewBag viewBag) at RazorEngine.Templating.RazorEngineService.Run(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag) at RazorEngine.Templating.DynamicWrapperService.Run(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag) at RazorEngine.Templating.RazorEngineServiceExtensions.Run(IRazorEngineService service, String name, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag) at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass23_0.<Run>b__0(TextWriter writer) at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter) at RazorEngine.Templating.RazorEngineServiceExtensions.Run(IRazorEngineService service, String name, Type modelType, Object model, DynamicViewBag viewBag) at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template) in /_/src/Application/Providers/Dynamicweb.Rendering.Providers.NetCore/Razor/RazorTemplateRenderingProvider.cs:line 68 at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template) in E:\A10\_w\2\s\src\Core\Dynamicweb.Core\Rendering\TemplateRenderingService.cs:line 14 at Dynamicweb.Rendering.Template.RenderRazorTemplate() in E:\A10\_w\2\s\src\Core\Dynamicweb.Core\Rendering\Template.cs:line 805
1 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.ParagraphViewModel> 2 @using Dynamicweb.Frontend.Navigation 3 @using Dynamicweb.Ecommerce.ProductCatalog 4 @using Dynamicweb.Environment 5 @using Dynamicweb.Frontend 6 7 @{ 8 ProductListViewModel productList = null; 9 if (Dynamicweb.Context.Current.Items.Contains("ProductList")) 10 { 11 productList = (ProductListViewModel)Dynamicweb.Context.Current.Items["ProductList"]; 12 } 13 else if (Pageview.Page.Item["DummyProductGroup"] != null && Pageview.IsVisualEditorMode) 14 { 15 var pageViewModel = Dynamicweb.Frontend.ContentViewModelFactory.CreatePageInfoViewModel(Pageview.Page); 16 ProductListViewModel groupList = pageViewModel.Item.GetValue("DummyProduct") != null ? pageViewModel.Item.GetValue("DummyProduct") as ProductListViewModel : new ProductListViewModel(); 17 18 if (groupList?.Products is object) 19 { 20 productList = groupList; 21 } 22 } 23 } 24 25 @if (productList is object) { 26 string groupImage = productList?.Group?.Assets != null ? productList.Group.Assets.FirstOrDefault(x => x.Name == "LargeImage").Value : string.Empty; 27 if (groupImage.StartsWith("/") && !groupImage.StartsWith("/Files", StringComparison.OrdinalIgnoreCase)) 28 { 29 groupImage = $"/Files{groupImage}"; 30 } 31 32 string groupName = productList?.Group?.Name != null ? productList.Group.Name : string.Empty; 33 34 string ratio = Model.Item.GetRawValueString("ImageAspectRatio", string.Empty); 35 ratio = ratio != "0" ? ratio : string.Empty; 36 string ratioCssClass = ratio != string.Empty && ratio != "fill" ? " ratio" : string.Empty; 37 string ratioVariable = ratio != string.Empty ? "style=\"--bs-aspect-ratio: " + ratio + "\"" : string.Empty; 38 string fillClass = ratio == "fill" ? " h-100" : ""; 39 40 var parms = new Dictionary<string, object>(); 41 parms.Add("loading", "lazy"); 42 parms.Add("columns", Model.GridRowColumnCount); 43 44 if (ratio == "fill") { 45 parms.Add("cssClass", "w-100 h-100"); 46 } 47 else 48 { 49 parms.Add("cssClass", "mw-100 mh-100"); 50 } 51 52 parms.Add("style", string.Empty); 53 parms.Add("alt", groupName); 54 55 if (!string.IsNullOrEmpty(groupImage)) { 56 <div class="item_@Model.Item.SystemName.ToLower()"> 57 <figure class="m-0@(ratioCssClass)@(fillClass)" @ratioVariable> 58 @RenderPartial("Components/Image.cshtml", new FileViewModel { Path = groupImage }, parms) 59 </figure> 60 </div> 61 } else if (Pageview.IsVisualEditorMode) { 62 <div class="alert alert-dark m-0" role="alert"> 63 <span>@Translate("Product list group image: The image will be shown here, if any")</span> 64 </div> 65 } 66 } else if (Pageview.IsVisualEditorMode) 67 { 68 <div class="alert alert-dark m-0" role="alert"> 69 <span>@Translate("Product list group image: The image will be shown here, if any")</span> 70 </div> 71 } 72 73
Sneakers
Error executing template "Designs/Swift/Paragraph/Swift_ProductListGroupPoster.cshtml" System.NullReferenceException: Object reference not set to an instance of an object. at CompiledRazorTemplates.Dynamic.RazorEngine_8774f6b2cc964c8180d6a65dcd84978a.ExecuteAsync() at RazorEngine.Templating.TemplateBase.Run(ExecuteContext context, TextWriter reader) at RazorEngine.Templating.RazorEngineCore.RunTemplate(ICompiledTemplate template, TextWriter writer, Object model, DynamicViewBag viewBag) at RazorEngine.Templating.RazorEngineService.Run(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag) at RazorEngine.Templating.DynamicWrapperService.Run(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag) at RazorEngine.Templating.RazorEngineServiceExtensions.Run(IRazorEngineService service, String name, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag) at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass23_0.<Run>b__0(TextWriter writer) at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter) at RazorEngine.Templating.RazorEngineServiceExtensions.Run(IRazorEngineService service, String name, Type modelType, Object model, DynamicViewBag viewBag) at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template) in /_/src/Application/Providers/Dynamicweb.Rendering.Providers.NetCore/Razor/RazorTemplateRenderingProvider.cs:line 68 at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template) in E:\A10\_w\2\s\src\Core\Dynamicweb.Core\Rendering\TemplateRenderingService.cs:line 14 at Dynamicweb.Rendering.Template.RenderRazorTemplate() in E:\A10\_w\2\s\src\Core\Dynamicweb.Core\Rendering\Template.cs:line 805
1 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.ParagraphViewModel> 2 @using Dynamicweb.Frontend.Navigation 3 @using Dynamicweb.Ecommerce.ProductCatalog 4 @using Dynamicweb.Environment 5 @using Dynamicweb.Frontend 6 7 @{ 8 ProductListViewModel productList = null; 9 if (Dynamicweb.Context.Current.Items.Contains("ProductList")) 10 { 11 productList = (ProductListViewModel)Dynamicweb.Context.Current.Items["ProductList"]; 12 } 13 else if (Pageview.Page.Item["DummyProductGroup"] != null && Pageview.IsVisualEditorMode) 14 { 15 var pageViewModel = Dynamicweb.Frontend.ContentViewModelFactory.CreatePageInfoViewModel(Pageview.Page); 16 ProductListViewModel groupList = pageViewModel.Item.GetValue("DummyProduct") != null ? pageViewModel.Item.GetValue("DummyProduct") as ProductListViewModel : new ProductListViewModel(); 17 18 if (groupList?.Products is object) 19 { 20 productList = groupList; 21 } 22 } 23 } 24 25 @if (productList is object) 26 { 27 string layout = Model.Item.GetRawValueString("Layout", "align-middle-center-text-center"); 28 string alignment = ""; 29 30 string searchParameter = Dynamicweb.Context.Current.Request.GetString("q"); 31 32 bool hideTitle = Model.Item.GetBoolean("HideGroupTitle"); 33 string titleFontSize = Model.Item.GetRawValueString("TitleFontSize", "display-4"); 34 35 string groupName = productList?.Group?.Name != null ? productList.Group.Name : ""; 36 string headerName = searchParameter != "" ? Translate("Search results for") + ": " + searchParameter : groupName; 37 38 bool hideDescription = Model.Item.GetBoolean("HideGroupDescription"); 39 string groupDescription = productList?.Group?.Description != null ? productList.Group.Description : ""; 40 string descriptionFontSize = Model.Item.GetRawValueString("DescriptionFontSize", "fs-6"); 41 42 string groupImage = productList?.Group?.Assets != null ? productList.Group.Assets.FirstOrDefault(x => x.Name == "LargeImage").Value : ""; 43 if (groupImage.StartsWith("/") && !groupImage.StartsWith("/Files", StringComparison.OrdinalIgnoreCase)) 44 { 45 groupImage = $"/Files{groupImage}"; 46 } 47 48 string posterHeight = Model.Item.GetRawValueString("PosterHeight", ""); 49 posterHeight = posterHeight == "small" ? "min-vh-25" : posterHeight; 50 posterHeight = posterHeight == "medium" ? "min-vh-50" : posterHeight; 51 posterHeight = posterHeight == "large" ? "min-vh-75" : posterHeight; 52 53 string contentPadding = Model.Item.GetRawValueString("ContentPadding", ""); 54 contentPadding = contentPadding == "none" ? "p-3 px-xl-3 py-xl-4" : contentPadding; 55 contentPadding = contentPadding == "small" ? "p-3 p-xl-4" : contentPadding; 56 contentPadding = contentPadding == "large" ? "p-4 p-xl-5" : contentPadding; 57 58 string maxWidth = Model.Item.GetRawValueString("TextReadability", "max-width-on"); 59 maxWidth = maxWidth == "max-width-on" ? " mw-75ch" : maxWidth; 60 maxWidth = maxWidth == "max-width-off" ? "" : maxWidth; 61 62 string theme = !string.IsNullOrWhiteSpace(Model.Item.GetRawValueString("Theme")) ? " theme " + Model.Item.GetRawValueString("Theme").Replace(" ", "").Trim().ToLower() : ""; 63 64 if (!string.IsNullOrEmpty(groupImage)) 65 { 66 var parms = new Dictionary<string, object>(); 67 parms.Add("cssClass", "h-100 w-100"); 68 parms.Add("columns", Model.GridRowColumnCount); 69 70 switch (layout) 71 { 72 case "align-top-left-text-left": 73 alignment = "text-start justify-content-start align-items-start"; 74 break; 75 case "align-top-center-text-center": 76 alignment = "text-center justify-content-center align-items-start"; 77 break; 78 case "align-top-right-text-right": 79 alignment = "text-end justify-content-end align-items-start"; 80 break; 81 case "align-middle-left-text-left": 82 alignment = "text-start justify-content-start align-items-center"; 83 break; 84 case "align-middle-center-text-center": 85 alignment = "text-center justify-content-center align-items-center"; 86 break; 87 case "align-middle-right-text-right": 88 alignment = "text-end justify-content-end align-items-center"; 89 break; 90 case "align-bottom-left-text-left": 91 alignment = "text-start justify-content-start align-items-end"; 92 break; 93 case "align-bottom-center-text-center": 94 alignment = "text-center justify-content-center align-items-end"; 95 break; 96 case "align-bottom-right-text-right": 97 alignment = "text-end justify-content-end align-items-end"; 98 break; 99 } 100 101 <div class="position-relative h-100@(theme) @(posterHeight) item_@Model.Item.SystemName.ToLower()"> 102 @if (!string.IsNullOrEmpty(groupImage)) 103 { 104 string imageFilter = Model.Item.GetRawValueString("ImageFilter", ""); 105 imageFilter = imageFilter == "no-filter" ? "" : imageFilter; 106 imageFilter = imageFilter == "filter" ? " image-filter" : imageFilter; 107 108 <div class="position-absolute top-0 bottom-0 end-0 start-0@(imageFilter)"> 109 @RenderPartial("Components/Image.cshtml", new FileViewModel { Path = groupImage }, parms) 110 </div> 111 } 112 113 @if (!hideTitle || !hideDescription) 114 { 115 <div class="container-xl h-100 @(contentPadding)"> 116 <div class="h-100 w-100 position-relative d-flex @(alignment)"> 117 <div class="@(maxWidth)"> 118 @if (!hideTitle) 119 { 120 <h1 class="@titleFontSize">@headerName</h1> 121 } 122 123 @if (!hideDescription && !string.IsNullOrEmpty(groupDescription)) 124 { 125 <div class="@descriptionFontSize mb-0-last-child"> 126 @groupDescription 127 </div> 128 } 129 </div> 130 </div> 131 </div> 132 } 133 134 </div> 135 } 136 else if (Pageview.IsVisualEditorMode) 137 { 138 <div class="alert alert-dark m-0" role="alert"> 139 <span>@Translate("Product group poster: The poster paragraph will be shown here, if any")</span> 140 </div> 141 } 142 } 143 else if (Pageview.IsVisualEditorMode) 144 { 145 <div class="alert alert-dark m-0" role="alert"> 146 <span>@Translate("Product group poster: The poster paragraph will be shown here, if any")</span> 147 </div> 148 } 149
Copy of Precaliber 16 Girl Bike
Variant Name
Copy of Precaliber 16 Girl Bike, Pink
Variant Price
£44.45
Variant Name
Copy of Precaliber 16 Girl Bike, Violet
Variant Price
£44.45
Copy of Precaliber 16 Girl Bike
Variant Name
Copy of Precaliber 16 Girl Bike, Pink
Variant Price
£44.45
Variant Name
Copy of Precaliber 16 Girl Bike, Violet
Variant Price
£44.45
Copy of Precaliber 16 Girl Bike
Variant Name
Copy of Precaliber 16 Girl Bike, Pink
Variant Price
£44.45
Variant Name
Copy of Precaliber 16 Girl Bike, Violet
Variant Price
£44.45
2nd Copy of Domane Women's SL 6 Bike
Variant Name
2nd Copy of Domane Women's SL 6 Bike, Black
Variant Price
£578.72
Variant Name
2nd Copy of Domane Women's SL 6 Bike, Purple
Variant Price
£578.72
Variant Name
2nd Copy of Domane Women's SL 6 Bike, Red
Variant Price
£578.72
Copy of Domane Women's SL 6 Bike
Variant Name
Copy of Domane Women's SL 6 Bike, Black
Variant Price
£578.72
Variant Name
Copy of Domane Women's SL 6 Bike, Purple
Variant Price
£578.72
Variant Name
Copy of Domane Women's SL 6 Bike, Red
Variant Price
£578.72
Copy of Domane Women's SL 6 Bike
Variant Name
Copy of Domane Women's SL 6 Bike, Black
Variant Price
£578.72
Variant Name
Copy of Domane Women's SL 6 Bike, Purple
Variant Price
£578.72
Variant Name
Copy of Domane Women's SL 6 Bike, Red
Variant Price
£578.72
Copy of Domane Women's SL 6 Bike
Variant Name
Copy of Domane Women's SL 6 Bike, Black
Variant Price
£578.72
Variant Name
Copy of Domane Women's SL 6 Bike, Purple
Variant Price
£578.72
Variant Name
Copy of Domane Women's SL 6 Bike, Red
Variant Price
£578.72
Copy of Copy of Townie Go! 5i Step-Thru Bike
Variant Name
Copy of Copy of Townie Go! 5i Step-Thru Bike, Black
Variant Price
£136.78
Variant Name
Copy of Copy of Townie Go! 5i Step-Thru Bike, Blue
Variant Price
£136.78
Variant Name
Copy of Copy of Townie Go! 5i Step-Thru Bike, Green
Variant Price
£136.78
Copy of Copy of Townie Go! 5i Step-Thru Bike
Variant Name
Copy of Copy of Townie Go! 5i Step-Thru Bike, Black
Variant Price
£136.78
Variant Name
Copy of Copy of Townie Go! 5i Step-Thru Bike, Blue
Variant Price
£136.78
Variant Name
Copy of Copy of Townie Go! 5i Step-Thru Bike, Green
Variant Price
£136.78
Copy of Copy of Townie Go! 5i Step-Thru Bike
Variant Name
Copy of Copy of Townie Go! 5i Step-Thru Bike, Black
Variant Price
£136.78
Variant Name
Copy of Copy of Townie Go! 5i Step-Thru Bike, Blue
Variant Price
£136.78
Variant Name
Copy of Copy of Townie Go! 5i Step-Thru Bike, Green
Variant Price
£136.78
Copy of Copy of Townie Go! 5i Step-Thru Bike
Variant Name
Copy of Copy of Townie Go! 5i Step-Thru Bike, Black
Variant Price
£136.78
Variant Name
Copy of Copy of Townie Go! 5i Step-Thru Bike, Blue
Variant Price
£136.78
Variant Name
Copy of Copy of Townie Go! 5i Step-Thru Bike, Green
Variant Price
£136.78
Copy of Copy of Townie Go! 5i Step-Thru Bike
Variant Name
Copy of Copy of Townie Go! 5i Step-Thru Bike, Black
Variant Price
£136.78
Variant Name
Copy of Copy of Townie Go! 5i Step-Thru Bike, Blue
Variant Price
£136.78
Variant Name
Copy of Copy of Townie Go! 5i Step-Thru Bike, Green
Variant Price
£136.78
Sneakers
Copy of Precaliber 16 Girl Bike
1998 In stock
1998 In stock
Copy of Precaliber 16 Girl Bike (Violet)
999 In stock
999 In stock
Copy of Precaliber 16 Girl Bike (Pink)
999 In stock
999 In stock
2nd Copy of Domane Women's SL 6 Bike
3000 In stock
3000 In stock
Copy of Domane Women's SL 6 Bike (Red)
1000 In stock
1000 In stock
Copy of Domane Women's SL 6 Bike (Black)
1000 In stock
1000 In stock
Copy of Domane Women's SL 6 Bike (Purple)
1000 In stock
1000 In stock
Copy of Copy of Townie Go! 5i Step-Thru Bike
3967 In stock
3967 In stock
Copy of Copy of Townie Go! 5i Step-Thru Bike (Black)
961 In stock
961 In stock
Copy of Copy of Townie Go! 5i Step-Thru Bike (Blue)
954 In stock
954 In stock
Copy of Copy of Townie Go! 5i Step-Thru Bike (Green)
952 In stock
952 In stock
Copy of Copy of Townie Go! 5i Step-Thru Bike (Grey)
961 In stock
961 In stock
Sneakers
Copy of Precaliber 16 Girl Bike
1998 In stock
1998 In stock
Copy of Precaliber 16 Girl Bike (Violet)
999 In stock
999 In stock
Copy of Precaliber 16 Girl Bike (Pink)
999 In stock
999 In stock
2nd Copy of Domane Women's SL 6 Bike
3000 In stock
3000 In stock
Copy of Domane Women's SL 6 Bike (Red)
1000 In stock
1000 In stock
Copy of Domane Women's SL 6 Bike (Black)
1000 In stock
1000 In stock
Copy of Domane Women's SL 6 Bike (Purple)
1000 In stock
1000 In stock
Copy of Copy of Townie Go! 5i Step-Thru Bike
3967 In stock
3967 In stock
Copy of Copy of Townie Go! 5i Step-Thru Bike (Black)
961 In stock
961 In stock
Copy of Copy of Townie Go! 5i Step-Thru Bike (Blue)
954 In stock
954 In stock
Copy of Copy of Townie Go! 5i Step-Thru Bike (Green)
952 In stock
952 In stock
Copy of Copy of Townie Go! 5i Step-Thru Bike (Grey)
961 In stock
961 In stock