Error compiling template "Designs/Nissens_website/_parsed/Download.parsed.cshtml"
Line 114: The name 'GetAreaCultureMap' does not exist in the current context
Line 164: The name 'IsSecret' does not exist in the current context
Line 709: The name 'GetPageForCulture' does not exist in the current context
Line 782: The name 'Database' does not exist in the current context
Line 782: The name 'CommandBuilder' does not exist in the current context
Line 839: The name 'IsSecret' does not exist in the current context
Line 866: The name 'GetAreaCultureMap' does not exist in the current context
1 @using System
2 @using System.IO
3 <!DOCTYPE html>
4 <html>
5
6 @{
7 var cacheBust = "v=28";
8
9 string currentLanguage = GetGlobalValue("Global:Area.Lang");
10 }
11
12 <head>
13
14 <script id="Cookiebot" data-culture="@currentLanguage" src="https://consent.cookiebot.com/uc.js" data-cbid="b2f69c99-47c2-41d0-8566-dadf3fa0c2f4" data-blockingmode="auto" type="text/javascript"></script>
15 @* <script id="CookieConsent" src="https://policy.app.cookieinformation.com/uc.js" data-culture="@currentLanguage.ToUpper()" type="text/javascript"></script> *@
16
17 <script>
18 window.addEventListener('CookieInformationConsentGiven', function () { if (CookieInformation.getConsentGivenFor('cookie_cat_statistic')) { (function () {
19 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
20 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
21 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
22 })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
23 ga('create', 'UA-10575630-2', 'auto');
24 ga('send', 'pageview');
25 })();}}, false);
26 </script>
27
28 <!-- Google Tag Manager -->
29 <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
30 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
31 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
32 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
33 })(window,document,'script','dataLayer','GTM-TFTQ9T6');</script>
34 <!-- End Google Tag Manager -->
35
36 <!-- Google Tag Manager -->
37 <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
38 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
39 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
40 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
41 })(window,document,'script','dataLayer','GTM-TTS6PGH');</script>
42 <!-- End Google Tag Manager -->
43
44 <meta charset="utf-8">
45 <meta http-equiv="X-UA-Compatible" content="IE=edge">
46 <title>@GetValue("Title")</title>
47 @GetValue("MetaTags")
48 @GetValue("CopyRightNotice")
49
50 <meta name="viewport" content="width=device-width, initial-scale=1">
51
52 <link href="/Files/Templates/Designs/Nissens_website/./css/styles.css?@cacheBust" type="text/css" rel="stylesheet">
53 <link href="/Files/Templates/Designs/Nissens_website/./css/cookie/cookieinformation.min.css?@cacheBust" type="text/css" rel="stylesheet">
54 <script src="/Files/Templates/Designs/Nissens_website/./scripts/lib/modernizr/modernizr-custom.js?@cacheBust"></script>
55
56 <meta name="facebook-domain-verification" content="c6s2qd949f1oz67l34swgaln7waxhh">
57 <meta name="theme-color" content="#ffffff">
58 <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,400i,600,700,700i&subset=cyrillic,cyrillic-ext,greek,greek-ext,latin-ext,vietnamese" rel="stylesheet">
59 @GetValue("Stylesheets")
60 @GetValue("Javascripts")
61 </head>
62
63
64
65 <body>
66 <!-- Google Tag Manager (noscript) -->
67 <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-TFTQ9T6" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
68 <!-- End Google Tag Manager (noscript) -->
69
70
71 <script type="text/javascript" src="https://secure.leadforensics.com/js/101799.js"></script>
72 <noscript><img src="https://secure.leadforensics.com/101799.png" style="display:none;"></noscript>
73 @using Dynamicweb.Content;
74 @using Dynamicweb.Content.Items;
75 @using System;
76 @using System.Collections;
77 @using System.Collections.Generic;
78 @using System.Globalization;
79 @using System.Text.RegularExpressions;
80
81 @{
82 var color = "#FFF";
83 var hoverColor = "#02afef";
84
85 var firstAreaPage = Pageview.Area.get_Value("areafirstactivepage");
86 var navAreaMainPages = ((IEnumerable)Pageview.Area.get_Value("AreaMainPages")).Cast<int>
87 ().Select(pid => pid);
88 var navPages = Page.GetPages(navAreaMainPages.ToArray());
89 string contactUsDefaultLink = null;
90 string contactUsDefaultName = "Contact Us";
91
92 var area = Area.GetAreaById(Pageview.AreaID);
93 var currentArea = area;
94
95 var currentFlag = area.Flag32x32;
96 var twoLetterName = new RegionInfo(area.CultureInfo.LCID).TwoLetterISORegionName;
97
98 if(!area.IsMaster)
99 {
100 var oldArea = area;
101 area = area.MasterArea;
102 if (area == null)
103 {
104 area = oldArea;
105 }
106 }
107 var page = Page.GetPageById(Pageview.ID);
108
109 var areaLanguages = new List<Area>();
110 areaLanguages.Add(area);
111 areaLanguages.AddRange(area.Languages);
112
113 var languageMenu = new List<Tuple<string, string, string>>();
114 var cultureMap = GetAreaCultureMap();
115 foreach(var languageAreaId in cultureMap.Keys.OrderBy(k => k))
116 {
117 var culture = cultureMap[languageAreaId];
118 var name = culture.NativeName;
119 try
120 {
121 name = (culture.IsNeutralCulture) ? culture.NativeName : culture.Parent.NativeName;
122 }
123 catch{}
124 name = culture.TextInfo.ToTitleCase(name);
125
126 var flag = areaLanguages.First(a => a.ID == languageAreaId).Flag32x32;
127 string link;
128
129 var langPage = GetPageForCulture(Pageview.ID, culture.Name);
130 if (langPage != null)
131 {
132 link = "/Default.aspx?ID=" + langPage.ID;
133 }
134 else
135 {
136 var firstPageId = Dynamicweb.Frontend.Area.GetAreaById(languageAreaId).get_Value("areafirstactivepage");
137 link = "/Default.aspx?ID=" + firstPageId;
138 }
139
140 if(Dynamicweb.Content.Area.GetAreaById(languageAreaId).IsMaster)
141 {
142 link += "?explicitLanguage=1";
143 }
144
145 languageMenu.Add(new Tuple<string, string, string>(name, link, flag));
146 }
147
148 @*var latinAlphabet = languageMenu.Where(x => Regex.IsMatch(x.Item1, @"^[\p{L}]+$")).OrderBy(x => x.Item1).ToList();
149 var noneLatinAlphabet = languageMenu.Where(x => !Regex.IsMatch(x.Item1, @"^[a-zA-Z]+$")).OrderBy(x => x.Item1).ToList();
150
151 latinAlphabet.AddRange(noneLatinAlphabet);
152 languageMenu = latinAlphabet;
153
154 @*var languageName = languageMenu.Select(x => x.Item1).ToList();
155 languageMenu = Heyday.Nissens.Helpers.HelperFunction.OrderByLatinAlphabet(languageName);*@
156
157 languageMenu = languageMenu.OrderBy(x => x.Item1).ToList();
158
159 var websiteItem = Dynamicweb.Content.Items.ItemManager.Storage.GetById(area.ItemType,area.ItemId);
160
161
162 }
163
164 @if (!IsSecret())
165 {
166 <header id="top">
167 <nav id="top-nav">
168 <div class="container">
169
170 @{
171 var headerLogoImage = websiteItem["HeaderLogoImage"].ToString();
172 var frontpageUrl = "/Default.aspx?ID=" + firstAreaPage;
173 }
174 <a class="logo" href="@frontpageUrl" style="background-image:url(@System.Web.HttpUtility.UrlPathEncode(headerLogoImage))">
175 <span class="company-name">Nissens</span>
176 </a>
177 <ul id="primary-nav">
178 @{
179 foreach (var rootPage in navPages)
180 {
181 string currentPageStyle = null;
182 string markedClassName = "on";
183
184 if(rootPage.ItemType == "PowerGeneration")
185 {
186 if (page.ID == rootPage.ID || page.ParentPageID == rootPage.ID)
187 {
188 currentPageStyle = markedClassName;
189 }
190 <li>
191 <a class="toggle-megadropdown @currentPageStyle" data-dropdown-id="#megadropdown-01" href="#">@rootPage.MenuText</a>
192 </li>
193 }
194 if(rootPage.ItemType == "OnAndOffroad")
195 {
196 if (page.ID == rootPage.ID || page.ParentPageID == rootPage.ID)
197 {
198 currentPageStyle = markedClassName;
199 }
200 <li>
201 <a class="toggle-megadropdown @currentPageStyle" data-dropdown-id="#megadropdown-02" href="#">@rootPage.MenuText</a>
202 </li>
203 }
204 if(rootPage.ItemType == "AboutNissens")
205 {
206 /*if (page.ID == rootPage.ID || page.ParentPageID == rootPage.ID)
207 {
208 currentPageStyle = markedClassName;
209 }*/
210 contactUsDefaultLink = rootPage.ID.ToString();
211 <li>
212 <!--a class="@currentPageStyle" href="/Default.aspx?ID=@rootPage.ID">@rootPage.MenuText</a-->
213 <a class="toggle-megadropdown @currentPageStyle" data-dropdown-id="#megadropdown-03" href="#">@rootPage.MenuText</a>
214 </li>
215 }
216 if(rootPage.ItemType == "ContactMenuItem")
217 {
218
219 var rootItem = ItemManager.Storage.GetById(rootPage.ItemType, rootPage.ItemId);
220 string megaMenuContactUsLink = (rootItem["ContactUsLink"] as string) ?? "/Default.aspx?ID=" + contactUsDefaultLink;
221 if (page.ID == rootPage.ID || page.ParentPageID == rootPage.ID)
222 {
223 currentPageStyle = markedClassName;
224 }
225 <li>
226 <a class="@(currentPageStyle)" data-dropdown-id="#megadropdown-04" href="@(megaMenuContactUsLink)">@rootPage.MenuText</a>
227 </li>
228 }
229 }
230 }
231 </ul>
232
233 <div id="search-nav">
234 <button type="button" class="toggle-megadropdown" data-dropdown-id="#megadropdown-search">
235 <span class="icon-search"></span>
236 </button>
237 </div>
238
239 <div id="language-nav">
240 <button type="button" class="toggle-megadropdown" data-dropdown-id="#megadropdown-language">
241 <span class="flag"><img src="@currentFlag" alt=""></span>
242 </button>
243 </div>
244
245 <button type="button" class="burger-btn">
246 <span></span>
247 <span></span>
248 <span></span>
249 <span></span>
250 </button>
251
252 </div>
253 </nav>
254
255
256 <nav id="megadropdown-nav" class="hidden-print">
257 <div class="content">
258
259 <!--mobile-megadropdown-nav #1 start...-->
260 <div id="mobile-megadropdown-nav">
261
262 <div class="language-nav">
263 <button type="button" class="toggle-megadropdown" data-dropdown-id="#megadropdown-language">
264 <span class="country">
265 <!--DEV NOTE: add the active site language below-->
266 <span class="flag"><img src="@currentFlag" alt=""></span>
267 <span class="name">@twoLetterName</span>
268 </span>
269 <span class="icon-arrow-down"></span>
270 </button>
271 </div>
272
273 <div class="primary-nav">
274 <ul>
275 @{
276 foreach (var rootPage in navPages)
277 {
278 @* if(rootPage.ItemType == "Automotive")
279 {
280 <li>
281 <a class="toggle-megadropdown" data-dropdown-id="#megadropdown-01" href="#">@rootPage.MenuText</a>
282 </li>
283 } *@
284 if(rootPage.ItemType == "PowerGeneration")
285 {
286 <li>
287 <a class="toggle-megadropdown" data-dropdown-id="#megadropdown-01" href="#">@rootPage.MenuText</a>
288 </li>
289 }
290 else if(rootPage.ItemType == "OnAndOffroad")
291 {
292 <li>
293 <a class="toggle-megadropdown" data-dropdown-id="#megadropdown-02" href="#">@rootPage.MenuText</a>
294 </li>
295 }
296 else if(rootPage.ItemType == "AboutNissens")
297 {
298 <li>
299 <!--a href="/Default.aspx?ID=@rootPage.ID">@rootPage.MenuText</a-->
300 <a class="toggle-megadropdown" data-dropdown-id="#megadropdown-03" href="#">@rootPage.MenuText</a>
301 </li>
302 }
303 else if(rootPage.ItemType == "ContactMenuItem")
304 {
305 <li>
306 <a class="toggle-megadropdown" data-dropdown-id="#megadropdown-04" href="#">@rootPage.MenuText</a>
307 </li>
308 }
309 }
310 }
311 </ul>
312 </div>
313 </div>
314 <!--...mobile-megadropdown-nav #1 end-->
315
316 <!--Variables used on megadropdown -->
317 @{
318 var links = new Dictionary<string, string[]>();
319 var contactUsLink = "";
320 var contactUsName = "";
321 var suppliersPartnersLink = "";
322 var suppliersPartnersName = "";
323
324 }
325
326 <!--megadropdown #1 start...-->
327 @{
328 var productOverview = new Dictionary<string, List<Tuple<string, string, string>>>();
329 @*Dictionary<string, string[]> links = new Dictionary<string, string[]>();*@
330 var backgroundImage = new string[3];
331
332 var rootPageID = 0;
333 contactUsLink = string.Empty;
334 contactUsName = string.Empty;
335
336 var repo = ItemManager.Storage.Open("ProductGroup");
337 var groupingItems = repo.SelectByAreaId(Pageview.AreaID);
338 foreach (var rootPage in navPages)
339 {
340 if (rootPage.ItemType == "Automotive")
341 {
342 var rootItem = ItemManager.Storage.GetById(rootPage.ItemType, rootPage.ItemId);
343 var chosenColor = (rootItem["TextColorInHex"] as string) ?? string.Empty;
344 var chosenHover = (rootItem["HoverColorInHex"] as string) ?? string.Empty;
345
346 if (!string.IsNullOrWhiteSpace(chosenColor))
347 {
348 color = chosenColor.StartsWith("#") ? chosenColor : "#" + chosenColor;
349 }
350
351 if (!string.IsNullOrWhiteSpace(chosenHover))
352 {
353 hoverColor = chosenHover.StartsWith("#") ? chosenHover : "#" + chosenHover;
354 }
355
356
357 for (var i = 1; i <= 4; i++)
358 {
359 var link = rootItem["Link_" + i] as string;
360 var linkName = rootItem["Link_" + i + "Name"] as string;
361 var linkImage = rootItem["Link" + i + "Image"] as string;
362 var linkTarget = rootItem["Link_" + i + "_OpenInNewWindow"];
363
364 var OpenInNewWindow = "";
365 if (linkTarget.ToString().ToLower() == "true")
366 {
367 OpenInNewWindow = "_blank";
368 }
369
370 if (!string.IsNullOrEmpty(link))
371 {
372 links.Add(i.ToString(), new[] { link, linkName, linkImage, OpenInNewWindow });
373 }
374 }
375
376 contactUsLink = (rootItem["ContactUsLink"] as string) ?? "/Default.aspx?ID=" + contactUsDefaultLink;
377 contactUsName = (rootItem["ContactUs"] as string) ?? contactUsDefaultName;
378 suppliersPartnersLink = (rootItem["SuppliersPartnersLink"] as string);
379 suppliersPartnersName = (rootItem["SuppliersPartners"] as string);
380
381 for (var i = 1; i <= 3; i++)
382 {
383 var backgroundImageItem = (rootItem["BackgroundImage" + i] as string) ?? string.Empty;
384
385 backgroundImage[i - 1] = backgroundImageItem;
386 }
387
388 var pages = rootPage.Subpages;
389 foreach (var subPage in pages)
390 {
391 if (subPage.ItemType == "ProductPage")
392 {
393 rootPageID = rootPage.ID;
394 var id = subPage.ID;
395
396 var name = subPage.MenuText;
397 var link = "/Default.aspx?ID=" + id;
398
399 var productCategory = ItemManager.Storage.GetById(subPage.ItemType, subPage.ItemId);
400
401 string image = productCategory["Image"] as string;
402 string groupingOb = (productCategory["Grouping"] as string) ?? string.Empty;
403
404 var grouping = groupingItems.FirstOrDefault(g => g["Name"].ToString() == groupingOb);
405
406 if (grouping != null)
407 {
408 var group = grouping["Label"].ToString();
409 if (!productOverview.ContainsKey(group))
410 {
411 productOverview.Add(group, new List<Tuple<string, string, string>>());
412 }
413 productOverview[group].Add(new Tuple<string, string, string>(name, link, image));
414 }
415 }
416 }
417 }
418 } }
419
420 <!--megadropdown #1 start...-->
421 <div id="megadropdown-01" class="is-mega-dropdown">
422 <div class="container">
423
424 <div class="megadropdown-row categories">
425 @{
426 links = new Dictionary<string, string[]>();
427
428 foreach (var rootPage in navPages)
429 {
430 if(rootPage.ItemType == "PowerGeneration")
431 {
432 var rootItem = ItemManager.Storage.GetById(rootPage.ItemType, rootPage.ItemId);
433
434 for (var i = 1; i <= 4; i++)
435 {
436 var link = (rootItem["Link_" + i] as string) ?? string.Empty;
437 var linkName = (rootItem["Link_" + i + "Name"] as string) ?? string.Empty;
438 var linkImage = (rootItem["Link" + i + "Image"] as string) ?? string.Empty;
439 var linkTarget = (rootItem["Link_" + i + "_OpenInNewWindow"]) ?? string.Empty;
440
441 var OpenInNewWindow = "";
442 if(linkTarget.ToString().ToLower() == "true")
443 {
444 OpenInNewWindow = "_blank";
445 }
446
447 if (!string.IsNullOrEmpty(link))
448 {
449 links.Add(i.ToString(), new[] {link, linkName, linkImage, OpenInNewWindow});
450 }
451 }
452 contactUsLink = (rootItem["ContactUsLink"] as string) ?? "/Default.aspx?ID=" + contactUsDefaultLink;
453 contactUsName = (rootItem["ContactUs"] as string) ?? contactUsDefaultName;
454
455 var pages = rootPage.Subpages;
456 foreach(var subPage in pages.OrderBy(p => p.Sort))
457 {
458 if(subPage.ItemType == "MenuItem")
459 {
460 var id = subPage.ID;
461
462 var name = subPage.MenuText;
463 var link = "/Default.aspx?ID=" + id;
464
465 var menuItem = ItemManager.Storage.GetById(subPage.ItemType, subPage.ItemId);
466
467 string image = menuItem["Image"] as string;
468
469 <div class="col-sm-4 col-xs-6">
470 <a href="@link" class="category-menu-btn">
471 <span class="h3">@name</span>
472 <div class="image">
473 <img src="@image" alt="">
474 </div>
475 </a>
476 </div>
477 }
478 }
479 }
480 }
481 }
482 </div>
483
484 <div class="megadropdown-row buttons">
485 @foreach(var link in links.Values){
486 <div class="col-one-fifth">
487 <a href="@link[0]" class="md-btn alt" style="background-image: url(@System.Web.HttpUtility.UrlPathEncode(link[2]));" target="@link[3]">
488 <span>@link[1]<span class="icon-arrow-line-right">@link[0]</span></span>
489 </a>
490 </div>
491 }
492 <div class="col-one-fifth col-five-fifth-xs">
493 <a href="@contactUsLink" class="md-btn contact-us"><span>@contactUsName<span class="icon-arrow-line-right"></span></span></a>
494 </div>
495 </div>
496
497 </div>
498 </div>
499 <!--//megadropdown #1 end-->
500
501 <!--megadropdown #2 start...-->
502 <div id="megadropdown-02" class="is-mega-dropdown">
503 <div class="container">
504
505 <div class="megadropdown-row categories">
506
507 @{
508 links = new Dictionary<string, string[]>();
509
510 foreach (var rootPage in navPages)
511 {
512 if(rootPage.ItemType == "OnAndOffroad")
513 {
514 var rootItem = ItemManager.Storage.GetById(rootPage.ItemType, rootPage.ItemId);
515
516 for (var i = 1; i <= 4; i++)
517 {
518 var link = (rootItem["Link_" + i] as string) ?? string.Empty;
519 var linkName = (rootItem["Link_" + i + "Name"] as string) ?? string.Empty;
520 var linkImage = (rootItem["Link" + i + "Image"] as string) ?? string.Empty;
521 var linkTarget = (rootItem["Link_" + i + "_OpenInNewWindow"]) ?? string.Empty;
522
523 var OpenInNewWindow = "";
524 if(linkTarget.ToString().ToLower() == "true")
525 {
526 OpenInNewWindow = "_blank";
527 }
528
529 if (!string.IsNullOrEmpty(link))
530 {
531 links.Add(i.ToString(), new[] {link, linkName, linkImage, OpenInNewWindow});
532 }
533 }
534 contactUsLink = (rootItem["ContactUsLink"] as string) ?? "/Default.aspx?ID=" + contactUsDefaultLink;
535 contactUsName = (rootItem["ContactUs"] as string) ?? contactUsDefaultName;
536
537 var pages = rootPage.Subpages;
538 foreach(var subPage in pages.OrderBy(p => p.Sort))
539 {
540 if(subPage.ItemType == "MenuItem")
541 {
542 var id = subPage.ID;
543
544 var name = subPage.MenuText;
545 var link = "/Default.aspx?ID=" + id;
546
547 var productCategory = ItemManager.Storage.GetById(subPage.ItemType, subPage.ItemId);
548
549 string image = productCategory["Image"] as string;
550
551 <div class="col-one-fourth">
552 <a href="@link" class="category-menu-btn">
553 <span class="h3">@name</span>
554 <div class="image">
555 <img src="@image" alt="">
556 </div>
557 </a>
558 </div>
559 }
560 }
561 }
562 }
563 }
564 </div>
565
566 <div class="megadropdown-row buttons">
567 @foreach(var link in links.Values)
568 {
569 <div class="col-one-fifth">
570 <a href="@link[0]" class="md-btn alt" style="background-image: url(@System.Web.HttpUtility.UrlPathEncode(link[2]));" target="@link[3]">
571 <span>@link[1]<span class="icon-arrow-line-right">@link[0]</span></span>
572 </a>
573 </div>
574 }
575 <div class="col-one-fifth col-five-fifth-xs">
576 <a href="@contactUsLink" class="md-btn contact-us"><span>@contactUsName<span class="icon-arrow-line-right"></span></span></a>
577 </div>
578 </div>
579
580 </div>
581 </div>
582 <!--//megadropdown #2 end-->
583
584 <!--megadropdown #3 start...-->
585 <div id="megadropdown-03" class="is-mega-dropdown">
586 <div class="container">
587
588 <div class="megadropdown-row categories">
589 @{
590 links = new Dictionary<string, string[]>();
591
592 foreach (var rootPage in navPages)
593 {
594 if(rootPage.ItemType == "AboutNissens")
595 {
596 var rootItem = ItemManager.Storage.GetById(rootPage.ItemType, rootPage.ItemId);
597
598 for (var i = 1; i <= 4; i++)
599 {
600 var link = (rootItem["Link_" + i] as string) ?? string.Empty;
601 var linkName = (rootItem["Link_" + i + "Name"] as string) ?? string.Empty;
602 var linkImage = (rootItem["Link" + i + "Image"] as string) ?? string.Empty;
603 var linkTarget = (rootItem["Link_" + i + "_OpenInNewWindow"]) ?? string.Empty;
604
605 var OpenInNewWindow = "";
606 if(linkTarget.ToString().ToLower() == "true")
607 {
608 OpenInNewWindow = "_blank";
609 }
610
611 if (!string.IsNullOrEmpty(link))
612 {
613 links.Add(i.ToString(), new[] {link, linkName, linkImage, OpenInNewWindow});
614 }
615 }
616 contactUsLink = (rootItem["ContactUsLink"] as string) ?? "/Default.aspx?ID=" + contactUsDefaultLink;
617 contactUsName = (rootItem["ContactUs"] as string) ?? contactUsDefaultName;
618
619 var pages = rootPage.Subpages;
620 foreach(var subPage in pages.OrderBy(p => p.Sort))
621 {
622 if(subPage.ItemType == "MenuItem")
623 {
624 var id = subPage.ID;
625
626 var name = subPage.MenuText;
627 var link = "/Default.aspx?ID=" + id;
628
629 var productCategory = ItemManager.Storage.GetById(subPage.ItemType, subPage.ItemId);
630
631 string image = productCategory["Image"] as string;
632
633 <div class="col-sm-4 col-xs-6">
634 <a href="@link" class="category-menu-btn">
635 <span class="h3">@name</span>
636 <div class="image">
637 <img src="@image" alt="">
638 </div>
639 </a>
640 </div>
641 }
642 }
643 }
644 }
645 }
646 </div>
647 </div>
648 </div>
649 <!--//megadropdown #3 end-->
650
651 <!--megadropdown #4 start...-->
652 <div id="megadropdown-04" class="is-mega-dropdown">
653 <div class="container">
654 <div class="megadropdown-row categories">
655 @{
656 links = new Dictionary<string, string[]>();
657
658 foreach (var rootPage in navPages)
659 {
660 if(rootPage.ItemType == "ContactMenuItem")
661 {
662 var pages = rootPage.Subpages;
663 foreach(var subPage in pages.OrderBy(p => p.Sort))
664 {
665 if(subPage.ItemType == "MenuItem")
666 {
667 var id = subPage.ID;
668
669 var name = subPage.MenuText;
670 var link = "/Default.aspx?ID=" + id;
671
672 var productCategory = ItemManager.Storage.GetById(subPage.ItemType, subPage.ItemId);
673
674 string image = productCategory["Image"] as string;
675
676 <div class="col-sm-4 col-xs-6">
677 <a href="@link" class="category-menu-btn">
678 <span class="h3">@name</span>
679 <div class="image">
680 <img src="@image" alt="">
681 </div>
682 </a>
683 </div>
684 }
685
686 /*<div class="col-one-fifth">
687 <a href="@link" class="category-menu-btn">
688 <span class="h3">@name</span>
689 <div class="image">
690 <img src="@image" alt="">
691 </div>
692 </a>
693 </div>*/
694 }
695 }
696 }
697 }
698 </div>
699 </div>
700 </div>
701 <!--//megadropdown #4 end-->
702
703 <!--#megadropdown-search start...-->
704 <div id="megadropdown-search" class="is-mega-dropdown">
705 <div class="container">
706 @{
707 var searchPageId = websiteItem["SearchResultPage"].ToString().Split('=').Last();
708 var searchCulture = Pageview.Area.get_Value("areaculture").ToString();
709 var searchPageLocal = GetPageForCulture(Dynamicweb.Base.ChkInteger(searchPageId), searchCulture);
710 if (searchPageLocal == null)
711 {
712 searchPageLocal = Pageview.Page;
713 }
714 var placeholderText = Translate("SearchPlaceholder", "What are you looking for?");
715 }
716 <form action="/Default.aspx">
717 <input type="hidden" value="@searchPageLocal.ID" name="ID">
718 <input type="hidden" value="@Pageview.AreaID" name="Context">
719 <input type="text" name="freetext" class="search" role="search" placeholder="@placeholderText" aria-label="Search">
720 <button type="submit"><span class="icon-arrow-line-right"></span></button>
721 </form>
722 </div>
723 </div>
724 <!--//#megadropdown-search end-->
725
726 <!--#megadropdown-language start...-->
727 <div id="megadropdown-language" class="is-mega-dropdown">
728 <div class="container">
729 <ul>
730 @{
731 foreach (var lang in languageMenu)
732 {
733 var activeFlag = (currentFlag == lang.Item3) ? "on" : "";
734 <li class="@activeFlag">
735 <a href="@lang.Item2" class="country">
736 <span class="flag"><img src="@lang.Item3" alt=""></span>
737 <span class="name">@lang.Item1</span>
738 </a>
739 </li>
740 }
741 }
742 </ul>
743 </div>
744 </div>
745 <!--//#megadropdown-language end-->
746 </div>
747 </nav>
748
749 <!--#secondary-nav start...-->
750 <nav id="secondary-nav">
751 <ul>
752 @foreach(var paragraph in Paragraph.GetParagraphsByPageID(page.ID))
753 {
754 if (paragraph.ItemType != "Paragraph_Menu_Item" || !paragraph.ShowParagraph)
755 {
756 continue;
757 }
758
759 <li>
760 <a href="/Default.aspx?ID=@(page.ID)/#@(paragraph.ID)">@paragraph.Header</a>
761 </li>
762 }
763 </ul>
764 </nav>
765
766 </header>
767 }
768
769
770 <div class="top-spacing"></div>
771 <main>
772
773 @{
774 var inputString = System.Web.HttpContext.Current.Request.QueryString["uniqueid"];
775 System.Guid uniqueID;
776 var isUniqueID = Guid.TryParse(inputString, out uniqueID);
777 var isAllowed = false;
778 var errorMessage = "The link has expired";
779 if(isUniqueID)
780 {
781 var downloadStart = new DateTime();
782 using (var reader = Database.CreateDataReader(CommandBuilder.Create("SELECT * FROM RestrictedDownloads WHERE UniqueID = {0}", uniqueID)))
783 {
784 if (reader.Read())
785 {
786 var dateTime = (reader["DownloadStart"] != null) ? reader["DownloadStart"].ToString() : "";
787 DateTime.TryParse(dateTime, out downloadStart);
788 }
789 }
790 if((DateTime.Now - downloadStart).TotalHours < 24)
791 {
792 isAllowed = true;
793 errorMessage = string.Empty;
794 }
795 }
796 if(isAllowed)
797 {
798 //Download
799 var root = System.Web.HttpContext.Current.Server.MapPath("/");
800 var path = Path.Combine(root, "..", "download", "Nissens_HP_Calculator.exe");
801 try
802 {
803 using(var fileStream = new FileStream(path, FileMode.Open))
804 {
805 var fileSize = (int)fileStream.Length;
806 byte[] buffer = new byte[fileStream.Length];
807 fileStream.Read(buffer, 0, fileSize);
808
809 var response = System.Web.HttpContext.Current.Response;
810 response.Clear();
811 response.ContentType = "application/x-msdownload";
812 response.AppendHeader("Content-Disposition", "attachment; filename=Nissens_HP_Calculator.exe");
813 response.BufferOutput = true;
814 response.OutputStream.Write(buffer, 0, fileSize);
815 response.End();
816 }
817 }
818 catch
819 {
820 errorMessage = @Translate("ErrorMessageForDownload","An error occurred. Please contact us.");
821 }
822 }
823 }
824 <div>@errorMessage</div>
825
826 </main>
827
828 <div id="fullpage-overlay">
829 <div class="content">
830 <iframe id='fullpage-player' src="about:blank"></iframe>
831 <button id="close-fullpage-overlay" class="close-btn" type="button"><span class="icon-close"></span></button>
832 </div>
833 </div>
834
835 @{
836 var areaMainPages = ((System.Collections.ArrayList)Pageview.Area.get_Value("AreaMainPages")).Cast<int>().Select(pid => Dynamicweb.Content.Page.GetPageById(pid));
837 }
838
839 @if (!IsSecret())
840 {
841
842 <footer id="bottom" class="hidden-print">
843 <div class="social-bar">
844 <a href="https://www.linkedin.com/company/nissens-cooling-solutions/" target="_blank" title="LinkedIn" class="social-icon">
845 <span class="icon-linkedin">LinkedIn</span>
846 </a>
847 </div>
848
849 <div class="bg"></div>
850
851 <div class="footer-container">
852
853 <div class="row">
854
855 <div>
856 <a class="logo-white" href="/">
857 @{
858 @*var footerImage = @GetString("Item.Area.FooterImage.Value");*@
859 var footerImage = websiteItem["FooterImage"];
860 }
861 <img src="@footerImage" alt="">
862 </a>
863 </div>
864
865 @{
866 var currentRegion = new System.Globalization.RegionInfo(GetAreaCultureMap()[Pageview.AreaID].LCID);
867 var aboutPage = areaMainPages.FirstOrDefault(p => p.ItemType == "AboutNissens");
868 var divisions = Dynamicweb.Content.Items.ItemManager.Storage.GetByParentPageId("Department", aboutPage.ID);
869
870 Dynamicweb.Content.Items.Item regionalDivision = null;
871 foreach (var item in divisions)
872 {
873 var country = item["Country"] as string;
874 if (!string.IsNullOrEmpty(country) && country == currentRegion.Name)
875 {
876 regionalDivision = item;
877 break;
878 }
879 }
880
881 if (regionalDivision == null)
882 {
883 regionalDivision = divisions.FirstOrDefault();
884 }
885
886 if (regionalDivision != null)
887 {
888 var name = regionalDivision["Name"].ToString();
889 var address1 = regionalDivision["Address_1"].ToString();
890 var address2 = regionalDivision["Address_2"].ToString();
891 var zip = regionalDivision["ZipCode"].ToString();
892 var city = regionalDivision["City"].ToString();
893 var phone = regionalDivision["Phone"].ToString();
894 var phoneLink = "tel:" + phone;
895 var fax = regionalDivision["Fax"].ToString();
896 var email = regionalDivision["Email"].ToString();
897 var emailLink = "mailto:" + email;
898 var newLink = regionalDivision["Links"].ToString();
899
900
901 <div>
902 <h4 class="company-name">@name</h4>
903 <p>
904 <span>@address1</span><br>
905 @if (!string.IsNullOrEmpty(address2))
906 {
907 <span>@address2</span><br>
908 }
909 @if (!string.IsNullOrEmpty(city))
910 {
911 <span>@zip @city</span><br>
912 }
913 @if (!string.IsNullOrEmpty(phone))
914 {
915 <span>Tel.: @phone</span><br>
916 }
917 @if (!string.IsNullOrEmpty(fax))
918 {
919 <span>Fax: @fax</span><br>
920 }
921 @if (!string.IsNullOrEmpty(email))
922 {
923 <span><a href="@emailLink">@email</a></span>
924 }
925 </p>
926 <div class="nissen-links">
927 @if (!string.IsNullOrEmpty(newLink))
928 {
929 <span>@newLink</span>
930 }
931 </div>
932 </div>
933 <div style="margin-top:61px;">
934 @{
935 //Legal Disclaimer
936 var disclaimerPage = areaMainPages.FirstOrDefault(p => p.ItemType == "LegalDisclaimer");
937 if (disclaimerPage != null)
938 {
939 var disclaimerItem = Dynamicweb.Content.Items.ItemManager.Storage.GetById(disclaimerPage.ItemType, disclaimerPage.ItemId);
940 if (disclaimerItem != null)
941 {
942 <p class="LegalDisclaimer" style="margin: 0;">
943 <a href="/Default.aspx?ID=@disclaimerPage.ID" class="hd-btn tertiary">@disclaimerItem["FooterText"]</a>
944 </p>
945 }
946 }
947
948 //Purchasing terms for products
949 <p class="LegalDisclaimer" style="margin: 0;">
950 <a href="/Files/Files/Nissens Cooling Solutions General Purchasing Terms.pdf" download="" class="hd-btn tertiary">@Translate("GeneralPurchasingTerms","NCS’ General Purchasing Terms for Products")</a>
951 </p>
952
953 //Term and Conditions
954 var termsAndConditions = areaMainPages.FirstOrDefault(p => p.ItemType == "TermsAndConditions");
955 if (termsAndConditions != null)
956 {
957 var termsAndConditionsItem = Dynamicweb.Content.Items.ItemManager.Storage.GetById(termsAndConditions.ItemType, termsAndConditions.ItemId);
958 if (termsAndConditionsItem != null)
959 {
960 var automotiveDownload = termsAndConditionsItem["TermsAndConditions_AutomotiveLink"];
961 if (automotiveDownload != null && !string.IsNullOrWhiteSpace(termsAndConditionsItem["TermsAndConditions_AutomotiveText"].ToString()))
962 {
963 <p class="LegalDisclaimer" style="margin: 0;">
964 <a href="@automotiveDownload" download="" class="hd-btn tertiary">@termsAndConditionsItem["TermsAndConditions_AutomotiveText"]</a>
965 </p>
966 }
967
968 var coolingSolutionsDownload = termsAndConditionsItem["TermsAndConditions_Cooling_SolutionsLink"];
969 if (coolingSolutionsDownload != null && !string.IsNullOrWhiteSpace(termsAndConditionsItem["TermsAndConditions_Cooling_SolutionsText"].ToString()))
970 {
971 <p class="LegalDisclaimer" style="margin: 0;">
972 <a href="@coolingSolutionsDownload" download="" class="hd-btn tertiary">@termsAndConditionsItem["TermsAndConditions_Cooling_SolutionsText"]</a>
973 </p>
974 }
975
976 }
977 }
978
979 //Purchasing terms for products
980 <p class="LegalDisclaimer" style="margin: 0;">
981 <a href="/Admin/Public/DWSDownload.aspx?File=%2fFiles%2fFiles%2fNCS+Supplier+Quality+Manual+rev01_without+signatures.pdf" download="" class="hd-btn tertiary">@Translate("SupplierQualityManuals","NCS Supplier Quality Manuals")</a>
982 </p>
983
984 //Data privacy policy
985 var datapolicyPage = areaMainPages.FirstOrDefault(p => p.ItemType == "Data_Privacy_Policy");
986 if (datapolicyPage != null)
987 {
988 var datapolicyItem = Dynamicweb.Content.Items.ItemManager.Storage.GetById(datapolicyPage.ItemType, datapolicyPage.ItemId);
989 if (datapolicyItem != null)
990 {
991 <p class="LegalDisclaimer" style="margin: 0;">
992 <a style="margin: 0; padding-bottom: 0;" href="/Default.aspx?ID=@datapolicyPage.ID" class="hd-btn tertiary">@datapolicyItem["FooterText"]</a>
993 </p>
994 <br>
995 @datapolicyItem["ExtraField"];
996 }
997 }
998
999 //Purchasing terms for products
1000 <p class="LegalDisclaimer" style="margin: 0;">
1001 <a href="/Files/Files/EHS policy 14_02_2025.pdf" download="" class="hd-btn tertiary">@Translate("EHSPolicy","EHS policy")</a>
1002 </p>
1003 }
1004 </div>
1005
1006 }
1007 }
1008
1009 <!--div>
1010 @foreach (var p in areaMainPages)
1011 {
1012 var rootPage = p;
1013 if(rootPage.ItemType == "AboutNissens")
1014 {
1015 <a href="/Default.aspx?ID=@p.ID"><h4>@rootPage.MenuText</h4></a>
1016 <ul>
1017 @foreach(var paragraph in Dynamicweb.Content.Paragraph.GetParagraphsByPageID(p.ID))
1018 {
1019 //Husk lige ændre så der kommer et link ind
1020 <li><a href="/Default.aspx?ID=@p.ID/#@paragraph.ID">@paragraph.Header</a></li>
1021 }
1022 </ul>
1023 }
1024 }
1025 </div-->
1026
1027 <div class="col-shop">
1028 @*
1029 <a href="#" class="hd-btn newsletter" style="display: none;">Sign up for Newsletter</a>
1030 <h4>@Translate("Division","Division")</h4>
1031 <ul>
1032 @{
1033 foreach (var p in areaMainPages)
1034 {
1035 var rootPage = p;
1036 if(rootPage.ItemType == "Automotive" || rootPage.ItemType == "PowerGeneration" ||
1037 rootPage.ItemType == "OnAndOffroad")
1038 {
1039 <li>
1040 </li><li><a href="/Default.aspx?ID=@p.ID">@rootPage.MenuText</a></li>
1041
1042 }
1043 }
1044 }
1045 </ul>
1046 *@
1047 @* @{
1048 var automotivePage = areaMainPages.FirstOrDefault(p => p.ItemType == "Automotive");
1049 var automotivePageId = automotivePage != null ? automotivePage.ID : 0;
1050 if (Pageview.ID == automotivePageId || Dynamicweb.Content.Page.GetPageById(Pageview.ID).ParentPageID == automotivePageId)
1051 {
1052 <a href="http://webshop.nissens.com/" class="hd-btn tertiary">@Translate("NissensWebshopFooter", "Product Catalogue & Webshop")</a>
1053 }
1054 } *@
1055 </div>
1056
1057 </div>
1058 </div>
1059 </footer>
1060 }
1061
1062
1063 <script src="/Files/Templates/Designs/Nissens_website/./scripts/lib/jquery/jquery.min.js?@cacheBust"></script>
1064 <script src="/Files/Templates/Designs/Nissens_website/./scripts/lib/polyfills/jquery.placeholder.min.js?@cacheBust"></script>
1065 <script src="/Files/Templates/Designs/Nissens_website/./scripts/lib/polyfills/matchMedia.js?@cacheBust"></script>
1066 <script src="/Files/Templates/Designs/Nissens_website/./scripts/lib/polyfills/matchMedia.addListener.js?@cacheBust"></script>
1067 <script src="/Files/Templates/Designs/Nissens_website/./scripts/lib/polyfills/polyfills.js?@cacheBust"></script>
1068 <script src="/Files/Templates/Designs/Nissens_website/./scripts/lib/enquire.js?@cacheBust"></script>
1069 <script src="/Files/Templates/Designs/Nissens_website/./scripts/lib/gsap/TweenMax.js?@cacheBust"></script>
1070 <script src="/Files/Templates/Designs/Nissens_website/./scripts/lib/gsap/ScrollMagic.min.js?@cacheBust"></script>
1071 <script src="/Files/Templates/Designs/Nissens_website/./scripts/lib/gsap/animation.gsap.js?@cacheBust"></script>
1072 <script src="/Files/Templates/Designs/Nissens_website/./scripts/lib/gsap/ScrollToPlugin.min.js?@cacheBust"></script>
1073 <script src="/Files/Templates/Designs/Nissens_website/./scripts/lib/fastclick.js?@cacheBust"></script>
1074 <script src="/Files/Templates/Designs/Nissens_website/./scripts/lib/lazy-loading-xt/jquery.lazyloadxt.min.js?@cacheBust"></script>
1075 <script src="/Files/Templates/Designs/Nissens_website/./scripts/lib/owl-carousel/owl.carousel.min.js?@cacheBust"></script>
1076 <script src="/Files/Templates/Designs/Nissens_website/./scripts/lib/js.cookie.js?@cacheBust"></script>
1077
1078 <script src="/Files/Templates/Designs/Nissens_website/./scripts/ground/ground.js?@cacheBust"></script>
1079 <script src="/Files/Templates/Designs/Nissens_website/./scripts/cookieDisclaimer.js?@cacheBust"></script>
1080 <script src="/Files/Templates/Designs/Nissens_website/./scripts/module/navigation/top.js?@cacheBust"></script>
1081 <script src="/Files/Templates/Designs/Nissens_website/./scripts/module/banner/hero.js?@cacheBust"></script>
1082 <script src="/Files/Templates/Designs/Nissens_website/./scripts/module/gallery/gallery.js?@cacheBust"></script>
1083 <script src="/Files/Templates/Designs/Nissens_website/./scripts/module/text/text.js?@cacheBust"></script>
1084 <script src="/Files/Templates/Designs/Nissens_website/./scripts/module/video/video.js?@cacheBust"></script>
1085 <script src="/Files/Templates/Designs/Nissens_website/./scripts/module/product/product.js?@cacheBust"></script>
1086 <script src="/Files/Templates/Designs/Nissens_website/./scripts/module/spot/spot.js?@cacheBust"></script>
1087 <script src="/Files/Templates/Designs/Nissens_website/./scripts/module/contact/contact.js?@cacheBust"></script>
1088 <script src="/Files/Templates/Designs/Nissens_website/./scripts/module/animation/animation.js?@cacheBust"></script>
1089 <script src="/Files/Templates/Designs/Nissens_website/./scripts/module/oilfinder/oilfinder.js?@cacheBust"></script>
1090 <script src="/Files/Templates/Designs/Nissens_website/./scripts/module/languagePicker/languagePicker.js?@cacheBust"></script>
1091
1092 </body>
1093 </html>