Error compiling template "Designs/Tapas/_parsed/Article.parsed.cshtml"
Line 896: Invalid expression term '='
Line 896: Syntax error, ',' expected
Line 896: Syntax error, ',' expected
Line 896: Syntax error, ',' expected
Line 2511: Invalid expression term '='
Line 2511: Syntax error, ',' expected
Line 2511: Syntax error, ',' expected
Line 2511: Syntax error, ',' expected
Line 2511: Syntax error, ',' expected
Line 2511: Syntax error, ',' expected
Line 2511: The name 'translate' does not exist in the current context
Line 5064: 'User.GetCurrentExtranetUser()' is obsolete: 'Use GetCurrentFrontendUser() instead.'

1 //------------------------------------------------------------------------------ 2 // <auto-generated> 3 // This code was generated by a tool. 4 // Runtime Version:4.0.30319.42000 5 // 6 // Changes to this file may cause incorrect behavior and will be lost if 7 // the code is regenerated. 8 // </auto-generated> 9 //------------------------------------------------------------------------------ 10 11 namespace CompiledRazorTemplates.Dynamic { 12 using System; 13 14 #line 4 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 15 using System.Collections.Generic; 16 17 #line default 18 #line hidden 19 using System.Linq; 20 21 #line 399 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 22 using Dynamicweb.Rendering; 23 24 #line default 25 #line hidden 26 27 #line 3 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 28 using System.Configuration; 29 30 #line default 31 #line hidden 32 33 #line 5 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 34 using Dynamicweb.Core; 35 36 #line default 37 #line hidden 38 39 #line 6 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 40 using System.Web; 41 42 #line default 43 #line hidden 44 45 #line 401 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 46 using Dynamicweb.Environment; 47 48 #line default 49 #line hidden 50 51 #line 400 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 52 using System.Text.RegularExpressions; 53 54 #line default 55 #line hidden 56 57 58 public class RazorEngine_395526fa5c85467a9c52aa4101145362 : RazorTemplateBase<RazorTemplateModel<Template>> { 59 60 #line hidden 61 62 #line 404 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 63 public RazorEngine.Templating.TemplateWriter renderProduct(bool showShopFunctionsAlternativeIfNotLoggedIn, LoopItem product, bool renderAs4Cols = false) 64 { 65 #line default 66 #line hidden 67 return new RazorEngine.Templating.TemplateWriter(__razor_helper_writer => { 68 69 #line 405 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 70 71 bool isBlocked = product.GetBoolean("Ecom:Product:Field.NAVIsBlocked"); 72 73 bool IsPurchaceProduct = (product.GetString("Ecom:Product:Field.NAVPurposeID") == "SKAFFE"); 74 75 string productID = product.GetString("Ecom:Product.ID"); 76 string productNumber = product.GetString("Ecom:Product.Number"); 77 string mainProductID = product.GetString("Ecom:Product:Field.FirstwebMainProductID"); 78 string PrimaryProductPageId = Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId("productcatalog"); 79 80 string productLink = product.GetString("Ecom:Product.Link.Clean"); 81 82 if (!String.IsNullOrEmpty(PrimaryProductPageId)) 83 { 84 productLink = "/Default.aspx?id=" + PrimaryProductPageId + "&productid=" + productID; 85 } 86 87 string languageId = product.GetString("Ecom:Product.LanguageID"); 88 string variantId = product.GetString("Ecom:Product.VariantID"); 89 90 string productName = product.GetString("Ecom:Product.Name"); 91 string productShortDescription = product.GetString("Ecom:Product.ShortDescription"); 92 93 double nettoPrice = product.GetDouble("Ecom:Product.Price.PriceWithoutVAT"); //GetString("Firstweb:ErpPriceInfo.NettoPriceFormatted"); 94 string bruttoPrice = product.GetString("Firstweb:EcomProduct:BruttoPriceFormattedWithSymbol"); 95 96 double bruttoPriceDouble = product.GetDouble("Firstweb:EcomProduct:BruttoPrice"); 97 double deltaBruttoNetto = Math.Abs(bruttoPriceDouble - nettoPrice); 98 if (product.GetBoolean("Firstweb:EcomProduct:BruttoPriceIsConverted") && deltaBruttoNetto < 0.5) 99 { 100 bruttoPrice = product.GetString("Ecom:Product.Price.PriceWithoutVATFormatted"); 101 } 102 103 string availableAmount = product.GetString("Firstweb:ErpStockInfo.StockQuantity"); 104 string stockColor = product.GetString("Firstweb:ErpStockInfo.StockColor"); 105 bool priceAndStockFound = product.GetBoolean("Firstweb:ErpPriceInfo.PriceAndStockFound"); 106 bool priceFound = product.GetBoolean("Firstweb:ErpPriceInfo.PriceFound"); 107 bool hasQuantityPrices = product.GetBoolean("Firstweb:ErpPriceInfo.HasQuantityPrices"); 108 string RRPrice = product.GetString("Firstweb:ErpPriceInfo:Prices.RRPFormatted"); 109 110 int productPackagingQuantity = product.GetInteger("Ecom:Product:Field.NAVMinQuantity"); 111 int defaultQuantity = productPackagingQuantity > 0 ? productPackagingQuantity : 1; 112 113 bool hasVariants = (product.GetLoop("VariantCombinations").Count() > 0); 114 115 //Images 116 List<Dynamicweb.Ecommerce.Products.Detail> productImages = Firstweb.Custom.CustomCode.Frontend.Helpers.ProductImages.GetProductImages(languageId, productID, variantId); 117 Dynamicweb.Ecommerce.Products.Detail primaryProductImage = productImages.FirstOrDefault(x=>x.IsDefault); //Tag you can use instead: product.GetString("Ecom:Product.ImageDefault.Clean"); 118 //check for valid default image 119 if (primaryProductImage == null) 120 { 121 primaryProductImage = new Dynamicweb.Ecommerce.Products.Detail { Value = "" }; 122 } 123 else if (primaryProductImage.Value == null) 124 { 125 primaryProductImage.Value = ""; 126 } 127 128 //Sorted: first by imagegroup then by sortorder 129 //@foreach (var productImage in productImages) 130 //{ 131 //productImage.Value; //This is the imagepath eks. /Images/products/R12155_10_2.jpg 132 //productImage.IsDefault; //If the image is default or not. 133 //} 134 135 string primaryProductImageUrl = "/admin/public/getimage.ashx?image=" + primaryProductImage.Value + "&altFmImage_path=/Files/Images/ecom/Products/no-image.jpg&width=500&height=300&Compression=90&Crop=5"; 136 if (String.IsNullOrEmpty(primaryProductImage.Value)) 137 { 138 primaryProductImageUrl = "/admin/public/getimage.ashx?image=/Files/Images/ecom/Products/no-image.jpg&width=500&height=300&Compression=90&Crop=5"; 139 } 140 141 //Other packagings 142 var otherPackagingProducts = Firstweb.Custom.CustomCode.Frontend.Helpers.OtherPackagingProducts.GetOtherPackagingProducts(mainProductID, false).Where(i => i.Id != productID); 143 var showOtherPackagingProducts = otherPackagingProducts.Count() > 0; 144 145 146 //Customer product number 147 //string customerProductNumber = Firstweb.Custom.CustomCode.Frontend.Helpers.CustomerProductNumbers.GetCustomerProductNumber(productID); 148 149 //OrderTemplate 150 int productInFavoritLists = product.GetInteger("Firstweb:Ecom:Product:OrderTemplate.InTemplates.Count"); 151 152 string orderLineId = product.GetString("Firstweb:OrderTemplate:Line.ID"); 153 string orderTemplateId = product.GetString("Firstweb:OrderTemplate:Line.OrderTemplateID"); 154 int orderLineQuantity = product.GetInteger("Firstweb:OrderTemplate:Line.Quantity"); 155 156 bool inFavourite = productInFavoritLists > 0 ? true : false; 157 string inFavouriteBoolJS = inFavourite.ToString().ToLower(); 158 159 bool isOrderTemplate = !String.IsNullOrEmpty(orderLineId); 160 161 string productPriceCacheKey = orderLineId != "" ? orderLineId : productNumber; 162 163 164 165 166 string stock = ""; 167 168 string addBorderCss = isOrderTemplate ? "border-1" : ""; 169 170 171 if (!priceAndStockFound) 172 { 173 stock = "asyncLoad"; 174 } 175 else 176 { 177 stock = availableAmount; 178 } 179 180 string WidthClass = renderAs4Cols ? "col-md-4 col-lg-3" : "col-md-4"; 181 bool ShowShopFunctions = Firstweb.Custom.CustomCode.Tapas.Context.Current.ShopFunctionsVisibility.ShowShopFunctions(); 182 string BrandLogo = "/admin/public/getimage.ashx?image=" + product.GetString("Ecom:Product:Field.FirstwebBrandLogo.Value.FullPath") + "&height=25&crop=5"; 183 string BrandName = product.GetString("Ecom:Product:Field.FirstwebBrand.Value.Clean"); 184 string AddingToCartText = Translate("Product.AddingToCart", "Tilføjer produkt"); 185 string PickListText = Translate("Ordertemplate.SelectList", "Vælg en liste"); 186 bool ShowBeforePrice = product.GetBoolean("Firstweb:EcomProduct:DisplayBeforePrice"); 187 string BeforePriceFormatted = product.GetString("Firstweb:EcomProduct:BeforePriceFormattedWithSymbol"); 188 string StockStatus = product.GetString("Firstweb:StockStatusColor"); //hvis rød og confirmed deliverydate - hvis dato 189 string StockLabel = product.GetString("Firstweb:StockStatusTitle"); 190 string ConfirmedDeliveryDate = product.GetString("Ecom:Product:Field.NAVConfirmedDeliveryDate.Value.Clean"); 191 bool NotInStock = product.GetBoolean("Firstweb:NotInStock"); 192 bool ShowQuantityPrices = product.GetBoolean("Firstweb:EcomProduct:ShowQuantityPricelistIcon"); 193 string Collisize = product.GetString("Ecom:Product:Field.NAVColli"); 194 string CatalogueRemark = product.GetString("Ecom:Product:Field.NAVCatalogRemark.Value"); 195 bool HidePrices = Firstweb.Custom.CustomCode.Frontend.Helpers.Product.HidePrices(); 196 string productCurrency = product.GetString("Ecom:Product.Currency.Symbol"); 197 198 IEnumerable<Dynamicweb.Ecommerce.Products.ProductRelated> replacementProducts = Firstweb.Custom.CustomCode.Frontend.Helpers.Product.GetReplacementProducts(productID); 199 200 bool HasSimilarProducts = Firstweb.Custom.CustomCode.Frontend.Helpers.Product.HasSimilarProducts(productID); 201 202 203 bool showSubInfoContainer = (HasSimilarProducts) || (ShowShopFunctions && (ShowQuantityPrices && !HidePrices)); 204 205 string showSubInfoClass = "show-subinfo"; 206 207 int backorderRemaining = 0; 208 bool inBackorders = Firstweb.Custom.CustomCode.Frontend.Helpers.Backordre.InBackorders(productNumber, out backorderRemaining); 209 string addToCartWarningText = inBackorders ? Translate("Cart.RestorderFirstPart", "Du har allerede") + " " + backorderRemaining + " " + Translate("Cart.RestorderSecondPart", "i restorder af denne.") : ""; 210 string addToCartWarningTextConfirmation = inBackorders ? addToCartWarningText + " - " + Translate("Cart.RestorderConfirm", "Vil du forsætte?") : ""; 211 212 213 214 215 #line default 216 #line hidden 217 WriteLiteralTo(__razor_helper_writer, "<!-- ko viewModel: \'ProductViewModel\'-->\r\n"); 218 219 WriteLiteralTo(__razor_helper_writer, "<!-- ko initValue: {observable: ProductId, value:\'"); 220 221 222 #line 549 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 223 WriteTo(__razor_helper_writer, productID); 224 225 226 #line default 227 #line hidden 228 WriteLiteralTo(__razor_helper_writer, "\'}-->"); 229 230 WriteLiteralTo(__razor_helper_writer, "<!-- /ko-->\r\n"); 231 232 WriteLiteralTo(__razor_helper_writer, " <div"); 233 234 WriteAttributeTo(__razor_helper_writer, "class", Tuple.Create(" class=\"", 30945), Tuple.Create("\"", 31011) 235 , Tuple.Create(Tuple.Create("", 30953), Tuple.Create("col-xs-12", 30953), true) 236 , Tuple.Create(Tuple.Create(" ", 30962), Tuple.Create("col-sm-6", 30963), true) 237 238 #line 550 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 239 , Tuple.Create(Tuple.Create(" ", 30971), Tuple.Create<System.Object, System.Int32>(WidthClass 240 241 #line default 242 #line hidden 243 , 30972), false) 244 , Tuple.Create(Tuple.Create(" ", 30983), Tuple.Create("xs-m-b-3", 30984), true) 245 , Tuple.Create(Tuple.Create(" ", 30992), Tuple.Create("price", 30993), true) 246 , Tuple.Create(Tuple.Create(" ", 30998), Tuple.Create("product-tile", 30999), true) 247 ); 248 249 WriteLiteralTo(__razor_helper_writer, " data-productid=\""); 250 251 252 #line 550 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 253 WriteTo(__razor_helper_writer, productNumber); 254 255 256 #line default 257 #line hidden 258 WriteLiteralTo(__razor_helper_writer, "\""); 259 260 WriteLiteralTo(__razor_helper_writer, " data-productkey=\""); 261 262 263 #line 550 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 264 WriteTo(__razor_helper_writer, productPriceCacheKey); 265 266 267 #line default 268 #line hidden 269 WriteLiteralTo(__razor_helper_writer, "\""); 270 271 WriteLiteralTo(__razor_helper_writer, " data-test=\""); 272 273 274 #line 550 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 275 WriteTo(__razor_helper_writer, PrimaryProductPageId); 276 277 278 #line default 279 #line hidden 280 WriteLiteralTo(__razor_helper_writer, "\""); 281 282 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 283 284 WriteAttributeTo(__razor_helper_writer, "class", Tuple.Create(" class=\"", 31133), Tuple.Create("\"", 31203) 285 , Tuple.Create(Tuple.Create("", 31141), Tuple.Create("product-list-item", 31141), true) 286 , Tuple.Create(Tuple.Create(" ", 31158), Tuple.Create("bg-white", 31159), true) 287 , Tuple.Create(Tuple.Create(" ", 31167), Tuple.Create("position-relative", 31168), true) 288 289 #line 551 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 290 , Tuple.Create(Tuple.Create(" ", 31185), Tuple.Create<System.Object, System.Int32>(showSubInfoClass 291 292 #line default 293 #line hidden 294 , 31186), false) 295 ); 296 297 WriteLiteralTo(__razor_helper_writer, ">\r\n \r\n <a"); 298 299 WriteAttributeTo(__razor_helper_writer, "href", Tuple.Create(" href=\"", 31235), Tuple.Create("\"", 31254) 300 301 #line 553 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 302 , Tuple.Create(Tuple.Create("", 31242), Tuple.Create<System.Object, System.Int32>(productLink 303 304 #line default 305 #line hidden 306 , 31242), false) 307 ); 308 309 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 310 311 312 #line 554 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 313 314 315 #line default 316 #line hidden 317 318 #line 554 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 319 if (!String.IsNullOrEmpty(CatalogueRemark)) 320 { 321 322 323 #line default 324 #line hidden 325 WriteLiteralTo(__razor_helper_writer, " <div"); 326 327 WriteLiteralTo(__razor_helper_writer, " class=\"catalogue-remark\""); 328 329 WriteLiteralTo(__razor_helper_writer, ">"); 330 331 332 #line 556 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 333 WriteTo(__razor_helper_writer, CatalogueRemark); 334 335 336 #line default 337 #line hidden 338 WriteLiteralTo(__razor_helper_writer, "</div>\r\n"); 339 340 341 #line 557 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 342 } 343 344 345 #line default 346 #line hidden 347 WriteLiteralTo(__razor_helper_writer, " <div"); 348 349 WriteLiteralTo(__razor_helper_writer, " class=\"brand-image\""); 350 351 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 352 353 354 #line 559 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 355 356 357 #line default 358 #line hidden 359 360 #line 559 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 361 if (!String.IsNullOrEmpty(product.GetString("Ecom:Product:Field.FirstwebBrandLogo.Value.FullPath"))) 362 { 363 364 365 #line default 366 #line hidden 367 WriteLiteralTo(__razor_helper_writer, " <img"); 368 369 WriteAttributeTo(__razor_helper_writer, "src", Tuple.Create(" src=\"", 31649), Tuple.Create("\"", 31665) 370 371 #line 561 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 372 , Tuple.Create(Tuple.Create("", 31655), Tuple.Create<System.Object, System.Int32>(BrandLogo 373 374 #line default 375 #line hidden 376 , 31655), false) 377 ); 378 379 WriteAttributeTo(__razor_helper_writer, "alt", Tuple.Create(" alt=\"", 31666), Tuple.Create("\"", 31682) 380 381 #line 561 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 382 , Tuple.Create(Tuple.Create("", 31672), Tuple.Create<System.Object, System.Int32>(BrandName 383 384 #line default 385 #line hidden 386 , 31672), false) 387 ); 388 389 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 390 391 392 #line 562 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 393 } 394 395 396 #line default 397 #line hidden 398 WriteLiteralTo(__razor_helper_writer, " </div>\r\n <div"); 399 400 WriteLiteralTo(__razor_helper_writer, " class=\"product-image\""); 401 402 WriteLiteralTo(__razor_helper_writer, ">\r\n <img"); 403 404 WriteAttributeTo(__razor_helper_writer, "src", Tuple.Create(" src=\"", 31802), Tuple.Create("\"", 31831) 405 406 #line 565 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 407 , Tuple.Create(Tuple.Create("", 31808), Tuple.Create<System.Object, System.Int32>(primaryProductImageUrl 408 409 #line default 410 #line hidden 411 , 31808), false) 412 ); 413 414 WriteAttributeTo(__razor_helper_writer, "alt", Tuple.Create(" alt=\"", 31832), Tuple.Create("\"", 31850) 415 416 #line 565 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 417 , Tuple.Create(Tuple.Create("", 31838), Tuple.Create<System.Object, System.Int32>(productName 418 419 #line default 420 #line hidden 421 , 31838), false) 422 ); 423 424 WriteLiteralTo(__razor_helper_writer, " style=\"max-height:150px;\""); 425 426 WriteLiteralTo(__razor_helper_writer, ">\r\n </div>\r\n <div"); 427 428 WriteLiteralTo(__razor_helper_writer, " class=\"product-info\""); 429 430 WriteLiteralTo(__razor_helper_writer, ">\r\n <p"); 431 432 WriteLiteralTo(__razor_helper_writer, " class=\"product-info-top\""); 433 434 WriteLiteralTo(__razor_helper_writer, "><span"); 435 436 WriteLiteralTo(__razor_helper_writer, " class=\"product-number\""); 437 438 WriteLiteralTo(__razor_helper_writer, ">"); 439 440 441 #line 568 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 442 WriteTo(__razor_helper_writer, productNumber); 443 444 445 #line default 446 #line hidden 447 WriteLiteralTo(__razor_helper_writer, "</span><span"); 448 449 WriteLiteralTo(__razor_helper_writer, " class=\"product-colli\""); 450 451 WriteLiteralTo(__razor_helper_writer, ">"); 452 453 454 #line 568 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 455 WriteTo(__razor_helper_writer, Translate("Product.ColliSize", "Kolli")); 456 457 458 #line default 459 #line hidden 460 WriteLiteralTo(__razor_helper_writer, ": "); 461 462 463 #line 568 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 464 WriteTo(__razor_helper_writer, Collisize); 465 466 467 #line default 468 #line hidden 469 WriteLiteralTo(__razor_helper_writer, "</span></p>\r\n <p"); 470 471 WriteLiteralTo(__razor_helper_writer, " class=\"product-name\""); 472 473 WriteLiteralTo(__razor_helper_writer, ">"); 474 475 476 #line 569 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 477 WriteTo(__razor_helper_writer, productName); 478 479 480 #line default 481 #line hidden 482 WriteLiteralTo(__razor_helper_writer, "</p>\r\n\r\n </div>\r\n"); 483 484 485 #line 572 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 486 487 488 #line default 489 #line hidden 490 491 #line 572 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 492 if (!isBlocked) 493 { 494 495 496 if (ShowShopFunctions) 497 { 498 499 500 #line default 501 #line hidden 502 WriteLiteralTo(__razor_helper_writer, " <div"); 503 504 WriteLiteralTo(__razor_helper_writer, " class=\"productlist-price-area \""); 505 506 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 507 508 WriteLiteralTo(__razor_helper_writer, " class=\"width-50\""); 509 510 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 511 512 513 #line 580 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 514 515 516 #line default 517 #line hidden 518 519 #line 580 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 520 if (IsPurchaceProduct) 521 { 522 523 524 #line default 525 #line hidden 526 WriteLiteralTo(__razor_helper_writer, " <p"); 527 528 WriteLiteralTo(__razor_helper_writer, " class=\"purchace-product text-left\""); 529 530 WriteLiteralTo(__razor_helper_writer, ">\r\n <i"); 531 532 WriteLiteralTo(__razor_helper_writer, " class=\"far fa-truck\""); 533 534 WriteLiteralTo(__razor_helper_writer, "></i> "); 535 536 537 #line 583 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 538 WriteTo(__razor_helper_writer, Translate("Product.PurchaceProduct", "Skaffevare")); 539 540 541 #line default 542 #line hidden 543 WriteLiteralTo(__razor_helper_writer, "\r\n </p>\r\n"); 544 545 546 #line 585 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 547 } 548 else 549 { 550 551 552 #line default 553 #line hidden 554 WriteLiteralTo(__razor_helper_writer, " <p"); 555 556 WriteLiteralTo(__razor_helper_writer, " class=\"stock-indicator\""); 557 558 WriteLiteralTo(__razor_helper_writer, ">\r\n <span"); 559 560 WriteLiteralTo(__razor_helper_writer, " class=\"stock-load-async\""); 561 562 WriteAttributeTo(__razor_helper_writer, "style", Tuple.Create(" style=\"", 33074), Tuple.Create("\"", 33112) 563 , Tuple.Create(Tuple.Create("", 33082), Tuple.Create("background-color:", 33082), true) 564 565 #line 589 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 566 , Tuple.Create(Tuple.Create(" ", 33099), Tuple.Create<System.Object, System.Int32>(StockStatus 567 568 #line default 569 #line hidden 570 , 33100), false) 571 ); 572 573 WriteLiteralTo(__razor_helper_writer, "></span>\r\n <span"); 574 575 WriteLiteralTo(__razor_helper_writer, " class=\"stock-name\""); 576 577 WriteLiteralTo(__razor_helper_writer, ">"); 578 579 580 #line 590 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 581 WriteTo(__razor_helper_writer, StockLabel); 582 583 584 #line default 585 #line hidden 586 WriteLiteralTo(__razor_helper_writer, "</span>\r\n <span"); 587 588 WriteLiteralTo(__razor_helper_writer, " class=\"stock-name js-in-stock-again hide\""); 589 590 WriteLiteralTo(__razor_helper_writer, ">"); 591 592 593 #line 591 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 594 WriteTo(__razor_helper_writer, Translate("Product.StockExpectedAgaing", "P&aring; lager: ")); 595 596 597 #line default 598 #line hidden 599 WriteLiteralTo(__razor_helper_writer, "<span"); 600 601 WriteLiteralTo(__razor_helper_writer, " class=\"js-stock-date\""); 602 603 WriteLiteralTo(__razor_helper_writer, "></span></span>\r\n </p>\r\n"); 604 605 606 #line 593 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 607 if (NotInStock && !String.IsNullOrEmpty(ConfirmedDeliveryDate)) 608 { 609 610 611 #line default 612 #line hidden 613 WriteLiteralTo(__razor_helper_writer, " <p"); 614 615 WriteLiteralTo(__razor_helper_writer, " class=\"stock-cdd\""); 616 617 WriteLiteralTo(__razor_helper_writer, ">"); 618 619 620 #line 595 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 621 WriteTo(__razor_helper_writer, Translate("Product.ConfirmedDeliveryDate", "På lager")); 622 623 624 #line default 625 #line hidden 626 WriteLiteralTo(__razor_helper_writer, ": "); 627 628 629 #line 595 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 630 WriteTo(__razor_helper_writer, ConfirmedDeliveryDate); 631 632 633 #line default 634 #line hidden 635 WriteLiteralTo(__razor_helper_writer, "</p>\r\n"); 636 637 638 #line 596 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 639 } 640 641 if (StockStatus == "#009600") 642 { 643 644 645 #line default 646 #line hidden 647 WriteLiteralTo(__razor_helper_writer, "\t\t\t\t\t\t\t\t\t\t<p"); 648 649 WriteLiteralTo(__razor_helper_writer, " class=\"stock-cdd\""); 650 651 WriteLiteralTo(__razor_helper_writer, ">"); 652 653 654 #line 600 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 655 WriteTo(__razor_helper_writer, Translate("Product.OnStockDeliveryText", "Levering: 1-2 dage")); 656 657 658 #line default 659 #line hidden 660 WriteLiteralTo(__razor_helper_writer, "</p>\r\n"); 661 662 663 #line 601 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 664 } 665 } 666 667 668 #line default 669 #line hidden 670 WriteLiteralTo(__razor_helper_writer, "\r\n </div>\r\n <div"); 671 672 WriteLiteralTo(__razor_helper_writer, " class=\"width-50\""); 673 674 WriteLiteralTo(__razor_helper_writer, ">\r\n \r\n"); 675 676 677 #line 607 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 678 679 680 #line default 681 #line hidden 682 683 #line 607 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 684 if (!HidePrices) 685 { 686 687 688 689 #line default 690 #line hidden 691 WriteLiteralTo(__razor_helper_writer, " <p><span"); 692 693 WriteLiteralTo(__razor_helper_writer, " class=\"price-display-normalprice\""); 694 695 WriteLiteralTo(__razor_helper_writer, ">"); 696 697 698 #line 610 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 699 WriteTo(__razor_helper_writer, bruttoPrice); 700 701 702 #line default 703 #line hidden 704 WriteLiteralTo(__razor_helper_writer, "</span></p>\r\n"); 705 706 WriteLiteralTo(__razor_helper_writer, " <p><span"); 707 708 WriteLiteralTo(__razor_helper_writer, " class=\"price-display-yourprice\""); 709 710 WriteLiteralTo(__razor_helper_writer, ">"); 711 712 713 #line 611 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 714 WriteTo(__razor_helper_writer, product.GetString("Ecom:Product.Price.PriceWithoutVATFormatted")); 715 716 717 #line default 718 #line hidden 719 WriteLiteralTo(__razor_helper_writer, "</span></p>\r\n"); 720 721 722 #line 612 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 723 if (ShowBeforePrice && 1==0) 724 { 725 726 727 #line default 728 #line hidden 729 WriteLiteralTo(__razor_helper_writer, " <p><span"); 730 731 WriteLiteralTo(__razor_helper_writer, " class=\"price-display-medium-label\""); 732 733 WriteLiteralTo(__razor_helper_writer, ">"); 734 735 736 #line 614 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 737 WriteTo(__razor_helper_writer, Translate("Product.Beforeprice", "F&oslash;rpris")); 738 739 740 #line default 741 #line hidden 742 WriteLiteralTo(__razor_helper_writer, "</span> <span"); 743 744 WriteLiteralTo(__razor_helper_writer, " class=\"price-display-medium\""); 745 746 WriteLiteralTo(__razor_helper_writer, ">"); 747 748 749 #line 614 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 750 WriteTo(__razor_helper_writer, BeforePriceFormatted); 751 752 753 #line default 754 #line hidden 755 WriteLiteralTo(__razor_helper_writer, "</span></p>\r\n"); 756 757 758 #line 615 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 759 } 760 } 761 762 763 #line default 764 #line hidden 765 WriteLiteralTo(__razor_helper_writer, " </div>\r\n </div>\r\n"); 766 767 768 #line 619 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 769 770 771 } 772 } 773 774 775 #line default 776 #line hidden 777 WriteLiteralTo(__razor_helper_writer, "\r\n </a>\r\n"); 778 779 780 #line 625 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 781 782 783 #line default 784 #line hidden 785 786 #line 625 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 787 if (!isBlocked) 788 { 789 if (ShowShopFunctions) 790 { 791 792 793 #line default 794 #line hidden 795 WriteLiteralTo(__razor_helper_writer, " <div"); 796 797 WriteLiteralTo(__razor_helper_writer, " class=\"add-to-cart-area\""); 798 799 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 800 801 802 #line 630 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 803 804 805 #line default 806 #line hidden 807 808 #line 630 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 809 if (isOrderTemplate) 810 { 811 812 813 #line default 814 #line hidden 815 WriteLiteralTo(__razor_helper_writer, " <!-- ko initValue: {observable: Quantity, value:"); 816 817 818 #line 632 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 819 WriteTo(__razor_helper_writer, orderLineQuantity); 820 821 822 #line default 823 #line hidden 824 WriteLiteralTo(__razor_helper_writer, "}-->"); 825 826 WriteLiteralTo(__razor_helper_writer, "<!-- /ko-->\r\n"); 827 828 829 #line 633 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 830 } 831 else 832 { 833 834 835 #line default 836 #line hidden 837 WriteLiteralTo(__razor_helper_writer, " <!-- ko initValue: {observable: Quantity, value:"); 838 839 840 #line 636 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 841 WriteTo(__razor_helper_writer, defaultQuantity); 842 843 844 #line default 845 #line hidden 846 WriteLiteralTo(__razor_helper_writer, "}-->"); 847 848 WriteLiteralTo(__razor_helper_writer, "<!-- /ko-->\r\n"); 849 850 851 #line 637 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 852 } 853 854 855 #line default 856 #line hidden 857 WriteLiteralTo(__razor_helper_writer, " <input"); 858 859 WriteLiteralTo(__razor_helper_writer, " class=\"product-quantity js-product-quantity\""); 860 861 WriteLiteralTo(__razor_helper_writer, " type=\"number\""); 862 863 WriteLiteralTo(__razor_helper_writer, " name=\"quantity\""); 864 865 WriteLiteralTo(__razor_helper_writer, " data-bind=\"value: Quantity, event: { keypress: function() { if (window.event.key" + 866 "Code == 13) { $parent.addItemToCart(ProductId(), $(window.event.target).val(), \'" + 867 "\', \'\', \'"); 868 869 870 #line 638 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 871 WriteTo(__razor_helper_writer, AddingToCartText); 872 873 874 #line default 875 #line hidden 876 WriteLiteralTo(__razor_helper_writer, "\'); animateCart(event); } return true;}}\""); 877 878 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 879 880 WriteAttributeTo(__razor_helper_writer, "title", Tuple.Create(" title=\"", 35955), Tuple.Create("\"", 35984) 881 882 #line 639 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 883 , Tuple.Create(Tuple.Create("", 35963), Tuple.Create<System.Object, System.Int32>(addToCartWarningText 884 885 #line default 886 #line hidden 887 , 35963), false) 888 ); 889 890 WriteLiteralTo(__razor_helper_writer, " class=\"btn btn-primary js-product-buy-btn\""); 891 892 WriteLiteralTo(__razor_helper_writer, " data-addedtocarttext=\""); 893 894 895 #line 639 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 896 WriteTo(__razor_helper_writer, Translate(" product.addedtocart",="" "varen="" er="" tilføjet")); 897 898 899 #line default 900 #line hidden 901 WriteLiteralTo(__razor_helper_writer, "\""); 902 903 WriteLiteralTo(__razor_helper_writer, "=\"\" data-bind=\"click: function() { if (\'"); 904 905 906 #line 639 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 907 WriteTo(__razor_helper_writer, inBackorders); 908 909 910 #line default 911 #line hidden 912 WriteLiteralTo(__razor_helper_writer, "\' == \'False\' || confirm(\'"); 913 914 915 #line 639 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 916 WriteTo(__razor_helper_writer, addToCartWarningTextConfirmation); 917 918 919 #line default 920 #line hidden 921 WriteLiteralTo(__razor_helper_writer, "\')) { $parent.addItemToCart(ProductId(), Quantity(), \'\', \'\', \'"); 922 923 924 #line 639 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 925 WriteTo(__razor_helper_writer, AddingToCartText); 926 927 928 #line default 929 #line hidden 930 WriteLiteralTo(__razor_helper_writer, "\'); animateCart(event); }}\" data-productid=\""); 931 932 933 #line 639 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 934 WriteTo(__razor_helper_writer, productID); 935 936 937 #line default 938 #line hidden 939 WriteLiteralTo(__razor_helper_writer, "\">\r\n"); 940 941 WriteLiteralTo(__razor_helper_writer, " "); 942 943 944 #line 640 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 945 WriteTo(__razor_helper_writer, Translate("Product.AddToCart", "TILFØJ TIL KURV")); 946 947 948 #line default 949 #line hidden 950 WriteLiteralTo(__razor_helper_writer, "\r\n\r\n"); 951 952 953 #line 642 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 954 955 956 #line default 957 #line hidden 958 959 #line 642 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 960 if (inBackorders) 961 { 962 963 964 #line default 965 #line hidden 966 WriteLiteralTo(__razor_helper_writer, " <i"); 967 968 WriteLiteralTo(__razor_helper_writer, " class=\"fas fa-exclamation-triangle\""); 969 970 WriteLiteralTo(__razor_helper_writer, "></i>\r\n"); 971 972 973 #line 645 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 974 } 975 976 977 #line default 978 #line hidden 979 WriteLiteralTo(__razor_helper_writer, " </div>\r\n <div"); 980 981 WriteLiteralTo(__razor_helper_writer, " class=\"not-in-stock-indicator js-not-in-stock-indicator hide\""); 982 983 WriteLiteralTo(__razor_helper_writer, ">\r\n <p>"); 984 985 986 #line 648 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 987 WriteTo(__razor_helper_writer, Translate("Product.NotInStock", "Ikke p&aring; lager")); 988 989 990 #line default 991 #line hidden 992 WriteLiteralTo(__razor_helper_writer, "</p>\r\n </div>\r\n"); 993 994 995 #line 650 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 996 997 998 #line default 999 #line hidden 1000 1001 #line 650 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1002 if (!isOrderTemplate) 1003 { 1004 1005 1006 #line default 1007 #line hidden 1008 WriteLiteralTo(__razor_helper_writer, " <div"); 1009 1010 WriteLiteralTo(__razor_helper_writer, " class=\"favorite-list-icon\""); 1011 1012 WriteLiteralTo(__razor_helper_writer, " data-toggle=\"modal\""); 1013 1014 WriteLiteralTo(__razor_helper_writer, " data-target=\"#modal-"); 1015 1016 1017 #line 652 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1018 WriteTo(__razor_helper_writer, productID); 1019 1020 1021 #line default 1022 #line hidden 1023 WriteLiteralTo(__razor_helper_writer, "\""); 1024 1025 WriteLiteralTo(__razor_helper_writer, " data-bind=\"with: OrderTemplateViewModel\""); 1026 1027 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 1028 1029 WriteLiteralTo(__razor_helper_writer, " class=\"favorite-list-icon-btn\""); 1030 1031 WriteLiteralTo(__razor_helper_writer, " data-bind=\"\r\n oninit: function() { IsInFavoriteLi" + 1032 "st(\'"); 1033 1034 1035 #line 654 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1036 WriteTo(__razor_helper_writer, inFavourite); 1037 1038 1039 #line default 1040 #line hidden 1041 WriteLiteralTo(__razor_helper_writer, @"'.toLowerCase()) }, 1042 css : { showFavorite : ShowOrderTemplateDialog, showNewList : OrderTemplateShowNewList, added: IsInFavoriteList() == 'true', notadded: IsInFavoriteList() == 'false' }, 1043 click: ToggleOrderTemplateDialog"""); 1044 1045 WriteLiteralTo(__razor_helper_writer, ">\r\n <i"); 1046 1047 WriteLiteralTo(__razor_helper_writer, " class=\"fas fa-star\""); 1048 1049 WriteLiteralTo(__razor_helper_writer, "></i>\r\n </div>\r\n </div>" + 1050 "\r\n"); 1051 1052 WriteLiteralTo(__razor_helper_writer, " <div"); 1053 1054 WriteLiteralTo(__razor_helper_writer, " class=\"modal fade\""); 1055 1056 WriteAttributeTo(__razor_helper_writer, "id", Tuple.Create(" id=\"", 37755), Tuple.Create("\"", 37776) 1057 , Tuple.Create(Tuple.Create("", 37760), Tuple.Create("modal-", 37760), true) 1058 1059 #line 660 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1060 , Tuple.Create(Tuple.Create("", 37766), Tuple.Create<System.Object, System.Int32>(productID 1061 1062 #line default 1063 #line hidden 1064 , 37766), false) 1065 ); 1066 1067 WriteLiteralTo(__razor_helper_writer, " tabindex=\"-1\""); 1068 1069 WriteLiteralTo(__razor_helper_writer, " role=\"dialog\""); 1070 1071 WriteLiteralTo(__razor_helper_writer, " data-bind=\"with: OrderTemplateViewModel\""); 1072 1073 WriteLiteralTo(__razor_helper_writer, ">\r\n <!-- ko initValue: {observable: OrderTemplateR" + 1074 "elationCount, value:\'"); 1075 1076 1077 #line 661 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1078 WriteTo(__razor_helper_writer, productInFavoritLists); 1079 1080 1081 #line default 1082 #line hidden 1083 WriteLiteralTo(__razor_helper_writer, "\'}--><!-- /ko-->\r\n <!-- ko initValue: {observable:" + 1084 " ShowInFavourite, value: "); 1085 1086 1087 #line 662 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1088 WriteTo(__razor_helper_writer, inFavouriteBoolJS); 1089 1090 1091 #line default 1092 #line hidden 1093 WriteLiteralTo(__razor_helper_writer, "}--><!-- /ko-->\r\n <!-- ko initValue: {observable: " + 1094 "ModalSelector, value: \'#modal-"); 1095 1096 1097 #line 663 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1098 WriteTo(__razor_helper_writer, productID); 1099 1100 1101 #line default 1102 #line hidden 1103 WriteLiteralTo(__razor_helper_writer, "\'}--><!-- /ko-->\r\n <div"); 1104 1105 WriteLiteralTo(__razor_helper_writer, " class=\"modal-dialog\""); 1106 1107 WriteLiteralTo(__razor_helper_writer, " role=\"document\""); 1108 1109 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 1110 1111 WriteLiteralTo(__razor_helper_writer, " class=\"modal-content fav-list\""); 1112 1113 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n <p"); 1114 1115 WriteLiteralTo(__razor_helper_writer, " class=\"favlist-header\""); 1116 1117 WriteLiteralTo(__razor_helper_writer, ">"); 1118 1119 1120 #line 667 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1121 WriteTo(__razor_helper_writer, Translate("Ordertemplate.AddToExistingList", "Tilføj til eksisterende favoritliste")); 1122 1123 1124 #line default 1125 #line hidden 1126 WriteLiteralTo(__razor_helper_writer, "</p>\r\n\r\n <div"); 1127 1128 WriteLiteralTo(__razor_helper_writer, " class=\"existing-lists\""); 1129 1130 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n <select"); 1131 1132 WriteLiteralTo(__razor_helper_writer, " class=\"favField select-fix\""); 1133 1134 WriteLiteralTo(__razor_helper_writer, " data-bind=\"options: OrderTemplateList,\r\n " + 1135 " optionsCaption: \'"); 1136 1137 1138 #line 672 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1139 WriteTo(__razor_helper_writer, PickListText); 1140 1141 1142 #line default 1143 #line hidden 1144 WriteLiteralTo(__razor_helper_writer, "\',\r\n optionsText: function(item) { ret" + 1145 "urn item.Value.Name() + \' (\' + item.Value.Count() + \')\' },\r\n " + 1146 " value: OrderTemplateSelectedList\""); 1147 1148 WriteLiteralTo(__razor_helper_writer, "></select>\r\n\r\n <input"); 1149 1150 WriteLiteralTo(__razor_helper_writer, " class=\"product-quantity\""); 1151 1152 WriteLiteralTo(__razor_helper_writer, " type=\"number\""); 1153 1154 WriteLiteralTo(__razor_helper_writer, " name=\"quantity\""); 1155 1156 WriteLiteralTo(__razor_helper_writer, " data-bind=\"textInput: OrderTemplateQuantity\""); 1157 1158 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n <div"); 1159 1160 WriteLiteralTo(__razor_helper_writer, " class=\"btn btn-primary\""); 1161 1162 WriteLiteralTo(__razor_helper_writer, " data-bind=\"click: function() {\r\n " + 1163 " OrderTemplateShowNewList()\r\n " + 1164 " ? CreateNewOrderTemplateList(\'"); 1165 1166 1167 #line 680 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1168 WriteTo(__razor_helper_writer, productID); 1169 1170 1171 #line default 1172 #line hidden 1173 WriteLiteralTo(__razor_helper_writer, "\')\r\n : AddProductToOrd" + 1174 "erTemplate(\'"); 1175 1176 1177 #line 681 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1178 WriteTo(__razor_helper_writer, productID); 1179 1180 1181 #line default 1182 #line hidden 1183 WriteLiteralTo(__razor_helper_writer, "\' , OrderTemplateQuantity())\r\n }\""); 1184 1185 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 1186 1187 WriteLiteralTo(__razor_helper_writer, " "); 1188 1189 1190 #line 683 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1191 WriteTo(__razor_helper_writer, Translate("Ordertemplate.AddToList", "Tilføj")); 1192 1193 1194 #line default 1195 #line hidden 1196 WriteLiteralTo(__razor_helper_writer, "\r\n </div>\r\n\r\n " + 1197 " </div>\r\n\r\n <p"); 1198 1199 WriteLiteralTo(__razor_helper_writer, " class=\"or-text\""); 1200 1201 WriteLiteralTo(__razor_helper_writer, ">"); 1202 1203 1204 #line 688 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1205 WriteTo(__razor_helper_writer, Translate("Ordertemplate.OrNewList", "eller...")); 1206 1207 1208 #line default 1209 #line hidden 1210 WriteLiteralTo(__razor_helper_writer, "</p>\r\n\r\n <p"); 1211 1212 WriteLiteralTo(__razor_helper_writer, " class=\"favlist-header\""); 1213 1214 WriteLiteralTo(__razor_helper_writer, ">"); 1215 1216 1217 #line 690 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1218 WriteTo(__razor_helper_writer, Translate("Ordertemplate.AddToNewList", "Tilføj til ny favoritliste")); 1219 1220 1221 #line default 1222 #line hidden 1223 WriteLiteralTo(__razor_helper_writer, "</p>\r\n\r\n <form"); 1224 1225 WriteAttributeTo(__razor_helper_writer, "id", Tuple.Create(" id=\"", 40176), Tuple.Create("\"", 40200) 1226 , Tuple.Create(Tuple.Create("", 40181), Tuple.Create("EditForm-", 40181), true) 1227 1228 #line 692 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1229 , Tuple.Create(Tuple.Create("", 40190), Tuple.Create<System.Object, System.Int32>(productID 1230 1231 #line default 1232 #line hidden 1233 , 40190), false) 1234 ); 1235 1236 WriteLiteralTo(__razor_helper_writer, " name=\"EditForm\""); 1237 1238 WriteLiteralTo(__razor_helper_writer, ">\r\n <label"); 1239 1240 WriteLiteralTo(__razor_helper_writer, " class=\"xs-m-b-1\""); 1241 1242 WriteLiteralTo(__razor_helper_writer, " for=\"name\""); 1243 1244 WriteLiteralTo(__razor_helper_writer, ">"); 1245 1246 1247 #line 693 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1248 WriteTo(__razor_helper_writer, Translate("Ordertemplate.ListName", "Favoritliste navn")); 1249 1250 1251 #line default 1252 #line hidden 1253 WriteLiteralTo(__razor_helper_writer, "</label>\r\n <div"); 1254 1255 WriteLiteralTo(__razor_helper_writer, " class=\"new-list\""); 1256 1257 WriteLiteralTo(__razor_helper_writer, ">\r\n <input"); 1258 1259 WriteLiteralTo(__razor_helper_writer, " type=\"text\""); 1260 1261 WriteLiteralTo(__razor_helper_writer, " name=\"name\""); 1262 1263 WriteLiteralTo(__razor_helper_writer, " _id=\"name\""); 1264 1265 WriteLiteralTo(__razor_helper_writer, " data-bind=\"textInput: OrderTemplateNewListName\""); 1266 1267 WriteLiteralTo(__razor_helper_writer, " autofocus=\"\""); 1268 1269 WriteLiteralTo(__razor_helper_writer, " autocomplete=\"off\""); 1270 1271 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n <input"); 1272 1273 WriteLiteralTo(__razor_helper_writer, " class=\"product-quantity\""); 1274 1275 WriteLiteralTo(__razor_helper_writer, " type=\"number\""); 1276 1277 WriteLiteralTo(__razor_helper_writer, " name=\"quantity\""); 1278 1279 WriteLiteralTo(__razor_helper_writer, " data-bind=\"textInput: OrderTemplateNewListQuantity\""); 1280 1281 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n <button"); 1282 1283 WriteLiteralTo(__razor_helper_writer, " type=\"submit\""); 1284 1285 WriteLiteralTo(__razor_helper_writer, " class=\"btn btn-primary\""); 1286 1287 WriteLiteralTo(__razor_helper_writer, " _id=\"btnSave\""); 1288 1289 WriteLiteralTo(__razor_helper_writer, " data-bind=\"click: function() { CreateNewOrderTemplateList(\'"); 1290 1291 1292 #line 699 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1293 WriteTo(__razor_helper_writer, productID); 1294 1295 1296 #line default 1297 #line hidden 1298 WriteLiteralTo(__razor_helper_writer, "\', OrderTemplateNewListQuantity()) }\""); 1299 1300 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 1301 1302 WriteLiteralTo(__razor_helper_writer, " "); 1303 1304 1305 #line 700 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1306 WriteTo(__razor_helper_writer, Translate("Ordertemplate.SaveToNewList", "Tilføj til ny favoritliste")); 1307 1308 1309 #line default 1310 #line hidden 1311 WriteLiteralTo(__razor_helper_writer, @" 1312 </button> 1313 </div> 1314 </form> 1315 1316 </div> 1317 </div> 1318 </div> 1319 "); 1320 1321 1322 #line 708 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1323 } 1324 else 1325 { 1326 1327 1328 #line default 1329 #line hidden 1330 WriteLiteralTo(__razor_helper_writer, " <div"); 1331 1332 WriteLiteralTo(__razor_helper_writer, " class=\"favorite-list-icon\""); 1333 1334 WriteLiteralTo(__razor_helper_writer, " data-bind=\"with: OrderTemplateViewModel\""); 1335 1336 WriteLiteralTo(__razor_helper_writer, ">\r\n <!-- ko initValue: {observable: OrderTemplateI" + 1337 "d, value:\'"); 1338 1339 1340 #line 712 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1341 WriteTo(__razor_helper_writer, orderTemplateId); 1342 1343 1344 #line default 1345 #line hidden 1346 WriteLiteralTo(__razor_helper_writer, "\'}--><!-- /ko-->\r\n <!-- ko initValue: {observable:" + 1347 " OrderTemplateLineId, value:\'"); 1348 1349 1350 #line 713 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1351 WriteTo(__razor_helper_writer, orderLineId); 1352 1353 1354 #line default 1355 #line hidden 1356 WriteLiteralTo(__razor_helper_writer, "\'}--><!-- /ko-->\r\n <i"); 1357 1358 WriteLiteralTo(__razor_helper_writer, " class=\"fas fa-times\""); 1359 1360 WriteLiteralTo(__razor_helper_writer, " data-bind=\"\r\n oninit: function() { IsInFavoriteLi" + 1361 "st(\'"); 1362 1363 1364 #line 715 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1365 WriteTo(__razor_helper_writer, inFavourite); 1366 1367 1368 #line default 1369 #line hidden 1370 WriteLiteralTo(__razor_helper_writer, "\'.toLowerCase()) },\r\n css: { showFavorite: ShowOrd" + 1371 "erTemplateDialog, showNewList: OrderTemplateShowNewList, active: IsInFavoriteLis" + 1372 "t() == \'true\' },\r\n click: DeleteOrderTemplateLine" + 1373 "\""); 1374 1375 WriteLiteralTo(__razor_helper_writer, ">\r\n </i>\r\n </div>\r\n"); 1376 1377 1378 #line 720 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1379 } 1380 1381 1382 #line default 1383 #line hidden 1384 WriteLiteralTo(__razor_helper_writer, " </div>\r\n"); 1385 1386 1387 #line 722 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1388 } 1389 1390 if (showSubInfoContainer) 1391 { 1392 1393 1394 #line default 1395 #line hidden 1396 WriteLiteralTo(__razor_helper_writer, " <div"); 1397 1398 WriteLiteralTo(__razor_helper_writer, " class=\"subinfo-container\""); 1399 1400 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 1401 1402 1403 #line 727 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1404 1405 1406 #line default 1407 #line hidden 1408 1409 #line 727 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1410 if (HasSimilarProducts && 1==2) 1411 { 1412 1413 1414 #line default 1415 #line hidden 1416 WriteLiteralTo(__razor_helper_writer, " <a"); 1417 1418 WriteAttributeTo(__razor_helper_writer, "href", Tuple.Create(" href=\"", 42602), Tuple.Create("\"", 42621) 1419 1420 #line 729 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1421 , Tuple.Create(Tuple.Create("", 42609), Tuple.Create<System.Object, System.Int32>(productLink 1422 1423 #line default 1424 #line hidden 1425 , 42609), false) 1426 ); 1427 1428 WriteLiteralTo(__razor_helper_writer, " class=\"similarproducts-info\""); 1429 1430 WriteLiteralTo(__razor_helper_writer, ">"); 1431 1432 1433 #line 729 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1434 WriteTo(__razor_helper_writer, Translate("Product.HasSimilarProducts", "Lignende produkter")); 1435 1436 1437 #line default 1438 #line hidden 1439 WriteLiteralTo(__razor_helper_writer, "</a>\r\n"); 1440 1441 1442 #line 730 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1443 } 1444 1445 1446 #line default 1447 #line hidden 1448 WriteLiteralTo(__razor_helper_writer, " "); 1449 1450 1451 #line 731 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1452 if (ShowShopFunctions) 1453 { 1454 if (ShowQuantityPrices && !HidePrices) 1455 { 1456 1457 1458 #line default 1459 #line hidden 1460 WriteLiteralTo(__razor_helper_writer, " <div"); 1461 1462 WriteLiteralTo(__razor_helper_writer, " class=\"quantity-prices-container\""); 1463 1464 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 1465 1466 WriteLiteralTo(__razor_helper_writer, " "); 1467 1468 1469 #line 736 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1470 WriteTo(__razor_helper_writer, RenderQuantityPrices(productNumber, productCurrency, productID)); 1471 1472 1473 #line default 1474 #line hidden 1475 WriteLiteralTo(__razor_helper_writer, "\r\n </div>\r\n"); 1476 1477 1478 #line 738 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1479 } 1480 1481 } 1482 1483 1484 #line default 1485 #line hidden 1486 WriteLiteralTo(__razor_helper_writer, "\r\n \r\n </div>\r\n"); 1487 1488 1489 #line 744 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1490 } 1491 1492 1493 } 1494 else 1495 { 1496 1497 1498 #line default 1499 #line hidden 1500 1501 #line 750 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1502 WriteTo(__razor_helper_writer, RenderReplacementProducts(replacementProducts, PrimaryProductPageId)); 1503 1504 1505 #line default 1506 #line hidden 1507 1508 #line 750 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1509 1510 } 1511 1512 1513 #line default 1514 #line hidden 1515 WriteLiteralTo(__razor_helper_writer, " </div>\r\n \r\n </div> \r\n"); 1516 1517 WriteLiteralTo(__razor_helper_writer, " <!-- /ko-->\r\n"); 1518 1519 1520 #line 756 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1521 1522 1523 #line default 1524 #line hidden 1525 }); 1526 1527 #line 756 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1528 } 1529 #line default 1530 #line hidden 1531 1532 1533 #line 762 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1534 public RazorEngine.Templating.TemplateWriter renderRelatedProduct(LoopItem repatedProduct) 1535 { 1536 #line default 1537 #line hidden 1538 return new RazorEngine.Templating.TemplateWriter(__razor_helper_writer => { 1539 1540 #line 763 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1541 1542 string productID = repatedProduct.GetString("Ecom:Product.ID"); 1543 string productNumber = repatedProduct.GetString("Ecom:Product.Number"); 1544 string mainProductID = GetString("Ecom:Product:Field.FirstwebMainProductID"); 1545 1546 string productName = repatedProduct.GetString("Ecom:Product.Name"); 1547 string productDescription = GetString("Ecom:Product.LongDescription"); 1548 string productShortDescription = GetString("Ecom:Product.ShortDescription"); 1549 1550 string nettoPrice = repatedProduct.GetString("Firstweb:ErpPriceInfo.NettoPriceFormatted"); 1551 int bruttoPrice = repatedProduct.GetInteger("Firstweb:ErpPriceInfo.BruttoAmountFormattedNoSymbol"); 1552 1553 int productPackagingQuantity = repatedProduct.GetInteger("Ecom:Product:Field.NAVMinQuantity"); 1554 int defaultQuantity = productPackagingQuantity > 0 ? productPackagingQuantity : 1; 1555 1556 string languageId = repatedProduct.GetString("Ecom:Product.LanguageID"); 1557 string variantId = repatedProduct.GetString("Ecom:Product.VariantID"); 1558 1559 int productInFavoritLists = GetInteger("Firstweb:Ecom:Product:OrderTemplate.InTemplates.Count"); 1560 1561 List<Dynamicweb.Ecommerce.Products.Detail> productImages = Firstweb.Custom.CustomCode.Frontend.Helpers.ProductImages.GetProductImages(languageId, productID, variantId); 1562 Dynamicweb.Ecommerce.Products.Detail primaryProductImage = productImages.FirstOrDefault(x=>x.IsDefault); //Tag you can use instead: product.GetString("Ecom:Product.ImageDefault.Clean"); 1563 //check for valid default image 1564 if (primaryProductImage == null) 1565 { 1566 primaryProductImage = new Dynamicweb.Ecommerce.Products.Detail { Value = "" }; 1567 } 1568 else if (primaryProductImage.Value == null) 1569 { 1570 primaryProductImage.Value = ""; 1571 } 1572 1573 string primaryProductImageUrl = "/admin/public/getimage.ashx?image=" + primaryProductImage.Value + "&altFmImage_path=/Files/Images/ecom/Products/no-image.jpg&width=300&height=300&Compression=90&Crop=5"; 1574 1575 //Sorted: first by imagegroup then by sortorder 1576 //@foreach (var productImage in productImages) 1577 //{ 1578 //productImage.Value; //This is the imagepath eks. /Images/products/R12155_10_2.jpg 1579 //productImage.IsDefault; //If the image is default or not. 1580 //} 1581 1582 1583 1584 #line default 1585 #line hidden 1586 WriteLiteralTo(__razor_helper_writer, " <li>\r\n <article"); 1587 1588 WriteLiteralTo(__razor_helper_writer, " class=\"xs-p-2 lg-p-1 rounded-5 border-1 border-color-default\""); 1589 1590 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 1591 1592 WriteLiteralTo(__razor_helper_writer, " class=\"row is-flex xs-is-flex-column sm-is-flex-col md-is-flex-col\""); 1593 1594 WriteLiteralTo(__razor_helper_writer, ">\r\n \r\n <div"); 1595 1596 WriteLiteralTo(__razor_helper_writer, " class=\"col-md-12 md-is-flex lg-p-r-0\""); 1597 1598 WriteLiteralTo(__razor_helper_writer, ">\r\n <section"); 1599 1600 WriteLiteralTo(__razor_helper_writer, " class=\"col-md-3 col-lg-3 xs-p-0 md-p-l-0 md-p-r-1 lg-p-r-1 lg-p-l-0\""); 1601 1602 WriteLiteralTo(__razor_helper_writer, ">\r\n <img"); 1603 1604 WriteLiteralTo(__razor_helper_writer, " class=\"img-responsive xs-auto-margin sm-auto-margin\""); 1605 1606 WriteAttributeTo(__razor_helper_writer, "src", Tuple.Create(" src=\"", 46270), Tuple.Create("\"", 46299) 1607 1608 #line 810 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1609 , Tuple.Create(Tuple.Create("", 46276), Tuple.Create<System.Object, System.Int32>(primaryProductImageUrl 1610 1611 #line default 1612 #line hidden 1613 , 46276), false) 1614 ); 1615 1616 WriteLiteralTo(__razor_helper_writer, ">\r\n </section>\r\n\r\n <section" + 1617 ""); 1618 1619 WriteLiteralTo(__razor_helper_writer, " class=\"col-md-9 col-lg-7 xs-m-t-2 sm-m-t-2 md-m-t-0 xs-p-0 md-p-r-0 md-p-l-1 lg-" + 1620 "p-r-0 lg-p-l-0\""); 1621 1622 WriteLiteralTo(__razor_helper_writer, ">\r\n <header"); 1623 1624 WriteLiteralTo(__razor_helper_writer, " class=\"xs-m-b-1\""); 1625 1626 WriteLiteralTo(__razor_helper_writer, ">\r\n <h2"); 1627 1628 WriteLiteralTo(__razor_helper_writer, " data-bind=\"text: name\""); 1629 1630 WriteLiteralTo(__razor_helper_writer, " class=\"h2 tertiary-font xs-m-t-0\""); 1631 1632 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 1633 1634 WriteLiteralTo(__razor_helper_writer, " "); 1635 1636 1637 #line 816 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1638 WriteTo(__razor_helper_writer, productName); 1639 1640 1641 #line default 1642 #line hidden 1643 WriteLiteralTo(__razor_helper_writer, "\r\n </h2>\r\n </he" + 1644 "ader>\r\n \r\n <sectio" + 1645 "n"); 1646 1647 WriteLiteralTo(__razor_helper_writer, " class=\"xs-m-b-1 clearfix\""); 1648 1649 WriteLiteralTo(__razor_helper_writer, ">\r\n <span"); 1650 1651 WriteLiteralTo(__razor_helper_writer, " class=\"pull-left font-size-small\""); 1652 1653 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 1654 1655 WriteLiteralTo(__razor_helper_writer, " "); 1656 1657 1658 #line 822 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1659 WriteTo(__razor_helper_writer, Translate("Product.NumberShort", "Varenr.")); 1660 1661 1662 #line default 1663 #line hidden 1664 WriteLiteralTo(__razor_helper_writer, ": <span>"); 1665 1666 1667 #line 822 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1668 WriteTo(__razor_helper_writer, productNumber); 1669 1670 1671 #line default 1672 #line hidden 1673 WriteLiteralTo(__razor_helper_writer, "</span>\r\n </span>\r\n " + 1674 " </section>\r\n\r\n <section"); 1675 1676 WriteLiteralTo(__razor_helper_writer, " class=\"word-break\""); 1677 1678 WriteLiteralTo(__razor_helper_writer, ">\r\n <p"); 1679 1680 WriteLiteralTo(__razor_helper_writer, " class=\"font-size-small\""); 1681 1682 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 1683 1684 WriteLiteralTo(__razor_helper_writer, " "); 1685 1686 1687 #line 828 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1688 WriteTo(__razor_helper_writer, productShortDescription); 1689 1690 1691 #line default 1692 #line hidden 1693 WriteLiteralTo(__razor_helper_writer, "\r\n </p>\r\n </sec" + 1694 "tion>\r\n </section>\r\n </div>\r\n\r" + 1695 "\n <section"); 1696 1697 WriteLiteralTo(__razor_helper_writer, @" class=""col-md-9 col-md-offset-3 col-lg-5 col-lg-offset-0 sm-m-t-1 lg-m-t-0 md-p-l-2 1698 lg-p-l-0 is-flex is-flex-col sm-is-flex-row sm-is-flex-wrap sm-flex-justify-space-between 1699 md-is-flex-row md-is-flex-wrap md-flex-justify-space-between lg-flex-grow-2 lg-flex-justify-space-between"""); 1700 1701 WriteLiteralTo(__razor_helper_writer, ">\r\n \r\n <div"); 1702 1703 WriteLiteralTo(__razor_helper_writer, " class=\"is-flex xs-m-t-1 sm-m-t-0 is-flex-col lg-m-b-auto\""); 1704 1705 WriteLiteralTo(__razor_helper_writer, ">\r\n \r\n </div>\r\n\r\n " + 1706 " <div"); 1707 1708 WriteLiteralTo(__razor_helper_writer, " class=\"is-flex is-flex-col md-m-b-1 lg-m-b-0\""); 1709 1710 WriteLiteralTo(__razor_helper_writer, ">\r\n <h4"); 1711 1712 WriteLiteralTo(__razor_helper_writer, " class=\"h4 tertiary-font font-size-16px xs-m-b-1 sm-m-t-0 md-text-right lg-text-r" + 1713 "ight\""); 1714 1715 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 1716 1717 WriteLiteralTo(__razor_helper_writer, " "); 1718 1719 1720 #line 844 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1721 WriteTo(__razor_helper_writer, nettoPrice); 1722 1723 1724 #line default 1725 #line hidden 1726 WriteLiteralTo(__razor_helper_writer, "\r\n </h4>\r\n\r\n <secti" + 1727 "on"); 1728 1729 WriteLiteralTo(__razor_helper_writer, " class=\"xs-m-b-1 clearfix is-flex xs-flex-space-between lg-is-row-reverse\""); 1730 1731 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 1732 1733 WriteLiteralTo(__razor_helper_writer, " class=\"pull-right margin-left-1 xs-order-1 sm-order-1 md-order-1 xs-is-self-end " + 1734 "sm-is-self-end md-is-self-end lg-m-t-0\""); 1735 1736 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 1737 1738 WriteLiteralTo(__razor_helper_writer, " "); 1739 1740 1741 #line 849 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1742 WriteTo(__razor_helper_writer, renderQuantityBox(defaultQuantity)); 1743 1744 1745 #line default 1746 #line hidden 1747 WriteLiteralTo(__razor_helper_writer, "\r\n </div>\r\n\r\n " + 1748 " <div"); 1749 1750 WriteLiteralTo(__razor_helper_writer, " class=\"is-flex is-flex-col is-centered xs-margin-right-auto sm-m-r-1 md-m-r-1 fo" + 1751 "nt-size-small line-height-base md-text-right lg-text-right\""); 1752 1753 WriteLiteralTo(__razor_helper_writer, ">\r\n <span>"); 1754 1755 1756 #line 853 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1757 WriteTo(__razor_helper_writer, Translate("Product.Packaging", "Forpakning")); 1758 1759 1760 #line default 1761 #line hidden 1762 WriteLiteralTo(__razor_helper_writer, ": </span>\r\n <span> "); 1763 1764 1765 #line 854 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1766 WriteTo(__razor_helper_writer, productPackagingQuantity); 1767 1768 1769 #line default 1770 #line hidden 1771 WriteLiteralTo(__razor_helper_writer, "</span>\r\n </div>\r\n " + 1772 " </section>\r\n </div>\r\n\r\n " + 1773 " <section"); 1774 1775 WriteLiteralTo(__razor_helper_writer, " class=\"t-align-right clearfix sm-width-100 md-width-100\""); 1776 1777 WriteLiteralTo(__razor_helper_writer, ">\r\n <button"); 1778 1779 WriteLiteralTo(__razor_helper_writer, " _data-bind=\"click: handleAddProductToCart\""); 1780 1781 WriteLiteralTo(__razor_helper_writer, " class=\"btn btn-primary btn-xs tertiary-font lg-p-l-1 lg-p-r-1 xs-width-100 sm-wi" + 1782 "dth-100 md-width-100\""); 1783 1784 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 1785 1786 WriteLiteralTo(__razor_helper_writer, " "); 1787 1788 1789 #line 861 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1790 WriteTo(__razor_helper_writer, Translate("Product.AddToCart", "Tilføj til kurv")); 1791 1792 1793 #line default 1794 #line hidden 1795 WriteLiteralTo(__razor_helper_writer, "\r\n </button>\r\n </sectio" + 1796 "n>\r\n </section>\r\n\r\n </div>\r\n " + 1797 " </article>\r\n </li>\r\n"); 1798 1799 1800 #line 869 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1801 1802 1803 1804 1805 1806 #line default 1807 #line hidden 1808 }); 1809 1810 #line 872 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1811 } 1812 #line default 1813 #line hidden 1814 1815 1816 #line 874 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1817 public RazorEngine.Templating.TemplateWriter renderProductBuyBox(bool showShopFunctionsAlternativeIfNotLoggedIn, string productName, string productId, string price, int productPackagingQuantity, int quantity, string stockColor) 1818 { 1819 #line default 1820 #line hidden 1821 return new RazorEngine.Templating.TemplateWriter(__razor_helper_writer => { 1822 1823 #line 875 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1824 1825 1826 1827 1828 1829 #line default 1830 #line hidden 1831 WriteLiteralTo(__razor_helper_writer, " <article"); 1832 1833 WriteLiteralTo(__razor_helper_writer, " class=\"product-packaging border-bottom-1\""); 1834 1835 WriteLiteralTo(__razor_helper_writer, ">\r\n <section"); 1836 1837 WriteLiteralTo(__razor_helper_writer, " class=\"row md-is-flex lg-is-flex md-is-flex-center lg-is-flex-center\""); 1838 1839 WriteLiteralTo(__razor_helper_writer, ">\r\n <section"); 1840 1841 WriteLiteralTo(__razor_helper_writer, " class=\"packaging-section col-md-4 col-lg-5\""); 1842 1843 WriteLiteralTo(__razor_helper_writer, ">\r\n <h4"); 1844 1845 WriteLiteralTo(__razor_helper_writer, " class=\"h4 xs-m-t-0 xs-m-b-0 tertiary-font v-align-mid\""); 1846 1847 WriteLiteralTo(__razor_helper_writer, ">"); 1848 1849 1850 #line 881 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1851 WriteTo(__razor_helper_writer, productName); 1852 1853 1854 #line default 1855 #line hidden 1856 WriteLiteralTo(__razor_helper_writer, "</h4>\r\n </section>\r\n\r\n\r\n \r\n"); 1857 1858 1859 #line 886 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1860 1861 1862 #line default 1863 #line hidden 1864 1865 #line 886 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1866 if (Firstweb.Custom.CustomCode.Tapas.Context.Current.ShopFunctionsVisibility.ShowShopFunctions()) 1867 { 1868 1869 1870 #line default 1871 #line hidden 1872 WriteLiteralTo(__razor_helper_writer, " <section"); 1873 1874 WriteLiteralTo(__razor_helper_writer, " class=\"packaging-section md-p-l-0 xs-col-12 col-md-2 col-lg-2 tertiary-font\""); 1875 1876 WriteLiteralTo(__razor_helper_writer, ">\r\n <span>"); 1877 1878 1879 #line 889 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1880 WriteTo(__razor_helper_writer, price); 1881 1882 1883 #line default 1884 #line hidden 1885 WriteLiteralTo(__razor_helper_writer, "</span>\r\n\r\n\r\n </section>\r\n"); 1886 1887 WriteLiteralTo(__razor_helper_writer, " <div"); 1888 1889 WriteLiteralTo(__razor_helper_writer, " class=\"stock md-is-self-end lg-is-self-end lg-order-0\""); 1890 1891 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 1892 1893 WriteLiteralTo(__razor_helper_writer, " "); 1894 1895 1896 #line 894 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1897 WriteTo(__razor_helper_writer, Translate("Product.StockStatus", "Lagerstatus")); 1898 1899 1900 #line default 1901 #line hidden 1902 WriteLiteralTo(__razor_helper_writer, ": <div"); 1903 1904 WriteAttributeTo(__razor_helper_writer, "class", Tuple.Create(" class=\"", 50916), Tuple.Create("\"", 50952) 1905 , Tuple.Create(Tuple.Create("", 50924), Tuple.Create("stock-load-async", 50924), true) 1906 1907 #line 894 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1908 , Tuple.Create(Tuple.Create(" ", 50940), Tuple.Create<System.Object, System.Int32>(stockColor 1909 1910 #line default 1911 #line hidden 1912 , 50941), false) 1913 ); 1914 1915 WriteLiteralTo(__razor_helper_writer, "></div>\r\n \r\n </div>\r\n"); 1916 1917 WriteLiteralTo(__razor_helper_writer, " <section"); 1918 1919 WriteLiteralTo(__razor_helper_writer, " class=\"packaging-section md-p-l-0 lg-p-r-8p packaging-section--alt xs-col-12 col" + 1920 "-md-4 col-lg-3\""); 1921 1922 WriteLiteralTo(__razor_helper_writer, ">\r\n <ul"); 1923 1924 WriteLiteralTo(__razor_helper_writer, " class=\"list-unstyled lg-m-l-auto lg-p-r-24p xs-m-b-0\""); 1925 1926 WriteLiteralTo(__razor_helper_writer, ">\r\n <li>\r\n <h5"); 1927 1928 WriteLiteralTo(__razor_helper_writer, " class=\"h5 xs-m-b-0 xs-m-t-0 line-height-16px\""); 1929 1930 WriteLiteralTo(__razor_helper_writer, ">\r\n <span>"); 1931 1932 1933 #line 901 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1934 WriteTo(__razor_helper_writer, Translate("Product.Packaging", "Forpakning")); 1935 1936 1937 #line default 1938 #line hidden 1939 WriteLiteralTo(__razor_helper_writer, ": </span>\r\n <span> "); 1940 1941 1942 #line 902 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1943 WriteTo(__razor_helper_writer, productPackagingQuantity); 1944 1945 1946 #line default 1947 #line hidden 1948 WriteLiteralTo(__razor_helper_writer, "</span>\r\n </h5>\r\n </li>\r\n " + 1949 " </ul>\r\n\r\n"); 1950 1951 WriteLiteralTo(__razor_helper_writer, " "); 1952 1953 1954 #line 907 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1955 WriteTo(__razor_helper_writer, renderQuantityBox(quantity)); 1956 1957 1958 #line default 1959 #line hidden 1960 WriteLiteralTo(__razor_helper_writer, "\r\n\r\n </section>\r\n"); 1961 1962 1963 #line 910 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1964 1965 1966 1967 #line default 1968 #line hidden 1969 WriteLiteralTo(__razor_helper_writer, " <section"); 1970 1971 WriteLiteralTo(__razor_helper_writer, " class=\"packaging-section md-p-l-0 packaging-section--buy xs-col-12 col-md-2 col-" + 1972 "lg-2 t-align-right\""); 1973 1974 WriteLiteralTo(__razor_helper_writer, ">\r\n <button"); 1975 1976 WriteLiteralTo(__razor_helper_writer, " class=\"btn btn-primary btn-xs tertiary-font lg-p-l-1 lg-p-r-1 xs-width-100 sm-wi" + 1977 "dth-100 margin-bottom-4px\""); 1978 1979 WriteLiteralTo(__razor_helper_writer, " _data-bind=\"click: handleAddProductToCart\""); 1980 1981 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 1982 1983 WriteLiteralTo(__razor_helper_writer, " "); 1984 1985 1986 #line 913 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1987 WriteTo(__razor_helper_writer, Translate("Product.AddToCart", "Tilføj til kurv")); 1988 1989 1990 #line default 1991 #line hidden 1992 WriteLiteralTo(__razor_helper_writer, "\r\n </button>\r\n </section>\r\n"); 1993 1994 1995 #line 916 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 1996 1997 } 1998 else if (showShopFunctionsAlternativeIfNotLoggedIn) 1999 { 2000 var replaceWith = Firstweb.Custom.CustomCode.Tapas.Context.Current.ShopFunctionsVisibility.ReplaceWith(); 2001 2002 2003 2004 #line default 2005 #line hidden 2006 WriteLiteralTo(__razor_helper_writer, " <section>\r\n \r\n"); 2007 2008 2009 #line 924 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2010 2011 2012 #line default 2013 #line hidden 2014 2015 #line 924 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2016 if (replaceWith == "LOGIN") 2017 { 2018 2019 2020 #line default 2021 #line hidden 2022 WriteLiteralTo(__razor_helper_writer, " "); 2023 2024 2025 #line 926 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2026 WriteTo(__razor_helper_writer, renderLogin()); 2027 2028 2029 #line default 2030 #line hidden 2031 WriteLiteralTo(__razor_helper_writer, "\r\n"); 2032 2033 2034 #line 927 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2035 } 2036 else if (replaceWith == "RESELLER") 2037 { 2038 2039 2040 #line default 2041 #line hidden 2042 WriteLiteralTo(__razor_helper_writer, " "); 2043 2044 2045 #line 930 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2046 WriteTo(__razor_helper_writer, renderResellerLink()); 2047 2048 2049 #line default 2050 #line hidden 2051 WriteLiteralTo(__razor_helper_writer, "\r\n"); 2052 2053 2054 #line 931 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2055 } 2056 2057 2058 #line default 2059 #line hidden 2060 WriteLiteralTo(__razor_helper_writer, " </section>\r\n"); 2061 2062 2063 #line 933 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2064 } 2065 2066 2067 #line default 2068 #line hidden 2069 WriteLiteralTo(__razor_helper_writer, "\r\n </section>\r\n </article>\r\n"); 2070 2071 2072 #line 937 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2073 2074 2075 #line default 2076 #line hidden 2077 }); 2078 2079 #line 937 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2080 } 2081 #line default 2082 #line hidden 2083 2084 2085 #line 940 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2086 public RazorEngine.Templating.TemplateWriter renderInstantSearchProduct(LoopItem product) 2087 { 2088 #line default 2089 #line hidden 2090 return new RazorEngine.Templating.TemplateWriter(__razor_helper_writer => { 2091 2092 #line 941 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2093 2094 bool isBlocked = product.GetBoolean("Ecom:Product:Field.NAVIsBlocked"); 2095 string productID = product.GetString("Ecom:Product.ID"); 2096 string productNumber = product.GetString("Ecom:Product.Number"); 2097 string mainProductID = product.GetString("Ecom:Product:Field.FirstwebMainProductID"); 2098 2099 string productLink = product.GetString("Ecom:Product.Link.Clean"); 2100 2101 string productName = product.GetString("Ecom:Product.Name"); 2102 string productShortDescription = product.GetString("Ecom:Product.ShortDescription"); 2103 2104 int productPackagingQuantity = product.GetInteger("Firstweb:ErpPriceInfo:ExtraInfos.PackagingSize"); 2105 int defaultQuantity = productPackagingQuantity > 0 ? productPackagingQuantity : 1; 2106 2107 string languageId = product.GetString("Ecom:Product.LanguageID"); 2108 string variantId = product.GetString("Ecom:Product.VariantID"); 2109 2110 bool hasVariants = (product.GetLoop("VariantCombinations").Count() > 0); 2111 2112 //Images 2113 List<Dynamicweb.Ecommerce.Products.Detail> productImages = Firstweb.Custom.CustomCode.Frontend.Helpers.ProductImages.GetProductImages(languageId, productID, variantId); 2114 Dynamicweb.Ecommerce.Products.Detail primaryProductImage = productImages.FirstOrDefault(x=>x.IsDefault); //Tag you can use instead: product.GetString("Ecom:Product.ImageDefault.Clean"); 2115 2116 //check for valid default image 2117 if (primaryProductImage == null) 2118 { 2119 primaryProductImage = new Dynamicweb.Ecommerce.Products.Detail { Value = "" }; 2120 } 2121 else if (primaryProductImage.Value == null) 2122 { 2123 primaryProductImage.Value = ""; 2124 } 2125 2126 string primaryProductImageUrl = "/admin/public/getimage.ashx?image=" + primaryProductImage.Value + "&altFmImage_path=/Files/Images/ecom/Products/no-image.jpg&width=200&height=125&Compression=90&Crop=5"; 2127 if (String.IsNullOrEmpty(primaryProductImage.Value)) 2128 { 2129 primaryProductImageUrl = "/admin/public/getimage.ashx?image=/Files/Images/ecom/Products/no-image.jpg&width=200&height=125&Compression=90&Crop=5"; 2130 } 2131 //Sorted: first by imagegroup then by sortorder 2132 //@foreach (var productImage in productImages) 2133 //{ 2134 //productImage.Value; //This is the imagepath eks. /Images/products/R12155_10_2.jpg 2135 //productImage.IsDefault; //If the image is default or not. 2136 //} 2137 2138 //Other packagings 2139 //var otherPackagingProducts = Firstweb.Custom.CustomCode.Frontend.Helpers.OtherPackagingProducts.GetOtherPackagingProducts(mainProductID, false).Where(i => i.Id != productID); 2140 //var showOtherPackagingProducts = otherPackagingProducts.Count() > 0; 2141 2142 int loopCount = product.GetInteger("Products.LoopCounter") - 1; 2143 2144 2145 #line default 2146 #line hidden 2147 WriteLiteralTo(__razor_helper_writer, " <div"); 2148 2149 WriteLiteralTo(__razor_helper_writer, " class=\"col-xs-12 col-sm-3 xs-m-b-1\""); 2150 2151 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n <article"); 2152 2153 WriteAttributeTo(__razor_helper_writer, "class", Tuple.Create(" class=\"", 55452), Tuple.Create("\"", 55515) 2154 , Tuple.Create(Tuple.Create("", 55460), Tuple.Create("instant-search-product", 55460), true) 2155 , Tuple.Create(Tuple.Create(" ", 55482), Tuple.Create("bg-white", 55483), true) 2156 , Tuple.Create(Tuple.Create(" ", 55491), Tuple.Create("productCount", 55492), true) 2157 2158 #line 993 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2159 , Tuple.Create(Tuple.Create(" ", 55504), Tuple.Create<System.Object, System.Int32>(loopCount 2160 2161 #line default 2162 #line hidden 2163 , 55505), false) 2164 ); 2165 2166 WriteLiteralTo(__razor_helper_writer, " data-bind=\"css: {\'item--selected\': navSelectedItem() == "); 2167 2168 2169 #line 993 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2170 WriteTo(__razor_helper_writer, loopCount); 2171 2172 2173 #line default 2174 #line hidden 2175 WriteLiteralTo(__razor_helper_writer, "}\""); 2176 2177 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 2178 2179 WriteLiteralTo(__razor_helper_writer, " class=\"cursor-pointer info\""); 2180 2181 WriteLiteralTo(__razor_helper_writer, " data-bind=\"click: function() { window.location.href=\'"); 2182 2183 2184 #line 994 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2185 WriteTo(__razor_helper_writer, productLink); 2186 2187 2188 #line default 2189 #line hidden 2190 WriteLiteralTo(__razor_helper_writer, "\'}\""); 2191 2192 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 2193 2194 WriteLiteralTo(__razor_helper_writer, " class=\"hidden-xs product-image\""); 2195 2196 WriteLiteralTo(__razor_helper_writer, ">\r\n <img"); 2197 2198 WriteLiteralTo(__razor_helper_writer, " class=\"img-responsive center-block\""); 2199 2200 WriteAttributeTo(__razor_helper_writer, "src", Tuple.Create(" src=\"", 55831), Tuple.Create("\"", 55860) 2201 2202 #line 996 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2203 , Tuple.Create(Tuple.Create("", 55837), Tuple.Create<System.Object, System.Int32>(primaryProductImageUrl 2204 2205 #line default 2206 #line hidden 2207 , 55837), false) 2208 ); 2209 2210 WriteLiteralTo(__razor_helper_writer, ">\r\n </div>\r\n\r\n <div"); 2211 2212 WriteLiteralTo(__razor_helper_writer, " class=\"name\""); 2213 2214 WriteLiteralTo(__razor_helper_writer, ">\r\n <p>"); 2215 2216 2217 #line 1000 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2218 WriteTo(__razor_helper_writer, productName); 2219 2220 2221 #line default 2222 #line hidden 2223 WriteLiteralTo(__razor_helper_writer, "</p>\r\n\r\n\r\n <span>"); 2224 2225 2226 #line 1003 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2227 WriteTo(__razor_helper_writer, Translate("Product.NumberShort", "Varenr.")); 2228 2229 2230 #line default 2231 #line hidden 2232 WriteLiteralTo(__razor_helper_writer, " "); 2233 2234 2235 #line 1003 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2236 WriteTo(__razor_helper_writer, productNumber); 2237 2238 2239 #line default 2240 #line hidden 2241 WriteLiteralTo(__razor_helper_writer, "</span>\r\n </div>\r\n </div>\r\n\r\n"); 2242 2243 2244 #line 1007 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2245 2246 2247 #line default 2248 #line hidden 2249 2250 #line 1007 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2251 if (Firstweb.Custom.CustomCode.Tapas.Context.Current.ShopFunctionsVisibility.ShowShopFunctions()) 2252 { 2253 2254 2255 #line default 2256 #line hidden 2257 WriteLiteralTo(__razor_helper_writer, " <div"); 2258 2259 WriteLiteralTo(__razor_helper_writer, " class=\"buy-container\""); 2260 2261 WriteLiteralTo(__razor_helper_writer, " data-bind=\"defineObservable: { quantity: 1 }\""); 2262 2263 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n <input"); 2264 2265 WriteLiteralTo(__razor_helper_writer, " class=\"product-quantity\""); 2266 2267 WriteLiteralTo(__razor_helper_writer, " type=\"number\""); 2268 2269 WriteLiteralTo(__razor_helper_writer, " name=\"quantity\""); 2270 2271 WriteLiteralTo(__razor_helper_writer, " data-bind=\"value: quantity\""); 2272 2273 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n <button"); 2274 2275 WriteLiteralTo(__razor_helper_writer, " class=\"btn btn-primary btn-xs add-to-cart\""); 2276 2277 WriteLiteralTo(__razor_helper_writer, " data-bind=\"click: function(evt) { $parent.onAddToCart(\'"); 2278 2279 2280 #line 1013 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2281 WriteTo(__razor_helper_writer, productID); 2282 2283 2284 #line default 2285 #line hidden 2286 WriteLiteralTo(__razor_helper_writer, "\', quantity()) }\""); 2287 2288 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 2289 2290 WriteLiteralTo(__razor_helper_writer, " "); 2291 2292 2293 #line 1014 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2294 WriteTo(__razor_helper_writer, Translate("Product.AddToCart", "Tilføj til kurv")); 2295 2296 2297 #line default 2298 #line hidden 2299 WriteLiteralTo(__razor_helper_writer, "\r\n </button>\r\n </div>\r\n"); 2300 2301 2302 #line 1017 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2303 } 2304 2305 2306 #line default 2307 #line hidden 2308 WriteLiteralTo(__razor_helper_writer, " </article>\r\n\r\n </div> \r\n"); 2309 2310 2311 #line 1021 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2312 2313 2314 2315 #line default 2316 #line hidden 2317 }); 2318 2319 #line 1022 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2320 } 2321 #line default 2322 #line hidden 2323 2324 2325 #line 1026 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2326 public RazorEngine.Templating.TemplateWriter renderQuantityBox(int quantity) 2327 { 2328 #line default 2329 #line hidden 2330 return new RazorEngine.Templating.TemplateWriter(__razor_helper_writer => { 2331 2332 #line 1027 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2333 2334 2335 2336 #line default 2337 #line hidden 2338 WriteLiteralTo(__razor_helper_writer, " <input"); 2339 2340 WriteLiteralTo(__razor_helper_writer, " class=\"product-quantity\""); 2341 2342 WriteLiteralTo(__razor_helper_writer, " type=\"number\""); 2343 2344 WriteLiteralTo(__razor_helper_writer, " name=\"quantity\""); 2345 2346 WriteAttributeTo(__razor_helper_writer, "value", Tuple.Create(" value=\"", 56976), Tuple.Create("\"", 56993) 2347 2348 #line 1028 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2349 , Tuple.Create(Tuple.Create("", 56984), Tuple.Create<System.Object, System.Int32>(quantity 2350 2351 #line default 2352 #line hidden 2353 , 56984), false) 2354 ); 2355 2356 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 2357 2358 2359 #line 1029 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2360 2361 2362 #line default 2363 #line hidden 2364 }); 2365 2366 #line 1029 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2367 } 2368 #line default 2369 #line hidden 2370 2371 2372 #line 1032 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2373 public RazorEngine.Templating.TemplateWriter renderLogin() 2374 { 2375 #line default 2376 #line hidden 2377 return new RazorEngine.Templating.TemplateWriter(__razor_helper_writer => { 2378 2379 #line 1033 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2380 2381 2382 2383 #line default 2384 #line hidden 2385 WriteLiteralTo(__razor_helper_writer, " <button"); 2386 2387 WriteLiteralTo(__razor_helper_writer, " class=\"btn btn-primary\""); 2388 2389 WriteLiteralTo(__razor_helper_writer, " data-toggle=\"modal\""); 2390 2391 WriteLiteralTo(__razor_helper_writer, " data-target=\".loginModal\""); 2392 2393 WriteLiteralTo(__razor_helper_writer, ">"); 2394 2395 2396 #line 1034 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2397 WriteTo(__razor_helper_writer, Translate("Product.LoginToShop", "Log ind for at købe")); 2398 2399 2400 #line default 2401 #line hidden 2402 WriteLiteralTo(__razor_helper_writer, "</button> \r\n"); 2403 2404 2405 #line 1035 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2406 2407 2408 #line default 2409 #line hidden 2410 }); 2411 2412 #line 1035 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2413 } 2414 #line default 2415 #line hidden 2416 2417 2418 #line 1036 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2419 public RazorEngine.Templating.TemplateWriter renderResellerLink() 2420 { 2421 #line default 2422 #line hidden 2423 return new RazorEngine.Templating.TemplateWriter(__razor_helper_writer => { 2424 2425 #line 1037 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2426 2427 2428 2429 #line default 2430 #line hidden 2431 WriteLiteralTo(__razor_helper_writer, " <a"); 2432 2433 WriteAttributeTo(__razor_helper_writer, "href", Tuple.Create(" href=\"", 57225), Tuple.Create("\"", 57319) 2434 2435 #line 1038 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2436 , Tuple.Create(Tuple.Create("", 57232), Tuple.Create<System.Object, System.Int32>(Firstweb.Custom.CustomCode.Tapas.Context.Current.ShopFunctionsVisibility.ReplaceLink() 2437 2438 #line default 2439 #line hidden 2440 , 57232), false) 2441 ); 2442 2443 WriteLiteralTo(__razor_helper_writer, " class=\"btn btn-primary\""); 2444 2445 WriteLiteralTo(__razor_helper_writer, ">"); 2446 2447 2448 #line 1038 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2449 WriteTo(__razor_helper_writer, Translate("Product.FindReseller", "Find forhandler")); 2450 2451 2452 #line default 2453 #line hidden 2454 WriteLiteralTo(__razor_helper_writer, "</a> \r\n"); 2455 2456 2457 #line 1039 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2458 2459 2460 #line default 2461 #line hidden 2462 }); 2463 2464 #line 1039 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2465 } 2466 #line default 2467 #line hidden 2468 2469 2470 #line 1041 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2471 public RazorEngine.Templating.TemplateWriter RenderQuantityPrices(string productNumber, string productCurrency, string productID) 2472 { 2473 #line default 2474 #line hidden 2475 return new RazorEngine.Templating.TemplateWriter(__razor_helper_writer => { 2476 2477 #line 1042 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2478 2479 2480 2481 #line default 2482 #line hidden 2483 WriteLiteralTo(__razor_helper_writer, " <div"); 2484 2485 WriteLiteralTo(__razor_helper_writer, " class=\"quantity-prices\""); 2486 2487 WriteLiteralTo(__razor_helper_writer, " data-bind=\"getQuantityPrices: { productId: \'"); 2488 2489 2490 #line 1043 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2491 WriteTo(__razor_helper_writer, productID); 2492 2493 2494 #line default 2495 #line hidden 2496 WriteLiteralTo(__razor_helper_writer, "\', pageId: \'"); 2497 2498 2499 #line 1043 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2500 WriteTo(__razor_helper_writer, Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId(" productcatalog")); 2501 2502 2503 #line default 2504 #line hidden 2505 WriteLiteralTo(__razor_helper_writer, "\',=\""); 2506 2507 WriteLiteralTo(__razor_helper_writer, "\" linktext:=\"\" \'"); 2508 2509 2510 #line 1043 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2511 WriteTo(__razor_helper_writer, translate("product.showallcombineddiscountsproducts.linktext",="" "se="" alle="" samkøbsrabat="" produkter="" for")); 2512 2513 2514 #line default 2515 #line hidden 2516 WriteLiteralTo(__razor_helper_writer, "\'}\"=\"\">\r\n <span>\r\n"); 2517 2518 WriteLiteralTo(__razor_helper_writer, " "); 2519 2520 2521 #line 1045 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2522 WriteTo(__razor_helper_writer, Translate("QuantityPrices.Text", "% k&oslash;b flere spar mere")); 2523 2524 2525 #line default 2526 #line hidden 2527 WriteLiteralTo(__razor_helper_writer, "\r\n </span>\r\n \r\n <i"); 2528 2529 WriteLiteralTo(__razor_helper_writer, " class=\"fal fa-chevron-down\""); 2530 2531 WriteLiteralTo(__razor_helper_writer, "></i>\r\n <div"); 2532 2533 WriteLiteralTo(__razor_helper_writer, " class=\"quantity-prices-results js-results\""); 2534 2535 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 2536 2537 WriteLiteralTo(__razor_helper_writer, " class=\"xs-m-t-1 js-quantity-discount-html\""); 2538 2539 WriteLiteralTo(__razor_helper_writer, "></div>\r\n <div"); 2540 2541 WriteLiteralTo(__razor_helper_writer, " class=\"xs-m-t-1 js-multine-discount-html\""); 2542 2543 WriteLiteralTo(__razor_helper_writer, "></div>\r\n </div>\r\n </div>\r\n"); 2544 2545 2546 #line 1054 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2547 2548 2549 #line default 2550 #line hidden 2551 }); 2552 2553 #line 1054 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2554 } 2555 #line default 2556 #line hidden 2557 2558 2559 #line 1056 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2560 public RazorEngine.Templating.TemplateWriter RenderReplacementProducts(IEnumerable<Dynamicweb.Ecommerce.Products.ProductRelated> replacementProducts, string _primaryProductPageId) 2561 { 2562 #line default 2563 #line hidden 2564 return new RazorEngine.Templating.TemplateWriter(__razor_helper_writer => { 2565 2566 #line 1057 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2567 2568 2569 if (replacementProducts.Any(rp => rp.Product != null)) 2570 { 2571 2572 2573 #line default 2574 #line hidden 2575 WriteLiteralTo(__razor_helper_writer, " <div"); 2576 2577 WriteLiteralTo(__razor_helper_writer, " class=\"blocked-product\""); 2578 2579 WriteLiteralTo(__razor_helper_writer, ">\r\n <p"); 2580 2581 WriteLiteralTo(__razor_helper_writer, " class=\"blocked-product-header\""); 2582 2583 WriteLiteralTo(__razor_helper_writer, ">"); 2584 2585 2586 #line 1062 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2587 WriteTo(__razor_helper_writer, Translate("Product.ProductIsBlocked", "Varen er udg&aring;et")); 2588 2589 2590 #line default 2591 #line hidden 2592 WriteLiteralTo(__razor_helper_writer, "</p>\r\n <div"); 2593 2594 WriteLiteralTo(__razor_helper_writer, " class=\"replacement-products\""); 2595 2596 WriteLiteralTo(__razor_helper_writer, " data-bind=\"replacementProducts\""); 2597 2598 WriteLiteralTo(__razor_helper_writer, ">\r\n <span>\r\n"); 2599 2600 WriteLiteralTo(__razor_helper_writer, " "); 2601 2602 2603 #line 1065 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2604 WriteTo(__razor_helper_writer, Translate("ReplacementProducts.Text", "Se erstatningsvarer")); 2605 2606 2607 #line default 2608 #line hidden 2609 WriteLiteralTo(__razor_helper_writer, "\r\n </span>\r\n <i"); 2610 2611 WriteLiteralTo(__razor_helper_writer, " class=\"fas fa-sort-down\""); 2612 2613 WriteLiteralTo(__razor_helper_writer, "></i>\r\n <div"); 2614 2615 WriteLiteralTo(__razor_helper_writer, " class=\"replacement-products-results js-results\""); 2616 2617 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n"); 2618 2619 2620 #line 1070 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2621 2622 2623 #line default 2624 #line hidden 2625 2626 #line 1070 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2627 foreach (var replacementProduct in replacementProducts.Where(rp => rp.Product != null)) 2628 { 2629 string productLink = "/Default.aspx?id=" + _primaryProductPageId + "&productid=" + replacementProduct.Product.Id; 2630 2631 2632 #line default 2633 #line hidden 2634 WriteLiteralTo(__razor_helper_writer, " <a"); 2635 2636 WriteAttributeTo(__razor_helper_writer, "href", Tuple.Create(" href=\"", 59179), Tuple.Create("\"", 59198) 2637 2638 #line 1073 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2639 , Tuple.Create(Tuple.Create("", 59186), Tuple.Create<System.Object, System.Int32>(productLink 2640 2641 #line default 2642 #line hidden 2643 , 59186), false) 2644 ); 2645 2646 WriteLiteralTo(__razor_helper_writer, " class=\"xs-m-b-0\""); 2647 2648 WriteLiteralTo(__razor_helper_writer, ">"); 2649 2650 2651 #line 1073 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2652 WriteTo(__razor_helper_writer, replacementProduct.Product.Number); 2653 2654 2655 #line default 2656 #line hidden 2657 WriteLiteralTo(__razor_helper_writer, "</a>\r\n"); 2658 2659 2660 #line 1074 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2661 } 2662 2663 2664 #line default 2665 #line hidden 2666 WriteLiteralTo(__razor_helper_writer, "\r\n </div>\r\n </div> \r\n </div> \r\n"); 2667 2668 2669 #line 1079 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2670 } 2671 2672 2673 #line default 2674 #line hidden 2675 }); 2676 2677 #line 1080 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2678 } 2679 #line default 2680 #line hidden 2681 2682 2683 #line 1355 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2684 public RazorEngine.Templating.TemplateWriter RenderLogin(string CurrentAreaId, string loginPageId) 2685 { 2686 #line default 2687 #line hidden 2688 return new RazorEngine.Templating.TemplateWriter(__razor_helper_writer => { 2689 2690 #line 1356 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2691 2692 var translationRememberMe = Translate("LoginDialog.RememberMe", "Husk mig"); 2693 string forgotPasswordMailTemplate = GetString("Item.Area.ForgotPasswordMailTemplate"); 2694 string forgotPasswordSenderEmail = GetString("Item.Area.ForgotPasswordSenderEmail"); 2695 string forgotPasswordMailSubject = GetString("Item.Area.ForgotPasswordMailSubject"); 2696 2697 string action = GetString("DWExtranetAction"); 2698 string userName = GetString("DWExtranetUsername"); 2699 string password = GetString("DWExtranetPassword"); 2700 string rememberUsername = GetString("DWExtranetUsernameRemember"); 2701 string rememberPassword = GetString("DWExtranetPasswordRemember"); 2702 2703 int NewUserFormParagraphId = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetInt("NewUserFormParagraphId"); 2704 2705 2706 2707 2708 2709 #line default 2710 #line hidden 2711 WriteLiteralTo(__razor_helper_writer, " <div"); 2712 2713 WriteLiteralTo(__razor_helper_writer, " class=\"loginDetails pull-right\""); 2714 2715 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 2716 2717 WriteLiteralTo(__razor_helper_writer, " data-bind=\"with: LoginViewModel\""); 2718 2719 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 2720 2721 WriteLiteralTo(__razor_helper_writer, " class=\"login-dropdpown\""); 2722 2723 WriteLiteralTo(__razor_helper_writer, ">\r\n <a"); 2724 2725 WriteLiteralTo(__razor_helper_writer, " id=\"user\""); 2726 2727 WriteLiteralTo(__razor_helper_writer, " style=\"display: none;\""); 2728 2729 WriteLiteralTo(__razor_helper_writer, " data-toggle=\"modal\""); 2730 2731 WriteLiteralTo(__razor_helper_writer, " data-target=\".loginModal\""); 2732 2733 WriteLiteralTo(__razor_helper_writer, " data-bind=\"visible: !$root.User().IsLoggedIn(), value: loginModal = \'.loginModal" + 2734 "\'\""); 2735 2736 WriteLiteralTo(__razor_helper_writer, " role=\"button\""); 2737 2738 WriteLiteralTo(__razor_helper_writer, ">\r\n <i"); 2739 2740 WriteLiteralTo(__razor_helper_writer, " style=\"margin-right:4px;\""); 2741 2742 WriteLiteralTo(__razor_helper_writer, " class=\"icon user font-size-small line-height-base\""); 2743 2744 WriteLiteralTo(__razor_helper_writer, ">\r\n </i>\r\n <span"); 2745 2746 WriteLiteralTo(__razor_helper_writer, " data-bind=\"text: $root.User().Name()\""); 2747 2748 WriteLiteralTo(__razor_helper_writer, ">\r\n </span>\r\n <span"); 2749 2750 WriteLiteralTo(__razor_helper_writer, " class=\"color-concrete font-size-small text-uppercase line-height-base\""); 2751 2752 WriteLiteralTo(__razor_helper_writer, " data-bind=\"visible: !$root.User().IsLoggedIn()\""); 2753 2754 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 2755 2756 WriteLiteralTo(__razor_helper_writer, " "); 2757 2758 2759 #line 1381 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2760 WriteTo(__razor_helper_writer, Translate("Page.Login", "Log ind")); 2761 2762 2763 #line default 2764 #line hidden 2765 WriteLiteralTo(__razor_helper_writer, "\r\n </span>\r\n </a>\r\n </div>\r\n\r\n " + 2766 " <div"); 2767 2768 WriteLiteralTo(__razor_helper_writer, " class=\"dropdown UserLinks\""); 2769 2770 WriteLiteralTo(__razor_helper_writer, " data-bind=\"visible: $root.User().IsLoggedIn()\""); 2771 2772 WriteLiteralTo(__razor_helper_writer, " style=\"display: none;\""); 2773 2774 WriteLiteralTo(__razor_helper_writer, ">\r\n <a"); 2775 2776 WriteLiteralTo(__razor_helper_writer, " class=\"color-concrete\""); 2777 2778 WriteLiteralTo(__razor_helper_writer, " id=\"user\""); 2779 2780 WriteLiteralTo(__razor_helper_writer, " data-toggle=\"dropdown\""); 2781 2782 WriteLiteralTo(__razor_helper_writer, " role=\"button\""); 2783 2784 WriteLiteralTo(__razor_helper_writer, ">\r\n\t\t\t\t<i"); 2785 2786 WriteLiteralTo(__razor_helper_writer, " style=\"margin-right:4px;\""); 2787 2788 WriteLiteralTo(__razor_helper_writer, " class=\"icon user font-size-small line-height-base\""); 2789 2790 WriteLiteralTo(__razor_helper_writer, ">\r\n </i>\r\n <span"); 2791 2792 WriteLiteralTo(__razor_helper_writer, " class=\"login-user font-size-small text-uppercase\""); 2793 2794 WriteLiteralTo(__razor_helper_writer, " data-bind=\"text: $root.User().Name()\""); 2795 2796 WriteLiteralTo(__razor_helper_writer, "></span>\r\n <span"); 2797 2798 WriteLiteralTo(__razor_helper_writer, " class=\"caret\""); 2799 2800 WriteLiteralTo(__razor_helper_writer, "></span>\r\n </a>\r\n"); 2801 2802 WriteLiteralTo(__razor_helper_writer, " "); 2803 2804 2805 #line 1393 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2806 WriteTo(__razor_helper_writer, GetValue("DwNavigation(dwusernav)")); 2807 2808 2809 #line default 2810 #line hidden 2811 WriteLiteralTo(__razor_helper_writer, "\r\n"); 2812 2813 WriteLiteralTo(__razor_helper_writer, " "); 2814 2815 2816 #line 1394 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2817 WriteTo(__razor_helper_writer, SnippetStart("IsImpersonating")); 2818 2819 2820 #line default 2821 #line hidden 2822 WriteLiteralTo(__razor_helper_writer, "\r\n"); 2823 2824 2825 #line 1395 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2826 2827 2828 #line default 2829 #line hidden 2830 2831 #line 1395 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2832 if (Firstweb.Custom.CustomCode.Frontend.Helpers.SecondaryUsers.IsImpersonating()) 2833 { 2834 2835 2836 #line default 2837 #line hidden 2838 WriteLiteralTo(__razor_helper_writer, " <li"); 2839 2840 WriteLiteralTo(__razor_helper_writer, " data-bind=\"\""); 2841 2842 WriteLiteralTo(__razor_helper_writer, ">\r\n <a"); 2843 2844 WriteAttributeTo(__razor_helper_writer, "href", Tuple.Create(" href=\"", 72117), Tuple.Create("\"", 72200) 2845 2846 #line 1398 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2847 , Tuple.Create(Tuple.Create("", 72124), Tuple.Create<System.Object, System.Int32>(Firstweb.Custom.CustomCode.Frontend.Helpers.Page.GetStopImpersonatingLink() 2848 2849 #line default 2850 #line hidden 2851 , 72124), false) 2852 ); 2853 2854 WriteLiteralTo(__razor_helper_writer, ">\r\n <i"); 2855 2856 WriteLiteralTo(__razor_helper_writer, " class=\"icon \""); 2857 2858 WriteLiteralTo(__razor_helper_writer, "> </i><span>"); 2859 2860 2861 #line 1399 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2862 WriteTo(__razor_helper_writer, Translate("Usermenu.MenuText.StopImpersonating", "Log af som kunde")); 2863 2864 2865 #line default 2866 #line hidden 2867 WriteLiteralTo(__razor_helper_writer, "</span>\r\n </a>\r\n </li>\r\n"); 2868 2869 2870 #line 1402 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2871 } 2872 2873 2874 #line default 2875 #line hidden 2876 WriteLiteralTo(__razor_helper_writer, " "); 2877 2878 2879 #line 1403 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2880 WriteTo(__razor_helper_writer, SnippetEnd("IsImpersonating")); 2881 2882 2883 #line default 2884 #line hidden 2885 WriteLiteralTo(__razor_helper_writer, "\r\n\r\n\r\n\r\n"); 2886 2887 WriteLiteralTo(__razor_helper_writer, " "); 2888 2889 2890 #line 1407 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2891 WriteTo(__razor_helper_writer, SnippetStart("ShowPrices")); 2892 2893 2894 #line default 2895 #line hidden 2896 WriteLiteralTo(__razor_helper_writer, "\r\n"); 2897 2898 2899 #line 1408 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2900 2901 2902 #line default 2903 #line hidden 2904 2905 #line 1408 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2906 if (Firstweb.Custom.CustomCode.Frontend.Helpers.Product.HidePrices()) 2907 { 2908 2909 2910 #line default 2911 #line hidden 2912 WriteLiteralTo(__razor_helper_writer, " <li>\r\n <a"); 2913 2914 WriteAttributeTo(__razor_helper_writer, "href", Tuple.Create(" href=\"", 72672), Tuple.Create("\"", 72753) 2915 2916 #line 1411 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2917 , Tuple.Create(Tuple.Create("", 72679), Tuple.Create<System.Object, System.Int32>(Firstweb.Custom.CustomCode.Frontend.Helpers.Page.GetHidePricesLink(false) 2918 2919 #line default 2920 #line hidden 2921 , 72679), false) 2922 ); 2923 2924 WriteLiteralTo(__razor_helper_writer, ">\r\n <i"); 2925 2926 WriteLiteralTo(__razor_helper_writer, " class=\"far fa-check-square\""); 2927 2928 WriteLiteralTo(__razor_helper_writer, "></i>&nbsp;<span>"); 2929 2930 2931 #line 1412 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2932 WriteTo(__razor_helper_writer, Translate("Usermenu.MenuText.HidePrice", "Skjul priser")); 2933 2934 2935 #line default 2936 #line hidden 2937 WriteLiteralTo(__razor_helper_writer, "</span>\r\n </a>\r\n </li>\r\n"); 2938 2939 2940 #line 1415 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2941 } 2942 else 2943 { 2944 2945 2946 #line default 2947 #line hidden 2948 WriteLiteralTo(__razor_helper_writer, " <li>\r\n <a"); 2949 2950 WriteAttributeTo(__razor_helper_writer, "href", Tuple.Create(" href=\"", 73067), Tuple.Create("\"", 73147) 2951 2952 #line 1419 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2953 , Tuple.Create(Tuple.Create("", 73074), Tuple.Create<System.Object, System.Int32>(Firstweb.Custom.CustomCode.Frontend.Helpers.Page.GetHidePricesLink(true) 2954 2955 #line default 2956 #line hidden 2957 , 73074), false) 2958 ); 2959 2960 WriteLiteralTo(__razor_helper_writer, ">\r\n <i"); 2961 2962 WriteLiteralTo(__razor_helper_writer, " class=\"far fa-square\""); 2963 2964 WriteLiteralTo(__razor_helper_writer, "></i>&nbsp;<span>"); 2965 2966 2967 #line 1420 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2968 WriteTo(__razor_helper_writer, Translate("Usermenu.MenuText.HidePrice", "Skjul priser")); 2969 2970 2971 #line default 2972 #line hidden 2973 WriteLiteralTo(__razor_helper_writer, "</span>\r\n </a>\r\n </li>\r\n"); 2974 2975 2976 #line 1423 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2977 } 2978 2979 2980 #line default 2981 #line hidden 2982 WriteLiteralTo(__razor_helper_writer, " "); 2983 2984 2985 #line 1424 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 2986 WriteTo(__razor_helper_writer, SnippetEnd("ShowPrices")); 2987 2988 2989 #line default 2990 #line hidden 2991 WriteLiteralTo(__razor_helper_writer, "\r\n </div>\r\n\r\n <!--New user popup-->\r\n <div"); 2992 2993 WriteLiteralTo(__razor_helper_writer, " class=\"modal fade new-user-modal js-new-user-modal\""); 2994 2995 WriteLiteralTo(__razor_helper_writer, " id=\"newUserModal\""); 2996 2997 WriteLiteralTo(__razor_helper_writer, " tabindex=\"-1\""); 2998 2999 WriteLiteralTo(__razor_helper_writer, " role=\"dialog\""); 3000 3001 WriteLiteralTo(__razor_helper_writer, " aria-labelledby=\"myModalLabel\""); 3002 3003 WriteLiteralTo(__razor_helper_writer, " data-bind=\"initValue:{ observable: newUserModalSelector, value: \'.js-new-user-mo" + 3004 "dal\'}\""); 3005 3006 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3007 3008 WriteLiteralTo(__razor_helper_writer, " class=\"modal-dialog modal-lg\""); 3009 3010 WriteLiteralTo(__razor_helper_writer, " role=\"document\""); 3011 3012 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3013 3014 WriteLiteralTo(__razor_helper_writer, " class=\"modal-content popupBox login\""); 3015 3016 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3017 3018 WriteLiteralTo(__razor_helper_writer, " class=\"modal-header\""); 3019 3020 WriteLiteralTo(__razor_helper_writer, ">\r\n <h4"); 3021 3022 WriteLiteralTo(__razor_helper_writer, " class=\"modal-title h2 tertiary-font xs-m-t-0 xs-m-b-2\""); 3023 3024 WriteLiteralTo(__razor_helper_writer, " id=\"myModalLabel\""); 3025 3026 WriteLiteralTo(__razor_helper_writer, ">"); 3027 3028 3029 #line 1432 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3030 WriteTo(__razor_helper_writer, Translate("NewUserModal.Header", "Ny bruger? - Anmod om adgang")); 3031 3032 3033 #line default 3034 #line hidden 3035 WriteLiteralTo(__razor_helper_writer, "</h4>\r\n </div>\r\n <div"); 3036 3037 WriteLiteralTo(__razor_helper_writer, " class=\"modal-body\""); 3038 3039 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 3040 3041 3042 #line 1435 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3043 3044 3045 #line default 3046 #line hidden 3047 3048 #line 1435 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3049 if (NewUserFormParagraphId > 0) 3050 { 3051 3052 3053 #line default 3054 #line hidden 3055 WriteLiteralTo(__razor_helper_writer, " <div>"); 3056 3057 3058 #line 1437 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3059 WriteTo(__razor_helper_writer, RenderParagraphContent(NewUserFormParagraphId)); 3060 3061 3062 #line default 3063 #line hidden 3064 WriteLiteralTo(__razor_helper_writer, "</div>\r\n"); 3065 3066 3067 #line 1438 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3068 } 3069 3070 3071 #line default 3072 #line hidden 3073 WriteLiteralTo(__razor_helper_writer, " </div>\r\n </div>\r\n </div" + 3074 ">\r\n </div>\r\n\r\n\r\n <!--Signed out popup-->\r\n <div" + 3075 ""); 3076 3077 WriteLiteralTo(__razor_helper_writer, " class=\"modal fade new-user-modal js-signedout-modal\""); 3078 3079 WriteLiteralTo(__razor_helper_writer, " id=\"signedOutModal\""); 3080 3081 WriteLiteralTo(__razor_helper_writer, " tabindex=\"-1\""); 3082 3083 WriteLiteralTo(__razor_helper_writer, " role=\"dialog\""); 3084 3085 WriteLiteralTo(__razor_helper_writer, " aria-labelledby=\"myModalLabel\""); 3086 3087 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3088 3089 WriteLiteralTo(__razor_helper_writer, " class=\"modal-dialog modal-lg\""); 3090 3091 WriteLiteralTo(__razor_helper_writer, " role=\"document\""); 3092 3093 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3094 3095 WriteLiteralTo(__razor_helper_writer, " class=\"modal-content popupBox login\""); 3096 3097 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3098 3099 WriteLiteralTo(__razor_helper_writer, " class=\"modal-header\""); 3100 3101 WriteLiteralTo(__razor_helper_writer, ">\r\n <h4"); 3102 3103 WriteLiteralTo(__razor_helper_writer, " class=\"modal-title h2 tertiary-font xs-m-t-0 xs-m-b-2\""); 3104 3105 WriteLiteralTo(__razor_helper_writer, " id=\"myModalLabel\""); 3106 3107 WriteLiteralTo(__razor_helper_writer, ">"); 3108 3109 3110 #line 1450 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3111 WriteTo(__razor_helper_writer, Translate("SignedOutModal.Header", "Du er blevet logget ud")); 3112 3113 3114 #line default 3115 #line hidden 3116 WriteLiteralTo(__razor_helper_writer, "</h4>\r\n <button"); 3117 3118 WriteLiteralTo(__razor_helper_writer, " type=\"button\""); 3119 3120 WriteLiteralTo(__razor_helper_writer, " class=\"close\""); 3121 3122 WriteLiteralTo(__razor_helper_writer, " data-dismiss=\"modal\""); 3123 3124 WriteLiteralTo(__razor_helper_writer, " aria-label=\"Close\""); 3125 3126 WriteLiteralTo(__razor_helper_writer, "></button>\r\n </div>\r\n <div"); 3127 3128 WriteLiteralTo(__razor_helper_writer, " class=\"modal-footer\""); 3129 3130 WriteLiteralTo(__razor_helper_writer, ">\r\n \r\n <button"); 3131 3132 WriteLiteralTo(__razor_helper_writer, " class=\"btn btn-primary\""); 3133 3134 WriteLiteralTo(__razor_helper_writer, " data-toggle=\"modal\""); 3135 3136 WriteLiteralTo(__razor_helper_writer, " data-target=\".loginModal\""); 3137 3138 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 3139 3140 WriteLiteralTo(__razor_helper_writer, " "); 3141 3142 3143 #line 1456 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3144 WriteTo(__razor_helper_writer, Translate("SignedOutModal.LoginAgain", "Log ind igen")); 3145 3146 3147 #line default 3148 #line hidden 3149 WriteLiteralTo(__razor_helper_writer, "\r\n </button>\r\n \r\n " + 3150 " </div>\r\n </div>\r\n </div>\r\n " + 3151 " </div>\r\n\r\n\r\n\r\n <!--Login popup-->\r\n <div"); 3152 3153 WriteLiteralTo(__razor_helper_writer, " class=\"modal loginModal bs-example-modal-sm fade js-login-modal\""); 3154 3155 WriteLiteralTo(__razor_helper_writer, " role=\"dialog\""); 3156 3157 WriteLiteralTo(__razor_helper_writer, " aria-labelledby=\"mySmallModalLabel\""); 3158 3159 WriteLiteralTo(__razor_helper_writer, " data-bind=\"initValue:{ observable: loginModalSelector, value: \'.js-login-modal\'}" + 3160 "\""); 3161 3162 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3163 3164 WriteLiteralTo(__razor_helper_writer, " class=\"modal-dialog\""); 3165 3166 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3167 3168 WriteLiteralTo(__razor_helper_writer, " class=\"popupBox login modal-content\""); 3169 3170 WriteLiteralTo(__razor_helper_writer, ">\r\n <h3"); 3171 3172 WriteLiteralTo(__razor_helper_writer, " class=\"modal-header h2 tertiary-font xs-m-t-0 xs-m-b-2\""); 3173 3174 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 3175 3176 WriteLiteralTo(__razor_helper_writer, " "); 3177 3178 3179 #line 1471 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3180 WriteTo(__razor_helper_writer, Translate("LoginDialog.Header", "Log ind")); 3181 3182 3183 #line default 3184 #line hidden 3185 WriteLiteralTo(__razor_helper_writer, "\r\n </h3>\r\n <div"); 3186 3187 WriteLiteralTo(__razor_helper_writer, " id=\"login-error\""); 3188 3189 WriteLiteralTo(__razor_helper_writer, " class=\"xs-m-b-1 xs-p-1 bg-danger hidden\""); 3190 3191 WriteLiteralTo(__razor_helper_writer, ">\r\n <span>"); 3192 3193 3194 #line 1474 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3195 WriteTo(__razor_helper_writer, Translate("LoginDialog.SessionHasExpired", "Sessionen er udløbet")); 3196 3197 3198 #line default 3199 #line hidden 3200 WriteLiteralTo(__razor_helper_writer, "</span>\r\n </div>\r\n <div"); 3201 3202 WriteLiteralTo(__razor_helper_writer, " data-bind=\"if: wrongCredentials()\""); 3203 3204 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3205 3206 WriteLiteralTo(__razor_helper_writer, " class=\"xs-m-b-1 xs-p-1 bg-danger\""); 3207 3208 WriteLiteralTo(__razor_helper_writer, ">"); 3209 3210 3211 #line 1477 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3212 WriteTo(__razor_helper_writer, Translate("LoginDialog.InvalidCredentials", " Forkert brugernavn eller adgangskode")); 3213 3214 3215 #line default 3216 #line hidden 3217 WriteLiteralTo(__razor_helper_writer, "</div>\r\n </div>\r\n <div"); 3218 3219 WriteLiteralTo(__razor_helper_writer, " class=\"modal-body\""); 3220 3221 WriteLiteralTo(__razor_helper_writer, " data-bind=\"Fadevisible: ToggleForgottenPassword, delayIn:250\""); 3222 3223 WriteLiteralTo(__razor_helper_writer, ">\r\n <form"); 3224 3225 WriteLiteralTo(__razor_helper_writer, " name=\"ExtUserForm\""); 3226 3227 WriteLiteralTo(__razor_helper_writer, " id=\"ExtUserForm\""); 3228 3229 WriteLiteralTo(__razor_helper_writer, " method=\"post\""); 3230 3231 WriteAttributeTo(__razor_helper_writer, "action", Tuple.Create(" action=\"", 76846), Tuple.Create("\"", 76862) 3232 3233 #line 1480 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3234 , Tuple.Create(Tuple.Create("", 76855), Tuple.Create<System.Object, System.Int32>(action 3235 3236 #line default 3237 #line hidden 3238 , 76855), false) 3239 ); 3240 3241 WriteLiteralTo(__razor_helper_writer, ">\r\n <input"); 3242 3243 WriteLiteralTo(__razor_helper_writer, " id=\"AreaId\""); 3244 3245 WriteLiteralTo(__razor_helper_writer, " type=\"hidden\""); 3246 3247 WriteLiteralTo(__razor_helper_writer, " name=\"AreaId\""); 3248 3249 WriteLiteralTo(__razor_helper_writer, " data-bind=\"initValue:{ observable: AreaId, value: \'"); 3250 3251 3252 #line 1481 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3253 WriteTo(__razor_helper_writer, CurrentAreaId); 3254 3255 3256 #line default 3257 #line hidden 3258 WriteLiteralTo(__razor_helper_writer, "\'}, value: AreaId\""); 3259 3260 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3261 3262 WriteLiteralTo(__razor_helper_writer, " class=\"form-group\""); 3263 3264 WriteLiteralTo(__razor_helper_writer, ">\r\n <label"); 3265 3266 WriteLiteralTo(__razor_helper_writer, " class=\"xs-m-b-1\""); 3267 3268 WriteLiteralTo(__razor_helper_writer, " for=\"Username\""); 3269 3270 WriteLiteralTo(__razor_helper_writer, ">"); 3271 3272 3273 #line 1483 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3274 WriteTo(__razor_helper_writer, Translate("LoginDialog.Username", "Brugernavn")); 3275 3276 3277 #line default 3278 #line hidden 3279 WriteLiteralTo(__razor_helper_writer, "</label>\r\n <input"); 3280 3281 WriteLiteralTo(__razor_helper_writer, " id=\"Username\""); 3282 3283 WriteLiteralTo(__razor_helper_writer, " class=\"form-control xs-p-l-1 xs-p-r-1 height-3 line-height-base\""); 3284 3285 WriteLiteralTo(__razor_helper_writer, " type=\"text\""); 3286 3287 WriteLiteralTo(__razor_helper_writer, " name=\"Username\""); 3288 3289 WriteAttributeTo(__razor_helper_writer, "value", Tuple.Create(" value=\"", 77371), Tuple.Create("\"", 77388) 3290 3291 #line 1484 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3292 , Tuple.Create(Tuple.Create("", 77379), Tuple.Create<System.Object, System.Int32>(userName 3293 3294 #line default 3295 #line hidden 3296 , 77379), false) 3297 ); 3298 3299 WriteLiteralTo(__razor_helper_writer, " data-bind=\"value: UserName, hasFocus: addFocus\""); 3300 3301 WriteLiteralTo(__razor_helper_writer, ">\r\n </div>\r\n\r\n <div" + 3302 ""); 3303 3304 WriteLiteralTo(__razor_helper_writer, " class=\"form-group xs-m-t-1\""); 3305 3306 WriteLiteralTo(__razor_helper_writer, ">\r\n <label"); 3307 3308 WriteLiteralTo(__razor_helper_writer, " class=\"xs-m-b-1\""); 3309 3310 WriteLiteralTo(__razor_helper_writer, " for=\"Password\""); 3311 3312 WriteLiteralTo(__razor_helper_writer, ">"); 3313 3314 3315 #line 1488 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3316 WriteTo(__razor_helper_writer, Translate("LoginDialog.Password", "Adgangskode")); 3317 3318 3319 #line default 3320 #line hidden 3321 WriteLiteralTo(__razor_helper_writer, "</label>\r\n <input"); 3322 3323 WriteLiteralTo(__razor_helper_writer, " id=\"Password\""); 3324 3325 WriteLiteralTo(__razor_helper_writer, " class=\"form-control xs-p-l-1 xs-p-r-1 height-3 line-height-base\""); 3326 3327 WriteLiteralTo(__razor_helper_writer, " type=\"password\""); 3328 3329 WriteLiteralTo(__razor_helper_writer, " name=\"Password\""); 3330 3331 WriteAttributeTo(__razor_helper_writer, "value", Tuple.Create(" value=\"", 77836), Tuple.Create("\"", 77853) 3332 3333 #line 1489 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3334 , Tuple.Create(Tuple.Create("", 77844), Tuple.Create<System.Object, System.Int32>(password 3335 3336 #line default 3337 #line hidden 3338 , 77844), false) 3339 ); 3340 3341 WriteLiteralTo(__razor_helper_writer, " data-bind=\"value: Password\""); 3342 3343 WriteLiteralTo(__razor_helper_writer, ">\r\n </div>\r\n\r\n <div" + 3344 ""); 3345 3346 WriteLiteralTo(__razor_helper_writer, " class=\"form-group action lg-m-b-0 clearfix\""); 3347 3348 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3349 3350 WriteLiteralTo(__razor_helper_writer, " class=\"pull-left color-dark font-bold\""); 3351 3352 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n <label"); 3353 3354 WriteLiteralTo(__razor_helper_writer, " class=\"custom-checkbox\""); 3355 3356 WriteLiteralTo(__razor_helper_writer, ">\r\n <input"); 3357 3358 WriteLiteralTo(__razor_helper_writer, " type=\"checkbox\""); 3359 3360 WriteLiteralTo(__razor_helper_writer, " data-bind=\"click: handleCheckbox\""); 3361 3362 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3363 3364 WriteLiteralTo(__razor_helper_writer, " class=\"is-checkbox pull-left\""); 3365 3366 WriteLiteralTo(__razor_helper_writer, ">\r\n <i"); 3367 3368 WriteLiteralTo(__razor_helper_writer, " data-bind=\"style: { visibility: rememberMe() ? \'visible\' : \'hidden\' }\""); 3369 3370 WriteLiteralTo(__razor_helper_writer, " class=\"fa fa-check\""); 3371 3372 WriteLiteralTo(__razor_helper_writer, " aria-hidden=\"true\""); 3373 3374 WriteLiteralTo(__razor_helper_writer, "></i>\r\n </div>\r\n " + 3375 " <span"); 3376 3377 WriteLiteralTo(__razor_helper_writer, " class=\"font-bold font-size-small text-not-bold\""); 3378 3379 WriteLiteralTo(__razor_helper_writer, ">"); 3380 3381 3382 #line 1500 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3383 WriteTo(__razor_helper_writer, translationRememberMe); 3384 3385 3386 #line default 3387 #line hidden 3388 WriteLiteralTo(__razor_helper_writer, "</span>\r\n </label>\r\n " + 3389 " </div>\r\n\r\n <div"); 3390 3391 WriteLiteralTo(__razor_helper_writer, " class=\"pull-right\""); 3392 3393 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n <div"); 3394 3395 WriteLiteralTo(__razor_helper_writer, " class=\"xs-m-b-1\""); 3396 3397 WriteLiteralTo(__razor_helper_writer, ">\r\n <a"); 3398 3399 WriteLiteralTo(__razor_helper_writer, " href=\"#\""); 3400 3401 WriteLiteralTo(__razor_helper_writer, " class=\"color-dark forgottenPass\""); 3402 3403 WriteLiteralTo(__razor_helper_writer, " data-bind=\"toggleClick: ToggleForgottenPassword\""); 3404 3405 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 3406 3407 WriteLiteralTo(__razor_helper_writer, " "); 3408 3409 3410 #line 1508 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3411 WriteTo(__razor_helper_writer, Translate("LoginDialog.ForgotPasswordLink", "Glemt adgangskode?")); 3412 3413 3414 #line default 3415 #line hidden 3416 WriteLiteralTo(__razor_helper_writer, "\r\n </a>\r\n\r\n " + 3417 " </div>\r\n\r\n <button"); 3418 3419 WriteLiteralTo(__razor_helper_writer, " class=\"btn btn-primary\""); 3420 3421 WriteLiteralTo(__razor_helper_writer, " value=\"LOG IND\""); 3422 3423 WriteLiteralTo(__razor_helper_writer, " data-bind=\"click: Login, toggleClick: Loader\""); 3424 3425 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 3426 3427 WriteLiteralTo(__razor_helper_writer, " "); 3428 3429 3430 #line 1514 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3431 WriteTo(__razor_helper_writer, Translate("LoginDialog.LoginButton", "Log ind")); 3432 3433 3434 #line default 3435 #line hidden 3436 WriteLiteralTo(__razor_helper_writer, "\r\n </button>\r\n " + 3437 " </div>\r\n </div>\r\n " + 3438 " <span"); 3439 3440 WriteLiteralTo(__razor_helper_writer, @" data-bind=""Fadevisible: !Loader(), 3441 css:{ loginsuccess : $root.User().IsLoggedIn(), 3442 loginFail : LoginFailed(), 3443 ringLoader: !wrongCredentials() }"""); 3444 3445 WriteLiteralTo(__razor_helper_writer, ">\r\n </span>\r\n </form>\r\n" + 3446 " </div>\r\n\r\n <div"); 3447 3448 WriteLiteralTo(__razor_helper_writer, " class=\"modal-body forgotten\""); 3449 3450 WriteLiteralTo(__razor_helper_writer, " data-bind=\"Fadevisible: !ToggleForgottenPassword(), delayIn:250\""); 3451 3452 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n <form"); 3453 3454 WriteLiteralTo(__razor_helper_writer, " name=\"ExtUserForm\""); 3455 3456 WriteLiteralTo(__razor_helper_writer, " id=\"ExtUserForm1\""); 3457 3458 WriteLiteralTo(__razor_helper_writer, " method=\"post\""); 3459 3460 WriteAttributeTo(__razor_helper_writer, "action", Tuple.Create(" action=\"", 80328), Tuple.Create("\"", 80344) 3461 3462 #line 1528 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3463 , Tuple.Create(Tuple.Create("", 80337), Tuple.Create<System.Object, System.Int32>(action 3464 3465 #line default 3466 #line hidden 3467 , 80337), false) 3468 ); 3469 3470 WriteLiteralTo(__razor_helper_writer, " data-bind=\"submit: recover\""); 3471 3472 WriteLiteralTo(__razor_helper_writer, ">\r\n <input"); 3473 3474 WriteLiteralTo(__razor_helper_writer, " id=\"ForgotPasswordMailTemplate\""); 3475 3476 WriteLiteralTo(__razor_helper_writer, " type=\"hidden\""); 3477 3478 WriteLiteralTo(__razor_helper_writer, " name=\"ForgotPasswordMailTemplate\""); 3479 3480 WriteLiteralTo(__razor_helper_writer, " data-bind=\"initValue:{ observable: forgotPasswordMailTemplate, value: \'"); 3481 3482 3483 #line 1529 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3484 WriteTo(__razor_helper_writer, forgotPasswordMailTemplate); 3485 3486 3487 #line default 3488 #line hidden 3489 WriteLiteralTo(__razor_helper_writer, "\'}\""); 3490 3491 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n <input"); 3492 3493 WriteLiteralTo(__razor_helper_writer, " id=\"ForgotPasswordSenderEmail\""); 3494 3495 WriteLiteralTo(__razor_helper_writer, " type=\"hidden\""); 3496 3497 WriteLiteralTo(__razor_helper_writer, " name=\"ForgotPasswordSenderEmail\""); 3498 3499 WriteLiteralTo(__razor_helper_writer, " data-bind=\"initValue:{ observable: forgotPasswordSenderEmail, value: \'"); 3500 3501 3502 #line 1531 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3503 WriteTo(__razor_helper_writer, forgotPasswordSenderEmail); 3504 3505 3506 #line default 3507 #line hidden 3508 WriteLiteralTo(__razor_helper_writer, "\'}\""); 3509 3510 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n <input"); 3511 3512 WriteLiteralTo(__razor_helper_writer, " id=\"ForgotPasswordMailSubject\""); 3513 3514 WriteLiteralTo(__razor_helper_writer, " type=\"hidden\""); 3515 3516 WriteLiteralTo(__razor_helper_writer, " name=\"ForgotPasswordMailSubject\""); 3517 3518 WriteLiteralTo(__razor_helper_writer, " data-bind=\"initValue:{ observable: forgotPasswordMailSubject, value: \'"); 3519 3520 3521 #line 1533 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3522 WriteTo(__razor_helper_writer, forgotPasswordMailSubject); 3523 3524 3525 #line default 3526 #line hidden 3527 WriteLiteralTo(__razor_helper_writer, "\'}, value: AreaId\""); 3528 3529 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3530 3531 WriteLiteralTo(__razor_helper_writer, " class=\"form-group\""); 3532 3533 WriteLiteralTo(__razor_helper_writer, ">\r\n <label"); 3534 3535 WriteLiteralTo(__razor_helper_writer, " for=\"Email\""); 3536 3537 WriteLiteralTo(__razor_helper_writer, ">"); 3538 3539 3540 #line 1535 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3541 WriteTo(__razor_helper_writer, Translate("Email", "Email")); 3542 3543 3544 #line default 3545 #line hidden 3546 WriteLiteralTo(__razor_helper_writer, "</label>\r\n <input"); 3547 3548 WriteLiteralTo(__razor_helper_writer, " type=\"text\""); 3549 3550 WriteLiteralTo(__razor_helper_writer, " name=\"Email\""); 3551 3552 WriteLiteralTo(__razor_helper_writer, " class=\"form-control lg-p-l-1 lg-p-r-1 ie-input-height\""); 3553 3554 WriteLiteralTo(__razor_helper_writer, " data-bind=\"value: email\""); 3555 3556 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n <div"); 3557 3558 WriteLiteralTo(__razor_helper_writer, " class=\"alert alert-success\""); 3559 3560 WriteLiteralTo(__razor_helper_writer, " role=\"alert\""); 3561 3562 WriteLiteralTo(__razor_helper_writer, " data-bind=\"visible: statusCode() == \'0\'\""); 3563 3564 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 3565 3566 WriteLiteralTo(__razor_helper_writer, " "); 3567 3568 3569 #line 1539 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3570 WriteTo(__razor_helper_writer, Translate("LoginDialog.ForgotPasswordStatusText:Success", "Din adgangskode er blevet sendt til din e-mail adresse")); 3571 3572 3573 #line default 3574 #line hidden 3575 WriteLiteralTo(__razor_helper_writer, "\r\n </div>\r\n\r\n " + 3576 " <div"); 3577 3578 WriteLiteralTo(__razor_helper_writer, " class=\"alert alert-warning\""); 3579 3580 WriteLiteralTo(__razor_helper_writer, " role=\"alert\""); 3581 3582 WriteLiteralTo(__razor_helper_writer, " data-bind=\"visible: statusCode() == \'100\'\""); 3583 3584 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 3585 3586 WriteLiteralTo(__razor_helper_writer, " "); 3587 3588 3589 #line 1543 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3590 WriteTo(__razor_helper_writer, Translate("LoginDialog.ForgotPasswordStatusText:NotFound", "Den indtaste e-mail adresse findes ikke")); 3591 3592 3593 #line default 3594 #line hidden 3595 WriteLiteralTo(__razor_helper_writer, "\r\n </div>\r\n " + 3596 " <div"); 3597 3598 WriteLiteralTo(__razor_helper_writer, " class=\"alert alert-danger\""); 3599 3600 WriteLiteralTo(__razor_helper_writer, " role=\"alert\""); 3601 3602 WriteLiteralTo(__razor_helper_writer, " data-bind=\"visible: statusCode() == \'150\'\""); 3603 3604 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 3605 3606 WriteLiteralTo(__razor_helper_writer, " "); 3607 3608 3609 #line 1546 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3610 WriteTo(__razor_helper_writer, Translate("LoginDialog.ForgotPasswordStatusText:Error", "Der er opstået en fejl i systemet, prøv igen senere.")); 3611 3612 3613 #line default 3614 #line hidden 3615 WriteLiteralTo(__razor_helper_writer, "\r\n </div>\r\n\r\n <" + 3616 "/div>\r\n\r\n <div"); 3617 3618 WriteLiteralTo(__razor_helper_writer, " class=\"form-group action clearfix\""); 3619 3620 WriteLiteralTo(__razor_helper_writer, ">\r\n <button"); 3621 3622 WriteLiteralTo(__razor_helper_writer, " class=\"btn btn-secondary pull-left\""); 3623 3624 WriteLiteralTo(__razor_helper_writer, " data-bind=\"toggleClick: ToggleForgottenPassword\""); 3625 3626 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 3627 3628 WriteLiteralTo(__razor_helper_writer, " "); 3629 3630 3631 #line 1553 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3632 WriteTo(__razor_helper_writer, Translate("Back", "Tilbage")); 3633 3634 3635 #line default 3636 #line hidden 3637 WriteLiteralTo(__razor_helper_writer, "\r\n </button>\r\n\r\n " + 3638 " <button"); 3639 3640 WriteLiteralTo(__razor_helper_writer, " type=\"submit\""); 3641 3642 WriteLiteralTo(__razor_helper_writer, " class=\"btn btn-primary pull-right\""); 3643 3644 WriteLiteralTo(__razor_helper_writer, " data-bind=\"initValue:{ observable: loginId, value: \'"); 3645 3646 3647 #line 1556 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3648 WriteTo(__razor_helper_writer, loginPageId); 3649 3650 3651 #line default 3652 #line hidden 3653 WriteLiteralTo(__razor_helper_writer, "\'}\""); 3654 3655 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 3656 3657 WriteLiteralTo(__razor_helper_writer, " "); 3658 3659 3660 #line 1557 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3661 WriteTo(__razor_helper_writer, Translate("LoginDialog.GetPasswordButton", "F&aring; tilsendt kode")); 3662 3663 3664 #line default 3665 #line hidden 3666 WriteLiteralTo(__razor_helper_writer, "\r\n </button>\r\n\r\n " + 3667 " <span"); 3668 3669 WriteLiteralTo(__razor_helper_writer, " data-bind=\"Fadevisible: ForgottenLoader\""); 3670 3671 WriteLiteralTo(__razor_helper_writer, " class=\"ringLoader\""); 3672 3673 WriteLiteralTo(__razor_helper_writer, "></span>\r\n </div>\r\n </f" + 3674 "orm>\r\n </div>\r\n </div>\r\n " + 3675 " </div>\r\n </div>\r\n </div>\r\n </div>\r\n"); 3676 3677 3678 #line 1569 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3679 3680 3681 3682 3683 3684 #line default 3685 #line hidden 3686 }); 3687 3688 #line 1572 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3689 } 3690 #line default 3691 #line hidden 3692 3693 3694 #line 1574 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3695 public RazorEngine.Templating.TemplateWriter RenderNewsletter() 3696 { 3697 #line default 3698 #line hidden 3699 return new RazorEngine.Templating.TemplateWriter(__razor_helper_writer => { 3700 3701 #line 1575 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3702 3703 var translationEmailFieldPlaceholder = Translate("NewsletterDialog.EmailFieldPlaceholder", "Indtast e-mail adresse"); 3704 3705 3706 3707 #line default 3708 #line hidden 3709 WriteLiteralTo(__razor_helper_writer, " <div"); 3710 3711 WriteLiteralTo(__razor_helper_writer, " class=\"newsletterWidget hidden\""); 3712 3713 WriteLiteralTo(__razor_helper_writer, " data-bind=\"css: { \'open\': showNewsletterWidget }, value: newsletterModal = \'.new" + 3714 "sletterModal\' \""); 3715 3716 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3717 3718 WriteLiteralTo(__razor_helper_writer, " class=\"newsletterOpen\""); 3719 3720 WriteLiteralTo(__razor_helper_writer, " data-bind=\"click: toggleNewsletterWidget\""); 3721 3722 WriteLiteralTo(__razor_helper_writer, ">"); 3723 3724 3725 #line 1579 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3726 WriteTo(__razor_helper_writer, Translate("Page.NewsletterSignupButton", "Tilmeld nyhedsbrev")); 3727 3728 3729 #line default 3730 #line hidden 3731 WriteLiteralTo(__razor_helper_writer, "</div>\r\n\r\n <div"); 3732 3733 WriteLiteralTo(__razor_helper_writer, " class=\"newsletterContent\""); 3734 3735 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3736 3737 WriteLiteralTo(__razor_helper_writer, " class=\"newsletterClose\""); 3738 3739 WriteLiteralTo(__razor_helper_writer, " data-bind=\"click: hideNewsletterWidget\""); 3740 3741 WriteLiteralTo(__razor_helper_writer, "></div>\r\n <form"); 3742 3743 WriteLiteralTo(__razor_helper_writer, " name=\"UserManagementEditForm\""); 3744 3745 WriteLiteralTo(__razor_helper_writer, " data-bind=\"submit: submitNewsletterSubscription\""); 3746 3747 WriteLiteralTo(__razor_helper_writer, ">\r\n <input"); 3748 3749 WriteLiteralTo(__razor_helper_writer, " type=\"hidden\""); 3750 3751 WriteLiteralTo(__razor_helper_writer, " name=\"UserManagementForm\""); 3752 3753 WriteLiteralTo(__razor_helper_writer, " value=\"1\""); 3754 3755 WriteLiteralTo(__razor_helper_writer, ">\r\n <input"); 3756 3757 WriteLiteralTo(__razor_helper_writer, " name=\"UserManagement_Form_EmailAllowed\""); 3758 3759 WriteLiteralTo(__razor_helper_writer, " type=\"hidden\""); 3760 3761 WriteLiteralTo(__razor_helper_writer, " id=\"UserManagement_Form_EmailAllowed\""); 3762 3763 WriteLiteralTo(__razor_helper_writer, " value=\"True\""); 3764 3765 WriteLiteralTo(__razor_helper_writer, ">\r\n <input"); 3766 3767 WriteLiteralTo(__razor_helper_writer, " name=\"UserManagement_Form_EmailAllowed_ApplyValue\""); 3768 3769 WriteLiteralTo(__razor_helper_writer, " type=\"hidden\""); 3770 3771 WriteLiteralTo(__razor_helper_writer, " id=\"UserManagement_Form_EmailAllowed_ApplyValue\""); 3772 3773 WriteLiteralTo(__razor_helper_writer, " value=\"AllowEmail\""); 3774 3775 WriteLiteralTo(__razor_helper_writer, ">\r\n\r\n <div"); 3776 3777 WriteLiteralTo(__razor_helper_writer, " class=\"newsletterHead\""); 3778 3779 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 3780 3781 WriteLiteralTo(__razor_helper_writer, " "); 3782 3783 3784 #line 1589 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3785 WriteTo(__razor_helper_writer, Translate("NewsletterDialog.Header", "F&aring; nyheder fra Tapas!")); 3786 3787 3788 #line default 3789 #line hidden 3790 WriteLiteralTo(__razor_helper_writer, "\r\n </div>\r\n\r\n <div"); 3791 3792 WriteLiteralTo(__razor_helper_writer, " class=\"newsletterSubHead\""); 3793 3794 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 3795 3796 WriteLiteralTo(__razor_helper_writer, " "); 3797 3798 3799 #line 1593 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3800 WriteTo(__razor_helper_writer, Translate("NewsletterDialog.Subheader", "Modtag nyheder og gode tilbud fra Tapas")); 3801 3802 3803 #line default 3804 #line hidden 3805 WriteLiteralTo(__razor_helper_writer, "\r\n </div>\r\n\r\n <input"); 3806 3807 WriteLiteralTo(__razor_helper_writer, " name=\"UserManagement_Form_Email\""); 3808 3809 WriteLiteralTo(__razor_helper_writer, " id=\"UserManagement_Form_Email\""); 3810 3811 WriteLiteralTo(__razor_helper_writer, " type=\"email\""); 3812 3813 WriteAttributeTo(__razor_helper_writer, "placeholder", Tuple.Create(" placeholder=\"", 84831), Tuple.Create("\"", 84878) 3814 3815 #line 1596 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3816 , Tuple.Create(Tuple.Create("", 84845), Tuple.Create<System.Object, System.Int32>(translationEmailFieldPlaceholder 3817 3818 #line default 3819 #line hidden 3820 , 84845), false) 3821 ); 3822 3823 WriteLiteralTo(__razor_helper_writer, " required=\"\""); 3824 3825 WriteLiteralTo(__razor_helper_writer, ">\r\n <button"); 3826 3827 WriteLiteralTo(__razor_helper_writer, " class=\"button\""); 3828 3829 WriteLiteralTo(__razor_helper_writer, " type=\"submit\""); 3830 3831 WriteLiteralTo(__razor_helper_writer, ">"); 3832 3833 3834 #line 1597 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3835 WriteTo(__razor_helper_writer, Translate("NewsletterDialog.SignupButton", "Tilmeld")); 3836 3837 3838 #line default 3839 #line hidden 3840 WriteLiteralTo(__razor_helper_writer, "</button>\r\n </form>\r\n </div>\r\n </div>\r\n"); 3841 3842 3843 #line 1601 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3844 3845 3846 3847 #line default 3848 #line hidden 3849 WriteLiteralTo(__razor_helper_writer, " <div"); 3850 3851 WriteLiteralTo(__razor_helper_writer, " class=\"newsletterModal modal fade\""); 3852 3853 WriteLiteralTo(__razor_helper_writer, " tabindex=\"-1\""); 3854 3855 WriteLiteralTo(__razor_helper_writer, " role=\"dialog\""); 3856 3857 WriteLiteralTo(__razor_helper_writer, " data-bind=\"css: { \'subSuccess\': newsletterSubscriptionStatus, \'subError\': !newsl" + 3858 "etterSubscriptionStatus() }\""); 3859 3860 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3861 3862 WriteLiteralTo(__razor_helper_writer, " class=\"modal-dialog\""); 3863 3864 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3865 3866 WriteLiteralTo(__razor_helper_writer, " class=\"modal-content\""); 3867 3868 WriteLiteralTo(__razor_helper_writer, ">\r\n <div"); 3869 3870 WriteLiteralTo(__razor_helper_writer, " class=\"modal-header\""); 3871 3872 WriteLiteralTo(__razor_helper_writer, ">\r\n <button"); 3873 3874 WriteLiteralTo(__razor_helper_writer, " type=\"button\""); 3875 3876 WriteLiteralTo(__razor_helper_writer, " class=\"close\""); 3877 3878 WriteLiteralTo(__razor_helper_writer, " data-dismiss=\"modal\""); 3879 3880 WriteLiteralTo(__razor_helper_writer, " aria-label=\"Close\""); 3881 3882 WriteLiteralTo(__razor_helper_writer, "></button>\r\n <h4"); 3883 3884 WriteLiteralTo(__razor_helper_writer, " class=\"modal-title subSuccess\""); 3885 3886 WriteLiteralTo(__razor_helper_writer, ">"); 3887 3888 3889 #line 1607 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3890 WriteTo(__razor_helper_writer, Translate("NewsletterDialog.SignupSuccessText", "Du er nu tilmeldt nyhedsbrev!")); 3891 3892 3893 #line default 3894 #line hidden 3895 WriteLiteralTo(__razor_helper_writer, "</h4>\r\n <h4"); 3896 3897 WriteLiteralTo(__razor_helper_writer, " class=\"modal-title subError\""); 3898 3899 WriteLiteralTo(__razor_helper_writer, ">"); 3900 3901 3902 #line 1608 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3903 WriteTo(__razor_helper_writer, Translate("NewsletterDialog.SignupErrorText", "Der skete en uventet fejl, pr&oslash;v igen senere.")); 3904 3905 3906 #line default 3907 #line hidden 3908 WriteLiteralTo(__razor_helper_writer, "</h4>\r\n </div>\r\n\r\n <div"); 3909 3910 WriteLiteralTo(__razor_helper_writer, " class=\"modal-footer\""); 3911 3912 WriteLiteralTo(__razor_helper_writer, ">\r\n <button"); 3913 3914 WriteLiteralTo(__razor_helper_writer, " type=\"button\""); 3915 3916 WriteLiteralTo(__razor_helper_writer, " class=\"button\""); 3917 3918 WriteLiteralTo(__razor_helper_writer, " data-dismiss=\"modal\""); 3919 3920 WriteLiteralTo(__razor_helper_writer, " aria-label=\"Close\""); 3921 3922 WriteLiteralTo(__razor_helper_writer, ">"); 3923 3924 3925 #line 1612 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3926 WriteTo(__razor_helper_writer, Translate("OK", "OK")); 3927 3928 3929 #line default 3930 #line hidden 3931 WriteLiteralTo(__razor_helper_writer, "</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>" + 3932 "\r\n"); 3933 3934 3935 #line 1617 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3936 3937 3938 #line default 3939 #line hidden 3940 }); 3941 3942 #line 1617 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3943 } 3944 #line default 3945 #line hidden 3946 3947 3948 #line 1619 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3949 public RazorEngine.Templating.TemplateWriter RenderWebsites(string _CurrentAreaId) 3950 { 3951 #line default 3952 #line hidden 3953 return new RazorEngine.Templating.TemplateWriter(__razor_helper_writer => { 3954 3955 #line 1620 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3956 3957 var websiteLoop = GetLoop("Item.Area.Websites"); 3958 if (websiteLoop.Count > 0) 3959 { 3960 var websiteItem = websiteLoop.FirstOrDefault(w => w.GetString("Item.Area.Websites.AreaId") == _CurrentAreaId); 3961 var currentIcon = websiteItem.GetString("Item.Area.Websites.Icon"); 3962 var currentLabel = websiteItem.GetString("Item.Area.Websites.Label"); 3963 3964 3965 3966 #line default 3967 #line hidden 3968 WriteLiteralTo(__razor_helper_writer, " <div"); 3969 3970 WriteLiteralTo(__razor_helper_writer, " class=\"dropdown UserLinks\""); 3971 3972 WriteLiteralTo(__razor_helper_writer, ">\r\n <a"); 3973 3974 WriteLiteralTo(__razor_helper_writer, " class=\"country\""); 3975 3976 WriteLiteralTo(__razor_helper_writer, " id=\"dLabel\""); 3977 3978 WriteLiteralTo(__razor_helper_writer, " data-toggle=\"dropdown\""); 3979 3980 WriteLiteralTo(__razor_helper_writer, " role=\"button\""); 3981 3982 WriteLiteralTo(__razor_helper_writer, " aria-haspopup=\"true\""); 3983 3984 WriteLiteralTo(__razor_helper_writer, " aria-expanded=\"false\""); 3985 3986 WriteLiteralTo(__razor_helper_writer, ">\r\n <span>"); 3987 3988 3989 #line 1630 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 3990 WriteTo(__razor_helper_writer, currentLabel); 3991 3992 3993 #line default 3994 #line hidden 3995 WriteLiteralTo(__razor_helper_writer, "</span>\r\n <span"); 3996 3997 WriteLiteralTo(__razor_helper_writer, " class=\"caret xs-m-l-1\""); 3998 3999 WriteLiteralTo(__razor_helper_writer, "></span>\r\n </a>\r\n\r\n <ul"); 4000 4001 WriteLiteralTo(__razor_helper_writer, " class=\"dropdown-menu\""); 4002 4003 WriteLiteralTo(__razor_helper_writer, " aria-labelledby=\"dLabel\""); 4004 4005 WriteLiteralTo(__razor_helper_writer, ">\r\n"); 4006 4007 4008 #line 1635 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4009 4010 4011 #line default 4012 #line hidden 4013 4014 #line 1635 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4015 foreach (var item in websiteLoop) 4016 { 4017 string areaId = item.GetString("Item.Area.Websites.AreaId"); 4018 string label = item.GetString("Item.Area.Websites.Label"); 4019 string link = item.GetString("Item.Area.Websites.Link"); 4020 string icon = item.GetString("Item.Area.Websites.Icon"); 4021 4022 if (areaId != _CurrentAreaId) 4023 { 4024 4025 4026 #line default 4027 #line hidden 4028 WriteLiteralTo(__razor_helper_writer, " <li>\r\n <a"); 4029 4030 WriteLiteralTo(__razor_helper_writer, " class=\"country\""); 4031 4032 WriteAttributeTo(__razor_helper_writer, "href", Tuple.Create(" href=\"", 87367), Tuple.Create("\"", 87379) 4033 4034 #line 1645 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4035 , Tuple.Create(Tuple.Create("", 87374), Tuple.Create<System.Object, System.Int32>(link 4036 4037 #line default 4038 #line hidden 4039 , 87374), false) 4040 ); 4041 4042 WriteLiteralTo(__razor_helper_writer, ">\r\n <span>"); 4043 4044 4045 #line 1646 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4046 WriteTo(__razor_helper_writer, label); 4047 4048 4049 #line default 4050 #line hidden 4051 WriteLiteralTo(__razor_helper_writer, "</span>\r\n </a>\r\n </li>\r\n"); 4052 4053 4054 #line 1649 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4055 } 4056 } 4057 4058 4059 #line default 4060 #line hidden 4061 WriteLiteralTo(__razor_helper_writer, " </ul>\r\n </div>\r\n"); 4062 4063 4064 #line 1653 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4065 } 4066 4067 4068 4069 4070 #line default 4071 #line hidden 4072 }); 4073 4074 #line 1656 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4075 } 4076 #line default 4077 #line hidden 4078 4079 4080 public RazorEngine_395526fa5c85467a9c52aa4101145362() { 4081 } 4082 4083 public override void Execute() { 4084 WriteLiteral("\r\n"); 4085 4086 4087 #line 9 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4088 4089 //Pages 4090 string CurrentPageId = Dynamicweb.Frontend.PageView.Current().ID.ToString(); 4091 string CurrentAreaId = Dynamicweb.Frontend.PageView.Current().AreaID.ToString(); 4092 4093 string instantSearch_PageId = Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId("instantsearch"); 4094 string cart_PageId = Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId("cart"); 4095 string productCatalog_PageId = Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId("productcatalog"); 4096 string login_PageId = Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId("login"); 4097 string mycustomers_PageId = Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId("mycustomers"); 4098 4099 bool isCheckout = (CurrentPageId == cart_PageId); 4100 4101 //logo and fav icons 4102 string logo = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=320&Height=60&Compression=100&Crop=5", Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("Logo", "files/templates/designs/tapas/assets/img/TapasLogoMountain.svg")); 4103 4104 string favIcon = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("FavIcon"); 4105 string small = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=16&Height=16&Compression=90&Crop=0", favIcon); 4106 string medium = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=32&Height=32&Compression=90&Crop=0", favIcon); 4107 string large = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=96&Height=96&Compression=90&Crop=0", favIcon); 4108 string olderIphone = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=120&Height=120&Compression=90&Crop=0", favIcon); 4109 string iphone6 = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=180&Height=180&Compression=90&Crop=0", favIcon); 4110 string retina = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=152&Height=152&Compression=90&Crop=0", favIcon); 4111 string ipadPro = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=167&Height=167&Compression=90&Crop=0", favIcon); 4112 4113 //Footer 4114 string companyName = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("CompanyName"); 4115 string companyAddress1 = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("CompanyAddress1"); 4116 string companyAddress2 = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("CompanyAddress2"); 4117 string companyPhone = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("CompanyPhone"); 4118 string companyMail = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("CompanyMail"); 4119 string companyGroup = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("CompanyGroup"); 4120 string companyLink = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("CompanyLink"); 4121 4122 //Translations 4123 var translationAddToCart = Translate("Product.AddToCart", "Tilføj til kurv"); 4124 var translationAddingToCart = Translate("Product.AddingToCart", "Tilføjer til kurv"); 4125 4126 var translationGotoCheckout = Translate("Page.GotoCheckout", "Gå til checkout"); 4127 var translationQuickOrderFieldPlaceholder = Translate("Page.QuickOrderFieldPlaceholder", "Søg..."); 4128 var translationInstantSearchFieldPlaceholder = Translate("Page.InstantSearchFieldPlaceholderLong", "Søg produkter på navn, varenummer, ean mm."); 4129 var translationMiniCartHeader = Translate("Page.MiniCartHeader", "Din kurv"); 4130 4131 var translationQuantity = Translate("Quantity", "Antal"); 4132 4133 var translationUpdatingCart = Translate("Cart.UpdatingCart", "Opdatere kurv"); 4134 var translationCartIsEmpty = Translate("Cart.IsEmpty", "Din kurv er tom"); 4135 4136 var translationCartTotalAmountInclVAT = Translate("Cart.TotalAmountInclVAT", "Total inkl. moms"); 4137 var translationCartTotalAmountExclVAT = Translate("Cart.TotalAmountExclVAT", "Total eksl. moms"); 4138 var translationCartTotalVAT = Translate("Cart.TotalVAT", "Moms"); 4139 4140 //Google tag manager 4141 bool gtmIdDefined = !String.IsNullOrEmpty(GetString("Item.Area.Google_Tag_Manager_ID")); 4142 string gtmId = GetString("Item.Area.Google_Tag_Manager_ID"); 4143 4144 //Misc 4145 int searchDebounceInterval = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetInt("SearchDebounceInterval", 500); 4146 var enviromentType = System.Configuration.ConfigurationManager.AppSettings["EnvironmentType"] as string; 4147 string cssMobileClass = (GetGlobalValue("Global:Device.IsMobile") == "True") ? "js-is-mobile" : string.Empty; 4148 string ExcelQuickAdd = "/Default.aspx?id=" + Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId("ExcelAdd"); 4149 string InstantSearchResultsHeader = Translate("InstantSearch.ResultsHeader", "S&oslash;geresultat"); 4150 4151 4152 #line default 4153 #line hidden 4154 WriteLiteral("\r\n\r\n<!doctype html>\r\n<html"); 4155 4156 WriteLiteral(" lang=\"en\""); 4157 4158 WriteLiteral(">\r\n\r\n<head>\r\n <script"); 4159 4160 WriteLiteral(" id=\"Cookiebot\""); 4161 4162 WriteLiteral(" src=\"https://consent.cookiebot.com/uc.js\""); 4163 4164 WriteLiteral(" data-cbid=\"41c9d990-3ae8-4379-84a8-d515577b0ac5\""); 4165 4166 WriteLiteral(" data-blockingmode=\"auto\""); 4167 4168 WriteLiteral(" type=\"text/javascript\""); 4169 4170 WriteLiteral("></script>\r\n"); 4171 4172 4173 #line 78 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4174 4175 4176 #line default 4177 #line hidden 4178 4179 #line 78 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4180 if (gtmIdDefined) 4181 { 4182 4183 4184 #line default 4185 #line hidden 4186 WriteLiteral(" <!-- Google Tag Manager -->\r\n"); 4187 4188 WriteLiteral(@" <script> 4189 (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 4190 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 4191 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 4192 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 4193 })(window,document,'script','dataLayer','"); 4194 4195 4196 #line 86 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4197 Write(gtmId); 4198 4199 4200 #line default 4201 #line hidden 4202 WriteLiteral("\');</script>\r\n"); 4203 4204 WriteLiteral(" <!-- End Google Tag Manager -->\r\n"); 4205 4206 4207 #line 88 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4208 } 4209 4210 4211 #line default 4212 #line hidden 4213 WriteLiteral("\r\n <title>"); 4214 4215 4216 #line 90 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4217 Write(GetValue("Title")); 4218 4219 4220 #line default 4221 #line hidden 4222 WriteLiteral("</title>\r\n"); 4223 4224 4225 #line 91 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4226 Write(GetValue("MetaTags")); 4227 4228 4229 #line default 4230 #line hidden 4231 WriteLiteral("\r\n"); 4232 4233 4234 #line 92 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4235 Write(GetValue("CopyRightNotice")); 4236 4237 4238 #line default 4239 #line hidden 4240 WriteLiteral("\r\n\r\n <meta"); 4241 4242 WriteLiteral(" charset=\"utf-8\""); 4243 4244 WriteLiteral(">\r\n <meta"); 4245 4246 WriteLiteral(" http-equiv=\"X-UA-Compatible\""); 4247 4248 WriteLiteral(" content=\"IE=edge,chrome=1\""); 4249 4250 WriteLiteral(">\r\n <meta"); 4251 4252 WriteLiteral(" name=\"viewport\""); 4253 4254 WriteLiteral(" content=\"width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable" + 4255 "=no\""); 4256 4257 WriteLiteral(">\r\n\r\n <link"); 4258 4259 WriteLiteral(" rel=\"icon\""); 4260 4261 WriteLiteral(" type=\"image/png\""); 4262 4263 WriteAttribute("href", Tuple.Create(" href=\'", 6050), Tuple.Create("\'", 6063) 4264 4265 #line 98 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4266 , Tuple.Create(Tuple.Create("", 6057), Tuple.Create<System.Object, System.Int32>(small 4267 4268 #line default 4269 #line hidden 4270 , 6057), false) 4271 ); 4272 4273 WriteLiteral(" sizes=\"16x16\""); 4274 4275 WriteLiteral(">\r\n <link"); 4276 4277 WriteLiteral(" rel=\"icon\""); 4278 4279 WriteLiteral(" type=\"image/png\""); 4280 4281 WriteAttribute("href", Tuple.Create(" href=\'", 6118), Tuple.Create("\'", 6132) 4282 4283 #line 99 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4284 , Tuple.Create(Tuple.Create("", 6125), Tuple.Create<System.Object, System.Int32>(medium 4285 4286 #line default 4287 #line hidden 4288 , 6125), false) 4289 ); 4290 4291 WriteLiteral(" sizes=\"32x32\""); 4292 4293 WriteLiteral(">\r\n <link"); 4294 4295 WriteLiteral(" rel=\"icon\""); 4296 4297 WriteLiteral(" type=\"image/png\""); 4298 4299 WriteAttribute("href", Tuple.Create(" href=\'", 6187), Tuple.Create("\'", 6200) 4300 4301 #line 100 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4302 , Tuple.Create(Tuple.Create("", 6194), Tuple.Create<System.Object, System.Int32>(large 4303 4304 #line default 4305 #line hidden 4306 , 6194), false) 4307 ); 4308 4309 WriteLiteral(" sizes=\"96x96\""); 4310 4311 WriteLiteral(">\r\n <link"); 4312 4313 WriteLiteral(" rel=\"apple-touch-icon\""); 4314 4315 WriteAttribute("href", Tuple.Create(" href=\'", 6250), Tuple.Create("\'", 6269) 4316 4317 #line 101 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4318 , Tuple.Create(Tuple.Create("", 6257), Tuple.Create<System.Object, System.Int32>(olderIphone 4319 4320 #line default 4321 #line hidden 4322 , 6257), false) 4323 ); 4324 4325 WriteLiteral(">\r\n <link"); 4326 4327 WriteLiteral(" rel=\"apple-touch-icon\""); 4328 4329 WriteAttribute("href", Tuple.Create(" href=\'", 6305), Tuple.Create("\'", 6320) 4330 4331 #line 102 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4332 , Tuple.Create(Tuple.Create("", 6312), Tuple.Create<System.Object, System.Int32>(iphone6 4333 4334 #line default 4335 #line hidden 4336 , 6312), false) 4337 ); 4338 4339 WriteLiteral(">\r\n <link"); 4340 4341 WriteLiteral(" rel=\"apple-touch-icon\""); 4342 4343 WriteAttribute("href", Tuple.Create(" href=\'", 6356), Tuple.Create("\'", 6370) 4344 4345 #line 103 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4346 , Tuple.Create(Tuple.Create("", 6363), Tuple.Create<System.Object, System.Int32>(retina 4347 4348 #line default 4349 #line hidden 4350 , 6363), false) 4351 ); 4352 4353 WriteLiteral(">\r\n <link"); 4354 4355 WriteLiteral(" rel=\"apple-touch-icon\""); 4356 4357 WriteAttribute("href", Tuple.Create(" href=\'", 6406), Tuple.Create("\'", 6421) 4358 4359 #line 104 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4360 , Tuple.Create(Tuple.Create("", 6413), Tuple.Create<System.Object, System.Int32>(ipadPro 4361 4362 #line default 4363 #line hidden 4364 , 6413), false) 4365 ); 4366 4367 WriteLiteral(">\r\n\r\n"); 4368 4369 4370 #line 106 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4371 4372 4373 #line default 4374 #line hidden 4375 4376 #line 106 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4377 if (System.Web.HttpContext.Current.Request.Url.Host.ToLower().Contains("1stweb")) 4378 { 4379 4380 4381 #line default 4382 #line hidden 4383 WriteLiteral(" <meta"); 4384 4385 WriteLiteral(" name=\"robots\""); 4386 4387 WriteLiteral(" content=\"noindex\""); 4388 4389 WriteLiteral(">\r\n"); 4390 4391 4392 #line 109 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4393 } 4394 4395 4396 #line default 4397 #line hidden 4398 WriteLiteral("\r\n"); 4399 4400 4401 #line 111 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4402 4403 4404 #line default 4405 #line hidden 4406 4407 #line 111 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4408 if (!string.IsNullOrWhiteSpace(enviromentType)) 4409 { 4410 4411 4412 #line default 4413 #line hidden 4414 WriteLiteral(" <meta"); 4415 4416 WriteLiteral(" name=\"EnviromentType\""); 4417 4418 WriteAttribute("content", Tuple.Create(" content=\"", 6675), Tuple.Create("\"", 6700) 4419 4420 #line 113 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4421 , Tuple.Create(Tuple.Create("", 6685), Tuple.Create<System.Object, System.Int32>(enviromentType 4422 4423 #line default 4424 #line hidden 4425 , 6685), false) 4426 ); 4427 4428 WriteLiteral(">\r\n"); 4429 4430 4431 #line 114 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4432 } 4433 4434 4435 #line default 4436 #line hidden 4437 WriteLiteral("\r\n <!--\r\n Made by:\r\n 1st Web\r\n Klostergade 56 B 2 th.\r\n 8000 Aarhu" + 4438 "s C.\r\n www.1stweb.dk\r\n -->\r\n\r\n\r\n <script"); 4439 4440 WriteLiteral(" type=\"text/javascript\""); 4441 4442 WriteLiteral(" src=\"//cdnjs.cloudflare.com/ajax/libs/js-marker-clusterer/1.0.0/markerclusterer." + 4443 "js\""); 4444 4445 WriteLiteral("></script>\r\n<link"); 4446 4447 WriteLiteral(" href=\"/Files/Templates/Designs/Tapas/assets/dist/css/main.a39e5c21442a2e94e676ed" + 4448 "974dd91d69.css?624d8fb7833a5fcb1ad1\""); 4449 4450 WriteLiteral(" rel=\"stylesheet\""); 4451 4452 WriteLiteral(">"); 4453 4454 4455 #line 126 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4456 Write(GetValue("Stylesheets")); 4457 4458 4459 #line default 4460 #line hidden 4461 WriteLiteral("\r\n"); 4462 4463 4464 #line 127 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4465 Write(GetValue("Javascripts")); 4466 4467 4468 #line default 4469 #line hidden 4470 WriteLiteral(@" 4471 </head> 4472 4473 <style> 4474 .go-to-cart.added { transition: background-color 1s linear; background-color:#c3d5e7;} 4475 4476 .quick-action-wrapper { margin-top:0px!important; } 4477 4478 .btn-transparent, 4479 .btn-transparent:hover { background-color: transparent; color: #0f58a0; border: 1px solid #0f58a0;font-weight:normal; padding-left:20px; } 4480 4481 .btn-transparent i { margin-right:10px;} 4482 4483 "); 4484 4485 WriteLiteral("@media (min-width: 768px)\r\n\t{\r\n\t\tli.menu-item.offer a span.menu-text.offer\t{color" + 4486 ":#ff0000;}\r\n\t\tli.menu-item.offer a span.menu-text.active.offer\t{background-color" + 4487 ":#ff0000;}\r\n\t\t\r\n\t}\r\n\r\n /* smartphones, touchscreens */\r\n "); 4488 4489 WriteLiteral(@"@media (hover: none) and (pointer: coarse) { 4490 .free-freight-info {display: none;} 4491 4492 .product-list-item .add-to-cart-area, 4493 .product-details .add-to-cart { min-height: 50px;} 4494 4495 .product-list-item .add-to-cart-area .product-quantity, 4496 .product-details .add-to-cart input {height: 42px;width: 56px;font-size: 15px;} 4497 4498 .product-list-item .add-to-cart-area .btn, 4499 .product-details .add-to-cart .btn {font-size: 13px;padding: 12px 10px;flex-grow: 1;} 4500 4501 .product-list-item .add-to-cart-area .btn {margin-right: 16px;} 4502 4503 .product-list-item .add-to-cart-area .favorite-list-icon .favorite-list-icon-btn .fa-star, 4504 .product-details .add-to-cart .favorite-list-icon .favorite-list-icon-btn .fa-star {margin-top: 12px;margin-left: 11px;} 4505 4506 .product-list-item .add-to-cart-area .favorite-list-icon .favorite-list-icon-btn, 4507 .product-details .add-to-cart .favorite-list-icon .favorite-list-icon-btn {width: 42px;height: 42px;} 4508 4509 .product-list-item .add-to-cart-area .favorite-list-icon, 4510 .product-details .add-to-cart .favorite-list-icon {width: 42px;height: 42px;} 4511 } 4512 4513 4514 </style> 4515 4516 4517 <body"); 4518 4519 WriteLiteral(@" data-bind=""click: closeMenu(), 4520 css: { 'loading': stuffLoading}, 4521 style: {'overflow-y' : (appModalOpened() == 'cart-quick-view') ? 'hidden' : 'scroll'}, 4522 modals: { modalOpened: appModalOpened, previousModals: previousAppModalOpened }, 4523 closeMenuItems: { menuOpenObservable: appModalOpened, miniCartVisibleObservable: miniCartVisible }"""); 4524 4525 WriteAttribute("class", Tuple.Create(" class=\"", 9307), Tuple.Create("\"", 9350) 4526 , Tuple.Create(Tuple.Create("", 9315), Tuple.Create("is-flex", 9315), true) 4527 , Tuple.Create(Tuple.Create(" ", 9322), Tuple.Create("is-flex-col", 9323), true) 4528 4529 #line 180 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4530 , Tuple.Create(Tuple.Create(" ", 9334), Tuple.Create<System.Object, System.Int32>(cssMobileClass 4531 4532 #line default 4533 #line hidden 4534 , 9335), false) 4535 ); 4536 4537 WriteLiteral(">\r\n\r\n"); 4538 4539 WriteLiteral(" "); 4540 4541 4542 #line 182 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4543 Write(SnippetStart("DropDownMenuArrow")); 4544 4545 4546 #line default 4547 #line hidden 4548 WriteLiteral("\r\n\r\n <i"); 4549 4550 WriteLiteral(" class=\"fas fa-chevron-down drop-down-arrow\""); 4551 4552 WriteLiteral("></i>\r\n\r\n"); 4553 4554 WriteLiteral(" "); 4555 4556 4557 #line 186 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4558 Write(SnippetEnd("DropDownMenuArrow")); 4559 4560 4561 #line default 4562 #line hidden 4563 WriteLiteral("\r\n\r\n\r\n\r\n <div"); 4564 4565 WriteLiteral(" class=\"desktopSection min-height-100-vh\""); 4566 4567 WriteLiteral(" data-bind=\"css: { \'open\': showResponsiveMenu }\""); 4568 4569 WriteLiteral(">\r\n\r\n <nav"); 4570 4571 WriteLiteral(" class=\"top-content-navigation\""); 4572 4573 WriteLiteral(">\r\n\r\n <div"); 4574 4575 WriteLiteral(" class=\"container\""); 4576 4577 WriteLiteral(">\r\n\r\n <div"); 4578 4579 WriteLiteral(" class=\"is-flex\""); 4580 4581 WriteLiteral(">\r\n\r\n <div></div>\r\n\r\n <div"); 4582 4583 WriteLiteral(" class=\"link-list\""); 4584 4585 WriteLiteral(">\r\n\r\n"); 4586 4587 WriteLiteral(" "); 4588 4589 4590 #line 202 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4591 Write(GetValue("DwNavigation(contentnav)")); 4592 4593 4594 #line default 4595 #line hidden 4596 WriteLiteral("\r\n\r\n <div"); 4597 4598 WriteLiteral(" class=\"xs-m-l-2\""); 4599 4600 WriteLiteral(">\r\n"); 4601 4602 WriteLiteral(" "); 4603 4604 4605 #line 205 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4606 Write(RenderLogin(CurrentAreaId, login_PageId)); 4607 4608 4609 #line default 4610 #line hidden 4611 WriteLiteral("\r\n </div>\r\n\r\n </div>\r\n <" + 4612 "/div>\r\n\r\n </div>\r\n\r\n </nav>\r\n\r\n "); 4613 4614 WriteLiteral("\r\n\r\n\r\n <header"); 4615 4616 WriteLiteral(" class=\"menuWrap\""); 4617 4618 WriteLiteral(" data-bind=\"viewModel: \'HeaderViewModel\', floatingMenu: { heightDecider: \'.js-men" + 4619 "ubar\', placeholder: \'.js-placeholder\' }\""); 4620 4621 WriteLiteral(">\r\n <div"); 4622 4623 WriteLiteral(" class=\"menuBar xs-is-flex sm-is-flex md-is-flex js-menubar\""); 4624 4625 WriteLiteral(">\r\n <div"); 4626 4627 WriteLiteral(" class=\"logo-menu-container position-relative\""); 4628 4629 WriteLiteral(">\r\n <div"); 4630 4631 WriteLiteral(" class=\"container xs-width-100 sm-width-100 xs-p-l-0 xs-p-r-0 md-p-l-2 md-p-r-2\""); 4632 4633 WriteLiteral(">\r\n <div"); 4634 4635 WriteLiteral(" class=\"row is-flex xs-m-l-0 xs-m-r-0 navbar-height\""); 4636 4637 WriteLiteral(">\r\n\r\n <section"); 4638 4639 WriteLiteral(" class=\"right-menu col-xs-12 xs-p-r-0 xs-p-l-0 position-static is-flex xs-flex-wr" + 4640 "ap\""); 4641 4642 WriteLiteral(">\r\n <div"); 4643 4644 WriteLiteral(" class=\"pull-left mobile-menu-opener\""); 4645 4646 WriteLiteral(" data-bind=\"click: toggleMobileMenu\""); 4647 4648 WriteLiteral(">\r\n <i"); 4649 4650 WriteLiteral(" class=\"fas fa-bars\""); 4651 4652 WriteLiteral("></i>\r\n </div>\r\n <a" + 4653 ""); 4654 4655 WriteLiteral(" class=\"logo-container\""); 4656 4657 WriteLiteral(" href=\"/\""); 4658 4659 WriteLiteral(">\r\n <img"); 4660 4661 WriteLiteral(" class=\"logo img-responsive ie-logo-width\""); 4662 4663 WriteAttribute("src", Tuple.Create(" src=\'", 11657), Tuple.Create("\'", 11668) 4664 4665 #line 241 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4666 , Tuple.Create(Tuple.Create("", 11663), Tuple.Create<System.Object, System.Int32>(logo 4667 4668 #line default 4669 #line hidden 4670 , 11663), false) 4671 ); 4672 4673 WriteLiteral(" alt=\"logo\""); 4674 4675 WriteLiteral(">\r\n </a>\r\n\t\t\t\t\t\t\t\t\r\n " + 4676 " <div"); 4677 4678 WriteLiteral(" class=\"quickActions js-menu-item-parent clearfix\""); 4679 4680 WriteLiteral(">\r\n\r\n <div"); 4681 4682 WriteLiteral(" class=\"instant-search-wrapper\""); 4683 4684 WriteLiteral(">\r\n <instant-search"); 4685 4686 WriteAttribute("params", Tuple.Create(" params=\"", 11951), Tuple.Create("\"", 13397) 4687 , Tuple.Create(Tuple.Create("", 11960), Tuple.Create("{", 11960), true) 4688 , Tuple.Create(Tuple.Create("\r\n ", 11961), Tuple.Create("opened:", 12011), true) 4689 , Tuple.Create(Tuple.Create(" ", 12018), Tuple.Create("appModalOpened()", 12019), true) 4690 , Tuple.Create(Tuple.Create(" ", 12035), Tuple.Create("==", 12036), true) 4691 , Tuple.Create(Tuple.Create(" ", 12038), Tuple.Create("\'instant-search\',", 12039), true) 4692 , Tuple.Create(Tuple.Create("\r\n ", 12056), Tuple.Create("instantSearchPageId:", 12106), true) 4693 , Tuple.Create(Tuple.Create(" ", 12126), Tuple.Create("\'", 12127), true) 4694 4695 #line 249 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4696 , Tuple.Create(Tuple.Create("", 12128), Tuple.Create<System.Object, System.Int32>(instantSearch_PageId 4697 4698 #line default 4699 #line hidden 4700 , 12128), false) 4701 , Tuple.Create(Tuple.Create("", 12149), Tuple.Create("\',", 12149), true) 4702 , Tuple.Create(Tuple.Create("\r\n ", 12151), Tuple.Create("productCatalogPageId:", 12209), true) 4703 , Tuple.Create(Tuple.Create(" ", 12230), Tuple.Create("\'", 12231), true) 4704 4705 #line 250 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4706 , Tuple.Create(Tuple.Create("", 12232), Tuple.Create<System.Object, System.Int32>(productCatalog_PageId 4707 4708 #line default 4709 #line hidden 4710 , 12232), false) 4711 , Tuple.Create(Tuple.Create("", 12254), Tuple.Create("\',", 12254), true) 4712 , Tuple.Create(Tuple.Create("\r\n ", 12256), Tuple.Create("searchResults:", 12306), true) 4713 , Tuple.Create(Tuple.Create(" ", 12320), Tuple.Create("instantSearchResult,", 12321), true) 4714 , Tuple.Create(Tuple.Create("\r\n ", 12341), Tuple.Create("instantSearchPlaceholder:", 12391), true) 4715 , Tuple.Create(Tuple.Create(" ", 12416), Tuple.Create("\'", 12417), true) 4716 4717 #line 252 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4718 , Tuple.Create(Tuple.Create("", 12418), Tuple.Create<System.Object, System.Int32>(translationInstantSearchFieldPlaceholder 4719 4720 #line default 4721 #line hidden 4722 , 12418), false) 4723 , Tuple.Create(Tuple.Create("", 12459), Tuple.Create("\',", 12459), true) 4724 , Tuple.Create(Tuple.Create("\r\n ", 12461), Tuple.Create("instantSearchResultsHeader:", 12511), true) 4725 , Tuple.Create(Tuple.Create(" ", 12538), Tuple.Create("\'", 12539), true) 4726 4727 #line 253 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4728 , Tuple.Create(Tuple.Create("", 12540), Tuple.Create<System.Object, System.Int32>(InstantSearchResultsHeader 4729 4730 #line default 4731 #line hidden 4732 , 12540), false) 4733 , Tuple.Create(Tuple.Create("", 12567), Tuple.Create("\',", 12567), true) 4734 , Tuple.Create(Tuple.Create("\r\n ", 12569), Tuple.Create("onAddToCart:", 12619), true) 4735 , Tuple.Create(Tuple.Create(" ", 12631), Tuple.Create("function(id,", 12632), true) 4736 , Tuple.Create(Tuple.Create(" ", 12644), Tuple.Create("qty)", 12645), true) 4737 , Tuple.Create(Tuple.Create(" ", 12649), Tuple.Create("{", 12650), true) 4738 , Tuple.Create(Tuple.Create("\r\n ", 12651), Tuple.Create("addItemToCart(id,", 12703), true) 4739 , Tuple.Create(Tuple.Create(" ", 12720), Tuple.Create("qty,", 12721), true) 4740 , Tuple.Create(Tuple.Create(" ", 12725), Tuple.Create("\'\',", 12726), true) 4741 , Tuple.Create(Tuple.Create(" ", 12729), Tuple.Create("\'\',", 12730), true) 4742 , Tuple.Create(Tuple.Create(" ", 12733), Tuple.Create("\'", 12734), true) 4743 4744 #line 255 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4745 , Tuple.Create(Tuple.Create("", 12735), Tuple.Create<System.Object, System.Int32>(translationAddToCart 4746 4747 #line default 4748 #line hidden 4749 , 12735), false) 4750 , Tuple.Create(Tuple.Create("", 12756), Tuple.Create("\')", 12756), true) 4751 , Tuple.Create(Tuple.Create("\r\n ", 12758), Tuple.Create("},", 12808), true) 4752 , Tuple.Create(Tuple.Create("\r\n ", 12810), Tuple.Create("onSearchObservable:", 12860), true) 4753 , Tuple.Create(Tuple.Create(" ", 12879), Tuple.Create("instantSearchObservable,", 12880), true) 4754 , Tuple.Create(Tuple.Create("\r\n ", 12904), Tuple.Create("debounceInterval:", 12954), true) 4755 4756 #line 258 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4757 , Tuple.Create(Tuple.Create(" ", 12971), Tuple.Create<System.Object, System.Int32>(searchDebounceInterval 4758 4759 #line default 4760 #line hidden 4761 , 12972), false) 4762 , Tuple.Create(Tuple.Create("", 12995), Tuple.Create(",", 12995), true) 4763 , Tuple.Create(Tuple.Create("\r\n ", 12996), Tuple.Create("onSubmitSearch:", 13046), true) 4764 , Tuple.Create(Tuple.Create(" ", 13061), Tuple.Create("function(query)", 13062), true) 4765 , Tuple.Create(Tuple.Create(" ", 13077), Tuple.Create("{", 13078), true) 4766 , Tuple.Create(Tuple.Create("\r\n ", 13079), Tuple.Create("window.location.href", 13133), true) 4767 , Tuple.Create(Tuple.Create(" ", 13153), Tuple.Create("=", 13154), true) 4768 , Tuple.Create(Tuple.Create(" ", 13155), Tuple.Create("\'/Default.aspx?ID=", 13156), true) 4769 4770 #line 260 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4771 , Tuple.Create(Tuple.Create("", 13174), Tuple.Create<System.Object, System.Int32>(productCatalog_PageId 4772 4773 #line default 4774 #line hidden 4775 , 13174), false) 4776 , Tuple.Create(Tuple.Create("", 13196), Tuple.Create("&Search=\'", 13196), true) 4777 , Tuple.Create(Tuple.Create(" ", 13205), Tuple.Create("+", 13206), true) 4778 , Tuple.Create(Tuple.Create(" ", 13207), Tuple.Create("query;", 13208), true) 4779 , Tuple.Create(Tuple.Create("\r\n ", 13214), Tuple.Create("},", 13264), true) 4780 , Tuple.Create(Tuple.Create("\r\n ", 13266), Tuple.Create("stuffLoadingQueue:", 13316), true) 4781 , Tuple.Create(Tuple.Create(" ", 13334), Tuple.Create("stuffLoadingQueue", 13335), true) 4782 , Tuple.Create(Tuple.Create("\r\n ", 13352), Tuple.Create("}", 13396), true) 4783 ); 4784 4785 WriteLiteral("></instant-search>\r\n </div>\r\n\t\t\t\t\t\t\t\t\t\r\n"); 4786 4787 4788 #line 266 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4789 4790 4791 #line default 4792 #line hidden 4793 4794 #line 266 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4795 if (Firstweb.Custom.CustomCode.Tapas.Context.Current.ShopFunctionsVisibility.ShowShopFunctions()) 4796 { 4797 4798 4799 #line default 4800 #line hidden 4801 WriteLiteral(" <div"); 4802 4803 WriteLiteral(" class=\"quick-action-wrapper go-to-cart\""); 4804 4805 WriteLiteral(">\r\n <a"); 4806 4807 WriteAttribute("href", Tuple.Create(" href=\"", 13781), Tuple.Create("\"", 13817) 4808 , Tuple.Create(Tuple.Create("", 13788), Tuple.Create("/default.aspx?id=", 13788), true) 4809 4810 #line 269 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4811 , Tuple.Create(Tuple.Create("", 13805), Tuple.Create<System.Object, System.Int32>(cart_PageId 4812 4813 #line default 4814 #line hidden 4815 , 13805), false) 4816 ); 4817 4818 WriteLiteral(" class=\"quick-action-button tertiary-font clear-button xs-p-l-1 xs-p-r-1 md-p-r-0" + 4819 "\""); 4820 4821 WriteLiteral(">\r\n <div"); 4822 4823 WriteLiteral(" class=\"quick-search-content\""); 4824 4825 WriteLiteral(">\r\n <i"); 4826 4827 WriteLiteral(" class=\"fas fa-shopping-cart\""); 4828 4829 WriteLiteral(" style=\"font-size:19px;\""); 4830 4831 WriteLiteral("></i>\r\n <span"); 4832 4833 WriteLiteral(" class=\"quick-action-button-label pull-right\""); 4834 4835 WriteLiteral(" data-bind=\"text: cart().TotalProductLines\""); 4836 4837 WriteLiteral("></span>\r\n </div>\r\n " + 4838 " </a>\r\n\r\n " + 4839 " <div"); 4840 4841 WriteLiteral(" data-bind=\"visible: cart().TotalProductLines() != 0, css: { \'open\': freightInfoO" + 4842 "pen }\""); 4843 4844 WriteLiteral(" class=\"free-freight-info\""); 4845 4846 WriteLiteral(">\r\n <div"); 4847 4848 WriteLiteral(" class=\"freight-icon\""); 4849 4850 WriteLiteral(">\r\n <i"); 4851 4852 WriteLiteral(" class=\"fas fa-truck\""); 4853 4854 WriteLiteral("></i>\r\n <div"); 4855 4856 WriteLiteral(" class=\"free-freight-indicator\""); 4857 4858 WriteLiteral(">\r\n\r\n <div"); 4859 4860 WriteLiteral(" style=\"display:none;\""); 4861 4862 WriteLiteral(" class=\"freight-information\""); 4863 4864 WriteLiteral(" data-bind=\"visible: cart().FreeFreightGapAmount() == 0\""); 4865 4866 WriteLiteral(">\r\n <p>\r\n " + 4867 " <i"); 4868 4869 WriteLiteral(" class=\"fas fa-check\""); 4870 4871 WriteLiteral("></i> "); 4872 4873 4874 #line 283 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4875 Write(Translate("Cart.FreeFreightObtainedText", "Ordren er nu fragtfri")); 4876 4877 4878 #line default 4879 #line hidden 4880 WriteLiteral("\r\n </p>\r\n " + 4881 " </div>\r\n " + 4882 " <div"); 4883 4884 WriteLiteral(" style=\"display:none;\""); 4885 4886 WriteLiteral(" class=\"freight-information\""); 4887 4888 WriteLiteral(" data-bind=\"visible: cart().FreeFreightGapAmount() != 0\""); 4889 4890 WriteLiteral(">\r\n <p>\r\n"); 4891 4892 WriteLiteral(" "); 4893 4894 4895 #line 288 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4896 Write(Translate("Cart.FreeFreightNotObtainedTextShort", "Beløb til fri fragt")); 4897 4898 4899 #line default 4900 #line hidden 4901 WriteLiteral("\r\n </p>\r\n " + 4902 " <p"); 4903 4904 WriteLiteral(" class=\"sum\""); 4905 4906 WriteLiteral(" data-bind=\"text:cart().FreeFreightGapAmountFormatted\""); 4907 4908 WriteLiteral(@"></p> 4909 </div> 4910 4911 </div> 4912 </div> 4913 </div> 4914 4915 </div> 4916 "); 4917 4918 4919 #line 298 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4920 4921 4922 4923 #line default 4924 #line hidden 4925 WriteLiteral(" <div"); 4926 4927 WriteLiteral(" class=\"quick-action-wrapper hidden-xs hidden-sm\""); 4928 4929 WriteLiteral(">\r\n <button"); 4930 4931 WriteLiteral(" class=\"quick-action-button tertiary-font clear-button xs-p-r-1 xs-p-l-1 md-m-l-3" + 4932 " md-m-r-3\""); 4933 4934 WriteLiteral(@" data-bind="" 4935 toggleMenuModal: { target: 'quick-order', modalObservable: appModalOpened }, 4936 css: { 'quick-action-button--active': appModalOpened() === 'quick-order' }"""); 4937 4938 WriteLiteral(">\r\n <i"); 4939 4940 WriteLiteral(" class=\"fa fa-bolt\""); 4941 4942 WriteLiteral("></i>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div"); 4943 4944 WriteLiteral(" style=\"font-size:9px;margin-top:4px;\""); 4945 4946 WriteLiteral(">LYNBESTIL</div>\r\n </button>\r\n\r\n " + 4947 " <quick-order"); 4948 4949 WriteAttribute("params", Tuple.Create(" params=\"", 16945), Tuple.Create("\"", 18029) 4950 , Tuple.Create(Tuple.Create("", 16954), Tuple.Create("{", 16954), true) 4951 , Tuple.Create(Tuple.Create("\r\n ", 16955), Tuple.Create("opened:", 17005), true) 4952 , Tuple.Create(Tuple.Create(" ", 17012), Tuple.Create("appModalOpened()", 17013), true) 4953 , Tuple.Create(Tuple.Create(" ", 17029), Tuple.Create("===", 17030), true) 4954 , Tuple.Create(Tuple.Create(" ", 17033), Tuple.Create("\'quick-order\',", 17034), true) 4955 , Tuple.Create(Tuple.Create("\r\n ", 17048), Tuple.Create("instantSearchPageId:", 17098), true) 4956 , Tuple.Create(Tuple.Create(" ", 17118), Tuple.Create("\'", 17119), true) 4957 4958 #line 309 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4959 , Tuple.Create(Tuple.Create("", 17120), Tuple.Create<System.Object, System.Int32>(instantSearch_PageId 4960 4961 #line default 4962 #line hidden 4963 , 17120), false) 4964 , Tuple.Create(Tuple.Create("", 17141), Tuple.Create("\',", 17141), true) 4965 , Tuple.Create(Tuple.Create("\r\n ", 17143), Tuple.Create("updateCartLabel:", 17193), true) 4966 , Tuple.Create(Tuple.Create(" ", 17209), Tuple.Create("\'", 17210), true) 4967 4968 #line 310 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4969 , Tuple.Create(Tuple.Create("", 17211), Tuple.Create<System.Object, System.Int32>(translationUpdatingCart 4970 4971 #line default 4972 #line hidden 4973 , 17211), false) 4974 , Tuple.Create(Tuple.Create("", 17235), Tuple.Create("\',", 17235), true) 4975 , Tuple.Create(Tuple.Create("\r\n ", 17237), Tuple.Create("addToCartLabel:", 17287), true) 4976 , Tuple.Create(Tuple.Create(" ", 17302), Tuple.Create("\'", 17303), true) 4977 4978 #line 311 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4979 , Tuple.Create(Tuple.Create("", 17304), Tuple.Create<System.Object, System.Int32>(translationAddToCart 4980 4981 #line default 4982 #line hidden 4983 , 17304), false) 4984 , Tuple.Create(Tuple.Create("", 17325), Tuple.Create("\',", 17325), true) 4985 , Tuple.Create(Tuple.Create("\r\n ", 17327), Tuple.Create("searchResults:", 17377), true) 4986 , Tuple.Create(Tuple.Create(" ", 17391), Tuple.Create("quickOrderSearchResult,", 17392), true) 4987 , Tuple.Create(Tuple.Create("\r\n ", 17415), Tuple.Create("debounceInterval:", 17465), true) 4988 4989 #line 313 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 4990 , Tuple.Create(Tuple.Create(" ", 17482), Tuple.Create<System.Object, System.Int32>(searchDebounceInterval 4991 4992 #line default 4993 #line hidden 4994 , 17483), false) 4995 , Tuple.Create(Tuple.Create("", 17506), Tuple.Create(",", 17506), true) 4996 , Tuple.Create(Tuple.Create("\r\n ", 17507), Tuple.Create("onSearchObservable:", 17557), true) 4997 , Tuple.Create(Tuple.Create(" ", 17576), Tuple.Create("quickOrderObservable,", 17577), true) 4998 , Tuple.Create(Tuple.Create("\r\n ", 17598), Tuple.Create("translatePlaceholder:", 17648), true) 4999 , Tuple.Create(Tuple.Create(" ", 17669), Tuple.Create("\'", 17670), true) 5000 5001 #line 315 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5002 , Tuple.Create(Tuple.Create("", 17671), Tuple.Create<System.Object, System.Int32>(translationQuickOrderFieldPlaceholder 5003 5004 #line default 5005 #line hidden 5006 , 17671), false) 5007 , Tuple.Create(Tuple.Create("", 17709), Tuple.Create("\',", 17709), true) 5008 , Tuple.Create(Tuple.Create("\r\n ", 17711), Tuple.Create("excelLink:", 17761), true) 5009 , Tuple.Create(Tuple.Create(" ", 17771), Tuple.Create("\'", 17772), true) 5010 5011 #line 316 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5012 , Tuple.Create(Tuple.Create("", 17773), Tuple.Create<System.Object, System.Int32>(ExcelQuickAdd 5013 5014 #line default 5015 #line hidden 5016 , 17773), false) 5017 , Tuple.Create(Tuple.Create("", 17787), Tuple.Create("\',", 17787), true) 5018 , Tuple.Create(Tuple.Create("\r\n ", 17789), Tuple.Create("onAddToCart:", 17839), true) 5019 , Tuple.Create(Tuple.Create(" ", 17851), Tuple.Create("function(id,", 17852), true) 5020 , Tuple.Create(Tuple.Create(" ", 17864), Tuple.Create("qty)", 17865), true) 5021 , Tuple.Create(Tuple.Create(" ", 17869), Tuple.Create("{", 17870), true) 5022 , Tuple.Create(Tuple.Create("\r\n ", 17871), Tuple.Create("addItemToCart(id,", 17925), true) 5023 , Tuple.Create(Tuple.Create(" ", 17942), Tuple.Create("qty,", 17943), true) 5024 , Tuple.Create(Tuple.Create(" ", 17947), Tuple.Create("\'\',", 17948), true) 5025 , Tuple.Create(Tuple.Create(" ", 17951), Tuple.Create("\'\',", 17952), true) 5026 , Tuple.Create(Tuple.Create(" ", 17955), Tuple.Create("\'", 17956), true) 5027 5028 #line 318 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5029 , Tuple.Create(Tuple.Create("", 17957), Tuple.Create<System.Object, System.Int32>(translationAddToCart 5030 5031 #line default 5032 #line hidden 5033 , 17957), false) 5034 , Tuple.Create(Tuple.Create("", 17978), Tuple.Create("\');", 17978), true) 5035 , Tuple.Create(Tuple.Create("\r\n ", 17981), Tuple.Create("}}", 18027), true) 5036 ); 5037 5038 WriteLiteral("></quick-order>\r\n </div>\r\n"); 5039 5040 5041 #line 321 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5042 } 5043 5044 5045 #line default 5046 #line hidden 5047 WriteLiteral("\r\n </div>\r\n "); 5048 5049 WriteLiteral("\r\n </section>\r\n </div>\r\n " + 5050 " </div>\r\n\r\n"); 5051 5052 5053 #line 344 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5054 5055 5056 #line default 5057 #line hidden 5058 5059 #line 344 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5060 if (Firstweb.Custom.CustomCode.Frontend.Helpers.Users.IsEmployee()) 5061 { 5062 if (Firstweb.Custom.CustomCode.Frontend.Helpers.SecondaryUsers.IsImpersonating()) 5063 { 5064 var currentCustomer = Dynamicweb.Security.UserManagement.User.GetCurrentExtranetUser(); 5065 string CustomerInfo = currentCustomer != null ? $"{currentCustomer.Name} ({currentCustomer.CustomerNumber})" : ""; 5066 5067 5068 5069 #line default 5070 #line hidden 5071 WriteLiteral(" <div"); 5072 5073 WriteLiteral(" _style=\"background-color: #ff6a00; color: white; padding-top: 8px; padding-botto" + 5074 "m: 7px;\""); 5075 5076 WriteLiteral(" class=\"impersonation-bar is-impersonating\""); 5077 5078 WriteLiteral(">\r\n <div"); 5079 5080 WriteLiteral(" class=\"container\""); 5081 5082 WriteLiteral(">\r\n <i"); 5083 5084 WriteLiteral(" class=\"fas fa-user\""); 5085 5086 WriteLiteral("></i><span"); 5087 5088 WriteLiteral(" class=\"hidden-xs hidden-sm\""); 5089 5090 WriteLiteral(">"); 5091 5092 5093 #line 353 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5094 Write(Translate("Usermenu.MenuText.LoggedInAsCustomer", "Du er logget ind som kunde")); 5095 5096 5097 #line default 5098 #line hidden 5099 WriteLiteral(": </span><b>"); 5100 5101 5102 #line 353 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5103 Write(CustomerInfo); 5104 5105 5106 #line default 5107 #line hidden 5108 WriteLiteral("</b>\r\n\r\n <a"); 5109 5110 WriteAttribute("href", Tuple.Create(" href=\"", 20456), Tuple.Create("\"", 20539) 5111 5112 #line 355 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5113 , Tuple.Create(Tuple.Create("", 20463), Tuple.Create<System.Object, System.Int32>(Firstweb.Custom.CustomCode.Frontend.Helpers.Page.GetStopImpersonatingLink() 5114 5115 #line default 5116 #line hidden 5117 , 20463), false) 5118 ); 5119 5120 WriteLiteral(" class=\"stop-impersonation\""); 5121 5122 WriteLiteral(" _style=\"margin-left:20px;color:#fff;border:1px solid #fff;border-radius:4px;padd" + 5123 "ing:2px 5px;\""); 5124 5125 WriteLiteral(">\r\n <span>"); 5126 5127 5128 #line 356 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5129 Write(Translate("Usermenu.MenuText.StopImpersonating", "Log af som kunde")); 5130 5131 5132 #line default 5133 #line hidden 5134 WriteLiteral("</span>\r\n </a>\r\n\r\n " + 5135 " </div>\r\n </div>\r\n"); 5136 5137 5138 #line 361 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5139 5140 5141 } 5142 else 5143 { 5144 5145 5146 #line default 5147 #line hidden 5148 WriteLiteral(" <div"); 5149 5150 WriteLiteral(" _style=\"background-color: #c3d5e7; color: #1e2a01; padding-top: 8px; padding-bot" + 5151 "tom: 7px;\""); 5152 5153 WriteLiteral(" class=\"impersonation-bar\""); 5154 5155 WriteLiteral(">\r\n <div"); 5156 5157 WriteLiteral(" class=\"container\""); 5158 5159 WriteLiteral(">\r\n <i"); 5160 5161 WriteLiteral(" class=\"fas fa-user\""); 5162 5163 WriteLiteral("></i>"); 5164 5165 5166 #line 368 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5167 Write(Translate("Usermenu.MenuText.LoggedInAsSales", "Du er logget ind som sælger")); 5168 5169 5170 #line default 5171 #line hidden 5172 WriteLiteral("\r\n <a"); 5173 5174 WriteAttribute("href", Tuple.Create(" href=\"", 21386), Tuple.Create("\"", 21429) 5175 , Tuple.Create(Tuple.Create("", 21393), Tuple.Create("/default.aspx?ID=", 21393), true) 5176 5177 #line 369 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5178 , Tuple.Create(Tuple.Create("", 21410), Tuple.Create<System.Object, System.Int32>(mycustomers_PageId 5179 5180 #line default 5181 #line hidden 5182 , 21410), false) 5183 ); 5184 5185 WriteLiteral(" _style=\"margin-left:20px;color: #1e2a01; border: 1px solid #1e2a01; border-radiu" + 5186 "s: 4px; padding: 2px 5px; \""); 5187 5188 WriteLiteral(" class=\"goto-impersonation\""); 5189 5190 WriteLiteral(">\r\n"); 5191 5192 WriteLiteral(" "); 5193 5194 5195 #line 370 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5196 Write(Translate("Usermenu.MenuText.GotoYourCustomers", "Log ind som kunde")); 5197 5198 5199 #line default 5200 #line hidden 5201 WriteLiteral("\r\n </a>\r\n </div" + 5202 ">\r\n </div>\r\n"); 5203 5204 5205 #line 374 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5206 } 5207 } 5208 5209 5210 #line default 5211 #line hidden 5212 WriteLiteral(" </div>\r\n <nav"); 5213 5214 WriteLiteral(" class=\"container nav-container\""); 5215 5216 WriteLiteral(" data-bind=\"css: { \'open\': mobileMenuOpen }, menuState: { menuItemsSelector: \'.js" + 5217 "-menu-item\', openClass: \'open\', toggler: \'.js-toggle-menu\', submenuContainer: \'." + 5218 "js-submenu\', menuCloser: \'js-menu-closer\' }\""); 5219 5220 WriteLiteral(">\r\n <div"); 5221 5222 WriteLiteral(" class=\"mobile-menu-closer\""); 5223 5224 WriteLiteral(">\r\n <i"); 5225 5226 WriteLiteral(" class=\"fas fa-times icon-close\""); 5227 5228 WriteLiteral(" data-bind=\"click: toggleMobileMenu\""); 5229 5230 WriteLiteral("></i>\r\n </div>\r\n"); 5231 5232 WriteLiteral(" "); 5233 5234 5235 #line 381 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5236 Write(RenderNavigation(new 5237 { 5238 template = "mainmenu.xslt", 5239 expandmode = "all", 5240 startlevel = "1", 5241 endlevel = "10", 5242 groupId = !String.IsNullOrEmpty(Dynamicweb.Context.Current.Request.GetString("GroupID")) ? Dynamicweb.Context.Current.Request.GetString("GroupID") : "NOGROUP" 5243 })); 5244 5245 5246 #line default 5247 #line hidden 5248 WriteLiteral("\r\n </nav>\r\n </div>\r\n <div"); 5249 5250 WriteLiteral(" class=\"floatingPlaceholder js-placeholder\""); 5251 5252 WriteLiteral("></div>\r\n </header>\r\n\r\n"); 5253 5254 5255 #line 394 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5256 5257 5258 #line default 5259 #line hidden 5260 WriteLiteral("\r\n\r\n"); 5261 5262 WriteLiteral("\r\n\r\n"); 5263 5264 WriteLiteral("\r\n\r\n\r\n\r\n\r\n"); 5265 5266 WriteLiteral("\r\n"); 5267 5268 WriteLiteral("\r\n\r\n"); 5269 5270 WriteLiteral("\r\n\r\n\r\n"); 5271 5272 WriteLiteral("\r\n\r\n"); 5273 5274 WriteLiteral("\r\n"); 5275 5276 WriteLiteral("\r\n"); 5277 5278 WriteLiteral("\r\n"); 5279 5280 5281 #line 1082 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5282 5283 string Headline = GetString("Item.Headline.Value"); 5284 string TeaserText = GetString("Item.Teaser.Value"); 5285 string Image = GetString("Item.Large_Image.Value"); 5286 DateTime CreatedDate = GetDate("Item.CreatedDate.Value"); 5287 string FormattedDate = CreatedDate.ToString("dd-MM-yyyy"); 5288 string ArticleText = GetString("Item.NewsText.Value"); 5289 Dynamicweb.Content.PageService pageService = new Dynamicweb.Content.PageService(); 5290 int PageId = GetInteger("DwPageID"); 5291 int ParentPageId = GetInteger("DwPageID_2"); 5292 var ParentPage = pageService.GetPage(ParentPageId); 5293 var Now = DateTime.Now; 5294 var LatestArticles = pageService.GetPagesByParentID(ParentPageId).Where(x => x.Active && x.ID != PageId && x.ActiveFrom < Now && x.ActiveTo > Now).ToList(); 5295 string AddingProductText = Translate("addproduct", "Tilf&oslash;jer produkt"); 5296 5297 5298 #line default 5299 #line hidden 5300 WriteLiteral("\r\n\r\n<div"); 5301 5302 WriteLiteral(" class=\"container article-details-page\""); 5303 5304 WriteLiteral(">\r\n\r\n <div"); 5305 5306 WriteLiteral(" class=\"row\""); 5307 5308 WriteLiteral(">\r\n\r\n <div"); 5309 5310 WriteLiteral(" class=\"col-xs-12 col-md-8\""); 5311 5312 WriteLiteral(">\r\n\r\n <h1"); 5313 5314 WriteLiteral(" class=\"header\""); 5315 5316 WriteLiteral(">"); 5317 5318 5319 #line 1104 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5320 Write(Headline); 5321 5322 5323 #line default 5324 #line hidden 5325 WriteLiteral("</h1>\r\n\r\n <div"); 5326 5327 WriteLiteral(" class=\"rte-content teaser-text\""); 5328 5329 WriteLiteral(">\r\n"); 5330 5331 WriteLiteral(" "); 5332 5333 5334 #line 1107 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5335 Write(TeaserText); 5336 5337 5338 #line default 5339 #line hidden 5340 WriteLiteral("\r\n </div>\r\n\r\n <div"); 5341 5342 WriteLiteral(" class=\"image-container\""); 5343 5344 WriteLiteral(">\r\n <img"); 5345 5346 WriteLiteral(" class=\"image-fluid\""); 5347 5348 WriteAttribute("src", Tuple.Create(" src=\"", 60578), Tuple.Create("\"", 60590) 5349 5350 #line 1111 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5351 , Tuple.Create(Tuple.Create("", 60584), Tuple.Create<System.Object, System.Int32>(Image 5352 5353 #line default 5354 #line hidden 5355 , 60584), false) 5356 ); 5357 5358 WriteAttribute("alt", Tuple.Create(" alt=\"", 60591), Tuple.Create("\"", 60606) 5359 5360 #line 1111 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5361 , Tuple.Create(Tuple.Create("", 60597), Tuple.Create<System.Object, System.Int32>(Headline 5362 5363 #line default 5364 #line hidden 5365 , 60597), false) 5366 ); 5367 5368 WriteLiteral(">\r\n </div>\r\n\r\n <div"); 5369 5370 WriteLiteral(" class=\"soc-media-block\""); 5371 5372 WriteLiteral(">\r\n <p>"); 5373 5374 5375 #line 1115 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5376 Write(FormattedDate); 5377 5378 5379 #line default 5380 #line hidden 5381 WriteLiteral("</p>\r\n <div"); 5382 5383 WriteLiteral(" class=\"add-this\""); 5384 5385 WriteLiteral(">\r\n <div"); 5386 5387 WriteLiteral(" class=\"addthis_inline_share_toolbox\""); 5388 5389 WriteLiteral("></div>\r\n </div>\r\n </div>\r\n\r\n <div"); 5390 5391 WriteLiteral(" class=\"article-text rte-content\""); 5392 5393 WriteLiteral(">\r\n"); 5394 5395 WriteLiteral(" "); 5396 5397 5398 #line 1122 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5399 Write(ArticleText); 5400 5401 5402 #line default 5403 #line hidden 5404 WriteLiteral("\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div"); 5405 5406 WriteLiteral(" class=\"col-xs-12 col-md-4\""); 5407 5408 WriteLiteral(">\r\n\r\n <div"); 5409 5410 WriteLiteral(" class=\"latest-news\""); 5411 5412 WriteLiteral(">\r\n\r\n <p"); 5413 5414 WriteLiteral(" class=\"latest-header\""); 5415 5416 WriteLiteral(">"); 5417 5418 5419 #line 1132 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5420 Write(Translate("News.LatestArticles", "Seneste nyheder")); 5421 5422 5423 #line default 5424 #line hidden 5425 WriteLiteral("</p>\r\n\r\n <div"); 5426 5427 WriteLiteral(" class=\"article-grid\""); 5428 5429 WriteLiteral(">\r\n\r\n"); 5430 5431 5432 #line 1136 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5433 5434 5435 #line default 5436 #line hidden 5437 5438 #line 1136 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5439 foreach (var Article in LatestArticles.OrderByDescending(sp => Convert.ToDateTime(Firstweb.Custom.CustomCode.Tapas.Base.Items.GetValueDateTime(sp.Item, "CreatedDate")))) 5440 { 5441 var PreviewHeadline = Firstweb.Custom.CustomCode.Tapas.Base.Items.GetValueString(Article.Item, "Headline"); 5442 var PreviewTeaser = Firstweb.Custom.CustomCode.Tapas.Base.Items.GetValueString(Article.Item, "Teaser"); 5443 string PreviewLink = Dynamicweb.Frontend.SearchEngineFriendlyURLs.GetFriendlyUrl(Article.ID); 5444 5445 5446 5447 #line default 5448 #line hidden 5449 WriteLiteral(" <a"); 5450 5451 WriteLiteral(" class=\"article-preview\""); 5452 5453 WriteAttribute("href", Tuple.Create(" href=\"", 61874), Tuple.Create("\"", 61893) 5454 5455 #line 1142 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5456 , Tuple.Create(Tuple.Create("", 61881), Tuple.Create<System.Object, System.Int32>(PreviewLink 5457 5458 #line default 5459 #line hidden 5460 , 61881), false) 5461 ); 5462 5463 WriteLiteral(">\r\n\r\n <p"); 5464 5465 WriteLiteral(" class=\"preview-header\""); 5466 5467 WriteLiteral(">"); 5468 5469 5470 #line 1144 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5471 Write(PreviewHeadline); 5472 5473 5474 #line default 5475 #line hidden 5476 WriteLiteral("</p>\r\n\r\n <div"); 5477 5478 WriteLiteral(" class=\"rte-content\""); 5479 5480 WriteLiteral(">\r\n"); 5481 5482 WriteLiteral(" "); 5483 5484 5485 #line 1147 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5486 Write(PreviewTeaser); 5487 5488 5489 #line default 5490 #line hidden 5491 WriteLiteral("\r\n </div>\r\n\r\n </a>\r\n"); 5492 5493 5494 #line 1151 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5495 } 5496 5497 5498 #line default 5499 #line hidden 5500 WriteLiteral("\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n </div>\r\n\r\n </div>\r" + 5501 "\n\r\n</div>\r\n\r\n"); 5502 5503 5504 #line 1164 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5505 if (GetLoop("Item.Related_Products.Value").Any()) 5506 { 5507 5508 5509 #line default 5510 #line hidden 5511 WriteLiteral(" <div"); 5512 5513 WriteLiteral(" class=\"millarco-productlist xs-p-t-3 xs-p-b-1\""); 5514 5515 WriteLiteral(">\r\n\r\n <div"); 5516 5517 WriteLiteral(" class=\"container productList\""); 5518 5519 WriteLiteral(" data-bind=\"viewModel: \'ProductListViewModel\'\""); 5520 5521 WriteLiteral(">\r\n\r\n <p"); 5522 5523 WriteLiteral(" class=\"related-group-header\""); 5524 5525 WriteLiteral(">"); 5526 5527 5528 #line 1170 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5529 Write(Translate("Article.RelatedProducts", "Relaterede produkter")); 5530 5531 5532 #line default 5533 #line hidden 5534 WriteLiteral("</p>\r\n\r\n <div"); 5535 5536 WriteLiteral(" class=\"row row-ce\""); 5537 5538 WriteLiteral(" data-bind=\"asyncPriceLoad: productListLoad,\r\n css: \'l" + 5539 "oaded\',\r\n elementToObservable: $parent.OrderTemplateL" + 5540 "istElement,\r\n loadOnBool: { observableBool: CartLoadi" + 5541 "ng, text: \'"); 5542 5543 5544 #line 1175 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5545 Write(AddingProductText); 5546 5547 5548 #line default 5549 #line hidden 5550 WriteLiteral("\' }\""); 5551 5552 WriteLiteral(">\r\n\r\n"); 5553 5554 5555 #line 1177 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5556 5557 5558 #line default 5559 #line hidden 5560 5561 #line 1177 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5562 foreach (var item in GetLoop("Item.Related_Products.Value")) 5563 { 5564 5565 5566 #line default 5567 #line hidden 5568 5569 #line 1179 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5570 Write(renderProduct(true, item, true)); 5571 5572 5573 #line default 5574 #line hidden 5575 5576 #line 1179 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5577 5578 } 5579 5580 5581 #line default 5582 #line hidden 5583 WriteLiteral("\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n"); 5584 5585 5586 #line 1187 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5587 } 5588 5589 5590 #line default 5591 #line hidden 5592 WriteLiteral("\r\n\r\n <footer>\r\n <div"); 5593 5594 WriteLiteral(" class=\"container\""); 5595 5596 WriteLiteral(">\r\n <div"); 5597 5598 WriteLiteral(" class=\"row\""); 5599 5600 WriteLiteral(">\r\n\r\n <div"); 5601 5602 WriteLiteral(" class=\"col-xs-12 col-sm-6 col-md-3 footer-column\""); 5603 5604 WriteLiteral(">\r\n\r\n <p"); 5605 5606 WriteLiteral(" class=\"footer-heading\""); 5607 5608 WriteLiteral(">"); 5609 5610 5611 #line 1196 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5612 Write(GetString("Item.Area.Kolonne_1Overskrift.Value")); 5613 5614 5615 #line default 5616 #line hidden 5617 WriteLiteral("</p>\r\n\r\n <div"); 5618 5619 WriteLiteral(" class=\"rte-content\""); 5620 5621 WriteLiteral(">\r\n"); 5622 5623 WriteLiteral(" "); 5624 5625 5626 #line 1199 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5627 Write(GetString("Item.Area.Kolonne_1Tekst.Value")); 5628 5629 5630 #line default 5631 #line hidden 5632 WriteLiteral("\r\n </div>\r\n\r\n </div>\r\n\r\n " + 5633 " <div"); 5634 5635 WriteLiteral(" class=\"col-xs-12 col-sm-6 col-md-3 footer-column\""); 5636 5637 WriteLiteral(">\r\n\r\n <p"); 5638 5639 WriteLiteral(" class=\"footer-heading\""); 5640 5641 WriteLiteral(">"); 5642 5643 5644 #line 1206 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5645 Write(GetString("Item.Area.Kolonne_2Overskrift.Value")); 5646 5647 5648 #line default 5649 #line hidden 5650 WriteLiteral("</p>\r\n\r\n <div"); 5651 5652 WriteLiteral(" class=\"rte-content\""); 5653 5654 WriteLiteral(">\r\n"); 5655 5656 WriteLiteral(" "); 5657 5658 5659 #line 1209 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5660 Write(GetString("Item.Area.Kolonne_2Tekst.Value")); 5661 5662 5663 #line default 5664 #line hidden 5665 WriteLiteral("\r\n </div>\r\n\r\n </div>\r\n\r\n " + 5666 " <div"); 5667 5668 WriteLiteral(" class=\"col-xs-12 col-sm-6 col-md-3 footer-column\""); 5669 5670 WriteLiteral(">\r\n\r\n <p"); 5671 5672 WriteLiteral(" class=\"footer-heading\""); 5673 5674 WriteLiteral(">"); 5675 5676 5677 #line 1216 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5678 Write(GetString("Item.Area.Kolonne_3Overskrift.Value")); 5679 5680 5681 #line default 5682 #line hidden 5683 WriteLiteral("</p>\r\n\r\n <div"); 5684 5685 WriteLiteral(" class=\"rte-content\""); 5686 5687 WriteLiteral(">\r\n"); 5688 5689 WriteLiteral(" "); 5690 5691 5692 #line 1219 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5693 Write(GetString("Item.Area.Kolonne_3Tekst.Value")); 5694 5695 5696 #line default 5697 #line hidden 5698 WriteLiteral("\r\n </div>\r\n\r\n </div>\r\n\r\n " + 5699 " <div"); 5700 5701 WriteLiteral(" class=\"col-xs-12 col-sm-6 col-md-3 footer-column\""); 5702 5703 WriteLiteral(">\r\n\r\n <p"); 5704 5705 WriteLiteral(" class=\"footer-heading\""); 5706 5707 WriteLiteral(">"); 5708 5709 5710 #line 1226 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5711 Write(GetString("Item.Area.Kolonne_4Overskrift.Value")); 5712 5713 5714 #line default 5715 #line hidden 5716 WriteLiteral("</p>\r\n\r\n <div"); 5717 5718 WriteLiteral(" class=\"rte-content\""); 5719 5720 WriteLiteral(">\r\n"); 5721 5722 WriteLiteral(" "); 5723 5724 5725 #line 1229 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5726 Write(GetString("Item.Area.Kolonne_4Tekst.Value")); 5727 5728 5729 #line default 5730 #line hidden 5731 WriteLiteral("\r\n </div>\r\n\r\n <div"); 5732 5733 WriteLiteral(" class=\"soc-media-links\""); 5734 5735 WriteLiteral(">\r\n\r\n"); 5736 5737 5738 #line 1234 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5739 5740 5741 #line default 5742 #line hidden 5743 5744 #line 1234 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5745 foreach (var Link in GetLoop("Item.Area.Kolonne_4Ikoner")) 5746 { 5747 string Name = Link.GetString("Item.Area.Kolonne_4Ikoner.Navn.Value"); 5748 string Destination = Link.GetString("Item.Area.Kolonne_4Ikoner.Link.Value"); 5749 string FontAwesomeIcon = Link.GetString("Item.Area.Kolonne_4Ikoner.FontAwesomeIkon.Value"); 5750 string FileIcon = "/admin/public/getimage.ashx?image=" + Link.GetString("Item.Area.Kolonne_4Ikoner.FilIkon.Value") + "&height=20&width=20&crop=5"; 5751 5752 5753 #line default 5754 #line hidden 5755 WriteLiteral(" <a"); 5756 5757 WriteLiteral(" class=\"soc-media\""); 5758 5759 WriteAttribute("href", Tuple.Create(" href=\"", 65441), Tuple.Create("\"", 65460) 5760 5761 #line 1240 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5762 , Tuple.Create(Tuple.Create("", 65448), Tuple.Create<System.Object, System.Int32>(Destination 5763 5764 #line default 5765 #line hidden 5766 , 65448), false) 5767 ); 5768 5769 WriteLiteral(" target=\"_blank\""); 5770 5771 WriteAttribute("title", Tuple.Create(" title=\"", 65477), Tuple.Create("\"", 65490) 5772 5773 #line 1240 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5774 , Tuple.Create(Tuple.Create("", 65485), Tuple.Create<System.Object, System.Int32>(Name 5775 5776 #line default 5777 #line hidden 5778 , 65485), false) 5779 ); 5780 5781 WriteLiteral(">\r\n"); 5782 5783 5784 #line 1241 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5785 5786 5787 #line default 5788 #line hidden 5789 5790 #line 1241 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5791 if (!String.IsNullOrEmpty(FileIcon)) 5792 { 5793 5794 5795 #line default 5796 #line hidden 5797 WriteLiteral(" <img"); 5798 5799 WriteAttribute("src", Tuple.Create(" src=\"", 65652), Tuple.Create("\"", 65667) 5800 5801 #line 1243 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5802 , Tuple.Create(Tuple.Create("", 65658), Tuple.Create<System.Object, System.Int32>(FileIcon 5803 5804 #line default 5805 #line hidden 5806 , 65658), false) 5807 ); 5808 5809 WriteAttribute("alt", Tuple.Create(" alt=\"", 65668), Tuple.Create("\"", 65679) 5810 5811 #line 1243 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5812 , Tuple.Create(Tuple.Create("", 65674), Tuple.Create<System.Object, System.Int32>(Name 5813 5814 #line default 5815 #line hidden 5816 , 65674), false) 5817 ); 5818 5819 WriteLiteral(">\r\n"); 5820 5821 5822 #line 1244 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5823 } 5824 else 5825 { 5826 5827 5828 #line default 5829 #line hidden 5830 WriteLiteral(" <i"); 5831 5832 WriteAttribute("class", Tuple.Create(" class=\"", 65845), Tuple.Create("\"", 65869) 5833 5834 #line 1247 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5835 , Tuple.Create(Tuple.Create("", 65853), Tuple.Create<System.Object, System.Int32>(FontAwesomeIcon 5836 5837 #line default 5838 #line hidden 5839 , 65853), false) 5840 ); 5841 5842 WriteLiteral("></i>\r\n"); 5843 5844 5845 #line 1248 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5846 } 5847 5848 5849 #line default 5850 #line hidden 5851 WriteLiteral(" </a>\r\n"); 5852 5853 5854 #line 1250 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5855 } 5856 5857 5858 #line default 5859 #line hidden 5860 WriteLiteral("\r\n </div>\r\n\r\n </div>\r\n\r\n " + 5861 " </div>\r\n </div>\r\n </footer>\r\n\r\n <div"); 5862 5863 WriteLiteral(" class=\"is-flex is-flex-col bg-white\""); 5864 5865 WriteLiteral(">\r\n\r\n <div"); 5866 5867 WriteLiteral(" class=\"overlay\""); 5868 5869 WriteLiteral(">\r\n <div"); 5870 5871 WriteLiteral(" class=\"loader\""); 5872 5873 WriteLiteral(">\r\n <div"); 5874 5875 WriteLiteral(" class=\"dot\""); 5876 5877 WriteLiteral("></div>\r\n <div"); 5878 5879 WriteLiteral(" class=\"dot\""); 5880 5881 WriteLiteral("></div>\r\n <div"); 5882 5883 WriteLiteral(" class=\"dot\""); 5884 5885 WriteLiteral("></div>\r\n <div"); 5886 5887 WriteLiteral(" data-bind=\"if: stuffLoading() === true\""); 5888 5889 WriteLiteral(">\r\n <p"); 5890 5891 WriteLiteral(" class=\"loaderText\""); 5892 5893 WriteLiteral(" data-bind=\"text: load().text\""); 5894 5895 WriteLiteral("></p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n" + 5896 ""); 5897 5898 WriteLiteral(" "); 5899 5900 5901 #line 1273 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5902 Write(RenderNewsletter()); 5903 5904 5905 #line default 5906 #line hidden 5907 WriteLiteral("\r\n\r\n </div>\r\n\r\n <script"); 5908 5909 WriteLiteral(" src=\"https://www.youtube.com/iframe_api\""); 5910 5911 WriteLiteral("></script>\r\n <script"); 5912 5913 WriteLiteral(" src=\"https://code.jquery.com/jquery-3.1.0.js\""); 5914 5915 WriteLiteral(" integrity=\"sha256-slogkvB1K3VOkzAI8QITxV3VzpOnkeNVsKvtkYLMjfk=\""); 5916 5917 WriteLiteral(" crossorigin=\"anonymous\""); 5918 5919 WriteLiteral(">\r\n </script>\r\n <script"); 5920 5921 WriteLiteral(" src=\"/Files/Templates/Designs/Tapas/assets/libraries/quagga/quagga.min.js\""); 5922 5923 WriteLiteral("></script>\r\n <script"); 5924 5925 WriteLiteral(" src=\"/Files/Templates/Designs/Tapas/assets/libraries/blueimp/blueimp.js\""); 5926 5927 WriteLiteral("></script>\r\n <script"); 5928 5929 WriteLiteral(" type=\"text/javascript\""); 5930 5931 WriteLiteral(" src=\"//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-5cf750c94b867eee\""); 5932 5933 WriteLiteral("></script>\r\n </div>\r\n\r\n\r\n<script"); 5934 5935 WriteLiteral(" type=\"text/javascript\""); 5936 5937 WriteLiteral(" src=\"/Files/Templates/Designs/Tapas/assets/dist/js/vendor.1cfec2c2251dc0118679.j" + 5938 "s?624d8fb7833a5fcb1ad1\""); 5939 5940 WriteLiteral("></script>\r\n<script"); 5941 5942 WriteLiteral(" type=\"text/javascript\""); 5943 5944 WriteLiteral(" src=\"/Files/Templates/Designs/Tapas/assets/dist/js/main.c436378ee4c4cc6d1eef.js?" + 5945 "624d8fb7833a5fcb1ad1\""); 5946 5947 WriteLiteral("></script></body>\r\n"); 5948 5949 5950 #line 1288 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5951 if (Firstweb.Custom.CustomCode.Tapas.Context.Current.ShopFunctionsVisibility.ShowShopFunctions()) 5952 { 5953 5954 5955 #line default 5956 #line hidden 5957 WriteLiteral(" <script>\r\n\t\tfunction animateCart(_e)\r\n\t\t{\r\n\t\t\tvar btn = $(_e.srcElement);\r\n\t\t" + 5958 "\tif (btn.prop(\"tagName\") == \"INPUT\")\r\n\t\t\t\tbtn = btn.parent().find(\".js-product-b" + 5959 "uy-btn\");\r\n\t\t\t\r\n\t\t\tvar isAlreadyActive = btn.attr(\"data-addedtocart-active\");\r\n\t" + 5960 "\t\tvar orgText = \"\";\r\n\t\t\tif (isAlreadyActive == null || isAlreadyActive == \"\")\r\n\t" + 5961 "\t\t{\r\n\t\t\t\tvar orgText = btn.html();\r\n\t\t\t\tbtn.attr(\"data-addedtocart-active\", \"tru" + 5962 "e\");\r\n\t\t\t\tvar newText = btn.attr(\"data-addedtocarttext\") + \'&nbsp;<i class=\"fas " + 5963 "fa-check\"></i>\';\r\n\t\t\t\tbtn.html(newText);\r\n\t\t\t}\r\n\t\t\r\n\t\t\tsetTimeout( function() {\r" + 5964 "\n\t\t\t\t$(\'.go-to-cart\').addClass(\'added\');\r\n\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\t$(\'." + 5965 "go-to-cart\').removeClass(\'added\');\r\n\t\t\t\t\tif (orgText !== \"\") {\r\n\t\t\t\t\t\tbtn.attr(\"" + 5966 "data-addedtocart-active\", \"\");\r\n\t\t\t\t\t\tbtn.html(orgText);\r\n\t\t\t\t\t}\r\n\t\t\t\t}, 3000); " + 5967 "\r\n\t\t\t\r\n\t\t\t},700);\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t\t\r\n\t\t}\r\n\t\r\n $(document).ready(function (" + 5968 ") {\r\n $(document).ready(function () {\r\n window.setInte" + 5969 "rval(function () {\r\n $.ajax({\r\n url: \"" + 5970 "/api/session/user/get?t=\" + new Date().getTime(),\r\n succe" + 5971 "ss: function (data) {\r\n if (!data.IsLoggedIn) {\r\n " + 5972 " $(\".js-signedout-modal\").on(\"hidden.bs.modal\", funct" + 5973 "ion (evt) {\r\n document.location.reload();\r\n " + 5974 " })\r\n\r\n if (!$(\".js-" + 5975 "signedout-modal\").is(\':visible\')) {\r\n $(\".js-" + 5976 "signedout-modal\").modal(\"show\");\r\n }\r\n " + 5977 " }\r\n }\r\n });\r\n " + 5978 " }, 60000);\r\n\r\n });\r\n $(\'#extraEmployeeProductInfo\'" + 5979 ").on(\'show.bs.modal\', function (e) {\r\n var loadurl = $(e.relatedT" + 5980 "arget).data(\'load-url\');\r\n $(this).find(\'.modal-body\').load(loadu" + 5981 "rl);\r\n\r\n });\r\n });\r\n </script>\r\n"); 5982 5983 5984 #line 1351 "E:\Dynamicweb\bikepartner.D365LIVE\Files\Templates\Designs\Tapas\_parsed\Article.parsed.cshtml" 5985 } 5986 5987 5988 #line default 5989 #line hidden 5990 WriteLiteral("</html>\r\n\r\n\r\n"); 5991 5992 WriteLiteral("\r\n"); 5993 5994 WriteLiteral("\r\n"); 5995 5996 } 5997 } 5998 } 5999

1 @inherits RazorTemplateBase<RazorTemplateModel<Template>> 2 @using Dynamicweb.Rendering; 3 @using System.Configuration; 4 @using System.Collections.Generic; 5 @using Dynamicweb.Core; 6 @using System.Web; 7 @using Dynamicweb.Environment; 8 9 @{ 10 //Pages 11 string CurrentPageId = Dynamicweb.Frontend.PageView.Current().ID.ToString(); 12 string CurrentAreaId = Dynamicweb.Frontend.PageView.Current().AreaID.ToString(); 13 14 string instantSearch_PageId = Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId("instantsearch"); 15 string cart_PageId = Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId("cart"); 16 string productCatalog_PageId = Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId("productcatalog"); 17 string login_PageId = Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId("login"); 18 string mycustomers_PageId = Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId("mycustomers"); 19 20 bool isCheckout = (CurrentPageId == cart_PageId); 21 22 //logo and fav icons 23 string logo = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=320&Height=60&Compression=100&Crop=5", Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("Logo", "files/templates/designs/tapas/assets/img/TapasLogoMountain.svg")); 24 25 string favIcon = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("FavIcon"); 26 string small = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=16&Height=16&Compression=90&Crop=0", favIcon); 27 string medium = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=32&Height=32&Compression=90&Crop=0", favIcon); 28 string large = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=96&Height=96&Compression=90&Crop=0", favIcon); 29 string olderIphone = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=120&Height=120&Compression=90&Crop=0", favIcon); 30 string iphone6 = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=180&Height=180&Compression=90&Crop=0", favIcon); 31 string retina = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=152&Height=152&Compression=90&Crop=0", favIcon); 32 string ipadPro = string.Format("/Admin/Public/GetImage.ashx?Image={0}&Width=167&Height=167&Compression=90&Crop=0", favIcon); 33 34 //Footer 35 string companyName = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("CompanyName"); 36 string companyAddress1 = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("CompanyAddress1"); 37 string companyAddress2 = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("CompanyAddress2"); 38 string companyPhone = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("CompanyPhone"); 39 string companyMail = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("CompanyMail"); 40 string companyGroup = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("CompanyGroup"); 41 string companyLink = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetString("CompanyLink"); 42 43 //Translations 44 var translationAddToCart = Translate("Product.AddToCart", "Tilføj til kurv"); 45 var translationAddingToCart = Translate("Product.AddingToCart", "Tilføjer til kurv"); 46 47 var translationGotoCheckout = Translate("Page.GotoCheckout", "Gå til checkout"); 48 var translationQuickOrderFieldPlaceholder = Translate("Page.QuickOrderFieldPlaceholder", "Søg..."); 49 var translationInstantSearchFieldPlaceholder = Translate("Page.InstantSearchFieldPlaceholderLong", "Søg produkter på navn, varenummer, ean mm."); 50 var translationMiniCartHeader = Translate("Page.MiniCartHeader", "Din kurv"); 51 52 var translationQuantity = Translate("Quantity", "Antal"); 53 54 var translationUpdatingCart = Translate("Cart.UpdatingCart", "Opdatere kurv"); 55 var translationCartIsEmpty = Translate("Cart.IsEmpty", "Din kurv er tom"); 56 57 var translationCartTotalAmountInclVAT = Translate("Cart.TotalAmountInclVAT", "Total inkl. moms"); 58 var translationCartTotalAmountExclVAT = Translate("Cart.TotalAmountExclVAT", "Total eksl. moms"); 59 var translationCartTotalVAT = Translate("Cart.TotalVAT", "Moms"); 60 61 //Google tag manager 62 bool gtmIdDefined = !String.IsNullOrEmpty(GetString("Item.Area.Google_Tag_Manager_ID")); 63 string gtmId = GetString("Item.Area.Google_Tag_Manager_ID"); 64 65 //Misc 66 int searchDebounceInterval = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetInt("SearchDebounceInterval", 500); 67 var enviromentType = System.Configuration.ConfigurationManager.AppSettings["EnvironmentType"] as string; 68 string cssMobileClass = (GetGlobalValue("Global:Device.IsMobile") == "True") ? "js-is-mobile" : string.Empty; 69 string ExcelQuickAdd = "/Default.aspx?id=" + Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId("ExcelAdd"); 70 string InstantSearchResultsHeader = Translate("InstantSearch.ResultsHeader", "S&oslash;geresultat"); 71 } 72 73 <!doctype html> 74 <html lang="en"> 75 76 <head> 77 <script id="Cookiebot" src="https://consent.cookiebot.com/uc.js" data-cbid="41c9d990-3ae8-4379-84a8-d515577b0ac5" data-blockingmode="auto" type="text/javascript"></script> 78 @if (gtmIdDefined) 79 { 80 <!-- Google Tag Manager --> 81 <script> 82 (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 83 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 84 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 85 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 86 })(window,document,'script','dataLayer','@gtmId');</script> 87 <!-- End Google Tag Manager --> 88 } 89 90 <title>@GetValue("Title")</title> 91 @GetValue("MetaTags") 92 @GetValue("CopyRightNotice") 93 94 <meta charset="utf-8"> 95 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 96 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"> 97 98 <link rel="icon" type="image/png" href='@small' sizes="16x16"> 99 <link rel="icon" type="image/png" href='@medium' sizes="32x32"> 100 <link rel="icon" type="image/png" href='@large' sizes="96x96"> 101 <link rel="apple-touch-icon" href='@olderIphone'> 102 <link rel="apple-touch-icon" href='@iphone6'> 103 <link rel="apple-touch-icon" href='@retina'> 104 <link rel="apple-touch-icon" href='@ipadPro'> 105 106 @if (System.Web.HttpContext.Current.Request.Url.Host.ToLower().Contains("1stweb")) 107 { 108 <meta name="robots" content="noindex"> 109 } 110 111 @if (!string.IsNullOrWhiteSpace(enviromentType)) 112 { 113 <meta name="EnviromentType" content="@enviromentType"> 114 } 115 116 <!-- 117 Made by: 118 1st Web 119 Klostergade 56 B 2 th. 120 8000 Aarhus C. 121 www.1stweb.dk 122 --> 123 124 125 <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/js-marker-clusterer/1.0.0/markerclusterer.js"></script> 126 <link href="/Files/Templates/Designs/Tapas/assets/dist/css/main.a39e5c21442a2e94e676ed974dd91d69.css?624d8fb7833a5fcb1ad1" rel="stylesheet">@GetValue("Stylesheets") 127 @GetValue("Javascripts") 128 </head> 129 130 <style> 131 .go-to-cart.added { transition: background-color 1s linear; background-color:#c3d5e7;} 132 133 .quick-action-wrapper { margin-top:0px!important; } 134 135 .btn-transparent, 136 .btn-transparent:hover { background-color: transparent; color: #0f58a0; border: 1px solid #0f58a0;font-weight:normal; padding-left:20px; } 137 138 .btn-transparent i { margin-right:10px;} 139 140 @@media (min-width: 768px) 141 { 142 li.menu-item.offer a span.menu-text.offer {color:#ff0000;} 143 li.menu-item.offer a span.menu-text.active.offer {background-color:#ff0000;} 144 145 } 146 147 /* smartphones, touchscreens */ 148 @@media (hover: none) and (pointer: coarse) { 149 .free-freight-info {display: none;} 150 151 .product-list-item .add-to-cart-area, 152 .product-details .add-to-cart { min-height: 50px;} 153 154 .product-list-item .add-to-cart-area .product-quantity, 155 .product-details .add-to-cart input {height: 42px;width: 56px;font-size: 15px;} 156 157 .product-list-item .add-to-cart-area .btn, 158 .product-details .add-to-cart .btn {font-size: 13px;padding: 12px 10px;flex-grow: 1;} 159 160 .product-list-item .add-to-cart-area .btn {margin-right: 16px;} 161 162 .product-list-item .add-to-cart-area .favorite-list-icon .favorite-list-icon-btn .fa-star, 163 .product-details .add-to-cart .favorite-list-icon .favorite-list-icon-btn .fa-star {margin-top: 12px;margin-left: 11px;} 164 165 .product-list-item .add-to-cart-area .favorite-list-icon .favorite-list-icon-btn, 166 .product-details .add-to-cart .favorite-list-icon .favorite-list-icon-btn {width: 42px;height: 42px;} 167 168 .product-list-item .add-to-cart-area .favorite-list-icon, 169 .product-details .add-to-cart .favorite-list-icon {width: 42px;height: 42px;} 170 } 171 172 173 </style> 174 175 176 <body data-bind="click: closeMenu(), 177 css: { 'loading': stuffLoading}, 178 style: {'overflow-y' : (appModalOpened() == 'cart-quick-view') ? 'hidden' : 'scroll'}, 179 modals: { modalOpened: appModalOpened, previousModals: previousAppModalOpened }, 180 closeMenuItems: { menuOpenObservable: appModalOpened, miniCartVisibleObservable: miniCartVisible }" class="is-flex is-flex-col @cssMobileClass"> 181 182 @SnippetStart("DropDownMenuArrow") 183 184 <i class="fas fa-chevron-down drop-down-arrow"></i> 185 186 @SnippetEnd("DropDownMenuArrow") 187 188 189 190 <div class="desktopSection min-height-100-vh" data-bind="css: { 'open': showResponsiveMenu }"> 191 192 <nav class="top-content-navigation"> 193 194 <div class="container"> 195 196 <div class="is-flex"> 197 198 <div></div> 199 200 <div class="link-list"> 201 202 @GetValue("DwNavigation(contentnav)") 203 204 <div class="xs-m-l-2"> 205 @RenderLogin(CurrentAreaId, login_PageId) 206 </div> 207 208 </div> 209 </div> 210 211 </div> 212 213 </nav> 214 215 @*<section class="top-navigation"> 216 <div class="container"> 217 <div class="row"> 218 <div class="col-md-5 col-sm-5 col-xs-5"> 219 @RenderWebsites(CurrentAreaId) 220 </div> 221 222 <div class="col-xs-12 col-sm-7 col-md-7 col-lg-7"> 223 @RenderLogin(CurrentAreaId, login_PageId) 224 </div> 225 </div> 226 </div> 227 </section>*@ 228 229 230 <header class="menuWrap" data-bind="viewModel: 'HeaderViewModel', floatingMenu: { heightDecider: '.js-menubar', placeholder: '.js-placeholder' }"> 231 <div class="menuBar xs-is-flex sm-is-flex md-is-flex js-menubar"> 232 <div class="logo-menu-container position-relative"> 233 <div class="container xs-width-100 sm-width-100 xs-p-l-0 xs-p-r-0 md-p-l-2 md-p-r-2"> 234 <div class="row is-flex xs-m-l-0 xs-m-r-0 navbar-height"> 235 236 <section class="right-menu col-xs-12 xs-p-r-0 xs-p-l-0 position-static is-flex xs-flex-wrap"> 237 <div class="pull-left mobile-menu-opener" data-bind="click: toggleMobileMenu"> 238 <i class="fas fa-bars"></i> 239 </div> 240 <a class="logo-container" href="/"> 241 <img class="logo img-responsive ie-logo-width" src='@logo' alt="logo"> 242 </a> 243 244 <div class="quickActions js-menu-item-parent clearfix"> 245 246 <div class="instant-search-wrapper"> 247 <instant-search params="{ 248 opened: appModalOpened() == 'instant-search', 249 instantSearchPageId: '@instantSearch_PageId', 250 productCatalogPageId: '@productCatalog_PageId', 251 searchResults: instantSearchResult, 252 instantSearchPlaceholder: '@translationInstantSearchFieldPlaceholder', 253 instantSearchResultsHeader: '@InstantSearchResultsHeader', 254 onAddToCart: function(id, qty) { 255 addItemToCart(id, qty, '', '', '@translationAddToCart') 256 }, 257 onSearchObservable: instantSearchObservable, 258 debounceInterval: @searchDebounceInterval, 259 onSubmitSearch: function(query) { 260 window.location.href = '/Default.aspx?ID=@productCatalog_PageId&Search=' + query; 261 }, 262 stuffLoadingQueue: stuffLoadingQueue 263 }"></instant-search> 264 </div> 265 266 @if (Firstweb.Custom.CustomCode.Tapas.Context.Current.ShopFunctionsVisibility.ShowShopFunctions()) 267 { 268 <div class="quick-action-wrapper go-to-cart"> 269 <a href="/default.aspx?id=@cart_PageId" class="quick-action-button tertiary-font clear-button xs-p-l-1 xs-p-r-1 md-p-r-0"> 270 <div class="quick-search-content"> 271 <i class="fas fa-shopping-cart" style="font-size:19px;"></i> 272 <span class="quick-action-button-label pull-right" data-bind="text: cart().TotalProductLines"></span> 273 </div> 274 </a> 275 276 <div data-bind="visible: cart().TotalProductLines() != 0, css: { 'open': freightInfoOpen }" class="free-freight-info"> 277 <div class="freight-icon"> 278 <i class="fas fa-truck"></i> 279 <div class="free-freight-indicator"> 280 281 <div style="display:none;" class="freight-information" data-bind="visible: cart().FreeFreightGapAmount() == 0"> 282 <p> 283 <i class="fas fa-check"></i> @Translate("Cart.FreeFreightObtainedText", "Ordren er nu fragtfri") 284 </p> 285 </div> 286 <div style="display:none;" class="freight-information" data-bind="visible: cart().FreeFreightGapAmount() != 0"> 287 <p> 288 @Translate("Cart.FreeFreightNotObtainedTextShort", "Beløb til fri fragt") 289 </p> 290 <p class="sum" data-bind="text:cart().FreeFreightGapAmountFormatted"></p> 291 </div> 292 293 </div> 294 </div> 295 </div> 296 297 </div> 298 299 <div class="quick-action-wrapper hidden-xs hidden-sm"> 300 <button class="quick-action-button tertiary-font clear-button xs-p-r-1 xs-p-l-1 md-m-l-3 md-m-r-3" data-bind=" 301 toggleMenuModal: { target: 'quick-order', modalObservable: appModalOpened }, 302 css: { 'quick-action-button--active': appModalOpened() === 'quick-order' }"> 303 <i class="fa fa-bolt"></i> 304 <div style="font-size:9px;margin-top:4px;">LYNBESTIL</div> 305 </button> 306 307 <quick-order params="{ 308 opened: appModalOpened() === 'quick-order', 309 instantSearchPageId: '@instantSearch_PageId', 310 updateCartLabel: '@translationUpdatingCart', 311 addToCartLabel: '@translationAddToCart', 312 searchResults: quickOrderSearchResult, 313 debounceInterval: @searchDebounceInterval, 314 onSearchObservable: quickOrderObservable, 315 translatePlaceholder: '@translationQuickOrderFieldPlaceholder', 316 excelLink: '@ExcelQuickAdd', 317 onAddToCart: function(id, qty) { 318 addItemToCart(id, qty, '', '', '@translationAddToCart'); 319 }}"></quick-order> 320 </div> 321 } 322 323 </div> 324 @*<div class="instant-search-wrapper visible-xs visible-sm mobile-instant-search"> 325 <instant-search params="{ 326 opened: appModalOpened() == 'instant-search', 327 instantSearchPageId: '@instantSearch_PageId', 328 searchResults: instantSearchResult, 329 instantSearchPlaceholder: '@translationInstantSearchFieldPlaceholder', 330 onAddToCart: function(id, qty) { 331 addItemToCart(id, qty, '', '', '@translationAddToCart') 332 }, 333 onSearchObservable: instantSearchObservable, 334 debounceInterval: @searchDebounceInterval, 335 onSubmitSearch: function(query) { 336 window.location.href = '/Default.aspx?ID=@productCatalog_PageId&Search=' + query; 337 } 338 }"></instant-search> 339 </div>*@ 340 </section> 341 </div> 342 </div> 343 344 @if (Firstweb.Custom.CustomCode.Frontend.Helpers.Users.IsEmployee()) 345 { 346 if (Firstweb.Custom.CustomCode.Frontend.Helpers.SecondaryUsers.IsImpersonating()) 347 { 348 var currentCustomer = Dynamicweb.Security.UserManagement.User.GetCurrentExtranetUser(); 349 string CustomerInfo = currentCustomer != null ? $"{currentCustomer.Name} ({currentCustomer.CustomerNumber})" : ""; 350 351 <div _style="background-color: #ff6a00; color: white; padding-top: 8px; padding-bottom: 7px;" class="impersonation-bar is-impersonating"> 352 <div class="container"> 353 <i class="fas fa-user"></i><span class="hidden-xs hidden-sm">@Translate("Usermenu.MenuText.LoggedInAsCustomer", "Du er logget ind som kunde"): </span><b>@CustomerInfo</b> 354 355 <a href="@Firstweb.Custom.CustomCode.Frontend.Helpers.Page.GetStopImpersonatingLink()" class="stop-impersonation" _style="margin-left:20px;color:#fff;border:1px solid #fff;border-radius:4px;padding:2px 5px;"> 356 <span>@Translate("Usermenu.MenuText.StopImpersonating", "Log af som kunde")</span> 357 </a> 358 359 </div> 360 </div> 361 362 363 } 364 else 365 { 366 <div _style="background-color: #c3d5e7; color: #1e2a01; padding-top: 8px; padding-bottom: 7px;" class="impersonation-bar"> 367 <div class="container"> 368 <i class="fas fa-user"></i>@Translate("Usermenu.MenuText.LoggedInAsSales", "Du er logget ind som sælger") 369 <a href="/default.aspx?ID=@mycustomers_PageId" _style="margin-left:20px;color: #1e2a01; border: 1px solid #1e2a01; border-radius: 4px; padding: 2px 5px; " class="goto-impersonation"> 370 @Translate("Usermenu.MenuText.GotoYourCustomers", "Log ind som kunde") 371 </a> 372 </div> 373 </div> 374 } 375 } 376 </div> 377 <nav class="container nav-container" data-bind="css: { 'open': mobileMenuOpen }, menuState: { menuItemsSelector: '.js-menu-item', openClass: 'open', toggler: '.js-toggle-menu', submenuContainer: '.js-submenu', menuCloser: 'js-menu-closer' }"> 378 <div class="mobile-menu-closer"> 379 <i class="fas fa-times icon-close" data-bind="click: toggleMobileMenu"></i> 380 </div> 381 @RenderNavigation(new 382 { 383 template = "mainmenu.xslt", 384 expandmode = "all", 385 startlevel = "1", 386 endlevel = "10", 387 groupId = !String.IsNullOrEmpty(Dynamicweb.Context.Current.Request.GetString("GroupID")) ? Dynamicweb.Context.Current.Request.GetString("GroupID") : "NOGROUP" 388 }) 389 </nav> 390 </div> 391 <div class="floatingPlaceholder js-placeholder"></div> 392 </header> 393 394 @inherits RazorTemplateBase<RazorTemplateModel<Template>> 395 @using Dynamicweb.Rendering; 396 397 398 @inherits RazorTemplateBase<RazorTemplateModel<Template>> 399 @using Dynamicweb.Rendering; 400 @using System.Text.RegularExpressions; 401 @using Dynamicweb.Environment; 402 403 404 @helper renderProduct(bool showShopFunctionsAlternativeIfNotLoggedIn, LoopItem product, bool renderAs4Cols = false) 405 { 406 bool isBlocked = product.GetBoolean("Ecom:Product:Field.NAVIsBlocked"); 407 408 bool IsPurchaceProduct = (product.GetString("Ecom:Product:Field.NAVPurposeID") == "SKAFFE"); 409 410 string productID = product.GetString("Ecom:Product.ID"); 411 string productNumber = product.GetString("Ecom:Product.Number"); 412 string mainProductID = product.GetString("Ecom:Product:Field.FirstwebMainProductID"); 413 string PrimaryProductPageId = Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId("productcatalog"); 414 415 string productLink = product.GetString("Ecom:Product.Link.Clean"); 416 417 if (!String.IsNullOrEmpty(PrimaryProductPageId)) 418 { 419 productLink = "/Default.aspx?id=" + PrimaryProductPageId + "&productid=" + productID; 420 } 421 422 string languageId = product.GetString("Ecom:Product.LanguageID"); 423 string variantId = product.GetString("Ecom:Product.VariantID"); 424 425 string productName = product.GetString("Ecom:Product.Name"); 426 string productShortDescription = product.GetString("Ecom:Product.ShortDescription"); 427 428 double nettoPrice = product.GetDouble("Ecom:Product.Price.PriceWithoutVAT"); //GetString("Firstweb:ErpPriceInfo.NettoPriceFormatted"); 429 string bruttoPrice = product.GetString("Firstweb:EcomProduct:BruttoPriceFormattedWithSymbol"); 430 431 double bruttoPriceDouble = product.GetDouble("Firstweb:EcomProduct:BruttoPrice"); 432 double deltaBruttoNetto = Math.Abs(bruttoPriceDouble - nettoPrice); 433 if (product.GetBoolean("Firstweb:EcomProduct:BruttoPriceIsConverted") && deltaBruttoNetto < 0.5) 434 { 435 bruttoPrice = product.GetString("Ecom:Product.Price.PriceWithoutVATFormatted"); 436 } 437 438 string availableAmount = product.GetString("Firstweb:ErpStockInfo.StockQuantity"); 439 string stockColor = product.GetString("Firstweb:ErpStockInfo.StockColor"); 440 bool priceAndStockFound = product.GetBoolean("Firstweb:ErpPriceInfo.PriceAndStockFound"); 441 bool priceFound = product.GetBoolean("Firstweb:ErpPriceInfo.PriceFound"); 442 bool hasQuantityPrices = product.GetBoolean("Firstweb:ErpPriceInfo.HasQuantityPrices"); 443 string RRPrice = product.GetString("Firstweb:ErpPriceInfo:Prices.RRPFormatted"); 444 445 int productPackagingQuantity = product.GetInteger("Ecom:Product:Field.NAVMinQuantity"); 446 int defaultQuantity = productPackagingQuantity > 0 ? productPackagingQuantity : 1; 447 448 bool hasVariants = (product.GetLoop("VariantCombinations").Count() > 0); 449 450 //Images 451 List<Dynamicweb.Ecommerce.Products.Detail> productImages = Firstweb.Custom.CustomCode.Frontend.Helpers.ProductImages.GetProductImages(languageId, productID, variantId); 452 Dynamicweb.Ecommerce.Products.Detail primaryProductImage = productImages.FirstOrDefault(x=>x.IsDefault); //Tag you can use instead: product.GetString("Ecom:Product.ImageDefault.Clean"); 453 //check for valid default image 454 if (primaryProductImage == null) 455 { 456 primaryProductImage = new Dynamicweb.Ecommerce.Products.Detail { Value = "" }; 457 } 458 else if (primaryProductImage.Value == null) 459 { 460 primaryProductImage.Value = ""; 461 } 462 463 //Sorted: first by imagegroup then by sortorder 464 //@foreach (var productImage in productImages) 465 //{ 466 //productImage.Value; //This is the imagepath eks. /Images/products/R12155_10_2.jpg 467 //productImage.IsDefault; //If the image is default or not. 468 //} 469 470 string primaryProductImageUrl = "/admin/public/getimage.ashx?image=" + primaryProductImage.Value + "&altFmImage_path=/Files/Images/ecom/Products/no-image.jpg&width=500&height=300&Compression=90&Crop=5"; 471 if (String.IsNullOrEmpty(primaryProductImage.Value)) 472 { 473 primaryProductImageUrl = "/admin/public/getimage.ashx?image=/Files/Images/ecom/Products/no-image.jpg&width=500&height=300&Compression=90&Crop=5"; 474 } 475 476 //Other packagings 477 var otherPackagingProducts = Firstweb.Custom.CustomCode.Frontend.Helpers.OtherPackagingProducts.GetOtherPackagingProducts(mainProductID, false).Where(i => i.Id != productID); 478 var showOtherPackagingProducts = otherPackagingProducts.Count() > 0; 479 480 481 //Customer product number 482 //string customerProductNumber = Firstweb.Custom.CustomCode.Frontend.Helpers.CustomerProductNumbers.GetCustomerProductNumber(productID); 483 484 //OrderTemplate 485 int productInFavoritLists = product.GetInteger("Firstweb:Ecom:Product:OrderTemplate.InTemplates.Count"); 486 487 string orderLineId = product.GetString("Firstweb:OrderTemplate:Line.ID"); 488 string orderTemplateId = product.GetString("Firstweb:OrderTemplate:Line.OrderTemplateID"); 489 int orderLineQuantity = product.GetInteger("Firstweb:OrderTemplate:Line.Quantity"); 490 491 bool inFavourite = productInFavoritLists > 0 ? true : false; 492 string inFavouriteBoolJS = inFavourite.ToString().ToLower(); 493 494 bool isOrderTemplate = !String.IsNullOrEmpty(orderLineId); 495 496 string productPriceCacheKey = orderLineId != "" ? orderLineId : productNumber; 497 498 499 500 501 string stock = ""; 502 503 string addBorderCss = isOrderTemplate ? "border-1" : ""; 504 505 506 if (!priceAndStockFound) 507 { 508 stock = "asyncLoad"; 509 } 510 else 511 { 512 stock = availableAmount; 513 } 514 515 string WidthClass = renderAs4Cols ? "col-md-4 col-lg-3" : "col-md-4"; 516 bool ShowShopFunctions = Firstweb.Custom.CustomCode.Tapas.Context.Current.ShopFunctionsVisibility.ShowShopFunctions(); 517 string BrandLogo = "/admin/public/getimage.ashx?image=" + product.GetString("Ecom:Product:Field.FirstwebBrandLogo.Value.FullPath") + "&height=25&crop=5"; 518 string BrandName = product.GetString("Ecom:Product:Field.FirstwebBrand.Value.Clean"); 519 string AddingToCartText = Translate("Product.AddingToCart", "Tilføjer produkt"); 520 string PickListText = Translate("Ordertemplate.SelectList", "Vælg en liste"); 521 bool ShowBeforePrice = product.GetBoolean("Firstweb:EcomProduct:DisplayBeforePrice"); 522 string BeforePriceFormatted = product.GetString("Firstweb:EcomProduct:BeforePriceFormattedWithSymbol"); 523 string StockStatus = product.GetString("Firstweb:StockStatusColor"); //hvis rød og confirmed deliverydate - hvis dato 524 string StockLabel = product.GetString("Firstweb:StockStatusTitle"); 525 string ConfirmedDeliveryDate = product.GetString("Ecom:Product:Field.NAVConfirmedDeliveryDate.Value.Clean"); 526 bool NotInStock = product.GetBoolean("Firstweb:NotInStock"); 527 bool ShowQuantityPrices = product.GetBoolean("Firstweb:EcomProduct:ShowQuantityPricelistIcon"); 528 string Collisize = product.GetString("Ecom:Product:Field.NAVColli"); 529 string CatalogueRemark = product.GetString("Ecom:Product:Field.NAVCatalogRemark.Value"); 530 bool HidePrices = Firstweb.Custom.CustomCode.Frontend.Helpers.Product.HidePrices(); 531 string productCurrency = product.GetString("Ecom:Product.Currency.Symbol"); 532 533 IEnumerable<Dynamicweb.Ecommerce.Products.ProductRelated> replacementProducts = Firstweb.Custom.CustomCode.Frontend.Helpers.Product.GetReplacementProducts(productID); 534 535 bool HasSimilarProducts = Firstweb.Custom.CustomCode.Frontend.Helpers.Product.HasSimilarProducts(productID); 536 537 538 bool showSubInfoContainer = (HasSimilarProducts) || (ShowShopFunctions && (ShowQuantityPrices && !HidePrices)); 539 540 string showSubInfoClass = "show-subinfo"; 541 542 int backorderRemaining = 0; 543 bool inBackorders = Firstweb.Custom.CustomCode.Frontend.Helpers.Backordre.InBackorders(productNumber, out backorderRemaining); 544 string addToCartWarningText = inBackorders ? Translate("Cart.RestorderFirstPart", "Du har allerede") + " " + backorderRemaining + " " + Translate("Cart.RestorderSecondPart", "i restorder af denne.") : ""; 545 string addToCartWarningTextConfirmation = inBackorders ? addToCartWarningText + " - " + Translate("Cart.RestorderConfirm", "Vil du forsætte?") : ""; 546 547 548 <!-- ko viewModel: 'ProductViewModel'--> 549 <!-- ko initValue: {observable: ProductId, value:'@productID'}--><!-- /ko--> 550 <div class="col-xs-12 col-sm-6 @WidthClass xs-m-b-3 price product-tile" data-productid="@productNumber" data-productkey="@productPriceCacheKey" data-test="@PrimaryProductPageId"> 551 <div class="product-list-item bg-white position-relative @showSubInfoClass"> 552 553 <a href="@productLink"> 554 @if (!String.IsNullOrEmpty(CatalogueRemark)) 555 { 556 <div class="catalogue-remark">@CatalogueRemark</div> 557 } 558 <div class="brand-image"> 559 @if (!String.IsNullOrEmpty(product.GetString("Ecom:Product:Field.FirstwebBrandLogo.Value.FullPath"))) 560 { 561 <img src="@BrandLogo" alt="@BrandName"> 562 } 563 </div> 564 <div class="product-image"> 565 <img src="@primaryProductImageUrl" alt="@productName" style="max-height:150px;"> 566 </div> 567 <div class="product-info"> 568 <p class="product-info-top"><span class="product-number">@productNumber</span><span class="product-colli">@Translate("Product.ColliSize", "Kolli"): @Collisize</span></p> 569 <p class="product-name">@productName</p> 570 571 </div> 572 @if (!isBlocked) 573 { 574 575 576 if (ShowShopFunctions) 577 { 578 <div class="productlist-price-area "> 579 <div class="width-50"> 580 @if (IsPurchaceProduct) 581 { 582 <p class="purchace-product text-left"> 583 <i class="far fa-truck"></i> @Translate("Product.PurchaceProduct", "Skaffevare") 584 </p> 585 } 586 else 587 { 588 <p class="stock-indicator"> 589 <span class="stock-load-async" style="background-color: @StockStatus"></span> 590 <span class="stock-name">@StockLabel</span> 591 <span class="stock-name js-in-stock-again hide">@Translate("Product.StockExpectedAgaing", "P&aring; lager: ")<span class="js-stock-date"></span></span> 592 </p> 593 if (NotInStock && !String.IsNullOrEmpty(ConfirmedDeliveryDate)) 594 { 595 <p class="stock-cdd">@Translate("Product.ConfirmedDeliveryDate", "På lager"): @ConfirmedDeliveryDate</p> 596 } 597 598 if (StockStatus == "#009600") 599 { 600 <p class="stock-cdd">@Translate("Product.OnStockDeliveryText", "Levering: 1-2 dage")</p> 601 } 602 } 603 604 </div> 605 <div class="width-50"> 606 607 @if (!HidePrices) 608 { 609 610 <p><span class="price-display-normalprice">@bruttoPrice</span></p> 611 <p><span class="price-display-yourprice">@product.GetString("Ecom:Product.Price.PriceWithoutVATFormatted")</span></p> 612 if (ShowBeforePrice && 1==0) 613 { 614 <p><span class="price-display-medium-label">@Translate("Product.Beforeprice", "F&oslash;rpris")</span> <span class="price-display-medium">@BeforePriceFormatted</span></p> 615 } 616 } 617 </div> 618 </div> 619 620 621 } 622 } 623 624 </a> 625 @if (!isBlocked) 626 { 627 if (ShowShopFunctions) 628 { 629 <div class="add-to-cart-area"> 630 @if (isOrderTemplate) 631 { 632 <!-- ko initValue: {observable: Quantity, value:@orderLineQuantity}--><!-- /ko--> 633 } 634 else 635 { 636 <!-- ko initValue: {observable: Quantity, value:@defaultQuantity}--><!-- /ko--> 637 } 638 <input class="product-quantity js-product-quantity" type="number" name="quantity" data-bind="value: Quantity, event: { keypress: function() { if (window.event.keyCode == 13) { $parent.addItemToCart(ProductId(), $(window.event.target).val(), '', '', '@AddingToCartText'); animateCart(event); } return true;}}"> 639 <div title="@addToCartWarningText" class="btn btn-primary js-product-buy-btn" data-addedtocarttext="@Translate(" product.addedtocart",="" "varen="" er="" tilføjet")"="" data-bind="click: function() { if ('@inBackorders' == 'False' || confirm('@addToCartWarningTextConfirmation')) { $parent.addItemToCart(ProductId(), Quantity(), '', '', '@AddingToCartText'); animateCart(event); }}" data-productid="@productID"> 640 @Translate("Product.AddToCart", "TILFØJ TIL KURV") 641 642 @if (inBackorders) 643 { 644 <i class="fas fa-exclamation-triangle"></i> 645 } 646 </div> 647 <div class="not-in-stock-indicator js-not-in-stock-indicator hide"> 648 <p>@Translate("Product.NotInStock", "Ikke p&aring; lager")</p> 649 </div> 650 @if (!isOrderTemplate) 651 { 652 <div class="favorite-list-icon" data-toggle="modal" data-target="#modal-@productID" data-bind="with: OrderTemplateViewModel"> 653 <div class="favorite-list-icon-btn" data-bind=" 654 oninit: function() { IsInFavoriteList('@inFavourite'.toLowerCase()) }, 655 css : { showFavorite : ShowOrderTemplateDialog, showNewList : OrderTemplateShowNewList, added: IsInFavoriteList() == 'true', notadded: IsInFavoriteList() == 'false' }, 656 click: ToggleOrderTemplateDialog"> 657 <i class="fas fa-star"></i> 658 </div> 659 </div> 660 <div class="modal fade" id="modal-@productID" tabindex="-1" role="dialog" data-bind="with: OrderTemplateViewModel"> 661 <!-- ko initValue: {observable: OrderTemplateRelationCount, value:'@productInFavoritLists'}--><!-- /ko--> 662 <!-- ko initValue: {observable: ShowInFavourite, value: @inFavouriteBoolJS}--><!-- /ko--> 663 <!-- ko initValue: {observable: ModalSelector, value: '#modal-@productID'}--><!-- /ko--> 664 <div class="modal-dialog" role="document"> 665 <div class="modal-content fav-list"> 666 667 <p class="favlist-header">@Translate("Ordertemplate.AddToExistingList", "Tilføj til eksisterende favoritliste")</p> 668 669 <div class="existing-lists"> 670 671 <select class="favField select-fix" data-bind="options: OrderTemplateList, 672 optionsCaption: '@PickListText', 673 optionsText: function(item) { return item.Value.Name() + ' (' + item.Value.Count() + ')' }, 674 value: OrderTemplateSelectedList"></select> 675 676 <input class="product-quantity" type="number" name="quantity" data-bind="textInput: OrderTemplateQuantity"> 677 678 <div class="btn btn-primary" data-bind="click: function() { 679 OrderTemplateShowNewList() 680 ? CreateNewOrderTemplateList('@productID') 681 : AddProductToOrderTemplate('@productID' , OrderTemplateQuantity()) 682 }"> 683 @Translate("Ordertemplate.AddToList", "Tilføj") 684 </div> 685 686 </div> 687 688 <p class="or-text">@Translate("Ordertemplate.OrNewList", "eller...")</p> 689 690 <p class="favlist-header">@Translate("Ordertemplate.AddToNewList", "Tilføj til ny favoritliste")</p> 691 692 <form id="EditForm-@productID" name="EditForm"> 693 <label class="xs-m-b-1" for="name">@Translate("Ordertemplate.ListName", "Favoritliste navn")</label> 694 <div class="new-list"> 695 <input type="text" name="name" _id="name" data-bind="textInput: OrderTemplateNewListName" autofocus="" autocomplete="off"> 696 697 <input class="product-quantity" type="number" name="quantity" data-bind="textInput: OrderTemplateNewListQuantity"> 698 699 <button type="submit" class="btn btn-primary" _id="btnSave" data-bind="click: function() { CreateNewOrderTemplateList('@productID', OrderTemplateNewListQuantity()) }"> 700 @Translate("Ordertemplate.SaveToNewList", "Tilføj til ny favoritliste") 701 </button> 702 </div> 703 </form> 704 705 </div> 706 </div> 707 </div> 708 } 709 else 710 { 711 <div class="favorite-list-icon" data-bind="with: OrderTemplateViewModel"> 712 <!-- ko initValue: {observable: OrderTemplateId, value:'@orderTemplateId'}--><!-- /ko--> 713 <!-- ko initValue: {observable: OrderTemplateLineId, value:'@orderLineId'}--><!-- /ko--> 714 <i class="fas fa-times" data-bind=" 715 oninit: function() { IsInFavoriteList('@inFavourite'.toLowerCase()) }, 716 css: { showFavorite: ShowOrderTemplateDialog, showNewList: OrderTemplateShowNewList, active: IsInFavoriteList() == 'true' }, 717 click: DeleteOrderTemplateLine"> 718 </i> 719 </div> 720 } 721 </div> 722 } 723 724 if (showSubInfoContainer) 725 { 726 <div class="subinfo-container"> 727 @if (HasSimilarProducts && 1==2) 728 { 729 <a href="@productLink" class="similarproducts-info">@Translate("Product.HasSimilarProducts", "Lignende produkter")</a> 730 } 731 @if (ShowShopFunctions) 732 { 733 if (ShowQuantityPrices && !HidePrices) 734 { 735 <div class="quantity-prices-container"> 736 @RenderQuantityPrices(productNumber, productCurrency, productID) 737 </div> 738 } 739 740 } 741 742 743 </div> 744 } 745 746 747 } 748 else 749 { 750 @RenderReplacementProducts(replacementProducts, PrimaryProductPageId) 751 } 752 </div> 753 754 </div> 755 <!-- /ko--> 756 } 757 758 759 760 761 762 @helper renderRelatedProduct(LoopItem repatedProduct) 763 { 764 string productID = repatedProduct.GetString("Ecom:Product.ID"); 765 string productNumber = repatedProduct.GetString("Ecom:Product.Number"); 766 string mainProductID = GetString("Ecom:Product:Field.FirstwebMainProductID"); 767 768 string productName = repatedProduct.GetString("Ecom:Product.Name"); 769 string productDescription = GetString("Ecom:Product.LongDescription"); 770 string productShortDescription = GetString("Ecom:Product.ShortDescription"); 771 772 string nettoPrice = repatedProduct.GetString("Firstweb:ErpPriceInfo.NettoPriceFormatted"); 773 int bruttoPrice = repatedProduct.GetInteger("Firstweb:ErpPriceInfo.BruttoAmountFormattedNoSymbol"); 774 775 int productPackagingQuantity = repatedProduct.GetInteger("Ecom:Product:Field.NAVMinQuantity"); 776 int defaultQuantity = productPackagingQuantity > 0 ? productPackagingQuantity : 1; 777 778 string languageId = repatedProduct.GetString("Ecom:Product.LanguageID"); 779 string variantId = repatedProduct.GetString("Ecom:Product.VariantID"); 780 781 int productInFavoritLists = GetInteger("Firstweb:Ecom:Product:OrderTemplate.InTemplates.Count"); 782 783 List<Dynamicweb.Ecommerce.Products.Detail> productImages = Firstweb.Custom.CustomCode.Frontend.Helpers.ProductImages.GetProductImages(languageId, productID, variantId); 784 Dynamicweb.Ecommerce.Products.Detail primaryProductImage = productImages.FirstOrDefault(x=>x.IsDefault); //Tag you can use instead: product.GetString("Ecom:Product.ImageDefault.Clean"); 785 //check for valid default image 786 if (primaryProductImage == null) 787 { 788 primaryProductImage = new Dynamicweb.Ecommerce.Products.Detail { Value = "" }; 789 } 790 else if (primaryProductImage.Value == null) 791 { 792 primaryProductImage.Value = ""; 793 } 794 795 string primaryProductImageUrl = "/admin/public/getimage.ashx?image=" + primaryProductImage.Value + "&altFmImage_path=/Files/Images/ecom/Products/no-image.jpg&width=300&height=300&Compression=90&Crop=5"; 796 797 //Sorted: first by imagegroup then by sortorder 798 //@foreach (var productImage in productImages) 799 //{ 800 //productImage.Value; //This is the imagepath eks. /Images/products/R12155_10_2.jpg 801 //productImage.IsDefault; //If the image is default or not. 802 //} 803 804 <li> 805 <article class="xs-p-2 lg-p-1 rounded-5 border-1 border-color-default"> 806 <div class="row is-flex xs-is-flex-column sm-is-flex-col md-is-flex-col"> 807 808 <div class="col-md-12 md-is-flex lg-p-r-0"> 809 <section class="col-md-3 col-lg-3 xs-p-0 md-p-l-0 md-p-r-1 lg-p-r-1 lg-p-l-0"> 810 <img class="img-responsive xs-auto-margin sm-auto-margin" src="@primaryProductImageUrl"> 811 </section> 812 813 <section class="col-md-9 col-lg-7 xs-m-t-2 sm-m-t-2 md-m-t-0 xs-p-0 md-p-r-0 md-p-l-1 lg-p-r-0 lg-p-l-0"> 814 <header class="xs-m-b-1"> 815 <h2 data-bind="text: name" class="h2 tertiary-font xs-m-t-0"> 816 @productName 817 </h2> 818 </header> 819 820 <section class="xs-m-b-1 clearfix"> 821 <span class="pull-left font-size-small"> 822 @Translate("Product.NumberShort", "Varenr."): <span>@productNumber</span> 823 </span> 824 </section> 825 826 <section class="word-break"> 827 <p class="font-size-small"> 828 @productShortDescription 829 </p> 830 </section> 831 </section> 832 </div> 833 834 <section class="col-md-9 col-md-offset-3 col-lg-5 col-lg-offset-0 sm-m-t-1 lg-m-t-0 md-p-l-2 835 lg-p-l-0 is-flex is-flex-col sm-is-flex-row sm-is-flex-wrap sm-flex-justify-space-between 836 md-is-flex-row md-is-flex-wrap md-flex-justify-space-between lg-flex-grow-2 lg-flex-justify-space-between"> 837 838 <div class="is-flex xs-m-t-1 sm-m-t-0 is-flex-col lg-m-b-auto"> 839 840 </div> 841 842 <div class="is-flex is-flex-col md-m-b-1 lg-m-b-0"> 843 <h4 class="h4 tertiary-font font-size-16px xs-m-b-1 sm-m-t-0 md-text-right lg-text-right"> 844 @nettoPrice 845 </h4> 846 847 <section class="xs-m-b-1 clearfix is-flex xs-flex-space-between lg-is-row-reverse"> 848 <div class="pull-right margin-left-1 xs-order-1 sm-order-1 md-order-1 xs-is-self-end sm-is-self-end md-is-self-end lg-m-t-0"> 849 @renderQuantityBox(defaultQuantity) 850 </div> 851 852 <div class="is-flex is-flex-col is-centered xs-margin-right-auto sm-m-r-1 md-m-r-1 font-size-small line-height-base md-text-right lg-text-right"> 853 <span>@Translate("Product.Packaging", "Forpakning"): </span> 854 <span> @productPackagingQuantity</span> 855 </div> 856 </section> 857 </div> 858 859 <section class="t-align-right clearfix sm-width-100 md-width-100"> 860 <button _data-bind="click: handleAddProductToCart" class="btn btn-primary btn-xs tertiary-font lg-p-l-1 lg-p-r-1 xs-width-100 sm-width-100 md-width-100"> 861 @Translate("Product.AddToCart", "Tilføj til kurv") 862 </button> 863 </section> 864 </section> 865 866 </div> 867 </article> 868 </li> 869 870 871 872 } 873 874 @helper renderProductBuyBox(bool showShopFunctionsAlternativeIfNotLoggedIn, string productName, string productId, string price, int productPackagingQuantity, int quantity, string stockColor) 875 { 876 877 878 <article class="product-packaging border-bottom-1"> 879 <section class="row md-is-flex lg-is-flex md-is-flex-center lg-is-flex-center"> 880 <section class="packaging-section col-md-4 col-lg-5"> 881 <h4 class="h4 xs-m-t-0 xs-m-b-0 tertiary-font v-align-mid">@productName</h4> 882 </section> 883 884 885 886 @if (Firstweb.Custom.CustomCode.Tapas.Context.Current.ShopFunctionsVisibility.ShowShopFunctions()) 887 { 888 <section class="packaging-section md-p-l-0 xs-col-12 col-md-2 col-lg-2 tertiary-font"> 889 <span>@price</span> 890 891 892 </section> 893 <div class="stock md-is-self-end lg-is-self-end lg-order-0"> 894 @Translate("Product.StockStatus", "Lagerstatus"): <div class="stock-load-async @stockColor"></div> 895 896 </div> 897 <section class="packaging-section md-p-l-0 lg-p-r-8p packaging-section--alt xs-col-12 col-md-4 col-lg-3"> 898 <ul class="list-unstyled lg-m-l-auto lg-p-r-24p xs-m-b-0"> 899 <li> 900 <h5 class="h5 xs-m-b-0 xs-m-t-0 line-height-16px"> 901 <span>@Translate("Product.Packaging", "Forpakning"): </span> 902 <span> @productPackagingQuantity</span> 903 </h5> 904 </li> 905 </ul> 906 907 @renderQuantityBox(quantity) 908 909 </section> 910 911 <section class="packaging-section md-p-l-0 packaging-section--buy xs-col-12 col-md-2 col-lg-2 t-align-right"> 912 <button class="btn btn-primary btn-xs tertiary-font lg-p-l-1 lg-p-r-1 xs-width-100 sm-width-100 margin-bottom-4px" _data-bind="click: handleAddProductToCart"> 913 @Translate("Product.AddToCart", "Tilføj til kurv") 914 </button> 915 </section> 916 917 } 918 else if (showShopFunctionsAlternativeIfNotLoggedIn) 919 { 920 var replaceWith = Firstweb.Custom.CustomCode.Tapas.Context.Current.ShopFunctionsVisibility.ReplaceWith(); 921 922 <section> 923 924 @if (replaceWith == "LOGIN") 925 { 926 <text>@renderLogin()</text> 927 } 928 else if (replaceWith == "RESELLER") 929 { 930 <text>@renderResellerLink()</text> 931 } 932 </section> 933 } 934 935 </section> 936 </article> 937 } 938 939 940 @helper renderInstantSearchProduct(LoopItem product) 941 { 942 bool isBlocked = product.GetBoolean("Ecom:Product:Field.NAVIsBlocked"); 943 string productID = product.GetString("Ecom:Product.ID"); 944 string productNumber = product.GetString("Ecom:Product.Number"); 945 string mainProductID = product.GetString("Ecom:Product:Field.FirstwebMainProductID"); 946 947 string productLink = product.GetString("Ecom:Product.Link.Clean"); 948 949 string productName = product.GetString("Ecom:Product.Name"); 950 string productShortDescription = product.GetString("Ecom:Product.ShortDescription"); 951 952 int productPackagingQuantity = product.GetInteger("Firstweb:ErpPriceInfo:ExtraInfos.PackagingSize"); 953 int defaultQuantity = productPackagingQuantity > 0 ? productPackagingQuantity : 1; 954 955 string languageId = product.GetString("Ecom:Product.LanguageID"); 956 string variantId = product.GetString("Ecom:Product.VariantID"); 957 958 bool hasVariants = (product.GetLoop("VariantCombinations").Count() > 0); 959 960 //Images 961 List<Dynamicweb.Ecommerce.Products.Detail> productImages = Firstweb.Custom.CustomCode.Frontend.Helpers.ProductImages.GetProductImages(languageId, productID, variantId); 962 Dynamicweb.Ecommerce.Products.Detail primaryProductImage = productImages.FirstOrDefault(x=>x.IsDefault); //Tag you can use instead: product.GetString("Ecom:Product.ImageDefault.Clean"); 963 964 //check for valid default image 965 if (primaryProductImage == null) 966 { 967 primaryProductImage = new Dynamicweb.Ecommerce.Products.Detail { Value = "" }; 968 } 969 else if (primaryProductImage.Value == null) 970 { 971 primaryProductImage.Value = ""; 972 } 973 974 string primaryProductImageUrl = "/admin/public/getimage.ashx?image=" + primaryProductImage.Value + "&altFmImage_path=/Files/Images/ecom/Products/no-image.jpg&width=200&height=125&Compression=90&Crop=5"; 975 if (String.IsNullOrEmpty(primaryProductImage.Value)) 976 { 977 primaryProductImageUrl = "/admin/public/getimage.ashx?image=/Files/Images/ecom/Products/no-image.jpg&width=200&height=125&Compression=90&Crop=5"; 978 } 979 //Sorted: first by imagegroup then by sortorder 980 //@foreach (var productImage in productImages) 981 //{ 982 //productImage.Value; //This is the imagepath eks. /Images/products/R12155_10_2.jpg 983 //productImage.IsDefault; //If the image is default or not. 984 //} 985 986 //Other packagings 987 //var otherPackagingProducts = Firstweb.Custom.CustomCode.Frontend.Helpers.OtherPackagingProducts.GetOtherPackagingProducts(mainProductID, false).Where(i => i.Id != productID); 988 //var showOtherPackagingProducts = otherPackagingProducts.Count() > 0; 989 990 int loopCount = product.GetInteger("Products.LoopCounter") - 1; 991 <div class="col-xs-12 col-sm-3 xs-m-b-1"> 992 993 <article class="instant-search-product bg-white productCount @loopCount" data-bind="css: {'item--selected': navSelectedItem() == @loopCount}"> 994 <div class="cursor-pointer info" data-bind="click: function() { window.location.href='@productLink'}"> 995 <div class="hidden-xs product-image"> 996 <img class="img-responsive center-block" src="@primaryProductImageUrl"> 997 </div> 998 999 <div class="name"> 1000 <p>@productName</p> 1001 1002 1003 <span>@Translate("Product.NumberShort", "Varenr.") @productNumber</span> 1004 </div> 1005 </div> 1006 1007 @if (Firstweb.Custom.CustomCode.Tapas.Context.Current.ShopFunctionsVisibility.ShowShopFunctions()) 1008 { 1009 <div class="buy-container" data-bind="defineObservable: { quantity: 1 }"> 1010 1011 <input class="product-quantity" type="number" name="quantity" data-bind="value: quantity"> 1012 1013 <button class="btn btn-primary btn-xs add-to-cart" data-bind="click: function(evt) { $parent.onAddToCart('@productID', quantity()) }"> 1014 @Translate("Product.AddToCart", "Tilføj til kurv") 1015 </button> 1016 </div> 1017 } 1018 </article> 1019 1020 </div> 1021 1022 } 1023 1024 1025 1026 @helper renderQuantityBox(int quantity) 1027 { 1028 <input class="product-quantity" type="number" name="quantity" value="@quantity"> 1029 } 1030 1031 1032 @helper renderLogin() 1033 { 1034 <button class="btn btn-primary" data-toggle="modal" data-target=".loginModal">@Translate("Product.LoginToShop", "Log ind for at købe")</button> 1035 } 1036 @helper renderResellerLink() 1037 { 1038 <a href="@Firstweb.Custom.CustomCode.Tapas.Context.Current.ShopFunctionsVisibility.ReplaceLink()" class="btn btn-primary">@Translate("Product.FindReseller", "Find forhandler")</a> 1039 } 1040 1041 @helper RenderQuantityPrices(string productNumber, string productCurrency, string productID) 1042 { 1043 <div class="quantity-prices" data-bind="getQuantityPrices: { productId: '@productID', pageId: '@Firstweb.Custom.CustomCode.Tapas.Context.AreaPages.GetPageId(" productcatalog")',="" linktext:="" '@translate("product.showallcombineddiscountsproducts.linktext",="" "se="" alle="" samkøbsrabat="" produkter="" for")'}"=""> 1044 <span> 1045 @Translate("QuantityPrices.Text", "% k&oslash;b flere spar mere") 1046 </span> 1047 1048 <i class="fal fa-chevron-down"></i> 1049 <div class="quantity-prices-results js-results"> 1050 <div class="xs-m-t-1 js-quantity-discount-html"></div> 1051 <div class="xs-m-t-1 js-multine-discount-html"></div> 1052 </div> 1053 </div> 1054 } 1055 1056 @helper RenderReplacementProducts(IEnumerable<Dynamicweb.Ecommerce.Products.ProductRelated> replacementProducts, string _primaryProductPageId) 1057 { 1058 1059 if (replacementProducts.Any(rp => rp.Product != null)) 1060 { 1061 <div class="blocked-product"> 1062 <p class="blocked-product-header">@Translate("Product.ProductIsBlocked", "Varen er udg&aring;et")</p> 1063 <div class="replacement-products" data-bind="replacementProducts"> 1064 <span> 1065 @Translate("ReplacementProducts.Text", "Se erstatningsvarer") 1066 </span> 1067 <i class="fas fa-sort-down"></i> 1068 <div class="replacement-products-results js-results"> 1069 1070 @foreach (var replacementProduct in replacementProducts.Where(rp => rp.Product != null)) 1071 { 1072 string productLink = "/Default.aspx?id=" + _primaryProductPageId + "&productid=" + replacementProduct.Product.Id; 1073 <a href="@productLink" class="xs-m-b-0">@replacementProduct.Product.Number</a> 1074 } 1075 1076 </div> 1077 </div> 1078 </div> 1079 } 1080 } 1081 1082 @{ 1083 string Headline = GetString("Item.Headline.Value"); 1084 string TeaserText = GetString("Item.Teaser.Value"); 1085 string Image = GetString("Item.Large_Image.Value"); 1086 DateTime CreatedDate = GetDate("Item.CreatedDate.Value"); 1087 string FormattedDate = CreatedDate.ToString("dd-MM-yyyy"); 1088 string ArticleText = GetString("Item.NewsText.Value"); 1089 Dynamicweb.Content.PageService pageService = new Dynamicweb.Content.PageService(); 1090 int PageId = GetInteger("DwPageID"); 1091 int ParentPageId = GetInteger("DwPageID_2"); 1092 var ParentPage = pageService.GetPage(ParentPageId); 1093 var Now = DateTime.Now; 1094 var LatestArticles = pageService.GetPagesByParentID(ParentPageId).Where(x => x.Active && x.ID != PageId && x.ActiveFrom < Now && x.ActiveTo > Now).ToList(); 1095 string AddingProductText = Translate("addproduct", "Tilf&oslash;jer produkt"); 1096 } 1097 1098 <div class="container article-details-page"> 1099 1100 <div class="row"> 1101 1102 <div class="col-xs-12 col-md-8"> 1103 1104 <h1 class="header">@Headline</h1> 1105 1106 <div class="rte-content teaser-text"> 1107 @TeaserText 1108 </div> 1109 1110 <div class="image-container"> 1111 <img class="image-fluid" src="@Image" alt="@Headline"> 1112 </div> 1113 1114 <div class="soc-media-block"> 1115 <p>@FormattedDate</p> 1116 <div class="add-this"> 1117 <div class="addthis_inline_share_toolbox"></div> 1118 </div> 1119 </div> 1120 1121 <div class="article-text rte-content"> 1122 @ArticleText 1123 </div> 1124 1125 </div> 1126 1127 1128 <div class="col-xs-12 col-md-4"> 1129 1130 <div class="latest-news"> 1131 1132 <p class="latest-header">@Translate("News.LatestArticles", "Seneste nyheder")</p> 1133 1134 <div class="article-grid"> 1135 1136 @foreach (var Article in LatestArticles.OrderByDescending(sp => Convert.ToDateTime(Firstweb.Custom.CustomCode.Tapas.Base.Items.GetValueDateTime(sp.Item, "CreatedDate")))) 1137 { 1138 var PreviewHeadline = Firstweb.Custom.CustomCode.Tapas.Base.Items.GetValueString(Article.Item, "Headline"); 1139 var PreviewTeaser = Firstweb.Custom.CustomCode.Tapas.Base.Items.GetValueString(Article.Item, "Teaser"); 1140 string PreviewLink = Dynamicweb.Frontend.SearchEngineFriendlyURLs.GetFriendlyUrl(Article.ID); 1141 1142 <a class="article-preview" href="@PreviewLink"> 1143 1144 <p class="preview-header">@PreviewHeadline</p> 1145 1146 <div class="rte-content"> 1147 @PreviewTeaser 1148 </div> 1149 1150 </a> 1151 } 1152 1153 </div> 1154 1155 </div> 1156 1157 1158 </div> 1159 1160 </div> 1161 1162 </div> 1163 1164 @if (GetLoop("Item.Related_Products.Value").Any()) 1165 { 1166 <div class="millarco-productlist xs-p-t-3 xs-p-b-1"> 1167 1168 <div class="container productList" data-bind="viewModel: 'ProductListViewModel'"> 1169 1170 <p class="related-group-header">@Translate("Article.RelatedProducts", "Relaterede produkter")</p> 1171 1172 <div class="row row-ce" data-bind="asyncPriceLoad: productListLoad, 1173 css: 'loaded', 1174 elementToObservable: $parent.OrderTemplateListElement, 1175 loadOnBool: { observableBool: CartLoading, text: '@AddingProductText' }"> 1176 1177 @foreach (var item in GetLoop("Item.Related_Products.Value")) 1178 { 1179 @renderProduct(true, item, true) 1180 } 1181 1182 </div> 1183 1184 </div> 1185 1186 </div> 1187 } 1188 1189 1190 <footer> 1191 <div class="container"> 1192 <div class="row"> 1193 1194 <div class="col-xs-12 col-sm-6 col-md-3 footer-column"> 1195 1196 <p class="footer-heading">@GetString("Item.Area.Kolonne_1Overskrift.Value")</p> 1197 1198 <div class="rte-content"> 1199 @GetString("Item.Area.Kolonne_1Tekst.Value") 1200 </div> 1201 1202 </div> 1203 1204 <div class="col-xs-12 col-sm-6 col-md-3 footer-column"> 1205 1206 <p class="footer-heading">@GetString("Item.Area.Kolonne_2Overskrift.Value")</p> 1207 1208 <div class="rte-content"> 1209 @GetString("Item.Area.Kolonne_2Tekst.Value") 1210 </div> 1211 1212 </div> 1213 1214 <div class="col-xs-12 col-sm-6 col-md-3 footer-column"> 1215 1216 <p class="footer-heading">@GetString("Item.Area.Kolonne_3Overskrift.Value")</p> 1217 1218 <div class="rte-content"> 1219 @GetString("Item.Area.Kolonne_3Tekst.Value") 1220 </div> 1221 1222 </div> 1223 1224 <div class="col-xs-12 col-sm-6 col-md-3 footer-column"> 1225 1226 <p class="footer-heading">@GetString("Item.Area.Kolonne_4Overskrift.Value")</p> 1227 1228 <div class="rte-content"> 1229 @GetString("Item.Area.Kolonne_4Tekst.Value") 1230 </div> 1231 1232 <div class="soc-media-links"> 1233 1234 @foreach (var Link in GetLoop("Item.Area.Kolonne_4Ikoner")) 1235 { 1236 string Name = Link.GetString("Item.Area.Kolonne_4Ikoner.Navn.Value"); 1237 string Destination = Link.GetString("Item.Area.Kolonne_4Ikoner.Link.Value"); 1238 string FontAwesomeIcon = Link.GetString("Item.Area.Kolonne_4Ikoner.FontAwesomeIkon.Value"); 1239 string FileIcon = "/admin/public/getimage.ashx?image=" + Link.GetString("Item.Area.Kolonne_4Ikoner.FilIkon.Value") + "&height=20&width=20&crop=5"; 1240 <a class="soc-media" href="@Destination" target="_blank" title="@Name"> 1241 @if (!String.IsNullOrEmpty(FileIcon)) 1242 { 1243 <img src="@FileIcon" alt="@Name"> 1244 } 1245 else 1246 { 1247 <i class="@FontAwesomeIcon"></i> 1248 } 1249 </a> 1250 } 1251 1252 </div> 1253 1254 </div> 1255 1256 </div> 1257 </div> 1258 </footer> 1259 1260 <div class="is-flex is-flex-col bg-white"> 1261 1262 <div class="overlay"> 1263 <div class="loader"> 1264 <div class="dot"></div> 1265 <div class="dot"></div> 1266 <div class="dot"></div> 1267 <div data-bind="if: stuffLoading() === true"> 1268 <p class="loaderText" data-bind="text: load().text"></p> 1269 </div> 1270 </div> 1271 </div> 1272 1273 @RenderNewsletter() 1274 1275 </div> 1276 1277 <script src="https://www.youtube.com/iframe_api"></script> 1278 <script src="https://code.jquery.com/jquery-3.1.0.js" integrity="sha256-slogkvB1K3VOkzAI8QITxV3VzpOnkeNVsKvtkYLMjfk=" crossorigin="anonymous"> 1279 </script> 1280 <script src="/Files/Templates/Designs/Tapas/assets/libraries/quagga/quagga.min.js"></script> 1281 <script src="/Files/Templates/Designs/Tapas/assets/libraries/blueimp/blueimp.js"></script> 1282 <script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-5cf750c94b867eee"></script> 1283 </div> 1284 1285 1286 <script type="text/javascript" src="/Files/Templates/Designs/Tapas/assets/dist/js/vendor.1cfec2c2251dc0118679.js?624d8fb7833a5fcb1ad1"></script> 1287 <script type="text/javascript" src="/Files/Templates/Designs/Tapas/assets/dist/js/main.c436378ee4c4cc6d1eef.js?624d8fb7833a5fcb1ad1"></script></body> 1288 @if (Firstweb.Custom.CustomCode.Tapas.Context.Current.ShopFunctionsVisibility.ShowShopFunctions()) 1289 { 1290 <script> 1291 function animateCart(_e) 1292 { 1293 var btn = $(_e.srcElement); 1294 if (btn.prop("tagName") == "INPUT") 1295 btn = btn.parent().find(".js-product-buy-btn"); 1296 1297 var isAlreadyActive = btn.attr("data-addedtocart-active"); 1298 var orgText = ""; 1299 if (isAlreadyActive == null || isAlreadyActive == "") 1300 { 1301 var orgText = btn.html(); 1302 btn.attr("data-addedtocart-active", "true"); 1303 var newText = btn.attr("data-addedtocarttext") + '&nbsp;<i class="fas fa-check"></i>'; 1304 btn.html(newText); 1305 } 1306 1307 setTimeout( function() { 1308 $('.go-to-cart').addClass('added'); 1309 setTimeout(function() { 1310 $('.go-to-cart').removeClass('added'); 1311 if (orgText !== "") { 1312 btn.attr("data-addedtocart-active", ""); 1313 btn.html(orgText); 1314 } 1315 }, 3000); 1316 1317 },700); 1318 1319 1320 1321 1322 } 1323 1324 $(document).ready(function () { 1325 $(document).ready(function () { 1326 window.setInterval(function () { 1327 $.ajax({ 1328 url: "/api/session/user/get?t=" + new Date().getTime(), 1329 success: function (data) { 1330 if (!data.IsLoggedIn) { 1331 $(".js-signedout-modal").on("hidden.bs.modal", function (evt) { 1332 document.location.reload(); 1333 }) 1334 1335 if (!$(".js-signedout-modal").is(':visible')) { 1336 $(".js-signedout-modal").modal("show"); 1337 } 1338 } 1339 } 1340 }); 1341 }, 60000); 1342 1343 }); 1344 $('#extraEmployeeProductInfo').on('show.bs.modal', function (e) { 1345 var loadurl = $(e.relatedTarget).data('load-url'); 1346 $(this).find('.modal-body').load(loadurl); 1347 1348 }); 1349 }); 1350 </script> 1351 } 1352 </html> 1353 1354 1355 @helper RenderLogin(string CurrentAreaId, string loginPageId) 1356 { 1357 var translationRememberMe = Translate("LoginDialog.RememberMe", "Husk mig"); 1358 string forgotPasswordMailTemplate = GetString("Item.Area.ForgotPasswordMailTemplate"); 1359 string forgotPasswordSenderEmail = GetString("Item.Area.ForgotPasswordSenderEmail"); 1360 string forgotPasswordMailSubject = GetString("Item.Area.ForgotPasswordMailSubject"); 1361 1362 string action = GetString("DWExtranetAction"); 1363 string userName = GetString("DWExtranetUsername"); 1364 string password = GetString("DWExtranetPassword"); 1365 string rememberUsername = GetString("DWExtranetUsernameRemember"); 1366 string rememberPassword = GetString("DWExtranetPasswordRemember"); 1367 1368 int NewUserFormParagraphId = Firstweb.Custom.CustomCode.Tapas.Context.AreaItem.GetInt("NewUserFormParagraphId"); 1369 1370 1371 1372 <div class="loginDetails pull-right"> 1373 <div data-bind="with: LoginViewModel"> 1374 <div class="login-dropdpown"> 1375 <a id="user" style="display: none;" data-toggle="modal" data-target=".loginModal" data-bind="visible: !$root.User().IsLoggedIn(), value: loginModal = '.loginModal'" role="button"> 1376 <i style="margin-right:4px;" class="icon user font-size-small line-height-base"> 1377 </i> 1378 <span data-bind="text: $root.User().Name()"> 1379 </span> 1380 <span class="color-concrete font-size-small text-uppercase line-height-base" data-bind="visible: !$root.User().IsLoggedIn()"> 1381 @Translate("Page.Login", "Log ind") 1382 </span> 1383 </a> 1384 </div> 1385 1386 <div class="dropdown UserLinks" data-bind="visible: $root.User().IsLoggedIn()" style="display: none;"> 1387 <a class="color-concrete" id="user" data-toggle="dropdown" role="button"> 1388 <i style="margin-right:4px;" class="icon user font-size-small line-height-base"> 1389 </i> 1390 <span class="login-user font-size-small text-uppercase" data-bind="text: $root.User().Name()"></span> 1391 <span class="caret"></span> 1392 </a> 1393 @GetValue("DwNavigation(dwusernav)") 1394 @SnippetStart("IsImpersonating") 1395 @if (Firstweb.Custom.CustomCode.Frontend.Helpers.SecondaryUsers.IsImpersonating()) 1396 { 1397 <li data-bind=""> 1398 <a href="@Firstweb.Custom.CustomCode.Frontend.Helpers.Page.GetStopImpersonatingLink()"> 1399 <i class="icon "> </i><span>@Translate("Usermenu.MenuText.StopImpersonating", "Log af som kunde")</span> 1400 </a> 1401 </li> 1402 } 1403 @SnippetEnd("IsImpersonating") 1404 1405 1406 1407 @SnippetStart("ShowPrices") 1408 @if (Firstweb.Custom.CustomCode.Frontend.Helpers.Product.HidePrices()) 1409 { 1410 <li> 1411 <a href="@Firstweb.Custom.CustomCode.Frontend.Helpers.Page.GetHidePricesLink(false)"> 1412 <i class="far fa-check-square"></i>&nbsp;<span>@Translate("Usermenu.MenuText.HidePrice", "Skjul priser")</span> 1413 </a> 1414 </li> 1415 } 1416 else 1417 { 1418 <li> 1419 <a href="@Firstweb.Custom.CustomCode.Frontend.Helpers.Page.GetHidePricesLink(true)"> 1420 <i class="far fa-square"></i>&nbsp;<span>@Translate("Usermenu.MenuText.HidePrice", "Skjul priser")</span> 1421 </a> 1422 </li> 1423 } 1424 @SnippetEnd("ShowPrices") 1425 </div> 1426 1427 <!--New user popup--> 1428 <div class="modal fade new-user-modal js-new-user-modal" id="newUserModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" data-bind="initValue:{ observable: newUserModalSelector, value: '.js-new-user-modal'}"> 1429 <div class="modal-dialog modal-lg" role="document"> 1430 <div class="modal-content popupBox login"> 1431 <div class="modal-header"> 1432 <h4 class="modal-title h2 tertiary-font xs-m-t-0 xs-m-b-2" id="myModalLabel">@Translate("NewUserModal.Header", "Ny bruger? - Anmod om adgang")</h4> 1433 </div> 1434 <div class="modal-body"> 1435 @if (NewUserFormParagraphId > 0) 1436 { 1437 <div>@RenderParagraphContent(NewUserFormParagraphId)</div> 1438 } 1439 </div> 1440 </div> 1441 </div> 1442 </div> 1443 1444 1445 <!--Signed out popup--> 1446 <div class="modal fade new-user-modal js-signedout-modal" id="signedOutModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> 1447 <div class="modal-dialog modal-lg" role="document"> 1448 <div class="modal-content popupBox login"> 1449 <div class="modal-header"> 1450 <h4 class="modal-title h2 tertiary-font xs-m-t-0 xs-m-b-2" id="myModalLabel">@Translate("SignedOutModal.Header", "Du er blevet logget ud")</h4> 1451 <button type="button" class="close" data-dismiss="modal" aria-label="Close"></button> 1452 </div> 1453 <div class="modal-footer"> 1454 1455 <button class="btn btn-primary" data-toggle="modal" data-target=".loginModal"> 1456 @Translate("SignedOutModal.LoginAgain", "Log ind igen") 1457 </button> 1458 1459 </div> 1460 </div> 1461 </div> 1462 </div> 1463 1464 1465 1466 <!--Login popup--> 1467 <div class="modal loginModal bs-example-modal-sm fade js-login-modal" role="dialog" aria-labelledby="mySmallModalLabel" data-bind="initValue:{ observable: loginModalSelector, value: '.js-login-modal'}"> 1468 <div class="modal-dialog"> 1469 <div class="popupBox login modal-content"> 1470 <h3 class="modal-header h2 tertiary-font xs-m-t-0 xs-m-b-2"> 1471 @Translate("LoginDialog.Header", "Log ind") 1472 </h3> 1473 <div id="login-error" class="xs-m-b-1 xs-p-1 bg-danger hidden"> 1474 <span>@Translate("LoginDialog.SessionHasExpired", "Sessionen er udløbet")</span> 1475 </div> 1476 <div data-bind="if: wrongCredentials()"> 1477 <div class="xs-m-b-1 xs-p-1 bg-danger">@Translate("LoginDialog.InvalidCredentials", " Forkert brugernavn eller adgangskode")</div> 1478 </div> 1479 <div class="modal-body" data-bind="Fadevisible: ToggleForgottenPassword, delayIn:250"> 1480 <form name="ExtUserForm" id="ExtUserForm" method="post" action="@action"> 1481 <input id="AreaId" type="hidden" name="AreaId" data-bind="initValue:{ observable: AreaId, value: '@CurrentAreaId'}, value: AreaId"> 1482 <div class="form-group"> 1483 <label class="xs-m-b-1" for="Username">@Translate("LoginDialog.Username", "Brugernavn")</label> 1484 <input id="Username" class="form-control xs-p-l-1 xs-p-r-1 height-3 line-height-base" type="text" name="Username" value="@userName" data-bind="value: UserName, hasFocus: addFocus"> 1485 </div> 1486 1487 <div class="form-group xs-m-t-1"> 1488 <label class="xs-m-b-1" for="Password">@Translate("LoginDialog.Password", "Adgangskode")</label> 1489 <input id="Password" class="form-control xs-p-l-1 xs-p-r-1 height-3 line-height-base" type="password" name="Password" value="@password" data-bind="value: Password"> 1490 </div> 1491 1492 <div class="form-group action lg-m-b-0 clearfix"> 1493 <div class="pull-left color-dark font-bold"> 1494 1495 <label class="custom-checkbox"> 1496 <input type="checkbox" data-bind="click: handleCheckbox"> 1497 <div class="is-checkbox pull-left"> 1498 <i data-bind="style: { visibility: rememberMe() ? 'visible' : 'hidden' }" class="fa fa-check" aria-hidden="true"></i> 1499 </div> 1500 <span class="font-bold font-size-small text-not-bold">@translationRememberMe</span> 1501 </label> 1502 </div> 1503 1504 <div class="pull-right"> 1505 1506 <div class="xs-m-b-1"> 1507 <a href="#" class="color-dark forgottenPass" data-bind="toggleClick: ToggleForgottenPassword"> 1508 @Translate("LoginDialog.ForgotPasswordLink", "Glemt adgangskode?") 1509 </a> 1510 1511 </div> 1512 1513 <button class="btn btn-primary" value="LOG IND" data-bind="click: Login, toggleClick: Loader"> 1514 @Translate("LoginDialog.LoginButton", "Log ind") 1515 </button> 1516 </div> 1517 </div> 1518 <span data-bind="Fadevisible: !Loader(), 1519 css:{ loginsuccess : $root.User().IsLoggedIn(), 1520 loginFail : LoginFailed(), 1521 ringLoader: !wrongCredentials() }"> 1522 </span> 1523 </form> 1524 </div> 1525 1526 <div class="modal-body forgotten" data-bind="Fadevisible: !ToggleForgottenPassword(), delayIn:250"> 1527 1528 <form name="ExtUserForm" id="ExtUserForm1" method="post" action="@action" data-bind="submit: recover"> 1529 <input id="ForgotPasswordMailTemplate" type="hidden" name="ForgotPasswordMailTemplate" data-bind="initValue:{ observable: forgotPasswordMailTemplate, value: '@forgotPasswordMailTemplate'}"> 1530 1531 <input id="ForgotPasswordSenderEmail" type="hidden" name="ForgotPasswordSenderEmail" data-bind="initValue:{ observable: forgotPasswordSenderEmail, value: '@forgotPasswordSenderEmail'}"> 1532 1533 <input id="ForgotPasswordMailSubject" type="hidden" name="ForgotPasswordMailSubject" data-bind="initValue:{ observable: forgotPasswordMailSubject, value: '@forgotPasswordMailSubject'}, value: AreaId"> 1534 <div class="form-group"> 1535 <label for="Email">@Translate("Email", "Email")</label> 1536 <input type="text" name="Email" class="form-control lg-p-l-1 lg-p-r-1 ie-input-height" data-bind="value: email"> 1537 1538 <div class="alert alert-success" role="alert" data-bind="visible: statusCode() == '0'"> 1539 @Translate("LoginDialog.ForgotPasswordStatusText:Success", "Din adgangskode er blevet sendt til din e-mail adresse") 1540 </div> 1541 1542 <div class="alert alert-warning" role="alert" data-bind="visible: statusCode() == '100'"> 1543 @Translate("LoginDialog.ForgotPasswordStatusText:NotFound", "Den indtaste e-mail adresse findes ikke") 1544 </div> 1545 <div class="alert alert-danger" role="alert" data-bind="visible: statusCode() == '150'"> 1546 @Translate("LoginDialog.ForgotPasswordStatusText:Error", "Der er opstået en fejl i systemet, prøv igen senere.") 1547 </div> 1548 1549 </div> 1550 1551 <div class="form-group action clearfix"> 1552 <button class="btn btn-secondary pull-left" data-bind="toggleClick: ToggleForgottenPassword"> 1553 @Translate("Back", "Tilbage") 1554 </button> 1555 1556 <button type="submit" class="btn btn-primary pull-right" data-bind="initValue:{ observable: loginId, value: '@loginPageId'}"> 1557 @Translate("LoginDialog.GetPasswordButton", "F&aring; tilsendt kode") 1558 </button> 1559 1560 <span data-bind="Fadevisible: ForgottenLoader" class="ringLoader"></span> 1561 </div> 1562 </form> 1563 </div> 1564 </div> 1565 </div> 1566 </div> 1567 </div> 1568 </div> 1569 1570 1571 1572 } 1573 1574 @helper RenderNewsletter() 1575 { 1576 var translationEmailFieldPlaceholder = Translate("NewsletterDialog.EmailFieldPlaceholder", "Indtast e-mail adresse"); 1577 1578 <div class="newsletterWidget hidden" data-bind="css: { 'open': showNewsletterWidget }, value: newsletterModal = '.newsletterModal' "> 1579 <div class="newsletterOpen" data-bind="click: toggleNewsletterWidget">@Translate("Page.NewsletterSignupButton", "Tilmeld nyhedsbrev")</div> 1580 1581 <div class="newsletterContent"> 1582 <div class="newsletterClose" data-bind="click: hideNewsletterWidget"></div> 1583 <form name="UserManagementEditForm" data-bind="submit: submitNewsletterSubscription"> 1584 <input type="hidden" name="UserManagementForm" value="1"> 1585 <input name="UserManagement_Form_EmailAllowed" type="hidden" id="UserManagement_Form_EmailAllowed" value="True"> 1586 <input name="UserManagement_Form_EmailAllowed_ApplyValue" type="hidden" id="UserManagement_Form_EmailAllowed_ApplyValue" value="AllowEmail"> 1587 1588 <div class="newsletterHead"> 1589 @Translate("NewsletterDialog.Header", "F&aring; nyheder fra Tapas!") 1590 </div> 1591 1592 <div class="newsletterSubHead"> 1593 @Translate("NewsletterDialog.Subheader", "Modtag nyheder og gode tilbud fra Tapas") 1594 </div> 1595 1596 <input name="UserManagement_Form_Email" id="UserManagement_Form_Email" type="email" placeholder="@translationEmailFieldPlaceholder" required=""> 1597 <button class="button" type="submit">@Translate("NewsletterDialog.SignupButton", "Tilmeld")</button> 1598 </form> 1599 </div> 1600 </div> 1601 1602 <div class="newsletterModal modal fade" tabindex="-1" role="dialog" data-bind="css: { 'subSuccess': newsletterSubscriptionStatus, 'subError': !newsletterSubscriptionStatus() }"> 1603 <div class="modal-dialog"> 1604 <div class="modal-content"> 1605 <div class="modal-header"> 1606 <button type="button" class="close" data-dismiss="modal" aria-label="Close"></button> 1607 <h4 class="modal-title subSuccess">@Translate("NewsletterDialog.SignupSuccessText", "Du er nu tilmeldt nyhedsbrev!")</h4> 1608 <h4 class="modal-title subError">@Translate("NewsletterDialog.SignupErrorText", "Der skete en uventet fejl, pr&oslash;v igen senere.")</h4> 1609 </div> 1610 1611 <div class="modal-footer"> 1612 <button type="button" class="button" data-dismiss="modal" aria-label="Close">@Translate("OK", "OK")</button> 1613 </div> 1614 </div> 1615 </div> 1616 </div> 1617 } 1618 1619 @helper RenderWebsites(string _CurrentAreaId) 1620 { 1621 var websiteLoop = GetLoop("Item.Area.Websites"); 1622 if (websiteLoop.Count > 0) 1623 { 1624 var websiteItem = websiteLoop.FirstOrDefault(w => w.GetString("Item.Area.Websites.AreaId") == _CurrentAreaId); 1625 var currentIcon = websiteItem.GetString("Item.Area.Websites.Icon"); 1626 var currentLabel = websiteItem.GetString("Item.Area.Websites.Label"); 1627 1628 <div class="dropdown UserLinks"> 1629 <a class="country" id="dLabel" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> 1630 <span>@currentLabel</span> 1631 <span class="caret xs-m-l-1"></span> 1632 </a> 1633 1634 <ul class="dropdown-menu" aria-labelledby="dLabel"> 1635 @foreach (var item in websiteLoop) 1636 { 1637 string areaId = item.GetString("Item.Area.Websites.AreaId"); 1638 string label = item.GetString("Item.Area.Websites.Label"); 1639 string link = item.GetString("Item.Area.Websites.Link"); 1640 string icon = item.GetString("Item.Area.Websites.Icon"); 1641 1642 if (areaId != _CurrentAreaId) 1643 { 1644 <li> 1645 <a class="country" href="@link"> 1646 <span>@label</span> 1647 </a> 1648 </li> 1649 } 1650 } 1651 </ul> 1652 </div> 1653 } 1654 1655 1656 }