Error compiling template "/Designs/Dwsimple/Paragraph/AjaxProductList.cshtml"
Line 198: The type or namespace name 'Input' does not exist in the namespace 'Dynamicweb' (are you missing an assembly reference?)
Line 198: The type or namespace name 'Input' does not exist in the namespace 'Dynamicweb' (are you missing an assembly reference?)
Line 227: The variable 'hide' is assigned but its value is never used

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 13 #line 2 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 14 using System; 15 16 #line default 17 #line hidden 18 using System.Collections.Generic; 19 using System.Linq; 20 21 #line 11 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 22 using System.Web; 23 24 #line default 25 #line hidden 26 27 #line 4 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 28 using Dynamicweb.Security.UserManagement; 29 30 #line default 31 #line hidden 32 33 #line 5 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 34 using Dynamicweb.Security.UserManagement.Common.CustomFields; 35 36 #line default 37 #line hidden 38 39 #line 6 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 40 using Dynamicweb.Rendering; 41 42 #line default 43 #line hidden 44 45 #line 7 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 46 using Dynamicweb.Environment; 47 48 #line default 49 #line hidden 50 51 #line 10 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 52 using System.Text.RegularExpressions; 53 54 #line default 55 #line hidden 56 57 #line 9 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 58 using User = Dynamicweb.Security.UserManagement.User; 59 60 #line default 61 #line hidden 62 63 64 public class RazorEngine_2768e4e6a58c4cbba9ff01438ecdb6d8 : Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> { 65 66 #line hidden 67 68 #line 14 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 69 70 public class WrapMethods 71 { 72 //Gets the contrasting color 73 public static string getContrastYIQ(string hexcolor) 74 { 75 if (hexcolor != "") 76 { 77 hexcolor = Regex.Replace(hexcolor, "[^0-9a-zA-Z]+", ""); 78 79 int r = Convert.ToByte(hexcolor.Substring(0, 2), 16); 80 int g = Convert.ToByte(hexcolor.Substring(2, 2), 16); 81 int b = Convert.ToByte(hexcolor.Substring(4, 2), 16); 82 int yiq = ((r * 299) + (g * 587) + (b * 114)) / 1000; 83 84 if (yiq >= 128) 85 { 86 return "black"; 87 } 88 else 89 { 90 return "white"; 91 } 92 } 93 else 94 { 95 return "black"; 96 } 97 } 98 99 100 //Truncate text 101 public static string Truncate (string value, int count, bool strip=true) 102 { 103 if (strip == true){ 104 value = StripHtmlTagByCharArray(value); 105 } 106 107 if (value.Length > count) 108 { 109 value = value.Substring(0, count - 1) + "..."; 110 } 111 112 return value; 113 } 114 115 116 //Strip text from HTML 117 public static string StripHtmlTagByCharArray(string htmlString) 118 { 119 char[] array = new char[htmlString.Length]; 120 int arrayIndex = 0; 121 bool inside = false; 122 123 for (int i = 0; i < htmlString.Length; i++) 124 { 125 char let = htmlString[i]; 126 if (let == '<') 127 { 128 inside = true; 129 continue; 130 } 131 if (let == '>') 132 { 133 inside = false; 134 continue; 135 } 136 if (!inside) 137 { 138 array[arrayIndex] = let; 139 arrayIndex++; 140 } 141 } 142 return new string(array, 0, arrayIndex); 143 } 144 145 //Make the correct count of columns 146 public static string ColumnMaker(int Col, string ScreenSize) 147 { 148 string Columns = ""; 149 150 switch (Col) 151 { 152 case 1: 153 Columns = "col-"+ScreenSize+"-12"; 154 break; 155 156 case 2: 157 Columns = "col-"+ScreenSize+"-6"; 158 break; 159 160 case 3: 161 Columns = "col-"+ScreenSize+"-4"; 162 break; 163 164 case 4: 165 Columns = "col-"+ScreenSize+"-3"; 166 break; 167 168 default: 169 Columns = "col-"+ScreenSize+"-3"; 170 break; 171 } 172 173 return Columns; 174 } 175 176 177 private string Custom(string firstoption, string secondoption) 178 { 179 if (firstoption == "custom") 180 { 181 return secondoption; 182 } 183 else 184 { 185 return firstoption; 186 } 187 } 188 } 189 190 #line default 191 #line hidden 192 193 194 #line 152 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 195 196 public string IsSelected(string sortBy, string sortOrder) 197 { 198 return (Dynamicweb.Input.Request("SortOrder") == sortOrder && Dynamicweb.Input.Request("SortBy") == sortBy) ? "selected='selected'" : string.Empty; 199 } 200 201 202 203 #line default 204 #line hidden 205 206 207 public RazorEngine_2768e4e6a58c4cbba9ff01438ecdb6d8() { 208 } 209 210 public override void Execute() { 211 WriteLiteral("\r\n\r\n"); 212 213 WriteLiteral("\r\n\r\n\r\n\r\n\r\n"); 214 215 216 #line 140 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 217 218 string pageUrl = GetGlobalValue("Global:Pageview.Url.Raw"); 219 string spiritspageId = Pageview.Area.Item["SpiritsPageId"].ToString(); 220 string winespageId = Pageview.Area.Item["WinesPageId"].ToString(); 221 string productspageid = Pageview.Area.Item["Products_Page_ID"].ToString(); 222 string SpiritsCatalogId = Pageview.Area.Item["SpiritsJsonPageId"].ToString(); 223 string WinesCatalogId = Pageview.Area.Item["WineProductsJsonPageId"].ToString(); 224 string productCatalogId = Pageview.Area.Item["Portfolio_JSON_PageID"].ToString(); 225 string feedPageUrl = new Regex("([?&]ID)=[^?&]+").Replace(pageUrl, "?ID=" + productCatalogId); 226 string feedFullUrl = feedPageUrl + "&LayoutTemplate=Json.cshtml&DisableStatistics=True"; 227 string hide = ""; 228 229 230 #line default 231 #line hidden 232 WriteLiteral("\r\n"); 233 234 235 #line 160 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 236 237 if (string.IsNullOrEmpty(Dynamicweb.Context.Current.Request.GetString("ProductID"))) 238 { 239 240 241 242 243 244 #line default 245 #line hidden 246 WriteLiteral(" <div"); 247 248 WriteLiteral(" class=\"row js-ajax-container\""); 249 250 WriteLiteral(" id=\"productList\""); 251 252 WriteLiteral(" data-template=\"productContainer\""); 253 254 WriteLiteral(" data-json-feed=\""); 255 256 257 #line 166 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 258 Write(feedFullUrl); 259 260 261 #line default 262 #line hidden 263 WriteLiteral("\""); 264 265 WriteLiteral("></div>\r\n"); 266 267 WriteLiteral(" <script"); 268 269 WriteLiteral(" id=\"productContainer\""); 270 271 WriteLiteral(" type=\"text/x-template\""); 272 273 WriteLiteral(">\r\n <div class=\"col-md-3 col-sm-3 \">\r\n\r\n <div class=\"pr" + 274 "oduct-list-header product-list-header--clean hidden-xs\">\r\n <h" + 275 "5>"); 276 277 278 #line 171 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 279 Write(Translate("PRODUCT CATEGORY")); 280 281 282 #line default 283 #line hidden 284 WriteLiteral("</h5>\r\n"); 285 286 WriteLiteral(" "); 287 288 289 #line 172 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 290 Write(Translate("FILTER YOUR RESULTS")); 291 292 293 #line default 294 #line hidden 295 WriteLiteral("\r\n </div>\r\n <button class=\"product-list-header prod" + 296 "uct-list-header--clean visible-xs\" type=\"button\" data-toggle=\"collapse\" data-ta" + 297 "rget=\"#FacetGroups2\" aria-expanded=\"false\" aria-controls=\"FacetGroups\">\r\n"); 298 299 WriteLiteral(" "); 300 301 302 #line 175 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 303 Write(Translate("FILTER YOUR RESULTS")); 304 305 306 #line default 307 #line hidden 308 WriteLiteral(@" 309 </button> 310 311 <div id=""FacetGroups"" data-template=""facetGroup"" class=""collapse""></div> 312 </div> 313 <div class=""col-md-9 col-sm-9 product-list""> 314 <div class=""product-list-header""> 315 <div class=""col-sm-3 pull-left""> 316 <div class=""product-list-header__title text-left"">data.prodCnt "); 317 318 319 #line 183 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 320 Write(Translate("Items", "Items")); 321 322 323 #line default 324 #line hidden 325 WriteLiteral("</div>\r\n </div>\r\n <div class=\"sorting col-s" + 326 "m-6 dropdown\">\r\n <label class=\"hidden-xs\">"); 327 328 329 #line 186 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 330 Write(Translate("Sort:", "Sort:")); 331 332 333 #line default 334 #line hidden 335 WriteLiteral("</label>\r\n <button class=\"low-to-high-selector btn btn-xs " + 336 "btn-default dropdown-toggle\" type=\"button\" data-toggle=\"dropdown\"><span class=\"t" + 337 "ext-left\">"); 338 339 340 #line 187 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 341 Write(Translate("Filter", "Filter")); 342 343 344 #line default 345 #line hidden 346 WriteLiteral("</span><span class=\"caret text-right\"></span></button>\r\n <" + 347 "ul class=\" dropdown-menu\" role=\"menu\" data-sortby=\"\" data-sortorder=\"\">\r\n " + 348 " <li><a data-sortby=\"Name\" data-sort=\"asc\" onclick=\"Facets.S" + 349 "orting(this, \'"); 350 351 352 #line 189 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 353 Write(productCatalogId); 354 355 356 #line default 357 #line hidden 358 WriteLiteral("\');\" class=\"pill-left\" data-checked=\"checked\">"); 359 360 361 #line 189 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 362 Write(Translate("Name low-high", "Name low-high")); 363 364 365 #line default 366 #line hidden 367 WriteLiteral(" </a></li>\r\n <li><a data-sortby=\"Name\" data-sort=\"desc" + 368 "\" onclick=\"Facets.Sorting(this, \'"); 369 370 371 #line 190 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 372 Write(productCatalogId); 373 374 375 #line default 376 #line hidden 377 WriteLiteral("\');\" class=\"pill-left\" data-checked=\"\">"); 378 379 380 #line 190 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 381 Write(Translate("Name high-low", "Price high-low")); 382 383 384 #line default 385 #line hidden 386 WriteLiteral(@" </a></li> 387 </ul> 388 </div> 389 390 <div class=""pull-right text-right hidden-sm""> 391 <button class=""btn product-list-header__view-btn"" onclick=""Dynamo.UpdateTemplate('Products', 'productItem')""><i class=""fa fa-th-list""></i></button> 392 <button class=""btn product-list-header__view-btn"" onclick=""Dynamo.UpdateTemplate('Products', 'productGridItem')""><i class=""fa fa-th""></i></button> 393 </div> 394 <div class=""sorting col-xs-12 text-center visible-xs""> 395 396 </div> 397 </div> 398 <div class=""col-sm-6 container-priducts""> 399 <div id=""SelectedFilter"" class=""facet-options selected-option text-left""></div> 400 <div id=""RemoveFilters"" class=""text-left remove-all""></div> 401 <div id=""Products"" data-template=""productItem"" data-save-cookie=""true""></div> 402 403 <div class=""pull-left show-paging""> 404 "); 405 406 WriteLiteral(" "); 407 408 409 #line 208 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 410 Write(Translate("Showing page", "Showing page")); 411 412 413 #line default 414 #line hidden 415 WriteLiteral(" data.currentPage "); 416 417 418 #line 208 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 419 Write(Translate("of", "of")); 420 421 422 #line default 423 #line hidden 424 WriteLiteral(@" data.totalPages 425 </div> 426 <div class=""pull-right show-paging""> 427 <ul class=""pager"" id=""Pagination"" data-template=""DotsPages""> 428 429 </ul> 430 </div> 431 </div> 432 </div> 433 </script> 434 "); 435 436 WriteLiteral(" <script"); 437 438 WriteLiteral(" type=\"text/javascript\""); 439 440 WriteLiteral(@"> 441 $('.low-to-high-selector').on(""click"", function () { 442 $(this).addClass('active'); 443 $('.sorting .dropdown-menu-right').slideToggle(200); 444 }); 445 446 447 $('.sorting .dropdown-menu-right').click(function () { 448 $('.low-to-high-selector').click(); 449 }); 450 </script> 451 "); 452 453 WriteLiteral(" <script"); 454 455 WriteLiteral(" id=\"PageButton\""); 456 457 WriteLiteral(" type=\"text/x-template\""); 458 459 WriteLiteral(">\r\n <li class=\"data.active\"><a href=\"data.url\">data.number</a></li>\r\n " + 460 " </script>\r\n"); 461 462 463 #line 232 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 464 465 466 467 #line default 468 #line hidden 469 WriteLiteral(" <script"); 470 471 WriteLiteral(" id=\"facetGroup\""); 472 473 WriteLiteral(" type=\"text/x-template\""); 474 475 WriteLiteral(@"> 476 <input type=""checkbox"" id=""OptionsGroup_data.counter"" class=""expand-trigger hidden"" checked /> 477 478 <div class=""facet-group""> 479 <div class=""facet-group__header"">data.name <label for=""OptionsGroup_data.counter"" class=""expand-btn collapsed""></label></div> 480 <div id=""FacetOptions"" class=""facet-options data.selectedin collapse""></div> 481 </div> 482 </script> 483 "); 484 485 486 #line 241 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 487 488 489 490 #line default 491 #line hidden 492 WriteLiteral(" <script"); 493 494 WriteLiteral(" id=\"CheckboxFacet\""); 495 496 WriteLiteral(" type=\"text/x-template\""); 497 498 WriteLiteral(">\r\n <div class=\"facet-option filter-option\">\r\n <button " + 499 "type=\"button\" class=\"btn btn-checkbox data.checked data.disabled data.queryParam" + 500 "eter\" data-check=\"data.checked\" onclick=\"Facets.UpdateFacets(this, \'"); 501 502 503 #line 244 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 504 Write(productCatalogId); 505 506 507 #line default 508 #line hidden 509 WriteLiteral("\');\" name=\"data.queryParameter\" value=\"data.value\" data.disabled>\r\n " + 510 " data.name (data.count)\r\n </button>\r\n </div>\r\n " + 511 " </script>\r\n"); 512 513 514 #line 249 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 515 516 517 518 #line default 519 #line hidden 520 WriteLiteral(" <script"); 521 522 WriteLiteral(" id=\"CheckFilter\""); 523 524 WriteLiteral(" type=\"x-template\""); 525 526 WriteLiteral(">\r\n <button type=\"button\" class=\"btn btn-checkbox data.checked data.disabled \"" + 527 " name=\"data.tolower\" data-check=\"data.checked\" onclick=\"Facets.ResetSelectedFace" + 528 "ts(this, \'"); 529 530 531 #line 251 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 532 Write(productCatalogId); 533 534 535 #line default 536 #line hidden 537 WriteLiteral("\');\" value=\"data.value\" data.disabled>\r\n data.name\r\n </button>\r\n </s" + 538 "cript>\r\n"); 539 540 WriteLiteral(" <script"); 541 542 WriteLiteral(" id=\"RemoveAll\""); 543 544 WriteLiteral(" type=\"text/x-template\""); 545 546 WriteLiteral(">\r\n <a onclick=\"Facets.ResetFacets(this, \'"); 547 548 549 #line 256 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 550 Write(productCatalogId); 551 552 553 #line default 554 #line hidden 555 WriteLiteral("\');\">\r\n"); 556 557 WriteLiteral(" "); 558 559 560 #line 257 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 561 Write(Translate("Remove all items", "Remove all items")); 562 563 564 #line default 565 #line hidden 566 WriteLiteral("\r\n </a>\r\n </script>\r\n"); 567 568 WriteLiteral(" <script"); 569 570 WriteLiteral(" id=\"DotsPages\""); 571 572 WriteLiteral(" type=\"x-template\""); 573 574 WriteLiteral(@"> 575 <li class=""no-border data.prevdisplay""><a href=""data.prevpagelink""><i class=""fa fa-angle-left""></i></a></li> 576 <li class="" data.show""><a href=""data.firstpagelink"" >data.firstpagenumber</a></li> 577 <li class="" data.firstdots""> data.firstdots</li> 578 <li class=""looppages""> 579 <ul id=""Pages""> 580 </ul> 581 </li> 582 <li class="" data.lastdots""> data.lastdots</li> 583 <li class="" data.lastsh""><a href=""data.lastpagelink"">data.lastpagenumber</a></li> 584 585 <li class=""no-border data.nextdisplay""><a href=""data.nextpagelink""><i class=""fa fa-angle-right""></i></a></li> 586 </script> 587 "); 588 589 WriteLiteral("<script"); 590 591 WriteLiteral(" id=\"Numbering\""); 592 593 WriteLiteral(" type=\"x-template\""); 594 595 WriteLiteral(">\r\n <li class=\"\"><a href=\"data.pageslooplink\" class=\"data.active\">data.pageslo" + 596 "opnumber</a></li>\r\n</script>\r\n"); 597 598 WriteLiteral(" <script"); 599 600 WriteLiteral(" id=\"productItem\""); 601 602 WriteLiteral(" type=\"text/x-template\""); 603 604 WriteLiteral(">\r\n <div class=\"col-md-8\">\r\n <div class=\"row product-li" + 605 "st-item\">\r\n <div class=\"col-xs-8 col-md-3 col-lg-3\">\r\n " + 606 " <a href=\"data.link\"><div class=\"product-list-item__image-contai" + 607 "ner\"><img class=\"img-responsive product-list-item__image center-block\" src=\"data" + 608 ".image\" /></div></a>\r\n </div>\r\n <div class" + 609 "=\"col-xs-8 col-lg-9 col-lg-9\">\r\n <div class=\"col-md-7\">\r\n" + 610 " <div class=\"customTooltip\">\r\n " + 611 " <a href=\"data.link\"><h2 class=\"product-list-item__name\">data.name</h3><" + 612 "/a>\r\n <span class=\"customTooltiptext\">data.toolti" + 613 "p</span>\r\n </div> \r\n " + 614 " <div id=\"hasListEnable\" data-template=\"hasList\"></div>\r\n " + 615 " <div class=\"limitedstock\">data.limitedStock</div>\r\n " + 616 " <div class=\"product-list-item__desc\">data.description<" + 617 "/div>\r\n\r\n <ul class=\"features-list item-number produc" + 618 "tMetaInfo\">\r\n <li class=\"features-list__item\">\r\n " + 619 " <span class=\"features-list__label\">Item #</sp" + 620 "an> <span class=\"features-list__name\">data.number</span>\r\n " + 621 " </li>\r\n <li class=\"features-list__item\"" + 622 ">\r\n <div id=\"unitList\" data-template=\"hasUnit" + 623 "\"></div>\r\n </li>\r\n </u" + 624 "l>\r\n </div>\r\n <div class=\"col-md-5" + 625 " right-col\">\r\n <div class=\"features-list\">\r\n " + 626 " <div class=\"features-list__item text-right\">\r\n " + 627 " <div id=\"price\" data-template=\"AddToCart\"></div>\r\n " + 628 " </div>\r\n <div class=\"f" + 629 "eatures-list__item text-right\">\r\n <div id=\"Ad" + 630 "dToQuote\" data-template=\"AddToQuote\"></div>\r\n </d" + 631 "iv>\r\n </div>\r\n </div>\r\n " + 632 " </div>\r\n </div>\r\n </div>\r\n </script>\r\n" + 633 ""); 634 635 WriteLiteral(" <script"); 636 637 WriteLiteral(" id=\"hasUnit\""); 638 639 WriteLiteral(" type=\"text/x-template\""); 640 641 WriteLiteral(">\r\n <span class=\"features-list__label\">"); 642 643 644 #line 316 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 645 Write(Translate("Unit")); 646 647 648 #line default 649 #line hidden 650 WriteLiteral(" : </span> <span class=\"features-list__name\">data.unit</span>\r\n </script>\r\n"); 651 652 WriteLiteral(" <script"); 653 654 WriteLiteral(" id=\"hasList\""); 655 656 WriteLiteral(" type=\"text/x-template\""); 657 658 WriteLiteral(">\r\n <div class=\"favListDropdown dropdown data.hiddenlist\">\r\n " + 659 " <button class=\"dropdown-toggle\" type=\"button\" data-toggle=\"dropdown\">\r\n " + 660 " <i class=\"fa fa-star-o\" aria-hidden=\"true\"></i>\r\n"); 661 662 WriteLiteral(" "); 663 664 665 #line 322 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 666 Write(Translate("Add to Wishlist", "Add to Wishlist")); 667 668 669 #line default 670 #line hidden 671 WriteLiteral(@" 672 </button> 673 <ul class=""dropdown-menu""> 674 <div id=""employeeLists"" data-template=""EmployeeAddToFav""></div> 675 <div id=""avaiableLists"" data-template=""AddToFav""></div> 676 </ul> 677 </div> 678 </script> 679 "); 680 681 WriteLiteral(" <script"); 682 683 WriteLiteral(" id=\"AddToFav\""); 684 685 WriteLiteral(" type=\"text/x-template\""); 686 687 WriteLiteral(">\r\n <li><a href=\"data.link\">data.icon data.name</a></li>\r\n </script" + 688 ">\r\n"); 689 690 WriteLiteral(" <script"); 691 692 WriteLiteral(" id=\"EmployeeAddToFav\""); 693 694 WriteLiteral(" type=\"text/x-template\""); 695 696 WriteLiteral(">\r\n <li><a href=\"data.link\">data.icon data.name</a></li>\r\n </script" + 697 ">\r\n"); 698 699 WriteLiteral(" <script"); 700 701 WriteLiteral(" id=\"productGridItem\""); 702 703 WriteLiteral(" type=\"text/x-template\""); 704 705 WriteLiteral(">\r\n <div class=\"col-md-4 product-list-item product-list-item--grid\">\r\n" + 706 " <div class=\"product-list-item--grid-cont\">\r\n " + 707 "<a href=\"data.link\"><div class=\"product-list-item__image-container\"><img class=\"" + 708 "img-responsive product-list-item__image center-block\" src=\"data.image\" /></div><" + 709 "/a>\r\n \r\n <div class=\"row\">\r\n " + 710 " <div class=\"col-md-6\">\r\n <div class=\"customT" + 711 "ooltip\">\r\n <a href=\"data.link\"><h2 class=\"product" + 712 "-list-item__name\" style=\"height:auto;\">data.shortname</h3></a>\r\n " + 713 " <span class=\"customTooltiptext\">data.tooltip</span>\r\n " + 714 " </div>\r\n </div>\r\n " + 715 " <div class=\"col-md-6\">\r\n <div id=\"hasListEnable\" dat" + 716 "a-template=\"hasList\"></div>\r\n <div class=\"limitedstoc" + 717 "k\">data.limitedStock &nbsp;</div>\r\n </div>\r\n " + 718 " </div>\r\n <div class=\"features-list\">\r\n " + 719 " <div class=\"row productGridMetaInfo\">\r\n <div " + 720 "class=\"col-xs-8\">\r\n <span>Item # data.number</spa" + 721 "n>\r\n </div>\r\n <div class=\"" + 722 "col-xs-8\">\r\n <div id=\"unitList\" data-template=\"ha" + 723 "sUnit\"></div>\r\n </div>\r\n </div" + 724 ">\r\n <div class=\"features-list__item text-right\">\r\n " + 725 " <div id=\"price\" data-template=\"AddToCart\"></div>\r\n " + 726 " </div>\r\n <div class=\"features-list__item t" + 727 "ext-right\">\r\n <div id=\"AddToQuote\" data-template=\"Add" + 728 "ToQuote\"></div>\r\n </div>\r\n </div>\r\n\r\n " + 729 " </div>\r\n <div class=\"clearfix\"></div>\r\n " + 730 " </div>\r\n </script>\r\n"); 731 732 733 #line 374 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 734 735 736 737 #line default 738 #line hidden 739 WriteLiteral(" <script"); 740 741 WriteLiteral(" id=\"SelectionOption\""); 742 743 WriteLiteral(" type=\"text/x-template\""); 744 745 WriteLiteral(">\r\n <option value=\"data.value\" data-infoprice=\"data.price\" data-infodu" + 746 "ty=\"data.duty\">data.name</option>\r\n </script>\r\n"); 747 748 WriteLiteral(" <script"); 749 750 WriteLiteral(" id=\"AddToCart\""); 751 752 WriteLiteral(" type=\"text/x-template\""); 753 754 WriteLiteral(@"> 755 <div class=""features-list__item""> 756 <span class=""price-text features-list__name"">data.value</span> 757 </div> 758 <div class=""features-list form-horizontal""> 759 <span class=""features-list__name customQuantity""> 760 <span class=""qty pull-left"">"); 761 762 763 #line 384 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 764 Write(Translate("Qty", "Qty")); 765 766 767 #line default 768 #line hidden 769 WriteLiteral(@"</span> 770 <input type=""number"" name=""Quantity"" class=""form-control input-number ecommerce-quantity-input quantity"" value=""1"" min=""1"" max=""9999"" id=""quantity_data.id"" oninput=""javascript: if (this.value.length > this.maxLength) this.value = this.value.slice(0, this.maxLength);"" maxlength=""4""> 771 <div class=""quantity-nav""> 772 <div class=""quantity-button quantity-up"" onclick=""Dynamo.UpdateQuantityUp(this)"">&#43;</div> 773 <div class=""quantity-button quantity-down"" onclick=""Dynamo.UpdateQuantityDown(this)"">&#8211;</div> 774 </div> 775 </span> 776 <button type=""button"" id=""CartButton_data.id"" class=""btn product-list-item__cart-btn pull-right"" name=""submit"" onclick=""Cart.AddToCart(event, 'data.id', document.getElementById('quantity_data.id').value, 'data.unitID');""> 777 778 <span> <i class=""fa fa-shopping-cart"" aria-hidden=""true""></i>"); 779 780 781 #line 393 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 782 Write(Translate("Add to cart")); 783 784 785 #line default 786 #line hidden 787 WriteLiteral("</span>\r\n </button>\r\n </div>\r\n </script>\r\n"); 788 789 WriteLiteral(" <script"); 790 791 WriteLiteral(" id=\"AddToQuote\""); 792 793 WriteLiteral(" type=\"text/x-template\""); 794 795 WriteLiteral(@"> 796 <input type=""number"" name=""Quantity"" class=""form-control input-number ecommerce-quantity-input quantity hidden"" value=""1"" min=""1"" max=""99999"" id=""quantity_data.id""> 797 <button type=""button"" id=""CartButton_data.id"" class=""btn product-list-item__cart-btn pull-right"" name=""submit"" onclick=""Cart.AddToCart(event, 'data.id', document.getElementById('quantity_data.id').value, 'data.unitID');""> 798 799 <span><i class=""fa fa-shopping-cart"" aria-hidden=""true""></i> "); 800 801 802 #line 401 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 803 Write(Translate("REQUEST PRICE", "REQUEST PRICE")); 804 805 806 #line default 807 #line hidden 808 WriteLiteral("</span>\r\n </button>\r\n </script>\r\n"); 809 810 811 #line 404 "E:\Dynamicweb.Net\Solutions\enotria.dw9.dynamicweb-cms.com\Files\Templates\Designs\Dwsimple\Paragraph\AjaxProductList.cshtml" 812 } 813 814 815 #line default 816 #line hidden 817 WriteLiteral("\r\n\r\n\r\n"); 818 819 } 820 } 821 } 822

1 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> 2 @using System 3 @using System.Web 4 @using Dynamicweb.Security.UserManagement; 5 @using Dynamicweb.Security.UserManagement.Common.CustomFields; 6 @using Dynamicweb.Rendering; 7 @using Dynamicweb.Environment; 8 @using System.Text.RegularExpressions; 9 @using User = Dynamicweb.Security.UserManagement.User; 10 @using System.Text.RegularExpressions 11 @using System.Web 12 13 14 @functions{ 15 public class WrapMethods 16 { 17 //Gets the contrasting color 18 public static string getContrastYIQ(string hexcolor) 19 { 20 if (hexcolor != "") 21 { 22 hexcolor = Regex.Replace(hexcolor, "[^0-9a-zA-Z]+", ""); 23 24 int r = Convert.ToByte(hexcolor.Substring(0, 2), 16); 25 int g = Convert.ToByte(hexcolor.Substring(2, 2), 16); 26 int b = Convert.ToByte(hexcolor.Substring(4, 2), 16); 27 int yiq = ((r * 299) + (g * 587) + (b * 114)) / 1000; 28 29 if (yiq >= 128) 30 { 31 return "black"; 32 } 33 else 34 { 35 return "white"; 36 } 37 } 38 else 39 { 40 return "black"; 41 } 42 } 43 44 45 //Truncate text 46 public static string Truncate (string value, int count, bool strip=true) 47 { 48 if (strip == true){ 49 value = StripHtmlTagByCharArray(value); 50 } 51 52 if (value.Length > count) 53 { 54 value = value.Substring(0, count - 1) + "..."; 55 } 56 57 return value; 58 } 59 60 61 //Strip text from HTML 62 public static string StripHtmlTagByCharArray(string htmlString) 63 { 64 char[] array = new char[htmlString.Length]; 65 int arrayIndex = 0; 66 bool inside = false; 67 68 for (int i = 0; i < htmlString.Length; i++) 69 { 70 char let = htmlString[i]; 71 if (let == '<') 72 { 73 inside = true; 74 continue; 75 } 76 if (let == '>') 77 { 78 inside = false; 79 continue; 80 } 81 if (!inside) 82 { 83 array[arrayIndex] = let; 84 arrayIndex++; 85 } 86 } 87 return new string(array, 0, arrayIndex); 88 } 89 90 //Make the correct count of columns 91 public static string ColumnMaker(int Col, string ScreenSize) 92 { 93 string Columns = ""; 94 95 switch (Col) 96 { 97 case 1: 98 Columns = "col-"+ScreenSize+"-12"; 99 break; 100 101 case 2: 102 Columns = "col-"+ScreenSize+"-6"; 103 break; 104 105 case 3: 106 Columns = "col-"+ScreenSize+"-4"; 107 break; 108 109 case 4: 110 Columns = "col-"+ScreenSize+"-3"; 111 break; 112 113 default: 114 Columns = "col-"+ScreenSize+"-3"; 115 break; 116 } 117 118 return Columns; 119 } 120 121 122 private string Custom(string firstoption, string secondoption) 123 { 124 if (firstoption == "custom") 125 { 126 return secondoption; 127 } 128 else 129 { 130 return firstoption; 131 } 132 } 133 } 134 } 135 136 137 138 139 140 @{ 141 string pageUrl = GetGlobalValue("Global:Pageview.Url.Raw"); 142 string spiritspageId = Pageview.Area.Item["SpiritsPageId"].ToString(); 143 string winespageId = Pageview.Area.Item["WinesPageId"].ToString(); 144 string productspageid = Pageview.Area.Item["Products_Page_ID"].ToString(); 145 string SpiritsCatalogId = Pageview.Area.Item["SpiritsJsonPageId"].ToString(); 146 string WinesCatalogId = Pageview.Area.Item["WineProductsJsonPageId"].ToString(); 147 string productCatalogId = Pageview.Area.Item["Portfolio_JSON_PageID"].ToString(); 148 string feedPageUrl = new Regex("([?&]ID)=[^?&]+").Replace(pageUrl, "?ID=" + productCatalogId); 149 string feedFullUrl = feedPageUrl + "&LayoutTemplate=Json.cshtml&DisableStatistics=True"; 150 string hide = ""; 151 } 152 @functions { 153 public string IsSelected(string sortBy, string sortOrder) 154 { 155 return (Dynamicweb.Input.Request("SortOrder") == sortOrder && Dynamicweb.Input.Request("SortBy") == sortBy) ? "selected='selected'" : string.Empty; 156 } 157 158 159 } 160 @{ 161 if (string.IsNullOrEmpty(Dynamicweb.Context.Current.Request.GetString("ProductID"))) 162 { 163 164 165 166 <div class="row js-ajax-container" id="productList" data-template="productContainer" data-json-feed="@feedFullUrl"></div> 167 <script id="productContainer" type="text/x-template"> 168 <div class="col-md-3 col-sm-3 "> 169 170 <div class="product-list-header product-list-header--clean hidden-xs"> 171 <h5>@Translate("PRODUCT CATEGORY")</h5> 172 @Translate("FILTER YOUR RESULTS") 173 </div> 174 <button class="product-list-header product-list-header--clean visible-xs" type="button" data-toggle="collapse" data-target="#FacetGroups2" aria-expanded="false" aria-controls="FacetGroups"> 175 @Translate("FILTER YOUR RESULTS") 176 </button> 177 178 <div id="FacetGroups" data-template="facetGroup" class="collapse"></div> 179 </div> 180 <div class="col-md-9 col-sm-9 product-list"> 181 <div class="product-list-header"> 182 <div class="col-sm-3 pull-left"> 183 <div class="product-list-header__title text-left">data.prodCnt @Translate("Items", "Items")</div> 184 </div> 185 <div class="sorting col-sm-6 dropdown"> 186 <label class="hidden-xs">@Translate("Sort:", "Sort:")</label> 187 <button class="low-to-high-selector btn btn-xs btn-default dropdown-toggle" type="button" data-toggle="dropdown"><span class="text-left">@Translate("Filter", "Filter")</span><span class="caret text-right"></span></button> 188 <ul class=" dropdown-menu" role="menu" data-sortby="" data-sortorder=""> 189 <li><a data-sortby="Name" data-sort="asc" onclick="Facets.Sorting(this, '@productCatalogId');" class="pill-left" data-checked="checked">@Translate("Name low-high", "Name low-high") </a></li> 190 <li><a data-sortby="Name" data-sort="desc" onclick="Facets.Sorting(this, '@productCatalogId');" class="pill-left" data-checked="">@Translate("Name high-low", "Price high-low") </a></li> 191 </ul> 192 </div> 193 194 <div class="pull-right text-right hidden-sm"> 195 <button class="btn product-list-header__view-btn" onclick="Dynamo.UpdateTemplate('Products', 'productItem')"><i class="fa fa-th-list"></i></button> 196 <button class="btn product-list-header__view-btn" onclick="Dynamo.UpdateTemplate('Products', 'productGridItem')"><i class="fa fa-th"></i></button> 197 </div> 198 <div class="sorting col-xs-12 text-center visible-xs"> 199 200 </div> 201 </div> 202 <div class="col-sm-6 container-priducts"> 203 <div id="SelectedFilter" class="facet-options selected-option text-left"></div> 204 <div id="RemoveFilters" class="text-left remove-all"></div> 205 <div id="Products" data-template="productItem" data-save-cookie="true"></div> 206 207 <div class="pull-left show-paging"> 208 @Translate("Showing page", "Showing page") data.currentPage @Translate("of", "of") data.totalPages 209 </div> 210 <div class="pull-right show-paging"> 211 <ul class="pager" id="Pagination" data-template="DotsPages"> 212 213 </ul> 214 </div> 215 </div> 216 </div> 217 </script> 218 <script type="text/javascript"> 219 $('.low-to-high-selector').on("click", function () { 220 $(this).addClass('active'); 221 $('.sorting .dropdown-menu-right').slideToggle(200); 222 }); 223 224 225 $('.sorting .dropdown-menu-right').click(function () { 226 $('.low-to-high-selector').click(); 227 }); 228 </script> 229 <script id="PageButton" type="text/x-template"> 230 <li class="data.active"><a href="data.url">data.number</a></li> 231 </script> 232 233 <script id="facetGroup" type="text/x-template"> 234 <input type="checkbox" id="OptionsGroup_data.counter" class="expand-trigger hidden" checked /> 235 236 <div class="facet-group"> 237 <div class="facet-group__header">data.name <label for="OptionsGroup_data.counter" class="expand-btn collapsed"></label></div> 238 <div id="FacetOptions" class="facet-options data.selectedin collapse"></div> 239 </div> 240 </script> 241 242 <script id="CheckboxFacet" type="text/x-template"> 243 <div class="facet-option filter-option"> 244 <button type="button" class="btn btn-checkbox data.checked data.disabled data.queryParameter" data-check="data.checked" onclick="Facets.UpdateFacets(this, '@productCatalogId');" name="data.queryParameter" value="data.value" data.disabled> 245 data.name (data.count) 246 </button> 247 </div> 248 </script> 249 250 <script id="CheckFilter" type="x-template"> 251 <button type="button" class="btn btn-checkbox data.checked data.disabled " name="data.tolower" data-check="data.checked" onclick="Facets.ResetSelectedFacets(this, '@productCatalogId');" value="data.value" data.disabled> 252 data.name 253 </button> 254 </script> 255 <script id="RemoveAll" type="text/x-template"> 256 <a onclick="Facets.ResetFacets(this, '@productCatalogId');"> 257 @Translate("Remove all items", "Remove all items") 258 </a> 259 </script> 260 <script id="DotsPages" type="x-template"> 261 <li class="no-border data.prevdisplay"><a href="data.prevpagelink"><i class="fa fa-angle-left"></i></a></li> 262 <li class=" data.show"><a href="data.firstpagelink" >data.firstpagenumber</a></li> 263 <li class=" data.firstdots"> data.firstdots</li> 264 <li class="looppages"> 265 <ul id="Pages"> 266 </ul> 267 </li> 268 <li class=" data.lastdots"> data.lastdots</li> 269 <li class=" data.lastsh"><a href="data.lastpagelink">data.lastpagenumber</a></li> 270 271 <li class="no-border data.nextdisplay"><a href="data.nextpagelink"><i class="fa fa-angle-right"></i></a></li> 272 </script> 273 <script id="Numbering" type="x-template"> 274 <li class=""><a href="data.pageslooplink" class="data.active">data.pagesloopnumber</a></li> 275 </script> 276 <script id="productItem" type="text/x-template"> 277 <div class="col-md-8"> 278 <div class="row product-list-item"> 279 <div class="col-xs-8 col-md-3 col-lg-3"> 280 <a href="data.link"><div class="product-list-item__image-container"><img class="img-responsive product-list-item__image center-block" src="data.image" /></div></a> 281 </div> 282 <div class="col-xs-8 col-lg-9 col-lg-9"> 283 <div class="col-md-7"> 284 <div class="customTooltip"> 285 <a href="data.link"><h2 class="product-list-item__name">data.name</h3></a> 286 <span class="customTooltiptext">data.tooltip</span> 287 </div> 288 <div id="hasListEnable" data-template="hasList"></div> 289 <div class="limitedstock">data.limitedStock</div> 290 <div class="product-list-item__desc">data.description</div> 291 292 <ul class="features-list item-number productMetaInfo"> 293 <li class="features-list__item"> 294 <span class="features-list__label">Item #</span> <span class="features-list__name">data.number</span> 295 </li> 296 <li class="features-list__item"> 297 <div id="unitList" data-template="hasUnit"></div> 298 </li> 299 </ul> 300 </div> 301 <div class="col-md-5 right-col"> 302 <div class="features-list"> 303 <div class="features-list__item text-right"> 304 <div id="price" data-template="AddToCart"></div> 305 </div> 306 <div class="features-list__item text-right"> 307 <div id="AddToQuote" data-template="AddToQuote"></div> 308 </div> 309 </div> 310 </div> 311 </div> 312 </div> 313 </div> 314 </script> 315 <script id="hasUnit" type="text/x-template"> 316 <span class="features-list__label">@Translate("Unit") : </span> <span class="features-list__name">data.unit</span> 317 </script> 318 <script id="hasList" type="text/x-template"> 319 <div class="favListDropdown dropdown data.hiddenlist"> 320 <button class="dropdown-toggle" type="button" data-toggle="dropdown"> 321 <i class="fa fa-star-o" aria-hidden="true"></i> 322 @Translate("Add to Wishlist", "Add to Wishlist") 323 </button> 324 <ul class="dropdown-menu"> 325 <div id="employeeLists" data-template="EmployeeAddToFav"></div> 326 <div id="avaiableLists" data-template="AddToFav"></div> 327 </ul> 328 </div> 329 </script> 330 <script id="AddToFav" type="text/x-template"> 331 <li><a href="data.link">data.icon data.name</a></li> 332 </script> 333 <script id="EmployeeAddToFav" type="text/x-template"> 334 <li><a href="data.link">data.icon data.name</a></li> 335 </script> 336 <script id="productGridItem" type="text/x-template"> 337 <div class="col-md-4 product-list-item product-list-item--grid"> 338 <div class="product-list-item--grid-cont"> 339 <a href="data.link"><div class="product-list-item__image-container"><img class="img-responsive product-list-item__image center-block" src="data.image" /></div></a> 340 341 <div class="row"> 342 <div class="col-md-6"> 343 <div class="customTooltip"> 344 <a href="data.link"><h2 class="product-list-item__name" style="height:auto;">data.shortname</h3></a> 345 <span class="customTooltiptext">data.tooltip</span> 346 </div> 347 </div> 348 <div class="col-md-6"> 349 <div id="hasListEnable" data-template="hasList"></div> 350 <div class="limitedstock">data.limitedStock &nbsp;</div> 351 </div> 352 </div> 353 <div class="features-list"> 354 <div class="row productGridMetaInfo"> 355 <div class="col-xs-8"> 356 <span>Item # data.number</span> 357 </div> 358 <div class="col-xs-8"> 359 <div id="unitList" data-template="hasUnit"></div> 360 </div> 361 </div> 362 <div class="features-list__item text-right"> 363 <div id="price" data-template="AddToCart"></div> 364 </div> 365 <div class="features-list__item text-right"> 366 <div id="AddToQuote" data-template="AddToQuote"></div> 367 </div> 368 </div> 369 370 </div> 371 <div class="clearfix"></div> 372 </div> 373 </script> 374 375 <script id="SelectionOption" type="text/x-template"> 376 <option value="data.value" data-infoprice="data.price" data-infoduty="data.duty">data.name</option> 377 </script> 378 <script id="AddToCart" type="text/x-template"> 379 <div class="features-list__item"> 380 <span class="price-text features-list__name">data.value</span> 381 </div> 382 <div class="features-list form-horizontal"> 383 <span class="features-list__name customQuantity"> 384 <span class="qty pull-left">@Translate("Qty", "Qty")</span> 385 <input type="number" name="Quantity" class="form-control input-number ecommerce-quantity-input quantity" value="1" min="1" max="9999" id="quantity_data.id" oninput="javascript: if (this.value.length > this.maxLength) this.value = this.value.slice(0, this.maxLength);" maxlength="4"> 386 <div class="quantity-nav"> 387 <div class="quantity-button quantity-up" onclick="Dynamo.UpdateQuantityUp(this)">&#43;</div> 388 <div class="quantity-button quantity-down" onclick="Dynamo.UpdateQuantityDown(this)">&#8211;</div> 389 </div> 390 </span> 391 <button type="button" id="CartButton_data.id" class="btn product-list-item__cart-btn pull-right" name="submit" onclick="Cart.AddToCart(event, 'data.id', document.getElementById('quantity_data.id').value, 'data.unitID');"> 392 393 <span> <i class="fa fa-shopping-cart" aria-hidden="true"></i>@Translate("Add to cart")</span> 394 </button> 395 </div> 396 </script> 397 <script id="AddToQuote" type="text/x-template"> 398 <input type="number" name="Quantity" class="form-control input-number ecommerce-quantity-input quantity hidden" value="1" min="1" max="99999" id="quantity_data.id"> 399 <button type="button" id="CartButton_data.id" class="btn product-list-item__cart-btn pull-right" name="submit" onclick="Cart.AddToCart(event, 'data.id', document.getElementById('quantity_data.id').value, 'data.unitID');"> 400 401 <span><i class="fa fa-shopping-cart" aria-hidden="true"></i> @Translate("REQUEST PRICE", "REQUEST PRICE")</span> 402 </button> 403 </script> 404 } 405 } 406 407 408
 

Starward Nova Whisky 70cl

Starward Nova Whisky
  • Item #H28664NV
Details
  • 70cl
  • 41.00 %
  • Australia
  • Victoria
  • NV
  • Tasting Note: Bright berries on the nose. Long, fruity and slightly tart with hints of baking spices on the palate.
  • Unique Selling Point: Fully matured in Australian red wine barrels.
  • Production Method: Starward began with a simple idea; imagine a whisky unshackled from tradition. Starward Nova epitomises this approach to whisky making. Our barrels are sourced from Australian winemakers and with minimal intervention, they are filled to retain the flavour, texture and essence of Australian red wine. The result is a truly unique single malt whisky that reflects the place it is made.
  • Awards and Press News: Awarded Best Craft Whisky in the world (San Francisco World Spirits Competition).
  • Group: Other Whiskey
  • Region: Victoria
  • Producer/Brand: Starward
  • Closure: Synthetic Cork
  • Vegetarian: No
  • Vegan: No
  • Organic: No
  • Biodynamic: No

Related Products

box