Together we create the pool of tomorrow.

Error executing template "Designs/Swift/Paragraph/Swift_Feature.cshtml"
System.NullReferenceException: Object reference not set to an instance of an object.
   at CompiledRazorTemplates.Dynamic.RazorEngine_f60aa7bf3e5a45138401061cd4271b93.<>c__DisplayClass0_0.<RenderIconAndImage>b__0(TextWriter __razor_helper_writer) in D:\dynamicweb.net\Solutions\Dynamicweb\bluedrops.cloud.dynamicweb-cms.com\Files\Templates\Designs\Swift\Paragraph\Swift_Feature.cshtml:line 101
   at CompiledRazorTemplates.Dynamic.RazorEngine_f60aa7bf3e5a45138401061cd4271b93.Execute() in D:\dynamicweb.net\Solutions\Dynamicweb\bluedrops.cloud.dynamicweb-cms.com\Files\Templates\Designs\Swift\Paragraph\Swift_Feature.cshtml:line 27
   at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader)
   at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.<RunCompile>b__0(TextWriter writer)
   at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
   at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template)
   at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template)
   at Dynamicweb.Rendering.Template.RenderRazorTemplate()

1 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.ParagraphViewModel> 2 @using System.IO 3 4 @{ 5 string layout = Model.Item.GetRawValueString("Layout", "icon-top"); 6 string contentPadding = Model.Item.GetRawValueString("ContentPadding", ""); 7 contentPadding = contentPadding == "none" ? "" : contentPadding; 8 contentPadding = contentPadding == "small" ? "p-3 p-md-3" : contentPadding; 9 contentPadding = contentPadding == "large" ? "p-5 p-md-5" : contentPadding; 10 string theme = !string.IsNullOrWhiteSpace(Model.Item.GetRawValueString("Theme")) ? " theme " + Model.Item.GetRawValueString("Theme").Replace(" ", "").Trim().ToLower() : ""; 11 12 string target = Pageview.AreaSettings.GetBoolean("OpenLinksInNewTab") && Model.Item.GetString("Link").Contains("http") ? "target=\"_blank\"" : string.Empty; 13 string rel = Pageview.AreaSettings.GetBoolean("OpenLinksInNewTab") && Model.Item.GetString("Link").Contains("http") ? "rel=\"noopener\"" : string.Empty; 14 string alignment = (!string.IsNullOrEmpty(Model.Item.GetString("Title")) && !Model.Item.GetBoolean("HideTitle")) && !string.IsNullOrEmpty(Model.Item.GetString("Text")) ? "align-items-stretch" : "align-items-center"; 15 } 16 17 <div class="h-100 @(contentPadding)@(theme) [email protected]()"> 18 @switch (layout) 19 { 20 case "icon-top": 21 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 22 { 23 @:<a href="@Model.Item.GetString("Link")" class="text-decoration-none d-block h-100" @target @rel> 24 } 25 26 <div class="d-flex flex-column gap-3 text-center mb-0-last-child"> 27 @{@RenderIconAndImage(layout)} 28 29 @if ( 30 !string.IsNullOrEmpty(Model.Item.GetString("Title")) && 31 !Model.Item.GetBoolean("HideTitle") || 32 !string.IsNullOrEmpty(Model.Item.GetString("Text")) 33 ) 34 { 35 <div class="mb-0-last-child"> 36 @RenderTitle() 37 @RenderBody() 38 </div> 39 } 40 41 </div> 42 43 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 44 { 45 @:</a> 46 } 47 break; 48 case "icon-left": 49 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 50 { 51 @:<a href="@Model.Item.GetString("Link")" class="text-decoration-none d-block h-100" @target @rel> 52 } 53 54 <div class="d-flex flex-row gap-3 h-100 text-start @alignment"> 55 @{@RenderIconAndImage(layout)} 56 57 @if ( 58 !string.IsNullOrEmpty(Model.Item.GetString("Title")) && 59 !Model.Item.GetBoolean("HideTitle") || 60 !string.IsNullOrEmpty(Model.Item.GetString("Text")) 61 ) 62 { 63 <div class="d-flex flex-column flex-grow-1"> 64 @RenderTitle() 65 @RenderBody() 66 </div> 67 } 68 69 </div> 70 71 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 72 { 73 @:</a> 74 } 75 break; 76 case "icon-right": 77 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 78 { 79 @:<a href="@Model.Item.GetString("Link")" class="text-decoration-none d-block h-100" @target @rel> 80 } 81 82 <div class="d-flex flex-row gap-3 h-100 text-end @alignment"> 83 <div class="d-flex flex-column flex-grow-1"> 84 @RenderTitle() 85 @RenderBody() 86 </div> 87 88 @{@RenderIconAndImage(layout)} 89 </div> 90 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 91 { 92 @:</a> 93 } 94 break; 95 } 96 </div> 97 98 @helper RenderIconAndImage(string layout) 99 { 100 string iconSize = Model.Item.GetRawValueString("IconSize", "2"); 101 string imageSrc = !string.IsNullOrEmpty(Model.Item.GetString("Image")) ? Model.Item.GetFile("Image").Path : ""; 102 string flexGrowClass = string.Empty; 103 104 switch (layout) { 105 case "icon-left": 106 case "icon-right": 107 flexGrowClass = "flex-grow-0"; 108 break; 109 } 110 111 if (!string.IsNullOrEmpty(Model.Item.GetString("Image"))) 112 { <div class="@flexGrowClass"> 113 @RenderIcon(imageSrc, iconSize) 114 </div> 115 } 116 else 117 { 118 string imagePath = Model.Item.GetRawValueString("Icon", ""); 119 120 if (!imagePath.ToLower().Contains("none") && imagePath != "") 121 { 122 <div class="@flexGrowClass"> 123 @RenderIcon(imagePath, iconSize) 124 </div> 125 } 126 } 127 } 128 129 @helper RenderIcon(string imagePath, string iconSize) 130 { 131 132 if (Path.GetExtension(imagePath).ToLower() == ".svg") 133 { 134 string iconColor = Model.Item.GetString("iconColor", "text-inherit"); 135 string iconOpacity = Model.Item.GetString("IconOpacity", "opacity-100"); 136 137 <div class="icon-auto @iconColor @iconOpacity" style="height: @(iconSize)px; width: @(iconSize)px;"> 138 @ReadFile(imagePath) 139 </div> 140 } 141 else 142 { 143 imagePath = "/Admin/Public/GetImage.ashx?image=" + imagePath + "&height=" + iconSize + "&width=" + iconSize + "&Crop=0&Format=WebP&Quality=100"; 144 string imgAltText = Model.Item.GetRawValueString("FeatureAltText", string.Empty); 145 146 <img loading="lazy" src="@imagePath" alt="@imgAltText" title="@Model.Item.GetString("Title")" style="height: @(iconSize)px; width: @(iconSize)px;"> 147 } 148 } 149 150 @helper RenderTitle() 151 { 152 if (!string.IsNullOrEmpty(Model.Item.GetString("Title")) && !Model.Item.GetBoolean("HideTitle")) 153 { 154 string titleFontSize = Model.Item.GetRawValueString("TitleFontSize", "h4"); 155 string titleColor = Model.Item.GetString("TitleColor", "text-inherit"); 156 string titleOpacity = Model.Item.GetString("TitleOpacity", "opacity-100"); 157 string headingLevel = Model.Item.GetString("HeadingLevel", "h2"); 158 string headingLevelStart = $"<{headingLevel} class=\"{titleFontSize} {titleColor} {titleOpacity} m-0\">"; 159 string headingLevelStop = $"</{headingLevel}>"; 160 161 @headingLevelStart 162 @Model.Item.GetString("Title") 163 @headingLevelStop 164 } 165 } 166 167 @helper RenderBody() 168 { 169 if (!string.IsNullOrEmpty(Model.Item.GetString("Text"))) 170 { 171 string textColor = Model.Item.GetString("TextColor", "text-inherit"); 172 string textOpacity = Model.Item.GetString("TextOpacity", "opacity-100"); 173 174 <p class="@textColor @textOpacity m-0">@Model.Item.GetString("Text")</p> 175 } 176 } 177
Error executing template "Designs/Swift/Paragraph/Swift_Feature.cshtml"
System.NullReferenceException: Object reference not set to an instance of an object.
   at CompiledRazorTemplates.Dynamic.RazorEngine_f60aa7bf3e5a45138401061cd4271b93.<>c__DisplayClass0_0.<RenderIconAndImage>b__0(TextWriter __razor_helper_writer) in D:\dynamicweb.net\Solutions\Dynamicweb\bluedrops.cloud.dynamicweb-cms.com\Files\Templates\Designs\Swift\Paragraph\Swift_Feature.cshtml:line 101
   at CompiledRazorTemplates.Dynamic.RazorEngine_f60aa7bf3e5a45138401061cd4271b93.Execute() in D:\dynamicweb.net\Solutions\Dynamicweb\bluedrops.cloud.dynamicweb-cms.com\Files\Templates\Designs\Swift\Paragraph\Swift_Feature.cshtml:line 27
   at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader)
   at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.<RunCompile>b__0(TextWriter writer)
   at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
   at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template)
   at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template)
   at Dynamicweb.Rendering.Template.RenderRazorTemplate()

1 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.ParagraphViewModel> 2 @using System.IO 3 4 @{ 5 string layout = Model.Item.GetRawValueString("Layout", "icon-top"); 6 string contentPadding = Model.Item.GetRawValueString("ContentPadding", ""); 7 contentPadding = contentPadding == "none" ? "" : contentPadding; 8 contentPadding = contentPadding == "small" ? "p-3 p-md-3" : contentPadding; 9 contentPadding = contentPadding == "large" ? "p-5 p-md-5" : contentPadding; 10 string theme = !string.IsNullOrWhiteSpace(Model.Item.GetRawValueString("Theme")) ? " theme " + Model.Item.GetRawValueString("Theme").Replace(" ", "").Trim().ToLower() : ""; 11 12 string target = Pageview.AreaSettings.GetBoolean("OpenLinksInNewTab") && Model.Item.GetString("Link").Contains("http") ? "target=\"_blank\"" : string.Empty; 13 string rel = Pageview.AreaSettings.GetBoolean("OpenLinksInNewTab") && Model.Item.GetString("Link").Contains("http") ? "rel=\"noopener\"" : string.Empty; 14 string alignment = (!string.IsNullOrEmpty(Model.Item.GetString("Title")) && !Model.Item.GetBoolean("HideTitle")) && !string.IsNullOrEmpty(Model.Item.GetString("Text")) ? "align-items-stretch" : "align-items-center"; 15 } 16 17 <div class="h-100 @(contentPadding)@(theme) [email protected]()"> 18 @switch (layout) 19 { 20 case "icon-top": 21 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 22 { 23 @:<a href="@Model.Item.GetString("Link")" class="text-decoration-none d-block h-100" @target @rel> 24 } 25 26 <div class="d-flex flex-column gap-3 text-center mb-0-last-child"> 27 @{@RenderIconAndImage(layout)} 28 29 @if ( 30 !string.IsNullOrEmpty(Model.Item.GetString("Title")) && 31 !Model.Item.GetBoolean("HideTitle") || 32 !string.IsNullOrEmpty(Model.Item.GetString("Text")) 33 ) 34 { 35 <div class="mb-0-last-child"> 36 @RenderTitle() 37 @RenderBody() 38 </div> 39 } 40 41 </div> 42 43 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 44 { 45 @:</a> 46 } 47 break; 48 case "icon-left": 49 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 50 { 51 @:<a href="@Model.Item.GetString("Link")" class="text-decoration-none d-block h-100" @target @rel> 52 } 53 54 <div class="d-flex flex-row gap-3 h-100 text-start @alignment"> 55 @{@RenderIconAndImage(layout)} 56 57 @if ( 58 !string.IsNullOrEmpty(Model.Item.GetString("Title")) && 59 !Model.Item.GetBoolean("HideTitle") || 60 !string.IsNullOrEmpty(Model.Item.GetString("Text")) 61 ) 62 { 63 <div class="d-flex flex-column flex-grow-1"> 64 @RenderTitle() 65 @RenderBody() 66 </div> 67 } 68 69 </div> 70 71 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 72 { 73 @:</a> 74 } 75 break; 76 case "icon-right": 77 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 78 { 79 @:<a href="@Model.Item.GetString("Link")" class="text-decoration-none d-block h-100" @target @rel> 80 } 81 82 <div class="d-flex flex-row gap-3 h-100 text-end @alignment"> 83 <div class="d-flex flex-column flex-grow-1"> 84 @RenderTitle() 85 @RenderBody() 86 </div> 87 88 @{@RenderIconAndImage(layout)} 89 </div> 90 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 91 { 92 @:</a> 93 } 94 break; 95 } 96 </div> 97 98 @helper RenderIconAndImage(string layout) 99 { 100 string iconSize = Model.Item.GetRawValueString("IconSize", "2"); 101 string imageSrc = !string.IsNullOrEmpty(Model.Item.GetString("Image")) ? Model.Item.GetFile("Image").Path : ""; 102 string flexGrowClass = string.Empty; 103 104 switch (layout) { 105 case "icon-left": 106 case "icon-right": 107 flexGrowClass = "flex-grow-0"; 108 break; 109 } 110 111 if (!string.IsNullOrEmpty(Model.Item.GetString("Image"))) 112 { <div class="@flexGrowClass"> 113 @RenderIcon(imageSrc, iconSize) 114 </div> 115 } 116 else 117 { 118 string imagePath = Model.Item.GetRawValueString("Icon", ""); 119 120 if (!imagePath.ToLower().Contains("none") && imagePath != "") 121 { 122 <div class="@flexGrowClass"> 123 @RenderIcon(imagePath, iconSize) 124 </div> 125 } 126 } 127 } 128 129 @helper RenderIcon(string imagePath, string iconSize) 130 { 131 132 if (Path.GetExtension(imagePath).ToLower() == ".svg") 133 { 134 string iconColor = Model.Item.GetString("iconColor", "text-inherit"); 135 string iconOpacity = Model.Item.GetString("IconOpacity", "opacity-100"); 136 137 <div class="icon-auto @iconColor @iconOpacity" style="height: @(iconSize)px; width: @(iconSize)px;"> 138 @ReadFile(imagePath) 139 </div> 140 } 141 else 142 { 143 imagePath = "/Admin/Public/GetImage.ashx?image=" + imagePath + "&height=" + iconSize + "&width=" + iconSize + "&Crop=0&Format=WebP&Quality=100"; 144 string imgAltText = Model.Item.GetRawValueString("FeatureAltText", string.Empty); 145 146 <img loading="lazy" src="@imagePath" alt="@imgAltText" title="@Model.Item.GetString("Title")" style="height: @(iconSize)px; width: @(iconSize)px;"> 147 } 148 } 149 150 @helper RenderTitle() 151 { 152 if (!string.IsNullOrEmpty(Model.Item.GetString("Title")) && !Model.Item.GetBoolean("HideTitle")) 153 { 154 string titleFontSize = Model.Item.GetRawValueString("TitleFontSize", "h4"); 155 string titleColor = Model.Item.GetString("TitleColor", "text-inherit"); 156 string titleOpacity = Model.Item.GetString("TitleOpacity", "opacity-100"); 157 string headingLevel = Model.Item.GetString("HeadingLevel", "h2"); 158 string headingLevelStart = $"<{headingLevel} class=\"{titleFontSize} {titleColor} {titleOpacity} m-0\">"; 159 string headingLevelStop = $"</{headingLevel}>"; 160 161 @headingLevelStart 162 @Model.Item.GetString("Title") 163 @headingLevelStop 164 } 165 } 166 167 @helper RenderBody() 168 { 169 if (!string.IsNullOrEmpty(Model.Item.GetString("Text"))) 170 { 171 string textColor = Model.Item.GetString("TextColor", "text-inherit"); 172 string textOpacity = Model.Item.GetString("TextOpacity", "opacity-100"); 173 174 <p class="@textColor @textOpacity m-0">@Model.Item.GetString("Text")</p> 175 } 176 } 177
Error executing template "Designs/Swift/Paragraph/Swift_Feature.cshtml"
System.NullReferenceException: Object reference not set to an instance of an object.
   at CompiledRazorTemplates.Dynamic.RazorEngine_f60aa7bf3e5a45138401061cd4271b93.<>c__DisplayClass0_0.<RenderIconAndImage>b__0(TextWriter __razor_helper_writer) in D:\dynamicweb.net\Solutions\Dynamicweb\bluedrops.cloud.dynamicweb-cms.com\Files\Templates\Designs\Swift\Paragraph\Swift_Feature.cshtml:line 101
   at CompiledRazorTemplates.Dynamic.RazorEngine_f60aa7bf3e5a45138401061cd4271b93.Execute() in D:\dynamicweb.net\Solutions\Dynamicweb\bluedrops.cloud.dynamicweb-cms.com\Files\Templates\Designs\Swift\Paragraph\Swift_Feature.cshtml:line 27
   at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader)
   at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.<RunCompile>b__0(TextWriter writer)
   at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
   at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template)
   at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template)
   at Dynamicweb.Rendering.Template.RenderRazorTemplate()

1 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.ParagraphViewModel> 2 @using System.IO 3 4 @{ 5 string layout = Model.Item.GetRawValueString("Layout", "icon-top"); 6 string contentPadding = Model.Item.GetRawValueString("ContentPadding", ""); 7 contentPadding = contentPadding == "none" ? "" : contentPadding; 8 contentPadding = contentPadding == "small" ? "p-3 p-md-3" : contentPadding; 9 contentPadding = contentPadding == "large" ? "p-5 p-md-5" : contentPadding; 10 string theme = !string.IsNullOrWhiteSpace(Model.Item.GetRawValueString("Theme")) ? " theme " + Model.Item.GetRawValueString("Theme").Replace(" ", "").Trim().ToLower() : ""; 11 12 string target = Pageview.AreaSettings.GetBoolean("OpenLinksInNewTab") && Model.Item.GetString("Link").Contains("http") ? "target=\"_blank\"" : string.Empty; 13 string rel = Pageview.AreaSettings.GetBoolean("OpenLinksInNewTab") && Model.Item.GetString("Link").Contains("http") ? "rel=\"noopener\"" : string.Empty; 14 string alignment = (!string.IsNullOrEmpty(Model.Item.GetString("Title")) && !Model.Item.GetBoolean("HideTitle")) && !string.IsNullOrEmpty(Model.Item.GetString("Text")) ? "align-items-stretch" : "align-items-center"; 15 } 16 17 <div class="h-100 @(contentPadding)@(theme) [email protected]()"> 18 @switch (layout) 19 { 20 case "icon-top": 21 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 22 { 23 @:<a href="@Model.Item.GetString("Link")" class="text-decoration-none d-block h-100" @target @rel> 24 } 25 26 <div class="d-flex flex-column gap-3 text-center mb-0-last-child"> 27 @{@RenderIconAndImage(layout)} 28 29 @if ( 30 !string.IsNullOrEmpty(Model.Item.GetString("Title")) && 31 !Model.Item.GetBoolean("HideTitle") || 32 !string.IsNullOrEmpty(Model.Item.GetString("Text")) 33 ) 34 { 35 <div class="mb-0-last-child"> 36 @RenderTitle() 37 @RenderBody() 38 </div> 39 } 40 41 </div> 42 43 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 44 { 45 @:</a> 46 } 47 break; 48 case "icon-left": 49 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 50 { 51 @:<a href="@Model.Item.GetString("Link")" class="text-decoration-none d-block h-100" @target @rel> 52 } 53 54 <div class="d-flex flex-row gap-3 h-100 text-start @alignment"> 55 @{@RenderIconAndImage(layout)} 56 57 @if ( 58 !string.IsNullOrEmpty(Model.Item.GetString("Title")) && 59 !Model.Item.GetBoolean("HideTitle") || 60 !string.IsNullOrEmpty(Model.Item.GetString("Text")) 61 ) 62 { 63 <div class="d-flex flex-column flex-grow-1"> 64 @RenderTitle() 65 @RenderBody() 66 </div> 67 } 68 69 </div> 70 71 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 72 { 73 @:</a> 74 } 75 break; 76 case "icon-right": 77 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 78 { 79 @:<a href="@Model.Item.GetString("Link")" class="text-decoration-none d-block h-100" @target @rel> 80 } 81 82 <div class="d-flex flex-row gap-3 h-100 text-end @alignment"> 83 <div class="d-flex flex-column flex-grow-1"> 84 @RenderTitle() 85 @RenderBody() 86 </div> 87 88 @{@RenderIconAndImage(layout)} 89 </div> 90 if (!string.IsNullOrEmpty(Model.Item.GetString("Link"))) 91 { 92 @:</a> 93 } 94 break; 95 } 96 </div> 97 98 @helper RenderIconAndImage(string layout) 99 { 100 string iconSize = Model.Item.GetRawValueString("IconSize", "2"); 101 string imageSrc = !string.IsNullOrEmpty(Model.Item.GetString("Image")) ? Model.Item.GetFile("Image").Path : ""; 102 string flexGrowClass = string.Empty; 103 104 switch (layout) { 105 case "icon-left": 106 case "icon-right": 107 flexGrowClass = "flex-grow-0"; 108 break; 109 } 110 111 if (!string.IsNullOrEmpty(Model.Item.GetString("Image"))) 112 { <div class="@flexGrowClass"> 113 @RenderIcon(imageSrc, iconSize) 114 </div> 115 } 116 else 117 { 118 string imagePath = Model.Item.GetRawValueString("Icon", ""); 119 120 if (!imagePath.ToLower().Contains("none") && imagePath != "") 121 { 122 <div class="@flexGrowClass"> 123 @RenderIcon(imagePath, iconSize) 124 </div> 125 } 126 } 127 } 128 129 @helper RenderIcon(string imagePath, string iconSize) 130 { 131 132 if (Path.GetExtension(imagePath).ToLower() == ".svg") 133 { 134 string iconColor = Model.Item.GetString("iconColor", "text-inherit"); 135 string iconOpacity = Model.Item.GetString("IconOpacity", "opacity-100"); 136 137 <div class="icon-auto @iconColor @iconOpacity" style="height: @(iconSize)px; width: @(iconSize)px;"> 138 @ReadFile(imagePath) 139 </div> 140 } 141 else 142 { 143 imagePath = "/Admin/Public/GetImage.ashx?image=" + imagePath + "&height=" + iconSize + "&width=" + iconSize + "&Crop=0&Format=WebP&Quality=100"; 144 string imgAltText = Model.Item.GetRawValueString("FeatureAltText", string.Empty); 145 146 <img loading="lazy" src="@imagePath" alt="@imgAltText" title="@Model.Item.GetString("Title")" style="height: @(iconSize)px; width: @(iconSize)px;"> 147 } 148 } 149 150 @helper RenderTitle() 151 { 152 if (!string.IsNullOrEmpty(Model.Item.GetString("Title")) && !Model.Item.GetBoolean("HideTitle")) 153 { 154 string titleFontSize = Model.Item.GetRawValueString("TitleFontSize", "h4"); 155 string titleColor = Model.Item.GetString("TitleColor", "text-inherit"); 156 string titleOpacity = Model.Item.GetString("TitleOpacity", "opacity-100"); 157 string headingLevel = Model.Item.GetString("HeadingLevel", "h2"); 158 string headingLevelStart = $"<{headingLevel} class=\"{titleFontSize} {titleColor} {titleOpacity} m-0\">"; 159 string headingLevelStop = $"</{headingLevel}>"; 160 161 @headingLevelStart 162 @Model.Item.GetString("Title") 163 @headingLevelStop 164 } 165 } 166 167 @helper RenderBody() 168 { 169 if (!string.IsNullOrEmpty(Model.Item.GetString("Text"))) 170 { 171 string textColor = Model.Item.GetString("TextColor", "text-inherit"); 172 string textOpacity = Model.Item.GetString("TextOpacity", "opacity-100"); 173 174 <p class="@textColor @textOpacity m-0">@Model.Item.GetString("Text")</p> 175 } 176 } 177
OVER ONS

bluedrops
pool specialists
& suppliers

Bluedrops is een groothandel in het verdelen van zwembadmateriaal en -benodigdheden binnen de Benelux en Noord-Frankrijk.Ze verdelen ook een eigen merk: Blue Plus.

Onze producten

"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat."

onze service

Grote aandacht voor het zwembad van de toekomstBluedrops blinkt niet enkel uit in het aanbieden van producten met een hoge R&D-waarde, ze werken aandachtig mee aan het zwembad van de toekomst en gaan voluit voor duurzaamheid.

technische opleiding

Bluedrops gaat niet enkel voor een opgeleid team, maar biedt ook opleidingen aan externen.

Ons team

De Bluedroppers zijn toppers. Ze creëren toegevoegde waarde, elke dag opnieuw. Elk lid heeft eigen talenten en mogelijkheden, maar samen geven ze het beste van zichzelf. De krachten worden gebundeld en zorgen zo voor een tevreden klant.

Onze partners

"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat."

Jobs

Voel jij het ook? Stroomt het Blue Drops DNA door je lijf? Bekijk dan hier onze vacatures en wie weet word jij binnenkort ook Blue Dropper.

Explore more

Contact

Vragen over ons productaanbod? Of meteen een offerte aanvragen? Neem contact met ons op.

Neem contact op
Opleiding cubetto

Opleiding cubetto

Op 17 maart organiseren wij een technische training voor de poolhouses van Cubetto. De poolhouses zijn eenvoudig en snel te plaatsen doordat ze bestaan uit houtschakelbouw.

Door op 'Alles accepteren' te klikken geeft u toestemming dat wij informatie over u kunnen verzamelen voor verschillende doeleinden, waaronder: Functionaliteit, Statistieken en Marketing