Stäng
Error executing template "Designs/ncnielsen/eCom/Productlist/productlist.cshtml"
System.NullReferenceException: Object reference not set to an instance of an object.
   at CompiledRazorTemplates.Dynamic.RazorEngine_945c7bc35a1244df81644c2c3821b674.<>c__DisplayClass0_0.<GetLevel1GroupName>b__0(TextWriter __razor_helper_writer) in D:\dynamicweb.net\Solutions\Gotcha\ncn.dw9.dynamicweb-cms.com\files\Templates\Designs\ncnielsen\eCom\Productlist\ProductList.cshtml:line 2204
   at CompiledRazorTemplates.Dynamic.RazorEngine_945c7bc35a1244df81644c2c3821b674.<>c__DisplayClass0_0.<GetLevel1GroupName>b__0(TextWriter __razor_helper_writer) in D:\dynamicweb.net\Solutions\Gotcha\ncn.dw9.dynamicweb-cms.com\files\Templates\Designs\ncnielsen\eCom\Productlist\ProductList.cshtml:line 2209
   at RazorEngine.Templating.TemplateWriter.ToString()
   at CompiledRazorTemplates.Dynamic.RazorEngine_945c7bc35a1244df81644c2c3821b674.Execute() in D:\dynamicweb.net\Solutions\Gotcha\ncn.dw9.dynamicweb-cms.com\files\Templates\Designs\ncnielsen\eCom\Productlist\ProductList.cshtml:line 2183
   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 @using System.Text.RegularExpressions 2 @using System.Web 3 4 @{ 5 string[] galleryImages = new string[0]; 6 } 7 @if (System.Web.HttpContext.Current.Request.QueryString["CompletedOrderSecret"] == null) 8 { 9 string searchpattern = "gallery_0*.jpg"; 10 string folderName = GetString("Ecom:Group.Name").ToLower().Replace(" ", "_").Replace("/", "_").Replace("æ", "a").Replace("ø", "o").Replace("å", "a"); 11 12 try 13 { 14 galleryImages = System.IO.Directory.GetFiles(System.Web.HttpContext.Current.Server.MapPath("~\\Files\\Images\\ncnielsen\\ecom\\groups\\" + folderName + "\\"), searchpattern); 15 } 16 catch 17 { 18 19 } 20 21 string searchpatternSales = "*_dk.pdf"; 22 23 if (Pageview.Area.ID == 3) 24 { 25 searchpatternSales = "*_uk.pdf"; 26 } 27 else if (Pageview.Area.ID == 4) 28 { 29 searchpatternSales = "*_se.pdf"; 30 } 31 else if (Pageview.Area.ID == 5) 32 { 33 searchpatternSales = "*_no.pdf"; 34 } 35 36 string[] salesFiles = new string[0]; 37 38 try 39 { 40 salesFiles = System.IO.Directory.GetFiles(System.Web.HttpContext.Current.Server.MapPath("~\\Files\\Files\\ncnielsen\\ecom\\groups\\" + folderName + "\\"), searchpatternSales); 41 } 42 catch 43 { 44 45 } 46 47 bool hasPrice = false; 48 bool hasVideo = false; 49 50 foreach (var _product in GetLoop("Products")) 51 { 52 if (_product.GetInteger("Ecom:Product.Price.PriceWithVAT") > 0) 53 { 54 hasPrice = true; 55 } 56 } 57 58 List<string> dataFiles = new List<string>(); 59 60 System.Web.HttpContext.Current.Items["currentProductName"] = GetString("Ecom:Group.Name"); 61 62 @SnippetStart("TemplateSpecificHeader") 63 <div id="productGalleryImageMain" class="hest" data-folder-name='@folderName' data-images-length='@galleryImages.Length'> 64 @if (galleryImages.Length > 0) 65 { 66 string pathFirst = galleryImages[0].Substring(galleryImages[0].IndexOf("\\files")).Replace("\\", "/"); 67 var metadataFirst = Dynamicweb.Content.Files.Metadata.EditorFactory.GetMetadataForFile(pathFirst); 68 string titleFirst = ""; 69 70 if (metadataFirst != null) 71 { 72 titleFirst = metadataFirst.GetValue("title"); 73 } 74 75 <img src='@pathFirst' alt='@titleFirst' class="js-active" /> 76 for (var a = 1; a < galleryImages.Length; a++) 77 { 78 string path = galleryImages[a].Substring(galleryImages[a].IndexOf("\\files")).Replace("\\", "/"); 79 var metadata = Dynamicweb.Content.Files.Metadata.EditorFactory.GetMetadataForFile(pathFirst); 80 string title = ""; 81 82 if (metadata != null) 83 { 84 title = metadata.GetValue("title"); 85 } 86 87 <img data-src='@path' alt='@title' /> 88 } 89 if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo1"))) 90 { 91 string youtubeUrl1 = GetString("Ecom:Group:Field.ProduktVideo1"); 92 youtubeUrl1 = "https://www.youtube-nocookie.com/embed/" + youtubeUrl1.Substring(youtubeUrl1.LastIndexOf("/") + 1) + "?rel=0&amp;controls=1&amp;showinfo=0&amp;autoplay=0&amp;enablejsapi=1"; 93 94 <div class="video-wrap"> 95 <iframe id="video1" src='@youtubeUrl1' frameborder="0" allowfullscreen></iframe> 96 </div> 97 } 98 if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo2"))) 99 { 100 string youtubeUrl2 = GetString("Ecom:Group:Field.ProduktVideo2"); 101 youtubeUrl2 = "https://www.youtube-nocookie.com/embed/" + youtubeUrl2.Substring(youtubeUrl2.LastIndexOf("/") + 1) + "?rel=0&amp;controls=1&amp;showinfo=0&amp;autoplay=0&amp;enablejsapi=1"; 102 103 <div class="video-wrap"> 104 <iframe id="video2" src='@youtubeUrl2' frameborder="0" allowfullscreen></iframe> 105 </div> 106 } 107 if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo3"))) 108 { 109 string youtubeUrl3 = GetString("Ecom:Group:Field.ProduktVideo3"); 110 youtubeUrl3 = "https://www.youtube-nocookie.com/embed/" + youtubeUrl3.Substring(youtubeUrl3.LastIndexOf("/") + 1) + "?rel=0&amp;controls=1&amp;showinfo=0&amp;autoplay=0&amp;enablejsapi=1"; 111 112 <div class="video-wrap"> 113 <iframe id="video3" src='@youtubeUrl3' frameborder="0" allowfullscreen></iframe> 114 </div> 115 } 116 if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo4"))) 117 { 118 string youtubeUrl4 = GetString("Ecom:Group:Field.ProduktVideo4"); 119 youtubeUrl4 = "https://www.youtube-nocookie.com/embed/" + youtubeUrl4.Substring(youtubeUrl4.LastIndexOf("/") + 1) + "?rel=0&amp;controls=1&amp;showinfo=0&amp;autoplay=0&amp;enablejsapi=1"; 120 121 <div class="video-wrap"> 122 <iframe id="video4" src='@youtubeUrl4' frameborder="0" allowfullscreen></iframe> 123 </div> 124 } 125 if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo5"))) 126 { 127 string youtubeUrl5 = GetString("Ecom:Group:Field.ProduktVideo5"); 128 youtubeUrl5 = "https://www.youtube-nocookie.com/embed/" + youtubeUrl5.Substring(youtubeUrl5.LastIndexOf("/") + 1) + "?rel=0&amp;controls=1&amp;showinfo=0&amp;autoplay=0&amp;enablejsapi=1"; 129 130 <div class="video-wrap"> 131 <iframe id="video5" src='@youtubeUrl5' frameborder="0" allowfullscreen></iframe> 132 </div> 133 } 134 <ul id="circleNavigation"> 135 @for (var a = 0; a < galleryImages.Length; a++) 136 { 137 <li class='circle @if (a == 0) {<text>js-active</text>}'></li> 138 } 139 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo1"))) 140 { 141 <li class="circle"></li> 142 } 143 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo2"))) 144 { 145 <li class="circle"></li> 146 } 147 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo3"))) 148 { 149 <li class="circle"></li> 150 } 151 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo4"))) 152 { 153 <li class="circle"></li> 154 } 155 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo5"))) 156 { 157 <li class="circle"></li> 158 } 159 @if ( 160 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo1")) || 161 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo2")) || 162 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo3")) || 163 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo4")) || 164 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo5")) 165 ) 166 { 167 hasVideo = true; 168 169 <li class="video" data-video-index='@galleryImages.Count()'> 170 @Translate("Translate_Se_video") 171 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-play.svg"))) 172 { 173 <div class="play"> 174 <span class="icon icon-play"> 175 @System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-play.svg")) 176 </span> 177 </div> 178 } 179 </li> 180 } 181 </ul> 182 if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))) 183 { 184 if (galleryImages.Length > 1 || hasVideo) 185 { 186 <span class="navigation-arrow navigation-arrow-left"> 187 <span class="icon icon-arrow-left"> 188 @System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg")) 189 </span> 190 </span> 191 <span class="navigation-arrow navigation-arrow-right"> 192 <span class="icon icon-arrow-right"> 193 @System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg")) 194 </span> 195 </span> 196 } 197 } 198 if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-close.svg"))) 199 { 200 <span class="close"> 201 <span class="icon icon-close"> 202 @System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-close.svg")) 203 </span> 204 </span> 205 } 206 } 207 </div> 208 <div class="content"> 209 <div id="productInfo"> 210 <span id="productLogo"> 211 @{ 212 string logoName = GetString("Ecom:Group.Name").Replace(" ", "_"); 213 214 if (logoName.IndexOf("_") != -1) 215 { 216 logoName = logoName.Substring(0, logoName.IndexOf("_")); 217 } 218 219 string logoAlt = logoName + " logo"; 220 logoName = logoName.ToLower(); 221 logoName = logoName + ".jpg"; 222 } 223 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/images/ncnielsen/ecom/logos/@logoName"))) 224 { 225 <img src='/files/images/ncnielsen/ecom/logos/@logoName' alt='@logoAlt' /> 226 } 227 </span> 228 <h1>@GetString("Ecom:Group.Name")</h1> 229 <div id="productMobileGalleryImageMain"> 230 @if (galleryImages.Length > 0) 231 { 232 string _pathFirst = galleryImages[0].Substring(galleryImages[0].IndexOf("\\files")).Replace("\\", "/"); 233 var _metadataFirst = Dynamicweb.Content.Files.Metadata.EditorFactory.GetMetadataForFile(_pathFirst); 234 string _titleFirst = ""; 235 236 if (_metadataFirst != null) 237 { 238 _titleFirst = _metadataFirst.GetValue("title"); 239 } 240 241 <img src='@_pathFirst' alt='@_titleFirst' class="js-active" /> 242 243 for (var a = 1; a < galleryImages.Length; a++) 244 { 245 string path = galleryImages[a].Substring(galleryImages[a].IndexOf("\\files")).Replace("\\", "/"); 246 var metadata = Dynamicweb.Content.Files.Metadata.EditorFactory.GetMetadataForFile(path); 247 string title = ""; 248 249 if (metadata != null) 250 { 251 title = metadata.GetValue("title"); 252 } 253 254 <img data-src='@path' alt='@title' /> 255 } 256 if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo1"))) 257 { 258 string youtubeUrl1 = GetString("Ecom:Group:Field.ProduktVideo1"); 259 youtubeUrl1 = "https://www.youtube-nocookie.com/embed/" + youtubeUrl1.Substring(youtubeUrl1.LastIndexOf("/") + 1) + "?rel=0&amp;controls=1&amp;showinfo=0&amp;autoplay=0&amp;enablejsapi=1"; 260 261 <div class="video-wrap"> 262 <iframe id="videoMobile1" src='@youtubeUrl1' frameborder="0" allowfullscreen></iframe> 263 </div> 264 } 265 if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo2"))) 266 { 267 string youtubeUrl2 = GetString("Ecom:Group:Field.ProduktVideo2"); 268 youtubeUrl2 = "https://www.youtube-nocookie.com/embed/" + youtubeUrl2.Substring(youtubeUrl2.LastIndexOf("/") + 1) + "?rel=0&amp;controls=1&amp;showinfo=0&amp;autoplay=0&amp;enablejsapi=1"; 269 270 <div class="video-wrap"> 271 <iframe id="videoMobile2" src='@youtubeUrl2' frameborder="0" allowfullscreen></iframe> 272 </div> 273 } 274 if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo3"))) 275 { 276 string youtubeUrl3 = GetString("Ecom:Group:Field.ProduktVideo3"); 277 youtubeUrl3 = "https://www.youtube-nocookie.com/embed/" + youtubeUrl3.Substring(youtubeUrl3.LastIndexOf("/") + 1) + "?rel=0&amp;controls=1&amp;showinfo=0&amp;autoplay=0&amp;enablejsapi=1"; 278 279 <div class="video-wrap"> 280 <iframe id="videoMobile3" src='@youtubeUrl3' frameborder="0" allowfullscreen></iframe> 281 </div> 282 } 283 if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo4"))) 284 { 285 string youtubeUrl4 = GetString("Ecom:Group:Field.ProduktVideo4"); 286 youtubeUrl4 = "https://www.youtube-nocookie.com/embed/" + youtubeUrl4.Substring(youtubeUrl4.LastIndexOf("/") + 1) + "?rel=0&amp;controls=1&amp;showinfo=0&amp;autoplay=0&amp;enablejsapi=1"; 287 288 <div class="video-wrap"> 289 <iframe id="videoMobile4" src='@youtubeUrl4' frameborder="0" allowfullscreen></iframe> 290 </div> 291 } 292 if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo5"))) 293 { 294 string youtubeUrl5 = GetString("Ecom:Group:Field.ProduktVideo5"); 295 youtubeUrl5 = "https://www.youtube-nocookie.com/embed/" + youtubeUrl5.Substring(youtubeUrl5.LastIndexOf("/") + 1) + "?rel=0&amp;controls=1&amp;showinfo=0&amp;autoplay=0&amp;enablejsapi=1"; 296 297 <div class="video-wrap"> 298 <iframe id="videoMobile6" src='@youtubeUrl5' frameborder="0" allowfullscreen></iframe> 299 </div> 300 } 301 <ul id="circleNavigationMobile"> 302 @for (var a = 0; a < galleryImages.Length; a++) 303 { 304 <li class='circle @if (a == 0) {<text>js-active</text>}'></li> 305 } 306 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo1"))) 307 { 308 <li class="circle"></li> 309 } 310 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo2"))) 311 { 312 <li class="circle"></li> 313 } 314 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo3"))) 315 { 316 <li class="circle"></li> 317 } 318 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo4"))) 319 { 320 <li class="circle"></li> 321 } 322 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo5"))) 323 { 324 <li class="circle"></li> 325 } 326 @if ( 327 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo1")) || 328 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo2")) || 329 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo3")) || 330 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo4")) || 331 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProduktVideo5")) 332 ) 333 { 334 <li class="video" data-video-index='@galleryImages.Count()'> 335 Se video 336 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-play.svg"))) 337 { 338 <div class="play"> 339 <span class="icon icon-play"> 340 @System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-play.svg")) 341 </span> 342 </div> 343 } 344 </li> 345 } 346 </ul> 347 348 if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))) 349 { 350 if (galleryImages.Length > 1 || hasVideo) 351 { 352 <span class="navigation-arrow navigation-arrow-left"> 353 <span class="icon icon-arrow-left"> 354 @System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg")) 355 </span> 356 </span> 357 <span class="navigation-arrow navigation-arrow-right"> 358 <span class="icon icon-arrow-right"> 359 @System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg")) 360 </span> 361 </span> 362 } 363 } 364 } 365 </div> 366 @GetString("Ecom:Group.Description") 367 </div> 368 <div id="productCta"> 369 @if (!hasPrice) 370 { 371 string phone = Pageview.Area.Item["NewMachines__HeaderPhoneNumber"].ToString(); 372 string phoneLink = "tel:" + phone.Replace(" ", ""); 373 374 /*<a href="/Default.aspx?Id=@Pageview.Area.Item["BookMeetingPageId"]" class="button button-large button-primary"><span class="text">@Translate("Translate_Book_et_moede")</span></a>*/ 375 <a id="machinesRequestButton" class="button button-large button-primary"> 376 <span class="text">@Translate("Translate_Prisforespoergsel")</span> 377 </a> 378 <a class="button button-large button-secondary button-secondary--multiline" href="@phoneLink"> 379 <span class="text">@Translate("Translate_Ring_til_os"):<br />@phone</span> 380 </a> 381 @*if (salesFiles.Length > 0) { 382 <a class="button link-button" data-scroll-target="downloadList"><span class="text">@Translate("Translate_Download_salgsmateriale")</span></a> 383 }*@ 384 <a data-scroll-target="orderSalesMaterials" class="button button-inline"><span class="text">@Translate("Translate_Bestil_salgsmateriale")</span></a> 385 <div id="machinesRequestForm"> 386 @{ 387 int formParagraphID = -1; 388 389 try 390 { 391 formParagraphID = Convert.ToInt32(Pageview.Area.Item["NewMachinesRequestParagraph"]); 392 } 393 catch 394 { 395 396 } 397 398 if (formParagraphID != -1) 399 { 400 <text>@RenderParagraphContent(formParagraphID)</text> 401 } 402 } 403 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-close.svg"))) 404 { 405 <span class="icon icon-close"> 406 @System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-close.svg")) 407 </span> 408 } 409 </div> 410 } 411 else 412 { 413 double lowestPrice = -1; 414 string cc = ""; 415 416 foreach (var product in GetLoop("Products")) 417 { 418 if (lowestPrice == -1) 419 { 420 lowestPrice = product.GetDouble("Ecom:Product.Price.PriceWithoutVAT"); 421 } 422 else if (product.GetDouble("Ecom:Product.Price.PriceWithoutVAT") < lowestPrice) 423 { 424 lowestPrice = product.GetDouble("Ecom:Product.Price.PriceWithoutVAT"); 425 } 426 427 if (cc == "") 428 { 429 cc = product.GetString("Ecom:Product.Price.Currency.Code"); 430 } 431 } 432 433 <span class="price-from">@Translate("Translate_Price_from") @lowestPrice.ToString("#0,00.00") @cc</span> 434 <span id="orderProduct" class="button button-primary button-large"> 435 <span class="text">@Translate("Translate_Se_specifikationer_eller_bestil_produkt")</span> 436 </span> 437 } 438 </div> 439 @if ( 440 ( 441 GetBoolean("Ecom:Group:Field.InternNr.Value") || 442 GetBoolean("Ecom:Group:Field.Fabrikat.Value") || 443 GetBoolean("Ecom:Group:Field.Aargang.Value") || 444 GetBoolean("Ecom:Group:Field.Type.Value") || 445 GetBoolean("Ecom:Group:Field.Gruppe.Value") || 446 GetBoolean("Ecom:Group:Field.Kapacitet.Value") || 447 GetBoolean("Ecom:Group:Field.Laengde.Value") || 448 GetBoolean("Ecom:Group:Field.Laengdeplatform.Value") || 449 GetBoolean("Ecom:Group:Field.Laengdestoettebenplatform.Value") || 450 GetBoolean("Ecom:Group:Field.Bredde.Value") || 451 GetBoolean("Ecom:Group:Field.Loeftehoejde.Value") || 452 GetBoolean("Ecom:Group:Field.Byggehoejde.Value") || 453 GetBoolean("Ecom:Group:Field.Gaffellaengde.Value") || 454 GetBoolean("Ecom:Group:Field.Akselafstand.Value") || 455 GetBoolean("Ecom:Group:Field.Masttype.Value") || 456 GetBoolean("Ecom:Group:Field.Aggregat.Value") || 457 GetBoolean("Ecom:Group:Field.Specaggregat.Value") || 458 GetBoolean("Ecom:Group:Field.Kabine.Value") || 459 GetBoolean("Ecom:Group:Field.Lys.Value") || 460 GetBoolean("Ecom:Group:Field.TraekhjulHjulslags.Value") || 461 GetBoolean("Ecom:Group:Field.TraekhjulHjulstoerrelseOgType.Value") || 462 GetBoolean("Ecom:Group:Field.StyrehjulHjulslags.Value") || 463 GetBoolean("Ecom:Group:Field.StyrehjulHjulstoerrelseOgType.Value") || 464 GetBoolean("Ecom:Group:Field.Motor.Value") || 465 GetBoolean("Ecom:Group:Field.Transmission.Value") || 466 GetBoolean("Ecom:Group:Field.Model.Value") || 467 GetBoolean("Ecom:Group:Field.Tyngdepunktsafstand.Value") || 468 GetBoolean("Ecom:Group:Field.Batteri.Value") || 469 GetBoolean("Ecom:Group:Field.Skammelkapacitet.Value") || 470 GetBoolean("Ecom:Group:Field.Foererplads.Value") || 471 GetBoolean("Ecom:Group:Field.KoerehastighedMedUdenLast.Value") || 472 GetBoolean("Ecom:Group:Field.LoefteHastighedMedUdenLast.Value") || 473 GetBoolean("Ecom:Group:Field.Motorydelse.Value") || 474 GetBoolean("Ecom:Group:Field.Bordbredde.Value") || 475 GetBoolean("Ecom:Group:Field.Gaffelhjul.Value") || 476 GetBoolean("Ecom:Group:Field.Gaffelbredde.Value") || 477 GetBoolean("Ecom:Group:Field.Stoettehjul.Value") || 478 GetBoolean("Ecom:Group:Field.Udstyr.Value") || 479 GetBoolean("Ecom:Group:Field.Initialloeft.Value") 480 ) && 481 !hasPrice 482 ) 483 { 484 <span id="scrollIndicator"> 485 <span class="text">@Translate("Translate_Scroll_Se_Sespecifikationer")</span> 486 <span id="scrollIndicatorline"></span> 487 </span> 488 } 489 @*<div id="cartForm"> 490 @foreach (var product in GetLoop("Products")) { 491 if (product.GetInteger("Products.LoopCounter") == 1) { 492 <div id="cartButtons"> 493 <a id="productOrderNow" class="button button-primary" data-href="@product.GetString("Ecom:Product:SavedForLater.AddToBasketLink")"><span class="text">@Translate("Translate_Bestil_med_det_samme")</span></a> 494 <a class="button button-inline" href="@product.GetString("Ecom:Product:SavedForLater.AddToBasketLink")"><span class="text">@Translate("Translate_Laeg_i_kurv_og_se_flere_maskiner")</span></a> 495 </div> 496 } 497 } 498 @{ 499 int cartParagraphID = -1; 500 501 try { 502 cartParagraphID = Convert.ToInt32(Pageview.Area.Item["ProductPageCartParagraph"]); 503 } catch { 504 // 505 } 506 507 if (cartParagraphID != -1) { 508 <text> 509 @RenderParagraphContent(cartParagraphID) 510 </text> 511 } 512 } 513 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-close.svg"))) { 514 <span class="icon icon-close"> 515 @System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-close.svg")) 516 </span> 517 } 518 </div>*@ 519 </div> 520 @SnippetEnd("TemplateSpecificHeader") 521 522 if ( 523 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion1Header")) || 524 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion2Header")) || 525 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion3Header")) || 526 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion4Header")) || 527 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion5Header")) || 528 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion6Header")) || 529 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion7Header")) || 530 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion8Header")) || 531 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion9Header")) 532 ) 533 { 534 bool isFirst = true; 535 536 <section class="section section-greyextradark section-accordion"> 537 <div class="content"> 538 <ul class="accordion"> 539 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion1Header"))) 540 { 541 <li class='accordion-item @if (isFirst) {<text>js-open</text>}'> 542 <h2>@GetString("Ecom:Group:Field.Accordion1Header")</h2> 543 <div class="content"> 544 <p>@GetString("Ecom:Group:Field.Accordion1BodyText")</p> 545 </div> 546 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))) 547 { 548 <span class="icon icon-arrow-down">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))</span> 549 } 550 </li> 551 552 isFirst = false; 553 } 554 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion2Header"))) 555 { 556 <li class='accordion-item @if (isFirst) {<text>js-open</text>}'> 557 <h2>@GetString("Ecom:Group:Field.Accordion2Header")</h2> 558 <div class="content"> 559 <p>@GetString("Ecom:Group:Field.Accordion2BodyText")</p> 560 </div> 561 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))) 562 { 563 <span class="icon icon-arrow-down">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))</span> 564 } 565 </li> 566 567 isFirst = false; 568 } 569 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion3Header"))) 570 { 571 <li class='accordion-item @if (isFirst) {<text>js-open</text>}'> 572 <h2>@GetString("Ecom:Group:Field.Accordion3Header")</h2> 573 <div class="content"> 574 <p>@GetString("Ecom:Group:Field.Accordion3BodyText")</p> 575 </div> 576 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))) 577 { 578 <span class="icon icon-arrow-down">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))</span> 579 } 580 </li> 581 582 isFirst = false; 583 } 584 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion4Header"))) 585 { 586 <li class='accordion-item @if (isFirst) {<text>js-open</text>}'> 587 <h2>@GetString("Ecom:Group:Field.Accordion4Header")</h2> 588 <div class="content"> 589 <p>@GetString("Ecom:Group:Field.Accordion4BodyText")</p> 590 </div> 591 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))) 592 { 593 <span class="icon icon-arrow-down">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))</span> 594 } 595 </li> 596 597 isFirst = false; 598 } 599 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion5Header"))) 600 { 601 <li class='accordion-item @if (isFirst) {<text>js-open</text>}'> 602 <h2>@GetString("Ecom:Group:Field.Accordion5Header")</h2> 603 <div class="content"> 604 <p>@GetString("Ecom:Group:Field.Accordion5BodyText")</p> 605 </div> 606 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))) 607 { 608 <span class="icon icon-arrow-down">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))</span> 609 } 610 </li> 611 612 isFirst = false; 613 } 614 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion6Header"))) 615 { 616 <li class='accordion-item @if (isFirst) {<text>js-open</text>}'> 617 <h2>@GetString("Ecom:Group:Field.Accordion6Header")</h2> 618 <div class="content"> 619 <p>@GetString("Ecom:Group:Field.Accordion6BodyText")</p> 620 </div> 621 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))) 622 { 623 <span class="icon icon-arrow-down">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))</span> 624 } 625 </li> 626 627 isFirst = false; 628 } 629 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion7Header"))) 630 { 631 <li class='accordion-item @if (isFirst) {<text>js-open</text>}'> 632 <h2>@GetString("Ecom:Group:Field.Accordion7Header")</h2> 633 <div class="content"> 634 <p>@GetString("Ecom:Group:Field.Accordion7BodyText")</p> 635 </div> 636 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))) 637 { 638 <span class="icon icon-arrow-down">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))</span> 639 } 640 </li> 641 642 isFirst = false; 643 } 644 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion8Header"))) 645 { 646 <li class='accordion-item @if (isFirst) {<text>js-open</text>}'> 647 <h2>@GetString("Ecom:Group:Field.Accordion8Header")</h2> 648 <div class="content"> 649 <p>@GetString("Ecom:Group:Field.Accordion8BodyText")</p> 650 </div> 651 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))) 652 { 653 <span class="icon icon-arrow-down">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))</span> 654 } 655 </li> 656 657 isFirst = false; 658 } 659 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.Accordion9Header"))) 660 { 661 <li class='accordion-item @if (isFirst) {<text>js-open</text>}'> 662 <h2>@GetString("Ecom:Group:Field.Accordion9Header")</h2> 663 <div class="content"> 664 <p>@GetString("Ecom:Group:Field.Accordion9BodyText")</p> 665 </div> 666 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))) 667 { 668 <span class="icon icon-arrow-down">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-arrow-down.svg"))</span> 669 } 670 </li> 671 672 isFirst = false; 673 } 674 </ul> 675 </div> 676 </section> 677 } 678 679 if ( 680 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab1Header")) || 681 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab2Header")) || 682 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab3Header")) || 683 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab4Header")) || 684 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab5Header")) || 685 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab6Header")) || 686 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab7Header")) || 687 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab8Header")) || 688 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab9Header")) || 689 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab10Header")) || 690 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab11Header")) || 691 !string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab12Header")) 692 ) 693 { 694 bool isFirst = true; 695 696 <section class="section section-product-tabs section-white"> 697 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTabHeadline"))) 698 { 699 <h2 class="tabs__headline">@GetString("Ecom:Group:Field.ProductTabHeadline")</h2> 700 } 701 702 <div class="tabs"> 703 <ul class="tabs__list"> 704 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab1Header"))) 705 { 706 <li class="tabs__item tabs__item--js-active">@GetString("Ecom:Group:Field.ProductTab1Header")</li> 707 } 708 709 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab2Header"))) 710 { 711 <li class="tabs__item">@GetString("Ecom:Group:Field.ProductTab2Header")</li> 712 } 713 714 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab3Header"))) 715 { 716 <li class="tabs__item">@GetString("Ecom:Group:Field.ProductTab3Header")</li> 717 } 718 719 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab4Header"))) 720 { 721 <li class="tabs__item">@GetString("Ecom:Group:Field.ProductTab4Header")</li> 722 } 723 724 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab5Header"))) 725 { 726 <li class="tabs__item">@GetString("Ecom:Group:Field.ProductTab5Header")</li> 727 } 728 729 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab6Header"))) 730 { 731 <li class="tabs__item">@GetString("Ecom:Group:Field.ProductTab6Header")</li> 732 } 733 734 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab7Header"))) 735 { 736 <li class="tabs__item">@GetString("Ecom:Group:Field.ProductTab7Header")</li> 737 } 738 739 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab8Header"))) 740 { 741 <li class="tabs__item">@GetString("Ecom:Group:Field.ProductTab8Header")</li> 742 } 743 744 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab9Header"))) 745 { 746 <li class="tabs__item">@GetString("Ecom:Group:Field.ProductTab9Header")</li> 747 } 748 749 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab10Header"))) 750 { 751 <li class="tabs__item">@GetString("Ecom:Group:Field.ProductTab10Header")</li> 752 } 753 754 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab11Header"))) 755 { 756 <li class="tabs__item">@GetString("Ecom:Group:Field.ProductTab11Header")</li> 757 } 758 759 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab12Header"))) 760 { 761 <li class="tabs__item">@GetString("Ecom:Group:Field.ProductTab12Header")</li> 762 } 763 764 </ul> 765 <div class="tabs__content-wrap"> 766 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab1Header"))) 767 { 768 <div class="tabs__content tabs__content--js-active"> 769 770 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab1Image"))) 771 { 772 <div class="tabs__content-image-wrap"> 773 <img class="tabs__content-image" src="@GetString("Ecom:Group:Field.ProductTab1Image.Clean")" alt="@GetString("Ecom:Group:Field.ProductTab1Header")" /> 774 </div> 775 } 776 <div class="tabs__text-wrap"> 777 <h3>@GetString("Ecom:Group:Field.ProductTab1Header")</h3> 778 <p>@GetString("Ecom:Group:Field.ProductTab1Text")</p> 779 </div> 780 </div> 781 } 782 783 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab2Header"))) 784 { 785 <div class="tabs__content"> 786 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab2Image"))) 787 { 788 <div class="tabs__content-image-wrap"> 789 <img class="tabs__content-image" src="@GetString("Ecom:Group:Field.ProductTab2Image.Clean")" alt="@GetString("Ecom:Group:Field.ProductTab2Header")" /> 790 </div> 791 } 792 <div class="tabs__text-wrap"> 793 <h3>@GetString("Ecom:Group:Field.ProductTab2Header")</h3> 794 <p>@GetString("Ecom:Group:Field.ProductTab2Text")</p> 795 </div> 796 </div> 797 } 798 799 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab3Header"))) 800 { 801 <div class="tabs__content"> 802 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab3Image"))) 803 { 804 <div class="tabs__content-image-wrap"> 805 <img class="tabs__content-image" src="@GetString("Ecom:Group:Field.ProductTab3Image.Clean")" alt="@GetString("Ecom:Group:Field.ProductTab3Header")" /> 806 </div> 807 } 808 <div class="tabs__text-wrap"> 809 <h3>@GetString("Ecom:Group:Field.ProductTab3Header")</h3> 810 <p>@GetString("Ecom:Group:Field.ProductTab3Text")</p> 811 </div> 812 </div> 813 } 814 815 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab4Header"))) 816 { 817 <div class="tabs__content"> 818 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab4Image"))) 819 { 820 <div class="tabs__content-image-wrap"> 821 <img class="tabs__content-image" src="@GetString("Ecom:Group:Field.ProductTab4Image.Clean")" alt="@GetString("Ecom:Group:Field.ProductTab4Header")" /> 822 </div> 823 } 824 <div class="tabs__text-wrap"> 825 <h3>@GetString("Ecom:Group:Field.ProductTab4Header")</h3> 826 <p>@GetString("Ecom:Group:Field.ProductTab4Text")</p> 827 </div> 828 </div> 829 } 830 831 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab5Header"))) 832 { 833 <div class="tabs__content"> 834 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab5Image"))) 835 { 836 <div class="tabs__content-image-wrap"> 837 <img class="tabs__content-image" src="@GetString("Ecom:Group:Field.ProductTab5Image.Clean")" alt="@GetString("Ecom:Group:Field.ProductTab5Header")" /> 838 </div> 839 } 840 <div class="tabs__text-wrap"> 841 <h3>@GetString("Ecom:Group:Field.ProductTab5Header")</h3> 842 <p>@GetString("Ecom:Group:Field.ProductTab5Text")</p> 843 </div> 844 </div> 845 } 846 847 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab6Header"))) 848 { 849 <div class="tabs__content"> 850 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab6Image"))) 851 { 852 <div class="tabs__content-image-wrap"> 853 <img class="tabs__content-image" src="@GetString("Ecom:Group:Field.ProductTab6Image.Clean")" alt="@GetString("Ecom:Group:Field.ProductTab6Header")" /> 854 </div> 855 } 856 <div class="tabs__text-wrap"> 857 <h3>@GetString("Ecom:Group:Field.ProductTab6Header")</h3> 858 <p>@GetString("Ecom:Group:Field.ProductTab6Text")</p> 859 </div> 860 </div> 861 } 862 863 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab7Header"))) 864 { 865 <div class="tabs__content"> 866 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab7Image"))) 867 { 868 <div class="tabs__content-image-wrap"> 869 <img class="tabs__content-image" src="@GetString("Ecom:Group:Field.ProductTab7Image.Clean")" alt="@GetString("Ecom:Group:Field.ProductTab7Header")" /> 870 </div> 871 } 872 <div class="tabs__text-wrap"> 873 <h3>@GetString("Ecom:Group:Field.ProductTab7Header")</h3> 874 <p>@GetString("Ecom:Group:Field.ProductTab7Text")</p> 875 </div> 876 </div> 877 } 878 879 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab8Header"))) 880 { 881 <div class="tabs__content"> 882 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab8Image"))) 883 { 884 <div class="tabs__content-image-wrap"> 885 <img class="tabs__content-image" src="@GetString("Ecom:Group:Field.ProductTab8Image.Clean")" alt="@GetString("Ecom:Group:Field.ProductTab8Header")" /> 886 </div> 887 } 888 <div class="tabs__text-wrap"> 889 <h3>@GetString("Ecom:Group:Field.ProductTab8Header")</h3> 890 <p>@GetString("Ecom:Group:Field.ProductTab8Text")</p> 891 </div> 892 </div> 893 } 894 895 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab9Header"))) 896 { 897 <div class="tabs__content"> 898 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab9Image"))) 899 { 900 <div class="tabs__content-image-wrap"> 901 <img class="tabs__content-image" src="@GetString("Ecom:Group:Field.ProductTab9Image.Clean")" alt="@GetString("Ecom:Group:Field.ProductTab9Header")" /> 902 </div> 903 } 904 <div class="tabs__text-wrap"> 905 <h3>@GetString("Ecom:Group:Field.ProductTab9Header")</h3> 906 <p>@GetString("Ecom:Group:Field.ProductTab9Text")</p> 907 </div> 908 </div> 909 } 910 911 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab10Header"))) 912 { 913 <div class="tabs__content"> 914 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab10Image"))) 915 { 916 <div class="tabs__content-image-wrap"> 917 <img class="tabs__content-image" src="@GetString("Ecom:Group:Field.ProductTab10Image.Clean")" alt="@GetString("Ecom:Group:Field.ProductTab10Header")" /> 918 </div> 919 } 920 <div class="tabs__text-wrap"> 921 <h3>@GetString("Ecom:Group:Field.ProductTab10Header")</h3> 922 <p>@GetString("Ecom:Group:Field.ProductTab10Text")</p> 923 </div> 924 </div> 925 } 926 927 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab11Header"))) 928 { 929 <div class="tabs__content"> 930 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab11Image"))) 931 { 932 <div class="tabs__content-image-wrap"> 933 <img class="tabs__content-image" src="@GetString("Ecom:Group:Field.ProductTab11Image.Clean")" alt="@GetString("Ecom:Group:Field.ProductTab11Header")" /> 934 </div> 935 } 936 <div class="tabs__text-wrap"> 937 <h3>@GetString("Ecom:Group:Field.ProductTab11Header")</h3> 938 <p>@GetString("Ecom:Group:Field.ProductTab11Text")</p> 939 </div> 940 </div> 941 } 942 943 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab12Header"))) 944 { 945 <div class="tabs__content"> 946 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab12Image"))) 947 { 948 <div class="tabs__content-image-wrap"> 949 <img class="tabs__content-image" src="@GetString("Ecom:Group:Field.ProductTab12Image.Clean")" alt="@GetString("Ecom:Group:Field.ProductTab12Header")" /> 950 </div> 951 } 952 <div class="tabs__text-wrap"> 953 <h3>@GetString("Ecom:Group:Field.ProductTab12Header")</h3> 954 <p>@GetString("Ecom:Group:Field.ProductTab12Text")</p> 955 </div> 956 </div> 957 } 958 </div> 959 </div> 960 961 <ul class="accordion"> 962 963 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab1Header"))) 964 { 965 <li class="accordion-item"> 966 <h3> 967 @GetString("Ecom:Group:Field.ProductTab1Header") 968 </h3> 969 <div class="content"> 970 @GetString("Ecom:Group:Field.ProductTab1Text") 971 972 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab1Image"))) 973 { 974 string ptImageSM = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab1Image.Clean")}&width=350"; 975 string ptImageMD = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab1Image.Clean")}&width=550"; 976 977 <picture class="accordion-image-wrap"> 978 <source srcset="@ptImageMD" media="(min-width: 500px)" /> 979 <img class="content-image" src="@ptImageSM" alt="@GetString("Ecom:Group:Field.ProductTab1Header")" /> 980 </picture> 981 } 982 </div> 983 <span class="icon icon-arrow-down"> 984 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.998 5.83"> 985 <path d="M9.9.6L9.4.1a.316.316 0 0 0-.46 0L5 4.037 1.062.1A.316.316 0 0 0 .6.1L.1.6a.316.316 0 0 0 0 .46l4.668 4.67a.316.316 0 0 0 .46 0L9.9 1.062A.316.316 0 0 0 9.9.6z"> 986 </path> 987 </svg> 988 </span> 989 </li> 990 } 991 992 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab2Header"))) 993 { 994 <li class="accordion-item"> 995 <h3> 996 @GetString("Ecom:Group:Field.ProductTab2Header") 997 </h3> 998 <div class="content"> 999 @GetString("Ecom:Group:Field.ProductTab2Text") 1000 1001 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab2Image"))) 1002 { 1003 string ptImageSM = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab2Image.Clean")}&width=350"; 1004 string ptImageMD = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab2Image.Clean")}&width=550"; 1005 1006 <picture class="accordion-image-wrap"> 1007 <source srcset="@ptImageMD" media="(min-width: 500px)" /> 1008 <img class="content-image" src="@ptImageSM" alt="@GetString("Ecom:Group:Field.ProductTab2Header")" /> 1009 </picture> 1010 } 1011 </div> 1012 <span class="icon icon-arrow-down"> 1013 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.998 5.83"> 1014 <path d="M9.9.6L9.4.1a.316.316 0 0 0-.46 0L5 4.037 1.062.1A.316.316 0 0 0 .6.1L.1.6a.316.316 0 0 0 0 .46l4.668 4.67a.316.316 0 0 0 .46 0L9.9 1.062A.316.316 0 0 0 9.9.6z"> 1015 </path> 1016 </svg> 1017 </span> 1018 </li> 1019 } 1020 1021 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab3Header"))) 1022 { 1023 <li class="accordion-item"> 1024 <h3> 1025 @GetString("Ecom:Group:Field.ProductTab3Header") 1026 </h3> 1027 <div class="content"> 1028 @GetString("Ecom:Group:Field.ProductTab3Text") 1029 1030 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab3Image"))) 1031 { 1032 string ptImageSM = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab3Image.Clean")}&width=350"; 1033 string ptImageMD = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab3Image.Clean")}&width=550"; 1034 1035 <picture class="accordion-image-wrap"> 1036 <source srcset="@ptImageMD" media="(min-width: 500px)" /> 1037 <img class="content-image" src="@ptImageSM" alt="@GetString("Ecom:Group:Field.ProductTab3Header")" /> 1038 </picture> 1039 } 1040 </div> 1041 <span class="icon icon-arrow-down"> 1042 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.998 5.83"> 1043 <path d="M9.9.6L9.4.1a.316.316 0 0 0-.46 0L5 4.037 1.062.1A.316.316 0 0 0 .6.1L.1.6a.316.316 0 0 0 0 .46l4.668 4.67a.316.316 0 0 0 .46 0L9.9 1.062A.316.316 0 0 0 9.9.6z"> 1044 </path> 1045 </svg> 1046 </span> 1047 </li> 1048 } 1049 1050 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab4Header"))) 1051 { 1052 <li class="accordion-item"> 1053 <h3> 1054 @GetString("Ecom:Group:Field.ProductTab4Header") 1055 </h3> 1056 <div class="content"> 1057 @GetString("Ecom:Group:Field.ProductTab4Text") 1058 1059 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab4Image"))) 1060 { 1061 string ptImageSM = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab4Image.Clean")}&width=350"; 1062 string ptImageMD = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab4Image.Clean")}&width=550"; 1063 1064 <picture class="accordion-image-wrap"> 1065 <source srcset="@ptImageMD" media="(min-width: 500px)" /> 1066 <img class="content-image" src="@ptImageSM" alt="@GetString("Ecom:Group:Field.ProductTab4Header")" /> 1067 </picture> 1068 } 1069 </div> 1070 <span class="icon icon-arrow-down"> 1071 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.998 5.83"> 1072 <path d="M9.9.6L9.4.1a.316.316 0 0 0-.46 0L5 4.037 1.062.1A.316.316 0 0 0 .6.1L.1.6a.316.316 0 0 0 0 .46l4.668 4.67a.316.316 0 0 0 .46 0L9.9 1.062A.316.316 0 0 0 9.9.6z"> 1073 </path> 1074 </svg> 1075 </span> 1076 </li> 1077 } 1078 1079 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab5Header"))) 1080 { 1081 <li class="accordion-item"> 1082 <h3> 1083 @GetString("Ecom:Group:Field.ProductTab5Header") 1084 </h3> 1085 <div class="content"> 1086 @GetString("Ecom:Group:Field.ProductTab5Text") 1087 1088 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab5Image"))) 1089 { 1090 string ptImageSM = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab5Image.Clean")}&width=350"; 1091 string ptImageMD = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab5Image.Clean")}&width=550"; 1092 1093 <picture class="accordion-image-wrap"> 1094 <source srcset="@ptImageMD" media="(min-width: 500px)" /> 1095 <img class="content-image" src="@ptImageSM" alt="@GetString("Ecom:Group:Field.ProductTab5Header")" /> 1096 </picture> 1097 } 1098 </div> 1099 <span class="icon icon-arrow-down"> 1100 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.998 5.83"> 1101 <path d="M9.9.6L9.4.1a.316.316 0 0 0-.46 0L5 4.037 1.062.1A.316.316 0 0 0 .6.1L.1.6a.316.316 0 0 0 0 .46l4.668 4.67a.316.316 0 0 0 .46 0L9.9 1.062A.316.316 0 0 0 9.9.6z"> 1102 </path> 1103 </svg> 1104 </span> 1105 </li> 1106 } 1107 1108 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab6Header"))) 1109 { 1110 <li class="accordion-item"> 1111 <h3> 1112 @GetString("Ecom:Group:Field.ProductTab6Header") 1113 </h3> 1114 <div class="content"> 1115 @GetString("Ecom:Group:Field.ProductTab6Text") 1116 1117 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab6Image"))) 1118 { 1119 string ptImageSM = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab6Image.Clean")}&width=350"; 1120 string ptImageMD = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab6Image.Clean")}&width=550"; 1121 1122 <picture class="accordion-image-wrap"> 1123 <source srcset="@ptImageMD" media="(min-width: 500px)" /> 1124 <img class="content-image" src="@ptImageSM" alt="@GetString("Ecom:Group:Field.ProductTab6Header")" /> 1125 </picture> 1126 } 1127 </div> 1128 <span class="icon icon-arrow-down"> 1129 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.998 5.83"> 1130 <path d="M9.9.6L9.4.1a.316.316 0 0 0-.46 0L5 4.037 1.062.1A.316.316 0 0 0 .6.1L.1.6a.316.316 0 0 0 0 .46l4.668 4.67a.316.316 0 0 0 .46 0L9.9 1.062A.316.316 0 0 0 9.9.6z"> 1131 </path> 1132 </svg> 1133 </span> 1134 </li> 1135 } 1136 1137 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab4Header"))) 1138 { 1139 <li class="accordion-item"> 1140 <h3> 1141 @GetString("Ecom:Group:Field.ProductTab7Header") 1142 </h3> 1143 <div class="content"> 1144 @GetString("Ecom:Group:Field.ProductTab7Text") 1145 1146 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab7Image"))) 1147 { 1148 string ptImageSM = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab7Image.Clean")}&width=350"; 1149 string ptImageMD = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab7Image.Clean")}&width=550"; 1150 1151 <picture class="accordion-image-wrap"> 1152 <source srcset="@ptImageMD" media="(min-width: 500px)" /> 1153 <img class="content-image" src="@ptImageSM" alt="@GetString("Ecom:Group:Field.ProductTab7Header")" /> 1154 </picture> 1155 } 1156 </div> 1157 <span class="icon icon-arrow-down"> 1158 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.998 5.83"> 1159 <path d="M9.9.6L9.4.1a.316.316 0 0 0-.46 0L5 4.037 1.062.1A.316.316 0 0 0 .6.1L.1.6a.316.316 0 0 0 0 .46l4.668 4.67a.316.316 0 0 0 .46 0L9.9 1.062A.316.316 0 0 0 9.9.6z"> 1160 </path> 1161 </svg> 1162 </span> 1163 </li> 1164 } 1165 1166 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab8Header"))) 1167 { 1168 <li class="accordion-item"> 1169 <h3> 1170 @GetString("Ecom:Group:Field.ProductTab8Header") 1171 </h3> 1172 <div class="content"> 1173 @GetString("Ecom:Group:Field.ProductTab8Text") 1174 1175 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab8Image"))) 1176 { 1177 string ptImageSM = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab8Image.Clean")}&width=350"; 1178 string ptImageMD = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab8Image.Clean")}&width=550"; 1179 1180 <picture class="accordion-image-wrap"> 1181 <source srcset="@ptImageMD" media="(min-width: 500px)" /> 1182 <img class="content-image" src="@ptImageSM" alt="@GetString("Ecom:Group:Field.ProductTab8Header")" /> 1183 </picture> 1184 } 1185 </div> 1186 <span class="icon icon-arrow-down"> 1187 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.998 5.83"> 1188 <path d="M9.9.6L9.4.1a.316.316 0 0 0-.46 0L5 4.037 1.062.1A.316.316 0 0 0 .6.1L.1.6a.316.316 0 0 0 0 .46l4.668 4.67a.316.316 0 0 0 .46 0L9.9 1.062A.316.316 0 0 0 9.9.6z"> 1189 </path> 1190 </svg> 1191 </span> 1192 </li> 1193 } 1194 1195 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab9Header"))) 1196 { 1197 <li class="accordion-item"> 1198 <h3> 1199 @GetString("Ecom:Group:Field.ProductTab9Header") 1200 </h3> 1201 <div class="content"> 1202 @GetString("Ecom:Group:Field.ProductTab9Text") 1203 1204 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab9Image"))) 1205 { 1206 string ptImageSM = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab9Image.Clean")}&width=350"; 1207 string ptImageMD = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab9Image.Clean")}&width=550"; 1208 1209 <picture class="accordion-image-wrap"> 1210 <source srcset="@ptImageMD" media="(min-width: 500px)" /> 1211 <img class="content-image" src="@ptImageSM" alt="@GetString("Ecom:Group:Field.ProductTab9Header")" /> 1212 </picture> 1213 } 1214 </div> 1215 <span class="icon icon-arrow-down"> 1216 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.998 5.83"> 1217 <path d="M9.9.6L9.4.1a.316.316 0 0 0-.46 0L5 4.037 1.062.1A.316.316 0 0 0 .6.1L.1.6a.316.316 0 0 0 0 .46l4.668 4.67a.316.316 0 0 0 .46 0L9.9 1.062A.316.316 0 0 0 9.9.6z"> 1218 </path> 1219 </svg> 1220 </span> 1221 </li> 1222 } 1223 1224 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab10Header"))) 1225 { 1226 <li class="accordion-item"> 1227 <h3> 1228 @GetString("Ecom:Group:Field.ProductTab10Header") 1229 </h3> 1230 <div class="content"> 1231 @GetString("Ecom:Group:Field.ProductTab10Text") 1232 1233 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab10Image"))) 1234 { 1235 string ptImageSM = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab10Image.Clean")}&width=350"; 1236 string ptImageMD = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab10Image.Clean")}&width=550"; 1237 1238 <picture class="accordion-image-wrap"> 1239 <source srcset="@ptImageMD" media="(min-width: 500px)" /> 1240 <img class="content-image" src="@ptImageSM" alt="@GetString("Ecom:Group:Field.ProductTab10Header")" /> 1241 </picture> 1242 } 1243 </div> 1244 <span class="icon icon-arrow-down"> 1245 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.998 5.83"> 1246 <path d="M9.9.6L9.4.1a.316.316 0 0 0-.46 0L5 4.037 1.062.1A.316.316 0 0 0 .6.1L.1.6a.316.316 0 0 0 0 .46l4.668 4.67a.316.316 0 0 0 .46 0L9.9 1.062A.316.316 0 0 0 9.9.6z"> 1247 </path> 1248 </svg> 1249 </span> 1250 </li> 1251 } 1252 1253 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab11Header"))) 1254 { 1255 <li class="accordion-item"> 1256 <h3> 1257 @GetString("Ecom:Group:Field.ProductTab11Header") 1258 </h3> 1259 <div class="content"> 1260 @GetString("Ecom:Group:Field.ProductTab11Text") 1261 1262 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab9Image"))) 1263 { 1264 string ptImageSM = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab11Image.Clean")}&width=350"; 1265 string ptImageMD = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab11Image.Clean")}&width=550"; 1266 1267 <picture class="accordion-image-wrap"> 1268 <source srcset="@ptImageMD" media="(min-width: 500px)" /> 1269 <img class="content-image" src="@ptImageSM" alt="@GetString("Ecom:Group:Field.ProductTab11Header")" /> 1270 </picture> 1271 } 1272 </div> 1273 <span class="icon icon-arrow-down"> 1274 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.998 5.83"> 1275 <path d="M9.9.6L9.4.1a.316.316 0 0 0-.46 0L5 4.037 1.062.1A.316.316 0 0 0 .6.1L.1.6a.316.316 0 0 0 0 .46l4.668 4.67a.316.316 0 0 0 .46 0L9.9 1.062A.316.316 0 0 0 9.9.6z"> 1276 </path> 1277 </svg> 1278 </span> 1279 </li> 1280 } 1281 1282 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab12Header"))) 1283 { 1284 <li class="accordion-item"> 1285 <h3> 1286 @GetString("Ecom:Group:Field.ProductTab12Header") 1287 </h3> 1288 <div class="content"> 1289 @GetString("Ecom:Group:Field.ProductTab12Text") 1290 1291 @if (!string.IsNullOrWhiteSpace(GetString("Ecom:Group:Field.ProductTab12Image"))) 1292 { 1293 string ptImageSM = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab12Image.Clean")}&width=350"; 1294 string ptImageMD = $"/Admin/Public/GetImage.ashx?Image={GetString("Ecom:Group:Field.ProductTab12Image.Clean")}&width=550"; 1295 1296 <picture class="accordion-image-wrap"> 1297 <source srcset="@ptImageMD" media="(min-width: 500px)" /> 1298 <img class="content-image" src="@ptImageSM" alt="@GetString("Ecom:Group:Field.ProductTab12Header")" /> 1299 </picture> 1300 } 1301 </div> 1302 <span class="icon icon-arrow-down"> 1303 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.998 5.83"> 1304 <path d="M9.9.6L9.4.1a.316.316 0 0 0-.46 0L5 4.037 1.062.1A.316.316 0 0 0 .6.1L.1.6a.316.316 0 0 0 0 .46l4.668 4.67a.316.316 0 0 0 .46 0L9.9 1.062A.316.316 0 0 0 9.9.6z"> 1305 </path> 1306 </svg> 1307 </span> 1308 </li> 1309 } 1310 </ul> 1311 1312 </section> 1313 } 1314 if ( 1315 GetBoolean("Ecom:Group:Field.InternNr.Value") || 1316 GetBoolean("Ecom:Group:Field.Fabrikat.Value") || 1317 GetBoolean("Ecom:Group:Field.Aargang.Value") || 1318 GetBoolean("Ecom:Group:Field.Type.Value") || 1319 GetBoolean("Ecom:Group:Field.Gruppe.Value") || 1320 GetBoolean("Ecom:Group:Field.Kapacitet.Value") || 1321 GetBoolean("Ecom:Group:Field.Laengde.Value") || 1322 GetBoolean("Ecom:Group:Field.Laengdeplatform.Value") || 1323 GetBoolean("Ecom:Group:Field.Laengdestoettebenplatform.Value") || 1324 GetBoolean("Ecom:Group:Field.Bredde.Value") || 1325 GetBoolean("Ecom:Group:Field.Loeftehoejde.Value") || 1326 GetBoolean("Ecom:Group:Field.Byggehoejde.Value") || 1327 GetBoolean("Ecom:Group:Field.Gaffellaengde.Value") || 1328 GetBoolean("Ecom:Group:Field.Akselafstand.Value") || 1329 GetBoolean("Ecom:Group:Field.Masttype.Value") || 1330 GetBoolean("Ecom:Group:Field.Aggregat.Value") || 1331 GetBoolean("Ecom:Group:Field.Specaggregat.Value") || 1332 GetBoolean("Ecom:Group:Field.Kabine.Value") || 1333 GetBoolean("Ecom:Group:Field.Lys.Value") || 1334 GetBoolean("Ecom:Group:Field.TraekhjulHjulslags.Value") || 1335 GetBoolean("Ecom:Group:Field.TraekhjulHjulstoerrelseOgType.Value") || 1336 GetBoolean("Ecom:Group:Field.StyrehjulHjulslags.Value") || 1337 GetBoolean("Ecom:Group:Field.StyrehjulHjulstoerrelseOgType.Value") || 1338 GetBoolean("Ecom:Group:Field.Motor.Value") || 1339 GetBoolean("Ecom:Group:Field.Transmission.Value") || 1340 GetBoolean("Ecom:Group:Field.Model.Value") || 1341 GetBoolean("Ecom:Group:Field.Tyngdepunktsafstand.Value") || 1342 GetBoolean("Ecom:Group:Field.Batteri.Value") || 1343 GetBoolean("Ecom:Group:Field.Skammelkapacitet.Value") || 1344 GetBoolean("Ecom:Group:Field.Foererplads.Value") || 1345 GetBoolean("Ecom:Group:Field.KoerehastighedMedUdenLast.Value") || 1346 GetBoolean("Ecom:Group:Field.LoefteHastighedMedUdenLast.Value") || 1347 GetBoolean("Ecom:Group:Field.Motorydelse.Value") || 1348 GetBoolean("Ecom:Group:Field.Bordbredde.Value") || 1349 GetBoolean("Ecom:Group:Field.Gaffelhjul.Value") || 1350 GetBoolean("Ecom:Group:Field.Gaffelbredde.Value") || 1351 GetBoolean("Ecom:Group:Field.Stoettehjul.Value") || 1352 GetBoolean("Ecom:Group:Field.Udstyr.Value") || 1353 GetBoolean("Ecom:Group:Field.Initialloeft.Value") 1354 ) 1355 { 1356 <section class='section section-greyextralight section-specifications @if (hasPrice) {<text>with-prices</text>}'> 1357 <div class="content"> 1358 @if (!hasPrice) 1359 { 1360 <h2><span><span>@Translate("Translate_Specifikationer")</span></span></h2> 1361 <div class="table-wrap table-wrap--responsive"> 1362 <table class="table-responsive"> 1363 <thead> 1364 <tr> 1365 <th>@Translate("Translate_Model")</th> 1366 @if (GetBoolean("Ecom:Group:Field.InternNr.Value")) 1367 { 1368 <th>@Translate("Translate_InternNr")</th> 1369 } 1370 @if (GetBoolean("Ecom:Group:Field.Fabrikat.Value")) 1371 { 1372 <th>@Translate("Translate_Fabrikat")</th> 1373 } 1374 @if (GetBoolean("Ecom:Group:Field.Aargang.Value")) 1375 { 1376 <th>@Translate("Translate_Aargang")</th> 1377 } 1378 @if (GetBoolean("Ecom:Group:Field.Type.Value")) 1379 { 1380 <th>@Translate("Translate_Type")</th> 1381 } 1382 @if (GetBoolean("Ecom:Group:Field.Gruppe.Value")) 1383 { 1384 <th>@Translate("Translate_Gruppe")</th> 1385 } 1386 @if (GetBoolean("Ecom:Group:Field.Kapacitet.Value")) 1387 { 1388 <th>@Translate("Translate_Kapacitet")</th> 1389 } 1390 @if (GetBoolean("Ecom:Group:Field.Laengde.Value")) 1391 { 1392 <th>@Translate("Translate_Laengde")</th> 1393 } 1394 @if (GetBoolean("Ecom:Group:Field.Laengdeplatform.Value")) 1395 { 1396 <th>@Translate("Translate_Laengde platform")</th> 1397 } 1398 @if (GetBoolean("Ecom:Group:Field.Laengdestoettebenplatform.Value")) 1399 { 1400 <th>@Translate("Translate_Laengde stoetteben/platform")</th> 1401 } 1402 @if (GetBoolean("Ecom:Group:Field.Bredde.Value")) 1403 { 1404 <th>@Translate("Translate_Bredde")</th> 1405 } 1406 @if (GetBoolean("Ecom:Group:Field.Loeftehoejde.Value")) 1407 { 1408 <th>@Translate("Translate_Loeftehoejde")</th> 1409 } 1410 @if (GetBoolean("Ecom:Group:Field.Byggehoejde.Value")) 1411 { 1412 <th>@Translate("Translate_Byggehoejde")</th> 1413 } 1414 @if (GetBoolean("Ecom:Group:Field.Gaffellaengde.Value")) 1415 { 1416 <th>@Translate("Translate_Gaffellaengde")</th> 1417 } 1418 @if (GetBoolean("Ecom:Group:Field.Akselafstand.Value")) 1419 { 1420 <th>@Translate("Translate_Akselafstand")</th> 1421 } 1422 @if (GetBoolean("Ecom:Group:Field.Masttype.Value")) 1423 { 1424 <th>@Translate("Translate_Masttype")</th> 1425 } 1426 @if (GetBoolean("Ecom:Group:Field.Aggregat.Value")) 1427 { 1428 <th>@Translate("Translate_Aggregat")</th> 1429 } 1430 @if (GetBoolean("Ecom:Group:Field.Specaggregat.Value")) 1431 { 1432 <th>@Translate("Translate_Spec. aggregat")</th> 1433 } 1434 @if (GetBoolean("Ecom:Group:Field.Kabine.Value")) 1435 { 1436 <th>@Translate("Translate_Kabine")</th> 1437 } 1438 @if (GetBoolean("Ecom:Group:Field.Lys.Value")) 1439 { 1440 <th>@Translate("Translate_Lys")</th> 1441 } 1442 @if (GetBoolean("Ecom:Group:Field.TraekhjulHjulslags.Value")) 1443 { 1444 <th>@Translate("Translate_Traekhjul - hjul (slags)")</th> 1445 } 1446 @if (GetBoolean("Ecom:Group:Field.TraekhjulHjulstoerrelseOgType.Value")) 1447 { 1448 <th>@Translate("Translate_Traekhjul - hjulstoerrelse og type")</th> 1449 } 1450 @if (GetBoolean("Ecom:Group:Field.StyrehjulHjulslags.Value")) 1451 { 1452 <th>@Translate("Translate_Styrehjul - hjul (slags)")</th> 1453 } 1454 @if (GetBoolean("Ecom:Group:Field.StyrehjulHjulstoerrelseOgType.Value")) 1455 { 1456 <th>@Translate("Translate_Styrehjul - hjulstoerrelse og type")</th> 1457 } 1458 @if (GetBoolean("Ecom:Group:Field.Motor.Value")) 1459 { 1460 <th>@Translate("Translate_Motor")</th> 1461 } 1462 @if (GetBoolean("Ecom:Group:Field.Transmission.Value")) 1463 { 1464 <th>@Translate("Translate_Transmission")</th> 1465 } 1466 @if (GetBoolean("Ecom:Group:Field.Model.Value")) 1467 { 1468 <th>@Translate("Translate_Model")</th> 1469 } 1470 @if (GetBoolean("Ecom:Group:Field.Tyngdepunktsafstand.Value")) 1471 { 1472 <th>@Translate("Translate_Tyngdepunktsafstand")</th> 1473 } 1474 @if (GetBoolean("Ecom:Group:Field.Batteri.Value")) 1475 { 1476 <th>@Translate("Translate_Batteri")</th> 1477 } 1478 @if (GetBoolean("Ecom:Group:Field.Skammelkapacitet.Value")) 1479 { 1480 <th>@Translate("Translate_Skammelkapacitet")</th> 1481 } 1482 @if (GetBoolean("Ecom:Group:Field.Foererplads.Value")) 1483 { 1484 <th>@Translate("Translate_Foererplads")</th> 1485 } 1486 @if (GetBoolean("Ecom:Group:Field.KoerehastighedMedUdenLast.Value")) 1487 { 1488 <th>@Translate("Translate_KoerehastighedMedUdenLast")</th> 1489 } 1490 @if (GetBoolean("Ecom:Group:Field.LoefteHastighedMedUdenLast.Value")) 1491 { 1492 <th>@Translate("Translate_LoefteHastighedMedUdenLast")</th> 1493 } 1494 @if (GetBoolean("Ecom:Group:Field.Motorydelse.Value")) 1495 { 1496 <th>Translate("Translate_Motorydelse")</th> 1497 } 1498 @if (GetBoolean("Ecom:Group:Field.Bordbredde.Value")) 1499 { 1500 <th>@Translate("Translate_Bordbredde")</th> 1501 } 1502 @if (GetBoolean("Ecom:Group:Field.Gaffelhjul.Value")) 1503 { 1504 <th>@Translate("Translate_Gaffelhjul")</th> 1505 } 1506 @if (GetBoolean("Ecom:Group:Field.Gaffelbredde.Value")) 1507 { 1508 <th>@Translate("Translate_Gaffelbredde")</th> 1509 } 1510 @if (GetBoolean("Ecom:Group:Field.Stoettehjul.Value")) 1511 { 1512 <th>@Translate("Translate_Stoettehjul")</th> 1513 } 1514 @if (GetBoolean("Ecom:Group:Field.Udstyr.Value")) 1515 { 1516 <th>@Translate("Translate_Udstyr")</th> 1517 } 1518 @if (GetBoolean("Ecom:Group:Field.Initialloeft.Value")) 1519 { 1520 <th>@Translate("Translate_Initialloeft")</th> 1521 } 1522 <th>@Translate("Translate_Datablad")</th> 1523 </tr> 1524 </thead> 1525 <tbody> 1526 @foreach (var product in GetLoop("Products")) 1527 { 1528 string productNumber = product.GetString("Ecom:Product.Number").Replace(" ", "_").Replace(",", "").Replace("/", ""); 1529 string dataFile = "/files/Files/ncnielsen/ecom/groups/" + folderName + "/" + productNumber; 1530 1531 if (Pageview.Area.ID == 1) 1532 { 1533 dataFile += "_DK.pdf"; 1534 } 1535 else if (Pageview.Area.ID == 3) 1536 { 1537 dataFile += "_UK.pdf"; 1538 } 1539 else if (Pageview.Area.ID == 4) 1540 { 1541 dataFile += "_SE.pdf"; 1542 } 1543 else if (Pageview.Area.ID == 5) 1544 { 1545 dataFile += "_NO.pdf"; 1546 } 1547 1548 bool fileExists = false; 1549 1550 if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath(dataFile))) 1551 { 1552 fileExists = true; 1553 dataFiles.Add(dataFile.ToLower()); 1554 } 1555 1556 <tr data-file-exists="@fileExists" data-file="@dataFile"> 1557 <td>@product.GetString("Ecom:Product.Number")</td> 1558 @if (GetBoolean("Ecom:Group:Field.InternNr.Value")) 1559 { 1560 <td>@product.GetString("Ecom:Product:Field.InternNr")</td> 1561 } 1562 @if (GetBoolean("Ecom:Group:Field.Fabrikat.Value")) 1563 { 1564 <td>@product.GetString("Ecom:Product:Field.Motor")</td> 1565 } 1566 @if (GetBoolean("Ecom:Group:Field.Aargang.Value")) 1567 { 1568 <td>@product.GetString("Ecom:Product:Field.Aargang")</td> 1569 } 1570 @if (GetBoolean("Ecom:Group:Field.Type.Value")) 1571 { 1572 <td>@product.GetString("Ecom:Product:Field.Type")</td> 1573 } 1574 @if (GetBoolean("Ecom:Group:Field.Gruppe.Value")) 1575 { 1576 <td>@product.GetString("Ecom:Product:Field.Gruppe")</td> 1577 } 1578 @if (GetBoolean("Ecom:Group:Field.Kapacitet.Value")) 1579 { 1580 <td>@product.GetString("Ecom:Product:Field.Kapacitet")</td> 1581 } 1582 @if (GetBoolean("Ecom:Group:Field.Laengde.Value")) 1583 { 1584 <td>@product.GetString("Ecom:Product:Field.Laengde")</td> 1585 } 1586 @if (GetBoolean("Ecom:Group:Field.Laengdeplatform.Value")) 1587 { 1588 <td>@product.GetString("Ecom:Product:Field.Laengdeplatform")</td> 1589 } 1590 @if (GetBoolean("Ecom:Group:Field.Laengdestoettebenplatform.Value")) 1591 { 1592 <td>@product.GetString("Ecom:Product:Field.Laengdestoettebenplatform")</td> 1593 } 1594 @if (GetBoolean("Ecom:Group:Field.Bredde.Value")) 1595 { 1596 <td>@product.GetString("Ecom:Product:Field.Bredde")</td> 1597 } 1598 @if (GetBoolean("Ecom:Group:Field.Loeftehoejde.Value")) 1599 { 1600 <td>@product.GetString("Ecom:Product:Field.Loeftehoejde")</td> 1601 } 1602 @if (GetBoolean("Ecom:Group:Field.Byggehoejde.Value")) 1603 { 1604 <td>@product.GetString("Ecom:Product:Field.Byggehoejde")</td> 1605 } 1606 @if (GetBoolean("Ecom:Group:Field.Gaffellaengde.Value")) 1607 { 1608 <td>@product.GetString("Ecom:Product:Field.Gaffellaengde")</td> 1609 } 1610 @if (GetBoolean("Ecom:Group:Field.Akselafstand.Value")) 1611 { 1612 <td>@product.GetString("Ecom:Product:Field.Akselafstand")</td> 1613 } 1614 @if (GetBoolean("Ecom:Group:Field.Masttype.Value")) 1615 { 1616 <td>@product.GetString("Ecom:Product:Field.Masttype")</td> 1617 } 1618 @if (GetBoolean("Ecom:Group:Field.Aggregat.Value")) 1619 { 1620 <td>@product.GetString("Ecom:Product:Field.Aggregat")</td> 1621 } 1622 @if (GetBoolean("Ecom:Group:Field.Specaggregat.Value")) 1623 { 1624 <td>@product.GetString("Ecom:Product:Field.Specaggregat")</td> 1625 } 1626 @if (GetBoolean("Ecom:Group:Field.Kabine.Value")) 1627 { 1628 <td>@product.GetString("Ecom:Product:Field.Kabine")</td> 1629 } 1630 @if (GetBoolean("Ecom:Group:Field.Lys.Value")) 1631 { 1632 <td>@product.GetString("Ecom:Product:Field.Lys")</td> 1633 } 1634 @if (GetBoolean("Ecom:Group:Field.TraekhjulHjulslags.Value")) 1635 { 1636 <td>@product.GetString("Ecom:Product:Field.TraekhjulHjulslags")</td> 1637 } 1638 @if (GetBoolean("Ecom:Group:Field.TraekhjulHjulstoerrelseOgType.Value")) 1639 { 1640 <td>@product.GetString("Ecom:Product:Field.TraekhjulHjulstoerrelseOgType")</td> 1641 } 1642 @if (GetBoolean("Ecom:Group:Field.StyrehjulHjulslags.Value")) 1643 { 1644 <td>@product.GetString("Ecom:Product:Field.StyrehjulHjulslags")</td> 1645 } 1646 @if (GetBoolean("Ecom:Group:Field.StyrehjulHjulstoerrelseOgType.Value")) 1647 { 1648 <td>@product.GetString("Ecom:Product:Field.StyrehjulHjulstoerrelseOgType")</td> 1649 } 1650 @if (GetBoolean("Ecom:Group:Field.Motor.Value")) 1651 { 1652 <td>@product.GetString("Ecom:Product:Field.Motor")</td> 1653 } 1654 @if (GetBoolean("Ecom:Group:Field.Transmission.Value")) 1655 { 1656 <td>@product.GetString("Ecom:Product:Field.Transmission")</td> 1657 } 1658 @if (GetBoolean("Ecom:Group:Field.Model.Value")) 1659 { 1660 <td>@product.GetString("Ecom:Product:Field.Model")</td> 1661 } 1662 @if (GetBoolean("Ecom:Group:Field.Tyngdepunktsafstand.Value")) 1663 { 1664 <td>@product.GetString("Ecom:Product:Field.Tyngdepunktsafstand")</td> 1665 } 1666 @if (GetBoolean("Ecom:Group:Field.Batteri.Value")) 1667 { 1668 <td>@product.GetString("Ecom:Product:Field.Batteri")</td> 1669 } 1670 @if (GetBoolean("Ecom:Group:Field.Skammelkapacitet.Value")) 1671 { 1672 <td>@product.GetString("Ecom:Product:Field.Skammelkapacitet")</td> 1673 } 1674 @if (GetBoolean("Ecom:Group:Field.Foererplads.Value")) 1675 { 1676 <td>@product.GetString("Ecom:Product:Field.Foererplads")</td> 1677 } 1678 @if (GetBoolean("Ecom:Group:Field.KoerehastighedMedUdenLast.Value")) 1679 { 1680 <td>@product.GetString("Ecom:Product:Field.KoerehastighedMedUdenLast")</td> 1681 } 1682 @if (GetBoolean("Ecom:Group:Field.LoefteHastighedMedUdenLast.Value")) 1683 { 1684 <td>@product.GetString("Ecom:Product:Field.LoeftehastighedMedUdenLast")</td> 1685 } 1686 @if (GetBoolean("Ecom:Group:Field.Motorydelse.Value")) 1687 { 1688 <td>@product.GetString("Ecom:Product:Field.Motorydelse")</td> 1689 } 1690 @if (GetBoolean("Ecom:Group:Field.Bordbredde.Value")) 1691 { 1692 <td>@product.GetString("Ecom:Product:Field.Bordbredde")</td> 1693 } 1694 @if (GetBoolean("Ecom:Group:Field.Gaffelhjul.Value")) 1695 { 1696 <td>@product.GetString("Ecom:Product:Field.Gaffelhjul")</td> 1697 } 1698 @if (GetBoolean("Ecom:Group:Field.Gaffelbredde.Value")) 1699 { 1700 <td>@product.GetString("Ecom:Product:Field.Gaffelbredde")</td> 1701 } 1702 @if (GetBoolean("Ecom:Group:Field.Stoettehjul.Value")) 1703 { 1704 <td>@product.GetString("Ecom:Product:Field.Stoettehjul")</td> 1705 } 1706 @if (GetBoolean("Ecom:Group:Field.Udstyr.Value")) 1707 { 1708 <td>@product.GetString("Ecom:Product:Field.Udstyr")</td> 1709 } 1710 @if (GetBoolean("Ecom:Group:Field.Initialloeft.Value")) 1711 { 1712 <td>@product.GetString("Ecom:Product:Field.Initialloeft")</td> 1713 } 1714 @if (fileExists) 1715 { 1716 var metadata = Dynamicweb.Content.Files.Metadata.EditorFactory.GetMetadataForFile(dataFile); 1717 string title = ""; 1718 1719 if (metadata != null) 1720 { 1721 title = metadata.GetValue("title"); 1722 } 1723 1724 <td data-label="@Translate("Translate_Datablad")" data-file="@dataFile"> 1725 <a href="@("https://www.nc-nielsen.dk")@dataFile" title="@title"> 1726 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-pdf.svg"))) 1727 { 1728 <span class="icon icon-pdf">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-pdf.svg"))</span> 1729 } 1730 @Translate("Translate_Download_datablad") 1731 </a> 1732 </td> 1733 } 1734 else 1735 { 1736 <td data-file="@dataFile"></td> 1737 } 1738 </tr> 1739 } 1740 </tbody> 1741 </table> 1742 </div> 1743 } 1744 else 1745 { 1746 foreach (var product in GetLoop("Products")) 1747 { 1748 <div class="product"> 1749 <h3>@product.GetString("Ecom:Product.Name")</h3> 1750 <ul class="specifications"> 1751 <li class="specification"> 1752 <span class="label">@Translate("Translate_Model")</span> 1753 <span class="value">@product.GetString("Ecom:Product.Number")</span> 1754 </li> 1755 @if (GetBoolean("Ecom:Group:Field.InternNr.Value")) 1756 { 1757 <li class="specification"> 1758 <span class="label">@Translate("Translate_InternNr")</span> 1759 <span class="value">@product.GetString("Ecom:Product:Field.InternNr")</span> 1760 </li> 1761 } 1762 @if (GetBoolean("Ecom:Group:Field.Fabrikat.Value")) 1763 { 1764 <li class="specification"> 1765 <span class="label">@Translate("Translate_Fabrikat")</span> 1766 <span class="value">@product.GetString("Ecom:Product:Field.Motor")</span> 1767 </li> 1768 } 1769 @if (GetBoolean("Ecom:Group:Field.Aargang.Value")) 1770 { 1771 <li class="specification"> 1772 <span class="label">@Translate("Translate_Aargang")</span> 1773 <span class="value">@product.GetString("Ecom:Product:Field.Aargang")</span> 1774 </li> 1775 } 1776 @if (GetBoolean("Ecom:Group:Field.Type.Value")) 1777 { 1778 <li class="specification"> 1779 <span class="label">@Translate("Translate_Type")</span> 1780 <span class="value">@product.GetString("Ecom:Product:Field.Type")</span> 1781 </li> 1782 } 1783 @if (GetBoolean("Ecom:Group:Field.Gruppe.Value")) 1784 { 1785 <li class="specification"> 1786 <span class="label">@Translate("Translate_Gruppe")</span> 1787 <span class="value">@product.GetString("Ecom:Product:Field.Gruppe")</span> 1788 </li> 1789 } 1790 @if (GetBoolean("Ecom:Group:Field.Kapacitet.Value")) 1791 { 1792 <li class="specification"> 1793 <span class="label">@Translate("Translate_Kapacitet")</span> 1794 <span class="value">@product.GetString("Ecom:Product:Field.Kapacitet")</span> 1795 </li> 1796 } 1797 @if (GetBoolean("Ecom:Group:Field.Laengde.Value")) 1798 { 1799 <li class="specification"> 1800 <span class="label">@Translate("Translate_Laengde")</span> 1801 <span class="value">@product.GetString("Ecom:Product:Field.Laengde")</span> 1802 </li> 1803 } 1804 @if (GetBoolean("Ecom:Group:Field.Laengdeplatform.Value")) 1805 { 1806 <li class="specification"> 1807 <span class="label">@Translate("Translate_Laengde platform")</span> 1808 <span class="value">@product.GetString("Ecom:Product:Field.Laengdeplatform")</span> 1809 </li> 1810 } 1811 @if (GetBoolean("Ecom:Group:Field.Laengdestoettebenplatform.Value")) 1812 { 1813 <li class="specification"> 1814 <span class="label">@Translate("Translate_Laengde stoetteben/platform")</span> 1815 <span class="value">@product.GetString("Ecom:Product:Field.Laengdestoettebenplatform")</span> 1816 </li> 1817 } 1818 @if (GetBoolean("Ecom:Group:Field.Bredde.Value")) 1819 { 1820 <li class="specification"> 1821 <span class="label">@Translate("Translate_Bredde")</span> 1822 <span class="value">@product.GetString("Ecom:Product:Field.Bredde")</span> 1823 </li> 1824 } 1825 @if (GetBoolean("Ecom:Group:Field.Loeftehoejde.Value")) 1826 { 1827 <li class="specification"> 1828 <span class="label">@Translate("Translate_Loeftehoejde")</span> 1829 <span class="value">@product.GetString("Ecom:Product:Field.Loeftehoejde")</span> 1830 </li> 1831 } 1832 @if (GetBoolean("Ecom:Group:Field.Byggehoejde.Value")) 1833 { 1834 <li class="specification"> 1835 <span class="label">@Translate("Translate_Byggehoejde")</span> 1836 <span class="value">@product.GetString("Ecom:Product:Field.Byggehoejde")</span> 1837 </li> 1838 } 1839 @if (GetBoolean("Ecom:Group:Field.Gaffellaengde.Value")) 1840 { 1841 <li class="specification"> 1842 <span class="label">@Translate("Translate_Gaffellaengde")</span> 1843 <span class="value">@product.GetString("Ecom:Product:Field.Gaffellaengde")</span> 1844 </li> 1845 } 1846 @if (GetBoolean("Ecom:Group:Field.Akselafstand.Value")) 1847 { 1848 <li class="specification"> 1849 <span class="label">@Translate("Translate_Akselafstand")</span> 1850 <span class="value">@product.GetString("Ecom:Product:Field.Akselafstand")</span> 1851 </li> 1852 } 1853 @if (GetBoolean("Ecom:Group:Field.Masttype.Value")) 1854 { 1855 <li class="specification"> 1856 <span class="label">@Translate("Translate_Masttype")</span> 1857 <span class="value">@product.GetString("Ecom:Product:Field.Masttype")</span> 1858 </li> 1859 } 1860 @if (GetBoolean("Ecom:Group:Field.Aggregat.Value")) 1861 { 1862 <li class="specification"> 1863 <span class="label">@Translate("Translate_Aggregat")</span> 1864 <span class="value">@product.GetString("Ecom:Product:Field.Aggregat")</span> 1865 </li> 1866 } 1867 @if (GetBoolean("Ecom:Group:Field.Specaggregat.Value")) 1868 { 1869 <li class="specification"> 1870 <span class="label">@Translate("Translate_Spec. aggregat")</span> 1871 <span class="value">@product.GetString("Ecom:Product:Field.Specaggregat")</span> 1872 </li> 1873 } 1874 @if (GetBoolean("Ecom:Group:Field.Kabine.Value")) 1875 { 1876 <li class="specification"> 1877 <span class="label">@Translate("Translate_Kabine")</span> 1878 <span class="value">@product.GetString("Ecom:Product:Field.Kabine")</span> 1879 </li> 1880 } 1881 @if (GetBoolean("Ecom:Group:Field.Lys.Value")) 1882 { 1883 <li class="specification"> 1884 <span class="label">@Translate("Translate_Lys")</span> 1885 <span class="value">@product.GetString("Ecom:Product:Field.Lys")</span> 1886 </li> 1887 } 1888 @if (GetBoolean("Ecom:Group:Field.TraekhjulHjulslags.Value")) 1889 { 1890 <li class="specification"> 1891 <span class="label">@Translate("Translate_Traekhjul - hjul (slags)")</span> 1892 <span class="value">@product.GetString("Ecom:Product:Field.TraekhjulHjulslags")</span> 1893 </li> 1894 } 1895 @if (GetBoolean("Ecom:Group:Field.TraekhjulHjulstoerrelseOgType.Value")) 1896 { 1897 <li class="specification"> 1898 <span class="label">@Translate("Translate_Traekhjul - hjulstoerrelse og type")</span> 1899 <span class="value">@product.GetString("Ecom:Product:Field.TraekhjulHjulstoerrelseOgType")</span> 1900 </li> 1901 } 1902 @if (GetBoolean("Ecom:Group:Field.StyrehjulHjulslags.Value")) 1903 { 1904 <li class="specification"> 1905 <span class="label">@Translate("Translate_Styrehjul - hjul (slags)")</span> 1906 <span class="value">@product.GetString("Ecom:Product:Field.StyrehjulHjulslags")</span> 1907 </li> 1908 } 1909 @if (GetBoolean("Ecom:Group:Field.StyrehjulHjulstoerrelseOgType.Value")) 1910 { 1911 <li class="specification"> 1912 <span class="label">@Translate("Translate_Styrehjul - hjulstoerrelse og type")</span> 1913 <span class="value">@product.GetString("Ecom:Product:Field.StyrehjulHjulstoerrelseOgType")</span> 1914 </li> 1915 } 1916 @if (GetBoolean("Ecom:Group:Field.Motor.Value")) 1917 { 1918 <li class="specification"> 1919 <span class="label">@Translate("Translate_Motor")</span> 1920 <span class="value">@product.GetString("Ecom:Product:Field.Motor")</span> 1921 </li> 1922 } 1923 @if (GetBoolean("Ecom:Group:Field.Transmission.Value")) 1924 { 1925 <li class="specification"> 1926 <span class="label">@Translate("Translate_Transmission")</span> 1927 <span class="value">@product.GetString("Ecom:Product:Field.Transmission")</span> 1928 </li> 1929 } 1930 @if (GetBoolean("Ecom:Group:Field.Model.Value")) 1931 { 1932 <li class="specification"> 1933 <span class="label">@Translate("Translate_Model")</span> 1934 <span class="value">@product.GetString("Ecom:Product:Field.Model")</span> 1935 </li> 1936 } 1937 @if (GetBoolean("Ecom:Group:Field.Tyngdepunktsafstand.Value")) 1938 { 1939 <li class="specification"> 1940 <span class="label">@Translate("Translate_Tyngdepunktsafstand")</span> 1941 <span class="value">@product.GetString("Ecom:Product:Field.Tyngdepunktsafstand")</span> 1942 </li> 1943 } 1944 @if (GetBoolean("Ecom:Group:Field.Batteri.Value")) 1945 { 1946 <li class="specification"> 1947 <span class="label">@Translate("Translate_Batteri")</span> 1948 <span class="value">@product.GetString("Ecom:Product:Field.Batteri")</span> 1949 </li> 1950 } 1951 @if (GetBoolean("Ecom:Group:Field.Skammelkapacitet.Value")) 1952 { 1953 <li class="specification"> 1954 <span class="label">@Translate("Translate_Skammelkapacitet")</span> 1955 <span class="value">@product.GetString("Ecom:Product:Field.Skammelkapacitet")</span> 1956 </li> 1957 } 1958 @if (GetBoolean("Ecom:Group:Field.Foererplads.Value")) 1959 { 1960 <li class="specification"> 1961 <span class="label">@Translate("Translate_Foererplads")</span> 1962 <span class="value">@product.GetString("Ecom:Product:Field.Foererplads")</span> 1963 </li> 1964 } 1965 @if (GetBoolean("Ecom:Group:Field.KoerehastighedMedUdenLast.Value")) 1966 { 1967 <li class="specification"> 1968 <span class="label">@Translate("Translate_KoerehastighedMedUdenLast")</span> 1969 <span class="value">@product.GetString("Ecom:Product:Field.KoerehastighedMedUdenLast")</span> 1970 </li> 1971 } 1972 @if (GetBoolean("Ecom:Group:Field.LoefteHastighedMedUdenLast.Value")) 1973 { 1974 <li class="specification"> 1975 <span class="label">@Translate("Translate_LoefteHastighedMedUdenLast")</span> 1976 <span class="value">@product.GetString("Ecom:Product:Field.LoeftehastighedMedUdenLast")</span> 1977 </li> 1978 } 1979 @if (GetBoolean("Ecom:Group:Field.Motorydelse.Value")) 1980 { 1981 <li class="specification"> 1982 <span class="label">@Translate("Translate_Motorydelse")</span> 1983 <span class="value">@product.GetString("Ecom:Product:Field.Motorydelse")</span> 1984 </li> 1985 } 1986 @if (GetBoolean("Ecom:Group:Field.Bordbredde.Value")) 1987 { 1988 <li class="specification"> 1989 <span class="label">@Translate("Translate_Bordbredde")</span> 1990 <span class="value">@product.GetString("Ecom:Product:Field.Bordbredde")</span> 1991 </li> 1992 } 1993 @if (GetBoolean("Ecom:Group:Field.Gaffelhjul.Value")) 1994 { 1995 <li class="specification"> 1996 <span class="label">@Translate("Translate_Gaffelhjul")</span> 1997 <span class="value">@product.GetString("Ecom:Product:Field.Gaffelhjul")</span> 1998 </li> 1999 } 2000 @if (GetBoolean("Ecom:Group:Field.Gaffelbredde.Value")) 2001 { 2002 <li class="specification"> 2003 <span class="label">@Translate("Translate_Gaffelbredde")</span> 2004 <span class="value">@product.GetString("Ecom:Product:Field.Gaffelbredde")</span> 2005 </li> 2006 } 2007 @if (GetBoolean("Ecom:Group:Field.Stoettehjul.Value")) 2008 { 2009 <li class="specification"> 2010 <span class="label">@Translate("Translate_Stoettehjul")</span> 2011 <span class="value">@product.GetString("Ecom:Product:Field.Stoettehjul")</span> 2012 </li> 2013 } 2014 @if (GetBoolean("Ecom:Group:Field.Udstyr.Value")) 2015 { 2016 <li class="specification"> 2017 <span class="label">@Translate("Translate_Udstyr")</span> 2018 <span class="value">@product.GetString("Ecom:Product:Field.Udstyr")</span> 2019 </li> 2020 } 2021 @if (GetBoolean("Ecom:Group:Field.Initialloeft.Value")) 2022 { 2023 <li class="specification"> 2024 <span class="label">@Translate("Translate_Initialloeft")</span> 2025 <span class="value">@product.GetString("Ecom:Product:Field.Initialloeft")</span> 2026 </li> 2027 } 2028 </ul> 2029 <div class="productCta"> 2030 <span class="price"> 2031 <span class="product-price">@Translate("Translate_Pris"): @product.GetString("Ecom:Product.Price.PriceWithoutVAT") @product.GetString("Ecom:Product.Price.Currency.Code")</span> 2032 <span class="product-freight">@Translate("Translate_Fragtomkostninger"): @product.GetDouble("Ecom:Product:Field.Fragtomkostninger.Value").ToString("0,0.00") @product.GetString("Ecom:Product.Price.Currency.Code")</span> 2033 <span class="product-price-description">@Translate("Translate_Pris_eks_moms")</span> 2034 </span> 2035 <form methotd="get" action='@GetGlobalValue("Global:Pageview.Url.Raw")' data-hest="test"> 2036 <input type="hidden" name="cartcmd" value="add" /> 2037 <input type="hidden" name="productid" value='@product.GetString("Ecom:Product.ID")' /> 2038 <div class="input-wrap"> 2039 <label for="quantity">@Translate("Translate_Antal")</label> 2040 <input type="number" name="quantity" id="quantity" min="1" value="1" /> 2041 </div> 2042 <button type="submit" class="button button-with-price button-large button-primary"> 2043 <span class="text">@Translate("Translate_Bestil_produkt")</span> 2044 </button> 2045 </form> 2046 </div> 2047 </div> 2048 } 2049 } 2050 @if (salesFiles.Length > 0 && salesFiles.Length > dataFiles.Count()) 2051 { 2052 <h2><span><span>@Translate("Translate_Download_salgsmateriale")</span></span></h2> 2053 <ul id="downloadList" class="download-list" data-search-pattern='@searchpatternSales'> 2054 @for (var a = 0; a < salesFiles.Length; a++) 2055 { 2056 string path = salesFiles[a].Substring(salesFiles[a].IndexOf("\\files")).Replace("\\", "/"); 2057 2058 if (!dataFiles.Contains(path.ToLower())) 2059 { 2060 var metadata = Dynamicweb.Content.Files.Metadata.EditorFactory.GetMetadataForFile(path); 2061 string title = ""; 2062 2063 if (metadata != null) 2064 { 2065 title = metadata.GetValue("title"); 2066 } 2067 2068 <li class="download" data-file="@path"> 2069 <a href="@("https://www.nc-nielsen.dk")@path" target="_blank" title='@title'> 2070 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-pdf.svg"))) 2071 { 2072 <span class="icon icon-pdf">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-pdf.svg"))</span> 2073 } 2074 <span class="text">@title</span> 2075 </a> 2076 </li> 2077 } 2078 } 2079 </ul> 2080 } 2081 @RenderSnippet("ProductOrderSalesMaterials") 2082 </div> 2083 </section> 2084 } 2085 else if (salesFiles.Length > 0) 2086 { 2087 <section class="section section-greyextralight section-specifications"> 2088 <div class="content"> 2089 <h2><span><span>@Translate("Translate_Download_salgsmateriale")</span></span></h2> 2090 <ul id="downloadList" class="download-list" data-search-pattern='@searchpatternSales'> 2091 @for (var a = 0; a < salesFiles.Length; a++) 2092 { 2093 string path = salesFiles[a].Substring(salesFiles[a].IndexOf("\\files")).Replace("\\", "/"); 2094 var metadata = Dynamicweb.Content.Files.Metadata.EditorFactory.GetMetadataForFile(path); 2095 string title = ""; 2096 2097 if (metadata != null) 2098 { 2099 title = metadata.GetValue("title"); 2100 } 2101 2102 <li class="download" data-file="@path"> 2103 <a href="@("https://www.nc-nielsen.dk")@path" target="_blank" title='@title'> 2104 @if (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-pdf.svg"))) 2105 { 2106 <span class="icon icon-pdf">@System.IO.File.ReadAllText(System.Web.HttpContext.Current.Server.MapPath("/files/templates/designs/ncnielsen/images/icon-pdf.svg"))</span> 2107 } 2108 <span class="text">@title</span> 2109 </a> 2110 </li> 2111 } 2112 </ul> 2113 @RenderSnippet("ProductOrderSalesMaterials") 2114 </div> 2115 </section> 2116 } 2117 else 2118 { 2119 <section class="section section-greyextralight section-specifications"> 2120 <div class="content"> 2121 @RenderSnippet("ProductOrderSalesMaterials") 2122 </div> 2123 </section> 2124 } 2125 @RenderItemList(new 2126 { 2127 ItemType = "Employee", 2128 ListSourceType = "Page", 2129 ListSourcePage = @Pageview.Area.Item["EmployeeDepartmentsPageId"], 2130 IncludeParagraphItems = false, 2131 IncludeAllChildItems = true, 2132 ItemFieldsList = "*", 2133 Filter = "Produktgrupper contains 'g_" + GetString("Ecom:Group.ID") + ",' or Produktgrupper ends with 'g_" + GetString("Ecom:Group.ID") + "'", 2134 ListTemplate = "itempublisher/list/product.employees.cshtml", 2135 ListPageSize = 100 2136 }) 2137 } 2138 @SnippetStart("jsbottom") 2139 <script type="text/javascript" data-consent-src="//www.youtube.com/player_api" data-category-consent="cookie_cat_marketing"></script> 2140 <script> 2141 videoPlayers = new Array(); 2142 2143 function onYouTubeIframeAPIReady() { 2144 var productVideos = document.querySelectorAll('#productGalleryImageMain .video-wrap iframe,#productMobileGalleryImageMain .video-wrap iframe'); 2145 2146 for (var a = 0; a < productVideos.length; a++) { 2147 var videoId = productVideos[a].getAttribute('id'); 2148 2149 var videoPlayer = new YT.Player(videoId, { 2150 events: { 2151 'onStateChange': onPlayerStateChange 2152 } 2153 }); 2154 2155 videoPlayers.push(videoPlayer); 2156 } 2157 } 2158 2159 function onPlayerStateChange(event) { 2160 if (event.data == YT.PlayerState.PLAYING) { 2161 var temp = event.target.a.src; 2162 2163 for (var a = 0; a < videoPlayers.length; a++) { 2164 if (videoPlayers[a].a.src != temp) 2165 videoPlayers[a].stopVideo(); 2166 } 2167 } 2168 } 2169 </script> 2170 @SnippetEnd("jsbottom") 2171 2172 @SnippetStart("JSONLD") 2173 @{ 2174 string _folderName = GetString("Ecom:Group.Name").ToLower().Replace(" ", "_").Replace("/", "_").Replace("æ", "a").Replace("ø", "o").Replace("å", "a"); 2175 string imagePath = $"https://{HttpContext.Current.Request.Url.Host}/files/images/ncnielsen/ecom/groups/{_folderName}/list.jpg"; 2176 2177 string parentGroupName = ""; 2178 2179 foreach (var ecomGroup in GetLoop("ProductGroups")) { 2180 Dynamicweb.Ecommerce.Products.GroupService gs = new Dynamicweb.Ecommerce.Products.GroupService(); 2181 Dynamicweb.Ecommerce.Products.Group g = gs.GetGroup(ecomGroup.GetString("Ecom:Group.ID")); 2182 2183 parentGroupName = GetLevel1GroupName(g).ToString(); 2184 } 2185 } 2186 <script type="application/ld+json"> 2187 { 2188 "@@type": "Product", 2189 "name": "@GetString("Ecom:Group.Name")", 2190 @if (!string.IsNullOrWhiteSpace(imagePath)) { 2191 <text>"image": "@imagePath",</text> 2192 } 2193 "description": "@StripHtml(GetString("Ecom:Group.Description"))", 2194 "sku": "@GetString("Ecom:Group.ID")", 2195 "brand": { 2196 "@@type": "Brand", 2197 "name": "@parentGroupName" 2198 } 2199 } 2200 </script> 2201 @SnippetEnd("JSONLD") 2202 2203 @helper GetLevel1GroupName (Dynamicweb.Ecommerce.Products.Group g) { 2204 if (string.IsNullOrWhiteSpace(g.PrimaryParentGroupId)) { 2205 @g.Name 2206 } else{ 2207 Dynamicweb.Ecommerce.Products.GroupService gs = new Dynamicweb.Ecommerce.Products.GroupService(); 2208 Dynamicweb.Ecommerce.Products.Group pg = gs.GetGroup(g.PrimaryParentGroupId); 2209 @GetLevel1GroupName(pg) 2210 } 2211 } 2212 2213 @helper StripHtml(string input) 2214 { 2215 if (string.IsNullOrEmpty(input)) 2216 { 2217 return; 2218 } 2219 2220 // 1. Remove HTML tags 2221 string noHtml = Regex.Replace(input, "<.*?>", string.Empty); 2222 2223 // 2. Decode HTML entities (e.g. &amp; → &) 2224 string decoded = HttpUtility.HtmlDecode(noHtml); 2225 2226 // 3. Remove line breaks, tabs, and excess spaces 2227 string cleaned = Regex.Replace(decoded, @"\s+", " ").Trim(); 2228 2229 // Output the cleaned string 2230 @cleaned 2231 }