Error executing template "Designs/vibocold/_parsed/standard.parsed.cshtml"
System.NullReferenceException: Object reference not set to an instance of an object.
   at Vibocold.CustomModules.Helpers.GroupHelper.IsGroupNoIndex(Group group) in C:\repo\Vibocold\Vibocold\CustomModules\Helpers\GroupHelper.cs:line 37
   at Vibocold.CustomModules.Helpers.GroupHelper.IsGroupNoIndex(String groupId, String languageId) in C:\repo\Vibocold\Vibocold\CustomModules\Helpers\GroupHelper.cs:line 32
   at CompiledRazorTemplates.Dynamic.RazorEngine_e503e45928e649579ae0e14bad0da8c9.Execute() in D:\dynamicweb.net\Solutions\Vibocold2021.staging\Files\Templates\Designs\vibocold\_parsed\standard.parsed.cshtml:line 118
   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.PageViewModel>
  2     @using Dynamicweb;
  3     @using Vibocold.CustomModules.Helpers
  4     
  5     <!doctype html>
  6     @{
  7         string charset = "UTF-8";
  8         bool useShortLang = Model.Area.Item.GetBoolean("MiscSettings.UseShort_HTMLLang");
  9         string htmlLang = Pageview.GlobalTags.FirstOrDefault(t => t.Name.Equals("Global:Area.LongLang")).Value;
 10         htmlLang = useShortLang && htmlLang.IndexOf("-") != -1 ? htmlLang.Substring(0, htmlLang.IndexOf("-")) : htmlLang;
 11     
 12         var productId = Context.Current.Request["ProductID"];
 13         var groupId = Context.Current.Request["GroupID"];
 14     
 15         var darkMode = false;
 16     
 17         if (!string.IsNullOrWhiteSpace(productId))
 18         {
 19             var product = Dynamicweb.Ecommerce.Services.Products.GetProductById(productId, "", Pageview.Area.EcomLanguageId);
 20             
 21             darkMode = product?.DefaultGroup?.IsDarkMode() == true;
 22         }
 23     
 24         if (!string.IsNullOrWhiteSpace(groupId))
 25         {
 26             var group = Dynamicweb.Ecommerce.Services.ProductGroups.GetGroup(groupId, Pageview.Area.EcomLanguageId);
 27     
 28             darkMode = group.IsDarkMode();
 29         }
 30     
 31         string pageId = Pageview.Page.ID.ToString();
 32     
 33         string themeName = Model.PropertyItem.GetItem("Theme")?.GetString("Theme")?.ToLower();
 34         string templateName = Pageview.GlobalTags.FirstOrDefault(t => t.Name.Equals("Global:Pageview.LayoutTemplate")).Value.Replace("test.", "").Replace(".cshtml", "").Replace(".html", "").Replace(".", "").ToLower();
 35         string bodyClass = "standy " + templateName + "-page " + themeName + " " + Pageview.Page.NavigationTag;
 36     
 37         int extranetParagraphId = Model.Area.Item.GetInt32("ExtranetParagraph");
 38         string piwikScript = Model.Area.Item.GetItem("Piwik")?.GetString("PiwikScript");
 39     
 40         var miniCartCookie = Context.Current.Request.Cookies["miniCartOpen"]?.Value;
 41         bool cartOpen = !string.IsNullOrEmpty(miniCartCookie) && bool.TryParse(miniCartCookie, out bool miniCartCookieBool) ? miniCartCookieBool : false;
 42         string cartOpenStyle = cartOpen ? "margin-top: 0px; position: fixed; overflow: hidden; width: 100%;" : string.Empty;
 43         string cartOpenClass = cartOpen ? "scoll-lock" : string.Empty;
 44     
 45     }
 46     <html lang="@htmlLang" style="@cartOpenStyle" class="@cartOpenClass">
 47     <head data-settings="disableparsing:true">
 48         <script>
 49             window.dataLayer = window.dataLayer || [];
 50         </script>
 51         <meta charset="@charset">
 52         <meta http-equiv="X-UA-Compatible" content="IE=edge">
 53         <meta name="viewport" content="width=device-width, initial-scale=1.0">
 54         <title>@Model.Title</title>
 55         @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel>
 56     
 57     @{
 58         string pageTitle = Model.Title;
 59         string pageOGTitle = Model.PropertyItem.GetItem("SocialMedia")?.GetString("Title");
 60     
 61         string primarydomain = Pageview.GlobalTags.FirstOrDefault(t => t.Name.Equals("Global:Request.Scheme")).Value +"://" + Pageview.GlobalTags.FirstOrDefault(t => t.Name.Equals("Global:Area.Primarydomain")).Value;
 62         string pageDescription = Model.Description;
 63         string pageOGDescription = Model.PropertyItem.GetItem("SocialMedia")?.GetString("Description");
 64     
 65         string ogSiteName = Model.Area.Item.GetItem("SocialMedia")?.GetString("SiteName");
 66         string ogTitle = !string.IsNullOrWhiteSpace(pageOGTitle) ? pageOGTitle : pageTitle;
 67         string ogUrl = primarydomain + Pageview.SearchFriendlyUrl;
 68         string ogDescription = !string.IsNullOrWhiteSpace(pageOGDescription) ? pageOGDescription : pageDescription; ;
 69     
 70         bool areaOGImageHasFocalPoint = Model.Area.Item.GetItem("SocalMedia")?.GetFile("DefaultImage")?.HasFocalPoint() == true;
 71         string areaOGImage = "/admin/public/getimage.ashx?Image=" + Model.Area.Item.GetItem("SocialMedia").GetString("DefaultImage");
 72         areaOGImage = areaOGImageHasFocalPoint ? areaOGImage + "&Crop=7&" + Model.Area.Item.GetItem("SocalMedia").GetItem("DefaultImage").GetString("FocalPointParameters") : "&Crop=0";
 73     
 74         bool pageOGImageHasFocalPoint = Model.PropertyItem.GetItem("SocialMedia")?.GetFile("Image")?.HasFocalPoint() == true;
 75         string pageOGImage = "/admin/public/getimage.ashx?Image=" + Model.PropertyItem.GetItem("SocialMedia")?.GetString("Image");
 76         pageOGImage = pageOGImageHasFocalPoint ? pageOGImage + "&Crop=7&" + Model.PropertyItem.GetItem("SocialMedia")?.GetItem("Image")?.GetString("FocalPointParameters") : "&Crop=0";
 77     
 78         string ogImage = !string.IsNullOrWhiteSpace(Model.PropertyItem.GetItem("SocialMedia")?.GetString("Image")) ? pageOGImage : areaOGImage;
 79     
 80         string facebookDomainVerificationId = Model.Area.Item.GetString("Item.Area.FacebookDomainVerification_Id");
 81     }
 82     <meta property="og:site_name" content="@ogSiteName" />
 83     <meta property="og:title" content="@ogTitle" />
 84     <meta property="og:url" content="@ogUrl" />
 85     <meta property="og:description" content="@ogDescription" />
 86     <meta property="og:image" content="@ogImage" />
 87     
 88     @if (!string.IsNullOrWhiteSpace(facebookDomainVerificationId))
 89     {
 90         <meta name="facebook-domain-verification" content="facebookDomainVerificationId" />
 91     }
 92         @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel>
 93     
 94     @{
 95         string cssEditDate = System.IO.File.GetLastWriteTime(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/css/main.min.css")).ToString();
 96         cssEditDate = cssEditDate.Replace(":", "").Replace(" ", "").Replace("-", "");
 97     }
 98     <link rel="stylesheet" href="/files/templates/designs/vibocold/assets/css/main.min.css?v=@cssEditDate" />
 99         @using Dynamicweb.Frontend
100     @using Vibocold.CustomModules.Helpers
101     @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel>
102     
103     @{
104         string sfu = Pageview.SearchFriendlyUrl;
105     
106         var sfuProductId = Dynamicweb.Context.Current.Request["ProductID"];
107         var sfuGroupId = Dynamicweb.Context.Current.Request["GroupID"];
108         var noindex = false;
109         var languageId = PageView.Current().Area.EcomLanguageId;
110     
111         if (!string.IsNullOrWhiteSpace(sfuProductId))
112         {
113             noindex = ProductHelper.IsProductNoIndex(sfuProductId, languageId);
114         }
115     
116         if (!string.IsNullOrWhiteSpace(sfuGroupId))
117         {
118             noindex = GroupHelper.IsGroupNoIndex(sfuGroupId, languageId);
119         }
120     
121     }
122     @Model.MetaTags
123     @if (System.Web.HttpContext.Current.Request.Url.Host.Contains("staging.vibocold.dk") || noindex)
124     {
125         <meta name="robots" content="noindex,nofollow" />
126     }
127     @foreach (var language in Model.Area.Languages)
128     {
129         string url = FriendlyUrlHelper.GetFriendlyPageUrl(Model.ID, language.Culture);
130     
131         var groupUrl = FriendlyUrlHelper.GetFriendlyGroupUrl(Dynamicweb.Context.Current.Request["GroupID"], Model.ID, language.Culture);
132         var productUrl = FriendlyUrlHelper.GetFriendlyProductUrl(sfuProductId, Model.ID, language.Culture);
133     
134         if (!string.IsNullOrWhiteSpace(Dynamicweb.Context.Current.Request["GroupID"]) && string.IsNullOrWhiteSpace(productUrl))
135         {
136             url = groupUrl;
137         }
138         else if (!string.IsNullOrWhiteSpace(sfuProductId))
139         {
140             url = productUrl;
141         }
142     
143         if (language.PrimaryDomain.IndexOf("dev.vibocold.dk") == -1 && !string.IsNullOrWhiteSpace(url))
144         {
145             if (language.IsCurrent && !Model.MetaTags.Contains("canonical"))
146             {
147                 <link rel="canonical" href="@url" />
148             }
149             <link rel="alternate" href='@url' hreflang='@language.Culture' />
150     
151             if(language.Culture == "en-GB")
152             {
153                 <link rel="alternate" href='@url' hreflang='x-default' />
154             }
155         }
156     }
157         @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel>
158     
159     @{
160         string schemaOrgName = Model.Area.Item.GetItem("Organization")?.GetString("Name");
161         string schemaOrgAddress = Model.Area.Item.GetItem("Organization")?.GetString("Address");
162         string schemaOrgPostalCode = Model.Area.Item.GetItem("Organization")?.GetString("ZipCode");
163         string schemaOrgCity = Model.Area.Item.GetItem("Organization")?.GetString("City");
164         string schemaOrgRegion = Model.Area.Item.GetItem("Organization")?.GetString("Region");
165         string schemaOrgCountry = Model.Area.Item.GetItem("Organization")?.GetString("Country");
166         string schemaOrgPhone = Model.Area.Item.GetItem("Organization")?.GetString("Phone");
167         string schemaOrgEmail = Model.Area.Item.GetItem("Organization")?.GetString("Email");
168         string linkedInURL = Model.Area.Item.GetItem("SocialMedia")?.GetString("LinkedIn");
169         string facebookURL = Model.Area.Item.GetItem("SocialMedia")?.GetString("Facebook");
170         string youtubeURL = Model.Area.Item.GetItem("SocialMedia")?.GetString("YouTube");
171         string instagramURL = Model.Area.Item.GetItem("SocialMedia")?.GetString("Instagram");
172         string salePhone = Model.Area.Item.GetItem("Footer")?.GetString("PhoneSales");
173         string saleEmail = Model.Area.Item.GetItem("Footer")?.GetString("EmailSales");
174         string servicePhone = Model.Area.Item.GetItem("Footer")?.GetString("PhoneService");
175         string serviceEmail = Model.Area.Item.GetItem("Footer")?.GetString("EmailService");
176     
177         string sameAs = "";
178     
179         if (!string.IsNullOrWhiteSpace(linkedInURL))
180         {
181             sameAs += "\"" + linkedInURL + "\"";
182         }
183     
184         if (!string.IsNullOrWhiteSpace(facebookURL))
185         {
186             if (sameAs.Length > 0)
187             {
188                 sameAs += ",\"" + facebookURL + "\"";
189             }
190             else
191             {
192                 sameAs += "\"" + facebookURL + "\"";
193             }
194         }
195     
196         if (!string.IsNullOrWhiteSpace(youtubeURL))
197         {
198             if (sameAs.Length > 0)
199             {
200                 sameAs += ",\"" + youtubeURL + "\"";
201             }
202             else
203             {
204                 sameAs += "\"" + youtubeURL + "\"";
205             }
206         }
207     
208         if (!string.IsNullOrWhiteSpace(instagramURL))
209         {
210             if (sameAs.Length > 0)
211             {
212                 sameAs += ",\"" + instagramURL + "\"";
213             }
214             else
215             {
216                 sameAs += "\"" + instagramURL + "\"";
217             }
218         }
219     
220         var contactPoints = new List<string>();
221     
222         // Sales contact point
223         if (!string.IsNullOrWhiteSpace(salePhone) || !string.IsNullOrWhiteSpace(saleEmail))
224         {
225             var salesContact = $@"
226         {{
227             ""@@type"": ""ContactPoint"",
228             ""telephone"": ""{salePhone}"",
229             ""email"": ""{saleEmail}"",
230             ""contactType"": ""sales"",
231             ""areaServed"": ""DK"",
232             ""availableLanguage"": [""Danish"", ""English""]
233         }}";
234             contactPoints.Add(salesContact.Trim());
235         }
236     
237         // Service contact point
238         if (!string.IsNullOrWhiteSpace(servicePhone) || !string.IsNullOrWhiteSpace(serviceEmail))
239         {
240             var serviceContact = $@"
241         {{
242             ""@@type"": ""ContactPoint"",
243             ""telephone"": ""{servicePhone}"",
244             ""email"": ""{serviceEmail}"",
245             ""contactType"": ""service"",
246             ""areaServed"": ""DK"",
247             ""availableLanguage"": [""Danish""]
248         }}";
249             contactPoints.Add(serviceContact.Trim());
250         }
251     }
252     <script type="application/ld+json">
253         {
254         "@@context": "http://schema.org",
255         "@@type": "Organization",
256         "name": "@schemaOrgName",
257         "address": {
258             "@@type": "PostalAddress",
259             "streetAddress": "@schemaOrgAddress",
260             "postalCode": "@schemaOrgPostalCode",
261             "addressLocality": "@schemaOrgCity",
262             "addressRegion": "@schemaOrgRegion",
263             "addressCountry": "@schemaOrgCountry"
264         },
265         "url": "@System.Web.HttpContext.Current.Request.Url.Scheme@("://")@System.Web.HttpContext.Current.Request.Url.Host",
266         "telephone": "@schemaOrgPhone",
267         "email": "@schemaOrgEmail",
268         "description": "Vibocold - Totalløsninger i køl, frys og varmeregulerende produkter",
269         "vatID": "DK71383911",
270         "sameAs": [
271             @sameAs
272         ]
273         @if (contactPoints.Count > 0)
274         {
275             @:,"contactPoint": [
276             @(string.Join(",", contactPoints));
277             @:]
278         }
279         }
280     </script>
281         @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel>
282     
283     @{
284         string ipAddress = System.Web.HttpContext.Current.Request.UserHostAddress;
285         string googleSiteVerificationID = Model.Area.Item.GetItem("Google").GetString("SiteVerification_ID");
286         string primaryGoogleTagManagerID = Model.Area.Item.GetItem("Google").GetString("Primary_Google_Tag_Manager_ID");
287         string secondaryGoogleTagManagerID = Model.Area.Item.GetItem("Google").GetString("Secondary_Google_Tag_Manager_ID");
288     }
289     <script>
290         dataLayer = [{
291             'ipaddress': '@ipAddress'
292         }];
293     </script>
294     @if (!string.IsNullOrWhiteSpace(googleSiteVerificationID))
295     {
296         <meta name="google-site-verification" content="@googleSiteVerificationID" />
297     }
298     @if (!string.IsNullOrEmpty(primaryGoogleTagManagerID))
299     {
300         <script>
301             (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
302             new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
303             j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
304             'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
305                 })(window, document, 'script', 'dataLayer', '@primaryGoogleTagManagerID');
306         </script>
307     }
308     @if (!string.IsNullOrEmpty(secondaryGoogleTagManagerID))
309     {
310         <script>
311             (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
312             new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
313             j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
314             'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
315                 })(window, document, 'script', 'dataLayer', '@secondaryGoogleTagManagerID');
316         </script>
317     }
318     @SnippetStart("GoogleNoScript")
319     @if (!string.IsNullOrEmpty(primaryGoogleTagManagerID))
320     {
321         <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=@primaryGoogleTagManagerID" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
322     }
323     @if (!string.IsNullOrEmpty(secondaryGoogleTagManagerID))
324     {
325         <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=@secondaryGoogleTagManagerID" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
326     }
327     @SnippetEnd("GoogleNoScript")
328         @RenderSnippet("PreloadPrefetchPreconect")
329         <link rel="icon" type="image/x-icon" href="/Files/Images/Hjemmeside/Graphic/favicon.ico">
330         <link href="/Files/Images/Hjemmeside/Graphic/apple-touch-icon.png" rel="icon" type="image/png">
331     </head>
332     <body class="@bodyClass" data-page-id="@pageId">
333         @{
334             int slideInCart = Model.Area.Item.GetInt32("SlideInCartParagraph");
335     
336             if (slideInCart > 0)
337             {
338                 <text>@RenderParagraphContent(slideInCart)</text>
339             }
340         }
341         @piwikScript
342         @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel>
343     
344     @SnippetStart("PiwikCartUpdate")
345     <script type="text/javascript">
346         window._paq = window._paq || [];
347         var dataLayerObj = dataLayer.find(function (obj) { return obj.event === "cart_update" });
348         if (dataLayerObj) {
349             var cart_amount = dataLayerObj.cart_amount;
350             var products = dataLayerObj.products;
351             products.forEach(function (product) {
352                 _paq.push(["addEcommerceItem", product.sku, product.name, product.category, product.price, product.quantity]);
353             });
354             _paq.push(["trackEcommerceCartUpdate", cart_amount]);
355         }
356     </script>
357     @SnippetEnd("PiwikCartUpdate")
358     @SnippetStart("PiwikOrderConfirm")
359     <script type="text/javascript">
360         window._paq = window._paq || [];
361         var dataLayerObj = dataLayer.find(function (obj) { return obj.event === "order_confirmation" });
362         if (dataLayerObj) {
363             var orderId = dataLayerObj.order_id;
364             var grandTotal = dataLayerObj.grand_total;
365             var subTotal = dataLayerObj.subtotal;
366             var tax = dataLayerObj.tax;
367             var shipping = dataLayerObj.shipping;
368             var discount = dataLayerObj.discount;
369             var products = dataLayerObj.products;
370             products.forEach(function (product) {
371                 _paq.push(["addEcommerceItem", product.sku, product.name, product.category, product.price, product.quantity]);
372             });
373             _paq.push(["trackEcommerceOrder", orderId, grandTotal, subTotal, tax, shipping, discount]);
374         }
375     </script>
376     @SnippetEnd("PiwikOrderConfirm")
377         @RenderSnippet("GoogleNoScript")
378         <a href="#main" class="skip-to-main">@Translate("Translate_Skip_to_main_content")</a>
379         @using Dynamicweb.Frontend
380     @using Vibocold.CustomModules.Helpers
381     @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel>
382     
383     @{
384         int orderlineCount = Convert.ToInt32(Model.Cart?.TotalProductsCount);
385     
386         bool hasUser = Model.CurrentUser.ID > 0;
387         Dynamicweb.Security.UserManagement.User user = null;
388         if (hasUser)
389         {
390             user = Dynamicweb.Security.UserManagement.User.GetUserByID(Model.CurrentUser.ID);
391         }
392         string secondaryCssClass = "navigation-secondary";
393         string searchPageId = Model.Area.Item.GetItem("MiscSettings")?.GetString("SearchPage");
394         string searchAction = "/Default.aspx?Id=" + searchPageId;
395     
396         if (orderlineCount > 0 && hasUser)
397         {
398             secondaryCssClass += " navigation-secondary--has-cart navigation-secondary--has-user";
399         }
400     
401     }
402     <nav class="navigation">
403         <a href="/" class="navigation__logo">
404             @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/vibocold_logo.svg")))
405             {
406                 <text>@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/vibocold_logo.svg"))</text>
407             }
408         </a>
409         @{
410             var navigationSettings = new Dynamicweb.Frontend.Navigation.NavigationSettings()
411             {
412                 RootAreaId = 0,
413                 RootPageId = 0,
414                 StartLevel = 1,
415                 StopLevel = 3,
416                 ExpandMode = Dynamicweb.Frontend.Navigation.ExpandMode.All
417             };
418     
419             var navigationTemplate = "master/partials/navigation.desktop.cshtml";
420     
421         }
422         <div class="navigation__desktop">
423             @Navigation.RenderNavigation(navigationTemplate, navigationSettings)
424         </div>
425         <div class="navigation__mobile">
426             @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel>
427     
428     <div class="dwnavigation onlyMobile" id="primaryNavigation" data-settings="template:ul-li.xslt;startlevel:1;endlevel:3;expandmode:all;id:navigation-primary"></div>
429     @RenderNavigation(
430         new
431         {
432             StartLevel = 1,
433             EndLevel = 3,
434             ExpandMode = Dynamicweb.Frontend.Navigation.ExpandMode.All,
435             id = "navigation-primary",
436             Template = "ul-li.xslt"
437         }
438     )
439         </div>
440         <form class="navigation__search form" action="@searchAction">
441             <input type="hidden" name="Id" value="@searchPageId" />
442             <div class="form__field-wrap form__field-wrap--search">
443                 <input type="text" name="q" placeholder="@Translate("Translate_Navigation_Search-placeholder")" class="form__field" />
444                 <input type="hidden" name="lang" placeholder="Søg" class="form__field" value="@Pageview.Area.EcomLanguageId" />
445                 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/search.svg")))
446                 {
447                     <span class="icon icon-search">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/search.svg"))</span>
448                 }
449             </div>
450         </form>
451         <ul class="@secondaryCssClass">
452             @* RP: TMP REMOVED AS WE DON'T HAVE "TILBUDSLISTE" JUST YET *@
453             <!--li class="navigation-secondary__item navigation-secondary__item--favourites">
454                 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/heart.svg")))
455                 {
456                     <span class="icon icon-heart">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/heart.svg"))</span>
457                 }
458                 <span class="navigation-secondary__item-counter">0</span>
459             </li-->
460             <li class="navigation-secondary__item navigation-secondary__item--language">
461                 <select onchange="location = this.options[this.selectedIndex].value;" class="navigation-secondary__language-select">
462     
463                     @{
464                         IEnumerable<Dynamicweb.Content.Area> areas = Dynamicweb.Services.Areas.GetAreas().OrderByDescending(a => a.ID == Model.Area.ID);
465                         var scheme = !string.IsNullOrEmpty(Pageview.GlobalTags.FirstOrDefault(t => t.Name.Equals("Global:Request.Scheme")).Value + "://") ? Pageview.GlobalTags.FirstOrDefault(t => t.Name.Equals("Global:Request.Scheme")).Value + "://" : "https://";
466                     }
467                     @foreach (Dynamicweb.Content.Area area in areas)
468                     {
469                         if (!string.IsNullOrEmpty(area.DomainLock))
470                         {
471     
472                             string url = FriendlyUrlHelper.GetFriendlyPageUrl(Model.ID, area.Culture);
473     
474                             var groupUrl = FriendlyUrlHelper.GetFriendlyGroupUrl(Dynamicweb.Context.Current.Request["GroupID"], Model.ID, area.Culture);
475                             var productUrl = FriendlyUrlHelper.GetFriendlyProductUrl(Dynamicweb.Context.Current.Request["ProductID"], Model.ID, area.Culture);
476     
477                             if (!string.IsNullOrWhiteSpace(Dynamicweb.Context.Current.Request["GroupID"]))
478                             {
479                                 url = groupUrl;
480                             }
481                             else if (!string.IsNullOrWhiteSpace(Dynamicweb.Context.Current.Request["ProductID"]))
482                             {
483                                 url = productUrl;
484                             }
485     
486                             if (string.IsNullOrWhiteSpace(url))
487                             {
488                                 url = scheme + area.DomainLock;
489                             }
490                         
491                             <option class="navigation-secondary__language @(area.ID == Model.Area.ID ? "navigation-secondary__language--active" : "")" value="@(url)">@(area.Culture.Split('-')?.FirstOrDefault()?.ToUpper())</option>
492                         }
493                     }
494     
495                 </select>
496             </li>
497     
498             <li class="navigation-secondary__item navigation-secondary__item--cart" data-action="slide-in" data-target="slideInCart">
499                 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/cart.svg")))
500                 {
501                     <span class="icon icon-cart">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/cart.svg"))</span>
502                 }
503                 @if (orderlineCount > 0)
504                 {
505                     <span class="navigation-secondary__item-counter">@orderlineCount</span>
506                 }
507             </li>
508             @if (hasUser)
509             {
510                 <li class="navigation-secondary__item navigation-secondary__item--user" data-action="slide-in" data-target="signOut">
511                     @{
512                         string userFirstName = user.FirstName;
513                         string userLastName = user.LastName;
514                         string userCompany = user.Company;
515                         string user_UserName = user.UserName;
516                         string userInitials = string.Empty;
517                         if (userFirstName?.Length > 0)
518                         {
519                             userInitials = userInitials + userFirstName?.Substring(0, 1);
520                         }
521                         if (userLastName?.Length > 0)
522                         {
523                             userInitials = userInitials + userLastName?.Substring(0, 1);
524                         }
525                         if (userInitials.Length == 0 && user_UserName.Length > 1)
526                         {
527                             userInitials = user_UserName.Substring(0, 2);
528                         }
529                         if (userInitials.Length == 0 && userCompany.Length > 1)
530                         {
531                             userInitials = userCompany.Substring(0, 2);
532                         }
533                     }
534                     @if (userInitials.Length > 0)
535                     {
536                         <div class="navigation-secondary__profile-wrapper">
537                             <span class="navigation-secondary__initial">@userInitials.ToUpper()</span>
538                         </div>
539                     }
540                     else if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/profile.svg")))
541                     {
542                         <div class="navigation-secondary__profile-wrapper">
543                             <span class="icon icon-profile icon-profile-logged-in">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/profile-solid.svg"))</span>
544                         </div>
545                     }
546     
547                     @SnippetStart("SlideIns")
548                     @{
549                         string close = Translate("Translate_Slide-in_close");
550                         string signOutHeadline = Translate("Translate_Sign-out_headline");
551                         string signOutText = Translate("Translate_Sign-out_text");
552                         string userName = Model.CurrentUser.Name;
553                         string userUserName = Model.CurrentUser.UserName;
554                         string signOutButtonText = Translate("Translate_Sign-out_button-text");
555                         string redirectUrl = RedirectHelper.GetLoginReturnUrl();
556                         string formAction = "/Admin/Public/ExtranetLogoff.aspx?Redirect=" + redirectUrl;
557     
558                         string welcomeText = Translate("Translate_Sign-out_welcome-text");
559                         string welcomeSummary = Translate("Translate_Sign-out_summary-text");
560                         Dynamicweb.Content.PageService pageService = new Dynamicweb.Content.PageService();
561     
562                         int customerCenterPageId = pageService.GetPageByNavigationTag(Model.Area.ID, "Kundecenter")?.ID ?? 0;
563                         var productsPageId = pageService.GetPageByNavigationTag(Model.Area.ID, "ProductList")?.ID ?? 0;
564                         var myProductsPageId = pageService.GetPageByNavigationTag(Model.Area.ID, "MyProducts")?.ID ?? 0;
565                         var sparepartsPageId = pageService.GetPageByNavigationTag(Model.Area.ID, "Spareparts")?.ID ?? 0;
566     
567                         IEnumerable<Dynamicweb.Content.Page> customerCenterPages = pageService.GetPagesByParentID(customerCenterPageId);
568     
569                         var myProductsUrl = SearchEngineFriendlyURLs.GetFriendlyUrl($"Default.aspx?ID={myProductsPageId}&GroupID={"GROUP368"}", areas.FirstOrDefault(x => x.ID == Model.Area.ID).EcomLanguageId);
570                         var sparepartsPageUrl = SearchEngineFriendlyURLs.GetFriendlyUrl(sparepartsPageId);
571     
572                         bool hasMyProducts = false;
573                         var _assortmentService = new Dynamicweb.Ecommerce.Assortments.AssortmentService();
574                         var _productService = new Dynamicweb.Ecommerce.Products.ProductService();
575     
576                         if (UserProductAccessHelper.IsUserVibocoldUser(user))
577                         {
578                             var myProducts = _productService.GetProductsByGroupId("GROUP368", false, Pageview.Area.EcomLanguageId, false);
579                             var userAssortmentsIds = _assortmentService.GetAssortmentIdsByUser(user);
580                             hasMyProducts = myProducts.Where(mp => _assortmentService.GetAssortmentsByProduct(mp).Where(a => userAssortmentsIds.Contains(a.ID)).Any()).Any();
581                         }
582                         else
583                         {
584                             var myProducts = _productService.GetProductsByGroupId("GROUP368", true, Pageview.Area.EcomLanguageId, false);
585                             var userAssortmentsIds = _assortmentService.GetAssortmentIdsByUser(user);
586                             hasMyProducts = myProducts.Where(mp => mp.Active == true && mp.Discontinued == false && _assortmentService.GetAssortmentsByProduct(mp).Where(a => userAssortmentsIds.Contains(a.ID)).Any()).Any();
587                         }
588                     }
589                     <div class="slide-in" id="signOut">
590                         <div class="slide-in__content slide-in__content--center-content customer-center module-white">
591                             <div class="slide-in__close">
592                                 <span></span>
593                                 <small>@close</small>
594                             </div>
595                             <div class="slide-in__headline new-style-h3">@welcomeText @user.FirstName</div>
596                             <p class="customer-center__user-container">@user.Company (@userUserName)</p>
597                             <p class="customer-center__welcome-summary">@welcomeSummary</p>
598     
599                             @if (customerCenterPages.Any())
600                             {
601                                 <ul class="customer-center__list">
602                                     @foreach (var page in customerCenterPages)
603                                     {
604                                         <li class="customer-center__item">
605                                             <a class="btn btn-cta customer-center__link" href="@page.GetPageHrefValue()">
606                                                 <span class="btn__text">@page.GetDisplayName()</span>
607                                                 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/icons/chevron.svg")))
608                                                 {
609                                                     <span class="icon icon-arrow-large">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/icons/chevron.svg"))</span>
610                                                 }
611                                             </a>
612                                         </li>
613                                     }
614                                     @if (!string.IsNullOrWhiteSpace(myProductsUrl) && hasMyProducts)
615                                     {
616                                         <li class="customer-center__item my-products-item">
617                                             <a class="btn btn-cta customer-center__link" href="@myProductsUrl">
618                                                 <span class="btn__text">@Translate("Translate_Slide-in_My_Products")</span>
619                                                 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/icons/chevron.svg")))
620                                                 {
621                                                     <span class="icon icon-arrow-large">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/icons/chevron.svg"))</span>
622                                                 }
623                                             </a>
624                                         </li>
625                                     }
626                                     @if (UserProductAccessHelper.IsUserVibocoldUser(user))
627                                     {
628                                         <li class="customer-center__item">
629                                             <a class="btn btn-cta customer-center__link" href="@sparepartsPageUrl">
630                                                 <span class="btn__text">@Translate("Translate_Slide-in_Spareparts")</span>
631                                                 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/icons/chevron.svg")))
632                                                 {
633                                                     <span class="icon icon-arrow-large">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/icons/chevron.svg"))</span>
634                                                 }
635                                             </a>
636                                         </li>
637                                     }
638                                 </ul>
639                             }
640                             <form class="form form--login" name="ExtranetUserForm" id="ExtranetUserForm" method="post" action="@formAction">
641                                 <div class="form__input-container">
642                                     <button type="submit" class="btn btn-primary">@signOutButtonText</button>
643                                 </div>
644                             </form>
645                         </div>
646                     </div>
647                     @SnippetEnd("SlideIns")
648                 </li>
649             }
650             else
651             {
652                 <li class="navigation-secondary__item" data-action="slide-in" data-target="signIn">
653                     @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/profile.svg")))
654                     {
655                         <span class="icon icon-profile">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/profile.svg"))</span>
656                     }
657                 </li>
658             }
659         </ul>
660         <button class="navigation__btn"><span></span></button>
661     </nav>
662         <main id="main" class="@($"{(darkMode ? "darkmode" : "" )}")">
663             @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel>
664     
665     
666     
667     @Model.Placeholder("dwcontent", "content", "default:true;sort:1")
668     
669     
670             <button class="scroll-top">
671                 <span class="scroll-top__icon">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/icons/chevron.svg"))</span>
672             </button>
673         </main>
674         @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel>
675     
676     @{
677         string headlineSales = Model.Area.Item.GetItem("Footer")?.GetString("HeadlineSales");
678         string phoneSales = Model.Area.Item.GetItem("Footer")?.GetString("PhoneSales");
679         string phoneSalesLink = "tel:" + phoneSales.Replace(" ", "");
680         string emailSales = Model.Area.Item.GetItem("Footer")?.GetString("EmailSales");
681         string emailSalesLink = "mailto:" + emailSales.Replace(" ", "");
682         string openingHoursLabel = Model.Area.Item.GetItem("Footer")?.GetString("OpeningHoursLabel");
683     
684         string headlineService = Model.Area.Item.GetItem("Footer")?.GetString("HeadlineService");
685         string phoneService = Model.Area.Item.GetItem("Footer")?.GetString("PhoneService");
686         string phoneServiceLink = "tel:" + phoneService.Replace(" ", "");
687         string emailService = Model.Area.Item.GetItem("Footer")?.GetString("EmailService");
688         string emailServiceLink = "mailto:" + emailService.Replace(" ", "");
689     
690         string organizationName = Model.Area.Item.GetItem("Organization")?.GetString("Name");
691         string organizationAddress = Model.Area.Item.GetItem("Organization")?.GetString("Address");
692         string organizationZipCode = Model.Area.Item.GetItem("Organization")?.GetString("Zipcode");
693         string organizationCity = Model.Area.Item.GetItem("Organization")?.GetString("City");
694     
695         string directionsLink = Model.Area.Item.GetItem("Footer")?.GetItem("GetDirectionsLink")?.GetString("Link");
696         string directionsTitle = Model.Area.Item.GetItem("Footer")?.GetItem("GetDirectionsLink")?.GetString("Title");
697         string directionsText = Model.Area.Item.GetItem("Footer")?.GetItem("GetDirectionsLink")?.GetString("Text");
698     
699         string organizationPhone = Model.Area.Item.GetItem("Organization")?.GetString("Phone");
700         string organizationPhoneLink = "tel:" + organizationPhone.Replace(" ", "");
701         string organizationEmail = Model.Area.Item.GetItem("Organization")?.GetString("Email");
702         string organizationEmailLink = "mailto:" + organizationEmail.Replace(" ", "");
703     
704         string cvrLabel = Model.Area.Item.GetItem("Footer")?.GetString("CVRLabel");
705         string cvr = Model.Area.Item.GetItem("Footer")?.GetString("CVR");
706     
707         string controlReportLink = Model.Area.Item.GetItem("Footer")?.GetItem("ControlReport")?.GetString("Link");
708         string controlReportTitle = Model.Area.Item.GetItem("Footer")?.GetItem("ControlReport")?.GetString("Title");
709         string controlReportText = Model.Area.Item.GetItem("Footer")?.GetItem("ControlReport")?.GetString("Text");
710         string linkedInUrl = Model.Area.Item.GetItem("SocialMedia").GetString("LinkedIn");
711         string facebookUrl = Model.Area.Item.GetItem("SocialMedia").GetString("Facebook");
712         string youTubeUrl = Model.Area.Item.GetItem("SocialMedia").GetString("YouTube");
713     
714         @* This is for the header on the contact page. It needs the info from sales + service and they are not accesible in the paragraph template like here *@
715         <text>
716             @SnippetStart("HeaderContactInfo")
717             <li class="header__contact-info-item">
718                 <span class="preline">@headlineSales</span>
719                 <a class="header__contact-info-link" href="@phoneSalesLink">@phoneSales</a>
720                 <a class="header__contact-info-link" href="@emailSalesLink">@emailSales</a>
721             </li>
722             <li class="header__contact-info-item">
723                 <span class="preline">@headlineService</span>
724                 <a class="header__contact-info-link" href="@phoneServiceLink">@phoneService</a>
725                 <a class="header__contact-info-link" href="@emailServiceLink">@emailService</a>
726                 <span class="header__contact-info-byline">
727                     <span>@openingHoursLabel</span>
728                     @foreach (var openingHour in Model.Area.Item.GetItem("Footer").GetItems("OpeningHours"))
729                     {
730                         <span>@openingHour.GetString("Text")</span>
731                     }
732                 </span>
733             </li>
734             @SnippetEnd("HeaderContactInfo")
735             @SnippetStart("NavigationContactInfo")
736             <div>
737                 <span class="preline">@headlineSales</span>
738                 <a class="navigation-primary__contact-link" href="@phoneSalesLink">@phoneSales</a>
739                 <a class="navigation-primary__contact-link" href="@emailSalesLink">@emailSales</a>
740             </div>
741             <div>
742                 <span class="preline">@headlineService</span>
743                 <a class="navigation-primary__contact-link" href="@phoneServiceLink">@phoneService</a>
744                 <a class="navigation-primary__contact-link" href="@emailServiceLink">@emailService</a>
745                 <b class="navigation-primary__opening-hours">
746                     <span>@openingHoursLabel</span>
747                     @foreach (var openingHour in Model.Area.Item.GetItem("Footer").GetItems("OpeningHours"))
748                     {
749                         <span>@openingHour.GetString("Text")</span>
750                     }
751                 </b>
752             </div>
753             @SnippetEnd("NavigationContactInfo")
754         </text>
755     }
756     <footer class="footer module module-blue-dark">
757         <div class="footer__contact">
758             <div class="footer__contact-sale">
759                 <span class="preline">@headlineSales</span>
760                 <a href="@phoneSalesLink">@phoneSales</a>
761                 <a href="@emailSalesLink">@emailSales</a>
762             </div>
763             <div class="footer__contact-service">
764                 <span class="preline">@headlineService</span>
765                 <a href="@phoneServiceLink">@phoneService</a>
766                 <a href="@emailServiceLink">@emailService</a>
767                 <div class="footer__contact-service-byline">
768                     <span>@openingHoursLabel</span>
769                     @foreach (var openingHour in Model.Area.Item.GetItem("Footer").GetItems("OpeningHours"))
770                     {
771                         <span>@openingHour.GetString("Text")</span>
772                     }
773                 </div>
774             </div>
775         </div>
776         <nav class="footer__nav">
777             @{
778                 int counter = 0;
779     
780                 foreach (var footerColumn in Model.Area.Item.GetItem("Footer").GetItems("Columns"))
781                 {
782                     string footerColumnHeadline = footerColumn.GetString("Headline");
783                     string footerColumnRichText = footerColumn.GetString("RichText");
784     
785                     <div class="footer__nav-content">
786                         <span class="preline">@footerColumnHeadline</span>
787                         @footerColumnRichText
788                         @if (counter == 1)
789                         {
790                             <a href="javascript:CookieConsent.renew();">@Translate("Translate_Cookiepolitik")</a>
791                         }
792                     </div>
793     
794                     counter++;
795                 }
796             }
797         </nav>
798         <div class="footer__info">
799             <div class="rich-text">
800                 <p>
801                     @organizationName
802                     <br />
803                     @organizationAddress
804                     <br />
805                     @organizationZipCode @organizationCity
806                 </p>
807                 <p>
808                     <a href="@directionsLink" target="_blank" title="@directionsTitle">
809                         @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/directions.svg")))
810                         {
811                             <text>@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/directions.svg"))</text>
812                         }
813                         <u>@directionsText</u>
814                     </a>
815                 </p>
816                 <p>
817                     <a href="@organizationPhoneLink"><b>@organizationPhone</b></a>
818                     <br />
819                     <a href="@organizationEmailLink"><b>@organizationEmail</b></a>
820                 </p>
821                 <p>
822                     @cvrLabel @cvr
823                 </p>
824             </div>
825             <a href="/" class="footer__logo">
826                 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/vibocold_logo.svg")))
827                 {
828                     <text>@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/svg/vibocold_logo.svg"))</text>
829                 }
830             </a>
831         </div>
832         <div class="footer__socket">
833             @if (!string.IsNullOrWhiteSpace(controlReportLink))
834             {
835                 <a href="@controlReportLink" title="@controlReportTitle">
836                     <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="29" height="33" viewBox="0 0 29 33">
837                         <defs>
838                             <pattern id="pattern" preserveAspectRatio="none" width="100%" height="100%" viewBox="0 0 57 65">
839                                 <image width="57" height="65" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAABBCAYAAABraQwpAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwQAADsEBuJFr7QAAABh0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC42/Ixj3wAAA31JREFUaEPtm9tLVFEUxsesqKALUkH2FPQSBdlD0EtI2ksPET30klqRZqZdqExnKjUdtURH0y7eMhUMhS46NGmBl5QC659a7W/bPu3Zs7WEs+I47Icf47qc/a3vXOZyZgwRUdpjTXIQmRqj3Q1lFKo6Lx/Dk2Mibe/1G2vSb7IbK6Q5sKOuxPsbebOXA2vSL27Ehyivt1EaOtr1UKT+1BAjf0LU9TwH1qRfHO4ISyP7ntwSYWodedTNvN9Yk35w5+MIZUfLpYlTAy0ildqDfIaoo/fVzzmRSu3xA2vyyrt+2ll/ldZVF1BmuNBDxfl9TaKNQrGFT9KE3gM23b8o84qNkQuS9eEiWcejyqmezOql7cy1UIMO9E72NcucbS7Mi7nRZ5IUPJ6NU9n7AU94OXK7G0S76J+LW+t+Ax3o5fZErXWdysQb2auTFODJIKuu1NsgQ+wh7G3sKaByeb+PZNv80pHkBjrQyxdHEvrIqZkwn8qBXfVlslcnKcjpiNDWmsveBmeH2+X1gmdJUDExSNcnhujZ9y+inULR6XGvlxPoQA+60MccaibMhzlV7/aaYtmrkxTkPI3QttpibwO9ZuPah9deLyfQMbVNVC9eh1NqerBak7iGD7RV0qFYlaCagSq5PnRMbRM2k+DcSCcVjL6gwtGXvoN1sb6paYPVZFBwJvXAmQw4zqQeOJMWmsXrV4l4U4x3IVxgfeiY2iZsJlXf/8DUNlF9fzV5pHP1p2vP4jRxY2ra+GeT7poMOM6kHjiTFnBP5fRgK50ZirGB9Ze7d6PDZjKvt4n2NlWwAx1T24TNJOhdnKH+H7NsYH1T0waryaDgTOqBMxlw2Eziznbx2z66GR9mA+urO+grwWZS/y6DE+iY2iaql+V0bV+YpK5vn9nA+qamDVaTQcGZ1ANnMuCwmdzfctvr5QQ6praJ6vXd5PHuesp6VCq/+OQC60PH1DZhMxkknEk9cCYDjjOpB6s12TqfoPLxQbqbGGED60PH1DZhM6n/HIYT6JjaJqqX5XRtnBmXe5oLrG9q2mA1GRScST1wJgOOM6kHzmTAcSb14GDsHm3Wfj+OF2O9HlQwp5p5y4NLIpVcTwqOPa+l3eLTuNpgLbInWi6srGCy9WtC/kDItvFaITyV+u9RSYECpy0O+4Zw0ZoB82Ju0wtISaQj1mS6YU2mFxT6BabQSfcRL/9gAAAAAElFTkSuQmCC" />
840                             </pattern>
841                         </defs>
842                         <rect id="Kontrolrapport_ikon" data-name="Kontrolrapport ikon" width="29" height="33" fill="url(#pattern)" />
843                     </svg>
844                     @controlReportText
845                 </a>
846             }
847             @if (!string.IsNullOrWhiteSpace(linkedInUrl))
848             {
849                 <a href="@linkedInUrl">
850                     @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/icons/linkedin.svg")))
851                     {
852                         <span class="icon icon-linkedin">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/icons/linkedin.svg"))</span>
853                     }
854                 </a>
855             }
856             @if (!string.IsNullOrWhiteSpace(facebookUrl))
857             {
858                 <a href="@facebookUrl">
859                     @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/icons/facebook.svg")))
860                     {
861                         <span class="icon icon-facebook">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/icons/facebook.svg"))</span>
862                     }
863                 </a>
864             }
865             @if (!string.IsNullOrWhiteSpace(youTubeUrl))
866             {
867                 <a href="@youTubeUrl">
868                     @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/icons/youtube.svg")))
869                     {
870                         <span class="icon icon-youtube">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/icons/youtube.svg"))</span>
871                     }
872                 </a>
873             }
874         </div>
875     </footer>
876         <span class="cursor"><span class="cursor__text"></span></span>
877         @RenderSnippet("SlideIns")
878         @if (extranetParagraphId != 0)
879         {
880             <text>@RenderParagraphContent(extranetParagraphId)</text>
881         }
882         @using System.Web.Configuration;
883     
884     @{
885         string jsEditDate = System.IO.File.GetLastWriteTime(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/vibocold/assets/js/main.min.js")).ToString();
886         jsEditDate = jsEditDate.Replace(":", "").Replace(" ", "").Replace("-", "");
887     
888         var config = WebConfigurationManager.OpenWebConfiguration("/");
889         var compilationSection = (CompilationSection)config.GetSection("system.web/compilation");
890     
891         bool isDebugMode = compilationSection.Debug;
892     }
893     
894     @if (isDebugMode)
895     {
896         <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
897     }
898     else
899     {
900         <script src="/files/templates/designs/vibocold/assets/js/vue.min.js"></script>
901     }
902     <script src="/files/templates/designs/vibocold/assets/js/main.min.js?v=@jsEditDate"></script>
903     
904     @RenderSnippet("JavaScripts")
905         @RenderSnippet("PiwikCartUpdate")
906         @RenderSnippet("ScriptsBottom")
907     </body>
908     </html>
909