Error executing template "Designs/PLC/_parsed/ProductWidth.parsed.cshtml"
System.ArgumentException: An item with the same key has already been added.
   at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
   at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
   at Dynamicweb.Ecommerce.Products.GroupRelation.get_GroupRelationsByParentId(String theParentId)
   at Dynamicweb.Ecommerce.Products.Group.get_Subgroups()
   at Dynamicweb.Ecommerce.Frontend.NavigationProviders.GroupNavigationProvider.MakeGroupTree(GroupCollection groups, Page page, NavigationItem parentNode, Int32 thisLevel, Int32 maxLevel, Page productPage)
   at Dynamicweb.Ecommerce.Frontend.NavigationProviders.GroupNavigationProvider.MakeGroupTree(Page page, NavigationItem parentNode)
   at Dynamicweb.Ecommerce.Frontend.NavigationProviders.GroupNavigationProvider.Process(NavigationItem node)
   at Dynamicweb.Ecommerce.Frontend.NavigationProviders.GroupNavigationProvider.Process(NavigationItem node)
   at Dynamicweb.Ecommerce.Frontend.NavigationProviders.GroupNavigationProvider.Process(NavigationItem node)
   at Dynamicweb.Ecommerce.Frontend.NavigationProviders.GroupNavigationProvider.ProcessTree(RootNavigationItem rootNode, NavigationType navigationType)
   at Dynamicweb.Frontend.XmlNavigation.MakeXml(Int32 parentId, Int32 levelStart, Int32 levelStop, Expand expand, Int32 selectedAreaId)
   at Dynamicweb.Frontend.XmlNavigation.GetNavigationHtml(Int32 parentId, Int32 levelStart, Int32 levelStop, Expand expand, String name, String xsltPath, Int32 selectedAreaId, Boolean sitemapMode, NameValueCollection settings, NameValueCollection attributes, IncludeMode mode)
   at Dynamicweb.Frontend.XmlNavigation.GetNavigationHtml(NameValueCollection settings, NameValueCollection attributes)
   at Dynamicweb.Rendering.TemplateBase`1.RenderNavigation(Object settings)
   at CompiledRazorTemplates.Dynamic.RazorEngine_20e064a8ecf64e06b1c48024dde9e668.Execute() in E:\www\uat.petloverscentre.co.th\Solution\Files\Templates\Designs\PLC\_parsed\ProductWidth.parsed.cshtml:line 3877
   at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader)
   at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.b__0(TextWriter writer)
   at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
   at Dynamicweb.Rendering.Template.RenderRazorTemplate()

1 @using System 2 @using System.Web 3 @using Dynamicweb.Security.UserManagement.Common.CustomFields; 4 @using Dynamicweb.Security.UserManagement 5 6 @using System.Text.RegularExpressions 7 @using System.Web 8 9 10 @functions{ 11 public class WrapMethods 12 { 13 14 15 //Gets the contrasting color 16 public static string getContrastYIQ(string hexcolor) 17 { 18 if (hexcolor != "") 19 { 20 hexcolor = Regex.Replace(hexcolor, "[^0-9a-zA-Z]+", ""); 21 22 int r = Convert.ToByte(hexcolor.Substring(0, 2), 16); 23 int g = Convert.ToByte(hexcolor.Substring(2, 2), 16); 24 int b = Convert.ToByte(hexcolor.Substring(4, 2), 16); 25 int yiq = ((r * 299) + (g * 587) + (b * 114)) / 1000; 26 27 if (yiq >= 128) 28 { 29 return "black"; 30 } 31 else 32 { 33 return "white"; 34 } 35 } 36 else 37 { 38 return "black"; 39 } 40 } 41 42 43 //Truncate text 44 public static string Truncate (string value, int count, bool strip=true) 45 { 46 if (strip == true){ 47 value = StripHtmlTagByCharArray(value); 48 } 49 50 if (value.Length > count) 51 { 52 value = value.Substring(0, count - 1) + "..."; 53 } 54 55 return value; 56 } 57 58 59 //Strip text from HTML 60 public static string StripHtmlTagByCharArray(string htmlString) 61 { 62 char[] array = new char[htmlString.Length]; 63 int arrayIndex = 0; 64 bool inside = false; 65 66 for (int i = 0; i < htmlString.Length; i++) 67 { 68 char let = htmlString[i]; 69 if (let == '<') 70 { 71 inside = true; 72 continue; 73 } 74 if (let == '>') 75 { 76 inside = false; 77 continue; 78 } 79 if (!inside) 80 { 81 array[arrayIndex] = let; 82 arrayIndex++; 83 } 84 } 85 return new string(array, 0, arrayIndex); 86 } 87 88 //Make the correct count of columns 89 public static string ColumnMaker(int Col, string ScreenSize) 90 { 91 string Columns = ""; 92 93 switch (Col) 94 { 95 case 1: 96 Columns = "col-"+ScreenSize+"-12"; 97 break; 98 99 case 2: 100 Columns = "col-"+ScreenSize+"-6"; 101 break; 102 103 case 3: 104 Columns = "col-"+ScreenSize+"-4"; 105 break; 106 107 case 4: 108 Columns = "col-"+ScreenSize+"-3"; 109 break; 110 111 default: 112 Columns = "col-"+ScreenSize+"-3"; 113 break; 114 } 115 116 return Columns; 117 } 118 119 120 private string Custom(string firstoption, string secondoption) 121 { 122 if (firstoption == "custom") 123 { 124 return secondoption; 125 } 126 else 127 { 128 return firstoption; 129 } 130 } 131 } 132 } 133 @helper MiniCart() 134 { 135 var list = new List<String>(); 136 foreach (var orderline1 in GetLoop("OrderLines")){ 137 var repackString = ""; 138 if(orderline1.GetString("Ecom:Order:OrderLine.ProductName").Contains("Repack Service")){ 139 foreach (LoopItem orderLineField in orderline1.GetLoop("Order.OrderLineFields")){ 140 repackString = orderLineField.GetString("Ecom:Order:OrderLine.OrderLineField.Value")+"|"; 141 } 142 repackString += orderline1.GetValue("Ecom:Order:OrderLine.Quantity") + "|" + orderline1.GetString("Ecom:Order:OrderLine.Price.PriceFormatted"); 143 list.Add(repackString); 144 145 } 146 } 147 double delCharges = 0; 148 var subtotal = ""; 149 double presubtotal = 0; 150 delCharges = GetDouble("Ecom:Order.ShippingFee.PriceWithVAT"); 151 presubtotal = GetDouble("Ecom:Order.PriceWithoutDiscounts.PriceWithVAT") - delCharges; 152 subtotal = GetString("Ecom:Order.Currency.Symbol") + string.Format("{0:#0.00}", @presubtotal); 153 <div class="dropdown-cart FixedHeightContainer"> 154 155 @if (GetInteger("Ecom:Order.OrderLines.TotalProductQuantity") > 0) 156 { 157 158 159 160 <div class="cart-content scrollminicart"> 161 @{string imgpath="/Files/Images/Ecom/Products/";} 162 @foreach (var orderline in GetLoop("OrderLines")) 163 { 164 165 var isVoucher = false; 166 if(orderline.GetString("Ecom:Order:OrderLine.Type") == "1") 167 { 168 isVoucher = true; 169 } 170 var pid = orderline.GetString("Ecom:Order:OrderLine.ProductID"); 171 var pNo=orderline.GetString("Ecom:Order:OrderLine.ProductNumber"); 172 var image = orderline.GetString("Ecom:Product.ImageSmall.Default.Clean"); 173 string imgpathjpg=imgpath+pid+".jpg"; 174 string imgpathpng=imgpath+pid+".png"; 175 var absolutePathsjpg = System.Web.HttpContext.Current.Server.MapPath("~/"+ imgpathjpg); 176 var absolutePathpng = System.Web.HttpContext.Current.Server.MapPath("~/"+ imgpathpng); 177 if(System.IO.File.Exists(absolutePathsjpg)){ 178 image=imgpathjpg; 179 } 180 else if(System.IO.File.Exists(absolutePathpng)){ 181 image=imgpathpng; 182 } 183 184 var repackTrue= false; 185 var repackID = ""; 186 var repackQuantity = ""; 187 var repackPrice =""; 188 for (int j=0; j<@list.Count;j++){ 189 190 string[] stringlist = list[j].Split('|'); 191 if(stringlist[0]==pid){ 192 repackTrue = true; 193 repackQuantity = stringlist[1]; 194 repackPrice = stringlist[2]; 195 } 196 } 197 if(orderline.GetString("Ecom:Order:OrderLine.ProductName")!="$3 Repack Service" && orderline.GetString("Ecom:Order:OrderLine.ProductName")!="$4 Repack Service"){ 198 199 if(orderline.GetString("Ecom:Order:OrderLine.Type")!="3") 200 { 201 202 <div class="cart-row"> 203 @if(!orderline.GetString("Ecom:Order:OrderLine.ProductName").Contains("Repack Service")) 204 { 205 <div class="cart-img"> 206 @if(!isVoucher) 207 { 208 <img src="/Admin/Public/GetImage.ashx?width=50&image=@image&Compression=99" class="img-center" alt=""> 209 } 210 else 211 { 212 <p>&nbsp;</p> 213 } 214 </div> 215 }else{ 216 <div class="cart-img"> 217 <p>&nbsp;</p> 218 </div> 219 } 220 <div class="cart-details"> 221 <p class="bold"> 222 <a href="@orderline.GetValue(" ecom:order:orderline.productlink")"=""> 223 <p style="margin: 0px;">@orderline.GetString("Ecom:Product:Field.ProductBrand")</p> 224 <p style="margin: 0px;">@orderline.GetString("Ecom:Order:OrderLine.ProductName")</p> 225 </a> 226 <br>@orderline.GetString("Ecom:Order:OrderLine.ProductVariantText")</p> 227 228 @if(!isVoucher) 229 { 230 <table> 231 <tr style="font-size:12px;"> 232 <td>@Translate("Item No","Item No")&nbsp;</td> 233 <td>: @pNo </td> 234 </tr> 235 @if(!string.IsNullOrWhiteSpace(orderline.GetString("Ecom:Product:Field.Flavour"))) 236 { 237 <tr style="font-size:12px;"> 238 <td>@Translate("Flavour","Flavour")&nbsp;</td> 239 <td>:&nbsp;@orderline.GetString("Ecom:Product:Field.Flavour")</td> 240 </tr> 241 } 242 <tr style="font-size:12px;"> 243 <td>@Translate("Quantity","Quantity")&nbsp;</td> 244 <td>: @orderline.GetValue("Ecom:Order:OrderLine.Quantity")</td> 245 </tr> 246 </table> 247 } 248 </div> 249 250 251 @if(orderline.GetString("Ecom:Order:OrderLine.Price.PriceFormatted") != orderline.GetString("Ecom:Order:OrderLine.TotalPriceWithProductDiscounts")) 252 { 253 <span style="text-decoration:line-through;"> 254 @GetString("Ecom:Order.Currency.Symbol")@orderline.GetString("Ecom:Order:OrderLine.Price.Price") 255 256 </span> 257 <br> 258 @orderline.GetValue("Ecom:Order:OrderLine.TotalPriceWithProductDiscounts") 259 260 } 261 else if(orderline.GetString("Ecom:Order:OrderLine.Type") == "1") 262 { 263 264 <span>(@GetString("Ecom:Order.Currency.Symbol")@orderline.GetString("Ecom:Order:OrderLine.Price.PriceWithVAT").Replace("-",""))</span> 265 266 } 267 else 268 { 269 @GetString("Ecom:Order.Currency.Symbol")@orderline.GetString("Ecom:Order:OrderLine.Price.PriceWithVAT") 270 } 271 272 </div> 273 274 } 275 else if(orderline.GetString("Ecom:Order:OrderLine.Type")=="3" && String.IsNullOrWhiteSpace(orderline.GetString("Ecom:Order:OrderLine.ParentLineID"))) 276 { 277 <div class="cart-row"> 278 <div class="cart-img"> 279 <p>&nbsp;</p> 280 </div> 281 <div class="cart-details"> 282 <p class="bold"><a href="@orderline.GetValue(" ecom:order:orderline.productlink")"=""> 283 <span id="name@(pid)">@orderline.GetValue("Ecom:Order:OrderLine.ProductName")</span></a> 284 <br>@orderline.GetString("Ecom:Order:OrderLine.ProductVariantText")</p> 285 </div> 286 @GetString("Ecom:Order.Currency.Symbol")@orderline.GetString("Ecom:Order:OrderLine.Price.PriceWithVAT") 287 </div> 288 } 289 if(repackTrue) 290 { 291 <div class="cart-row"> 292 <div class="cart-img">&nbsp;</div> 293 <div class="cart-details"> 294 <table style="font-size: 12px !important;"> 295 <tbody> 296 <tr class="bold">Repack</tr> 297 <tr><td>Quantity:&nbsp;</td><td>@repackQuantity</td></tr> 298 299 </tbody> 300 </table> 301 </div> 302 <b> @repackPrice </b> 303 </div> 304 } 305 } 306 } 307 </div> 308 <hr class="grey"> 309 <div class="cart-bottom"> 310 @{ var saveDeliveryFee = 499.00 - GetDouble("Ecom:Order.PriceWithoutTaxes.PriceWithVAT") + GetDouble("Ecom:Order.ShippingFee.PriceWithVAT.Value"); } 311 @if(saveDeliveryFee > 0) 312 { 313 <div class="cart-highlight">@Translate("Spend") @GetString("Ecom:Order.Currency.Symbol")@string.Format("{0:0.00}",saveDeliveryFee) @Translate("more to save on delivery")</div> 314 } 315 <div class="cart-total"> 316 <table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-size:14px;"> 317 <tr> 318 <td class="title">@Translate("Subtotal","Subtotal")</td> 319 <td>:</td> 320 <td class="price">@subtotal</td> 321 </tr> 322 <!--<tr> 323 <td class="title">@Translate("Delivery","Delivery")</td> 324 <td>:</td> 325 @if(GetDouble("Ecom:Order.ShippingFee.Price") == 0.00) 326 { 327 <td class="price">Free</td> 328 } 329 else 330 { 331 <td class="price">@GetString("Ecom:Order.ShippingFee.PriceWithVATFormatted")</td> 332 } 333 </tr>--> 334 <tr> 335 <td class="title">@Translate("Discount","Discount")</td> 336 <td>:</td> 337 <td class="price">(@GetString("Ecom:Order.Currency.Symbol")@GetString("Ecom:Order.TotalDiscount.PriceWithVAT").Replace("-",""))</td> 338 </tr> 339 340 <tr> 341 <td class="title">@Translate("Total","Total")</td> 342 <td>:</td> 343 <td class="price">@GetString("Ecom:Order.Currency.Symbol")@GetString("Ecom:Order.PriceWithoutFees.PriceWithVAT")</td> 344 </tr> 345 </table> 346 347 </div> 348 </div> 349 <br> 350 <div class="cart-button"> 351 @{ var cartid = GetValue("DwAreaCartPageID"); 352 var tempcartid = GetGlobalValue("Global:Area.LongLang") + "/shopping-cart"; 353 } 354 355 <a class="btn-continue" id="btn-continue" onclick='$(".cart-info-box").slideToggle();' href="javascript:void(0)">@Translate("Continue Shopping") »</a> 356 357 <div class="btn-addto-cart"> 358 <a href="@tempcartid"><i class="fa fa-shopping-cart"></i> @Translate("View Cart & Checkout")</a> 359 </div> 360 </div> 361 362 } 363 else 364 { 365 <span class="cart-items">@Translate("Your shopping cart is empty.", "Your shopping cart is empty.")</span> 366 } 367 </div> 368 <text> 369 </text> 370 } 371 <style> 372 .FixedHeightContainer 373 { 374 height: auto; 375 } 376 .scrollminicart 377 { 378 height:224px; 379 overflow:auto; 380 } 381 </style> 382 383 @{ 384 try { 385 if (HttpContext.Current.Request.Cookies["_dyid"] != null) { 386 string testlabel = HttpContext.Current.Request.Cookies["_dyid"].Value; 387 HttpCookie myCookie = new HttpCookie("_dyid_server"); 388 myCookie.Value = testlabel; 389 myCookie.Domain = "petloverscentre.co.th"; 390 myCookie.Expires = DateTime.Now.AddYears(1); 391 myCookie.HttpOnly = false; 392 myCookie.Secure = true; 393 HttpContext.Current.Response.Cookies.Add(myCookie); 394 395 } 396 } catch { } 397 398 string charset = GetString("CharSet"); 399 int otherLangPageId = GetInteger("Item.Page.OtherLangPageId.Value"); 400 401 string CustomerCareHyperLink = @GetString("Item.Area.CustomerCare_HyperLink"); 402 } 403 404 <!DOCTYPE html> 405 <html lang="en"> 406 <head> 407 <!-- Google Tag Manager --> 408 <script> 409 (function (w, d, s, l, i) { 410 w[l] = w[l] || []; w[l].push({ 411 'gtm.start': 412 new Date().getTime(), event: 'gtm.js' 413 }); var f = d.getElementsByTagName(s)[0], 414 j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 415 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); 416 })(window, document, 'script', 'dataLayer', 'GTM-W354W5N'); 417 </script> 418 <!-- End Google Tag Manager --> 419 <meta charset="@charset"> 420 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0"> 421 <meta name="format-detection" content="telephone=no"> 422 @{ 423 string MetaDescription = GetString("Meta.Description"); 424 string MetaKeywords = GetString("Meta.Keywords"); 425 string MetaTitle = GetString("Meta.Title"); 426 string favicon = GetString("Item.Area.Favicon"); 427 string sitepath = "https://plc-dev.dynamicwebapac.com/Files/Templates/Designs/PLC/"; 428 string globalurl = "/Default.aspx?ID=" + GetString("DwAreaFirstPageID"); 429 //15 January 2017 start 430 sitepath = System.Web.HttpContext.Current.Request.Url.Scheme + "://" + System.Web.HttpContext.Current.Request.Url.Host + "/Files/Templates/Designs/PLC/"; 431 //15 January 2017 end 432 //string countrySelection = new System.Net.WebClient().DownloadString("http://" + System.Web.HttpContext.Current.Request.Url.Host + "/utilities/country-selector"); 433 string countrySelection = new System.Net.WebClient().DownloadString("http://" + System.Web.HttpContext.Current.Request.Url.Host + "/Default.aspx?ID=" + GetPageIdByNavigationTag("CountrySelector").ToString()); 434 string sysMaintenanceNoti = GetString("Item.Area.System_Notification_Text"); 435 string fridayMaintenanceNoti = GetString("Item.Area.Day_Notification_Bar_Text"); 436 string maintenanceTimeNoti = GetString("Item.Area.Maintenance_Time_Notification_Bar_Text"); 437 string productQty = "0"; 438 if (GetString("Ecom:Order.OrderLines.TotalProductQuantity") != "") 439 { 440 productQty = GetString("Ecom:Order.OrderLines.TotalProductQuantity"); 441 } 442 443 TimeSpan maintenanceTimeNotiStartTime = new TimeSpan(GetInteger("Item.Area.Maintenance_Time_Notification_Start_Time_Hour"), GetInteger("Item.Area.Maintenance_Time_Notification_Start_Time_Minute"), 0); 444 TimeSpan maintenanceTimeNotiEndTime = new TimeSpan(GetInteger("Item.Area.Maintenance_Time_Notification_End_Time_Hour"), GetInteger("Item.Area.Maintenance_Time_Notification_End_Time_Minute"), 0); 445 TimeSpan startTime = new TimeSpan(GetInteger("Item.Area.System_Notification_Start_Time_Hour"), GetInteger("Item.Area.System_Notification_Start_Time_Minutes"), 0); 446 TimeSpan endTime = new TimeSpan(GetInteger("Item.Area.System_Notification_End_Time_Hour"), GetInteger("Item.Area.System_Notification_End_Time_Minutes"), 0); 447 TimeSpan serverTime = DateTime.Now.TimeOfDay; 448 TimeSpan friStartTime = new TimeSpan(GetInteger("Item.Area.Day_Notification_Starting_Time_Hour"), GetInteger("Item.Area.Day_Notification_Starting_Time_Minutes"), 0); 449 TimeSpan friEndTime = new TimeSpan(GetInteger("Item.Area.Day_Notification_End_Time_Hour"), GetInteger("Item.Area.Day_Notification_End_Time_Minutes"), 0); 450 string checkDay = DateTime.Now.ToString("dddd").ToUpper(); 451 string templateFolder = System.Web.HttpContext.Current.Request.Url.Scheme + "://" + System.Web.HttpContext.Current.Request.Url.Host + "/Files/Templates/Designs/PLC/"; 452 453 string goToRegistration = string.Empty; 454 if (GetGlobalValue("Global:Area.Lang").ToUpper() == "EN") 455 { 456 goToRegistration = "/en-us/register"; 457 } 458 else 459 { 460 goToRegistration = "/th-th/register"; 461 } 462 } 463 464 465 466 <title>@GetValue("Title")</title> 467 @GetValue("MetaTags") 468 @GetValue("CopyRightNotice") 469 470 <link rel="shortcut icon" href="@favicon"> 471 <link rel="apple-touch-icon-precomposed" sizes="144x144" href="/Files/Templates/Designs/PLC/assets/images/ico/apple-touch-icon-144-precomposed.png"> 472 <link rel="apple-touch-icon-precomposed" sizes="114x114" href="/Files/Templates/Designs/PLC/assets/images/ico/apple-touch-icon-114-precomposed.png"> 473 <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/Files/Templates/Designs/PLC/assets/images/ico/apple-touch-icon-72-precomposed.png"> 474 <link rel="apple-touch-icon-precomposed" href="/Files/Templates/Designs/PLC/assets/images/ico/apple-touch-icon-57-precomposed.png"> 475 476 <link rel="stylesheet" href="/Files/Templates/Designs/PLC/assets/css/bootstrap.min.css" type="text/css"> 477 <link href="/Files/Templates/Designs/PLC/assets/css/simplegrid.css?v=2.5" rel="stylesheet" type="text/css"> 478 <link href="/Files/Templates/Designs/PLC/assets/css/style_v2.2.css?v=2.5.4" rel="stylesheet" type="text/css"> 479 480 <link href="/Files/Templates/Designs/PLC/assets/css/dropdown.css" rel="stylesheet" type="text/css"> 481 <link href="/Files/Templates/Designs/PLC/assets/css/jetmenu.css?v=2.2.8" rel="stylesheet"> 482 <link rel="stylesheet" href="/Files/Templates/Designs/PLC/assets/css/tipso.css"> 483 <link href="/Files/Templates/Designs/PLC/assets/css/allinone_bannerRotator.css" rel="stylesheet" type="text/css"> 484 <link href="/Files/Templates/Designs/PLC/assets/css/jquery.bxslider.css" rel="stylesheet" type="text/css"> 485 <link href="/Files/Templates/Designs/PLC/assets/css/jquery.mCustomScrollbar.css" type="text/css" rel="stylesheet"> 486 <link href="/Files/Templates/Designs/PLC/assets/css/responsive_v1.css?v=2.9.8" rel="stylesheet" type="text/css" rel="stylesheet"> 487 <link href="/Files/Templates/Designs/PLC/assets/css/hover_effect.css" rel="stylesheet" type="text/css" rel="stylesheet"> 488 <link rel="stylesheet" type="text/css" href="/Files/Templates/Designs/PLC/shop_locator/src/style/css/pluginStyle.css"> 489 <link rel="stylesheet" type="text/css" href="/Files/Templates/Designs/PLC/assets/css/accordion.css"> 490 <link rel="stylesheet" type="text/css" href="/Files/Templates/Designs/PLC/fancybox/jquery.fancybox.css?v=2.1.5" media="screen"> 491 <link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap-glyphicons.css" rel="stylesheet"> 492 <link rel="stylesheet" href="/Files/Templates/Designs/PLC/assets/css/jquery-ui.css"> 493 <link rel="stylesheet" href="/Files/Templates/Designs/Dwsimple/css/bootstrap-chosen.css"> 494 495 <script type="text/javascript" src="/Files/Templates/Designs/PLC/js/modernizr.custom.79639.js"></script> 496 <script src="/Files/Templates/Designs/PLC/js/jquery.min.js"></script> 497 <script src="/Files/Templates/Designs/PLC/js/jquery.blockUI.js"></script> 498 <script src="/Files/Templates/Designs/PLC/js/jquery.cookie.js"></script> 499 <script src="/Files/Templates/Designs/PLC/js/html5shiv.js" type="text/javascript"></script> 500 501 <script> 502 function getCookie(cname) { 503 var name = cname + "="; 504 var ca = document.cookie.split(';'); 505 for (var i = 0; i < ca.length; i++) { 506 var c = ca[i]; 507 while (c.charAt(0) == ' ') { 508 c = c.substring(1); 509 } 510 if (c.indexOf(name) == 0) { 511 return c.substring(name.length, c.length); 512 } 513 } 514 return ""; 515 } 516 517 $(document).ready(function () { 518 if (navigator.userAgent.match(/pixel/i)) { 519 $("#noprint").addClass("pixel-noprint"); 520 } 521 if (navigator.userAgent.match(/pixel 4 xl/i)) { 522 $("#mainpg").addClass("pixel-top"); 523 $("#noprint").addClass("pixel-noprint"); 524 } 525 $(".cart-info-box").hide(); 526 $(function () { 527 $('.top-cart-info').click(function (e) { 528 e.stopImmediatePropagation(); 529 $('.cart-info-box').slideToggle(); 530 }); 531 }); 532 $('.btnLogout').click(function () { 533 $.removeCookie('Dynamicweb:Ecom:Cart', null, { path: '/' }); 534 //console.log($.cookie('Dynamicweb:Ecom:Cart')); 535 }); 536 $('#showhidebtn').click(function () { 537 $("#impersonDiv").slideToggle(); 538 }); 539 }); 540 541 var googleRecaptcha = '@GetString("Item.Area.Google_Recaptcha")'; 542 543 $('a').on('click touchend', function (e) { 544 var el = $(this); 545 var link = el.attr('href'); 546 window.location = link; 547 }); 548 </script> 549 <script> 550 /* Chosen v1.1.0 | (c) 2011-2013 by Harvest | MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md */ 551 !function () { var a, AbstractChosen, Chosen, SelectParser, b, c = {}.hasOwnProperty, d = function (a, b) { function d() { this.constructor = a } for (var e in b) c.call(b, e) && (a[e] = b[e]); return d.prototype = b.prototype, a.prototype = new d, a.__super__ = b.prototype, a }; SelectParser = function () { function SelectParser() { this.options_index = 0, this.parsed = [] } return SelectParser.prototype.add_node = function (a) { return "OPTGROUP" === a.nodeName.toUpperCase() ? this.add_group(a) : this.add_option(a) }, SelectParser.prototype.add_group = function (a) { var b, c, d, e, f, g; for (b = this.parsed.length, this.parsed.push({ array_index: b, group: !0, label: this.escapeExpression(a.label), children: 0, disabled: a.disabled }), f = a.childNodes, g = [], d = 0, e = f.length; e > d; d++)c = f[d], g.push(this.add_option(c, b, a.disabled)); return g }, SelectParser.prototype.add_option = function (a, b, c) { return "OPTION" === a.nodeName.toUpperCase() ? ("" !== a.text ? (null != b && (this.parsed[b].children += 1), this.parsed.push({ array_index: this.parsed.length, options_index: this.options_index, value: a.value, text: a.text, html: a.innerHTML, selected: a.selected, disabled: c === !0 ? c : a.disabled, group_array_index: b, classes: a.className, style: a.style.cssText })) : this.parsed.push({ array_index: this.parsed.length, options_index: this.options_index, empty: !0 }), this.options_index += 1) : void 0 }, SelectParser.prototype.escapeExpression = function (a) { var b, c; return null == a || a === !1 ? "" : /[\&\<\>\"\'\`]/.test(a) ? (b = { "<": "&lt;", ">": "&gt;", '"': "&quot;", "'": "&#x27;", "`": "&#x60;" }, c = /&(?!\w+;)|[\<\>\"\'\`]/g, a.replace(c, function (a) { return b[a] || "&amp;" })) : a }, SelectParser }(), SelectParser.select_to_array = function (a) { var b, c, d, e, f; for (c = new SelectParser, f = a.childNodes, d = 0, e = f.length; e > d; d++)b = f[d], c.add_node(b); return c.parsed }, AbstractChosen = function () { function AbstractChosen(a, b) { this.form_field = a, this.options = null != b ? b : {}, AbstractChosen.browser_is_supported() && (this.is_multiple = this.form_field.multiple, this.set_default_text(), this.set_default_values(), this.setup(), this.set_up_html(), this.register_observers()) } return AbstractChosen.prototype.set_default_values = function () { var a = this; return this.click_test_action = function (b) { return a.test_active_click(b) }, this.activate_action = function (b) { return a.activate_field(b) }, this.active_field = !1, this.mouse_on_container = !1, this.results_showing = !1, this.result_highlighted = null, this.allow_single_deselect = null != this.options.allow_single_deselect && null != this.form_field.options[0] && "" === this.form_field.options[0].text ? this.options.allow_single_deselect : !1, this.disable_search_threshold = this.options.disable_search_threshold || 0, this.disable_search = this.options.disable_search || !1, this.enable_split_word_search = null != this.options.enable_split_word_search ? this.options.enable_split_word_search : !0, this.group_search = null != this.options.group_search ? this.options.group_search : !0, this.search_contains = this.options.search_contains || !1, this.single_backstroke_delete = null != this.options.single_backstroke_delete ? this.options.single_backstroke_delete : !0, this.max_selected_options = this.options.max_selected_options || 1 / 0, this.inherit_select_classes = this.options.inherit_select_classes || !1, this.display_selected_options = null != this.options.display_selected_options ? this.options.display_selected_options : !0, this.display_disabled_options = null != this.options.display_disabled_options ? this.options.display_disabled_options : !0 }, AbstractChosen.prototype.set_default_text = function () { return this.default_text = this.form_field.getAttribute("data-placeholder") ? this.form_field.getAttribute("data-placeholder") : this.is_multiple ? this.options.placeholder_text_multiple || this.options.placeholder_text || AbstractChosen.default_multiple_text : this.options.placeholder_text_single || this.options.placeholder_text || AbstractChosen.default_single_text, this.results_none_found = this.form_field.getAttribute("data-no_results_text") || this.options.no_results_text || AbstractChosen.default_no_result_text }, AbstractChosen.prototype.mouse_enter = function () { return this.mouse_on_container = !0 }, AbstractChosen.prototype.mouse_leave = function () { return this.mouse_on_container = !1 }, AbstractChosen.prototype.input_focus = function () { var a = this; if (this.is_multiple) { if (!this.active_field) return setTimeout(function () { return a.container_mousedown() }, 50) } else if (!this.active_field) return this.activate_field() }, AbstractChosen.prototype.input_blur = function () { var a = this; return this.mouse_on_container ? void 0 : (this.active_field = !1, setTimeout(function () { return a.blur_test() }, 100)) }, AbstractChosen.prototype.results_option_build = function (a) { var b, c, d, e, f; for (b = "", f = this.results_data, d = 0, e = f.length; e > d; d++)c = f[d], b += c.group ? this.result_add_group(c) : this.result_add_option(c), (null != a ? a.first : void 0) && (c.selected && this.is_multiple ? this.choice_build(c) : c.selected && !this.is_multiple && this.single_set_selected_text(c.text)); return b }, AbstractChosen.prototype.result_add_option = function (a) { var b, c; return a.search_match ? this.include_option_in_results(a) ? (b = [], a.disabled || a.selected && this.is_multiple || b.push("active-result"), !a.disabled || a.selected && this.is_multiple || b.push("disabled-result"), a.selected && b.push("result-selected"), null != a.group_array_index && b.push("group-option"), "" !== a.classes && b.push(a.classes), c = document.createElement("li"), c.className = b.join(" "), c.style.cssText = a.style, c.setAttribute("data-option-array-index", a.array_index), c.innerHTML = a.search_text, this.outerHTML(c)) : "" : "" }, AbstractChosen.prototype.result_add_group = function (a) { var b; return a.search_match || a.group_match ? a.active_options > 0 ? (b = document.createElement("li"), b.className = "group-result", b.innerHTML = a.search_text, this.outerHTML(b)) : "" : "" }, AbstractChosen.prototype.results_update_field = function () { return this.set_default_text(), this.is_multiple || this.results_reset_cleanup(), this.result_clear_highlight(), this.results_build(), this.results_showing ? this.winnow_results() : void 0 }, AbstractChosen.prototype.reset_single_select_options = function () { var a, b, c, d, e; for (d = this.results_data, e = [], b = 0, c = d.length; c > b; b++)a = d[b], a.selected ? e.push(a.selected = !1) : e.push(void 0); return e }, AbstractChosen.prototype.results_toggle = function () { return this.results_showing ? this.results_hide() : this.results_show() }, AbstractChosen.prototype.results_search = function () { return this.results_showing ? this.winnow_results() : this.results_show() }, AbstractChosen.prototype.winnow_results = function () { var a, b, c, d, e, f, g, h, i, j, k, l, m; for (this.no_results_clear(), e = 0, g = this.get_search_text(), a = g.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), d = this.search_contains ? "" : "^", c = new RegExp(d + a, "i"), j = new RegExp(a, "i"), m = this.results_data, k = 0, l = m.length; l > k; k++)b = m[k], b.search_match = !1, f = null, this.include_option_in_results(b) && (b.group && (b.group_match = !1, b.active_options = 0), null != b.group_array_index && this.results_data[b.group_array_index] && (f = this.results_data[b.group_array_index], 0 === f.active_options && f.search_match && (e += 1), f.active_options += 1), (!b.group || this.group_search) && (b.search_text = b.group ? b.label : b.html, b.search_match = this.search_string_match(b.search_text, c), b.search_match && !b.group && (e += 1), b.search_match ? (g.length && (h = b.search_text.search(j), i = b.search_text.substr(0, h + g.length) + "</em>" + b.search_text.substr(h + g.length), b.search_text = i.substr(0, h) + "<em>" + i.substr(h)), null != f && (f.group_match = !0)) : null != b.group_array_index && this.results_data[b.group_array_index].search_match && (b.search_match = !0))); return this.result_clear_highlight(), 1 > e && g.length ? (this.update_results_content(""), this.no_results(g)) : (this.update_results_content(this.results_option_build()), this.winnow_results_set_highlight()) }, AbstractChosen.prototype.search_string_match = function (a, b) { var c, d, e, f; if (b.test(a)) return !0; if (this.enable_split_word_search && (a.indexOf(" ") >= 0 || 0 === a.indexOf("[")) && (d = a.replace(/\[|\]/g, "").split(" "), d.length)) for (e = 0, f = d.length; f > e; e++)if (c = d[e], b.test(c)) return !0 }, AbstractChosen.prototype.choices_count = function () { var a, b, c, d; if (null != this.selected_option_count) return this.selected_option_count; for (this.selected_option_count = 0, d = this.form_field.options, b = 0, c = d.length; c > b; b++)a = d[b], a.selected && (this.selected_option_count += 1); return this.selected_option_count }, AbstractChosen.prototype.choices_click = function (a) { return a.preventDefault(), this.results_showing || this.is_disabled ? void 0 : this.results_show() }, AbstractChosen.prototype.keyup_checker = function (a) { var b, c; switch (b = null != (c = a.which) ? c : a.keyCode, this.search_field_scale(), b) { case 8: if (this.is_multiple && this.backstroke_length < 1 && this.choices_count() > 0) return this.keydown_backstroke(); if (!this.pending_backstroke) return this.result_clear_highlight(), this.results_search(); break; case 13: if (a.preventDefault(), this.results_showing) return this.result_select(a); break; case 27: return this.results_showing && this.results_hide(), !0; case 9: case 38: case 40: case 16: case 91: case 17: break; default: return this.results_search() } }, AbstractChosen.prototype.clipboard_event_checker = function () { var a = this; return setTimeout(function () { return a.results_search() }, 50) }, AbstractChosen.prototype.container_width = function () { return null != this.options.width ? this.options.width : "" + this.form_field.offsetWidth + "px" }, AbstractChosen.prototype.include_option_in_results = function (a) { return this.is_multiple && !this.display_selected_options && a.selected ? !1 : !this.display_disabled_options && a.disabled ? !1 : a.empty ? !1 : !0 }, AbstractChosen.prototype.search_results_touchstart = function (a) { return this.touch_started = !0, this.search_results_mouseover(a) }, AbstractChosen.prototype.search_results_touchmove = function (a) { return this.touch_started = !1, this.search_results_mouseout(a) }, AbstractChosen.prototype.search_results_touchend = function (a) { return this.touch_started ? this.search_results_mouseup(a) : void 0 }, AbstractChosen.prototype.outerHTML = function (a) { var b; return a.outerHTML ? a.outerHTML : (b = document.createElement("div"), b.appendChild(a), b.innerHTML) }, AbstractChosen.browser_is_supported = function () { return "Microsoft Internet Explorer" === window.navigator.appName ? document.documentMode >= 8 : /iP(od|hone)/i.test(window.navigator.userAgent) ? !0 : /Android/i.test(window.navigator.userAgent) && /Mobile/i.test(window.navigator.userAgent) ? !0 : !0 }, AbstractChosen.default_multiple_text = "Select Some Options", AbstractChosen.default_single_text = "Select an Option", AbstractChosen.default_no_result_text = "No results match", AbstractChosen }(), a = jQuery, a.fn.extend({ chosen: function (b) { return AbstractChosen.browser_is_supported() ? this.each(function () { var c, d; c = a(this), d = c.data("chosen"), "destroy" === b && d ? d.destroy() : d || c.data("chosen", new Chosen(this, b)) }) : this } }), Chosen = function (c) { function Chosen() { return b = Chosen.__super__.constructor.apply(this, arguments) } return d(Chosen, c), Chosen.prototype.setup = function () { return this.form_field_jq = a(this.form_field), this.current_selectedIndex = this.form_field.selectedIndex, this.is_rtl = this.form_field_jq.hasClass("chosen-rtl") }, Chosen.prototype.set_up_html = function () { var b, c; return b = ["chosen-container"], b.push("chosen-container-" + (this.is_multiple ? "multi" : "single")), this.inherit_select_classes && this.form_field.className && b.push(this.form_field.className), this.is_rtl && b.push("chosen-rtl"), c = { "class": b.join(" "), style: "width: " + this.container_width() + ";", title: this.form_field.title }, this.form_field.id.length && (c.id = this.form_field.id.replace(/[^\w]/g, "_") + "_chosen"), this.container = a("<div />", c), this.is_multiple ? this.container.html('<ul class="chosen-choices"><li class="search-field"><input type="text" value="' + this.default_text + '" class="default" autocomplete="off" style="width:25px;" /></li></ul><div class="chosen-drop"><ul class="chosen-results"></ul></div>') : this.container.html('<a class="chosen-single chosen-default" tabindex="-1"><span>' + this.default_text + '</span><div><b></b></div></a><div class="chosen-drop"><div class="chosen-search"><input type="text" autocomplete="off" /></div><ul class="chosen-results"></ul></div>'), this.form_field_jq.hide().after(this.container), this.dropdown = this.container.find("div.chosen-drop").first(), this.search_field = this.container.find("input").first(), this.search_results = this.container.find("ul.chosen-results").first(), this.search_field_scale(), this.search_no_results = this.container.find("li.no-results").first(), this.is_multiple ? (this.search_choices = this.container.find("ul.chosen-choices").first(), this.search_container = this.container.find("li.search-field").first()) : (this.search_container = this.container.find("div.chosen-search").first(), this.selected_item = this.container.find(".chosen-single").first()), this.results_build(), this.set_tab_index(), this.set_label_behavior(), this.form_field_jq.trigger("chosen:ready", { chosen: this }) }, Chosen.prototype.register_observers = function () { var a = this; return this.container.bind("mousedown.chosen", function (b) { a.container_mousedown(b) }), this.container.bind("mouseup.chosen", function (b) { a.container_mouseup(b) }), this.container.bind("mouseenter.chosen", function (b) { a.mouse_enter(b) }), this.container.bind("mouseleave.chosen", function (b) { a.mouse_leave(b) }), this.search_results.bind("mouseup.chosen", function (b) { a.search_results_mouseup(b) }), this.search_results.bind("mouseover.chosen", function (b) { a.search_results_mouseover(b) }), this.search_results.bind("mouseout.chosen", function (b) { a.search_results_mouseout(b) }), this.search_results.bind("mousewheel.chosen DOMMouseScroll.chosen", function (b) { a.search_results_mousewheel(b) }), this.search_results.bind("touchstart.chosen", function (b) { a.search_results_touchstart(b) }), this.search_results.bind("touchmove.chosen", function (b) { a.search_results_touchmove(b) }), this.search_results.bind("touchend.chosen", function (b) { a.search_results_touchend(b) }), this.form_field_jq.bind("chosen:updated.chosen", function (b) { a.results_update_field(b) }), this.form_field_jq.bind("chosen:activate.chosen", function (b) { a.activate_field(b) }), this.form_field_jq.bind("chosen:open.chosen", function (b) { a.container_mousedown(b) }), this.form_field_jq.bind("chosen:close.chosen", function (b) { a.input_blur(b) }), this.search_field.bind("blur.chosen", function (b) { a.input_blur(b) }), this.search_field.bind("keyup.chosen", function (b) { a.keyup_checker(b) }), this.search_field.bind("keydown.chosen", function (b) { a.keydown_checker(b) }), this.search_field.bind("focus.chosen", function (b) { a.input_focus(b) }), this.search_field.bind("cut.chosen", function (b) { a.clipboard_event_checker(b) }), this.search_field.bind("paste.chosen", function (b) { a.clipboard_event_checker(b) }), this.is_multiple ? this.search_choices.bind("click.chosen", function (b) { a.choices_click(b) }) : this.container.bind("click.chosen", function (a) { a.preventDefault() }) }, Chosen.prototype.destroy = function () { return a(this.container[0].ownerDocument).unbind("click.chosen", this.click_test_action), this.search_field[0].tabIndex && (this.form_field_jq[0].tabIndex = this.search_field[0].tabIndex), this.container.remove(), this.form_field_jq.removeData("chosen"), this.form_field_jq.show() }, Chosen.prototype.search_field_disabled = function () { return this.is_disabled = this.form_field_jq[0].disabled, this.is_disabled ? (this.container.addClass("chosen-disabled"), this.search_field[0].disabled = !0, this.is_multiple || this.selected_item.unbind("focus.chosen", this.activate_action), this.close_field()) : (this.container.removeClass("chosen-disabled"), this.search_field[0].disabled = !1, this.is_multiple ? void 0 : this.selected_item.bind("focus.chosen", this.activate_action)) }, Chosen.prototype.container_mousedown = function (b) { return this.is_disabled || (b && "mousedown" === b.type && !this.results_showing && b.preventDefault(), null != b && a(b.target).hasClass("search-choice-close")) ? void 0 : (this.active_field ? this.is_multiple || !b || a(b.target)[0] !== this.selected_item[0] && !a(b.target).parents("a.chosen-single").length || (b.preventDefault(), this.results_toggle()) : (this.is_multiple && this.search_field.val(""), a(this.container[0].ownerDocument).bind("click.chosen", this.click_test_action), this.results_show()), this.activate_field()) }, Chosen.prototype.container_mouseup = function (a) { return "ABBR" !== a.target.nodeName || this.is_disabled ? void 0 : this.results_reset(a) }, Chosen.prototype.search_results_mousewheel = function (a) { var b; return a.originalEvent && (b = -a.originalEvent.wheelDelta || a.originalEvent.detail), null != b ? (a.preventDefault(), "DOMMouseScroll" === a.type && (b = 40 * b), this.search_results.scrollTop(b + this.search_results.scrollTop())) : void 0 }, Chosen.prototype.blur_test = function () { return !this.active_field && this.container.hasClass("chosen-container-active") ? this.close_field() : void 0 }, Chosen.prototype.close_field = function () { return a(this.container[0].ownerDocument).unbind("click.chosen", this.click_test_action), this.active_field = !1, this.results_hide(), this.container.removeClass("chosen-container-active"), this.clear_backstroke(), this.show_search_field_default(), this.search_field_scale() }, Chosen.prototype.activate_field = function () { return this.container.addClass("chosen-container-active"), this.active_field = !0, this.search_field.val(this.search_field.val()), this.search_field.focus() }, Chosen.prototype.test_active_click = function (b) { var c; return c = a(b.target).closest(".chosen-container"), c.length && this.container[0] === c[0] ? this.active_field = !0 : this.close_field() }, Chosen.prototype.results_build = function () { return this.parsing = !0, this.selected_option_count = null, this.results_data = SelectParser.select_to_array(this.form_field), this.is_multiple ? this.search_choices.find("li.search-choice").remove() : this.is_multiple || (this.single_set_selected_text(), this.disable_search || this.form_field.options.length <= this.disable_search_threshold ? (this.search_field[0].readOnly = !0, this.container.addClass("chosen-container-single-nosearch")) : (this.search_field[0].readOnly = !1, this.container.removeClass("chosen-container-single-nosearch"))), this.update_results_content(this.results_option_build({ first: !0 })), this.search_field_disabled(), this.show_search_field_default(), this.search_field_scale(), this.parsing = !1 }, Chosen.prototype.result_do_highlight = function (a) { var b, c, d, e, f; if (a.length) { if (this.result_clear_highlight(), this.result_highlight = a, this.result_highlight.addClass("highlighted"), d = parseInt(this.search_results.css("maxHeight"), 10), f = this.search_results.scrollTop(), e = d + f, c = this.result_highlight.position().top + this.search_results.scrollTop(), b = c + this.result_highlight.outerHeight(), b >= e) return this.search_results.scrollTop(b - d > 0 ? b - d : 0); if (f > c) return this.search_results.scrollTop(c) } }, Chosen.prototype.result_clear_highlight = function () { return this.result_highlight && this.result_highlight.removeClass("highlighted"), this.result_highlight = null }, Chosen.prototype.results_show = function () { return this.is_multiple && this.max_selected_options <= this.choices_count() ? (this.form_field_jq.trigger("chosen:maxselected", { chosen: this }), !1) : (this.container.addClass("chosen-with-drop"), this.results_showing = !0, this.search_field.focus(), this.search_field.val(this.search_field.val()), this.winnow_results(), this.form_field_jq.trigger("chosen:showing_dropdown", { chosen: this })) }, Chosen.prototype.update_results_content = function (a) { return this.search_results.html(a) }, Chosen.prototype.results_hide = function () { return this.results_showing && (this.result_clear_highlight(), this.container.removeClass("chosen-with-drop"), this.form_field_jq.trigger("chosen:hiding_dropdown", { chosen: this })), this.results_showing = !1 }, Chosen.prototype.set_tab_index = function () { var a; return this.form_field.tabIndex ? (a = this.form_field.tabIndex, this.form_field.tabIndex = -1, this.search_field[0].tabIndex = a) : void 0 }, Chosen.prototype.set_label_behavior = function () { var b = this; return this.form_field_label = this.form_field_jq.parents("label"), !this.form_field_label.length && this.form_field.id.length && (this.form_field_label = a("label[for='" + this.form_field.id + "']")), this.form_field_label.length > 0 ? this.form_field_label.bind("click.chosen", function (a) { return b.is_multiple ? b.container_mousedown(a) : b.activate_field() }) : void 0 }, Chosen.prototype.show_search_field_default = function () { return this.is_multiple && this.choices_count() < 1 && !this.active_field ? (this.search_field.val(this.default_text), this.search_field.addClass("default")) : (this.search_field.val(""), this.search_field.removeClass("default")) }, Chosen.prototype.search_results_mouseup = function (b) { var c; return c = a(b.target).hasClass("active-result") ? a(b.target) : a(b.target).parents(".active-result").first(), c.length ? (this.result_highlight = c, this.result_select(b), this.search_field.focus()) : void 0 }, Chosen.prototype.search_results_mouseover = function (b) { var c; return c = a(b.target).hasClass("active-result") ? a(b.target) : a(b.target).parents(".active-result").first(), c ? this.result_do_highlight(c) : void 0 }, Chosen.prototype.search_results_mouseout = function (b) { return a(b.target).hasClass("active-result") ? this.result_clear_highlight() : void 0 }, Chosen.prototype.choice_build = function (b) { var c, d, e = this; return c = a("<li />", { "class": "search-choice" }).html("<span>" + b.html + "</span>"), b.disabled ? c.addClass("search-choice-disabled") : (d = a("<a />", { "class": "search-choice-close", "data-option-array-index": b.array_index }), d.bind("click.chosen", function (a) { return e.choice_destroy_link_click(a) }), c.append(d)), this.search_container.before(c) }, Chosen.prototype.choice_destroy_link_click = function (b) { return b.preventDefault(), b.stopPropagation(), this.is_disabled ? void 0 : this.choice_destroy(a(b.target)) }, Chosen.prototype.choice_destroy = function (a) { return this.result_deselect(a[0].getAttribute("data-option-array-index")) ? (this.show_search_field_default(), this.is_multiple && this.choices_count() > 0 && this.search_field.val().length < 1 && this.results_hide(), a.parents("li").first().remove(), this.search_field_scale()) : void 0 }, Chosen.prototype.results_reset = function () { return this.reset_single_select_options(), this.form_field.options[0].selected = !0, this.single_set_selected_text(), this.show_search_field_default(), this.results_reset_cleanup(), this.form_field_jq.trigger("change"), this.active_field ? this.results_hide() : void 0 }, Chosen.prototype.results_reset_cleanup = function () { return this.current_selectedIndex = this.form_field.selectedIndex, this.selected_item.find("abbr").remove() }, Chosen.prototype.result_select = function (a) { var b, c; return this.result_highlight ? (b = this.result_highlight, this.result_clear_highlight(), this.is_multiple && this.max_selected_options <= this.choices_count() ? (this.form_field_jq.trigger("chosen:maxselected", { chosen: this }), !1) : (this.is_multiple ? b.removeClass("active-result") : this.reset_single_select_options(), c = this.results_data[b[0].getAttribute("data-option-array-index")], c.selected = !0, this.form_field.options[c.options_index].selected = !0, this.selected_option_count = null, this.is_multiple ? this.choice_build(c) : this.single_set_selected_text(c.text), (a.metaKey || a.ctrlKey) && this.is_multiple || this.results_hide(), this.search_field.val(""), (this.is_multiple || this.form_field.selectedIndex !== this.current_selectedIndex) && this.form_field_jq.trigger("change", { selected: this.form_field.options[c.options_index].value }), this.current_selectedIndex = this.form_field.selectedIndex, this.search_field_scale())) : void 0 }, Chosen.prototype.single_set_selected_text = function (a) { return null == a && (a = this.default_text), a === this.default_text ? this.selected_item.addClass("chosen-default") : (this.single_deselect_control_build(), this.selected_item.removeClass("chosen-default")), this.selected_item.find("span").text(a) }, Chosen.prototype.result_deselect = function (a) { var b; return b = this.results_data[a], this.form_field.options[b.options_index].disabled ? !1 : (b.selected = !1, this.form_field.options[b.options_index].selected = !1, this.selected_option_count = null, this.result_clear_highlight(), this.results_showing && this.winnow_results(), this.form_field_jq.trigger("change", { deselected: this.form_field.options[b.options_index].value }), this.search_field_scale(), !0) }, Chosen.prototype.single_deselect_control_build = function () { return this.allow_single_deselect ? (this.selected_item.find("abbr").length || this.selected_item.find("span").first().after('<abbr class="search-choice-close"></abbr>'), this.selected_item.addClass("chosen-single-with-deselect")) : void 0 }, Chosen.prototype.get_search_text = function () { return this.search_field.val() === this.default_text ? "" : a("<div/>").text(a.trim(this.search_field.val())).html() }, Chosen.prototype.winnow_results_set_highlight = function () { var a, b; return b = this.is_multiple ? [] : this.search_results.find(".result-selected.active-result"), a = b.length ? b.first() : this.search_results.find(".active-result").first(), null != a ? this.result_do_highlight(a) : void 0 }, Chosen.prototype.no_results = function (b) { var c; return c = a('<li class="no-results">' + this.results_none_found + ' "<span></span>"</li>'), c.find("span").first().html(b), this.search_results.append(c), this.form_field_jq.trigger("chosen:no_results", { chosen: this }) }, Chosen.prototype.no_results_clear = function () { return this.search_results.find(".no-results").remove() }, Chosen.prototype.keydown_arrow = function () { var a; return this.results_showing && this.result_highlight ? (a = this.result_highlight.nextAll("li.active-result").first()) ? this.result_do_highlight(a) : void 0 : this.results_show() }, Chosen.prototype.keyup_arrow = function () { var a; return this.results_showing || this.is_multiple ? this.result_highlight ? (a = this.result_highlight.prevAll("li.active-result"), a.length ? this.result_do_highlight(a.first()) : (this.choices_count() > 0 && this.results_hide(), this.result_clear_highlight())) : void 0 : this.results_show() }, Chosen.prototype.keydown_backstroke = function () { var a; return this.pending_backstroke ? (this.choice_destroy(this.pending_backstroke.find("a").first()), this.clear_backstroke()) : (a = this.search_container.siblings("li.search-choice").last(), a.length && !a.hasClass("search-choice-disabled") ? (this.pending_backstroke = a, this.single_backstroke_delete ? this.keydown_backstroke() : this.pending_backstroke.addClass("search-choice-focus")) : void 0) }, Chosen.prototype.clear_backstroke = function () { return this.pending_backstroke && this.pending_backstroke.removeClass("search-choice-focus"), this.pending_backstroke = null }, Chosen.prototype.keydown_checker = function (a) { var b, c; switch (b = null != (c = a.which) ? c : a.keyCode, this.search_field_scale(), 8 !== b && this.pending_backstroke && this.clear_backstroke(), b) { case 8: this.backstroke_length = this.search_field.val().length; break; case 9: this.results_showing && !this.is_multiple && this.result_select(a), this.mouse_on_container = !1; break; case 13: a.preventDefault(); break; case 38: a.preventDefault(), this.keyup_arrow(); break; case 40: a.preventDefault(), this.keydown_arrow() } }, Chosen.prototype.search_field_scale = function () { var b, c, d, e, f, g, h, i, j; if (this.is_multiple) { for (d = 0, h = 0, f = "position:absolute; left: -1000px; top: -1000px; display:none;", g = ["font-size", "font-style", "font-weight", "font-family", "line-height", "text-transform", "letter-spacing"], i = 0, j = g.length; j > i; i++)e = g[i], f += e + ":" + this.search_field.css(e) + ";"; return b = a("<div />", { style: f }), b.text(this.search_field.val()), a("body").append(b), h = b.width() + 25, b.remove(), c = this.container.outerWidth(), h > c - 10 && (h = c - 10), this.search_field.css({ width: h + "px" }) } }, Chosen }(AbstractChosen) }.call(this); 552 </script> 553 <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.9.2/jquery-ui.min.js"></script> 554 <script type="text/javascript" src="/Files/Templates/Designs/PLC/js/jetmenu.js"></script> 555 <script type="text/javascript" src="/Files/Templates/Designs/PLC/fancybox/jquery.mousewheel-3.0.6.pack.js" defer=""></script> 556 <script type="text/javascript" src="/Files/Templates/Designs/PLC/fancybox/jquery.fancybox.js?v=2.1.5" defer=""></script> 557 <script src="/Files/Templates/Designs/PLC/js/bootstrap.min.js"></script> 558 <script src="/Files/Templates/Designs/PLC/js/jquery.mousewheel.min.js"></script> 559 <script src="/Files/Templates/Designs/PLC/js/jquery.easing.1.3.js"></script> 560 <script src="//cdnjs.cloudflare.com/ajax/libs/modernizr/2.8.3/modernizr.min.js"></script> 561 <script src="/Files/Templates/Designs/PLC/js/jquery.mCustomScrollbar.js"></script> 562 <script type="text/javascript" src="/Files/Templates/Designs/PLC/js/paging.js"></script> 563 <script src="/Files/Templates/Designs/PLC/js/price-range.js"></script> 564 <script src="/Files/Templates/Designs/PLC/js/tipso_v2.js"></script> 565 <script type="text/javascript"> 566 $(document).ready(function () { 567 $('.fancybox').fancybox({ 568 afterLoad: function () { 569 this.title = 'Image ' + (this.index + 1) + ' of ' + this.group.length + (this.title ? ' - ' + this.title : ''); 570 } 571 }); 572 }); 573 </script> 574 <script type="text/javascript" src='/Files/Templates/Designs/PLC/js/jquery.elevateZoom-3.0.8.min.js'></script> 575 576 <!--@Snippet(CustomScriptSnippet)--> 577 <!--Start of Zopim Live Chat Script--> 578 <script type="text/javascript"> 579 window.$zopim || (function (d, s) { 580 var z = $zopim = function (c) { z._.push(c) }, $ = z.s = 581 d.createElement(s), e = d.getElementsByTagName(s)[0]; z.set = function (o) { 582 z.set. 583 _.push(o) 584 }; z._ = []; z.set._ = []; $.async = !0; $.setAttribute("charset", "utf-8"); 585 $.src = "//v2.zopim.com/?2IGUlip9pCiqtmLFJm7euVrlIr1wF3OM"; z.t = +new Date; $. 586 type = "text/javascript"; e.parentNode.insertBefore($, e) 587 })(document, "script"); 588 $zopim(function () { 589 $zopim.livechat.departments.filter('Pet Care General Enquiries'); 590 }); 591 </script> 592 <!--End of Zopim Live Chat Script--> 593 <script> 594 $zopim(function () { 595 $zopim.livechat.badge.hide(); 596 }); 597 </script> 598 <!--End of Zopim Live Chat Script--> 599 <!--FONT SETTINGS--> 600 @functions{ 601 public class FontSettings 602 { 603 public class Logo 604 { 605 public static string FontFamily { get; set; } 606 public static string FontSize { get; set; } 607 public static string FontWeight { get; set; } 608 public static string Color { get; set; } 609 public static string LineHeight { get; set; } 610 public static string Casing { get; set; } 611 public static string LetterSpacing { get; set; } 612 } 613 614 public class H1 615 { 616 public static string FontFamily { get; set; } 617 public static string FontSize { get; set; } 618 public static string FontWeight { get; set; } 619 public static string Color { get; set; } 620 public static string LineHeight { get; set; } 621 public static string Casing { get; set; } 622 public static string LetterSpacing { get; set; } 623 } 624 625 public class H2 626 { 627 public static string FontFamily { get; set; } 628 public static string FontSize { get; set; } 629 public static string FontWeight { get; set; } 630 public static string Color { get; set; } 631 public static string LineHeight { get; set; } 632 public static string Casing { get; set; } 633 public static string LetterSpacing { get; set; } 634 } 635 636 public class Body 637 { 638 public static string FontFamily { get; set; } 639 public static string FontSize { get; set; } 640 public static string FontWeight { get; set; } 641 public static string Color { get; set; } 642 public static string LineHeight { get; set; } 643 public static string Casing { get; set; } 644 public static string LetterSpacing { get; set; } 645 } 646 } 647 648 private void InitFontSettings() 649 { 650 //LOGO 651 FontSettings.Logo.FontFamily = CustomFont(GetString("Item.Area.LogoFont.Font"), GetString("Item.Area.LogoFont.CustomFont")); 652 FontSettings.Logo.FontSize = GetString("Item.Area.LogoFont.Size")+"px"; 653 FontSettings.Logo.FontWeight = CheckExistence(GetString("Item.Area.LogoFont.Weight"), "normal"); 654 FontSettings.Logo.LineHeight = CheckExistence(GetString("Item.Area.LogoFont.LineHeight"), "1"); 655 FontSettings.Logo.LetterSpacing = GetString("Item.Area.LogoFont.LetterSpacing") + "px"; 656 FontSettings.Logo.Casing = GetString("Item.Area.LogoFont.Casing"); 657 FontSettings.Logo.Color = GetString("Item.Area.LogoFont.Color.Color"); 658 659 660 //HEADINGS 661 FontSettings.H1.FontFamily = CustomFont(GetString("Item.Area.HeadingsH1.Font"), GetString("Item.Area.HeadingsH1.CustomFont")); 662 FontSettings.H1.FontSize = GetString("Item.Area.HeadingsH1.Size")+"px"; 663 FontSettings.H1.FontWeight = CheckExistence(GetString("Item.Area.HeadingsH1.Weight"), "normal"); 664 FontSettings.H1.LineHeight = CheckExistence(GetString("Item.Area.HeadingsH1.LineHeight"), "1"); 665 FontSettings.H1.LetterSpacing = GetString("Item.Area.HeadingsH1.LetterSpacing") + "px"; 666 FontSettings.H1.Casing = GetString("Item.Area.HeadingsH1.Casing"); 667 FontSettings.H1.Color = GetString("Item.Area.HeadingsH1.Color.Color"); 668 669 FontSettings.H2.FontFamily = CustomFont(GetString("Item.Area.HeadingsH2.Font"), GetString("Item.Area.HeadingsH2.CustomFont")); 670 FontSettings.H2.FontSize = GetString("Item.Area.HeadingsH2.Size")+"px"; 671 FontSettings.H2.FontWeight = CheckExistence(GetString("Item.Area.HeadingsH2.Weight"), "normal"); 672 FontSettings.H2.LineHeight = CheckExistence(GetString("Item.Area.HeadingsH2.LineHeight"), "1"); 673 FontSettings.H2.LetterSpacing = GetString("Item.Area.HeadingsH2.LetterSpacing") + "px"; 674 FontSettings.H2.Casing = GetString("Item.Area.HeadingsH2.Casing"); 675 FontSettings.H2.Color = GetString("Item.Area.HeadingsH2.Color.Color"); 676 677 678 //BODY 679 FontSettings.Body.FontFamily = CustomFont(GetString("Item.Area.BodyFont.Font"), GetString("Item.Area.BodyFont.CustomFont")); 680 FontSettings.Body.FontSize = GetString("Item.Area.BodyFont.Size") + "px"; 681 FontSettings.Body.FontWeight = CheckExistence(GetString("Item.Area.BodyFont.Weight"), "normal"); 682 FontSettings.Body.LineHeight = CheckExistence(GetString("Item.Area.BodyFont.LineHeight"), "1"); 683 FontSettings.Body.LetterSpacing = GetString("Item.Area.BodyFont.LetterSpacing") + "px"; 684 FontSettings.Body.Casing = GetString("Item.Area.BodyFont.Casing"); 685 FontSettings.Body.Color = GetString("Item.Area.BodyFont.Color.Color"); 686 687 688 gfonts.Add(FontSettings.Logo.FontFamily, ""); 689 if (!gfonts.ContainsKey(FontSettings.H1.FontFamily)) 690 { 691 gfonts.Add(FontSettings.H1.FontFamily, ""); 692 } 693 if (!gfonts.ContainsKey(FontSettings.H2.FontFamily)) 694 { 695 gfonts.Add(FontSettings.H2.FontFamily, ""); 696 } 697 if (!gfonts.ContainsKey(FontSettings.Body.FontFamily)) 698 { 699 gfonts.Add(FontSettings.Body.FontFamily, ""); 700 } 701 702 } 703 704 private string CustomFont (string firstfont, string secondfont) 705 { 706 if (firstfont == "custom") 707 { 708 return secondfont; 709 } 710 else 711 { 712 return firstfont; 713 } 714 } 715 716 private string CheckExistence (string stringitem, string defaultvalue) 717 { 718 if (!string.IsNullOrWhiteSpace(stringitem)) { 719 return stringitem; 720 } else { 721 return defaultvalue; 722 } 723 } 724 725 private System.Collections.Generic.Dictionary<string, object> gfonts = new System.Collections.Generic.Dictionary<string, object>(); 726 } 727 728 @{ 729 InitFontSettings(); 730 } 731 732 @helper GoogleFonts() 733 { 734 if (gfonts != null) 735 { 736 foreach (var item in gfonts) 737 { 738 <link rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=@item.Key:100,200,300,400,500,600,700,800,900"> 739 } 740 } 741 } 742 743 @functions{ 744 public string FontStylesCSS() 745 { 746 string CssString = @" 747 .dw-logotext { 748 font-family: " + FontSettings.Logo.FontFamily + @"; 749 font-size: " + FontSettings.Logo.FontSize + @"; 750 font-weight: " + FontSettings.Logo.FontWeight + @"; 751 line-height: " + FontSettings.Logo.LineHeight + @" !important; 752 letter-spacing: " + FontSettings.Logo.LetterSpacing + @"; 753 text-transform: " + FontSettings.Logo.Casing + @"; 754 color: " + FontSettings.Logo.Color + @"; 755 } 756 757 h1 { 758 font-family: " + FontSettings.H1.FontFamily + @" !important; 759 font-size: " + FontSettings.H1.FontSize + @"; 760 color: " + FontSettings.H1.Color + @"; 761 line-height: " + FontSettings.H1.LineHeight + @" !important; 762 text-transform: " + FontSettings.H1.Casing + @"; 763 font-weight: " + FontSettings.H1.FontWeight + @"; 764 letter-spacing: " + FontSettings.H1.LetterSpacing + @" !important; 765 } 766 767 768 h2, h3, h4, h5, h6 { 769 margin-top: 0.7em; 770 margin-bottom: 0.7em; 771 772 font-family: " + FontSettings.H2.FontFamily + @" !important; 773 font-size: " + FontSettings.H2.FontSize + @"; 774 color: " + FontSettings.H2.Color + @"; 775 line-height: " + FontSettings.H2.LineHeight + @"; 776 text-transform: " + FontSettings.H2.Casing + @" !important; 777 font-weight: " + FontSettings.H2.FontWeight + @" !important; 778 letter-spacing: " + FontSettings.H2.LetterSpacing + @" !important; 779 } 780 781 h4, h5, h6 { 782 font-size: 16px !important; 783 } 784 785 body { 786 font-family: " + FontSettings.Body.FontFamily + @" !important; 787 font-size: " + FontSettings.Body.FontSize + @"; 788 color: " + FontSettings.Body.Color + @"; 789 line-height: " + FontSettings.Body.LineHeight + @" !important; 790 text-transform: " + FontSettings.Body.Casing + @"; 791 font-weight: " + FontSettings.Body.FontWeight + @"; 792 letter-spacing: " + FontSettings.Body.LetterSpacing + @" !important; 793 } 794 795 .navbar-wp .navbar-nav > li > a { 796 font-family: " + FontSettings.Body.FontFamily + @" !important; 797 } 798 799 .section-title { 800 margin-top: 0.7em; 801 margin-bottom: 0.7em; 802 } 803 "; 804 return CssString; 805 } 806 } 807 @*@GoogleFonts()*@ <!-- 15 January 2017 --> 808 <!-- GENERAL/COLOR SETTINGS --> 809 @functions{ 810 public class ColorSettings 811 { 812 public class Color 813 { 814 public static string Primary { get; set; } 815 public static string Secondary { get; set; } 816 public static string NavbarFont { get; set; } 817 public static string Footer { get; set; } 818 public static string FooterFont { get; set; } 819 820 public static string Sticker { get; set; } 821 public static string Price { get; set; } 822 public static string Cart { get; set; } 823 } 824 } 825 826 private void InitColorSettings() 827 { 828 ColorSettings.Color.Primary = GetString("Item.Area.ColorsPrimary.Color"); 829 ColorSettings.Color.Secondary = GetString("Item.Area.ColorsSecondary.Color"); 830 831 ColorSettings.Color.NavbarFont = GetString("Item.Area.NavbarFontColor"); 832 833 if (string.IsNullOrWhiteSpace(ColorSettings.Color.NavbarFont)) 834 { 835 ColorSettings.Color.NavbarFont = WrapMethods.getContrastYIQ(ColorSettings.Color.Secondary); 836 } 837 838 ColorSettings.Color.Footer = GetString("Item.Area.ColorsFooterColor.Color"); 839 ColorSettings.Color.FooterFont = WrapMethods.getContrastYIQ(ColorSettings.Color.Footer); 840 841 ColorSettings.Color.Price = GetString("Item.Area.EcommercePriceColor.Color"); 842 ColorSettings.Color.Sticker = GetString("Item.Area.EcommerceDiscountStickerColor.Color"); 843 ColorSettings.Color.Cart = GetString("Item.Area.EcommerceCartButtonColor.Color"); 844 } 845 846 public string GetColorSettings() 847 { 848 string CssString = @" 849 a:hover, a:focus, a:active { 850 color: @Primary; 851 } 852 853 .navbar-wp, .navbar-wp.affix, .navbar-wp .navbar-nav > li > a { 854 color: @NavbarFont; 855 } 856 857 .navbar-wp .navbar-nav > .active > a, .navbar-wp .navbar-nav > .active > a:hover, .navbar-wp .navbar-nav > .active > a:focus { 858 color: @NavbarFont; 859 } 860 861 .navbar-wp .navbar-nav > li > a:hover, .navbar-wp .navbar-nav > li > a:focus { 862 border-top: 0px solid @Secondary; 863 color: @NavbarFont; 864 } 865 866 .navbar-wp .navbar-nav > li > a span:after { 867 background-color: @Primary; 868 } 869 870 .btn-dw-primary { 871 color: #FFF; 872 background-color: @Primary; 873 border-color: @Primary; 874 } 875 876 .btn-dw-secondary { 877 color: @NavbarFont; 878 background-color: @Secondary; 879 border-color: @Secondary; 880 } 881 882 .btn-dw-cart { 883 color: #FFF; 884 background-color: @Cart; 885 border-color: @Cart; 886 } 887 888 .dw-section-title { 889 border-color: @Secondary; 890 } 891 892 .dw-minicart-update { 893 color: #FFF !important; 894 background-color: @Primary; 895 transition: all 0.3s ease-in-out 0s; 896 } 897 898 .pagination > li > a, .pagination > li > a:hover, .pagination > li > a:focus, .pagination > li > a:active { 899 color: @Primary; 900 } 901 902 .form-control:hover, .form-control:focus, .form-control:active { 903 border-color: @Primary !important; 904 } 905 906 .bg-2 { 907 background: @Primary !important; 908 } 909 910 .blockquote-1:hover { 911 border-color: @Primary !important; 912 } 913 914 .navbar-wp .navbar-nav > li > a.dropdown-form-toggle, .navbar-wp .navbar-nav > li > a.dropdown-form-toggle:hover, .navbar-wp .navbar-nav > li > a.dropdown-form-toggle:focus { 915 color: @Primary; 916 } 917 918 .navbar-wp .navbar-nav > .open > a.dropdown-form-toggle, .navbar-wp .navbar-nav > .open > a.dropdown-form-toggle:hover, .navbar-wp .navbar-nav > .open > a.dropdown-form-toggle:focus { 919 color: @Primary; 920 } 921 922 .navbar-wp .navbar-nav > li > a:hover, .navbar-wp .navbar-nav > li > a:focus { 923 border: 0px solid @Primary; 924 } 925 926 .navbar-wp .navbar-toggle:hover, .navbar-wp .navbar-toggle:focus { 927 background-color: @Primary !important; 928 border-color: @Primary !important; 929 } 930 931 .navbar-wp .dropdown-menu { 932 border-top: 1px solid @Primary !important; 933 border-bottom: 3px solid @Primary !important; 934 } 935 936 .navbar-wp .dropdown-menu > li > a:hover { 937 background: @Primary !important; 938 color: #fff; 939 } 940 941 .navbar-wp .dropdown-menu .active { 942 background: @Primary !important; 943 color: #fff; 944 } 945 946 .navbar-wp.navbar-contrasted .dropdown-menu > li > a:hover { 947 background: @Primary !important; 948 } 949 950 .nav > ul > li > a:hover { 951 color: @Primary; 952 } 953 954 .lw .w-box.w-box-inverse .thmb-img i { 955 color: @Primary !important; 956 } 957 958 .w-box.w-box-inverse .thmb-img:hover i { 959 background: @Primary !important; 960 } 961 962 .c-box { 963 border: 1px solid @Primary !important; 964 } 965 966 .c-box .c-box-header { 967 background: @Primary !important; 968 } 969 970 .w-section .aside-feature:hover .icon-feature, .w-section .aside-feature:hover h4 { 971 color: @Primary !important; 972 } 973 974 .layer-slider-wrapper .title.title-base { 975 background: @Primary !important; 976 } 977 978 .layer-slider-wrapper .subtitle { 979 color: @Primary !important; 980 } 981 982 .layer-slider-wrapper .list-item { 983 color: @Primary !important; 984 } 985 986 .box-element.box-element-bordered { 987 border: 1px solid @Primary !important; 988 } 989 990 .carousel-2 .carousel-indicators .active { 991 background-color: @Primary !important; 992 } 993 994 .carousel-2 .carousel-nav a { 995 color: @Primary !important; 996 } 997 998 .carousel-2 .carousel-nav a:hover { 999 background: @Primary !important; 1000 } 1001 1002 .carousel-3 .carousel-nav a { 1003 color: @Primary !important; 1004 } 1005 1006 .carousel-3 .carousel-nav a:hover { 1007 background: @Primary !important; 1008 } 1009 1010 .like-button .button.liked i { 1011 color: @Primary !important; 1012 } 1013 1014 ul.list-listings li.featured { 1015 border-color: @Primary !important; 1016 } 1017 1018 ul.list-check li i { 1019 color: @Primary !important; 1020 } 1021 1022 ul.dw-categories li a:hover, ul.dw-categories a:focus, ul.dw-categories a:active{ 1023 color: @NavbarFont; 1024 background-color: @Primary; 1025 border-color: @Primary; 1026 } 1027 1028 ul.categories li a:hover, ul.categories a:focus, ul.categories a:active{ 1029 color: @NavbarFont; 1030 background-color: @Primary; 1031 border-color: @Primary; 1032 } 1033 1034 .timeline .event:nth-child(2n):before { 1035 background-color: @Primary !important; 1036 } 1037 1038 .timeline .event:nth-child(2n-1):before { 1039 background-color: @Primary !important; 1040 } 1041 1042 #toTopHover { 1043 background-color: @Primary !important; 1044 } 1045 1046 .tags-list li { 1047 border: 1px solid @Primary !important; 1048 color: @Primary !important; 1049 } 1050 1051 .tags-list li:hover, 1052 a.open-panel { 1053 background-color: @Primary !important; 1054 } 1055 1056 .nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus, 1057 .panel-group .panel-heading a i, 1058 .tags-list li a { 1059 color: @NavbarFont !important; 1060 } 1061 1062 .nav-pills > li > a:hover, .nav-pills > li > a:focus { 1063 color: @NavbarFont !important; 1064 background: none repeat scroll 0% 0% @Secondary !important; 1065 } 1066 1067 footer { 1068 background: @Footer !important; 1069 } 1070 1071 footer h4 { 1072 color: @FooterFont !important; 1073 } 1074 1075 footer a { 1076 color: @FooterFont !important; 1077 } 1078 1079 footer a:hover, footer a:focus, footer a:active { 1080 color: @Secondary !important; 1081 } 1082 1083 footer p { 1084 color: @FooterFont !important; 1085 } 1086 1087 footer ul > li { 1088 color: @FooterFont !important; 1089 } 1090 1091 1092 /* Button colors */ 1093 .btn-base { 1094 color: @NavbarFont !important; 1095 background-color: @Secondary !important; 1096 border: 1px solid @Secondary !important; 1097 } 1098 1099 .btn-base:before { 1100 background-color: @Secondary !important; 1101 } 1102 1103 .btn-base:hover:before, .btn-base:focus:before, .btn-base:active:before { 1104 color: @NavbarFont !important; 1105 background-color: @Primary !important; 1106 border-color: @Primary !important; 1107 } 1108 1109 .btn-icon:before { 1110 transition: none !important; 1111 } 1112 1113 .btn-base:hover, .btn-base:focus, .btn-base:active, .btn-base.active, .open .dropdown-toggle.btn-base { 1114 color: @NavbarFont !important; 1115 background-color: @Primary !important; 1116 border-color: @Primary !important; 1117 } 1118 1119 .btn-two { 1120 color: @NavbarFont !important; 1121 border-color: @Secondary !important; 1122 background-color: @Secondary !important; 1123 border: 1px solid @Secondary !important; 1124 } 1125 1126 .btn-two:hover, .btn-two:focus, .btn-two:active, .btn-two.active, .open .dropdown-toggle.btn-two { 1127 color: @NavbarFont !important; 1128 background-color: @Primary !important; 1129 border-color: @Primary !important; 1130 } 1131 1132 .btn-primary { 1133 background-color: @Primary !important; 1134 border-color: @Primary !important; 1135 } 1136 1137 .open .dropdown-toggle.btn-primary { 1138 background-color: @Primary !important; 1139 border-color: @Primary !important; 1140 } 1141 1142 .btn-one:hover, .btn-one:focus, .btn-one:active, .btn-one.active, .open .dropdown-toggle.btn-one { 1143 color: @Primary !important; 1144 } 1145 1146 .btn-four { 1147 border: 2px solid @Primary!important; 1148 color: @Primary !important; 1149 } 1150 1151 .btn-four:hover, .btn-four:focus, .btn-four:active, .btn-four.active, .open .dropdown-toggle.btn-four { 1152 background-color: #fff !important; 1153 } 1154 1155 1156 /* Dropdown-menu */ 1157 .dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus { 1158 background: @Primary !important; 1159 color: #fff !important; 1160 } 1161 1162 /* Ecom settings */ 1163 .ribbon.base { 1164 background: @Sticker !important; 1165 color: #fff; 1166 border-right: 5px solid @Sticker !important; 1167 } 1168 1169 .ribbon.base:before { 1170 border-top: 27px solid @Sticker !important; 1171 } 1172 1173 .ribbon.base:after { 1174 border-bottom: 27px solid @Sticker !important; 1175 } 1176 1177 .price { 1178 color: @Price !important; 1179 } 1180 1181 .discount-sticker { 1182 background-color: @Sticker !important; 1183 } 1184 1185 .bs-callout-primary { 1186 border-left-color: @Primary !important; 1187 }"; 1188 1189 return ParseCSSToString(CssString); 1190 } 1191 1192 private string ParseCSSToString(string TheString) 1193 { 1194 TheString = TheString.Replace("@Primary", ColorSettings.Color.Primary); 1195 TheString = TheString.Replace("@Secondary", ColorSettings.Color.Secondary); 1196 TheString = TheString.Replace("@NavbarFont", ColorSettings.Color.NavbarFont); 1197 TheString = TheString.Replace("@FooterFont", ColorSettings.Color.FooterFont); 1198 TheString = TheString.Replace("@Footer", ColorSettings.Color.Footer); 1199 1200 TheString = TheString.Replace("@Sticker", ColorSettings.Color.Sticker); 1201 TheString = TheString.Replace("@Price", ColorSettings.Color.Price); 1202 TheString = TheString.Replace("@Cart", ColorSettings.Color.Cart); 1203 1204 1205 System.Text.StringBuilder sb = new System.Text.StringBuilder(); 1206 1207 foreach(var item in TheString.Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries)) 1208 { 1209 sb.AppendLine(item); 1210 } 1211 1212 return sb.ToString(); 1213 } 1214 } 1215 1216 @{ 1217 InitColorSettings(); 1218 } 1219 1220 1221 1222 @using System.Drawing 1223 @using System.Net 1224 1225 1226 @functions{ 1227 public class GeneralSettings 1228 { 1229 1230 public class Header 1231 { 1232 public static string Mode { get; set; } 1233 public static string Classes { get; set; } 1234 public static bool Show { get; set; } 1235 public static string Background { get; set; } 1236 } 1237 1238 public class Logo 1239 { 1240 public static string Image { get; set; } 1241 public static string Text { get; set; } 1242 public static string SecondaryColor { get; set; } 1243 } 1244 1245 public class Navigation 1246 { 1247 public static string Position { get; set; } 1248 public static string InvertedPosition { get; set; } 1249 public static string StickyMenu { get; set; } 1250 public static string SelectionMode { get; set; } 1251 public static string SelectionStyle { get; set; } 1252 public static int SelectionWeight { get; set; } 1253 public static bool Case { get; set; } 1254 1255 public static string BreadcrumbMode { get; set; } 1256 public static string BreadcrumbAlign { get; set; } 1257 1258 public static string LeftmenuMode { get; set; } 1259 1260 public static string ButtonDesign { get; set; } 1261 } 1262 1263 public class Headings 1264 { 1265 public static string Mode { get; set; } 1266 } 1267 1268 public class Background 1269 { 1270 public static string Color { get; set; } 1271 public static string Image { get; set; } 1272 public static string CustomImage { get; set; } 1273 public static bool GradientColor { get; set; } 1274 public static string GradientPercentage { get; set; } 1275 public static string Style { get; set; } 1276 public static string Position { get; set; } 1277 } 1278 1279 public class Site 1280 { 1281 public static bool Shadow { get; set; } 1282 public static string LayoutMode { get; set; } 1283 } 1284 1285 public class Images 1286 { 1287 public static bool RoundCorners { get; set; } 1288 } 1289 } 1290 1291 private void InitGeneralSettings() 1292 { 1293 //Header settings 1294 GeneralSettings.Header.Mode = GetString("Item.Area.HeaderLayoutMode"); 1295 GeneralSettings.Header.Show = GetBoolean("Item.Area.HeaderShow"); 1296 GeneralSettings.Header.Background = GetString("Item.Area.NavigationNavbarBackground"); 1297 1298 if (GeneralSettings.Header.Mode == "solid"){ 1299 GeneralSettings.Header.Classes = ""; 1300 } 1301 1302 if (GeneralSettings.Header.Mode == "cover" || GeneralSettings.Header.Mode == "mobile"){ 1303 GeneralSettings.Header.Classes = "header-alpha header-cover"; 1304 } 1305 1306 1307 //Logo settings 1308 GeneralSettings.Logo.Image = GetString("Item.Area.GeneralLogo"); 1309 GeneralSettings.Logo.Text = GetString("Item.Area.GeneralLogoText"); 1310 GeneralSettings.Logo.SecondaryColor = GetString("Item.Area.LogoSecondColor.Color"); 1311 1312 1313 //Navigation settings 1314 GeneralSettings.Navigation.Position = GetString("Item.Area.NavigationPosition"); 1315 GeneralSettings.Navigation.StickyMenu = "off"; 1316 1317 if (GetBoolean("Item.Area.NavigationSticky")) { 1318 if (GeneralSettings.Header.Show) 1319 { 1320 if (GeneralSettings.Header.Mode == "cover") 1321 { 1322 GeneralSettings.Navigation.StickyMenu = "44"; //"data-spy=\"affix\" data-offset-top=\"44\" data-offset-bottom=\"300\""; 1323 } 1324 else 1325 { 1326 int offset = ImageHeight()+28; 1327 1328 GeneralSettings.Navigation.StickyMenu = offset.ToString(); // "data-spy=\"affix\" data-offset-top=\"" + offset.ToString() + "\" data-offset-bottom=\"300\""; 1329 } 1330 } 1331 else 1332 { 1333 GeneralSettings.Navigation.StickyMenu = "5"; // "data-spy=\"affix\" data-offset-top=\"5\" data-offset-bottom=\"300\""; 1334 } 1335 } 1336 1337 if (GeneralSettings.Navigation.Position == "left") { 1338 GeneralSettings.Navigation.InvertedPosition = "right"; 1339 } 1340 else 1341 { 1342 GeneralSettings.Navigation.InvertedPosition = "left"; 1343 } 1344 1345 GeneralSettings.Navigation.SelectionMode = GetString("Item.Area.NavigationSelectionMode"); 1346 GeneralSettings.Navigation.SelectionStyle = ""; 1347 GeneralSettings.Navigation.SelectionWeight = GetInteger("Item.Area.SelectionWeight"); 1348 1349 if (GeneralSettings.Navigation.SelectionMode == "arrow") { 1350 GeneralSettings.Navigation.SelectionStyle = "navbar-arrow"; 1351 } 1352 1353 GeneralSettings.Navigation.Case = GetBoolean("Item.Area.NavigationUppercase"); 1354 1355 GeneralSettings.Navigation.BreadcrumbMode = GetString("Item.Area.NavigationBreadcrumbLayout"); 1356 GeneralSettings.Navigation.BreadcrumbAlign = GetString("Item.Area.NavigationBreadcrumbAlign"); 1357 1358 GeneralSettings.Navigation.LeftmenuMode = GetString("Item.Area.NavigationLeftNavigationMode"); 1359 1360 GeneralSettings.Navigation.ButtonDesign = GetString("Item.Area.NavigationButtonDesign"); 1361 1362 1363 //Background settings 1364 GeneralSettings.Background.Image = GetString("Item.Area.BackgroundImage.Image.Image"); 1365 GeneralSettings.Background.CustomImage = GetString("Item.Area.BackgroundImage.Image.CustomImage"); 1366 GeneralSettings.Background.Color = GetString("Item.Area.BackgroundImage.Color.Color"); 1367 GeneralSettings.Background.GradientColor = GetBoolean("Item.Area.BackroundGradientColor"); 1368 GeneralSettings.Background.GradientPercentage = GetString("Item.Area.GradientPercentage"); 1369 1370 1371 if (@GetString("Item.Area.BackgroundFixed") == "True") 1372 { 1373 GeneralSettings.Background.Position = "fixed"; 1374 } 1375 else 1376 { 1377 GeneralSettings.Background.Position = ""; 1378 } 1379 1380 1381 if (GeneralSettings.Background.Image == "none") 1382 { 1383 GeneralSettings.Background.Style = ""; 1384 } 1385 else if (GeneralSettings.Background.Image == "custom") 1386 { 1387 if (!string.IsNullOrWhiteSpace(GeneralSettings.Background.CustomImage)) 1388 { 1389 GeneralSettings.Background.Style = "background: url('/Admin/Public/GetImage.ashx?width=1920&amp;Crop=1&amp;Compression=75&amp;image=" + GeneralSettings.Background.CustomImage + "') " + GeneralSettings.Background.Position + " !important; "; 1390 } 1391 } 1392 else 1393 { 1394 GeneralSettings.Background.Style = "background: url('/Admin/Public/GetImage.ashx?width=1920&amp;Crop=1&amp;Compression=75&amp;image=/Files/Templates/Designs/Dwsimple/images/background/" + GeneralSettings.Background.Image + "') " + GeneralSettings.Background.Position + " !important; "; 1395 } 1396 1397 1398 //Headings settings 1399 GeneralSettings.Headings.Mode = GetString("Item.Area.AdvHeadingsMode"); 1400 1401 1402 //Site settings 1403 GeneralSettings.Site.Shadow = GetBoolean("Item.Area.BackgroundSiteShadow"); 1404 GeneralSettings.Site.LayoutMode = GetString("Item.Area.LayoutMode"); 1405 1406 if (GeneralSettings.Site.LayoutMode == "boxed"){ 1407 GeneralSettings.Site.LayoutMode = "body-" + GeneralSettings.Site.LayoutMode; 1408 GeneralSettings.Header.Classes += " header-boxed"; 1409 } 1410 1411 1412 //Image settings 1413 GeneralSettings.Images.RoundCorners = GetBoolean("Item.Area.LayoutRoundCorners"); 1414 } 1415 1416 public string GetGeneralCSS() 1417 { 1418 string CssString = ""; 1419 int SelectionWeight = GeneralSettings.Navigation.SelectionWeight; 1420 1421 //Site settings 1422 if (GetString("Item.Area.LogoFont.Color.Color") == "#FFF" || GetString("Item.Area.LogoFont.Color.Color") == "#FFFFFF") 1423 { 1424 int offset = ImageHeight()+28; 1425 1426 CssString += @" 1427 .dw-offsetmenu-logo { 1428 color: #333 !important; 1429 }"; 1430 } 1431 1432 if (!string.IsNullOrWhiteSpace(GeneralSettings.Background.Color)) 1433 { 1434 CssString += @" 1435 body { 1436 background-color: " + GeneralSettings.Background.Color + @"; 1437 background-size: cover; 1438 overflow-y: scroll; 1439 }"; 1440 } 1441 1442 if (GeneralSettings.Background.GradientColor) 1443 { 1444 CssString += @" 1445 body { 1446 background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0." + GeneralSettings.Background.GradientPercentage + @") 0%, rgba(0, 0, 0, 0) 100%); 1447 background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0." + GeneralSettings.Background.GradientPercentage + @") 0%, rgba(0, 0, 0, 0) 100%); 1448 background: -ms-linear-gradient(bottom, rgba(0, 0, 0, 0." + GeneralSettings.Background.GradientPercentage + @") 0%, rgba(0, 0, 0, 0) 100%); 1449 background: -moz-linear-gradient(bottom, rgba(0, 0, 0, 0." + GeneralSettings.Background.GradientPercentage + @") 0%, rgba(0, 0, 0, 0) 100%); 1450 background: linear-gradient(to top, rgba(0, 0, 0, 0." + GeneralSettings.Background.GradientPercentage + @") 0%, rgba(0, 0, 0, 0) 100%); 1451 background-attachment: fixed; 1452 background-color: " + GeneralSettings.Background.Color + @" !important; 1453 }"; 1454 } 1455 1456 if (GeneralSettings.Site.Shadow) 1457 { 1458 CssString += @" 1459 .shad { 1460 -webkit-box-shadow: 0px 0px 8px 0px rgba(50, 50, 50, 0.75); 1461 -moz-box-shadow: 0px 0px 8px 0px rgba(50, 50, 50, 0.75); 1462 box-shadow: 0px 0px 8px 0px rgba(50, 50, 50, 0.75); 1463 }"; 1464 } 1465 1466 //Image settings 1467 if (GeneralSettings.Images.RoundCorners) 1468 { 1469 CssString += @" 1470 .content-image { 1471 border-radius: 6px; 1472 -webkit-border-radius: 6px; 1473 -moz-border-radius: 6px; 1474 }"; 1475 } 1476 1477 //Navbar and header custom settings 1478 if (GeneralSettings.Header.Mode == "cover") 1479 { 1480 CssString += @" 1481 .navbar-wp { 1482 background-color: none !important; 1483 }"; 1484 1485 if (!GeneralSettings.Header.Show || GeneralSettings.Header.Mode == "mobile") 1486 { 1487 CssString += @" 1488 .header-cover .navbar-wp { 1489 top: 0px !important; 1490 }"; 1491 } 1492 } 1493 else 1494 { 1495 if (GeneralSettings.Header.Show) 1496 { 1497 CssString += @" 1498 .navbar-wp.affix .navbar-nav > li > a { 1499 padding: 16px 16px !important; 1500 }"; 1501 } 1502 } 1503 1504 if (GeneralSettings.Header.Background == "colorline") 1505 { 1506 CssString += @" 1507 .navbar-wp, .navbar-wp.affix { 1508 border-bottom: 4px solid " + ColorSettings.Color.Primary + @" !important; 1509 } 1510 1511 .navbar-wp.affix, .navbar-wp.affix .navbar-nav > li > a { 1512 background-color: #FFF; 1513 color: #333; 1514 } 1515 1516 .navbar-wp.affix .navbar-nav > .active > a, .navbar-wp.affix .navbar-nav > li > a:hover, .navbar-wp.affix .navbar-nav > li > a:focus { 1517 color: " + ColorSettings.Color.NavbarFont + @"; 1518 } 1519 1520 .navbar-wp.affix .navbar-header .dw-logotext, .dw-header-sm-title { 1521 color: " + ColorSettings.Color.NavbarFont + @" !important; 1522 }"; 1523 } else if (GeneralSettings.Header.Background == "neutral") 1524 { 1525 CssString += @" 1526 .navbar-wp, .navbar-wp.affix, .navbar-wp .navbar-nav > li > a { 1527 background-color: #f1f1f1; 1528 } 1529 1530 .navbar-wp.affix, .navbar-wp.affix .navbar-nav > li > a { 1531 color: #333; 1532 } 1533 1534 .navbar-wp.affix .navbar-nav > .active > a, .navbar-wp.affix .navbar-nav > li > a:hover, .navbar-wp.affix .navbar-nav > li > a:focus { 1535 color: " + ColorSettings.Color.NavbarFont + @"; 1536 } 1537 1538 .navbar-wp.affix .navbar-header .dw-logotext, .dw-header-sm-title { 1539 color: " + ColorSettings.Color.NavbarFont + @" !important; 1540 }"; 1541 } 1542 else if (GeneralSettings.Header.Background == "transparent") 1543 { 1544 CssString += @" 1545 .navbar-wp, .navbar-wp.affix { 1546 background-color: #FFF; 1547 opacity: 0.9; 1548 filter: alpha(opacity=90); /* For IE8 and earlier */ 1549 } 1550 1551 .navbar-wp.affix, .navbar-wp.affix .navbar-nav > li > a { 1552 color: #333; 1553 } 1554 1555 .navbar-wp.affix .navbar-nav > .active > a, .navbar-wp.affix .navbar-nav > li > a:hover, .navbar-wp.affix .navbar-nav > li > a:focus { 1556 color: " + ColorSettings.Color.NavbarFont + @"; 1557 } 1558 1559 .navbar-wp.affix .navbar-header .dw-logotext, .dw-header-sm-title { 1560 color: " + GeneralSettings.Logo.SecondaryColor + @" !important; 1561 }"; 1562 } 1563 else 1564 { 1565 CssString += @" 1566 .navbar-wp, .navbar-wp.affix, .navbar-wp .navbar-nav > li > a { 1567 background-color: " + ColorSettings.Color.Secondary + @"; 1568 } 1569 1570 .dw-header-sm-title { 1571 color: " + ColorSettings.Color.NavbarFont + @" !important; 1572 }"; 1573 } 1574 1575 if (GeneralSettings.Navigation.SelectionMode == "background" || GeneralSettings.Navigation.SelectionMode == "arrow"){ 1576 CssString += NavbarPosition(false, SelectionWeight); 1577 1578 CssString += @" 1579 .dw-navbar-button > a { 1580 background-color: transparent !important; 1581 } 1582 1583 .dw-navbar-button > a:hover, dw-navbar-button > a:active, dw-navbar-button > a:focus, .active > a { 1584 background-color: " + ColorSettings.Color.Primary + @" !important; 1585 }"; 1586 } 1587 1588 if (GeneralSettings.Navigation.SelectionMode == "underline"){ 1589 CssString += NavbarPosition(true); 1590 1591 CssString += ClearBackground(); 1592 1593 CssString += @" 1594 .dw-navbar-button > a span:after { 1595 position: absolute; 1596 content: ''; 1597 left: 0px; 1598 bottom: 0px; 1599 height: " + SelectionWeight + @"px; 1600 width: 100%; 1601 transform: scaleX(0); 1602 transition: all 0.3s ease-in-out 0s; 1603 } 1604 .dw-navbar-button > a:hover, dw-navbar-button > a:active, dw-navbar-button > a:focus, .active > a { 1605 color: " + ColorSettings.Color.Primary + @" !important; 1606 } 1607 1608 .dw-navbar-button > a:hover span:after, dw-navbar-button > a:active span:after, dw-navbar-button > a:focus span:after, .active > a span:after { 1609 color: " + ColorSettings.Color.Primary + @" !important; 1610 transform: scaleX(1); 1611 transition: all 0.3s ease-in-out 0s; 1612 }"; 1613 } 1614 1615 if (GeneralSettings.Navigation.SelectionMode == "boxed"){ 1616 CssString += NavbarPosition(true, SelectionWeight); 1617 1618 CssString += @" 1619 .dw-navbar-button > a { 1620 background-color: transparent !important; 1621 } 1622 1623 .dw-navbar-button > a:hover, dw-navbar-button > a:active, dw-navbar-button > a:focus, .active > a { 1624 background-color: " + ColorSettings.Color.Primary + @" !important; 1625 transition: all 0.3s ease-in-out 0s; 1626 }"; 1627 } 1628 1629 if (GeneralSettings.Navigation.SelectionMode == "border"){ 1630 CssString += NavbarPosition(true, 6, SelectionWeight); 1631 1632 CssString += ClearBackground(); 1633 1634 CssString += @" 1635 .dw-navbar-button > a { 1636 border: " + SelectionWeight + @"px solid transparent !important; transition: None !important; 1637 } 1638 1639 .dw-navbar-button > a:hover, dw-navbar-button > a:active, dw-navbar-button > a:focus, .active > a { 1640 border-width: " + SelectionWeight + @"px !important; 1641 border-color: " + ColorSettings.Color.Primary + @" !important; 1642 transition: all 0.3s ease-in-out 0s; 1643 }"; 1644 } 1645 1646 if (GeneralSettings.Navigation.SelectionMode == "font"){ 1647 CssString += NavbarPosition(); 1648 1649 CssString += ClearBackground(); 1650 1651 SelectionWeight = (SelectionWeight*100); 1652 1653 CssString += @" 1654 .dw-navbar-button > a:hover, dw-navbar-button > a:active, dw-navbar-button > a:focus, .active > a { 1655 color: " + ColorSettings.Color.Primary + @" !important; 1656 font-weight: " + SelectionWeight + @" !important; 1657 transition: all 0.3s ease-in-out 0s; 1658 }"; 1659 } 1660 1661 if (GeneralSettings.Navigation.Case){ 1662 CssString += @" 1663 .dw-navbar-button > a { 1664 text-transform: uppercase !important; 1665 }"; 1666 } 1667 else 1668 { 1669 CssString += @" 1670 .dw-navbar-button > a { 1671 text-transform: none !important; 1672 }"; 1673 } 1674 1675 1676 //Breadcrumb custom settings 1677 if (GeneralSettings.Navigation.BreadcrumbMode == "light") 1678 { 1679 CssString += @" 1680 .pg-opt { 1681 border-bottom: 0px; 1682 background: none repeat scroll 0% 0% #FFF; 1683 } 1684 1685 .dw-breadcrumb-title { 1686 font-size: 14px !important; 1687 padding: 5px 0px 5px 0px !important; 1688 } 1689 1690 .dw-breadcrumb { 1691 padding: 5px !important; 1692 }"; 1693 } 1694 1695 if (GeneralSettings.Navigation.BreadcrumbMode == "normal") 1696 { 1697 CssString += @" 1698 .dw-breadcrumb-title { 1699 font-size: 14px !important; 1700 padding: 5px 0px 5px 0px !important; 1701 } 1702 1703 .dw-breadcrumb a, .pg-opt .breadcrumb { 1704 padding: 5px !important; 1705 }"; 1706 } 1707 1708 if (GeneralSettings.Navigation.BreadcrumbMode == "large") 1709 { 1710 CssString += @" 1711 .dw-breadcrumb-title { 1712 font-size: 22px !important; 1713 padding: 15px 0px 15px 0px !important; 1714 } 1715 1716 .dw-breadcrumb { 1717 padding: 15px !important; 1718 }"; 1719 } 1720 1721 1722 if (GeneralSettings.Navigation.BreadcrumbAlign == "right") 1723 { 1724 CssString += @" 1725 .dw-breadcrumb { 1726 float: right !important; 1727 }"; 1728 } 1729 else 1730 { 1731 CssString += @" 1732 .dw-breadcrumb { 1733 float: left !important; 1734 }"; 1735 } 1736 1737 1738 //Left menu custom settings 1739 if (GeneralSettings.Navigation.LeftmenuMode == "light" || GeneralSettings.Navigation.LeftmenuMode == "light-color") 1740 { 1741 CssString += @" 1742 ul.dw-categories > li > ul > li > a { 1743 padding: 5px 35px; 1744 } 1745 1746 ul.dw-categories, ul.dw-categories > li, ul.dw-categories > li > ul > li { 1747 border: 0px solid #EEE; 1748 } 1749 1750 ul.dw-categories > li > ul { 1751 background: none repeat scroll 0% 0% #FFF; 1752 } 1753 1754 ul.dw-categories li a:hover, ul.dw-categories li a:focus, ul.dw-categories li a:active { 1755 background-color: #FFF !important; 1756 color: " + ColorSettings.Color.Primary + @" !important; 1757 } 1758 1759 .list-active, .list-active > a { 1760 background-color: #FFF; 1761 color: " + ColorSettings.Color.Primary + @" !important; 1762 } 1763 1764 .list-open-active { 1765 background-color: #FFF; 1766 color: " + ColorSettings.Color.Primary + @" !important; 1767 }"; 1768 } 1769 1770 if (GeneralSettings.Navigation.LeftmenuMode == "lines") 1771 { 1772 CssString += @" 1773 ul.dw-categories > li { 1774 border-bottom: 1px solid #EEE; 1775 } 1776 1777 ul.dw-categories { 1778 border: 0px solid #EEE; 1779 } 1780 1781 ul.dw-categories > li > ul { 1782 background: none repeat scroll 0% 0% #FFF; 1783 } 1784 1785 ul.dw-categories li a:hover, a:focus, a:active { 1786 background-color: #FFF !important; 1787 color: " + ColorSettings.Color.Primary + @" !important; 1788 } 1789 1790 .list-active, .list-active > a { 1791 background-color: #FFF; 1792 color: " + ColorSettings.Color.Primary + @" !important; 1793 } 1794 1795 .list-open-active { 1796 background-color: #FFF; 1797 color: " + ColorSettings.Color.Primary + @" !important; 1798 }"; 1799 } 1800 1801 if (GeneralSettings.Navigation.LeftmenuMode == "boxed") 1802 { 1803 CssString += @" 1804 ul.dw-categories, ul.dw-categories > li, ul.dw-categories > li > ul > li { 1805 border: 0px solid #EEE; 1806 } 1807 1808 .list-active, .list-active > a { 1809 background-color: " + ColorSettings.Color.Primary + @" !important; 1810 color: #FFF; 1811 }"; 1812 } 1813 1814 if (GeneralSettings.Navigation.LeftmenuMode == "border") 1815 { 1816 CssString += @" 1817 ul.dw-categories > li { 1818 border: 1px solid #EEE; 1819 } 1820 1821 ul.dw-categories > li > ul > li { 1822 border-top: 1px solid #EEE; 1823 } 1824 1825 .list-active, .list-active > a { 1826 background-color: " + ColorSettings.Color.Primary + @" !important; 1827 color: #FFF; 1828 }"; 1829 } 1830 1831 if (GeneralSettings.Navigation.LeftmenuMode == "light-color") 1832 { 1833 CssString += @" 1834 ul.dw-categories li a:hover, ul.dw-categories a:focus, ul.dw-categories a:active { 1835 border-left: 6px solid " + ColorSettings.Color.Primary + @"; 1836 } 1837 1838 ul.dw-categories .list-active > a { 1839 border-left: 6px solid " + ColorSettings.Color.Primary + @"; 1840 } 1841 1842 .btn-dw:hover, .btn-dw:focus, .btn-dw:active { 1843 1844 }"; 1845 } 1846 1847 1848 //Buttons custom designs 1849 if (GeneralSettings.Navigation.ButtonDesign == "light-rounded") 1850 { 1851 CssString += @" 1852 .btn-dw-primary, .btn-dw-secondary, .btn-dw-cart { 1853 border-width: 0px; 1854 } 1855 1856 .btn-dw-primary:hover, .btn-dw-primary:focus, .btn-dw-primary:active { 1857 background-color: " + ColorSettings.Color.Secondary + @"; 1858 color: #FFF; 1859 border-width: 0px; 1860 } 1861 1862 .btn-dw-secondary:hover, .btn-dw-secondary:focus, .btn-dw-secondary:active { 1863 background-color: " + ColorSettings.Color.Primary + @"; 1864 color: #FFF; 1865 border-width: 0px; 1866 } 1867 1868 .btn-dw-cart:hover, .btn-dw-cart:focus, .btn-dw-cart:active { 1869 background-color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @"; 1870 color: #FFF; 1871 border-width: 0px; 1872 }"; 1873 } 1874 1875 if (GeneralSettings.Navigation.ButtonDesign == "corners") 1876 { 1877 CssString += @" 1878 .btn-dw-primary, .btn-dw-secondary, btn-dw-cart , .btn-dw-cart { 1879 border-radius: 0px !important; 1880 border-width: 0px; 1881 } 1882 1883 .btn-dw-primary:hover, .btn-dw-primary:focus, .btn-dw-primary:active { 1884 background-color: " + ColorSettings.Color.Secondary + @"; 1885 color: #FFF; 1886 border-width: 0px; 1887 } 1888 1889 .btn-dw-secondary:hover, .btn-dw-secondary:focus, .btn-dw-secondary:active { 1890 background-color: " + ColorSettings.Color.Primary + @"; 1891 color: #FFF; 1892 border-width: 0px; 1893 } 1894 1895 .btn-dw-cart:hover, .btn-dw-cart:focus, .btn-dw-cart:active { 1896 background-color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @"; 1897 color: #FFF; 1898 border-width: 0px; 1899 }"; 1900 } 1901 1902 if (GeneralSettings.Navigation.ButtonDesign == "round") 1903 { 1904 CssString += @" 1905 .btn-dw-primary, .btn-dw-secondary, .btn-dw-cart { 1906 padding: 5px 15px; 1907 border-radius: 200px !important; 1908 border-width: 0px !important; 1909 } 1910 1911 .btn-dw-primary:hover, .btn-dw-primary:focus, .btn-dw-primary:active { 1912 background-color: " + ColorSettings.Color.Secondary + @"; 1913 color: #FFF; 1914 border-width: 0px !important; 1915 } 1916 1917 .btn-dw-secondary:hover, .btn-dw-secondary:focus, .btn-dw-secondary:active { 1918 background-color: " + ColorSettings.Color.Primary + @"; 1919 color: #FFF; 1920 border-width: 0px !important; 1921 } 1922 1923 .btn-dw-cart:hover, .btn-dw-cart:focus, .btn-dw-cart:active { 1924 background-color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @"; 1925 color: #FFF; 1926 border-width: 0px !important; 1927 }"; 1928 } 1929 1930 if (GeneralSettings.Navigation.ButtonDesign == "border") 1931 { 1932 CssString += @" 1933 .btn-dw-primary, .btn-dw-secondary, .btn-dw-cart { 1934 background-color: transparent; 1935 } 1936 1937 .btn-dw-primary { 1938 border-width: 4px; 1939 padding: 3px 10px; 1940 color: " + ColorSettings.Color.Primary + @"; 1941 } 1942 1943 .btn-dw-secondary { 1944 border-width: 2px; 1945 color: " + ColorSettings.Color.Secondary + @"; 1946 } 1947 1948 .btn-dw-cart { 1949 border-width: 4px; 1950 padding: 3px 10px; 1951 color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @"; 1952 } 1953 1954 .btn-dw-primary:hover, .btn-dw-primary:focus, .btn-dw-primary:active { 1955 background-color: " + ColorSettings.Color.Primary + @"; 1956 border-width: 4px; 1957 padding: 3px 10px; 1958 border-color: " + ColorSettings.Color.Primary + @"; 1959 color: #FFF; 1960 } 1961 1962 .btn-dw-secondary:hover, .btn-dw-secondary:focus, .btn-dw-secondary:active { 1963 background-color: " + ColorSettings.Color.Primary + @"; 1964 border-width: 2px; 1965 color: #FFF; 1966 border-color: #FFF; 1967 } 1968 1969 .btn-dw-cart:hover, .btn-dw-cart:focus, .btn-dw-cart:active { 1970 background-color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @"; 1971 border-width: 4px; 1972 padding: 3px 10px; 1973 border-color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @"; 1974 color: #FFF; 1975 }"; 1976 } 1977 1978 if (GeneralSettings.Navigation.ButtonDesign == "border-sharp" || GeneralSettings.Navigation.ButtonDesign == "border-round") 1979 { 1980 CssString += @" 1981 .btn-dw-primary, .btn-dw-secondary, .btn-dw-cart { 1982 background-color: transparent; 1983 } 1984 1985 .btn-dw-primary { 1986 border-width: 4px; 1987 padding: 3px 15px; 1988 color: " + ColorSettings.Color.Primary + @"; 1989 } 1990 1991 .btn-dw-secondary { 1992 border-width: 2px; 1993 padding: 5px 15px; 1994 color: " + ColorSettings.Color.Secondary + @"; 1995 } 1996 1997 .btn-dw-cart { 1998 border-width: 4px; 1999 padding: 3px 15px; 2000 color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @"; 2001 } 2002 2003 .btn-dw-primary:hover, .btn-dw-primary:focus, .btn-dw-primary:active { 2004 background-color: " + ColorSettings.Color.Primary + @"; 2005 border-width: 4px; 2006 color: #FFF; 2007 padding: 3px 15px; 2008 border-color: " + ColorSettings.Color.Primary + @"; 2009 } 2010 2011 .btn-dw-secondary:hover, .btn-dw-secondary:focus, .btn-dw-secondary:active { 2012 background-color: " + ColorSettings.Color.Primary + @"; 2013 border-width: 2px; 2014 color: #FFF; 2015 padding: 5px 15px; 2016 border-color: #FFF; 2017 } 2018 2019 .btn-dw-cart:hover, .btn-dw-cart:focus, .btn-dw-cart:active { 2020 background-color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @"; 2021 border-width: 4px; 2022 color: #FFF; 2023 padding: 3px 15px; 2024 border-color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @"; 2025 }"; 2026 } 2027 2028 if (GeneralSettings.Navigation.ButtonDesign == "border-sharp") 2029 { 2030 CssString += @" 2031 .btn-dw-primary, .btn-dw-secondary, .btn-dw-cart, .btn-dw-primary:hover, .btn-dw-primary:focus, .btn-dw-primary:active, .btn-dw-secondary:hover, .btn-dw-secondary:focus, .btn-dw-secondary:active, .btn-dw-cart:hover, .btn-dw-cart:focus, .btn-dw-cart:active { 2032 border-radius: 0px !important; 2033 }"; 2034 } 2035 2036 if (GeneralSettings.Navigation.ButtonDesign == "border-round") 2037 { 2038 CssString += @" 2039 .btn-dw-primary, .btn-dw-secondary, .btn-dw-cart, .btn-dw-primary:hover, .btn-dw-primary:focus, .btn-dw-primary:active, .btn-dw-secondary:hover, .btn-dw-secondary:focus, .btn-dw-secondary:active, .btn-dw-cart:hover, .btn-dw-cart:focus, .btn-dw-cart:active { 2040 border-radius: 200px !important; 2041 }"; 2042 } 2043 2044 2045 //Headings custom settings 2046 if (GeneralSettings.Headings.Mode == "underline") 2047 { 2048 CssString += @" 2049 .dw-section-title { 2050 border-bottom: 2px solid; 2051 }"; 2052 } 2053 2054 if (GeneralSettings.Headings.Mode == "boxed" || GeneralSettings.Headings.Mode == "boxed-line") 2055 { 2056 CssString += @" 2057 .dw-section-title span { 2058 background-color: " + GetString("Item.Area.HeadingsH1.Color.Color") + @"; 2059 display: inline-block; 2060 padding: 8px 16px; 2061 color: #FFF; 2062 }"; 2063 2064 if (string.IsNullOrWhiteSpace(GetString("Item.Area.HeadingsH1.Color.Color"))) 2065 { 2066 CssString += @" 2067 .dw-section-title { 2068 background-color: " + ColorSettings.Color.Primary + @"; 2069 }"; 2070 } 2071 } 2072 2073 if (GeneralSettings.Headings.Mode == "boxed-line") 2074 { 2075 CssString += @" 2076 .dw-section-title span { 2077 margin-bottom: 2px; 2078 } 2079 2080 .dw-section-title { 2081 border-bottom: 2px solid " + GetString("Item.Area.HeadingsH1.Color.Color") + @"; 2082 }"; 2083 2084 if (string.IsNullOrWhiteSpace(GetString("Item.Area.HeadingsH1.Color.Color"))) 2085 { 2086 CssString += @" 2087 .dw-section-title { 2088 border-bottom: 2px solid " + ColorSettings.Color.Primary + @"; 2089 }"; 2090 } 2091 } 2092 2093 if (GeneralSettings.Headings.Mode == "outline") 2094 { 2095 CssString += @" 2096 .dw-section-title { 2097 color: #FFF; 2098 text-shadow: 2099 -1px -1px 0 " + GetString("Item.Area.HeadingsH1.Color.Color") + @", 2100 1px -1px 0 " + GetString("Item.Area.HeadingsH1.Color.Color") + @", 2101 -1px 1px 0 " + GetString("Item.Area.HeadingsH1.Color.Color") + @", 2102 1px 1px 0 " + GetString("Item.Area.HeadingsH1.Color.Color") + @"; 2103 }"; 2104 2105 if (string.IsNullOrWhiteSpace(GetString("Item.Area.HeadingsH1.Color.Color"))) 2106 { 2107 CssString += @" 2108 .dw-section-title { 2109 text-shadow: 2110 -1px -1px 0 #1A1A1A, 2111 1px -1px 0 #1A1A1A, 2112 -1px 1px 0 #1A1A1A, 2113 1px 1px 0 #1A1A1A; 2114 }"; 2115 } 2116 } 2117 2118 return CssString; 2119 } 2120 2121 private string ClearBackground() { 2122 string CssString = ""; 2123 2124 CssString += @" 2125 .dw-navbar-button > a { 2126 background-color: rgba(0, 0, 0, 0.0) !important; 2127 } 2128 2129 .dw-navbar-button > a:hover, dw-navbar-button > a:active, dw-navbar-button > a:focus, .active > a { 2130 background-color: rgba(0, 0, 0, 0.0) !important; 2131 }"; 2132 2133 return CssString; 2134 } 2135 2136 private string NavbarPosition(bool margin=false, int specialpadding=6, int extramargin=0) { 2137 int LogoHeight = 0; 2138 string CssString = ""; 2139 int Centerpos = 0; 2140 2141 if (GeneralSettings.Header.Mode != "solid"){ 2142 if (!string.IsNullOrWhiteSpace(GeneralSettings.Logo.Image)) 2143 { 2144 LogoHeight = ImageHeight(); 2145 } 2146 else 2147 { 2148 LogoHeight = GetInteger("Item.Area.LogoFont.Size"); 2149 } 2150 } 2151 else 2152 { 2153 if (!string.IsNullOrWhiteSpace(GeneralSettings.Logo.Image)) 2154 { 2155 LogoHeight = 18; 2156 } 2157 else 2158 { 2159 LogoHeight = GetInteger("Item.Area.LogoFont.Size")-10; 2160 } 2161 } 2162 2163 if (margin == false) 2164 { 2165 Centerpos = (LogoHeight/2) + 6; 2166 2167 CssString += @" 2168 .dw-navbar-button > a, .navbar-wp.affix .navbar-nav > li > a { 2169 padding: " + Centerpos + @"px " + (specialpadding+4) + @"px " + Centerpos + @"px " + (specialpadding+4) + @"px !important; 2170 margin: " + extramargin + @"px " + extramargin + @"px !important; 2171 }"; 2172 } 2173 else 2174 { 2175 Centerpos = ((LogoHeight/2)+6)-(specialpadding+extramargin); 2176 2177 CssString += @" 2178 .dw-navbar-button > a, .navbar-wp.affix .navbar-nav > li > a { 2179 padding: " + specialpadding + @"px " + (specialpadding+4) + @"px " + specialpadding + @"px " + (specialpadding+4) + @"px !important; 2180 margin: " + Centerpos + @"px 4px 0px 4px !important; 2181 }"; 2182 } 2183 2184 return CssString; 2185 } 2186 2187 private int ImageHeight () 2188 { 2189 int LogoHeight = 0; 2190 2191 if (!string.IsNullOrWhiteSpace(GetString("Item.Area.GeneralLogo"))) 2192 { 2193 string imageUrl = "https://" + HttpContext.Current.Request.Url.Authority + GetString("Item.Area.GeneralLogo"); 2194 2195 WebRequest request = WebRequest.Create(imageUrl); 2196 WebResponse response = request.GetResponse(); 2197 Image image = Image.FromStream(response.GetResponseStream()); 2198 2199 LogoHeight = image.Height; 2200 } 2201 else 2202 { 2203 LogoHeight = 38; 2204 } 2205 2206 return LogoHeight; 2207 } 2208 } 2209 2210 2211 2212 @{ 2213 InitGeneralSettings(); 2214 } 2215 2216 2217 <!-- Variables --> 2218 @{ 2219 string attrValue = ""; 2220 string loginpageid = ""; 2221 string FirstPg = GetInteger("DwAreaFirstActivePageID").ToString(); 2222 string SearchPID = GetInteger("DwAreaSearchPageID").ToString(); 2223 var cartid = GetInteger("DwAreaCartPageID").ToString(); 2224 string searchplaceholder = Translate("Search in all categories", "Search in all categories"); 2225 string saleid = "180"; 2226 string storelocation = GetPageIdByNavigationTag("Locations").ToString(); 2227 2228 string myCurrentAbsoluteUriString = System.Web.HttpContext.Current.Request.Url.AbsoluteUri; 2229 Uri myCurrentAbsoluteUri = new Uri(myCurrentAbsoluteUriString); 2230 string myPlcUrl = myCurrentAbsoluteUri.Scheme + "://" + myCurrentAbsoluteUri.Host; 2231 string regPageLink = "/Default.aspx?ID=" + GetPageIdByNavigationTag("Register"); 2232 string forgotPwLink = "/Default.aspx?ID=" + GetPageIdByNavigationTag("Login") + "&LoginAction=Recovery&firsttime=true"; 2233 string impersonationLoginLink = "/Default.aspx?ID=" + GetPageIdByNavigationTag("ImpersonationLogin"); 2234 string orderHistoryLink = "/Default.aspx?ID=" + GetPageIdByNavigationTag("Orders"); 2235 int searchPageId = GetPageIdByNavigationTag("ProductSearchPage"); 2236 } 2237 2238 <script> 2239 var websiteUrl = '@myPlcUrl'; 2240 </script> 2241 2242 @functions{ 2243 public static string RemoveWhiteSpaceFromStylesheets(string body) 2244 { 2245 body = Regex.Replace(body, @"[a-zA-Z]+#", "#"); 2246 body = Regex.Replace(body, @"[\n\r]+\s*", string.Empty); 2247 body = Regex.Replace(body, @"\s+", " "); 2248 body = Regex.Replace(body, @"\s?([:,;{}])\s?", "$1"); 2249 body = body.Replace(";}", "}"); 2250 body = Regex.Replace(body, @"([\s:]0)(px|pt|%|em)", "$1"); 2251 // Remove comments from CSS 2252 body = Regex.Replace(body, @"/\*[\d\D]*?\*/", string.Empty); 2253 return body; 2254 } 2255 } 2256 2257 <!-- Analytics code --> 2258 @{String googleTrackingId = GetString("Item.Area.Google_Analytics_");} 2259 @if (!string.IsNullOrWhiteSpace(googleTrackingId)) 2260 { 2261 <script type="text/javascript"> 2262 (function (i, s, o, g, r, a, m) { 2263 i['GoogleAnalyticsObject'] = r; i[r] = i[r] || function () { 2264 (i[r].q = i[r].q || []).push(arguments) 2265 }, i[r].l = 1 * new Date(); a = s.createElement(o), 2266 m = s.getElementsByTagName(o)[0]; a.async = 1; a.src = g; m.parentNode.insertBefore(a, m) 2267 })(window, document, 'script', 'https://www.google-analytics.com/analytics.js', 'ga'); 2268 2269 ga('create', '@googleTrackingId', 'auto'); 2270 ga('set', 'userId', '@GetGlobalValue("Global:Extranet.UserName")'); // Set the user ID using signed-in user_id. 2271 ga('require', 'ecommerce', 'ecommerce.js'); 2272 ga('send', 'pageview'); 2273 </script> 2274 } 2275 <style> 2276 hr { 2277 margin-top: 0px; 2278 margin-bottom: 10px; 2279 } 2280 2281 @@media (min-width: 770px) and (max-width:860px) { 2282 hr { 2283 margin-top: 37px; 2284 margin-bottom: 20px; 2285 } 2286 } 2287 .user-menu-dropdown { 2288 background-color: white; 2289 margin-left: -20px; 2290 position: absolute; 2291 z-index: 9999; 2292 box-shadow: 2px 2px 2px 2px #888888; 2293 width: 180px; 2294 display: none; 2295 } 2296 .user-menu-dropdown > ul { 2297 list-style: none; 2298 text-align: left; 2299 padding: 0px 10px 0px 10px; 2300 margin: 0px; 2301 } 2302 .user-menu-dropdown > ul > li { 2303 border-top: solid 1px #d4d4d4; 2304 padding: 10px 0px 10px 10px; 2305 } 2306 .user-menu-dropdown > ul > li > a { 2307 vertical-align: -webkit-baseline-middle; 2308 } 2309 .user-menu:hover .user-menu-dropdown, .user-menu-dropdown:hover { 2310 display: block; 2311 } 2312 .user-menu-mobile { 2313 background: #333; 2314 border-bottom: #aaa 1px solid; 2315 height: 40px; 2316 } 2317 .user-menu-mobile > div { 2318 width: 100%; 2319 } 2320 .user-menu-mobile > div > div { 2321 width: 50%; 2322 float: left; 2323 text-align: -webkit-center; 2324 padding-top: 9px !important; 2325 } 2326 .user-menu-mobile > div > div > a { 2327 color: #ffc000 !important; 2328 font-size: 15px !important; 2329 } 2330 .user-menu-mobile > div > div > img { 2331 width: 20px; 2332 margin-top: -5px; 2333 } 2334 .user-menu-mobile > div > div > span { 2335 float: right; 2336 color: #ffc000; 2337 } 2338 2339 .contentwrapper2_whennoti { 2340 top: unset; 2341 } 2342 .language-box { 2343 width: 25%; 2344 float: right; 2345 margin-left: 0px; 2346 } 2347 .breadcrumb.style2 ul { 2348 margin: 0px 0px 5px 0px; 2349 } 2350 @@media screen and (max-width: 2500px) and (min-width: 1000px) and (max-height: 3000px) { 2351 .content-wrapper2 { 2352 top: unset !important; 2353 } 2354 } 2355 2356 @@media screen and (max-width: 2500px) and (min-width: 1000px) and (max-height: 3000px) { 2357 .content-wrapper { 2358 top: unset !important; 2359 } 2360 } 2361 @@media screen and (max-width: 800px) and (min-width: 700px) and (max-height: 1050px) { 2362 .user-menu { 2363 /*display:none !important;*/ 2364 padding-top: 10px; 2365 } 2366 } 2367 @@media screen and (max-width: 1050px) and (min-width: 1000px) and (max-height: 800px) { 2368 .user-menu-mobile { 2369 display: none !important; 2370 } 2371 } 2372 @@media screen and (max-width: 1050px) and (min-width: 1000px) and (max-height: 800px) { 2373 .hideLogin { 2374 display: block; 2375 } 2376 } 2377 @@media screen and (max-width: 800px) and (min-width: 750px) and (max-height: 1050px) { 2378 .hideLogin { 2379 display: none; 2380 } 2381 } 2382 2383 @*/******************************added by AKS to fix menu overlapping on content in Ipad view**********************************/*@ 2384 @@media (max-width:768px) { 2385 .language-box { 2386 margin-top: 7px; 2387 } 2388 } 2389 @@media screen and (max-width: 700px) and (min-width: 350px) and (max-height: 700px) { 2390 .mblMenuStyleFixed { 2391 //position: fixed !important; 2392 //z-index: 10000; 2393 //height: 261px !important; 2394 //box-shadow: 0 2px 1px rgba(0,0,0,0.2) !important; 2395 } 2396 } 2397 @*/*********************************************************************/*@ 2398 .zoomContainer { 2399 z-index: 999; 2400 margin-top: 0px !important; 2401 overflow: hidden; 2402 } 2403 2404 .zoomWindow { 2405 border: #ccc 4px solid; 2406 background: #ccc; 2407 border-style: solid; 2408 width: 100%; 2409 overflow: hidden; 2410 } 2411 .modal-open { 2412 position: inherit !important; 2413 padding-right: 0px !important; 2414 overflow-x: auto !important; 2415 overflow-y: auto !important; 2416 } 2417 .M1.dropdown-menu { 2418 margin-top: 6px !important; 2419 } 2420 2421 a[href^=tel] { 2422 text-decoration: inherit; 2423 color: inherit; 2424 } 2425 2426 .alert-main { 2427 /*position: fixed;*/ 2428 width: 100%; 2429 top: 0; 2430 z-index: 99999; 2431 font-size: 14px; 2432 font-size: 1.4rem; 2433 -webkit-box-shadow: 0 2px 1px rgba(0,0,0,0.2); 2434 -moz-box-shadow: 0 2px 1px rgba(0,0,0,0.2); 2435 box-shadow: 0 2px 1px rgba(0,0,0,0.2); 2436 background-color: #2e2e2e; 2437 color: #909090; 2438 font-weight: 500; 2439 } 2440 2441 @@media screen and (max-width: 700px) and (min-width: 350px) and (max-height: 750px) { 2442 .alert-main { 2443 position: fixed; 2444 width: 100%; 2445 top: 0; 2446 z-index: 99999; 2447 font-size: 14px; 2448 font-size: 1.4rem; 2449 -webkit-box-shadow: 0 2px 1px rgba(0,0,0,0.2); 2450 -moz-box-shadow: 0 2px 1px rgba(0,0,0,0.2); 2451 box-shadow: 0 2px 1px rgba(0,0,0,0.2); 2452 background-color: #2e2e2e; 2453 color: #909090; 2454 font-weight: 500; 2455 height: 95px; 2456 } 2457 } 2458 @@media screen and (max-width: 700px) and (min-width: 650px) and (max-height: 400px) { 2459 .alert-main { 2460 position: fixed; 2461 width: 100%; 2462 top: 0; 2463 z-index: 99999; 2464 font-size: 14px; 2465 font-size: 1.4rem; 2466 -webkit-box-shadow: 0 2px 1px rgba(0,0,0,0.2); 2467 -moz-box-shadow: 0 2px 1px rgba(0,0,0,0.2); 2468 box-shadow: 0 2px 1px rgba(0,0,0,0.2); 2469 background-color: #2e2e2e; 2470 color: #909090; 2471 font-weight: 500; 2472 height: 65px; 2473 } 2474 } 2475 2476 .close-thik { 2477 content: '✖'; /* UTF-8 symbol */ 2478 } 2479 2480 2481 @@media screen and (max-width: 800px) and (min-width: 765px) and (max-height: 1200px) { 2482 .mblMenuStyleFixed { 2483 /*position: fixed !important;*/ 2484 /*z-index: 10000;*/ 2485 height: 220px !important; 2486 /*box-shadow: 0 2px 1px rgba(0,0,0,0.2) !important;*/ 2487 } 2488 } 2489 @@media screen and (max-width: 700px) and (min-width: 350px) and (max-height: 700px) { 2490 .whenNoti { 2491 top: 84px !important; 2492 } 2493 } 2494 @@media screen and (max-width: 700px) and (min-width: 600px) and (max-height: 400px) { 2495 .whenNoti { 2496 top: 64px !important; 2497 } 2498 2499 #searchMobile { 2500 top: 64px; 2501 } 2502 } 2503 @@media screen and (max-width: 800px) and (min-width: 765px) and (max-height: 1200px) { 2504 .whenNoti { 2505 /*top : 65px !important; AKS */ 2506 top: 0px !important; 2507 } 2508 } 2509 @@media screen and (max-height: 740px) and (max-width: 700px) and (min-width: 400px) { 2510 .content-wrapper.whenNotiMainPg { 2511 margin-top: 90px !important; 2512 } 2513 2514 .Noti_Remove { 2515 margin-top: 80px !important; 2516 } 2517 } 2518 @@media screen and (max-width: 800px) and (min-width: 765px) and (max-height: 1200px) { 2519 .whenNotiMainPg { 2520 margin-top: 0px !important; 2521 } 2522 } 2523 @@media screen and (max-width: 700px) and (min-width: 600px) and (max-height: 400px) { 2524 .whenNotiMainPg { 2525 margin-top: 320px !important; 2526 } 2527 } 2528 .whenNoti { 2529 top: 47px; 2530 } 2531 .whenNotiMainPg { 2532 margin-top: 20px; 2533 } 2534 2535 .product-count { 2536 background: none repeat scroll 0 0 #000; 2537 border-radius: 50%; 2538 color: #fff; 2539 display: inline-block; 2540 font-size: 10px; 2541 height: 20px; 2542 padding-top: 2px; 2543 position: absolute; 2544 right: 17px; 2545 text-align: center; 2546 top: 25px; 2547 width: 20px; 2548 } 2549 .product-count span.cart-no { 2550 position: relative; 2551 top: -11px; 2552 } 2553 2554 .borderLine { 2555 float: right; 2556 font-size: 30px; 2557 color: #d4d4d4; 2558 padding-right: 10px; 2559 } 2560 2561 @@media screen and (max-width: 700px) and (min-width: 350px) and (max-height: 750px) { 2562 .mblProductCount { 2563 top: 16px !important; 2564 } 2565 } 2566 2567 @@media screen and (max-width: 700px) and (min-width: 600px) and (max-height: 400px) { 2568 .mblProductCount { 2569 top: 21px !important; 2570 } 2571 } 2572 2573 @@media screen and (max-width: 700px) and (min-width: 350px) and (max-height: 750px) { 2574 .mblCartNo { 2575 top: -6px !important; 2576 } 2577 } 2578 2579 @@media screen and (max-width: 700px) and (min-width: 600px) and (max-height: 400px) { 2580 .mblCartNo { 2581 top: -11px !important; 2582 } 2583 } 2584 2585 @@media screen and (max-width: 700px) and (min-width: 600px) and (max-height: 400px) { 2586 .mblCartNo { 2587 top: -11px !important; 2588 } 2589 } 2590 2591 @@media screen and (max-width: 700px) and (min-width: 350px) and (max-height: 700px) { 2592 .mblborderLine { 2593 display: none; 2594 } 2595 } 2596 2597 @@media screen and (max-width: 500px) and (min-width: 400px) and (max-height: 750px) { 2598 .mblborderLine { 2599 display: none; 2600 } 2601 } 2602 @@media screen and (max-width: 700px) and (min-width: 650px) and (max-height: 400px) { 2603 .mblborderLine { 2604 display: none; 2605 } 2606 } 2607 2608 @@media screen and (max-width: 700px) and (min-width: 650px) and (max-height: 400px) { 2609 .mblLandScapeReorder { 2610 float: right !important; 2611 } 2612 } 2613 2614 @@media screen and (max-width: 700px) and (min-width: 650px) and (max-height: 400px) { 2615 .mblLandScapeReorderDiv { 2616 padding-left: 0px !important; 2617 } 2618 } 2619 2620 #myBtn { 2621 display: none; 2622 position: fixed; 2623 bottom: 55px; 2624 right: 9%; 2625 z-index: 99; 2626 font-size: 18px; 2627 border: none; 2628 outline: none; 2629 color: white; 2630 cursor: pointer; 2631 padding: 15px; 2632 border-radius: 4px; 2633 background-image: url(/Files/Templates/Designs/PLC/assets/images/up_arrow_icon.png); 2634 background-size: 35px; 2635 width: 35px; 2636 height: 35px; 2637 } 2638 @@media handheld, only screen and (max-width: 768px) { 2639 .content-wrapper { /*top:10px;*/ 2640 position: relative; 2641 } 2642 } 2643 /***********************loading screen*************************/ 2644 /* Absolute Center Spinner */ 2645 .loading { 2646 position: fixed; 2647 z-index: 999999; 2648 height: 2em; 2649 width: 2em; 2650 overflow: show; 2651 margin: auto; 2652 top: 0; 2653 left: 0; 2654 bottom: 0; 2655 right: 0; 2656 } 2657 2658 /* Transparent Overlay */ 2659 .loading:before { 2660 content: ''; 2661 display: block; 2662 position: fixed; 2663 top: 0; 2664 left: 0; 2665 width: 100%; 2666 height: 100%; 2667 background-color: rgba(0,0,0,0.3); 2668 } 2669 2670 /*----------------------------------------------------*/ 2671 .lds-spinner { 2672 color: official; 2673 display: inline-block; 2674 position: relative; 2675 width: 15px; 2676 height: 15px; 2677 } 2678 .lds-spinner div { 2679 transform-origin: 2px 12px; 2680 animation: lds-spinner 1.2s linear infinite; 2681 } 2682 @if(Pageview.Device.ToString().ToUpper() == "MOBILE") 2683 { 2684 <text> 2685 .jetmenu .dropdown { 2686 display: none; 2687 } 2688 </text> 2689 } 2690 .lds-spinner div:after { 2691 content: " "; 2692 display: block; 2693 position: absolute; 2694 width: 2.5px; 2695 height: 7px; 2696 border-radius: 50%; 2697 background: #fff; 2698 } 2699 .lds-spinner div:nth-child(1) { 2700 transform: rotate(0deg); 2701 animation-delay: -1.1s; 2702 } 2703 .lds-spinner div:nth-child(2) { 2704 transform: rotate(30deg); 2705 animation-delay: -1s; 2706 } 2707 .lds-spinner div:nth-child(3) { 2708 transform: rotate(60deg); 2709 animation-delay: -0.9s; 2710 } 2711 .lds-spinner div:nth-child(4) { 2712 transform: rotate(90deg); 2713 animation-delay: -0.8s; 2714 } 2715 .lds-spinner div:nth-child(5) { 2716 transform: rotate(120deg); 2717 animation-delay: -0.7s; 2718 } 2719 .lds-spinner div:nth-child(6) { 2720 transform: rotate(150deg); 2721 animation-delay: -0.6s; 2722 } 2723 .lds-spinner div:nth-child(7) { 2724 transform: rotate(180deg); 2725 animation-delay: -0.5s; 2726 } 2727 .lds-spinner div:nth-child(8) { 2728 transform: rotate(210deg); 2729 animation-delay: -0.4s; 2730 } 2731 .lds-spinner div:nth-child(9) { 2732 transform: rotate(240deg); 2733 animation-delay: -0.3s; 2734 } 2735 .lds-spinner div:nth-child(10) { 2736 transform: rotate(270deg); 2737 animation-delay: -0.2s; 2738 } 2739 .lds-spinner div:nth-child(11) { 2740 transform: rotate(300deg); 2741 animation-delay: -0.1s; 2742 } 2743 .lds-spinner div:nth-child(12) { 2744 transform: rotate(330deg); 2745 animation-delay: 0s; 2746 } 2747 @@keyframes lds-spinner { 2748 0% { 2749 opacity: 1; 2750 } 2751 2752 100% { 2753 opacity: 0; 2754 } 2755 } 2756 2757 /***********************loading screen end*************************/ 2758 </style> 2759 2760 <script> 2761 //Browser Back control 2762 @*/*************************Added By AKS for VIP card expire alert ..9/24/2019***********************/*@ 2763 2764 @if (Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName"))) 2765 { 2766 var user = Dynamicweb.Security.UserManagement.User.GetCurrentUser(Dynamicweb.Security.UserManagement.PagePermissionLevels.Frontend); 2767 List<Dynamicweb.Security.UserManagement.Common.CustomFields.CustomFieldValue> custom_fields = user.CustomFieldValues; 2768 DateTime expiryDate = (DateTime)custom_fields.Find(x => x.CustomField.Name == "ExpryDate").Value; 2769 2770 if (DateTime.Now > expiryDate) 2771 { 2772 <text> 2773 var isVIPExpire = getCookie("IsVIPExpire"); 2774 if(isVIPExpire != 'IsShown') 2775 { 2776 document.cookie = "IsVIPExpire=true; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 2777 } 2778 </text> 2779 } 2780 else 2781 { 2782 <text> 2783 document.cookie = "IsVIPExpire=false; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 2784 </text> 2785 } 2786 } 2787 /************************************************************************************************/ 2788 </script> 2789 2790 @if (Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName"))) 2791 { 2792 string loggedin = ""; 2793 var vbs = System.Web.HttpContext.Current.Request["loggedin"]; 2794 if (vbs != null) 2795 { 2796 loggedin = vbs.ToString(); 2797 } 2798 else 2799 { 2800 loggedin = "0"; 2801 } 2802 2803 string kemail = GetGlobalValue("Global:Extranet.UserName"); 2804 2805 if (loggedin == "1") 2806 { 2807 <script type="text/javascript"> 2808 $(document).ready(function () { 2809 window.DY = window.DY || {}; 2810 DY.API("event", { 2811 name: "Login", 2812 properties: { 2813 dyType: "login-v1", 2814 hashedEmail: DYO.dyhash.sha256('@kemail'), 2815 } 2816 }); 2817 if (window.location.href.indexOf("loggedin") > 0 && window.location.href.indexOf("shopping") > 0) { 2818 window.history.replaceState({}, document.title, "/" + "shopping-cart"); 2819 return; 2820 } 2821 if (window.location.href.indexOf("loggedin") > 0) { 2822 window.history.replaceState({}, document.title, "/" + "home"); 2823 return; 2824 } 2825 }); 2826 </script> 2827 } 2828 } 2829 2830 <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.3.0/css/datepicker.min.css"> 2831 <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.3.0/css/datepicker3.min.css"> 2832 <script src="//cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.3.0/js/bootstrap-datepicker.min.js"></script> 2833 <script type="text/javascript" src="//script.crazyegg.com/pages/scripts/0074/5989.js" async="async"></script> 2834 2835 <!-- Start Alexa Certify Javascript --> 2836 2837 <script type="text/javascript"> 2838 _atrk_opts = { atrk_acct:"/z1pl1awEti2fn", domain:"@System.Web.HttpContext.Current.Request.Url.Host",dynamic: true}; 2839 (function () { var as = document.createElement('script'); as.type = 'text/javascript'; as.async = true; as.src = "https://certify-js.alexametrics.com/atrk.js"; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(as, s); })(); 2840 </script> 2841 <noscript><img src="https://certify.alexametrics.com/atrk.gif?account=/z1pl1awEti2fn" style="display:none" height="1" width="1" alt=""></noscript> 2842 <!-- End Alexa Certify Javascript --> 2843 2844 <link rel="preconnect" href="//cdn.dynamicyield.com"> 2845 <link rel="preconnect" href="//st.dynamicyield.com"> 2846 <link rel="preconnect" href="//rcom.dynamicyield.com"> 2847 <link rel="dns-prefetch" href="//cdn.dynamicyield.com"> 2848 <link rel="dns-prefetch" href="//st.dynamicyield.com"> 2849 <link rel="dns-prefetch" href="//rcom.dynamicyield.com"> 2850 @GetValue("Stylesheets") 2851 @GetValue("Javascripts") 2852 </head> 2853 2854 <script> 2855 $(window).bind('scroll', function () { 2856 if ($(window).scrollTop() > 500) { 2857 $('header').addClass('nav-down'); 2858 } 2859 else { 2860 $('header').removeClass('nav-down'); 2861 } 2862 }); 2863 2864 // Hide Header on on scroll down 2865 var didScroll; 2866 var lastScrollTop = 0; 2867 var delta = 5; 2868 var navbarHeight = $('header').outerHeight(); 2869 2870 $(window).scroll(function (event) { 2871 didScroll = true; 2872 }); 2873 2874 setInterval(function () { 2875 if (didScroll) { 2876 hasScrolled(); 2877 didScroll = false; 2878 } 2879 }, 500); 2880 2881 function hasScrolled() { 2882 var st = $(this).scrollTop(); 2883 2884 // Make sure they scroll more than delta 2885 if (Math.abs(lastScrollTop - st) <= delta) 2886 return; 2887 2888 // If they scrolled down and are past the navbar, add class .nav-up. 2889 // This is necessary so you never see what is "behind" the navbar. 2890 if (st > lastScrollTop && st > navbarHeight) { 2891 // Scroll Down 2892 $('header').removeClass('nav-down').addClass('nav-up'); 2893 } else { 2894 // Scroll Up 2895 if (st + $(window).height() < $(document).height()) { 2896 $('header').removeClass('nav-up'); 2897 } 2898 } 2899 2900 lastScrollTop = st; 2901 } 2902 2903 function myFunction() { 2904 var x = document.getElementById("DrodownRspMenu"); 2905 if (x.style.display === "none") { 2906 x.style.display = "block"; 2907 } else { 2908 x.style.display = "none"; 2909 } 2910 } 2911 </script> 2912 <body> 2913 <!-- Google Tag Manager (noscript) --> 2914 <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-W354W5N" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 2915 <!-- End Google Tag Manager (noscript) --> 2916 <style> 2917 #SearchLoading { 2918 display: none; 2919 } 2920 .searchBackground { 2921 background-color: unset !important; 2922 border: unset !important; 2923 } 2924 2925 .freezeBackground { 2926 z-index: 1000; 2927 border: none; 2928 margin: 0px; 2929 padding: 0px; 2930 width: 100%; 2931 height: 100%; 2932 top: 0px; 2933 left: 0px; 2934 background-color: rgb(0, 0, 0); 2935 opacity: 0.6; 2936 cursor: wait; 2937 position: fixed; 2938 pointer-events: none; 2939 } 2940 2941 .loadingImg { 2942 position: absolute; 2943 top: 60%; 2944 z-index: 9999; 2945 left: 50%; 2946 } 2947 </style> 2948 2949 2950 <div id="loader" style="display:none" class="loading"> 2951 <div class="lds-spinner"><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div> 2952 </div> 2953 2954 <div id="hidDiv"></div> 2955 <div class="pop-upnoti-mo-search"> 2956 <div class="alert-main" id="alertmain" style="display:none;"> 2957 <div class="container"> 2958 <div class="pro-contentbox"> 2959 <div class="pro-content"> 2960 <p> 2961 <i class="dot yellow"></i> 2962 <p style="text-align:center;color:white;"> 2963 @if (GetBoolean("Item.Area.Day_Notification_Bar_On_Off")) 2964 { 2965 if (checkDay == GetString("Item.Area.Day_Notification_Day") && serverTime > friStartTime && serverTime < friEndTime) 2966 { 2967 @Translate(fridayMaintenanceNoti) 2968 } 2969 else 2970 { 2971 if (GetBoolean("Item.Area.System_Notification_Bar_On_Off")) 2972 { 2973 if (serverTime > startTime && serverTime < endTime) 2974 { 2975 @Translate(sysMaintenanceNoti) 2976 } 2977 else 2978 { 2979 if (GetBoolean("Item.Area.Maintenance_Time_Notification_Bar_On_Off")) 2980 { 2981 if (GetString("Item.Area.Maintenance_Time_Notification_Day") != "DAILY") 2982 { 2983 if (checkDay == GetString("Item.Area.Maintenance_Time_Notification_Day") && serverTime > maintenanceTimeNotiStartTime && serverTime < maintenanceTimeNotiEndTime) 2984 { 2985 @Translate(maintenanceTimeNoti) 2986 } 2987 else 2988 { 2989 if (GetBoolean("Item.Area.Notification_Bar_On_Off")) 2990 { 2991 @Translate(GetString("Item.Area.Notification_Text")) 2992 } 2993 } 2994 } 2995 else 2996 { 2997 if (serverTime > maintenanceTimeNotiStartTime && serverTime < maintenanceTimeNotiEndTime) 2998 { 2999 @maintenanceTimeNoti 3000 } 3001 else 3002 { 3003 if (GetBoolean("Item.Area.Notification_Bar_On_Off")) 3004 { 3005 @Translate(GetString("Item.Area.Notification_Text")) 3006 } 3007 } 3008 } 3009 } 3010 else 3011 { 3012 if (GetBoolean("Item.Area.Notification_Bar_On_Off")) 3013 { 3014 @Translate(GetString("Item.Area.Notification_Text")) 3015 } 3016 } 3017 } 3018 } 3019 else 3020 { 3021 if (GetBoolean("Item.Area.Maintenance_Time_Notification_Bar_On_Off")) 3022 { 3023 if (GetString("Item.Area.Maintenance_Time_Notification_Day") != "DAILY") 3024 { 3025 if (checkDay == GetString("Item.Area.Maintenance_Time_Notification_Day") && serverTime > maintenanceTimeNotiStartTime && serverTime < maintenanceTimeNotiEndTime) 3026 { 3027 @Translate(maintenanceTimeNoti) 3028 } 3029 else 3030 { 3031 if (GetBoolean("Item.Area.Notification_Bar_On_Off")) 3032 { 3033 @Translate(GetString("Item.Area.Notification_Text")) 3034 } 3035 } 3036 } 3037 else 3038 { 3039 if (serverTime > maintenanceTimeNotiStartTime && serverTime < maintenanceTimeNotiEndTime) 3040 { 3041 @Translate(maintenanceTimeNoti) 3042 } 3043 else 3044 { 3045 if (GetBoolean("Item.Area.Notification_Bar_On_Off")) 3046 { 3047 @Translate(GetString("Item.Area.Notification_Text")) 3048 } 3049 } 3050 } 3051 } 3052 else 3053 { 3054 if (GetBoolean("Item.Area.Notification_Bar_On_Off")) 3055 { 3056 @Translate(GetString("Item.Area.Notification_Text")) 3057 } 3058 } 3059 } 3060 } 3061 } 3062 else 3063 { 3064 if (GetBoolean("Item.Area.System_Notification_Bar_On_Off")) 3065 { 3066 if (serverTime > startTime && serverTime < endTime) 3067 { 3068 @Translate(sysMaintenanceNoti) 3069 } 3070 else 3071 { 3072 if (GetBoolean("Item.Area.Maintenance_Time_Notification_Bar_On_Off")) 3073 { 3074 if (GetString("Item.Area.Maintenance_Time_Notification_Day") != "DAILY") 3075 { 3076 if (checkDay == GetString("Item.Area.Maintenance_Time_Notification_Day") && serverTime > maintenanceTimeNotiStartTime && serverTime < maintenanceTimeNotiEndTime) 3077 { 3078 @Translate(maintenanceTimeNoti) 3079 } 3080 else 3081 { 3082 if (GetBoolean("Item.Area.Notification_Bar_On_Off")) 3083 { 3084 @Translate(GetString("Item.Area.Notification_Text")) 3085 } 3086 } 3087 } 3088 else 3089 { 3090 if (serverTime > maintenanceTimeNotiStartTime && serverTime < maintenanceTimeNotiEndTime) 3091 { 3092 @maintenanceTimeNoti 3093 } 3094 else 3095 { 3096 if (GetBoolean("Item.Area.Notification_Bar_On_Off")) 3097 { 3098 @Translate(GetString("Item.Area.Notification_Text")) 3099 } 3100 } 3101 } 3102 } 3103 else 3104 { 3105 if (GetBoolean("Item.Area.Notification_Bar_On_Off")) 3106 { 3107 @Translate(GetString("Item.Area.Notification_Text")) 3108 } 3109 } 3110 } 3111 } 3112 else 3113 { 3114 if (GetBoolean("Item.Area.Maintenance_Time_Notification_Bar_On_Off")) 3115 { 3116 if (GetString("Item.Area.Maintenance_Time_Notification_Day") != "DAILY") 3117 { 3118 if (checkDay == GetString("Item.Area.Maintenance_Time_Notification_Day") && serverTime > maintenanceTimeNotiStartTime && serverTime < maintenanceTimeNotiEndTime) 3119 { 3120 @Translate(maintenanceTimeNoti) 3121 } 3122 else 3123 { 3124 if (GetBoolean("Item.Area.Notification_Bar_On_Off")) 3125 { 3126 @Translate(GetString("Item.Area.Notification_Text")) 3127 } 3128 } 3129 } 3130 else 3131 { 3132 if (serverTime > maintenanceTimeNotiStartTime && serverTime < maintenanceTimeNotiEndTime) 3133 { 3134 @maintenanceTimeNoti 3135 } 3136 else 3137 { 3138 if (GetBoolean("Item.Area.Notification_Bar_On_Off")) 3139 { 3140 @Translate(GetString("Item.Area.Notification_Text")) 3141 } 3142 } 3143 } 3144 } 3145 else 3146 { 3147 if (GetBoolean("Item.Area.Notification_Bar_On_Off")) 3148 { 3149 @Translate(GetString("Item.Area.Notification_Text")) 3150 } 3151 } 3152 } 3153 } 3154 <a href="javascript:void(0);divClose()" class="close" aria-label="Close" style="width: 10px;top: 0px;height: 10px;opacity: 1;"> 3155 <span aria-hidden="true" style="color:#F8F9F9;">&times;</span> 3156 </a> 3157 </p> 3158 </p> 3159 </div> 3160 </div> 3161 </div> 3162 </div> 3163 3164 <div class="prevent-overlay"></div> 3165 @if (Pageview.Device.ToString().ToUpper() == "MOBILE") 3166 { 3167 <div class="modal fade" id="searchMobile" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> 3168 <div class="modal-dialog" style="top: 0px;padding: unset;margin: unset;"> 3169 <div class="modal-content" style=" background-color: #000 !important; border-radius: unset; width: 102%; left: -1px;"> 3170 <div class="modal-body" style="padding: 10px 25px 0px !important;"> 3171 <form method="get" id="searchForm" onsubmit="return tolower('#searchForm');" action="/Default.aspx"> 3172 <input type="hidden" name="ID" value="@searchPageId"> 3173 <table style="width: 100%;"> 3174 <tr> 3175 <td style="width: 70%; position: relative; width: 240px;"> 3176 <input type="search" class="form-control" id="search" name="searchsuggest" tabindex="1" placeholder="@searchplaceholder" style="width: 100%;border:none: background:#fff; display:block; width: 100%; box-sizing: border-box" autocomplete="off"> 3177 <img src="/Files/Images/plc/images/Search_Remove_Icon.svg" onclick="return clearSearchText();" style=" position: absolute; top: 7px; right: 2px; width:21px; background-color: white;"> 3178 <ul class="searchSuggestUl" id="searchSuggest"></ul> 3179 </td> 3180 <td style="width: 20%;"> 3181 <input type="button" style=" border: unset; background-color: #000; color: #fff; padding-left: 20px;" onclick="removeSearchDiv()" alt="submit" name="submit" value="Cancel"> 3182 </td> 3183 </tr> 3184 </table> 3185 <button type="submit" id="submitSearch" class="my-search-icon hidden"> 3186 <i class="fa fa-search"></i> 3187 </button> 3188 </form> 3189 </div> 3190 </div> 3191 </div> 3192 </div> 3193 } 3194 </div> 3195 <div id="menusoverlay"></div> 3196 <div id="fb-root"></div> 3197 <script> 3198 function hideErrorMessage() { 3199 $(".errorMsg").css("display", "none"); 3200 $(".cus-reg-para2").css("padding-bottom", "none"); 3201 $(".cus-modal").css("background-color", "white"); 3202 if ($(window).width() > 1200) { 3203 $(".cus-reg-btn").css("margin-top", "25px"); 3204 $(".cus-modal").css("height", "390px"); 3205 } 3206 if (screen.width > 800 && screen.width < 850 && screen.height > 1000 && screen.height < 1200) { 3207 $(".cus-reg-btn").css("margin-top", "25px"); 3208 $(".cus-modal").css("height", "400px"); 3209 } 3210 if (screen.width > 450 && screen.width < 800 && screen.height > 1000 && screen.height < 1200) { 3211 $(".cus-reg-btn").css("margin-top", "25px"); 3212 $(".cus-modal").css("height", "420px"); 3213 } 3214 } 3215 </script> 3216 <!-- MODALS --> 3217 <div class="modal fade" id="login" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> 3218 <div class="modal-dialog"> 3219 <div class="modal-content cus-modal" style="background-color:white;"> 3220 <div> 3221 <button type="button" class="close cus-close" data-dismiss="modal" aria-hidden="true" onclick="hideErrorMessage()"><img class="cus-close-img" src="/Files/Templates/Designs/PLC/assets/images/cancel-img.png"></button> 3222 </div> 3223 <div class="modal-body cus-mod-body"> 3224 <div style="width:100%"> 3225 <div class="cus-login"> 3226 <p class="login-para1" id="myModalLabel">@Translate("I have an online account", "I have an online account")</p> 3227 <p class="login-para2">@Translate("to place orders online","to place orders online")</p> 3228 @if(System.Web.HttpContext.Current.Request["loggin"] != null) 3229 { 3230 <text> 3231 <script> 3232 $(document).ready(function () { 3233 $('#loginPopup').click(); 3234 }); 3235 </script> 3236 </text> 3237 } 3238 @if (!string.IsNullOrWhiteSpace(GetString("DW_extranet_error_uk"))) 3239 { 3240 var extranetError = GetString("DW_extranet_error_uk").Replace("username", "email address"); 3241 if(extranetError.ToUpper().Contains("Exceeded limit of attempts to login. The account for user".ToUpper())) 3242 { 3243 extranetError = extranetError.Replace("Exceeded limit of attempts to login. The account for user", Translate("Exceeded limit of attempts to login. The account for user")).Replace("is blocked for 10 minutes", Translate("is blocked for 10 minutes")); 3244 } 3245 else 3246 { 3247 extranetError = Translate(extranetError); 3248 } 3249 var username = System.Web.HttpContext.Current.Request["UserName"]; 3250 if (!string.IsNullOrWhiteSpace(GetString("DW_extranet_error_uk")) && GetString("DwPageID") != cartid) 3251 { 3252 <text> 3253 <script> 3254 3255 $(document).ready(function(){ 3256 $('#loginPopup').click(); 3257 }) 3258 </script> 3259 </text> 3260 } 3261 <style> 3262 .errorMsg { 3263 background-color: #ff9898; 3264 border: solid 1px #f21a1a; 3265 border-style: ridge; 3266 border-radius: 4px; 3267 margin-top: 5px; 3268 } 3269 </style> 3270 <script> 3271 $(document).ready(function () { 3272 if (screen.width < 400 && screen.height < 580) { 3273 $(".cus-modal").css("height", "137%"); 3274 } 3275 3276 if (screen.width < 500 && screen.width > 850 && screen.height < 900) { 3277 $(".cus-modal").css("height", "110%"); 3278 } 3279 if (screen.width > 350 && screen.width < 400 && screen.height > 580 && screen.height < 800) { 3280 $(".cus-modal").css("height", "110%"); 3281 } 3282 }); 3283 </script> 3284 3285 <div class="form-group errorMsg @username"> 3286 @if (!string.IsNullOrEmpty(username)) 3287 { 3288 Dynamicweb.Security.UserManagement.User user = Dynamicweb.Security.UserManagement.User.GetUserByUserName(username); 3289 if (user != null && !user.Active) 3290 { 3291 <style> 3292 @@media only screen and (min-width:992px) { 3293 .cus-modal { 3294 height: 455px; 3295 } 3296 3297 .cus-reg-btn { 3298 margin-top: 101px; 3299 } 3300 } 3301 3302 @@media only screen and (device-width: 834px) and (device-height: 1194px) { 3303 .cus-modal { 3304 height: 500px; 3305 } 3306 3307 .cus-reg-btn { 3308 margin-top: 118px; 3309 } 3310 } 3311 3312 @@media only screen and (device-width: 712px) and (device-height: 1138px) { 3313 .cus-modal { 3314 height: 510px; 3315 } 3316 3317 .cus-reg-btn { 3318 margin-top: 118px; 3319 } 3320 3321 .errorMsg { 3322 width: 93% !important; 3323 } 3324 } 3325 </style> 3326 <form method="post" class="" id="ResendActivateEmail" style="margin-bottom:0px; margin-top: 5px;" action='/Default.aspx?id=@GetPageIdByNavigationTag("ResendActivationLink")'> 3327 <input type="hidden" id="validateEmail" name="validateEmail" value="@username"> 3328 <div style="font-size:12px; margin-top: 5px;"> 3329 <span style="padding:10px;">@Translate("Your online account is not activated yet.")</span><br> 3330 <span style="display: inline-block; padding:0px 10px;">@Translate("Please activate your online account via the activation link sent to your email.")</span><br> 3331 <a href=""><input hidden="" id="ResendActivateEmailSubmit" style="padding: 5px 10px; background: unset; width: auto;text-decoration: underline; color: #000;" type="submit" value="Resend activation link"></a> 3332 <a href="javascript:void(0)" onclick='document.getElementById("ResendActivateEmailSubmit").click();'><span style="padding: 5px 10px; background: unset; width: auto;text-decoration: underline; color: #000;">@Translate("Resend activation link")</span></a> 3333 </div> 3334 </form> 3335 } 3336 else 3337 { 3338 <style> 3339 @@media only screen and (min-width:992px) { 3340 .cus-modal { 3341 height: 405px; 3342 } 3343 3344 .cus-reg-btn { 3345 margin-top: 52px; 3346 } 3347 } 3348 3349 @@media only screen and (device-width: 834px) and (device-height: 1194px) { 3350 .cus-modal { 3351 height: 430px; 3352 } 3353 3354 .cus-reg-btn { 3355 margin-top: 53px; 3356 } 3357 } 3358 3359 @@media only screen and (device-width: 712px) and (device-height: 1138px) { 3360 .cus-modal { 3361 height: 450px; 3362 } 3363 3364 .cus-reg-btn { 3365 margin-top: 52px; 3366 } 3367 3368 .errorMsg { 3369 width: 95% !important; 3370 } 3371 } 3372 </style> 3373 <span style="padding:10px;">@extranetError</span> 3374 } 3375 } 3376 </div> 3377 } 3378 <form class="form-horizontal cus-form-padd" role="form" id="loginform" method="post" action='/Default.aspx?ID=@GetPageIdByNavigationTag("Home")'> 3379 <!--<input type="hidden" name="ID" value="@Pageview.ID" />--> 3380 <input type="hidden" name="ID" value="@FirstPg"> 3381 <input type="hidden" name="DWExtranetUsernameRemember" value="True"> 3382 <input type="hidden" name="DWExtranetPasswordRemember" value="True"> 3383 @if (string.IsNullOrWhiteSpace(GetString("UserManagement:User.Login.SuccessRedirectToPage"))) 3384 { 3385 <input type="hidden" name="Redirect" value="/Default.aspx?ID=@Pageview.ID"> 3386 } 3387 <div class="cus-form form-group"> 3388 @{ attrValue = Translate("Enter email address", "Enter email address"); 3389 var username2 = @GetValue("DWExtranetUsername"); 3390 } 3391 <label for="username" class="cus-email-label col-sm-3">@Translate("Email address", "Email address")</label> 3392 <div class="form-text-width cus-padding col-sm-7"><input type="email" id="LoginEmail" class="cus-form2 form-control" name="username" id="username" onkeypress="prevent(event)" value="@username2" required=""></div> 3393 </div> 3394 <div class="cus-form1 form-group"> 3395 @{ 3396 attrValue = Translate("Enter password", "Enter password"); 3397 } 3398 <label for="password" class="cus-password col-sm-3">@Translate("Password", "Password")</label> 3399 <div class="form-text-width cus-pass-text col-sm-7"><input type="password" id="LoginPassword" class="cus-form2 form-control" name="password" id="password" onkeypress="prevent(event)" required=""></div> 3400 &nbsp; 3401 <a class="cus-forget-pass pull-left" href="@forgotPwLink">@Translate("Forgot password?", "Forgot password?")</a> 3402 &nbsp; 3403 </div> 3404 <div class="cus-footer modal-footer"> 3405 <div class="checkbox cus-keepsign" style="padding:10 0 20 0; width: fit-content;"> 3406 <label> 3407 <input type="checkbox" name="Autologin" checked="checked" value="True" class="cus-checkbox"><div class="checkbox-text">@Translate("Keep me logged in", "Keep me logged in")</div> 3408 </label> 3409 </div> 3410 <input class="cus-login-btn" name="btnSubmit" type="submit" value='@Translate("Log In", "Log In")' id="btnSubmit"> 3411 </div> 3412 3413 @if (GetLoop("DWExtranetExternalLoginProviders").Count != 0) 3414 { 3415 <div class=".cus-footer modal-footer"> 3416 <div class="row"> 3417 <div class="col-md-12"> 3418 <div class="pull-left">@Translate("Or sign in using", "Or sign in using"):</div> 3419 <p> 3420 </div> 3421 </div> 3422 <div class="row"> 3423 <div class="col-md-12"> 3424 @foreach (LoopItem LoginProvider in GetLoop("DWExtranetExternalLoginProviders")) 3425 { 3426 var ProviderName = LoginProvider.GetString("ProviderName").ToLower(); 3427 var ProviderID = LoginProvider.GetValue("ProviderID"); 3428 <a href='/Admin/Public/Social/ExternalLogin.aspx?action=login&amp;providerID=@ProviderID' class="btn btn-xs btn-base pull-left"><i class="fa fa-@ProviderName"></i>@LoginProvider.GetString("ProviderName")</a> 3429 } 3430 </div> 3431 </div> 3432 </div> 3433 } 3434 <div class="cus-show"><h2 class="cus-line"><span class="cus-text">@Translate("or")</span></h2></div> 3435 </form> 3436 </div> 3437 <div class="part2"> 3438 <div class="ver-line"><hr width="1" size="500" class="cus-hr"></div> 3439 <div class="or">@Translate("or")</div> 3440 <div class="ver-line"><hr width="1" size="500" class="cus-hr"></div> 3441 </div> 3442 <div class="cus-reg"> 3443 <p class="cus-reg-para1">@Translate("I have a VIP membership but no online account","I have a VIP membership but no online account")</p> 3444 <p class="cus-reg-para2">@Translate("Register for an online account and link your VIP membership","Register for an online account and link your VIP membership")</p> 3445 <a href="@regPageLink"><button class="cus-reg-btn">@Translate("Register","Register")</button></a> 3446 </div> 3447 </div> 3448 </div> 3449 </div> 3450 </div> 3451 </div> 3452 <header class="grid-full mblMenuStyleFixed" id="noprint"> 3453 <div class="top-bar" id="noprint"> 3454 <div class="grid" id="noprint"> 3455 @if(Pageview.Device.ToString().ToUpper() == "MOBILE" || (Pageview.Device.ToString().ToUpper() == "TABLET" && Pageview.Platform.ToString().ToUpper() == "ANDROID")) 3456 { 3457 if(@GetGlobalValue("Global:Area.Lang").ToUpper() == "TH"){ 3458 <div class="col-1-2 tab-1-1 nopadding ipad-tab-1"> 3459 <div class="call-text alignment-call-text-topbar mbl-flex"> 3460 <img style="width:15px;height:15px;" src="@sitepath/assets/images/icons8-phone-26.png" alt="icon" title="chat or call us at"><span class="bold"> @GetString("Item.Area.ChatOr_CallUs_No") <br>@Translate("for Phone Order")</span> 3461 </div> 3462 <!--<div class="customercare-text align-customer-service-toolbar"> 3463 <a href="@CustomerCareHyperLink" class="bold">@Translate("Customer Care")</a> 3464 </div>--> 3465 <div class="store-link alignment-store-link-topbar" id="noprint"> 3466 <a href="Default.aspx?ID=@storelocation"> 3467 <span class="bold">@Translate("Stores") </span> 3468 </a> 3469 </div> 3470 </div> 3471 } 3472 else{ 3473 <div class="col-1-2 tab-1-1 nopadding ipad-tab-1"> 3474 <div class="eng-call-text alignment-call-text-topbar mbl-flex"> 3475 <img style="width:15px;height:15px;" src="@sitepath/assets/images/icons8-phone-26.png" alt="icon" title="chat or call us at"><span class="bold"> @GetString("Item.Area.ChatOr_CallUs_No") <br>@Translate("for Phone Order")</span> 3476 </div> 3477 <!--<div class="eng-customercare-text align-customer-service-toolbar"> 3478 <a href="@CustomerCareHyperLink" class="bold">@Translate("Customer Care")</a> 3479 </div>--> 3480 <div class="store-link alignment-store-link-topbar" id="noprint"> 3481 <a href="Default.aspx?ID=@storelocation"> 3482 <span class="bold">@Translate("Stores") </span> 3483 </a> 3484 </div> 3485 </div> 3486 } 3487 } 3488 else{ 3489 if(@GetGlobalValue("Global:Area.Lang").ToUpper() == "EN"){ 3490 3491 <div class="col-1-2 tab-1-1 nopadding ipad-tab-1"> 3492 <div class="call-text"><img style="width:15px;height:15px;" src="@sitepath/assets/images/icons8-phone-26.png" alt="icon" title="chat or call us at"><span class="bold">@GetString("Item.Area.ChatOr_CallUs_No") @Translate("for Phone Order")</span></div> 3493 <!--<div class="customercare-text align-customer-service-toolbar"> 3494 <a href="@CustomerCareHyperLink" class="bold">@Translate("Customer Care")</a> 3495 </div>--> 3496 <div class="store-link alignment-store-link-topbar" id="noprint"> 3497 <a href="Default.aspx?ID=@storelocation"> 3498 <span class="bold">@Translate("Stores") </span> 3499 </a> 3500 </div> 3501 </div> 3502 } 3503 else{ 3504 <div class="col-1-2 tab-1-1 nopadding ipad-tab-1"> 3505 <div class="call-text" style="width:55%"><img style="width:15px;height:15px;" src="@sitepath/assets/images/icons8-phone-26.png" alt="icon" title="chat or call us at"><span class="bold">@GetString("Item.Area.ChatOr_CallUs_No") @Translate("for Phone Order")</span></div> 3506 <!--<div class="customercare-text align-customer-service-toolbar" style="width:16%;"> 3507 <a href="@CustomerCareHyperLink" class="bold">@Translate("Customer Care")</a> 3508 </div>--> 3509 <div class="store-link alignment-store-link-topbar" id="noprint"> 3510 <a href="Default.aspx?ID=@storelocation"> 3511 <span class="bold">@Translate("Stores") </span> 3512 </a> 3513 </div> 3514 </div> 3515 } 3516 3517 } 3518 <div class="col-1-2 tab-1-1 nopadding ipad-tab-2" id="noprint"> 3519 <div class="language-box" id="noprint"> 3520 <div id="languageDropdown" class="wrapper-dropdown-3 dd3 alignment-languageDropdown-topbar" tabindex="1"> 3521 @if (GetGlobalValue("Global:Area.Lang").ToUpper() == "EN") 3522 { 3523 <span class="bold"><img src="/Files/Images/plc/images/TH/globalicon.png" alt="flag image" title="" style="width: 27%; padding-right: 4px;"> | English</span> 3524 } 3525 else 3526 { 3527 <span class="bold"><img src="/Files/Images/plc/images/TH/globalicon.png" alt="flag image" title="" style="width: 27%; padding-right: 4px;"> | ภาษาไทย</span> 3528 } 3529 @if(otherLangPageId > 0) 3530 { 3531 if(GetGlobalValue("Global:Area.Lang").ToUpper() == "EN") 3532 { 3533 <ul class="dropdown"> 3534 <li onclick="window.location.href=$(this).find(&quot;a&quot;).attr(&quot;href&quot;);"><a href='/Default.aspx?ID=@GetGlobalValue("Global:Page.ID")'>English</a></li> 3535 <li onclick="window.location.href=$(this).find(&quot;a&quot;).attr(&quot;href&quot;);"><a href='/Default.aspx?ID=@otherLangPageId'>ภาษาไทย</a></li> 3536 </ul> 3537 } 3538 else 3539 { 3540 <ul class="dropdown"> 3541 <li onclick="window.location.href=$(this).find(&quot;a&quot;).attr(&quot;href&quot;);"><a href='/Default.aspx?ID=@otherLangPageId'>English</a></li> 3542 <li onclick="window.location.href=$(this).find(&quot;a&quot;).attr(&quot;href&quot;);"><a href='/Default.aspx?ID=@GetGlobalValue("Global:Page.ID")'>ภาษาไทย</a></li> 3543 </ul> 3544 } 3545 } 3546 else 3547 { 3548 <ul class="dropdown"> 3549 <li onclick="window.location.href=$(this).find(&quot;a&quot;).attr(&quot;href&quot;);"><a href="/en-us">English</a></li> 3550 <li onclick="window.location.href=$(this).find(&quot;a&quot;).attr(&quot;href&quot;);"><a href="/th-th">ภาษาไทย</a></li> 3551 </ul> 3552 } 3553 </div> 3554 </div> 3555 <div class="country-box" id="noprint"> 3556 <div id="countryDropdown" class="wrapper-dropdown-3 dd1 alignment-countryDropdown-topbar" tabindex="1"> 3557 <!--<span style="background:url(@templateFolder/assets/images/flag_th.gif) no-repeat;">@Translate("Thailand")</span>--> 3558 <span class="bold">@Translate("Thailand")</span> 3559 @*---- BEGAN Country Selection Hard Code ----*@ 3560 <ul class="dropdown"> 3561 <li onclick="window.location.href=$(this).find(&quot;a&quot;).attr(&quot;href&quot;);"><a href="https://www.petloverscentre.co.th"> @Translate("Thailand")</a></li> 3562 <li onclick="window.location.href=$(this).find(&quot;a&quot;).attr(&quot;href&quot;);"><a href="https://www.petloverscentre.com"> @Translate("Singapore")</a></li> 3563 <li onclick="window.location.href=$(this).find(&quot;a&quot;).attr(&quot;href&quot;);"><a href="https://www.petloverscentre.com.my"> @Translate("Malaysia")</a></li> 3564 @*<li onclick="window.location.href=$(this).find(&quot;a&quot;).attr(&quot;href&quot;);"><a href="http://www.petloverscentre.vn"> @Translate("Vietnam")</a></li>*@ 3565 <li onclick="window.location.href=$(this).find(&quot;a&quot;).attr(&quot;href&quot;);"><a href="https://www.petloverscentre.com.ph"> @Translate("Philippines")</a></li> 3566 </ul> 3567 @*---- END Country Selection Hard Code ----*@ 3568 </div> 3569 </div> 3570 <div class="dropdown-box vip-box @Pageview.Device.ToString()" id="noprint"> 3571 <div class="wrapper-dropdown-3 dd2 alignment-vipmembership-topbar" tabindex="1"> 3572 <span class="bold">@Translate("VIP Membership")</span> 3573 <ul class="dropdown"> 3574 @GetValue("DwNavigation(vipcard)") 3575 </ul> 3576 </div> 3577 </div> 3578 </div> 3579 </div> 3580 </div> 3581 <div class="grid" id="noprint"> 3582 <div class="top-info" id="noprint"> 3583 @if (!string.IsNullOrWhiteSpace(GetString("Item.Area.Logo"))) 3584 { 3585 string logo = GetString("Item.Area.Logo"); 3586 string areaName = GetString("DwAreaName"); 3587 3588 <a href="@globalurl"> 3589 <div class="logo"> 3590 <img src="@logo" alt="Logo" title="@areaName"> 3591 </div> 3592 </a> 3593 } 3594 3595 <div class="top-info-right" id="noprint"> 3596 <div class="top-info-content"> 3597 @if(!GetBoolean("Item.Area.Enable")) 3598 { 3599 <div class="top-cart-info" id="noprint"> 3600 <span class="borderLine"> 3601 |<span> 3602 <img src="@sitepath/assets/images/shopping-cart.png"> 3603 <a class="dw-minicart" id="minipagecart-button"> 3604 <i class="fa fa-shopping-cart"></i> 3605 <span class="product-count mblProductCount"> 3606 <span class="cart-no mblCartNo"> @productQty </span> 3607 </span> 3608 </a> 3609 </span> 3610 </span> 3611 </div> 3612 if (Pageview.Device.ToString().ToUpper() == "MOBILE") 3613 { 3614 <div class="mblLandScapeReorderDiv"> 3615 @if (!Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName"))) 3616 { 3617 <a href="javascript:void(0)" data-toggle="modal" data-target="#login"><img src="@sitepath/assets/images/Non_Login_Reorder.png" style="width: 65px;float:right;" class="mblLandScapeReorder"></a> 3618 } 3619 else 3620 { 3621 <a href="@orderHistoryLink"><img src="@sitepath/assets/images/Reorder.png" style="width: 65px;float:right;" class="mblLandScapeReorder"></a> 3622 } 3623 <span class="borderLine mblborderLine">|</span> 3624 </div> 3625 } 3626 else if (Pageview.Device.ToString().ToUpper() == "TABLET") 3627 { 3628 <div> 3629 @if (!Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName"))) 3630 { 3631 <a href="javascript:void(0)" data-toggle="modal" data-target="#login"><img src="@sitepath/assets/images/Non_Login_Reorder.png" style="width: 70px;float:right;"></a> 3632 } 3633 else 3634 { 3635 <a href="@orderHistoryLink"><img src="@sitepath/assets/images/Reorder.png" style="width: 70px;float:right;"></a> 3636 } 3637 </div> 3638 } 3639 else 3640 { 3641 <div> 3642 @if (!Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName"))) 3643 { 3644 <a href="javascript:void(0)" data-toggle="modal" data-target="#login"><img src="@sitepath/assets/images/Non_Login_Reorder.png" style="width: 70px;float:right;"></a> 3645 } 3646 else 3647 { 3648 <a href="@orderHistoryLink"><img src="@sitepath/assets/images/Reorder.png" style="width: 70px;float:right;"></a> 3649 } 3650 <span class="borderLine" style="padding-top: 3.5px;">|<span> 3651 </span></span></div> 3652 } 3653 3654 <div class="cart-info-box" style="display:none;"> 3655 <ul class="sub-menu" style="list-style:none;"> 3656 <li id="smallscreen-minicart"> 3657 @MiniCart() 3658 </li> 3659 </ul> 3660 </div> 3661 3662 <div class="top-sign hideLogin" id="noprint" style="width:auto;"> 3663 @if (!Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName"))) 3664 { 3665 if(Pageview.Device.ToString().ToUpper() != "MOBILE") 3666 { 3667 <div class="ShowHideLogIn"> 3668 <a href="#" id="loginPopup" data-toggle="modal" data-target="#login">@Translate("Log In")</a> 3669 <text>|</text> 3670 <br class="showhide-br"> 3671 <a href="@regPageLink">@Translate("Register")</a> 3672 </div> 3673 } 3674 else 3675 { 3676 <br class="showhide-br" style="display:block;"> 3677 <br class="showhide-br" style="display:block;"> 3678 } 3679 } 3680 @if (Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName"))) 3681 { 3682 <div class="user-menu"> 3683 @if (Pageview.Device.ToString().ToUpper() != "MOBILE") 3684 { 3685 <a href='/Default.aspx?ID=@GetPageIdByNavigationTag("ViewProfile")'><strong>Hi @GetGlobalValue("Global:Extranet.FirstName")</strong></a> 3686 <div class="user-menu-dropdown"> 3687 <ul> 3688 <li style="border: none;"><a href='/Default.aspx?ID=@GetPageIdByNavigationTag("ViewProfile")'>@Translate("View Profile", "View Profile")</a></li> 3689 <li><a href='/Default.aspx?ID=@GetPageIdByNavigationTag("EditUserProfile")'>@Translate("Edit User Profile", "Edit User Profile")</a></li> 3690 <li><a href='/Default.aspx?ID=@GetPageIdByNavigationTag("Orders")'>@Translate("Orders", "Orders")</a></li> 3691 <li><a href='javascript:void(0);SiteLogout()'>@Translate("Logout", "Logout")</a></li> 3692 </ul> 3693 </div> 3694 } 3695 <br class="showhide-br"> 3696 </div> 3697 } 3698 3699 @if (Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName")) && GetLoop("DWExtranetSecondaryUsers").Count > 0) 3700 { 3701 <div class="impersonation-panel" style="margin-bottom: -20px;"> 3702 @*Impersonation*@ 3703 @if (!string.IsNullOrWhiteSpace(GetGlobalValue("Global:Extranet.SecondaryUser.UserName"))) 3704 { 3705 <input class="btn btn-default" style="width: 100% !important;padding-top: 0px !important;background-color: #ad2c13 !important;font-size: 12px; " type="button" id='showhidebtn' value='@Translate("Impersonated by") @GetGlobalValue("Global:Extranet.SecondaryUser.UserName")'> 3706 } 3707 <div id="impersonDiv" style="margin-bottom: -20px;position: absolute;background-color: white;z-index: 9999;border: 1px solid;display:none;padding: 0.5em 0.5em 0.5em 1em; line-height: 3px;"> 3708 @if (!string.IsNullOrWhiteSpace(GetGlobalValue("Global:Extranet.SecondaryUser.UserName"))) 3709 { 3710 3711 string stopImpersonateTranslation = Translate("Stop impersonation", "Stop impersonation"); 3712 <i class="fa fa-user-secret"></i> 3713 <p>@Pageview.User.UserName<text>&nbsp;</text>@Translate("is impersonated by")<text>&nbsp;</text></p><p>@GetGlobalValue("Global:Extranet.SecondaryUser.UserName")</p> 3714 <form method="post"> 3715 <input type="submit" class="btn btn-default" name="DwExtranetRemoveSecondaryUser" value="@stopImpersonateTranslation" style="width: 139px !important;padding-top: 0px !important;background-color: #ad2c13 !important; "> 3716 </form> 3717 } 3718 </div> 3719 <div> 3720 @if (string.IsNullOrWhiteSpace(GetGlobalValue("Global:Extranet.SecondaryUser.UserName"))) 3721 { 3722 <a href="@impersonationLoginLink" title="View the list of users you can impersonate"><i class="fa fa-user-secret"></i>@Translate("View impersonated user list", "View impersonated user list")</a> 3723 } 3724 </div> 3725 </div> 3726 } 3727 </div> 3728 } 3729 <style> 3730 .searchBox_innner { 3731 border-bottom: unset !important; 3732 margin: 2px 5% 8px 5% !important; 3733 } 3734 3735 .top-info-content { 3736 border-bottom: #d8d8d8 1px solid !important; 3737 } 3738 </style> 3739 @if(Pageview.Device.ToString().ToUpper() != "MOBILE") 3740 { 3741 <div class="searchBox" style="width: 47%; margin-left: 20px !important;float:left;border-radius: 25px;"> 3742 <div class="searchBox_innner"> 3743 <style> 3744 .my-search-icon, .my-search-icon:hover, .my-search-icon:focus { 3745 background-image: url(/files/images/plc/images/search-icon.svg); 3746 background-repeat: no-repeat; 3747 background-color: transparent; 3748 background-position: center; 3749 outline: none; 3750 } 3751 </style> 3752 <form method="get" id="searchForm" onsubmit="return tolower('#searchForm');" action="/Default.aspx"> 3753 <input type="hidden" name="ID" value="@searchPageId"> 3754 <table style="width: 100%;"> 3755 <tr> 3756 <td style="width: 10%;"> 3757 <button type="submit" id="submitSearch" class="my-search-icon"> 3758 <i class="fa fa-search"></i> 3759 </button> 3760 </td> 3761 <td style="width: 90%;"> 3762 <input type="text" class="form-control" id="search" name="searchsuggest" tabindex="1" placeholder="@searchplaceholder" style="width: 100%;" autocomplete="off"> 3763 <ul class="searchSuggestUl" id="searchSuggest"></ul> 3764 </td> 3765 </tr> 3766 </table> 3767 </form> 3768 </div> 3769 </div> 3770 } 3771 @if(Pageview.Device.ToString().ToUpper() == "MOBILE") 3772 { 3773 <!-- MODALS --> 3774 <style> 3775 input[type=search] { 3776 width: 300px; 3777 box-sizing: border-box; 3778 border: 2px solid #ccc; 3779 border-radius: 4px; 3780 font-size: 16px; 3781 background-color: white; 3782 background-image: url(/files/images/plc/images/search-icon.svg); 3783 background-position: 6px 4px; 3784 background-repeat: no-repeat; 3785 padding: 12px 20px 12px 40px; 3786 -webkit-transition: width 0.4s ease-in-out; 3787 transition: width 0.4s ease-in-out; 3788 } 3789 </style> 3790 3791 3792 <script> 3793 function removeSearchDiv() 3794 { 3795 $('#search-mobile-a').click(); 3796 } 3797 3798 function clearSearchText(){ 3799 $('#search').val(''); 3800 return false; 3801 } 3802 </script> 3803 } 3804 </div> 3805 3806 <div style="" id="mainMenu" class="top-navi"> 3807 @{ 3808 var menuSelect = ""; 3809 switch (Pageview.Device.ToString().ToUpper()) 3810 { 3811 case "MOBILE" : 3812 @RenderNavigation(new 3813 { 3814 startlevel = "1", 3815 endlevel = "4", 3816 template = "LiCleanBootstrapDropdown_for_Mobile.xslt", 3817 expandmode = "all" 3818 }); 3819 break; 3820 case "TABLET" : 3821 @RenderNavigation(new 3822 { 3823 startlevel = "1", 3824 endlevel = "4", 3825 template = "LiCleanBootstrapDropdown_for_Tablet.xslt", 3826 expandmode = "all" 3827 }); 3828 <script> 3829 $(document).ready(function(){ 3830 TabletNavigationMenuHandler(); 3831 $( window ).on( "orientationchange", function( event ) { 3832 if('@GetString("DWPageName")' == 'Shopping Cart') { 3833 //prevention order process crush, doesn't reload 3834 } else if('@GetInteger("DWPageID")' == '67') { 3835 //prevention order process crush, doesn't reload 3836 } else { 3837 location.reload(); 3838 } 3839 TabletNavigationMenuHandler(); 3840 }); 3841 3842 //prevention display:none when second time click on burger menu 3843 $('.showhide').click(function(){ 3844 if (window.matchMedia('(max-width: 768px)').matches) { 3845 $('.navigationSafri').find('.dropdown-column').attr('style','display: block'); 3846 $('.M2').find('.dropdown').attr('style','display: block'); 3847 $('.dropdown-column').attr('style','text-indent: -5px !important'); 3848 } else { 3849 //nothing doing for landscape view 3850 } 3851 }); 3852 }); 3853 function TabletNavigationMenuHandler(){ 3854 if (window.matchMedia('(max-width: 768px)').matches) { 3855 $('.showhide').find('.title').attr('style','display: block'); 3856 $('.showhide').find('.icon').attr('style','display: block'); 3857 $('.M1.dropdown-menu').attr('style','margin-top: 0px !important'); 3858 $('.dropdown-column').attr('style','text-indent: -5px !important'); 3859 } else { 3860 $('.showhide').click(); 3861 $('.showhide').find('.title').attr('style','display: none'); 3862 $('.showhide').find('.icon').attr('style','display: none'); 3863 $('.showhide').attr('style','display: none'); 3864 } 3865 } 3866 $('.m-col ul li a').on('click touchend', function(e) { 3867 var el = $(this); 3868 var link = el.attr('href'); 3869 3870 if(link.indexOf('/') != -1 && !window.matchMedia('(max-width: 768px)').matches) { 3871 window.location = link; 3872 } 3873 }); 3874 </script> 3875 break; 3876 default : 3877 @RenderNavigation(new 3878 { 3879 startlevel = "1", 3880 endlevel = "4", 3881 template = "LiCleanBootstrapDropdown.xslt", 3882 expandmode = "all" 3883 }); 3884 break; 3885 } 3886 } 3887 </div> 3888 <div> 3889 @if(Pageview.Device.ToString().ToUpper() == "TABLET"){ 3890 <script> 3891 $(document).ready(function(){ 3892 $(".jetmenu").jetmenu(); 3893 }); 3894 </script> 3895 } 3896 @if(Pageview.Device.ToString().ToUpper() == "MOBILE") 3897 { 3898 <script> 3899 $(document).ready(function(){ 3900 $(".jetmenu").jetmenu(); 3901 }); 3902 </script> 3903 <style> 3904 @@media (max-width: 375px) { 3905 .btn-sale { 3906 position: inherit !important; 3907 top: auto !important; 3908 } 3909 } 3910 @@media (max-width: 480px) { 3911 .btn-sale { 3912 position: inherit !important; 3913 top: auto !important; 3914 } 3915 } 3916 @@media (max-width: 600px) { 3917 .btn-sale { 3918 position: inherit !important; 3919 top: auto !important; 3920 } 3921 } 3922 @@media (max-width: 768px) { 3923 .btn-sale { 3924 position: inherit !important; 3925 top: auto !important; 3926 } 3927 } 3928 @@media screen and (max-width: 700px) and (min-width: 600px) and (max-height: 400px) { 3929 .search-mobile { 3930 padding-top: 20px; 3931 } 3932 3933 .btn-sale-mobile { 3934 padding-top: 20px; 3935 } 3936 } 3937 .search-mobile { 3938 float: right; 3939 } 3940 .search-mobile > a > img { 3941 width: 20px; 3942 } 3943 .btn-sale-mobile { 3944 float: right; 3945 } 3946 .btn-sale-mobile > a > img { 3947 width: 80px; 3948 margin-top: -6px; 3949 } 3950 </style> 3951 <div class="btn-sale-mobile" style="display: none;"> 3952 <a href="Default.aspx?ID=@saleid&productclassic=true"> 3953 <img src="/Files/Templates/Designs/PLC/assets/images/btn_sale.png" alt="button image" title="Sale"> 3954 </a> 3955 </div> 3956 <div class="search-mobile"> 3957 <a href="#" id="search-mobile-a" data-toggle="modal" data-target="#searchMobile"> 3958 <img src="/Files/Templates/Designs/PLC/assets/images/icon_Search.svg" alt="Search" title="Search" style="margin-top: -3px;"> 3959 </a> 3960 </div> 3961 } 3962 </div> 3963 @if(Pageview.Device.ToString().ToUpper() != "MOBILE") 3964 { 3965 <div class="btn-sale" style="display: none;"> 3966 <a href="Default.aspx?ID=@saleid&productclassic=true"> 3967 <img src="/Files/Templates/Designs/PLC/assets/images/btn_sale.png" alt="button image" title="Sale"> 3968 </a> 3969 </div> 3970 } 3971 </div> 3972 </div> 3973 </div> 3974 </header> 3975 @if (Pageview.Device.ToString().ToUpper() == "MOBILE") 3976 { 3977 <div class="clearfix mbl_buttompadding"></div> 3978 } 3979 <div class="content-wrapper grid-full" id="mainpg"> 3980 <div onclick="topFunction()" id="myBtn" title="Go to top"></div> 3981 3982 <style> 3983 @@media handheld, only screen and (max-width: 680px){ 3984 .content-wrapper{top:110px;position:relative;} 3985 } 3986 3987 @@media screen and (max-width: 700px) and (min-width: 350px) and (max-height: 700px) { 3988 .mblRemoveTop { 3989 top : 0px !important; 3990 } 3991 } 3992 @@media (max-width: 768px) { 3993 hr.hr3.hide-on-screen { 3994 display:none; 3995 } 3996 hr.breadcrumbBar { 3997 display:none; 3998 } 3999 } 4000 @@media screen and (max-width: 800px) and (min-width: 700px) and (max-height: 1030px) { 4001 .Noti_Remove{ 4002 margin-top: 40px !important; 4003 } 4004 .whenNotiMainPg { 4005 margin-top: 40px !important; 4006 } 4007 } 4008 </style> 4009 <script> 4010 $(document).ready(function(){ 4011 $('.top').tipso({ 4012 position: 'top', 4013 background: '#000', 4014 useTitle: false, 4015 width: '', 4016 size: 'tiny', 4017 maxWidth: 250 4018 }); 4019 }); 4020 </script> 4021 @GetValue("Title(Full width page)") 4022 @GetValue("Description(Use this page for full width pages with no left navigation.)") 4023 @using System.Globalization 4024 @{ 4025 TextInfo textInfo = new CultureInfo("en-US",false).TextInfo; 4026 string siteurl = GetGlobalValue("Global:Request.Url").ToString(); 4027 var firstgroup =System.Web.HttpContext.Current.Request.Params["firstgroup"]; 4028 var secondgroup = System.Web.HttpContext.Current.Request.Params["secondgroup"]; 4029 var thirdgroup = System.Web.HttpContext.Current.Request.Params["thirdgroup"]; 4030 4031 var threegroups =false; 4032 var twogroups = false; 4033 var onegroup = false; 4034 4035 if (!string.IsNullOrWhiteSpace(firstgroup) && !string.IsNullOrWhiteSpace(secondgroup) && !string.IsNullOrWhiteSpace(thirdgroup)) 4036 { 4037 threegroups = true; 4038 } 4039 else if(!string.IsNullOrWhiteSpace(firstgroup) && !string.IsNullOrWhiteSpace(secondgroup)){ 4040 twogroups = true; 4041 } 4042 else{ 4043 onegroup = true; 4044 } 4045 var pageid = GetString("DwTopPageID"); 4046 } 4047 4048 <div class="content-wrapper grid-full"> 4049 <!--<div class="separate-banner" style="min-height:67px;"> 4050 <div class="dwcontent" id="advcontent" title="ADV area"></div> 4051 </div>--> 4052 4053 <script> 4054 window.DY = window.DY || {}; 4055 DY.recommendationContext = { type : "OTHER" , data : [ "@GetString("DwPageName_1").Trim()" ]}; 4056 </script> 4057 4058 <div class="grid"> 4059 @if(GetBoolean("Item.Page.LayoutShowBreadcrumb")){ 4060 string greaterThan = "<li>></li>"; 4061 <hr class="hr3 hide-on-screen"> 4062 <div class="breadcrumb col-1-2" id="noprint"> 4063 <ul class="dw-breadcrumb" id="breadcrumb"> 4064 @if(!string.IsNullOrWhiteSpace(firstgroup)){ 4065 <li><a href="default.aspx?ID=@(pageid)&firstgroup=@firstgroup">@textInfo.ToTitleCase(firstgroup.Replace("-a-","&")) </a>@if(threegroups || twogroups){@greaterThan}</li> 4066 } 4067 @if(!string.IsNullOrWhiteSpace(secondgroup)){ 4068 <li><a href="default.aspx?ID=@(pageid)&firstgroup=@firstgroup&secondgroup=@secondgroup">@textInfo.ToTitleCase(secondgroup.Replace("-a-","&")) </a>@if(threegroups){@greaterThan}</li> 4069 } 4070 @if(!string.IsNullOrWhiteSpace(thirdgroup)){ 4071 <li><a href="default.aspx?ID=@(pageid)&firstgroup=@firstgroup&secondgroup=@secondgroup&thirdgroup=@thirdgroup">@textInfo.ToTitleCase(thirdgroup.Replace("-a-","&")) </a></li> 4072 } 4073 </ul> 4074 </div> 4075 4076 <!--<div class="inner-top-contact col-1-3" id="noprint"> 4077 <span class="bold">Need help?</span><br> 4078 <a href="#" onclick="showLiveChatBox();">Chat with us live</a> or call us at <span class="bold">@GetString("Item.Area.CallUs")</span> 4079 </div>--> 4080 4081 <hr class="breadcrumbBar"> 4082 } 4083 else{ 4084 <hr class="hr3 hide-on-screen"> 4085 <div class="col-2-3" id="noprint"> 4086 @*<h1 class="inner-title center">@GetGlobalValue("Global:Page.Top.Name")</h1>*@ 4087 </div> 4088 @*<div class="inner-top-contact col-1-3"> 4089 <span class="bold">Need help?</span><br> 4090 <a href="#">Chat with us live</a> or call us at <span class="bold">1800 738 3663</span> 4091 </div>*@ 4092 4093 <hr class="breadcrumbBar"> 4094 } 4095 @if(!GetBoolean("Item.Page.LayoutHideLeftMenu")) { 4096 <div class="col-md-3 col-sm-3 col-3-12"> 4097 <div class="widget"> 4098 <div class="sidenavi-title col-1-1"> 4099 @GetGlobalValue("Global:Page.Top.Name") 4100 </div> 4101 @GetValue("DwNavigation(leftnavigation)") 4102 </div> 4103 <p>&nbsp;</p> 4104 </div> 4105 } 4106 4107 @{ 4108 var attributeValue = "col-md-9 col-sm-12 col-xs-12"; 4109 4110 if(GetBoolean("Item.Page.LayoutHideLeftMenu")) { 4111 attributeValue = "grid"; 4112 } 4113 } 4114 4115 <div class="@attributeValue"> 4116 <div class="grid" id="maincontent">@GetValue("DwContent(maincontent)")</div> 4117 </div> 4118 4119 <div class="@attributeValue"> 4120 <div class="grid" id="relatedproducts">@GetValue("DwContent(relatedproducts)")</div> 4121 </div> 4122 4123 @*<div align="right" class="col-1-1"> 4124 <a onclick="$('html, body').animate({ scrollTop: 0 }, 'fast');" href="javascript:void(0)" class="btn-arrow"><i class="fa fa-chevron-circle-up"></i> Top</a> 4125 </div>*@ 4126 </div> 4127 </div> 4128 <script src="/Files/Templates/Designs/PLC/js/jquery.bxslider.js"></script> 4129 <script> 4130 $(document).ready(function(){ 4131 $('.bxslider-bestseller').bxSlider({ 4132 minSlides: 1, 4133 maxSlides: 5, 4134 slideWidth: 180, 4135 slideMargin: 25, 4136 auto: false 4137 }); 4138 4139 $('.bxslider-featuredbrand').bxSlider({ 4140 pause: 2500, 4141 minSlides: 3, 4142 maxSlides: 6, 4143 slideWidth: 167, 4144 slideMargin: 0 4145 }); 4146 }); 4147 $(document).ready(function(){ 4148 $(".category-title").click(function(){ 4149 $(".category-box").slideToggle(); 4150 $('.category-title').toggleClass('active'); 4151 },function(){ 4152 $(".category-box").slideToggle(); 4153 $('.category-title').toggleClass('active'); 4154 }) 4155 }); 4156 function showLiveChatBox() 4157 { 4158 $zopim(function() { 4159 $zopim.livechat.window.show(); 4160 }); 4161 } 4162 </script> 4163 </div> 4164 4165 <footer class="grid-full" id="noprint"> 4166 <div class="grid"> 4167 <div class="footer1"> 4168 <div class="col-1-2 tab-col-1-2 mobile-col-1-1"> 4169 <div class="col-1-2 tab-col-1-1 mobile-col-1-1"> 4170 <ul class="footer_list"> 4171 <li class="title">@Translate("Company")</li> 4172 @GetValue("DwNavigation(Brand)") 4173 </ul> 4174 4175 <br> 4176 <ul class="footer_list"> 4177 <li class="title">@Translate("Shopping")</li> 4178 @GetValue("DwNavigation(Shopping)") 4179 </ul> 4180 </div> 4181 <div class="col-1-2 tab-col-1-1 mobile-col-1-1"> 4182 <ul class="footer_list"> 4183 <li class="title">@Translate("Our Services")</li> 4184 @GetValue("DwNavigation(Services)") 4185 </ul> 4186 </div> 4187 </div> 4188 <div class="col-1-2 tab-col-1-2 mobile-col-1-1"> 4189 <div class="col-1-2 tab-col-1-1 mobile-col-1-1"> 4190 <ul class="footer_list"> 4191 <li class="title">@Translate("Members' Lounge")</li> 4192 @GetValue("DwNavigation(Members)") 4193 </ul> 4194 <br> 4195 <ul class="footer_list"> 4196 <li class="title">@Translate("Policies")</li> 4197 @GetValue("DwNavigation(Policies)") 4198 </ul> 4199 </div> 4200 <div class="col-1-2 mobile-col-1-1"> 4201 <ul class="footer_list"> 4202 <li class="title">@Translate("Learning Centre")</li> 4203 @GetValue("DwNavigation(Resources)") 4204 </ul> 4205 <br> 4206 <ul class="footer_list"> 4207 @GetValue("DwNavigation(Locations)") 4208 </ul> 4209 <br> 4210 <ul class="footer_list"> 4211 <li class="title">@Translate("Customer Care")</li> 4212 @GetValue("DwNavigation(Care)") 4213 </ul> 4214 </div> 4215 </div> 4216 </div> 4217 <div class="footer2"> 4218 <div class="col-1-2" style="display:none;"> 4219 <div id="likebox-wrapper"> 4220 </div> 4221 </div> 4222 <div class="col-1-2" style="position:relative;"> 4223 @{ 4224 if(GetBoolean("Item.Area.News_Letter_") && !Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName"))) 4225 { 4226 <div class="signup-box"> 4227 <h2>@Translate("Subscribe to our Newsletter!")</h2> 4228 4229 <div class="signupBox"> 4230 <div class="signupBox_innner"> 4231 <form action='/Default.aspx?ID=@GetPageIdByNavigationTag("NewLetterSignup")' method="post"> 4232 <input name="UserManagement_Form_Email" type="text" id="UserManagement_Form_Email" placeholder='@Translate("Enter your email address")'> 4233 <input name="submit" type="image" src="/Files/Templates/Designs/PLC/assets/images/icon_go.png" id="submit"> 4234 </form> 4235 </div> 4236 </div> 4237 </div> 4238 } 4239 } 4240 <div class="question-box"> 4241 <h2>@GetString("Item.Area.Question_Box_Label")</h2> 4242 @GetString("Item.Area.Question_Box_Description") 4243 </div> 4244 4245 <div class="social-box"> 4246 <p class="bold">@Translate("Connect with us")</p> 4247 <ul> 4248 @{ 4249 string FB=GetString("Item.Area.Facebook_Link"); 4250 string Youtube=GetString("Item.Area.YouTube_Link"); 4251 string twitter=GetString("Item.Area.Twitter_Link"); 4252 string instagram=GetString("Item.Area.Instagram_Link"); 4253 string line=GetString("Item.Area.Line_Link"); 4254 } 4255 <li><a href="@FB" target="_blank"><img src="/Files/Templates/Designs/PLC/assets/images/icon_fb.png" alt="icon" title="Facebook"></a></li> 4256 <li><a href="@Youtube" target="_blank"><img src="/Files/Templates/Designs/PLC/assets/images/icon_yt.png" alt="icon" title="Youtube"></a></li> 4257 <li><a href="@instagram" target="_blank"><img src="/Files/Templates/Designs/PLC/assets/images/ig_icon.png" alt="icon" title="Instagram"></a></li> 4258 <li><a href="@line" target="_blank"><img src="/Files/Templates/Designs/PLC/assets/images/line_icon.png" alt="icon" title="Line"></a></li> 4259 </ul> 4260 </div> 4261 </div> 4262 <div class="col-1-2" style="padding:10px 20px 20px 20px;"> 4263 <p>@Translate("This site is best viewed in Chrome v.66, Safari v.11, Microsoft Edge v.42 and above for desktop and mobile. This site is not yet fully compatible with tablet devices.")</p> 4264 </div> 4265 </div> 4266 </div> 4267 <div class="grid-full footer-bottom"> 4268 <div class="grid"> 4269 <p class="footer-bottom1"><a href="javascript:void(0);" style="cursor: default;">@Translate("Asia's") <span style="font-style: italic;">@Translate("preferred")</span> @Translate("Pet Store!")</a></p> 4270 <p class="footer-bottom2">@GetString("Item.Area.Footer")<a href="petlovercentre.com">.</a></p> 4271 4272 </div> 4273 </div> 4274 </footer> 4275 4276 @if (Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName"))) 4277 { 4278 int i=Convert.ToInt32(GetGlobalValue("Global:Extranet.UserID")); 4279 DateTime today=DateTime.Now; 4280 DateTime expDate = new DateTime(); 4281 DateTime dobDate = new DateTime(); 4282 var VIPCard=""; 4283 4284 Dynamicweb.Security.UserManagement.User u = Dynamicweb.Security.UserManagement.User.GetUserByID(i); 4285 4286 foreach (CustomFieldValue val in u.CustomFieldValues) 4287 { 4288 CustomField field = val.CustomField; 4289 string fieldName=field.Name; 4290 if(fieldName=="DOB") 4291 { 4292 dobDate=(DateTime)val.Value; 4293 } 4294 if(fieldName=="ExpryDate") 4295 { 4296 expDate=(DateTime)val.Value; 4297 } 4298 if(fieldName=="VIP Card No") 4299 { 4300 VIPCard=(string)val.Value; 4301 } 4302 } 4303 if( !string.IsNullOrWhiteSpace(VIPCard)) 4304 { 4305 if(expDate.Date.AddYears(-1) < today.Date) 4306 { 4307 <text> 4308 <style> 4309 a:hover{ 4310 border-bottom: unset !Important; 4311 } 4312 </style> 4313 <script type="text/javascript"> 4314 $(document).ready(function () { 4315 var alerted = getCookie("IsVIPExpire"); 4316 console.log(alerted); 4317 if (alerted == 'true') { 4318 expiredVIP(); 4319 document.cookie = "IsVIPExpire=IsShown; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 4320 } 4321 }); 4322 4323 function expiredVIP() 4324 { 4325 var mobileDevice2 = '@Pageview.Device.ToString().ToUpper()'; 4326 console.log(mobileDevice2); 4327 if(mobileDevice2 == "MOBILE") 4328 { 4329 var customCSS = '<style>'; 4330 customCSS += '.ui-dialog.ui-widget.ui-widget-content.ui-corner-all.ui-draggable.ui-dialog-buttons{ top: 375px !important; width: 100% !important; z-index: 999999 !important; left: unset !important;}'; 4331 customCSS += '.ui-icon{ margin-top: .3em !important; float: right !important;} .ui-dialog-titlebar-close{ border: none !important; }'; 4332 customCSS += '.ui-dialog-titlebar.ui-widget-header.ui-corner-all.ui-helper-clearfix{ border: none; background: no-repeat; }'; 4333 customCSS += '.ui-widget-content{ border: none; }'; 4334 customCSS += '</style>'; 4335 var messageBody = '<div style="text-align: right;"><a href="javascript:void(0);CloseFunction();"><img src="/Files/Images/plc/images/remove_icon.svg" style="width:15px;"></a></div>'; 4336 messageBody += '<style>.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {display:none !important;} .ui-dialog-titlebar.ui-widget-header.ui-corner-all.ui-helper-clearfix {display:none !important;}</style>'; 4337 messageBody += '<div style=" font-size: 18px; text-align: center; color: #ec1d23; font-weight: 700;">@Translate("You VIP membership has expired")</div>'; 4338 messageBody += '<div style=" font-size: 18px; text-align: center; padding-top: 19px;"><span>@Translate("Renew your VIP membership to enjoy exclusive")</span> <span>@Translate("Members&#39; Pricings, Birthday Offers and earn Loyalty")</span> <span>@Translate("Points to redeem for vouchers")!</span></div>'; 4339 messageBody += '<a style="padding: 10px 20px 10px 20px; border-radius: 20px; font-size: 18px;"></div>'; 4340 var htmlMessgarPara = '<div class="popup" style="text-align: center; margin-top: -15px;padding-left:5px;">' + customCSS + messageBody + '</div>' 4341 }else{ 4342 var customCSS = '<style>'; 4343 customCSS += '.ui-dialog.ui-widget.ui-widget-content.ui-corner-all.ui-draggable.ui-dialog-buttons{ top: 375px !important; width: 450px !important; z-index: 999999 !important;}'; 4344 customCSS += '.ui-icon{ margin-top: .3em !important; float: right !important;} .ui-dialog-titlebar-close{ border: none !important; }'; 4345 customCSS += '.ui-dialog-titlebar.ui-widget-header.ui-corner-all.ui-helper-clearfix{ border: none; background: no-repeat; }'; 4346 customCSS += '.ui-widget-content{ border: none; }'; 4347 customCSS += '</style>'; 4348 var messageBody = '<div style="text-align: right;"><a href="javascript:void(0);CloseFunction();"><img src="/Files/Images/plc/images/remove_icon.svg" style="width:15px;"></a></div>'; 4349 messageBody += '<style>.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {display:none !important;} .ui-dialog-titlebar.ui-widget-header.ui-corner-all.ui-helper-clearfix {display:none !important;}</style>'; 4350 messageBody += '<div style=" font-size: 18px; text-align: center; color: #ec1d23; font-weight: 700;">@Translate("You VIP membership has expired")</div>'; 4351 messageBody += '<div style=" font-size: 18px; text-align: center; padding-top: 19px;"><span>@Translate("Renew your VIP membership to enjoy exclusive")</span><br><span>@Translate("Members&#39; Pricings, Birthday Offers and earn Loyalty")</span><br><span>@Translate("Points to redeem for vouchers")!</span></div>'; 4352 messageBody += '<a style="padding: 10px 20px 10px 20px; border-radius: 20px; font-size: 18px;"></div>'; 4353 var htmlMessgarPara = '<div class="popup" style="text-align: center; margin-top: -15px;padding-left:5px;">' + customCSS + messageBody + '</div>' 4354 } 4355 document.cookie = "IsVIPExpire=False; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 4356 ShowVIPExpiredMessage(htmlMessgarPara); 4357 } 4358 4359 function CloseFunction(){ 4360 $('.ui-dialog-buttonset').find("button").click(); 4361 } 4362 4363 function ClearPopup() 4364 { 4365 CloseFunction(); 4366 window.location.href = "https://vip.petloverscentre.com/en_SG/renew-card"; 4367 } 4368 4369 function ShowVIPExpiredMessage(messgarPara) { 4370 var NewDialog; 4371 NewDialog = $('<div class="popup" title="Message" style="text-align:center; padding-top:2em;">' + messgarPara + '</div>'); 4372 NewDialog.dialog({ 4373 resizable: false, 4374 modal: true, 4375 open: function(event, ui) { 4376 $(".ui-dialog-titlebar-close").hide(); 4377 }, 4378 show: 'clip', 4379 buttons: { 4380 "Ok": function() { 4381 //$(this).dialog("close"); 4382 $(this).dialog('destroy').remove(); 4383 } 4384 } 4385 }); 4386 } 4387 </script> 4388 </text> 4389 } 4390 } 4391 } 4392 4393 4394 <script src="/Files/Templates/Designs/PLC/js/dropdown.js" type="text/javascript"></script> 4395 <script type="text/javascript"> 4396 $(function() { 4397 var dd1 = new DropDown1( $('.dd1') ); 4398 var dd2 = new DropDown2( $('.dd2') ); 4399 var dd3 = new DropDown2( $('.dd3') ); 4400 $(document).click(function() { 4401 $('.wrapper-dropdown-3').removeClass('active'); 4402 }); 4403 4404 }); 4405 4406 function queryStringLinks() { 4407 var mainLinks = document.getElementsByName("main"); 4408 for (var i = 0; i < mainLinks.length; i++) { 4409 if (mainLinks[i].innerHTML == "Brand" || mainLinks[i].innerHTML == "Burb" || mainLinks[i].innerHTML == "applpaws") { } 4410 else if (mainLinks[i].innerHTML == "Home") { mainLinks[i].href = "@globalurl"; } 4411 else if (mainLinks[i].innerHTML != "Fish") { 4412 mainLinks[i].href += "?firstgroup=" + (mainLinks[i].innerHTML.substring(0, mainLinks[i].innerHTML.length - 1).toLowerCase()); 4413 } 4414 else { 4415 mainLinks[i].href += "?firstgroup=" + (mainLinks[i].innerHTML).toLowerCase(); 4416 } 4417 } 4418 var mainmenu = document.getElementsByName("mainmenu"); 4419 for (var i = 0; i < mainmenu.length; i++) { 4420 var firstLinks = mainmenu[i].querySelectorAll('[name=first]'); 4421 var thirdMenu = mainmenu[i].querySelectorAll('[name=Third]'); 4422 var secondLinks = mainmenu[i].querySelectorAll('[name=second]'); 4423 var nothirdLinks = 0; 4424 if (mainmenu[i].getAttribute("id") == "Small Pets") { 4425 mainmenu[i].setAttribute("id", "SmallPets"); 4426 } 4427 var firstLinkHTML = ""; 4428 var mainLinks = document.getElementsByName("main"); 4429 4430 for (var k = 0; k < firstLinks.length; k++) { 4431 if (k == 0) { 4432 if (firstLinks[k].innerHTML != "Fish") { 4433 if (firstLinks[k].innerHTML != "Brand") { 4434 firstLinkHTML = firstLinks[k].innerHTML.substring(0, firstLinks[k].innerHTML.length - 1); 4435 firstLinks[k].href += "?firstgroup=" + (firstLinkHTML).toLowerCase(); 4436 } 4437 else { 4438 firstLinks[k].href += "/" + (firstLinkHTML).toLowerCase(); 4439 } 4440 } 4441 else { 4442 firstLinkHTML = firstLinks[k].innerHTML; 4443 firstLinks[k].href += "?firstgroup=" + (firstLinkHTML).toLowerCase(); 4444 } 4445 } 4446 else { 4447 firstLinks[k].href += "/" + (firstLinkHTML).toLowerCase(); 4448 } 4449 } 4450 4451 for (var j = 0; j < secondLinks.length; j++) { 4452 if (firstLinks[0].href.indexOf("brand") > -1) { 4453 4454 } 4455 else { 4456 secondLinks[j].href = firstLinks[0].href + "&secondgroup=" + (secondLinks[j].innerHTML.replace("&amp;", "-a-")).toLowerCase(); 4457 } 4458 } 4459 4460 for (var j = 0; j < secondLinks.length; j++) { 4461 if (secondLinks[j].parentNode.getElementsByTagName('ul').length == 0) { 4462 nothirdLinks++; 4463 } 4464 if (thirdMenu[j] != null) { 4465 var thirdLinks = thirdMenu[j].querySelectorAll("a"); 4466 for (var l = 0; l < thirdLinks.length; l++) { 4467 4468 thirdLinks[l].href = secondLinks[j + nothirdLinks].href + "&thirdgroup=" + (thirdLinks[l].innerHTML.replace("&amp;", "-a-")).toLowerCase(); 4469 4470 } 4471 } 4472 } 4473 } 4474 } 4475 4476 $(document).ready(function () { 4477 $('#tableData').paging({ limit: 50 }); 4478 }); 4479 4480 $(document).ready(function () { 4481 $(".dropdown").hover( 4482 function () { 4483 $('.dropdown-menu', this).fadeIn("fast"); 4484 }, 4485 function () { 4486 $('.dropdown-menu', this).fadeOut("fast"); 4487 }); 4488 }); 4489 4490 function RefreshImage(valImageId) { 4491 var objImage = document.images[valImageId]; 4492 if (objImage == undefined) { return; } 4493 var now = new Date(); objImage.src = objImage.src.split('?')[0] + '?x=' + now.toUTCString(); 4494 } 4495 4496 $(document).ready(function () { 4497 $("#btnSubmit").click( 4498 function () { 4499 $.getJSON("/inc/captcha.asp?validateCaptchaCode=" + $("#captchacode").val() + "&format=json&jsoncallback=?", function (data) { 4500 if (data.status == "1") { $("#moreinfo-form").submit(); result = true; } 4501 else { 4502 if (data.session == "0") RefreshImage("imgCaptcha"); 4503 alert('@Translate("Enter captcha code correctly please")'); 4504 $("#captchacode").focus(); result = false; 4505 } 4506 }); 4507 }); 4508 }); 4509 4510 @*<!--------------------------------------------------------------Search --------------------------------------------------------------->*@ 4511 function tolower(id) { 4512 document.getElementById('search').value = (document.getElementById('search').value).toLowerCase(); 4513 } 4514 @*<!----------------------------------------------------------------------Search End------------------------------------------------------------>*@ 4515 </script> 4516 4517 <style> 4518 #AddtoItem { 4519 position: fixed; 4520 top: 0%; 4521 width: 260px; 4522 background: #fff; 4523 height: 420px; 4524 -webkit-box-shadow: 1px 1px 6px 0px rgba(50, 50, 50, 0.75); 4525 -moz-box-shadow: 1px 1px 6px 0px rgba(50, 50, 50, 0.75); 4526 box-shadow: 1px 1px 6px 0px rgba(50, 50, 50, 0.75); 4527 overflow-y: hidden; 4528 overflow-x: hidden; 4529 margin: 10px; 4530 right: 20px; 4531 font-weight: 700; 4532 } 4533 4534 #AddtoItem .modal-backdrop.in { 4535 opacity: 0; 4536 } 4537 4538 img#show { 4539 border: 1px solid #bbb; 4540 width: 100px; 4541 height: auto; 4542 margin: 0px auto; 4543 display: block; 4544 } 4545 4546 #AddtoItem h4 { 4547 margin: 10px; 4548 } 4549 4550 #AddtoItem hr { 4551 width: 90%; 4552 display: block; 4553 margin: 0px auto; 4554 } 4555 4556 #showbox .op { 4557 color: #c8c8c8; 4558 text-decoration: line-through; 4559 float: left; 4560 } 4561 4562 #showbox .np { 4563 float: right; 4564 } 4565 4566 #showbox .save-price { 4567 width: 100%; 4568 font-size: 12px; 4569 float: left; 4570 margin: 0; 4571 } 4572 .M2 > li > a { 4573 margin-left: 0px !important; 4574 } 4575 </style> 4576 4577 <div class="modal fade" id="AddtoItem"> 4578 <h3 style="text-align: center;">@Translate("Added to Cart")</h3> 4579 <table id="showbox"> 4580 </table> 4581 </div><!-- /.modal --> 4582 4583 <div id="clientLoginForm" style="display:none;padding: 0px 5px;"> 4584 <h3>@Translate("Login to demo site")</h3> 4585 <p><label>@Translate("Password"):</label>&nbsp;&nbsp;<input type="text" name="clientLoginPassword" id="clientLoginPassword" style="width:90%;"></p> 4586 <input type="button" onclick="checkPassword()" value="Login"><br> <br> 4587 </div> 4588 4589 <div id="addingToCart" style="display:none; background: none;"> 4590 <h3><img src="/Files/Templates/Designs/PLC/fancybox/fancybox_loading.gif"></h3> 4591 </div> 4592 4593 </body> 4594 </html> 4595 <script> 4596 $(".sidenavi-title").click(function () { 4597 $(".sidenavi").slideToggle(); 4598 $('.sidenavi-title').toggleClass('active'); 4599 }, function () { 4600 $(".sidenavi").slideToggle(); 4601 $('.sidenavi-title').toggleClass('active'); 4602 }); 4603 @if(Pageview.Device.ToString().ToUpper() == "MOBILE" || Pageview.Device.ToString().ToUpper() == "TABLET") 4604 { 4605 <text> 4606 $(document).ready(function () { 4607 $(".category-title").click(); 4608 }); 4609 $("#megaIdPetId").on('click touchend', function (e) { 4610 window.location.href = "https://blog.petloverscentre.com/"; 4611 }); 4612 </text> 4613 } 4614 4615 @if(Pageview.Device.ToString().ToUpper() == "MOBILE" || Pageview.Device.ToString().ToUpper() == "TABLET") 4616 { 4617 <text> 4618 $(document).ready(function () { 4619 $(".sidenavi-title").click(); 4620 $(".category-title").addClass('active'); 4621 $("#FacetFilters").hide(); 4622 4623 $(".category-title").click(function () { 4624 if ($("#FacetFilters").css('display') == 'none') { 4625 $(".category-title").attr('style', 'margin-bottom: 0px'); 4626 $(".category-title").removeClass('active'); 4627 $("#FacetFilters").show(); 4628 } else { 4629 $(".category-title").attr('style', 'margin-bottom: 50px'); 4630 $(".category-title").addClass('active'); 4631 $("#FacetFilters").hide(); 4632 } 4633 }); 4634 }); 4635 </text> 4636 } 4637 4638 var baseUrl = "/Default.aspx?ID=@GetPageIdByNavigationTag("SearchSuggest")&q="; 4639 baseUrl = "/Default.aspx?ID=@GetPageIdByNavigationTag("SearchSuggest")&searchsuggest="; 4640 4641 $(document).ready(function () { 4642 $('#search').keyup(function (e) { 4643 if (e.keyCode == 27) { 4644 $('#search').val(''); 4645 } 4646 }); 4647 4648 //start loading icon when enter 4649 $("#search").on('submit', function (e) { 4650 if (e.keyCode == 13) { 4651 setTimeout(function () { $('#submitSearch').click(); }, 3000); 4652 } 4653 }); 4654 //end 4655 4656 $('#search').keyup(function () { 4657 var body = $('body'); 4658 4659 if ($('#search').val().length <= 0) { 4660 body.removeClass('noscroll'); 4661 $('#searchSuggest').html(''); 4662 $('#searchSuggest').hide(); 4663 } 4664 if ($('#search').val().length >= 1) { 4665 var url = baseUrl + $('#search').val().toLowerCase(); 4666 $.ajax({ 4667 url: url, 4668 dataType: "json", 4669 type: 'GET', 4670 success: function (data) { 4671 var productArr = []; 4672 var autoSuggest = '<li class="searchSuggestLi">' + '@Translate("No Product found")' + '</li>' 4673 if (data.length > 0) { 4674 productArr = data; 4675 autoSuggest = ""; 4676 for (var i = 0; i < productArr.length; i++) { 4677 autoSuggest += '<li class="searchSuggestLi" name="' + productArr[i].Name + '" id="' + productArr[i].ID + '"><a href="@HttpContext.Current.Request.Url.GetLeftPart(UriPartial.Authority)' + '/' + '' + productArr[i].ProductLink + '" style="color: #000 !important;">' + productArr[i].Brand + ": " + productArr[i].Name + '</a></li>'; 4678 } 4679 } 4680 body.addClass('noscroll'); 4681 $('#searchSuggest').html(''); 4682 $('#searchSuggest').append(autoSuggest); 4683 $('#searchSuggest').show(); 4684 }, 4685 error: function (jqXHR, textStatus, errorThrown) { 4686 console.log(textStatus + ': ' + errorThrown); 4687 }, 4688 cache: true 4689 }); 4690 } 4691 }); 4692 }); 4693 4694 function searchSuggestData(selectSuggest) 4695 { 4696 var searchName = $('#search').val().toLowerCase(); 4697 selectSuggest = selectSuggest.replace('&amp;','&'); 4698 $('#search').val(''); 4699 $('#search').val(searchName); 4700 $('#search').focus(); 4701 setTimeout(function(){ $('#submitSearch').click(); }, 500); 4702 } 4703 4704 4705 $(document).click(function () { 4706 @* --------- solve for menu item disappear in second time Begin ----------*@ 4707 @if(Pageview.Device.ToString().ToUpper() == "MOBILE") 4708 { 4709 <text> 4710 $("#mainMenu").find(".M1").find(".dropdown").each(function () { 4711 $(this).css('display', 'block'); 4712 }); 4713 </text> 4714 } 4715 @* --------- solve for menu item disappear in second time End ----------*@ 4716 4717 setTimeout(function () { 4718 $('#searchSuggest').hide(); 4719 }, 500); 4720 }); 4721 4722 $(document).scroll(function(){ 4723 $('#searchSuggest').hide(); 4724 }); 4725 4726 //----------------- UI Block functions Begin --------------------- 4727 $(document).ready(function () { 4728 var UI_Unblock = getCookie("UI_Unblock"); 4729 if (UI_Unblock == "True") { 4730 //$.unblockUI(); 4731 } else { 4732 // This is block for go live. 4733 $.blockUI({ message: $('#clientLoginForm') }); 4734 } 4735 4736 var firstTimeVisiting = getCookie("First_Time_Visiting"); 4737 if (firstTimeVisiting == "False") { 4738 //$.unblockUI(); 4739 } else { 4740 showTitle = true; 4741 showTitleCloseBtn = true; 4742 showButton = false; 4743 okReload = false; 4744 var mobileDevice2 = '@Pageview.Device.ToString().ToUpper()'; 4745 if (mobileDevice2 == "TABLET") { 4746 var customCSS = '<style>'; 4747 customCSS += '.ui-dialog.ui-widget.ui-widget-content.ui-corner-all.ui-draggable.ui-dialog-buttons{ top: 80px !important; width: 80% !important; z-index: 999999 !important;}'; 4748 customCSS += '.ui-icon{ margin-top: .3em !important; float: right !important;} .ui-dialog-titlebar-close{ border: none !important; }'; 4749 customCSS += '.ui-dialog-titlebar.ui-widget-header.ui-corner-all.ui-helper-clearfix{ border: none; background: no-repeat; }'; 4750 customCSS += '.ui-widget-content{ border: none; }'; 4751 customCSS += '.ui-dialog .ui-dialog-content{ overflow: unset; }'; 4752 customCSS += '</style>'; 4753 var messageBody = '<p style="font-weight: bold; font-size:18px;">@Translate("New to our Site?")</p>'; 4754 messageBody += '<p style=" font-size:18px; text-align: center; color:#BB3618;">@Translate("Register an online account and enjoy ฿ 100 with your 1")<sup>@Translate("st")</sup> @Translate("purchase with a min ฿ 1000 spend.")</p>'; 4755 messageBody += '<style>th{ padding-right:0.25em; vertical-align:top;border:1px solid #E2E1E9;border-width:0 1px;} </style>'; 4756 messageBody += '<table rules="cols" style="width:100%;"><tr><th><h3 align="center" style="color:#BB3618;">@Translate("VIP Members")</h3></th><th><h3 align="center" style="color: #BB3618;">@Translate("Non VIP Members")</h3></th></tr><tr><th style="width:50%;"><p style="text-align: left;font-size:12px;margin:20px;width:80%;">@Translate("Your activated VIP membership does not automatically translate to an online account. Please register for an online account and link your VIP membership if you have not, to enjoy VIP privileges when you shop online.")</p></th><th style="width:50%;" ><a href="@goToRegistration" style="background-color: #BB3618; border:none;padding: 13px 32px;text-align: center;text-decoration: none;display: inline-block;font-size: 12px;cursor: pointer;width: 80%;color:#fff !important;margin:20px;">@Translate("Register an Online Account")</a></center></th></tr>'; 4757 messageBody += '<th style="width:50%"><a href="@goToRegistration" style="color: green; background-color: #BB3618; border: none;padding: 13px 32px;text-align: center;text-decoration: none;display: inline-block;font-size: 12px; margin:4px 25px;cursor: pointer; width: 80%;color:#fff !important;margin-top:20px;">@Translate("Register and Link VIP Membership")</a></th>'; 4758 messageBody += '<th style="width:50%"> <a href="@goToRegistration" style=" background-color: #ffffff; border: solid; border-width: thin; color: red;color: white;padding: 13px 32px;text-align: center;text-decoration: none;display: inline-block;font-size: 12px;cursor: pointer; width: 80%;margin:20px; ">@Translate("Continue Shopping")</a></th></tr></table>'; 4759 messageBody += '<p><a href="https://customercare.petloverscentre.com/hc/en-us/articles/360000118901-What-do-I-enjoy-with-an-online-account-" target="_blank" style="text-align:center;color:black !important;font-size:11px; margin-top: 20px;"><u>@Translate("Learn more on the benefits of an online account")</u></a></p>'; 4760 var htmlMessgarPara = '<div class="popup" style="text-align: center; margin-top: -15px;padding-left:5px;">' + customCSS + messageBody + '</div>' 4761 ShowMessageGlobalDialog(htmlMessgarPara, showTitle, showTitleCloseBtn, showButton, okReload); 4762 document.cookie = "First_Time_Visiting=False; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 4763 } else { 4764 var mobileDevice1 = '@Pageview.Device.ToString().ToUpper()'; 4765 if (mobileDevice1 == 'MOBILE') { 4766 //$.blockUI({message : $('#clientLoginForm')}); 4767 var customCSS = '<style>'; 4768 customCSS += '.ui-dialog.ui-widget.ui-widget-content.ui-corner-all.ui-draggable.ui-dialog-buttons{ top: 80px !important; width: 100% !important; z-index: 999999 !important;}'; 4769 customCSS += '.ui-icon{ margin-top: .3em !important; float: right !important;} .ui-dialog-titlebar-close{ border: none !important; }'; 4770 customCSS += '.ui-dialog-titlebar.ui-widget-header.ui-corner-all.ui-helper-clearfix{ border: none; background: no-repeat; }'; 4771 customCSS += '.ui-widget-content{ border: none; }'; 4772 customCSS += '.ui-dialog .ui-dialog-content{ overflow: unset; }'; 4773 customCSS += '</style>'; 4774 var messageBody = '<p style="font-weight: bold; font-size:18px;">@Translate("New to our Site?")</p>'; 4775 messageBody += '<p style=" font-size:18px; text-align: center;color:#BB3618;width:90%;margin:15px;">@Translate("Register an online account and enjoy ฿ 100 with your 1")<sup>@Translate("st")</sup> @Translate("purchase with a min ฿ 1000 spend.")</p>'; 4776 messageBody += '<table rules="cols" style="width:100%;"><tr><h3 align="center" style="color: #BB3618;">@Translate("VIP Members")</h3></tr><tr><p style="text-align: left;font-size:12px; margin:30px;with:80%;">@Translate("Your activated VIP membership does not automatically translate to an online account. Please register for an online account and link your VIP membership if you have not, to enjoy VIP privileges when you shop online.")</p></tr>'; 4777 messageBody += '<tr><a href="" style="color: green; background-color: #BB3618; border: none;padding: 13px 32px;text-align: center;text-decoration: none;display: inline-block;font-size: 12px; margin:20px;cursor: pointer; width: 80%;color:#fff !important;">@Translate("Register and Link VIP Membership")</a></tr> <hr style="color:#E2E1E9;">'; 4778 messageBody += '<tr><h3 align="center" style="color: #BB3618;">@Translate("Non VIP Members")</h3></tr>'; 4779 messageBody += '<tr><a href="@goToRegistration" style="background-color: #BB3618; border:none;padding: 13px 32px;text-align: center;text-decoration: none;display: inline-block;font-size: 12px; margin:20px; cursor: pointer; width:80%;color:#fff !important;">@Translate("Register an Online Account")</a></center></tr>'; 4780 messageBody += '<tr><a href="@goToRegistration" style=" background-color: #ffffff; border: solid; border-width: thin; color: red !important;color: white;padding: 13px 32px;text-align: center;text-decoration: none;display: inline-block;font-size: 12px;cursor: pointer; width: 80%;margin:20px;margin-top:0px; ">@Translate("Continue Shopping")</a></tr></table>'; 4781 messageBody += '<p><a href="https://customercare.petloverscentre.com/hc/en-us/articles/360000118901-What-do-I-enjoy-with-an-online-account-" target="_blank" style="text-align:center;color:black !important;font-size:11px; margin-top: 0px;"><u>@Translate("Learn more on the benefits of an online account")</u></a></p>'; 4782 var htmlMessgarPara = '<div class="popup" style="text-align: center; margin-top: -15px;padding-left:5px;">' + customCSS + messageBody + '</div>' 4783 ShowMessageGlobalDialog(htmlMessgarPara, showTitle, showTitleCloseBtn, showButton, okReload); 4784 document.cookie = "First_Time_Visiting=False; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 4785 } else { 4786 var customCSS = '<style>'; 4787 customCSS += '.ui-dialog.ui-widget.ui-widget-content.ui-corner-all.ui-draggable.ui-dialog-buttons{ top: 80px !important; width: 50% !important; z-index: 999999 !important;}'; 4788 customCSS += '.ui-icon{ margin-top: .3em !important; float: right !important;} .ui-dialog-titlebar-close{ border: none !important; }'; 4789 customCSS += '.ui-dialog-titlebar.ui-widget-header.ui-corner-all.ui-helper-clearfix{ border: none; background: no-repeat; }'; 4790 customCSS += '.ui-widget-content{ border: none; }'; 4791 customCSS += '.ui-dialog .ui-dialog-content{ overflow: unset; }'; 4792 customCSS += '</style>'; 4793 var messageBody = '<p style="font-weight: bold; font-size:18px;">@Translate("New to our Site?")</p>'; 4794 messageBody += '<p style=" font-size:18px; text-align: center; color:#BB3618;">@Translate("Register an online account and enjoy ฿ 100 with your 1")<sup>@Translate("st")</sup> @Translate("purchase with a min ฿ 1000 spend.")</p>'; 4795 messageBody += '<style>th{ padding-right:0.25em; vertical-align:top;border:1px solid #E2E1E9;border-width:0 1px;} </style>'; 4796 messageBody += '<table rules="cols" style="width:100%;"><tr><th><h3 align="center" style="color:#BB3618;">@Translate("VIP Members")</h3></th><th><h3 align="center" style="color: #BB3618;">@Translate("Non VIP Members")</h3></th></tr><tr><th style="width:50%;"><p style="text-align: left;font-size:12px;margin:20px;width:80%;">@Translate("Your activated VIP membership does not automatically translate to an online account. Please register for an online account and link your VIP membership if you have not, to enjoy VIP privileges when you shop online.")</p></th><th style="width:50%;" ><a href="@goToRegistration" style="background-color: #BB3618; border:none;padding: 13px 32px;text-align: center;text-decoration: none;display: inline-block;font-size: 12px;cursor: pointer;width: 80%;color:#fff !important;margin:20px;">@Translate("Register an Online Account")</a></center></th></tr>'; 4797 messageBody += '<th style="width:50%"><a href="@goToRegistration" style="color: green; background-color: #BB3618; border: none;padding: 13px 32px;text-align: center;text-decoration: none;display: inline-block;font-size: 12px; margin:4px 25px;cursor: pointer; width: 80%;color:#fff !important;margin-top:20px;">@Translate("Register and Link VIP Membership")</a></th>'; 4798 messageBody += '<th style="width:50%"> <a href="@goToRegistration" style=" background-color: #ffffff; border: solid; border-width: thin; color: red;color: white;padding: 13px 32px;text-align: center;text-decoration: none;display: inline-block;font-size: 12px;cursor: pointer; width: 80%;margin:20px; ">@Translate("Continue Shopping")</a></th></tr></table>'; 4799 messageBody += '<p><a href="https://customercare.petloverscentre.com/hc/en-us/articles/360000118901-What-do-I-enjoy-with-an-online-account-" target="_blank" style="text-align:center;color:black !important;font-size:11px; margin-top: 20px;"><u>@Translate("Learn more on the benefits of an online account")</u></a></p>'; 4800 var htmlMessgarPara = '<div class="popup" style="text-align: center; margin-top: -15px;padding-left:5px;">' + customCSS + messageBody + '</div>' 4801 ShowMessageGlobalDialog(htmlMessgarPara, showTitle, showTitleCloseBtn, showButton, okReload); 4802 document.cookie = "First_Time_Visiting=False; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 4803 } 4804 } 4805 } 4806 }); 4807 4808 function checkPassword() { 4809 console.log("here password"); 4810 $.blockUI(); 4811 var uiLoginResult = ""; 4812 $.ajax({ 4813 url: '@myPlcUrl' + '/Default.aspx?ID=@GetPageIdByNavigationTag("UILogin")&pwd=' + $('#clientLoginPassword').val(), 4814 type: 'GET', 4815 success: function (data) { 4816 console.log(data); 4817 uiLoginResult = data.result == "True"; 4818 console.log(uiLoginResult); 4819 if (uiLoginResult) { 4820 document.cookie = "UI_Unblock=True; expires=Tue, 31 Dec 2035 12:00:00 UTC"; 4821 $.unblockUI(); 4822 } else { 4823 document.cookie = "UI_Unblock=False; expires=Mon, 31 Dec 2020 12:00:00 UTC"; 4824 $.blockUI({ message: $('#clientLoginForm') }); 4825 } 4826 }, 4827 error: function (jqXHR, textStatus, errorThrown) { 4828 console.log(textStatus + ': ' + errorThrown); 4829 $.blockUI({ message: $('#clientLoginForm') }); 4830 }, 4831 cache: true 4832 }); 4833 } 4834 4835 $("#ResendActivateEmail").submit(function (event) { 4836 $.ajax({ 4837 url: '@myPlcUrl' + '/' + '@GetGlobalValue("Global:Area.LongLang")' + '/utilities/activate-email-sending?Email=' + $('#validateEmail').val(), 4838 type: 'GET', 4839 success: function (data) { }, 4840 cache: true 4841 }); 4842 }); 4843 //----------------- UI Block functions End --------------------- 4844 4845 //----------------- Ajax Add To Cart functions Begin --------------------- 4846 function AjaxAddToCart(parameter, requestProductID) { 4847 $.blockUI({ message: $('#addingToCart'), css: { border: 'none', background: 'none' } }); 4848 $.ajax({ 4849 url: websiteUrl + parameter + $("#quantityInput_" + requestProductID).val(), 4850 type: 'GET', 4851 success: function (data) { 4852 $("#AddtoItem").modal('hide'); 4853 $.unblockUI(); 4854 $('#minipagecart-button').html(''); 4855 $('#minipagecart-button').html($(data).find("#minipagecart-button").html()); 4856 $('#smallscreen-minicart').find('.dropdown-cart').find('.dropdown-cart').html(''); 4857 $('#smallscreen-minicart').find('.dropdown-cart').html($(data).find("#smallscreen-minicart").find('.dropdown-cart').html()); 4858 }, 4859 error: function (jqXHR, textStatus, errorThrown) { 4860 $.unblockUI(); 4861 }, 4862 cache: true 4863 }); 4864 } 4865 4866 //----------------DY Add to cart 4867 function DYAddToCart(id, requestQty, totalPrice, pName, prodNO, Currcode, prodGroupsforFBpixel) { 4868 window.DY = window.DY || {}; 4869 $.ajax({ 4870 url: websiteUrl + "/Default.aspx?ID=3306&ProductID=" + id, 4871 dataType: "json", 4872 type: "GET", 4873 success: function (data) { 4874 var skuNumber = data["productNumber"]; 4875 pName = data["productName"]; 4876 prodNO = data["productNumber"]; 4877 $.ajax({ 4878 url: websiteUrl + "/Default.aspx?ID=6958", 4879 dataType: "json", 4880 type: "GET", 4881 success: function (jsonData) { 4882 DY.API("event", { 4883 name: "Add to Cart", 4884 properties: { 4885 dyType: "add-to-cart-v1", 4886 value: parseFloat(totalPrice), 4887 currency: "MYR", 4888 productId: skuNumber, 4889 quantity: parseFloat(requestQty), 4890 cart: jsonData 4891 } 4892 }); 4893 }, 4894 error: function (jqXHR, textStatus, errorThrown) { 4895 console.log(textStatus + ': ' + errorThrown); 4896 }, 4897 cache: true 4898 }); 4899 }, 4900 error: function (jqXHR, textStatus, errorThrown) { 4901 $.unblockUI(); 4902 console.log(textStatus + ': ' + errorThrown); 4903 }, 4904 cache: true 4905 }); 4906 } 4907 4908 //----------------- Add To Cart PopUp functions Begin --------------------- 4909 function showaddedItem(url, id, pBrand, pName, pPrice, currencySymbol, requestQty, visible) { 4910 $.ajax({ 4911 url: websiteUrl + "/Default.aspx?ID=3306&ProductID=" + id, 4912 dataType: "json", 4913 type: "GET", 4914 success: function(data){ 4915 //console.log(data["isInCartQtyProduct"]); 4916 if(data["isInCartQtyProduct"] == "True") { 4917 requestQty = parseInt(data["inCartQty"]) + parseInt(requestQty); 4918 id = data["productID"]; 4919 pBrand = data["productBrand"]; 4920 pName = data["productName"]; 4921 pPrice = data["unitPriceWithVAT"]; 4922 currencySymbol = data["currencySymbol"]; 4923 } 4924 4925 //var totalPrice = (parseFloat(pPrice) * parseFloat(requestQty)).toFixed(2); 4926 var totalPrice = (parseFloat(pPrice) * parseFloat(requestQty)); 4927 var toAppendData = ""; 4928 toAppendData = '<tr><td colspan="2"><img src="/Admin/Public/Getimage.ashx?width=147&compression=85&Crop=5&image=/Files/Images/Ecom/Products/' + id + '.jpg" id="show" alt="product image"></td></tr>'; 4929 toAppendData += '<tr><td width="250px" style="padding:20px;" colspan="2">'; 4930 toAppendData += '<div class="pid" hidden>' + id + '</div>'; 4931 toAppendData += '<div class="pbrand">' + pBrand + '</div>'; 4932 toAppendData += '<div class="pname">' + pName + '</div>'; 4933 toAppendData += '<div class="qty">@Translate("QTY"): ' + requestQty + '<span class="count"></span></div>'; 4934 toAppendData += '<div class="price">' + currencySymbol + pPrice + '</div>'; 4935 toAppendData += '</td></tr><tr><td colspan="2"><hr /></td></tr><tr>'; 4936 toAppendData += '<td><p style="padding:10px 30px 10px 30px;">@Translate("Cart Total"): ' + currencySymbol + totalPrice + '</p></td>'; 4937 toAppendData += '<td><p class="Itotalprice" style="padding:10px;"></p></td>'; 4938 toAppendData += '</tr>'; 4939 $("#showbox").html(""); 4940 $("#showbox").append(toAppendData); 4941 4942 $("#AddtoItem").modal('show'); 4943 setTimeout(function(){$("#AddtoItem").modal('hide');}, 3000); 4944 }, 4945 error: function(jqXHR, textStatus, errorThrown) { 4946 console.log(textStatus + ': ' + errorThrown); 4947 }, 4948 cache: true 4949 }); 4950 } 4951 4952 function ShowAddedItem_Then_AjaxAddToCart(url, id, pBrand, pName, pPrice, currencySymbol, requestQty, visible, parameter,prodNO) { 4953 $.blockUI({message : $('#addingToCart'), css: { border: 'none', background: 'none'}}); 4954 4955 var DYrequestQty=requestQty; 4956 var Currcode="MYR"; 4957 var totalPrice = (parseFloat(pPrice) * parseFloat(requestQty)); 4958 var toAppendData = ""; 4959 toAppendData = '<tr><td colspan="2"><img src="/Admin/Public/Getimage.ashx?width=147&compression=85&Crop=5&image=/Files/Images/Ecom/Products/' + id + '.jpg" id="show" alt="product image"></td></tr>'; 4960 toAppendData += '<tr><td width="250px" style="padding:20px;" colspan="2">'; 4961 toAppendData += '<div class="pid" hidden>' + id + '</div>'; 4962 toAppendData += '<div class="pbrand">' + pBrand.replace(" myAND ", " & ") + '</div>'; 4963 toAppendData += '<div class="pname">' + pName.replace(" myAND ", " & ") + '</div>'; 4964 toAppendData += '<div class="qty">@Translate("QTY"): ' + requestQty + '<span class="count"></span></div>'; 4965 toAppendData += '<div class="price">' + currencySymbol + pPrice + '</div>'; 4966 toAppendData += '</td></tr><tr><td colspan="2"><hr /></td></tr><tr>'; 4967 toAppendData += '<td><p style="padding:10px 30px 10px 30px;">@Translate("Total"): ' + currencySymbol + totalPrice + '</p></td>'; 4968 toAppendData += '<td><p class="Itotalprice" style="padding:10px;"></p></td>'; 4969 toAppendData += '</tr>'; 4970 $("#showbox").html(""); 4971 $("#showbox").append(toAppendData); 4972 4973 var DYtotalPrice = (parseFloat(pPrice) * parseFloat(DYrequestQty)).toFixed(2); 4974 4975 $("#AddtoItem").modal('show'); 4976 $("body").removeClass("modal-open"); 4977 $("body").removeAttr("style"); 4978 setTimeout(function(){$("#AddtoItem").modal('hide');$.unblockUI();}, 1000); 4979 4980 $.ajax({ 4981 url: websiteUrl + "/Default.aspx?ID=" + @GetPageIdByNavigationTag("LoadMiniCart") + parameter + $("#quantityInput_" + id).val() +"&redirect=false", 4982 type: 'GET', 4983 success: function(data){ 4984 $("#AddtoItem").modal('hide'); 4985 $.unblockUI(); 4986 $('#minipagecart-button').html(''); 4987 $('#minipagecart-button').html($(data).find("#minipagecart-button").html()); 4988 $('#smallscreen-minicart').find('.dropdown-cart').find('.dropdown-cart').html(''); 4989 $('#smallscreen-minicart').find('.dropdown-cart').html($(data).find("#smallscreen-minicart").find('.dropdown-cart').html()); 4990 DYAddToCart(id, DYrequestQty, DYtotalPrice, pName, prodNO, Currcode, "" ); 4991 }, 4992 error: function(jqXHR, textStatus, errorThrown) { 4993 $.unblockUI(); 4994 }, 4995 cache: true 4996 }); 4997 } 4998 //----------------- Ajax Add To Cart functions End --------------------- 4999 //----------------- Add To Cart PopUp functions End --------------------- 5000 5001 //----------------- Show Message Global Dialog Brgin --------------------- 5002 function ShowMessageGlobalDialog(htmlMessgarPara, showTitle, showTitleCloseBtn, showButton, okReload) { 5003 var NewDialog; 5004 NewDialog = $(htmlMessgarPara); 5005 NewDialog.dialog({ 5006 resizable: false, 5007 modal: true, 5008 open: function (event, ui) { 5009 if (showTitle) { 5010 $(".ui-dialog-titlebar.ui-widget-header.ui-corner-all.ui-helper-clearfix").show(); 5011 if (showTitleCloseBtn) { 5012 $(".ui-dialog-titlebar-close").show(); 5013 } 5014 else { 5015 $(".ui-dialog-titlebar-close").hide(); 5016 } 5017 } 5018 else { 5019 $(".ui-dialog-titlebar.ui-widget-header.ui-corner-all.ui-helper-clearfix").hide(); 5020 } 5021 if (showButton) { 5022 $('.ui-dialog-buttonset').show(); 5023 } 5024 else { 5025 $('.ui-dialog-buttonset').hide(); 5026 } 5027 }, 5028 show: 'clip', 5029 buttons: { 5030 "Ok": function () { 5031 $(this).dialog("close"); 5032 if (okReload) { 5033 location.reload(); 5034 } 5035 } 5036 } 5037 }); 5038 } 5039 //----------------- Show Message Global Dialog End--------------------- 5040 5041 //----------------- Document . Ready Begin --------------------- 5042 $(document).ready(function () { 5043 $('.blockList>li.dropdown').addClass('fixedBlock'); 5044 }); 5045 //----------------- Document . Ready End --------------------- 5046 5047 5048 //----------------- Notification Bar --------------------- 5049 @if(GetBoolean("Item.Area.Notification_Bar_On_Off") || GetBoolean("Item.Area.System_Notification_Bar_On_Off") || GetBoolean("Item.Area.Day_Notification_Bar_On_Off") || GetBoolean("Item.Area.Maintenance_Time_Notification_Bar_On_Off")) 5050 { 5051 DateTime notiExpDate = DateTime.Now.AddDays(1).Date; 5052 String ExpDateDay = notiExpDate.ToString("dddd").Substring(0, 3); 5053 string ExpDateString = ExpDateDay + ", " + notiExpDate.ToString("dd MMMM yyyy 12:00:00") + " " + "UTC"; 5054 <text> 5055 $(document).ready(function() { 5056 var hasnoti = getCookie("PLCBlackNotiBar"); 5057 if(hasnoti == "show") { 5058 if(history.length == 2) 5059 { 5060 $("#alertmain").show(); 5061 $(".content-wrapper2").addClass("contentwrapper2_whennoti"); 5062 $("header").addClass("whenNoti"); 5063 $("#mainpg").addClass("whenNotiMainPg"); 5064 document.cookie = "PLCBlackNotiBar=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5065 }else{ 5066 $("#alertmain").hide(); 5067 } 5068 } else { 5069 var notibar='@GetString("Item.Area.Notification_Bar_On_Off")'; 5070 var sysnotibar = '@GetString("Item.Area.System_Notification_Bar_On_Off")'; 5071 var daynotibar = '@GetString("Item.Area.Day_Notification_Bar_On_Off")'; 5072 var mainnotibar = '@GetString("Item.Area.Maintenance_Time_Notification_Bar_On_Off")'; 5073 if(notibar == 'True') 5074 { 5075 if(sysnotibar == 'True') 5076 { 5077 if('@serverTime' > '@startTime' && '@serverTime' < '@endTime') 5078 { 5079 $("#alertmain").show(); 5080 $("header").addClass("whenNoti"); 5081 $("#mainpg").addClass("whenNotiMainPg"); 5082 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5083 }else{ 5084 if(mainnotibar == 'True') 5085 { 5086 if('@GetString("Item.Area.Maintenance_Time_Notification_Day")' != "DAILY") 5087 { 5088 if('@checkDay' == '@GetString("Item.Area.Maintenance_Time_Notification_Day")' && '@serverTime' > '@maintenanceTimeNotiStartTime' && '@serverTime' < '@maintenanceTimeNotiEndTime') 5089 { 5090 $("#alertmain").show(); 5091 $("header").addClass("whenNoti"); 5092 $("#mainpg").addClass("whenNotiMainPg"); 5093 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5094 }else{ 5095 if(daynotibar == 'True') 5096 { 5097 if('@checkDay' == '@GetString("Item.Area.Day_Notification_Day")' && '@serverTime' > '@friStartTime' && '@serverTime' < '@friEndTime') 5098 { 5099 $("#alertmain").show(); 5100 $("header").addClass("whenNoti"); 5101 $("#mainpg").addClass("whenNotiMainPg"); 5102 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5103 }else{ 5104 if(notibar == 'True') 5105 { 5106 $("#alertmain").show(); 5107 $("header").addClass("whenNoti"); 5108 $("#mainpg").addClass("whenNotiMainPg"); 5109 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5110 } 5111 } 5112 }else{ 5113 if(notibar == 'True') 5114 { 5115 $("#alertmain").show(); 5116 $("header").addClass("whenNoti"); 5117 $("#mainpg").addClass("whenNotiMainPg"); 5118 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5119 } 5120 } 5121 } 5122 }else{ 5123 if('@serverTime' > '@maintenanceTimeNotiStartTime' && '@serverTime' < '@maintenanceTimeNotiEndTime') 5124 { 5125 $("#alertmain").show(); 5126 $("header").addClass("whenNoti"); 5127 $("#mainpg").addClass("whenNotiMainPg"); 5128 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5129 }else{ 5130 if(notibar == 'True') 5131 { 5132 $("#alertmain").show(); 5133 $("header").addClass("whenNoti"); 5134 $("#mainpg").addClass("whenNotiMainPg"); 5135 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5136 } 5137 } 5138 } 5139 }else{ 5140 if(daynotibar == 'True') 5141 { 5142 if('@checkDay' == '@GetString("Item.Area.Day_Notification_Day")' && '@serverTime' > '@friStartTime' && '@serverTime' < '@friEndTime') 5143 { 5144 $("#alertmain").show(); 5145 $("header").addClass("whenNoti"); 5146 $("#mainpg").addClass("whenNotiMainPg"); 5147 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5148 }else{ 5149 if(notibar == 'True') 5150 { 5151 $("#alertmain").show(); 5152 $("header").addClass("whenNoti"); 5153 $("#mainpg").addClass("whenNotiMainPg"); 5154 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5155 } 5156 } 5157 }else{ 5158 if(notibar == 'True') 5159 { 5160 $("#alertmain").show(); 5161 $("header").addClass("whenNoti"); 5162 $("#mainpg").addClass("whenNotiMainPg"); 5163 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5164 } 5165 } 5166 } 5167 } 5168 }else{ 5169 if(mainnotibar == 'True') 5170 { 5171 if('@GetString("Item.Area.Maintenance_Time_Notification_Day")' != "DAILY") 5172 { 5173 if('@checkDay' == '@GetString("Item.Area.Maintenance_Time_Notification_Day")' && '@serverTime' > '@maintenanceTimeNotiStartTime' && '@serverTime' < '@maintenanceTimeNotiEndTime') 5174 { 5175 $("#alertmain").show(); 5176 $("header").addClass("whenNoti"); 5177 $("#mainpg").addClass("whenNotiMainPg"); 5178 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5179 }else{ 5180 if(daynotibar == 'True') 5181 { 5182 if('@checkDay' == '@GetString("Item.Area.Day_Notification_Day")' && '@serverTime' > '@friStartTime' && '@serverTime' < '@friEndTime') 5183 { 5184 $("#alertmain").show(); 5185 $("header").addClass("whenNoti"); 5186 $("#mainpg").addClass("whenNotiMainPg"); 5187 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5188 }else{ 5189 if(notibar == 'True') 5190 { 5191 $("#alertmain").show(); 5192 $("header").addClass("whenNoti"); 5193 $("#mainpg").addClass("whenNotiMainPg"); 5194 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5195 } 5196 } 5197 }else{ 5198 if(notibar == 'True') 5199 { 5200 $("#alertmain").show(); 5201 $("header").addClass("whenNoti"); 5202 $("#mainpg").addClass("whenNotiMainPg"); 5203 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5204 } 5205 } 5206 } 5207 }else{ 5208 if('@serverTime' > '@maintenanceTimeNotiStartTime' && '@serverTime' < '@maintenanceTimeNotiEndTime') 5209 { 5210 $("#alertmain").show(); 5211 $("header").addClass("whenNoti"); 5212 $("#mainpg").addClass("whenNotiMainPg"); 5213 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5214 }else{ 5215 if(daynotibar == 'True') 5216 { 5217 if('@checkDay' == '@GetString("Item.Area.Day_Notification_Day")' && '@serverTime' > '@friStartTime' && '@serverTime' < '@friEndTime') 5218 { 5219 $("#alertmain").show(); 5220 $("header").addClass("whenNoti"); 5221 $("#mainpg").addClass("whenNotiMainPg"); 5222 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5223 }else{ 5224 if(notibar == 'True') 5225 { 5226 $("#alertmain").show(); 5227 $("header").addClass("whenNoti"); 5228 $("#mainpg").addClass("whenNotiMainPg"); 5229 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5230 } 5231 } 5232 }else{ 5233 if(notibar == 'True') 5234 { 5235 $("#alertmain").show(); 5236 $("header").addClass("whenNoti"); 5237 $("#mainpg").addClass("whenNotiMainPg"); 5238 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5239 } 5240 } 5241 } 5242 } 5243 }else{ 5244 if(daynotibar == 'True') 5245 { 5246 if('@checkDay' == '@GetString("Item.Area.Day_Notification_Day")' && '@serverTime' > '@friStartTime' && '@serverTime' < '@friEndTime') 5247 { 5248 $("#alertmain").show(); 5249 $("header").addClass("whenNoti"); 5250 $("#mainpg").addClass("whenNotiMainPg"); 5251 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5252 }else{ 5253 if(notibar == 'True') 5254 { 5255 $("#alertmain").show(); 5256 $("header").addClass("whenNoti"); 5257 $("#mainpg").addClass("whenNotiMainPg"); 5258 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5259 } 5260 } 5261 }else{ 5262 if(notibar == 'True') 5263 { 5264 $("#alertmain").show(); 5265 $("header").addClass("whenNoti"); 5266 $("#mainpg").addClass("whenNotiMainPg"); 5267 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5268 } 5269 } 5270 } 5271 } 5272 }else{ 5273 if(sysnotibar == 'True') 5274 { 5275 if('@serverTime' > '@startTime' && '@serverTime' < '@endTime') 5276 { 5277 $("#alertmain").show(); 5278 $("header").addClass("whenNoti"); 5279 $("#mainpg").addClass("whenNotiMainPg"); 5280 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5281 }else{ 5282 if(mainnotibar == 'True') 5283 { 5284 if('@GetString("Item.Area.Maintenance_Time_Notification_Day")' != "DAILY") 5285 { console.log("test"); 5286 if('@checkDay' == '@GetString("Item.Area.Maintenance_Time_Notification_Day")' && '@serverTime' > '@maintenanceTimeNotiStartTime' && '@serverTime' < '@maintenanceTimeNotiEndTime') 5287 { 5288 $("#alertmain").show(); 5289 $("header").addClass("whenNoti"); 5290 $("#mainpg").addClass("whenNotiMainPg"); 5291 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5292 }else{ 5293 if(daynotibar == 'True') 5294 { 5295 if('@checkDay' == '@GetString("Item.Area.Day_Notification_Day")' && '@serverTime' > '@friStartTime' && '@serverTime' < '@friEndTime') 5296 { 5297 $("#alertmain").show(); 5298 $("header").addClass("whenNoti"); 5299 $("#mainpg").addClass("whenNotiMainPg"); 5300 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5301 }else{ 5302 if(notibar == 'True') 5303 { 5304 $("#alertmain").show(); 5305 $("header").addClass("whenNoti"); 5306 $("#mainpg").addClass("whenNotiMainPg"); 5307 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5308 } 5309 } 5310 }else{ 5311 if(notibar == 'True') 5312 { 5313 $("#alertmain").show(); 5314 $("header").addClass("whenNoti"); 5315 $("#mainpg").addClass("whenNotiMainPg"); 5316 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5317 } 5318 } 5319 } 5320 }else{ 5321 if('@serverTime' > '@maintenanceTimeNotiStartTime' && '@serverTime' < '@maintenanceTimeNotiEndTime') 5322 { 5323 $("#alertmain").show(); 5324 $("header").addClass("whenNoti"); 5325 $("#mainpg").addClass("whenNotiMainPg"); 5326 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5327 }else{ 5328 if(notibar == 'True') 5329 { 5330 $("#alertmain").show(); 5331 $("header").addClass("whenNoti"); 5332 $("#mainpg").addClass("whenNotiMainPg"); 5333 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5334 } 5335 } 5336 } 5337 }else{ 5338 if(daynotibar == 'True') 5339 { 5340 if('@checkDay' == '@GetString("Item.Area.Day_Notification_Day")' && '@serverTime' > '@friStartTime' && '@serverTime' < '@friEndTime') 5341 { 5342 $("#alertmain").show(); 5343 $("header").addClass("whenNoti"); 5344 $("#mainpg").addClass("whenNotiMainPg"); 5345 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5346 } 5347 } 5348 } 5349 } 5350 }else{ 5351 if(mainnotibar == 'True') 5352 { 5353 if('@GetString("Item.Area.Maintenance_Time_Notification_Day")' != "DAILY") 5354 { 5355 if('@checkDay' == '@GetString("Item.Area.Maintenance_Time_Notification_Day")' && '@serverTime' > '@maintenanceTimeNotiStartTime' && '@serverTime' < '@maintenanceTimeNotiEndTime') 5356 { 5357 $("#alertmain").show(); 5358 $("header").addClass("whenNoti"); 5359 $("#mainpg").addClass("whenNotiMainPg"); 5360 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5361 }else{ 5362 if(daynotibar == 'True') 5363 { 5364 if('@checkDay' == '@GetString("Item.Area.Day_Notification_Day")' && '@serverTime' > '@friStartTime' && '@serverTime' < '@friEndTime') 5365 { 5366 $("#alertmain").show(); 5367 $("header").addClass("whenNoti"); 5368 $("#mainpg").addClass("whenNotiMainPg"); 5369 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5370 }else{ 5371 if(notibar == 'True') 5372 { 5373 $("#alertmain").show(); 5374 $("header").addClass("whenNoti"); 5375 $("#mainpg").addClass("whenNotiMainPg"); 5376 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5377 } 5378 } 5379 }else{ 5380 if(notibar == 'True') 5381 { 5382 $("#alertmain").show(); 5383 $("header").addClass("whenNoti"); 5384 $("#mainpg").addClass("whenNotiMainPg"); 5385 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5386 } 5387 } 5388 } 5389 }else{ 5390 if('@serverTime' > '@maintenanceTimeNotiStartTime' && '@serverTime' < '@maintenanceTimeNotiEndTime') 5391 { 5392 $("#alertmain").show(); 5393 $("header").addClass("whenNoti"); 5394 $("#mainpg").addClass("whenNotiMainPg"); 5395 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5396 }else{ 5397 if(notibar == 'True') 5398 { 5399 $("#alertmain").show(); 5400 $("header").addClass("whenNoti"); 5401 $("#mainpg").addClass("whenNotiMainPg"); 5402 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5403 } 5404 } 5405 } 5406 }else{ 5407 if(daynotibar == 'True') 5408 { 5409 if('@checkDay' == '@GetString("Item.Area.Day_Notification_Day")' && '@serverTime' > '@friStartTime' && '@serverTime' < '@friEndTime') 5410 { 5411 $("#alertmain").show(); 5412 $("header").addClass("whenNoti"); 5413 $("#mainpg").addClass("whenNotiMainPg"); 5414 document.cookie = "notikey=show; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5415 } 5416 } 5417 } 5418 } 5419 } 5420 } 5421 }); 5422 5423 function divClose() { 5424 $("#alertmain").hide(); 5425 $(".content-wrapper2").removeClass("contentwrapper2_whennoti"); 5426 $("header").removeClass("whenNoti"); 5427 $("#mainpg").removeClass("whenNotiMainPg"); 5428 $("#mainpg").addClass("Noti_Remove"); 5429 var now = new Date(); 5430 var time = now.getTime(); 5431 time += 24 * 3600 * 1000; 5432 now.setTime(time); 5433 document.cookie = "PLCBlackNotiBar=show; expires=" + '@ExpDateString' + "; path=/"; 5434 } 5435 </text> 5436 } 5437 //----------------- Notification Bar End --------------------- 5438 5439 function SiteLogout() 5440 { 5441 document.cookie = "IsVIPExpire=true; expires=Sat, 31 Dec 2050 12:00:00 UTC; path=/;"; 5442 window.location.href = '/Admin/Public/ExtranetLogoff.aspx?ID=@GetPageIdByNavigationTag("Home")'; 5443 } 5444 5445 function topFunction() { 5446 $('html, body').animate({ scrollTop: 0 }, 'fast') 5447 } 5448 5449 window.onscroll = function() {scrollFunction()}; 5450 5451 function scrollFunction() { 5452 if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) { 5453 document.getElementById("myBtn").style.display = "block"; 5454 } else { 5455 document.getElementById("myBtn").style.display = "none"; 5456 } 5457 } 5458 5459 //----------------- BEGIN Update VIP Info and Assigning Groups per Day ----------------- 5460 $(document).ready(function () { 5461 if ('@GetGlobalValue("Global:Extranet.UserID")' != 0) { 5462 var todayDate = new Date(); 5463 todayDate.setDate(todayDate.getDate() + 1); 5464 todayDate.setHours(0, 0, 0, 0); 5465 var updatedVIPInfo = getCookie("UpdatedVIPInfo"); 5466 5467 if (updatedVIPInfo.length == 0 || updatedVIPInfo != todayDate) { 5468 //var url = @GetGlobalValue("Global:Area.LongLang") + '/utilities/update-vip-info-and-assigning-groups-per-day'; 5469 $.ajax({ 5470 url: '@myPlcUrl' + '/Default.aspx?ID=' + '@GetPageIdByNavigationTag("UpdateVIPInfo")', 5471 dataType: "text", 5472 type: 'GET', 5473 success: function (data) { 5474 if (data.includes("true")) { 5475 document.cookie = "UpdatedVIPInfo=" + todayDate + "; expires=" + todayDate; 5476 } 5477 }, 5478 error: function (jqXHR, textStatus, errorThrown) { 5479 console.log(textStatus + ': ' + errorThrown); 5480 }, 5481 cache: true 5482 }); 5483 } 5484 } 5485 }); 5486 //----------------- END Update VIP Info and Assigning Groups per Day ----------------- 5487 5488 //------------------------------------------------loader---------------------- 5489 $('#applyFilters').click(function () { 5490 $('#loader').show(); $('.blockOverlay').remove(); 5491 }); 5492 $('#submitSearch').click(function () { 5493 $('#loader').show(); $('.blockOverlay').remove(); 5494 }); 5495 $('#searchForm').submit(function () { 5496 $('#loader').show(); $('.blockOverlay').remove(); 5497 }); 5498 $('#searchForm1').submit(function () { 5499 $('#loader').show(); $('.blockOverlay').remove(); 5500 }); 5501 //------------------------------------------------Minicart fix---------------------- 5502 $('body').click(function () { 5503 if ($('.cart-info-box').is(':visible')) { 5504 $('.cart-info-box').slideUp(); 5505 } 5506 }); 5507 5508 function BulkPurchaseMsgTrans() { 5509 let NewDialog; 5510 let messageTitle = '@Translate("Message")'; 5511 NewDialog = $('<div class="popup" title="' + messageTitle + '" style="text-align: center;padding-top: 1em;padding-bottom: 1em;">@Translate("You have reached the purchase limit per item for this transaction. Kindly") <a href="//customercare.petloverscentre.co.th/hc/en-us/requests/new?ticket_form_id=5993816612121">@Translate("contact us")</a> @Translate("for bulk purchase. Thank you.")</div>'); 5512 NewDialog.dialog({ 5513 resizable: false, 5514 modal: true, 5515 open: function (event, ui) { 5516 $(".ui-dialog-titlebar-close").hide(); 5517 }, 5518 show: 'clip', 5519 buttons: { 5520 '@Translate("OK")': function () { 5521 $(this).dialog("close"); 5522 } 5523 } 5524 }); 5525 } 5526 </script>