1 2<!DOCTYPE html> 3 4<html><head id="head"><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
4<script language="javascript" type="text/javascript"> 5if(window.location.protocol.toLowerCase() == 'http:'){ 6document.write('<style>body{display:none !important;}</style>'); 7window.location.href = 'https://www.abchammers.com/17/homepage.htm';} 8</script>
8 9 10<title>ABC Hammers | Home </title> 11<meta name="description" content="Dead Blow Hammers, Soft Face Hammers, Non-marring and non-sparking brass and bronze hammers made in USA for over 50 years. Custom hammers manufactured also."><meta name="keywords" content="dead blow hammers, soft face hammers, brass hammers mallet, bronze hammer mallet, non-marring, non-sparking, Babbitt, copper and zinc hammers, custom hammers, OEM hammers, Made in USA, Made in America, brass head hammers, bronze head hammers, buy a hammer, non-marring hammer, non-sparking hammer, non marring, non sparking, purchase a hammer, best hammer, striking tool, brass hammer, dead-blow hammer, non-sparking, non-marring, buy a non-sparking hammer, buy a non-marring hammer."> 12 13<meta charset="utf-8"> 14<link rel="dns-prefetch" href="//ajax.googleapis.com"> 15<link rel="preconnect" href="//ajax.googleapis.com"> 16<link rel="dns-prefetch" href="//use.fontawesome.com"> 17<link rel="preconnect" href="//use.fontawesome.com"> 18<link rel="dns-prefetch" href="//fonts.gstatic.com"> 19<link rel="preconnect" href="//fonts.gstatic.com"> 20<link rel="dns-prefetch" href="//cdnjs.cloudflare.com"> 21<link rel="preconnect" href="//cdnjs.cloudflare.com"> 22<link rel="dns-prefetch" href="//cdn.jsdelivr.net"> 23<link rel="preconnect" href="//cdn.jsdelivr.net"> 24<link rel="dns-prefetch" href="//stackpath.bootstrapcdn.com"> 25<link rel="preconnect" href="//stackpath.bootstrapcdn.com"> 26 27<link rel="dns-prefetch" href="//connect.facebook.net"> 28<link rel="preconnect" href="//connect.facebook.net"> 29 30<link rel="dns-prefetch" href="//unpkg.com"> 31<link rel="preconnect" href="//unpkg.com"> 32 33<meta name="viewport" content="width=device-width, initial-scale=1.0"> 34<meta name="msapplication-TileColor" content="#C5A778"> 35<meta name="msapplication-TileImage" content="../dsn/wwwabchammerscom/content/images/icons/icon-152x152.png"> 36<meta name="theme-color" content="#C5A778"> 37<link rel="mask-icon" href="../dsn/wwwabchammerscom/content/images/icons/apple-touch-icon.png" color="#C5A778"> 38<link rel="icon" href="../dsn/wwwabchammerscom/content/images/icons/favicon.ico" type="image/x-icon" /> 39<link rel="apple-touch-icon" sizes="180x180" href="../dsn/wwwabchammerscom/content/images/icons/apple-touch-icon.png"> 40<link rel="icon" type="image/png" sizes="32x32" href="../dsn/wwwabchammerscom/content/images/icons/favicon-32x32.png"> 41<link rel="icon" type="image/png" sizes="16x16" href="../dsn/wwwabchammerscom/content/images/icons/favicon-16x16.png"> 42<link href="../st-app/modules/st-bootstrap/dist/plugins.min.css" rel="stylesheet"> 43 44<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css"> 45<link href="../st-app/modules/st-bootstrap/dist/styles.css" rel="stylesheet"> 46
47<script> 48 if (window.history && window.history.replaceState) 49 { 50 window.history.replaceState(null, null, '//www.abchammers.com'); 51 } 52</script>
52 53 54 55 56
57<script src="../st-app/lib/is-mobile/isMobile.min.js"></script>
57 58
59<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
vendor: 2 bytes, line 59
59
60<script> 61 cssVars({ 62 include: 'link[rel=stylesheet][href*="DSN"],style', 63 onlyLegacy: !(/Edge\/1[56]\./i.test(navigator.userAgent)), 64 watch: true, 65 rootElement: document, 66 shadowDOM: true 67 // onlyLegacy: true 68 }); 69</script>
69 70
71<script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
vendor: 2 bytes, line 71
71
72<script>$('html').prop("lang","en")</script>
vendor: 2 bytes, line 72
72
73<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.13.2/jquery-ui.min.js"></script>
vendor: 2 bytes, line 73
73
74<script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui-touch-punch/0.2.3/jquery.ui.touch-punch.min.js"></script>
vendor: 2 bytes, line 74
74
75<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/perfect-scrollbar.min.js"></script>
vendor: 2 bytes, line 75
75
76<script src="//cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.0/umd/popper.min.js" integrity="sha384-cs/chFZiN24E4KMATLdqdvsezGxaGsi4hLGOzlXwp5UZB1LY//20VyM2taTB4QvJ" crossorigin="anonymous"></script>
vendor: 2 bytes, line 76
76
77<script src="../st-app/lib/bootstrap/4.3.1/js/bootstrap.min.js"></script>
77 78
79<script> 80 var stappConfig = { 81 'cfgVer' : '723', 82 'cfgSvcWorker' : 'false', 83 'cfgDSN' : 'wwwabchammerscom', 84 'cfgShopID' : '1', 85 'cfgGroupID' : '1', 86 'cfgBread' : '', 87 'cfgShopName' : 'ABC Hammers', 88 'cfgBrand' : "<a name='homepage' href='/' style='max-height:90px;display: inline-block;'><img alt='ABC Hammers'src='../DSN/wwwabchammerscom/Content/Images/abc-logo.png' style='max-height:90px; max-width: 300px;'></a>", 89 'cfgBrandImg' : '1', 90 'cfgBrandPos' : 'rightutilitybaruseroptions', 91 'cfgSubBarInlineUtils' : '', 92 'cfgMenuPos' : '', 93 'cfgMenuPerfectCenter' : 'true', 94 'cfgMenuSticky' : '', 95 'cfgPubAccess' : 'true', 96 'cfgFeaturedCategory' : '', 97 'cfgFeaturedCount' : 0, 98 'cfgFeaturedAutoPlay' : 'False', 99 'cfgFeaturedRandom' : 'False', 100 'cfgFeaturedShop' : '', 101 'cfgFeaturedShopCount' : 0, 102 'cfgFeaturedShopAutoPlay' : 'False',
103 'cfgFeaturedShopRandom' : 'False', 104 'cfgFeaturedCartCat' : '', 105 'cfgFeaturedCartCatCount' : 0, 106 'cfgFeaturedCartCatAutoPlay': 'False', 107 'cfgFeaturedCartCatRandom' : 'False', 108 'cfgFeaturedCategoryTwo' : '', 109 'cfgFeaturedCountTwo' : 0, 110 'cfgFeaturedAutoPlayTwo' : 'False', 111 'cfgFeaturedRandomTwo' : 'False', 112 'cfgFeaturedCategoryThree' : '', 113 'cfgFeaturedCountThree' : 0, 114 'cfgFeaturedAutoPlayThree' : 'False', 115 'cfgFeaturedRandomThree' : 'False', 116 'cfgYMAL' : '', 117 'cfgMobileTopBarBg' : "", 118 'cfgMobileSideBarBg' : "", 119 'cfgMobileBgOverlay' : '', 120 'cfgMobileBgOverlayAlpha' : '', 121 'cfgOpenDescDesktop' : '', 122 'cfgOpenDesc' : 'false', 123 'cfgOpenDescMobile' : '', 124 'cfgLogin' : '', 125 'cfgLoginModal' : '30', 126 'cfgCatMSRPLabel' : '', 127 'cfgForgotPass' : '24', 128 'cfgAllowRegister' : 'true', 129 'cfgRegister' : '26', 130 'cfgCFMAnimatedLabels' : '1', 131 'cfgFb' : 'https://www.facebook.com/ABC-Hammers-102636427959962/', 132 'cfgInsta' : '', 133 'cfgTwitter' : '', 134 'cfgYouTube' : '', 135 'cfgPinterest' : '', 136 'cfgSnapchat' : '', 137 'cfgLinkedIn' : 'https://www.linkedin.com/company/abc-hammers-inc-', 138 'cfgTikTok' : '', 139 'cfgSocialMail' : '', 140 'cfgFilterDisplay' : '', 141 'cfgCheckoutCountryDefault' : 'us', 142 'cfgFullPageWidth' : false, 143 'cfgFormPages' : '27', 144 'cfgProductRelatedCount' : '4', 145 'cfgShowSavedCarts' : '', 146 'cfgMenuSticky' : '', 147 'cfgShowShippingEstimator' : 'false', 148 'cfgCatShowAddToCart' : '', 149 'cfgPostOfficeBlock' : '', 150 }; 151</script>
vendor: 2 bytes, line 151
151
152<script src="../st-app/modules/st-bootstrap/dist/st-bundle.min.js?v=5.5"></script>
152 153 154<!-- Facebook Pixel Code -->
155<script>
vendor: 459 bytes, lines 155-163
155 156 !function(f,b,e,v,n,t,s) { 157 if(f.fbq)return;n=f.fbq=function(){n.callMethod?n.callMethod.apply(n,arguments):n.queue.push(arguments)}; 158 if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; 159 n.queue=[];t=b.createElement(e);t.async=!0; 160 t.src=v;s=b.getElementsByTagName(e)[0]; 161 s.parentNode.insertBefore(t,s) 162 }(window, document,'script','https://connect.facebook.net/en_US/fbevents.js'); 163 fbq('init', '
163561298391393650
vendor: 36 bytes, lines 163-164
163'); 164 fbq('track', 'PageView');
165</script>
165 166<noscript> 167 <img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=561298391393650&ev=PageView&noscript=1"/> 168</noscript> 169<!-- End Facebook Pixel Code -->
vendor: 71 bytes, lines 169-171
169 170 171 <script async src="https://www.googletagmanager.com/gtag/js?id=
171G-KZYSSFN034
vendor: 17 bytes, lines 171-172
171"></script> 172
172<script> 173
vendor: 157 bytes, lines 173-176
173window.dataLayer = window.dataLayer || []; 174 function gtag(){dataLayer.push(arguments);} 175 gtag('js', new Date()); 176 gtag('config', '
176G-KZYSSFN034
vendor: 21 bytes, lines 176-179
176'); 177 178 179
179</script>
179 180 181
182<script> 183 function getUrlVars() { 184 var vars = {}; 185 var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) { 186 vars[key] = value; 187 }); 188 return vars; 189 } 190</script>
190 191 192<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 193<link rel="stylesheet" type="text/css" href="../DSN/wwwabchammerscom/Style/wwwabchammerscom.css"> 194<link rel="canonical" href="https://www.abchammers.com/17/homepage.htm"><meta property="og:url" content="https://www.abchammers.com/17/homepage.htm"><meta property="og:title" content="ABC Hammers | Home" /> <meta property="og:type" content="website" />
195<script> var _st_PageName = 'Homepage';</script>
195 196
197<script language="javascript" src="../vlInclude/global.js"></script>
197 198</head> 199<body id="body" class="homepage" style="margin: 0px;"><div class="page-container" width="100%"> 200<div id="row-47" class="container-row row-menu"><div id="cell-47" class="container-cell menu"> 201 202
202<script type="text/javascript"> 203 try{ 204 HeaderSearchFields; 205 }catch(e){ 206 HeaderSearchFields=[]; 207 } 208 function Validate() { 209 var form = GetTag('SearchForm'); 210 211 if (form.Props.value.length > 0) { 212 for (x in form) { 213 if (x.indexOf('Prop') === 0 && x !== 'Props') 214 if (form[x].value !== '%') 215 if (form['SearchText'].value === '') { 216 form['SearchText'].value = ' '; 217 } 218 } 219 } 220 221 if ($('#SearchText').val() !== "") { 222 form.action = '/25/search.htm?doSearch=1&searchString=' + $('#SearchText').val() + '&chkAllProducts='; 223 } else { 224 form.action = '/25/search.htm?doSearch=1&searchString=&chkAllProducts='; 225 } 226 227 228 form.submit(); 229 } 230 231 var cartPrefixTN = 'ct1_'; 232 var thumbPrefixTN = 'tmb1_'; 233 var cartNoImageTN = '/DSN/wwwabchammerscom/Commerce/ProductImages/Cart_NoImage.jpg'; 234 235 $.fn.fgmenu = $.fn.menu; 236 $(function () { 237 if ($("#SearchText").length > 0) { 238 $("#SearchText").autocomplete({ 239 appendTo: ".ui-widgetTN", 240 html: true, 241 minLength: 3, 242 deferRequestBy: 200, 243 delay: 500, 244 search: function (event, ui) { 245 $(".ui-widgetTN").append('<div id="loading-spinnerTN" class="ui-autocomplete-loading">Searching...</div>') 246 }, 247 response: function (event, ui) { 248 if (!$.isEmptyObject(ui.content)) { 249 setTimeout(function () { $("#loading-spinnerTN").remove() }, 200); 250 } 251 }, 252 open: function () { 253 $('.ui-widgetTN li.ui-menu-item').each(function (idx) { 254 $(this).addClass('container'); 255 }) 256 }, 257 close: function (event, ui) { 258 $("#loading-spinnerTN").remove(); 259 }, 260 select: function (event, ui) { 261 if (event.keyCode) { 262 $("#SearchText").val(ui.item.value); 263 ValidateSearch2(); 264 } else { 265 location.href = ui.item.target; 266 } 267 }, 268 source: function (request, response) { 269 var $this = $(this); 270 var $element = $(this.element); 271 var previous_request = $element.data("jqXHR"); 272 var EAItemsSSBViewed = []; 273 if (previous_request) { 274 previous_request.abort(); 275 } 276 $element.data("jqXHR", $.ajax({ 277 url: '../../Content/ASP/2014_CommerceSearch.asp?IsAjax=Search&ID=&CategoryID=0&DSN=VortalLogic&SortOrder=&PriceMult=&isFiltering=True&FilterString=' + request.term + '&PriceRange=&LookChild=1&HeaderSearchFields=' + JSON.stringify(HeaderSearchFields) , 278 dataType: 'json', 279 error: function (v, g) { 280 $("#loading-spinnerTN").remove(); 281 }, 282 success: function (v, g) { 283 $("#loading-spinnerTN").remove(); 284 var topNavSearchCount = 0; 285 response($.map(v, function (item) { 286 287 288 if (item.ProdCatID === undefined) { 289 item.ProdCatID = 0; 290 } 291 return { 292 label: '<div class="acimage mr-2"><img loading="lazy" onerror=this.src="' + cartNoImageTN + '" src="' + item.ImageName.replace('/' + thumbPrefixTN, '/' + cartPrefixTN) + '"/></div><div class="acdetails"><div class="acproductname">' + item.ProductName + '</div><div class="acpartno">#' + item.PartNo + '</div></div>', 293 value: item.PartNo, 294 target: '/prod-' + item.ProdPageID + '-1-' + item.ProductID + '-' + item.ProdCatID + '/' + item.COM_LinkVal + '.htm' 295 } 296 })); 297 298 $(".nav-ui-search ul#ui-id-1").append('<div class="ui-menu-item moreResults" onclick="$(\'.SearchInput\').val(\'' + request.term + '\');Validate(); event.preventDefault();" role="presentation"><a href="">See more results for "' + request.term + '"</a></div>'); 299 300 301 } 302 })) 303 } 304 }).data("ui-autocomplete")._renderItem = function (ul, item) { 305 return $("<li></li>") 306 .data("item.autocomplete", item) 307 .append("<a class='row flex-nowrap'>" + item.label + "</a>") 308 .appendTo(ul); 309 }; 310 } 311 }) 312 </script>
312 313 314 <!-- CHANGING SHOPCNFG FROM GROUP [] TO [1] --> 315 <!-- Setting Discounts --> 316<!-- True, --> 317<!-- 318Your Discount: 0 319Your Group: 1 320Your Discount Data: 1 321CartPageID: 22 322ShopID: 1 323-->
324<script src="https://unpkg.com/[email protected]/dist/ionicons.js"></script>
vendor: 2 bytes, line 324
324
325<script language="javascript" src="https://cdn.jsdelivr.net/npm/[email protected]/slick/slick.min.js"></script>
vendor: 2 bytes, line 325
325
326<script language="javascript" src="../../vlInclude/types.js"></script>
vendor: 2 bytes, line 326
326
327<script language="javascript" src="../../commerce/commerce.js"></script>
vendor: 2 bytes, line 327
327
328<script language="javascript" src="../../DSN/wwwabchammerscom/TransCnfgTypes.js"></script>
vendor: 2 bytes, line 328
328
329<script language="javascript" src="../../DSN/wwwabchammerscom/PriceTypes.js"></script>
vendor: 2 bytes, line 329
329
330<script language="javascript" src="../../DSN/wwwabchammerscom/MediaTypes.js"></script>
vendor: 2 bytes, line 330
330
331<script id="removeScrpting"> 332 $(document).ready(function(){ 333 $("script:contains('window.location.href =')").first().remove(); 334 $("#removeScrpting").remove(); 335 }) 336</script>
336 337 338 339 340 <div id="header"> 341 342 <div id="navToolbar" class="fullwidth"> 343 344 <div class="nav-ui-toolbar container px-3"> 345 346 <div class="nav-ui-custom"> 347 <div class='sub-left'><img class='sub-ico' src='../dsn/wwwabchammerscom/content/images/ico-us-flag.jpg'> <strong>Proudly Made in the USA for Over 50 Years!</strong></div><ul class='nav'><li class='nav-item'><a class='hot' href='../26/register.htm' target='_self'>Distributor Registration</a></li><li class='nav-item'><a href='../32/where-to-buy.htm' target='_self'>Where To Buy</a></li><li class='nav-item'><a href='../27/contact-us.htm'>Contact</a></li></ul> 348 </div> 349 350 </div> 351 352 </div> 353 354 355 356 <div id="topBar" class="row justify-content-between subBarActive"> 357 <div class="nav-ui-brand navbar-brand"></div> 358 359 <div class="nav-ui-toggle"> 360 <div class="app-menu-burger nav-link" href="#"> 361 <div class="app-menu-line"></div> 362 <div class="app-menu-line"></div> 363 <div class="app-menu-line"></div> 364 </div> 365 </div> 366 367 <div class="nav-ui-search nav-item "> 368 <div class="ui-widgetTN nav-link"> 369 <form id="SearchForm" class="form-inline d-inline-flex flex-nowrap" action="/25/search.htm" method="post" name="SearchForm2" onsubmit="Validate();"> 370 <input autocomplete="off" id="SearchText" class="form-control mr-0" gtbfieldid="23" name="SearchText" type="text" placeholder="search products" placeholder="Search" aria-label="Search"> 371 <button id="Search" class="btn d-none d-sm-inline-block" type="submit" name="Search" onclick="void(Validate());" aria-label="Product Search"> 372 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"> 373 <path d="M337.509 305.372h-17.501l-6.571-5.486c20.791-25.232 33.922-57.054 33.922-93.257C347.358 127.632 283.896 64 205.135 64 127.452 64 64 127.632 64 206.629s63.452 142.628 142.225 142.628c35.011 0 67.831-13.167 92.991-34.008l6.561 5.487v17.551L415.18 448 448 415.086 337.509 305.372zm-131.284 0c-54.702 0-98.463-43.887-98.463-98.743 0-54.858 43.761-98.742 98.463-98.742 54.7 0 98.462 43.884 98.462 98.742 0 54.856-43.762 98.743-98.462 98.743z"></path> 374 </svg> 375 </button> 376 <input autocomplete="off" name="Search" type="hidden" value="Search" /> 377 <input autocomplete="off" name="Props" type="hidden" /> 378 <input autocomplete="off" name="ProdType" type="hidden" /> 379 <input autocomplete="off" name="DProps" type="hidden" /> 380 <input autocomplete="off" name="DPropNames" type="hidden" /> 381 <input autocomplete="off" id="PG" name="PG" type="hidden" /> 382 <input autocomplete="off" name="Search" type="hidden" value="Search" /> 383 </form> 384 </div> 385 </div> 386 387 <div class="nav-ui-utils"> 388 389 <div class="nav-ui-user-menu nav-ui-user-menu-default nav-item dropdown"> 390 <a class="nav-link dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false" href="#"> 391 <strong>My Account</strong> <ion-icon name="person"></ion-icon> 392 </a> 393 <ul class="dropdown-menu dropdown-menu-right" data-display="static"> 394 <li class="dropdown-item util-sub-signin"> 395 <a href="#" data-toggle="modal" data-target="#bootLogin" target="_self">Sign In</a> 396 </li> 397 398 <li class="dropdown-item util-sub-register"> 399 <a href="../26/register.htm">Register</a> 400 </li> 401 402 </ul> 403 </div> 404 405 406 407 </div> 408 409 </div> 410 411 <nav id="mainMenu" class="navbar navbar-expand-lg menuDefault d-none d-lg-flex" data-type="sidebar"> 412 <button class="navbar-toggler dropdown-toggle collapsed" type="button" data-toggle="collapse" data-target="#mainMenuNav" aria-controls="mainMenuNav" aria-expanded="false" aria-label="Toggle navigation"> 413 Browse Products 414 </button> 415 <div id="mainMenuNav" class="mobile-active-link collapse navbar-collapse"> 416 417 <ul class="navbar-nav navbar-center-link "> 418 419 <li class="nav-item navitem_1 d-flex flex-column justify-content-center MainNavLevel_1"> 420 <a href="/cat-42-1-1/brass-hammers.htm" 421 title="Brass Hammers"
422 class="NavLevel_1 nav-link" 423 424 >Brass Hammers</a> 425 426 </li> 427 428 <li class="nav-item navitem_2 d-flex flex-column justify-content-center MainNavLevel_2"> 429 <a href="/cat-43-1-2/bronze-hammers.htm" 430 title="Bronze Hammers" 431 class="NavLevel_2 nav-link" 432 433 >Bronze Hammers</a> 434 435 </li> 436 437 <li class="nav-item navitem_3 d-flex flex-column justify-content-center dropdown MainNavLevel_3"> 438 <a href="/cat-18-1-3/steel-hammers.htm" 439 title="Steel Hammers" 440 class="NavLevel_3 nav-link dropdown-toggle" 441 442 data-hover="dropdown" role="button" aria-haspopup="true" aria-expanded="false" 443 444 >Steel Hammers</a> 445 <ul class='dropdown-menu middle'><li class='dropdown-item'><a class='NavLevel_1' href='/cat-46-1-5/stryker-pro.htm' title='STRYKER PRO'>STRYKER PRO</a></li><li class='dropdown-item'><a class='NavLevel_1' href='/cat-45-1-6/stryker-xhd.htm' title='STRYKER XHD'>STRYKER XHD</a></li></ul> 446 </li> 447 448 <li class="nav-item navitem_4 d-flex flex-column justify-content-center MainNavLevel_4"> 449 <a href="/cat-44-1-4/dead-blow-hammers.htm" 450 title="Dead Blow Hammers" 451 class="NavLevel_4 nav-link" 452 453 >Dead Blow Hammers</a> 454 455 </li> 456 457 </ul> 458 459 </div> 460 </nav> 461 </div> 462 463 464 <div id="navSideMenu" class="nav-side-menu"> 465 <div class="nav-side-menu-background"></div> 466 <div class="app-menu-container"> 467 <div class="app-menu"> 468 <div class="nav-side-wrap"> 469 <div class="nav-side-logo"> 470 </div> 471 <ul class="nav-side-menu-wrap"> 472 473 <li class="nav-side-heading nav-heading-account"> 474 <div class="container pl-0 pr-0"> 475 <div class="row no-gutters"> 476 <div class="nav-heading-account-title col">My Account</div> 477 </div> 478 </div> 479 </li> 480 <li class="nav-side-links nav-side-links-account"> 481 <ul> 482 <li class="list-item"><a class="sideMenuSignIn btn btn-primary" href="#" data-toggle="modal" data-target="#bootLogin" target="_self">Sign In</a></li> 483 484 <li class="list-item"><a class="sideMenuRegister btn btn-secondary" href="../26/register.htm">Register</a></li> 485 486 </ul> 487 </li> 488 489 <li class="nav-side-heading nav-heading-menu"> 490 <div class="container pl-0 pr-0"> 491 <div class="row no-gutters"> 492 <div class="col">Menu</div> 493 </div> 494 </div> 495 </li> 496 <li class="nav-side-links"> 497 <ul id="navSideSiteMenu"> 498 499 <li class="list-item SideNavLevel_1"> 500 <a href="/cat-42-1-1/brass-hammers.htm" 501 title="Brass Hammers" 502 class="sideMenuNavLink NavLevel_1 n
502av-link" 503 504 >Brass Hammers</a> 505 506 </li> 507 508 <li class="list-item SideNavLevel_2"> 509 <a href="/cat-43-1-2/bronze-hammers.htm" 510 title="Bronze Hammers" 511 class="sideMenuNavLink NavLevel_2 nav-link" 512 513 >Bronze Hammers</a> 514 515 </li> 516 517 <li class="list-item dropdown SideNavLevel_3"> 518 <a href="/cat-18-1-3/steel-hammers.htm" 519 title="Steel Hammers" 520 class="sideMenuNavLink NavLevel_3 nav-link dropdown-toggle" 521 522 data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false" 523 524 >Steel Hammers</a> 525 <div class='sideMenuNavWrap'><ul class='dropdown-menu middle'><li class='sideMenuNavBack'><ion-icon name='arrow-back'></ion-icon>Back</li><li><label>Steel Hammers</label></li><li class='dropdown-item'><a class='NavLevel_1' href='/cat-46-1-5/stryker-pro.htm' title='STRYKER PRO'>STRYKER PRO</a></li><li class='dropdown-item'><a class='NavLevel_1' href='/cat-45-1-6/stryker-xhd.htm' title='STRYKER XHD'>STRYKER XHD</a></li></ul></div> 526 </li> 527 528 <li class="list-item SideNavLevel_4"> 529 <a href="/cat-44-1-4/dead-blow-hammers.htm" 530 title="Dead Blow Hammers" 531 class="sideMenuNavLink NavLevel_4 nav-link" 532 533 >Dead Blow Hammers</a> 534 535 </li> 536 537 <li class="list-item sidebarMenuSearch"><a class="sideMenuSearch" href="../18/categories.htm"><ion-icon name="search"></ion-icon> Search & Browse</a></li> 538 539 </ul> 540 541 </li> 542 543 <li class="nav-side-heading nav-heading-contact">Need help? Contact us...</li> 544 <li class="nav-side-links"> 545 <ul> 546 547 <li class="list-item"><a class="sideMenuCall" href="tel:855-343-9900"><ion-icon name="call"></ion-icon> Call</a></li> 548 549 </ul> 550 </li> 551 552 <li class="nav-side-heading nav-heading-info">Information</li> 553 <li class="nav-side-links"> 554 <ul> 555 556 <li class="list-item"><a class="sideMenuFindStore" href="../32/find-a-store.htm"><ion-icon name="pin"></ion-icon> Store Finder</a></li> 557 558 <li class="list-item"><a class="sideMenuInfo" href="../41/faq.htm"><ion-icon name="help"></ion-icon> FAQ</a></li> 559 560 <li class="list-item"><a class="sideMenuInfo" href="../40/privacy-policy.htm"><ion-icon name="lock-closed"></ion-icon> Privacy Policy</a></li> 561 562 <!--FAQ, Feedback, Careers, Terms, Privacy Policy, About--> 563 <!--<li class="list-item"> 564 <a class="sideMenuSettings" href="#"><svg class="ico-settings" xmlns="http://www.w3.org/2000/svg" width="14" height="16" viewB
564ox="0 0 14 16"> 565 <path fill-rule="evenodd" d="M14 8.77v-1.6l-1.94-.64-.45-1.09.88-1.84-1.13-1.13-1.81.91-1.09-.45-.69-1.92h-1.6l-.63 1.94-1.11.45-1.84-.88-1.13 1.13.91 1.81-.45 1.09L0 7.23v1.59l1.94.64.45 1.09-.88 1.84 1.13 1.13 1.81-.91 1.09.45.69 1.92h1.59l.63-1.94 1.11-.45 1.84.88 1.13-1.13-.92-1.81.47-1.09L14 8.75v.02zM7 11c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3z"/> 566 </svg> Settings</a> 567 </li>--> 568 </ul> 569 </li> 570 571 </ul> 572 </div> 573 </div> 574 </div> 575 </div> 576 577 <div data-type="st-script-menu-custom"></div> 578 579
579<script> 580 581 var cfgPointsStore = "False"; 582 //append polyfill 583 (function (arr) { 584 arr.forEach(function (item) { 585 if (item.hasOwnProperty('append')) { 586 return; 587 } 588 Object.defineProperty(item, 'append', { 589 configurable: true, 590 enumerable: true, 591 writable: true, 592 value: function append() { 593 var argArr = Array.prototype.slice.call(arguments), 594 docFrag = document.createDocumentFragment(); 595 596 argArr.forEach(function (argItem) { 597 var isNode = argItem instanceof Node; 598 docFrag.appendChild(isNode ? argItem : document.createTextNode(String(argItem))); 599 }); 600 601 this.appendChild(docFrag); 602 } 603 }); 604 }); 605 })([Element.prototype, Document.prototype, DocumentFragment.prototype]); 606 607 //prepend polyfill 608 (function (arr) { 609 arr.forEach(function (item) { 610 if (item.hasOwnProperty('prepend')) { 611 return; 612 } 613 Object.defineProperty(item, 'prepend', { 614 configurable: true, 615 enumerable: true, 616 writable: true, 617 value: function prepend() { 618 var argArr = Array.prototype.slice.call(arguments), 619 docFrag = document.createDocumentFragment(); 620 621 argArr.forEach(function (argItem) { 622 var isNode = argItem instanceof Node; 623 docFrag.appendChild(isNode ? argItem : document.createTextNode(String(argItem))); 624 }); 625 626 this.insertBefore(docFrag, this.firstChild); 627 } 628 }); 629 }); 630 })([Element.prototype, Document.prototype, DocumentFragment.prototype]); 631 632 function insertAfterThis(newNode, existingNode) { 633 existingNode.parentNode.insertBefore(newNode, existingNode.nextSibling); 634 } 635 636 function setAttributes(el, attrs) { 637 for(var key in attrs) { 638 el.setAttribute(key, attrs[key]); 639 } 640 } 641 642 window.getScrollbarWidth = function () { 643 var outer = document.createElement('div'); 644 outer.style.visibility = 'hidden'; 645 outer.style.overflow = 'scroll'; 646 outer.style.msOverflowStyle = 'scrollbar'; 647 if (document.body == null) return 0; 648 document.body.appendChild(outer); 649 var inner = document.createElement('div'); 650 outer.appendChild(inner); 651 var scrollbarWidth = (outer.offsetWidth - inner.offsetWidth); 652 outer.parentNode.removeChild(outer); 653 return scrollbarWidth; 654 }; 655 656 var docWidth = function() { 657 return document.body.clientWidth + getScrollbarWidth(); 658 }; 659
660 ///////////////////////////////////////////////////////// 661 // Build Custom Menu 662 /////////////////////////////////////////////////////// 663 function buildMenuCustom() { 664 var customMenu = $("[data-type='st-script-menu-custom']").parent().children('ul'); 665 var customLinks = customMenu.find('> li'); 666 var customSubMenu = customLinks.find('> ul'); 667 var customSubLinks = customSubMenu.find('> li'); 668 if (customMenu.length > 0) { 669 if (customMenu.length > 1) { 670 console.log("%c[st-app] Error: %cMore than 1 unordered list was found in this content section. Only 1 root-level list can be present.", "color: red", "color: black") 671 } else { 672 customMenu.addClass('navbar-nav navbar-center-link '); 673 customLinks.each(function() { 674 $(this).find('> a').addClass('nav-link'); 675 $(this).addClass('nav-item d-flex flex-column justify-content-center'); 676 if ($(this).find('> a').next().is('ul')) { 677 $(this).addClass('dropdown'); 678 679 $(this).find('> a').contents().wrap('<span />'); 680 681 682 $(this).find('> a').addClass('dropdown-toggle').attr({ 683 'data-hover':'dropdown', 684 'role':'button', 685 'aria-haspopup':'true', 686 'aria-expanded':'false', 687 'data-toggle':'' 688 }); 689 } 690 }); 691 customSubMenu.each(function() { 692 $(this).addClass('dropdown-menu'); 693 694 $(this).addClass('middle'); 695 696 }); 697 customSubLinks.each(function() { 698 $(this).addClass('dropdown-item'); 699 if ($(this).contents(':not(:first-child)').length > 0) { 700 $(this).addClass('dropdown-has-content'); 701 $(this).find('img').wrap('<div class="dropdown-content-img" />'); 702 $(this).contents().each(function() { 703 if (this.nodeType == 3 && $.trim(this.nodeValue) != '') { 704 $(this).wrap('<div class="dropdown-content-text" />'); 705 } 706 }); 707 $(this).contents(':not(:first-child):not(.dropdown-content-img)').wrapAll('<div class="dropdown-content" />'); 708 $(this).contents(':not(:first-child)').wrapAll('<div class="dropdown-stage" />'); 709 } 710 }); 711 712 $(customMenu).css('display','none'); 713 714 } 715 } else { 716 717 } 718 $("div[data-type='st-script-menu-custom']").remove(); 719 } 720 buildMenuCustom(); 721
722 ///////////////////////////////////////////////////////// 723 // Build Top Bar Header 724 /////////////////////////////////////////////////////// 725 var buildmenu_header = document.getElementById('header'), 726 buildmenu_navToolbar = document.getElementById('navToolbar'), 727 buildmenu_topBar = document.getElementById('topBar'), 728 buildmenu_toggle = buildmenu_topBar.querySelector('.nav-ui-toggle'), 729 buildmenu_logo = buildmenu_topBar.querySelector('.nav-ui-brand'), 730 buildmenu_menu = document.getElementById('mainMenu'), 731 buildmenu_utils = buildmenu_topBar.querySelector('.nav-ui-utils'), 732 buildmenu_user = buildmenu_topBar.querySelector('.nav-ui-user-menu'), 733 menuListItems = document.getElementById('mainMenuNav').children[0].querySelectorAll('#mainMenuNav > .navbar-nav > li'), 734 buildmenu_user_sibling = '', 735 buildmenu_search = buildmenu_topBar.querySelector('.nav-ui-search'), 736 menuStyle; 737 738 739 740 if(buildmenu_user!=null && buildmenu_user != '') 741 { 742 buildmenu_user_sibling = buildmenu_user.nextSibling 743 } 744 745 if(buildmenu_search==null){ 746 buildmenu_search = '' 747 } 748 749 if(buildmenu_user==null){ 750 buildmenu_user = '' 751 } 752 753 if(buildmenu_utils==null){ 754 buildmenu_utils = '' 755 } 756 757 758 759 760 761 let setToolbarPadding = function(e) { 762 if(!$("#navToolbar").is(":visible")){e=0} 763 if($("#navToolbar").is(":visible")){e=buildmenu_navToolbar.offsetHeight}; 764 buildmenu_topBar.style.paddingTop = ""; 765 var topPaddingCurrent = parseInt(getComputedStyle(document.getElementById('topBar')).paddingTop); 766 if (e !== 0) { 767 if($("#topBar").attr("default-padding") == undefined) 768 { 769 $("#topBar").attr("default-padding", parseInt($("#topBar").css('padding-top'))) 770 }else 771 { 772 topPaddingCurrent = parseInt($("#topBar").attr("default-padding")) 773 } 774 buildmenu_topBar.style.paddingTop = topPaddingCurrent + e +"px"; 775 } else { 776 buildmenu_topBar.style.paddingTop = ""; 777 } 778 }; 779 780 $( document ).ready(function() { 781 if(buildmenu_navToolbar){setToolbarPadding(buildmenu_navToolbar.offsetHeight);} 782 }); 783 784 let headerMO = new MutationObserver((function(mutations) { 785 mutations.forEach(function(e) { 786 if (e.target.id === "header") { 787 var setHeaderMOView = e.target.attributes["data-menu-style"].value; 788 if(buildmenu_navToolbar){ 789 if (setHeaderMOView === "mobile") { 790 setToolbarPadding(0); 791 } else { 792 setToolbarPadding(buildmenu_navToolbar.offsetHeight) 793 } 794 } 795 } 796 }); 797 })); 798 799 headerMO.observe(buildmenu_header, { 800 attributes: true, 801 characterData: true, 802 childList: true, 803 subtree: true, 804 attributeOldValue: true, 805 characterDataOldValue: true 806 }); 807 808 let wrapMenuNode = function(e,cl) { 809 if(e != null && e != ''){ 810 var div = document.createElement('div'); 811 div.className = cl; 812 for(var i = 0; i < e.length; i++){ 813 if(e[i] != null && e[i] != ''){ 814 div.appendChild(e[i]); 815 } 816 } 817 return div; 818 } 819 }; 820 821 let unwrapMenuNode = function(e) { 822 if(e != null && e != ''){ 823 var el = e.parentNode, 824 parent = el.parentNode; 825 if (el.classList.contains('utils-wrap') || el.classList.contains('logo-wrap') || el.classList.contains('menu-wrap') || el.classList.contains('nav-ui-search-dropdown')) { 826 while (el.firstChild) parent.insertBefore(el.firstChild, el); 827 parent.removeChild(el); 828 } 829 } 830 }; 831 832 let resetMenu = function(e) { 833 unwrapMenuNode(buildmenu_utils); 834 unwrapMenuNode(buildmenu_logo); 835 unwrapMenuNode(buildmenu_menu); 836 for(var i = 0; i < menuListItems.length; i++){ 837 menuListItems[i].style.maxWidth = ''; 838 } 839 //for (let item of menuListItems) { 840 // item.style.maxWidth = ''; 841 //} 842 }; 843 844 var currentSearchStyle = ""; 845 let searchStyle = function(e) { 846 switch(e) { 847 case "dropdown": 848 case "dropdown-text": 849 if (currentSearchStyle === "inline" || currentSearchStyle === "") { 850 var searchBtn = document.createElement('a'),
851 searchWrap = document.querySelector('.ui-widgetTN'), 852 searchDropdownWrap = document.createElement('div'); 853 searchBtn.classList.add('nav-ui-search-btn'); 854 searchBtn.classList.add('dropdown-toggle'); 855 searchBtn.classList.add('nav-link'); 856 setAttributes(searchBtn,{ 857 'data-toggle':'dropdown', 858 'role':'button', 859 'aria-haspopup':'true', 860 'aria-expanded':'true', 861 'href':'#' 862 }); 863 if(e=="dropdown-text") 864 { 865 searchBtn.innerHTML = "<strong>Search</strong><ion-icon name='search' role='img' class='hydrated' aria-label='search'></ion-icon>"; 866 } 867 else 868 { 869 searchBtn.innerHTML = "<ion-icon name='search' role='img' class='hydrated' aria-label='search'></ion-icon>"; 870 } 871 searchDropdownWrap.classList.add('nav-ui-search-dropdown'); 872 searchDropdownWrap.classList.add('dropdown-menu'); 873 searchDropdownWrap.classList.add('dropdown-menu-right'); 874 searchDropdownWrap.setAttribute("data-display","static"); 875 if(searchWrap != '' && searchWrap != null){searchDropdownWrap.appendChild(searchWrap);} 876 877 if(buildmenu_search != '' && buildmenu_search != null){buildmenu_search.prepend(searchBtn);} 878 if(buildmenu_search != '' && buildmenu_search != null){buildmenu_search.append(searchDropdownWrap);} 879 currentSearchStyle = "dropdown"; 880 }else 881 { 882 if($('.nav-ui-search-btn').length){ 883 if(e=="dropdown-text") 884 { 885 if($('.nav-ui-search-btn strong').length==0){ 886 $('.nav-ui-search-btn').html("<strong>Search</strong><ion-icon name='search' role='img' class='hydrated' aria-label='search'></ion-icon>"); 887 } 888 } 889 else 890 { 891 if($('.nav-ui-search-btn strong').length>0){ 892 $('.nav-ui-search-btn').html("<ion-icon name='search' role='img' class='hydrated' aria-label='search'></ion-icon>"); 893 } 894 } 895 } 896 } 897 break; 898 case "inline": 899 if (currentSearchStyle === "dropdown" || currentSearchStyle === "") { 900 var searchBtn = document.querySelector('.nav-ui-search-btn'), 901 searchWrap = document.querySelector('.ui-widgetTN'); 902 if (searchBtn) { 903 searchBtn.remove(); 904 } 905 unwrapMenuNode(searchWrap); 906 currentSearchStyle = "inline"; 907 } 908 break; 909 } 910 }; 911 912 let setSearchDisplay = function(e) { 913 var searchFormUI = document.querySelectorAll('.ui-widgetTN')[0], 914 searchFormUI2 = document.querySelectorAll('.ui-widgetTN2')[0], 915 searchInput = document.getElementById('SearchText'), 916 searchTextMobileDummy = document.querySelectorAll('#SearchTextDummy')[0]; 917 switch(e) { 918 case "mobile": 919 if (!searchTextMobileDummy) { 920 var searchMobileDiv = document.createElement('div'); 921 searchMobileDiv.setAttribute('id', 'SearchFormMobile'); 922 document.body.appendChild(searchMobileDiv); 923 924 var dummySearch = document.createElement('div'); 925 dummySearch.classList.add('ui-widgetTN2'); 926 dummySearch.classList.add('mx-2'); 927 dummySearch.innerHTML = '' + 928 '<form name="SearchMobilePlaceholder" onsubmit="return false;" autocomplete="off"><label class="d-none" for="SearchTextDummy"></label>' + 929 '<input autocomplete="off" id="SearchTextDummy" class="form-control mr-2 mt
929-2 mt-sm-0" placeholder="search for products"><ion-icon name="search"></ion-icon></form>'; 930 if(searchFormUI){searchFormUI.parentNode.insertBefore(dummySearch,searchFormUI);} 931 932 var searchArrow = document.createElement('span'); 933 searchArrow.classList.add('close'); 934 searchArrow.innerHTML = '<ion-icon name="arrow-back"></ion-icon>'; 935 if(searchInput){searchInput.parentNode.insertBefore(searchArrow,searchInput);} 936 937 if(searchFormUI){searchMobileDiv.insertBefore(searchFormUI,searchMobileDiv.firstChild);} 938 } 939 break; 940 case "tablet": 941 942 default: 943 if (searchTextMobileDummy) { 944 document.querySelector('#SearchFormMobile').getElementsByClassName('close')[0].remove(); 945 searchFormUI2.parentNode.insertBefore(searchFormUI,searchFormUI2); 946 document.querySelector('#SearchFormMobile').remove(); 947 searchFormUI2.remove(); 948 } 949 break; 950 } 951 }; 952 953 let setMenu = function(e) { 954 switch(e) { 955 case "right": 956 case "justify": 957 case "left": 958 // Data tag for CSS targeting & Define menu style variable 959 if (e === "right") { 960 buildmenu_header.setAttribute("data-menu-style","right"); 961 menuStyle = "right"; 962 } else if (e === "justify") { 963 buildmenu_header.setAttribute("data-menu-style","justify"); 964 menuStyle = "justify"; 965 } else if (e === "left") { 966 buildmenu_header.setAttribute("data-menu-style","left"); 967 menuStyle = "left"; 968 } 969 // Clean Up Menu 970 resetMenu(); 971 // Start Building Menu 972 if(buildmenu_toggle){buildmenu_topBar.appendChild(buildmenu_toggle);} 973 if(buildmenu_utils!='' && buildmenu_search!='' && buildmenu_user_sibling != ''){buildmenu_utils.insertBefore(buildmenu_search,buildmenu_user_sibling);}else if(buildmenu_utils!='' && buildmenu_search!=''){buildmenu_utils.append(buildmenu_search);} 974 buildmenu_topBar.appendChild(wrapMenuNode([buildmenu_logo,buildmenu_menu,buildmenu_utils],"menu-wrap")); 975 setSearchDisplay(); 976 searchStyle("dropdown"); 977 break; 978 979 case "rightutilitybaruseroptions": 980 case "justifyutilitybaruseroptions": 981 case "leftutilitybaruseroptions": 982 // Data tag for CSS targeting & Define menu style variable 983 if (e === "rightutilitybaruseroptions") { 984 buildmenu_header.setAttribute("data-menu-style","right"); 985 if(buildmenu_search!=''){buildmenu_search.setAttribute("data-menu-style","inline-icon");} 986 menuStyle = "right"; 987 } else if (e === "justifyutilitybaruseroptions") { 988 buildmenu_header.setAttribute("data-menu-style","justify"); 989 if(buildmenu_search!=''){buildmenu_search.setAttribute("data-menu-style","inline-icon");} 990 menuStyle = "justify"; 991 } else if (e === "leftutilitybaruseroptions") { 992 buildmenu_header.setAttribute("data-menu-style","left"); 993 if(buildmenu_search!=''){buildmenu_search.setAttribute("data-menu-style","inline-icon");} 994 menuStyle = "left"; 995 } 996 // Clean Up Menu 997 resetMenu(); 998 // Start Building Menu 999 if(buildmenu_toggle){buildmenu_topBar.appendChild(buildmenu_toggle);} 1000 if(buildmenu_utils!=''){buildmenu_utils.prepend(buildmenu_search);} 1001 buildmenu_topBar.appendChild(wrapMenuNode([buildmenu_logo,buildmenu_menu,buildmenu_search],"menu-wrap")); 1002 if(buildmenu_utils!=''){buildmenu_navToolbar.querySelector('.nav-ui-toolbar').appendChild(buildmenu_utils);} 1003 setSearchDisplay(); 1004 searchStyle("dropdown"); 1005 break; 1006 1007 case "center": 1008 // Data tag for CSS targeting 1009 buildmenu_header.setAttribute("data-menu-style","center"); 1010 // Define menu style variable 1011 menuStyle = "center"; 1012 // Clean Up Menu 1013 resetMenu(); 1014 // Start Building Menu 1015 var menuListCenter = Math.floor(menuListItems.length / 2) - 1; 1016 if(buildmenu_toggle){buildmenu_topBar.appendChild(buildmenu_toggle);} 1017 buildmenu_topBar.appendChild(wrapMenuNode([buildmenu_menu],"menu-wrap")); 1018 insertAfterThis(buildmenu_logo,menuListItems[menuListCenter]); 1019 1020 if(buildmenu_utils!='' && buildmenu_search!=''){buildmenu_utils.prepend(buildmenu_search);} 1021 buildmenu_navToolbar.querySelector('.nav-ui-toolbar').appendChild(buildmenu_utils); 1022 1023 setSearchDisplay(); 1024 searchStyle("dropdown-text"); 1025 1026 if (stappConfig.cfgMenuPerfectCenter.toLowerCase() === "true") { 1027 var mainNavWidth = buildmenu_menu.querySelector('.navbar-nav').offsetWidth, 1028 inlineLogoWidth = buildmenu_logo.getElementsByTagName('img').offsetWidth, 1029 trimNavWidth = mainNavWidth - inlineLogoWidth, 1030 setMenuListWidth = (trimNavWidth / menuListItems.length); 1031 for(var i = 0; i < menuListItems.length; i++){ 1032 menuListItems[i].style.maxWidth = setMenuListWidth + 'px'; 1033 } 1034 } 1035 1036 break; 1037 1038 case "logoleft": 1039 // Data tag for CSS targeting 1040 buildmenu_header.setAttribute("data-menu-style","logoleft"); 1041 // Define menu style variable 1042 menuStyle = "logoleft"; 1043 // Clean Up Menu 1044 resetMenu(); 1045 // Start Building Menu 1046 if(buildmenu_toggle){buildmenu_topBar.appendChild(buildmenu_toggle);} 1047 if(buildmenu_utils!=''){buildmenu_utils.prepend(buildmenu_search);} 1048 buildmenu_topBar.appendChild(wrapMenuNode([buildmenu_logo,buildmenu_utils],"logo-wrap")); 1049 // buildmenu_topBar.appendChild(wrapMenuNode([buildmenu_menu],"menu-wrap")); 1050 buildmenu_header.appendChild(buildmenu_menu); 1051 setSearchDisplay(); 1052 searchStyle("inline"); 1053 break; 1054 1055 case "logoleftutilitybaruseroptions": 1056 // Data tag for CSS targeting 1057 buildmenu_header.setAttribute("data-menu-style","logoleft"); 1058 // Define menu style variable 1059 menuStyle = "logoleft"; 1060 // Clean Up Menu 1061 resetMenu(); 1062 // Start Building Menu 1063 if(buildmenu_toggle){buildmenu_topBar.appendChild(buildmenu_toggle);} 1064 if(buildmenu_utils!=''){buildmenu_utils.prepend(buildmenu_search);} 1065 buildmenu_topBar.appendChild(wrapMenuNode([buildmenu_logo,buildmenu_search],"logo-wrap")); 1066 buildmenu_navToolbar.querySelector('.nav-ui-toolbar').appendChild(buildmenu_utils); 1067 setSearchDisplay(); 1068 searchStyle("inline"); 1069 break; 1070 1071 case "logocenter": 1072 // Data tag for CSS targeting 1073 buildmenu_header.setAttribute("data-menu-style","logocenter"); 1074 // Define menu style variable 1075 menuStyle = "logocenter"; 1076 // Clean Up Menu 1077 resetMenu(); 1078 // Start Building Menu 1079 if(buildmenu_toggle){buildmenu_topBar.appendChild(buildmenu_toggle);} 1080 buildmenu_topBar.appendChild(wrapMenuNode([buildmenu_search,buildmenu_logo,buildmenu_utils],"logo-wrap")); 1081 buildmenu_header.appendChild(buildmenu_menu); 1082 if((buildmenu_utils.innerText=='' && buildmenu_search=='') || (buildmenu_search=='' || buildmenu_utils.innerText=='')){$(buildmenu_logo).addClass("logo-center-alone")} 1083 if($(".logo-center-alone").length && buildmenu_utils.innerText!=''){$(".logo-center-alone").css("margin-right", "-" + buildmenu_utils.offsetWidth + "px") } 1084 if($(".logo-center-alone").length && buildmenu_search!=''){$(".logo-center-alone").css("margin-left", "
1084-" + buildmenu_search.offsetWidth + "px") } 1085 setSearchDisplay(); 1086 searchStyle("inline"); 1087 break; 1088 1089 case "logocenterinline": 1090 // Data tag for CSS targeting 1091 buildmenu_header.setAttribute("data-menu-style","logocenterinline"); 1092 // Define menu style variable 1093 menuStyle = "logocenterinline"; 1094 // Clean Up Menu 1095 resetMenu(); 1096 // Start Building Menu 1097 if(buildmenu_toggle){buildmenu_topBar.appendChild(buildmenu_toggle);} 1098 if(buildmenu_utils!='' && buildmenu_search!='' && buildmenu_user_sibling != ''){buildmenu_utils.insertBefore(buildmenu_search,buildmenu_user_sibling);}else if(buildmenu_utils!='' && buildmenu_search!=''){buildmenu_utils.prepend(buildmenu_search);} 1099 buildmenu_topBar.appendChild(wrapMenuNode([buildmenu_logo],"logo-wrap")); 1100 buildmenu_menu.appendChild(buildmenu_utils); 1101 buildmenu_header.appendChild(buildmenu_menu); 1102 setSearchDisplay(); 1103 searchStyle("dropdown"); 1104 break; 1105 1106 case "tablet": 1107 // Data tag for CSS targeting 1108 buildmenu_header.setAttribute("data-menu-style","tablet"); 1109 // Define menu style variable 1110 menuStyle = "tablet"; 1111 // Clean Up Menu 1112 resetMenu(); 1113 // Start Building Menu 1114 if($(".logo-center-alone").length){$(".logo-center-alone").css("margin-right", "0px") } 1115 if(buildmenu_utils!='' && buildmenu_search!='' && buildmenu_user_sibling != ''){buildmenu_utils.insertBefore(buildmenu_search,buildmenu_user_sibling);}else if(buildmenu_utils!='' && buildmenu_search!=''){buildmenu_utils.prepend(buildmenu_search);} 1116 if(buildmenu_toggle){buildmenu_topBar.appendChild(wrapMenuNode([buildmenu_toggle,buildmenu_logo,buildmenu_utils],"utils-wrap"));}else{buildmenu_topBar.appendChild(wrapMenuNode([buildmenu_logo,buildmenu_utils],"utils-wrap"));} 1117 buildmenu_header.appendChild(buildmenu_menu); //Note: This is moved -outside- of the topbar 1118 1119 setSearchDisplay("tablet"); 1120 searchStyle("dropdown"); 1121 break; 1122 1123 case "mobile": 1124 // Data tag for CSS targeting 1125 buildmenu_header.setAttribute("data-menu-style","mobile"); 1126 // Define menu style variable 1127 menuStyle = "mobile"; 1128 // Clean Up Menu 1129 resetMenu(); 1130 // Start Building Menu 1131 //if(buildmenu_toggle){buildmenu_topBar.appendChild(wrapMenuNode([buildmenu_toggle,buildmenu_logo,buildmenu_utils],"utils-wrap"));} 1132 if(buildmenu_toggle){buildmenu_topBar.appendChild(wrapMenuNode([buildmenu_toggle,buildmenu_logo,buildmenu_utils],"utils-wrap"));}else{buildmenu_topBar.appendChild(wrapMenuNode([buildmenu_logo,buildmenu_utils],"utils-wrap"));} 1133 if(buildmenu_search){buildmenu_topBar.appendChild(buildmenu_search);} 1134 buildmenu_header.appendChild(buildmenu_menu); //Note: This is moved -outside- of the topbar 1135 searchStyle("inline"); 1136 setSearchDisplay("mobile"); 1137 break; 1138 1139 default: 1140 //console.log("%cSTApp Error: %c\"cfgBrandPos\" configured position is not a valid value.", "color: red", "color: black"); 1141 } 1142 1143 }; 1144 1145 var setMenuStyle = stappConfig.cfgBrandPos.toLowerCase(); 1146 1147 var responsiveMenuDisplay = function(e) { 1148 switch (true) { 1149 case (e >= 992): 1150 setMenu(setMenuStyle); 1151 break; 1152 case (e < 992 && e >= 576): 1153 setMenu("tablet"); 1154 break; 1155 case (e < 576): 1156 setMenu("mobile"); 1157 break; 1158 default: 1159 break; 1160 } 1161 }; 1162 1163 responsiveMenuDisplay(docWidth()); 1164 window.addEventListener("orientationchange", function() { responsiveMenuDisplay(docWidth()) }); 1165 window.addEventListener("resize", function() { responsiveMenuDisplay(docWidth()) }, false); 1166 1167 $(document).find('#header').parent().addClass('mainMenu'); 1168 1169 1170
1171 function preventDropdownToggle() { 1172 var docWidth = document.body.clientWidth + getScrollbarWidth(); 1173 var customMenu = $("#mainMenuNav > .navbar-nav"); 1174 var customLinks = customMenu.find('> li'); 1175 if (customMenu.length > 0) { 1176 if (customMenu.length <= 1) { 1177 customLinks.each(function() { 1178 if (docWidth < 992) { 1179 if ($(this).find('> a').next().is('ul')) { 1180 $(this).find('> a').addClass('prevent-dropdown-toggle').attr({ 1181 'role':'button', 1182 'aria-haspopup':'true', 1183 'aria-expanded':'false' 1184 }).removeAttr('data-toggle','data-hover'); 1185 } 1186 } else { 1187 $(this).find('> a').removeClass('prevent-dropdown-toggle'); 1188 } 1189 }) 1190 } 1191 } 1192 } 1193 1194 function FinalSort(a,b) { 1195 if(a.catName > b.catName) return 1; 1196 if(a.catName < b.catName) return -1; 1197 if(a.catName == b.catName) return 0; 1198 } 1199 1200 $(document).ready(function() { 1201 1202 }); 1203 1204 1205 $(window).resize(function() { 1206 preventDropdownToggle(); 1207 }); 1208 $(document).ready(function() { 1209 preventDropdownToggle(); 1210 }); 1211 1212 </script>
1212 1213</div><div class="clearContainer"></div></div> 1214<div id="row-48" class="container-row row-header"><div id="cell-48" class="container-cell header"> 1215 1216 1217<ul class="slider slider-media" data-slider-height="650" id="homepageHero"> 1218 <li class="slide-1"><img alt="" class="homeslide-bg" data-animation="fadeIn" src="../DSN/wwwabchammerscom/Content/Images/slide-4-bg.png" /> <img alt="" class="homeslide-title" data-animation="slideInLeft" src="../DSN/wwwabchammerscom/Content/Images/slide-4-title.png" /><img alt="" class="homeslide-prod" data-animation="rotateInDownRight" src="../dsn/wwwabchammerscom/content/images/slide-4.png" /> <a href="../cat-42-1-1/brass-hammers.htm" target="_self"><img alt="" class="homeslide-btn" data-animation="zoomIn" src="../DSN/wwwabchammerscom/Content/Images/shop-btn.png" /></a> 1219 1220 <div class="homeslide-text" data-animation="fadeInUp">Our Brass Hammers are our most durable non-marring, non-sparking hammers we offer and should always be used in place of steel hammers in any metal working application.</div> 1221 </li> 1222 <li class="slide-2"><img alt="" class="homeslide-bg" data-animation="fadeIn" src="../DSN/wwwabchammerscom/Content/Images/slide-3-bg.png" /> <img alt="" class="homeslide-title" data-animation="slideInLeft" src="../DSN/wwwabchammerscom/Content/Images/slide-3-title.png" /><img alt="" class="homeslide-prod" data-animation="rotateInDownRight" src="../dsn/wwwabchammerscom/content/images/slide-3.png" /> <a href="../cat-43-1-2/bronze-hammers.htm" target="_self"><img alt="" class="homeslide-btn" data-animation="zoomIn" src="../DSN/wwwabchammerscom/Content/Images/shop-btn.png" /></a> 1223 <div class="homeslide-text" data-animation="fadeInUp">Our non-sparking, non-marring Bronze/Copper line is the softest face hammer we offer, making them uniquely designed for use when surface protection is most critical.</div> 1224 </li> 1225 <li class="slide-3"><img alt="" class="homeslide-bg" data-animation="fadeIn" src="../DSN/wwwabchammerscom/Content/Images/slide-2-bg.png" /> <img alt="" class="homeslide-title" data-animation="fadeInLeft" src="../DSN/wwwabchammerscom/Content/Images/slide-2-title.png" /><img alt="" class="homeslide-prod" data-animation="rotateInDownRight" src="../dsn/wwwabchammerscom/content/images/slide-2.png" /> <a href="../cat-18-1-3/steel-hammers.htm" target="_self"><img alt="" class="homeslide-btn" data-animation="zoomIn" src="../DSN/wwwabchammerscom/Content/Images/shop-btn.png" /></a> 1226 <div class="homeslide-text" data-animation="fadeInUp">Our Stryker line of steel hammers are tested to over 36,000 strikes without failure, making them “Pound for Pound, the World’s Strongest Hammer”. 1227 <p><i>Made in South Africa</i></p> 1228 </div> 1229 </li> 1230 <li class="slide-4"><img alt="" class="homeslide-bg animate" data-animation="fadeIn" src="../DSN/wwwabchammerscom/Content/Images/slide-1-bg.png" /> <img alt="" class="homeslide-title animate" data-animation="fadeInLeft" src="../DSN/wwwabchammerscom/Content/Images/slide-1-title.png" /> <img alt="" class="homeslide-prod animate" data-animation="rotateInDownRight" src="../dsn/wwwabchammerscom/content/images/slide-1.png" /> <a href="../cat-44-1-4/dead-blow-hammers.htm" target="_self"><img alt="" class="homeslide-btn animate" data-animation="zoomIn" src="../DSN/wwwabchammerscom/Content/Images/shop-btn.png" /></a> 1231 <div class="homeslide-text animate" data-animation="fadeInUp">Our Dead Blow Hammers are engineered to perform better and outlast other plastic type hammers by 10-20 times, setting a new standard for soft face performance.</div> 1232 </li> 1233</ul> 1234 1235 1236 1237</div><div class="clearContainer"></div></div> 1238<div id="row-49" class="container-row row-content"><div id="cell-49" class="container-cell content"> 1239 1240<div class="fullwidth contain"> 1241 1242 1243<img alt="Pound for pound, the world's greatest hammers." class="mw-100" src="../DSN/wwwabchammerscom/Content/Images/abc-tagline.png" /> 1244 1245 1246 1247<div class="row no-gutters my-5"> 1248 <div class="col-12 col-md-3"> 1249 <div class="cta-block-wrap"> 1250 <div class="cb-image"><img src="../dsn/wwwabchammerscom/content/images/cta-block-1.jpg" /> 1251 </div> 1252 <a class="cb-stage" href="../34/applications-industries.htm"><span class="cb-ico"><img src="../dsn/wwwabchammerscom/content/images/cta-ico-industries.png" /> </span> <span class="cb-text">Applications & Industries </span><span class="cb-arrow"><i class="material-icons">arrow_forward_ios</i></span></a> 1253 </div> 1254 </div> 1255 <div class="col-12 col-md-3"> 1256 <div class="cta-block-wrap"> 1257 <div class="cb-image"><img src="../dsn/wwwabchammerscom/content/images/cta-block-2.jpg" /> 1258 </div> 1259 <a class="cb-stage" href="../37/handle-options.htm"><span class="cb-ico"><img src="../dsn/wwwabchammerscom/content/images/cta-ico-handle.png" /> </span> <span class="cb-text">
1259Handle Options </span><span class="cb-arrow"><i class="material-icons">arrow_forward_ios</i></span></a> 1260 </div> 1261 </div> 1262 <div class="col-12 col-md-3"> 1263 <div class="cta-block-wrap"> 1264 <div class="cb-image"><img src="../dsn/wwwabchammerscom/content/images/cta-block-3.jpg" /> 1265 </div> 1266 <a class="cb-stage" href="../36/hammer-materials.htm"><span class="cb-ico"><img src="../dsn/wwwabchammerscom/content/images/cta-ico-material.png" /> </span> <span class="cb-text">Hammer Materials </span><span class="cb-arrow"><i class="material-icons">arrow_forward_ios</i></span></a> 1267 </div> 1268 </div> 1269 <div class="col-12 col-md-3"> 1270 <div class="cta-block-wrap"> 1271 <div class="cb-image"><img src="../dsn/wwwabchammerscom/content/images/cta-block-4.jpg" /> 1272 </div> 1273 <a class="cb-stage" href="../32/where-to-buy.htm"><span class="cb-ico"><img src="../dsn/wwwabchammerscom/content/images/cta-ico-shop.png" /> </span> <span class="cb-text">Where To Buy </span><span class="cb-arrow"><i class="material-icons">arrow_forward_ios</i></span></a> 1274 </div> 1275 </div> 1276</div> 1277 1278 1279 1280 1281<div class="row my-5 homecontent"> 1282<div class="col-12 col-md-8 d-flex flex-row align-items-center"> 1283<p><strong>ABC HAMMERS</strong> are proudly made in the USA and have set the quality standard for over 50 years. The hammers are used for all non-marring and non-sparking applications, and are available in brass and bronze. In addition to its standard line of hammers, ABC Hammers, Inc. also manufactures dead blow and soft face hammers as well as custom hammers to meet specific needs of its OEM customers... <a href="../31/about-us.htm" target="_self"><strong>READ MORE <i class="fas fa-chevron-right"></i></strong></a></p> 1284</div> 1285 1286<div class="col-12 col-md-4"><img alt="" class="mw-100 w-100" src="../DSN/wwwabchammerscom/Content/Images/thor-hammer-logo.png" /></div> 1287</div> 1288 1289 1290 1291</div> 1292 1293</div><div class="clearContainer"></div></div> 1294<div id="row-50" class="container-row row-footer-top"><div id="cell-50" class="container-cell footer-top"> 1295 1296 1297<div class="row text-center cta-members fullwidth contain no-gutters"> 1298<div class="member-logo col-6 col-md-4 col-lg-2"><a href="http://carlysis.com" target="_blank"><img alt="" src="../DSN/wwwabchammerscom/Content/Images/member-carlysis.jpg" /> </a></div> 1299 1300<div class="member-logo col-6 col-md-4 col-lg-2"><a href="http://www.afsinc.org/" target="_blank"><img alt="" src="../DSN/wwwabchammerscom/Content/Images/member-afs.jpg" /> </a></div> 1301 1302<div class="member-logo col-6 col-md-4 col-lg-2"><a href="http://www.hti.org/" target="_blank"><img alt="" src="../DSN/wwwabchammerscom/Content/Images/member-hti.jpg" /> </a></div> 1303 1304<div class="member-logo col-6 col-md-4 col-lg-2"><a href="http://www.sema.org/" target="_blank"><img alt="" src="../DSN/wwwabchammerscom/Content/Images/member-sema.jpg" /> </a></div> 1305 1306<div class="member-logo col-6 col-md-4 col-lg-2"><a href="http://www.isapartners.org/" target="_blank"><img alt="" src="../DSN/wwwabchammerscom/Content/Images/member-isa.jpg" /> </a></div> 1307 1308<div class="member-logo col-6 col-md-4 col-lg-2"><a href="http://www.stafda.org/" target="_blank"><img alt="" src="../DSN/wwwabchammerscom/Content/Images/member-stafda.jpg" /> </a></div> 1309</div> 1310 1311 1312 1313</div><div class="clearContainer"></div></div> 1314<div id="row-51" class="container-row row-footer"><div id="cell-51" class="container-cell footer"> 1315 1316 1317<div> 1318<ul class="footer-menu"> 1319 <li><a href="../31/about-us.htm">About ABC Hammers</a></li> 1320 <li><a href="../27/contact-us.htm">Contact Us</a></li> 1321 <li><a href="../32/where-to-buy.htm">Where to Buy</a></li> 1322 <li class="footer-flyer-link"><a href="../DSN/wwwabchammerscom/Content/New 2020 Master Product Catalog.pdf">View Catalog</a><a href="../dsn/wwwabchammerscom/content/pdf/ABC-Catalog-Espanol.pdf" target="abcCatalog">(Ver catálogo)</a></li> 1323 <li class="footer-flyer-link"><a href="../dsn/wwwabchammerscom/content/pdf/ABC-Flyer.pdf" target="abcFlyer">View Current Flyer</a><a href="../dsn/wwwabchammerscom/content/pdf/ABC-Flyer-Espanol.pdf" target="abcFlyer">(Ver folleto actual)</a></li> 1324</ul> 1325</div> 1326 1327 1328 1329 1330<div> 1331<ul class="footer-menu"> 1332 <li><a href="../34/applications-industries.htm">Applications & Industries</a></li> 1333 <li><a href="../35/oem-hammers.htm">OEM Hammers</a></li> 1334 <li><a href="../36/hammer-materials.htm">Hammer Materials</a></li> 1335 <li><a href="../37/handle-options.htm">Handle Options</a></li> 1336 <li><a href="../38/safety-sheets.htm">Safety Sheets</a></li> 1337</ul> 1338</div> 1339 1340 1341 1342 1343<div> 1344<ul class="footer-menu"> 1345 <li><a href="../26/register.htm">Distributor Registration</a></li> 1346 <li>
1346<a href="../39/lifetime-warranty.htm">Lifetime Warranty</a></li> 1347 <li><a href="../33/in-the-news.htm">In the News</a></li> 1348 <li><a href="../41/faq.htm">FAQs</a></li> 1349 <li><a href="../40/privacy-policy.htm">Privacy Policy</a></li> 1350</ul> 1351</div> 1352 1353 1354 1355 1356<div> 1357 <ul class="footer-menu-info"> 1358 <li> 1359 <h4>ABC Hammers, Inc. 1360 </h4> 1361 </li> 1362 <li>7216 21st St. E</li> 1363 <li>Sarasota, FL 34243</li> 1364 <li><strong>Phone:</strong> <a href="tel:708.343.9900">708.343.9900</a></li> 1365 <li><strong>Toll Free:</strong> <a href="855.343.9900">855.343.9900</a></li> 1366 </ul> 1367</div> 1368 1369 1370<div data-type="st-script-footer"> 1371
1371<script> 1372 function buildFooter() { 1373 $("[data-type='st-script-footer']").parent().addClass('footer'); 1374 $("[data-type='st-script-footer']").parent().parent().addClass('row-footer'); 1375 1376 var currentYear = (new Date).getFullYear(); 1377 1378 var footerNav = $("[data-type='st-script-footer']").parent().children('ul'); 1379 var footerBlock = $("[data-type='st-script-footer']"); 1380 1381 if (footerNav.length > 0) { 1382 footerNav.each(function() { 1383 1384 $(this).parent().prepend($(this)); 1385 $(this).wrapAll('<div class="container" />').wrapAll('<div class="row" />').wrapAll('<div class="footer-nav col-12" />'); 1386 1387 }); 1388 1389 footerBlock.parent().prepend($(document).find('.footer-nav')); 1390 1391 } 1392 1393 1394 $(footerBlock).before('<div class="footer-col"><ul class="nav-ui-social footer-social"></ul></div>'); 1395 1396 $(footerBlock).parent().find('.nav-ui-social').html(window.socialLinks); 1397 1398 1399 var footerBlocks = $(document).find("[data-type='st-script-footer']").parent().children('div:not([data-type=\'st-script-footer\']):not(.container):not(.footer-nav)'); 1400 1401 if (footerBlocks.length >= 1) { 1402 if (footerBlocks.length === 1) { 1403 footerBlocks.each(function() { 1404 $(this).hasClass('static') ? $(this).addClass('footer-col') : $(this).addClass('footer-col col'); 1405 }); 1406 } 1407 if (footerBlocks.length > 1) { 1408 1409 var colCalc = (12/(footerBlocks.length - 1)); 1410 1411 var colCount = 0; 1412 1413 if (footerBlocks.length >= 5) { 1414 colCount = 'col-md'; 1415 } else { 1416 colCount = 'col-md-' + colCalc; 1417 } 1418 1419 footerBlocks.each(function() { 1420 if ($(this).find('.footer-social').length > 0) { 1421 1422 $(this).addClass('footer-social-wrap col-12 mt-0 mt-md-3'); 1423 1424 } else { 1425 if ($(this).hasClass('footer-nav')) { 1426 1427 $(this).hasClass('static') ? $(this).addClass('') : $(this).addClass('col-12'); 1428 // $(this).addClass('col-12'); 1429 1430 } else { 1431 $(this).hasClass('static') ? $(this).addClass('footer-col mb-4 mb-md-0') : $(this).addClass('footer-col col-12 ' + colCount + ' mb-4 mb-md-0'); 1432 // $(this).addClass('footer-col col-12 ' + colCount + ' mb-4 mb-md-0'); 1433 } 1434 } 1435 }); 1436 } 1437 1438 $(footerBlocks).wrapAll('<div class="footer-blocks container fullwidth contain" />').wrapAll('<div class="row" />'); 1439 } else { 1440 //console.log("%c[st-app] Error:%c No divs detected inside this container - unable to construct footer. ", "color: red", "color: black") 1441 } 1442 1443 $('.footer').append('' + 1444 '<div class="fullwidth col footer-copy py-3">' + 1445 '©'+ (new Date).getFullYear() + ' ' + 1446 stappConfig.cfgShopName + 1447 1448 '<div class="copy-delim px-3 d-inline-block">•</div>' + 1449 1450 'Site Design and Hosting by <a href="https://www.speartek.com" rel="noopener" target="_blank" title="Speartek: Custom Site Design and Hosting">Speartek</a>' + 1451 1452 ' </div>' 1453 ); 1454 $('.footer-sub').wrapAll('<div class="footer-sub-section fullwidth"><div class="container row mx-auto"></div></div>'); 1455 $('.footer-copy').before($('.footer-sub-section')); 1456 } 1457 $(document).ready(function() { 1458 buildFooter(); 1459 }); 1460 </script>
1460 1461</div> 1462 1463 1464</div><div class="clearContainer"></div></div> 1465</div>
1465<script src="//cdn.jsdelivr.net/npm/[email protected]/dist/AppendGrid.min.js"></script>
1465 1466 1467
1467<script> 1468 $(document).ready(function() { 1469 // Set Top Level links in mobile menu as clickable 1470 $('#mainMenuNav > ul > li > .dropdown-toggle > span').on('click touch', function (e) { 1471 if ($(window).width() <= 990.998) { 1472 var senderElement = e.target; 1473 if($(e.target).is("span")) { 1474 window.location = $(this).attr('href'); 1475 e.stopPropagation(); 1476 return true; 1477 } 1478 } 1479 }); 1480 }) 1481 </script>
1481 1482
1483<script> 1484 1485 $(window).on('load', function(){ 1486 try{ 1487 $('.homeslide').slick('slickPlay'); 1488 }catch(e){} 1489 }); 1490 1491 $(".homeslide").removeClass("fullwidth") 1492 1493 $(".homeslide").attr("data-slider-height", "650") 1494 $(".homeslide").addClass("fixedHeightSlider") 1495 1496</script>
1496 1497
1498<script src="../st-app/lib/gijgo-ui/js/gijgo.js"></script>
vendor: 2 bytes, line 1498
1498
1499<script src="../st-app/lib/gijgo-ui/js/gijgo-datepicker.min.js"></script>
vendor: 2 bytes, line 1499
1499
1500<script src="../st-app/modules/st-bootstrap/dist/st-bootstrap.js?v=1.17172"></script>
1500 1501 1502<a href="#" id="back-to-top" title="Back to top"> 1503 <i class="fas fa-angle-up"></i> 1504</a> 1505 1506 1507<!--bootFilter--> 1508 1509<!-- Filters Modal --> 1510 1511 1512 1513<!-- General Modal --> 1514<div class="modal fade" id="genModal" tabindex="-1" role="dialog" aria-labelledby="genModal" aria-hidden="true"> 1515 <div class="modal-dialog modal-dialog-centered" role="document"> 1516 <div class="modal-content"> 1517 <div class="modal-header"> 1518 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 1519 <img src="../../st-app/modules/st-bootstrap/dist/static/icons/ico-ui-close.png"> 1520 </button> 1521 </div> 1522 <div class="modal-body"></div> 1523 </div> 1524 </div> 1525</div> 1526 1527<!-- Media Modal --> 1528<div class="modal fade" id="mediaModal" tabindex="-1" role="alertdialog" aria-modal="true" aria-labelledby="mediaModalLabel" aria-hidden="true"> 1529 <div class="modal-dialog modal-dialog-centered" role="document"> 1530 <div class="modal-content"> 1531 <div class="modal-header"> 1532 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 1533 <img src="../../st-app/modules/st-bootstrap/dist/static/icons/ico-ui-close.png"> 1534 </button> 1535 </div> 1536 <div class="modal-body"></div> 1537 </div> 1538 </div> 1539</div> 1540 1541<!-- Video Modal --> 1542<div class="modal fade" id="videoModal" tabindex="-1" role="dialog" aria-labelledby="videoModalLabel" aria-hidden="true"> 1543 <div class="modal-dialog modal-dialog-centered" role="document"> 1544 <div class="modal-content"> 1545 <div class="modal-body"> 1546 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 1547 <span aria-hidden="true">×</span> 1548 </button> 1549 <!-- 16:9 aspect ratio --> 1550 <div class="embed-responsive embed-responsive-16by9"> 1551 <!-- <iframe class="embed-responsive-item" src="../blank.html" id="video" allowscriptaccess="always" allow="autoplay"></iframe> --> 1552 <iframe id="video" 1553 src="about:blank" 1554 title="YouTube video player" 1555 frameborder="0" 1556 allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" 1557 referrerpolicy="strict-origin-when-cross-origin" 1558 allowfullscreen> 1559 </iframe> 1560 1561 1562 </div> 1563 </div> 1564 </div> 1565 </div> 1566</div> 1567 1568<!-- PDF Modal --> 1569<div class="modal fade" id="pdfModal" tabindex="-1" role="dialog" aria-labelledby="pdfModal" aria-hidden="true"> 1570 <div class="modal-dialog ui-drag" role="document"> 1571 <div class="modal-content ui-resize"> 1572 <div class="modal-header"> 1573 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 1574 <img src="../../st-app/modules/st-bootstrap/dist/static/icons/ico-ui-close.png"> 1575 </button> 1576 </div> 1577 <div class="modal-body"> 1578 <iframe src="../blank.html"></iframe> 1579 </div> 1580 </div> 1581 </div> 1582</div> 1583 1584<!-- Map Modal --> 1585<div class="modal fade" id="mapModal" tabindex="-1" role="dialog" aria-labelledby="mapModal" aria-hidden="true"> 1586 <div class="modal-dialog modal-dialog-centered" role="document"> 1587 <div class="modal-content"> 1588 <div class="modal-header"> 1589 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 1590 <img src="../../st-app/modules/st-bootstrap/dist/static/icons/ico-ui-close.png"> 1591 </button> 1592 </div> 1593 <div class="modal-body"> 1594 <iframe src="../blank.html"></iframe> 1595 </div> 1596 </div> 1597 </div> 1598</div> 1599 1600<!-- Login Modal --> 1601<div class="modal fade" id="bootLogin" tabindex="-1" role="dialog" aria-labelledby="bootLoginTitle" aria-hidden="true" aria-modal="true"> 1602 <div class="modal-dialog modal-dialog-centered" role="document"> 1603 <div class="modal-content"> 1604 <div class="modal-header"> 1605 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 1606 <img src="../../st-app/modules/st-bootstrap/dist/static/icons/ico-ui-close.png"> 1607 </button> 1608 </div> 1609 <div class="modal-body"> 1610 <iframe src="../blank.html"></iframe> 1611 </div> 1612 </div> 1613 </div> 1614</div> 1615 1616<!-- QuickView Modal --> 1617<div class="modal fade" id="bootQuickView" tabindex="-1" role="dialog" aria-labelledby="bootQuickView" aria-hidden="true"> 1618 <div class="modal-dialog modal-dialog-centered" role="document"> 1619 <div class="modal-content"> 1620 <div class="modal-header"> 1621 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 1622 <img src="../../st-app/modules/st-bootstrap/dist/static/icons/ico-ui-close.png"> 1623 </button> 1624 </div> 1625 <div class="modal-body"> 1626 <iframe id="QuickViewModaliFrame" src="../blank.html"></iframe> 1627 </div> 1628 </div> 1629 </div> 1630</div> 1631 1632 1633<!--Blackout--> 1634<div id="blackout"></div> 1635 1636 1637
1638<script> 1639 // iFrame PDF Modal ------------------------------------------------------------------ 1640 var bsPdfModal = $('#pdfModal'), 1641 bsPdfModalFrame = bsPdfModal.find('iframe'); 1642 1643 bsPdfModalFrame[0].contentWindow.location = '/blank.html'; 1644 1645 function bsPdfUrlSet(link){ 1646 bsPdfModalFrame.attr("data-link", link); 1647 } 1648 1649 $('a[data-target="#pdfModal"]').on('click touch', function (e) { 1650 e.preventDefault(); 1651 var bsPdfUrl = $(this).attr("data-link"); 1652 bsPdfUrlSet(bsPdfUrl); 1653 }); 1654 1655 bsPdfModal.on('show.bs.modal', function () { 1656 bsPdfModalFrame.attr('src', bsPdfModalFrame.attr("data-link")); 1657 $('.modal-content.ui-resize').resizable({ 1658 alsoResize: ".modal-dialog.ui-resize", 1659 minHeight: 300, 1660 minWidth: 300 1661 }); 1662 $('.modal-dialog.ui-drag').draggable(); 1663 }); 1664 1665 bsPdfModal.on('hidden.bs.modal', function () { 1666 bsPdfModalFrame.attr('src', '#'); 1667 }); 1668 1669 // iFrame Map Modal ------------------------------------------------------------------ 1670 var bsMapModal = $('#mapModal'), 1671 bsMapModalFrame = bsMapModal.find('iframe'); 1672 1673 bsMapModalFrame[0].contentWindow.location = '/blank.html'; 1674 1675 function bsMapUrlSet(map){ 1676 bsMapModalFrame.attr("data-map", map); 1677 } 1678 1679 $('a[data-target="#mapModal"]').on('click touch', function (e) { 1680 e.preventDefault(); 1681 var bsMapUrl = $(this).attr("data-map"); 1682 bsMapUrlSet(bsMapUrl); 1683 }); 1684 1685 bsMapModal.on('show.bs.modal', function () { 1686 bsMapModalFrame.attr('src', bsMapModalFrame.attr("data-map")); 1687 }); 1688 1689 bsMapModal.on('hidden.bs.modal', function () { 1690 bsMapModalFrame.attr('src', '#'); 1691 }); 1692 1693 // iFrame Login Modal ------------------------------------------------------------------ 1694 var bsLogin = $('#bootLogin').find('iframe'); 1695 bsLogin[0].contentWindow.location = '/blank.html'; 1696 $('#bootLogin').on('show.bs.modal', function () { 1697 bsLogin.attr('src', '../' + stappConfig.cfgLoginModal + '/sign-in-modal.htm'); 1698 }); 1699 1700 function showQuickView(qvprodid) 1701 { 1702 var bsQVModal = $('#bootQuickView').find('iframe'); 1703 bsQVModal.attr('src', '/blank.html'); 1704 bsQVModal.css("visibility", "hidden"); 1705 setTimeout(function(){ 1706 var QuickViewURL = qvprodid.replace('prod-' + (qvprodid.split("-")[1]) + '-', 'prod--') 1707 bsQVModal.attr('src', QuickViewURL); 1708 $('#bootQuickView').modal(); 1709 }, 250); 1710 } 1711 1712 function showNotifyMe(url) 1713 { 1714 var bsNMModal = $('#inventoryModal').find('iframe'); 1715 bsNMModal.attr('src', '/blank.html'); 1716 bsNMModal.css("visibility", "hidden"); 1717 setTimeout(function(){ 1718 bsNMModal.attr('src', url); 1719 $('#inventoryModal').modal(); 1720 }, 250); 1721 } 1722 1723 $(function(){ 1724 $('#QuickViewModaliFrame').on('load', function(){ 1725 this.style.height = this.contentWindow.document.body.offsetHeight + 20 + 'px'; 1726 $('#QuickViewModaliFrame').css("visibility", "visible"); 1727 }); 1728 1729 $('#NotifyEmailiFrame').on('load', function(){ 1730 this.style.height = this.contentWindow.document.body.offsetHeight + 20 + 'px'; 1731 $('#NotifyEmailiFrame').css("visibility", "visible"); 1732 }); 1733 1734 bsLogin.on('load', function(){ 1735 this.style.height = this.contentWindow.document.body.offsetHeight + 'px'; 1736 }); 1737 }); 1738 1739 window.hideQuickView = function(){ 1740 $('#bootQuickView').modal('hide'); 1741 }; 1742 1743 window.hideNofiyMe = function(){ 1744 $('#inventoryModal').modal('hide'); 1745 var bsNMModal = $('#inventoryModal').find('iframe'); 1746 bsNMModal.attr('src', '/blank.html'); 1747 }; 1748 1749</script>
1749 1750<form name="LogoutForm" id="LogoutForm" method="post" action="../17/homepage.htm"> 1751 <input type="hidden" id="Logoff" name="Logoff" value="Logoff"> 1752</form>
1753<script> 1754$("form").each(function() { 1755 if($(this).attr("action") == null || $(this).attr("action") == undefined || $(this).attr("action") == "") 1756 { 1757 $(this).attr('action', '../17/homepage.htm') 1758 } 1759}); 1760</script>
1760 1761
1762<script> 1763 1764 var checkCFPage = stappConfig.cfgFormPages.split(",") 1765 if(checkCFPage.includes('17')) 1766 { 1767 document.write('<scr'+'ipt type="text/javascript" src="../st-app/lib/custom-forms/CFManagerBS4.js?v=5"></scr'+'ipt>'); 1768 } 1769 1770</script>
1770 1771
1772<script src="/vlInclude/linq.min.js"></script>
vendor: 2 bytes, line 1772
1772
1773<script> 1774var RESTHost = window.location.protocol + "//" + window.location.host + "/st"; 1775if (RESTHost.indexOf(":51877") != -1) 1776 RESTHost = RESTHost.replace("/st", ""); 1777function LogAjaxError(event, jqXHR, ajaxSettings, thrownError) {} 1778function RestCall(url, params, ok, error, method, timeout) { 1779 var type = "PUT"; 1780 var tOut = 60000; 1781 if (!isNaN(timeout)) { 1782 tOut = timeout; 1783 } 1784 if (method != undefined) { 1785 type = method; 1786 } 1787 $.ajax({ 1788 dataType: "json", 1789 type: type, 1790 data: JSON.stringify(params), 1791 contentType: 'application/json', 1792 url: RESTHost + url, 1793 timeout: tOut, 1794 success: function (response) { 1795 if (ok != undefined) { 1796 try { 1797 ok(response); 1798 } catch (ex) { 1799 LogAjaxError(ex, url, params, ok, error, method, timeout); 1800 } 1801 } 1802 }, 1803 error: function (jqXHR, textStatus, errorThrown) { 1804 if (error != undefined) { 1805 error(jqXHR, textStatus, errorThrown); 1806 } 1807 } 1808 }); 1809} 1810</script>
1810 1811 1812
1813<script> 1814 var val = 0; 1815 var currentVal = 0; 1816 var hiddenpos = '-390'; 1817 var displayPos = '0'; 1818 var hide = true; 1819 //var jQ = jQuery.noConflict(true); 1820 1821 // Returns true if the passed value is found in the 1822 // array. Returns false if it is not. 1823 Array.prototype.inArray = function (value, caseSensitive) { 1824 var i; 1825 for (i = 0; i < this.length; i++) { 1826 // use === to check for Matches. ie., identical (===), 1827 if (caseSensitive) { //performs match even the string is case sensitive 1828 if (this[i].toLowerCase() === value.toLowerCase()) { 1829 return true; 1830 } 1831 } else { 1832 if (this[i] === value) { 1833 return true; 1834 } 1835 } 1836 } 1837 return false; 1838 }; 1839 1840 // Returns true if the passed value is found in the 1841 // array. Returns false if it is not. 1842 Array.prototype.inArrayIndex = function (value, caseSensitive) { 1843 var i; 1844 for (i = 0; i < this.length; i++) { 1845 // use === to check for Matches. ie., identical (===), 1846 if (caseSensitive) { //performs match even the string is case sensitive 1847 if (this[i].toLowerCase() === value.toLowerCase()) { 1848 return i; 1849 } 1850 } else { 1851 if (this[i] === value) { 1852 return i; 1853 } 1854 } 1855 } 1856 return -1; 1857 }; 1858 1859 function setCartQtyDisplay() { 1860 if ($('#countItemsInCartInline').length > 0) { 1861 if ($.trim($('#countItemsInCartInline').text()) === "0") { 1862 //$('#cartInline,.cartIconText').css('display','none'); 1863 } else { 1864 //$('#cartInline,.cartIconText').css('display','inline-block'); 1865 } 1866 } 1867 if ($('#countItemsInCartInlineCustom').length > 0) { 1868 if ($.trim($('#countItemsInCartInlineCustom').text()) === "0") { 1869 //$('#cartInlineCustom,.cartIconText').css('display','none'); 1870 } else { 1871 //$('#cartInlineCustom,.cartIconText').css('display','inline-block'); 1872 } 1873 } 1874 } 1875 1876 function getCartSubTotalInline(){ 1877 var i; 1878 var subTotal = 0; 1879 for (i=0; i<oCartInline.Items.length; i++){ 1880 //div = document.getElementById('subTotal'+ oCartInline.Items[i].ItemCode); 1881 var div = document.getElementById('subTotal'+ i); 1882 subTotal += parseFloat((div.innerHTML.replace(/,/g,'')).slice(1)); 1883 } 1884 return subTotal.toFixed(2); 1885 } 1886 1887 function bubbleSort(a) { 1888 var swapped; 1889 var retary = new Array(); 1890 do { 1891 swapped = false; 1892 for (var i=0; i < a.length-1; i++) { 1893 if (a[i] > a[i+1]) { 1894 var temp = a[i]; 1895 a[i] = a[i+1]; 1896 a[i+1] = temp; 1897 swapped = true; 1898 } 1899 } 1900 } while (swapped); 1901 1902 for(i=0;i<a.length;i++) { 1903 retary.push(a[i]); 1904 } 1905 1906 return retary.join(','); 1907 } 1908 1909 function getModifierIDs(prodid, index) { 1910 var ret = oCartInlineRet; 1911 var modids = new Array(); 1912 var item = ret.Items[index]; 1913 1914 if (item.ID === prodid) { 1915 for(var g=0; g<item.Modifiers.length; g++) { 1916 modids.push(item.Modifiers[g].ID); 1917 } 1918 return bubbleSort(modids); 1919 } 1920 } 1921 1922 function countItemsInCartCache() { 1923 var url2mc = "/723/cart"; 1924 RestCall(url2mc, {}, function (data) { 1925 $("#countItemsInCartInline,#countItemsInCartInlineCustom").text(Enumerable.From(data.Cart.Items).Where('$.IsSpecial == false').Sum('$.Quantity')); 1926 setCartQtyDisplay() 1927 }, function (jqXHR, textStatus, errorThrown) { 1928 console.log('Error Get Cart: ' + textStatus + '\nResponse:' + jqXHR.responseText); 1929 }, "GET"); 1930 1931 } 1932 1933 function getLastItemsAdded() { 1934 var sessionIn = ""; 1935 var sep = String.fromCharCode(29); 1936 var sepItem = String.fromCharCode(30); 1937 var html = new Array(); 1938 var aryJusadded = new Array(); 1939 var aryJusaddedQty = new Array(); 1940 var currentMarkUp = 0; 1941 sessionIn_tmp = sessionIn.split(sepItem); 1942 1943 for(var e=0; e<sessionIn_tmp.length; e++) { 1944 var session = sessionIn_tmp[e]; 1945 var aryItemsAdded = (session.length > 0)?session.split(sep)[1] + sep + session.split(sep)[2]:''; 1946 var qtyJustAdded = (session.length > 0)?session.split(sep)[0]:''; 1947 1948 aryJusadded.push(aryItemsAdded);
1949 aryJusaddedQty.push(qtyJustAdded); 1950 } 1951 1952 var session = sessionIn; 1953 _totalQtyInlineCart = 0; 1954 var totalItmPrice = 0; 1955 ret = oCartInlineRet; 1956 var totaladded = 0; 1957 1958 for(i=0; i<ret.Items.length; i++) { 1959 var item = ret.Items[i]; 1960 1961 var modids = getModifierIDs(item.ID, i); 1962 if(modids.length > 0)modids = ',' + modids; 1963 1964 var itemModPrice = 0; 1965 var subtItem = 0; 1966 var qty = item.Quantity; 1967 var drawProd = (typeof item.RecentlyAdded !== "undefined") ? item.RecentlyAdded : false; //((session.length > 0 && aryJusadded.inArray(item.ID + sep + modids)) || session.length == 0); 1968 currentMarkUp = 0; 1969 1970 if(drawProd) { 1971 qtyJustAdded = item.QuantityAdded; 1972 } 1973 1974 if(qtyJustAdded > 0) { 1975 totaladded = Number(totaladded) + Number(qtyJustAdded); 1976 } 1977 1978 if(drawProd) { 1979 html.push('<div class="bootCart-product row">'); 1980 html.push('<div class="bootCart-img col"><img src="../../DSN/wwwabchammerscom/Commerce/' + item.Image + '" onerror="this.src=\'../../DSN/wwwabchammerscom/Commerce/ProductImages/Cart_NoImage.jpg\'" border=0></div>'); 1981 html.push('<div class="bootCart-details col">'); 1982 html.push('<div class="bootCart-name">' + item.Name + '</div>'); 1983 html.push('<div class="bootCart-part"><span class="inlinepartnolabel">Item# </span>' + ((item.SKU.length)?item.SKU:item.PartNumber) + '</div>'); 1984 html.push('<div class="bootCart-price"><span class="inlineitempricelabel">
1984Price: </span>'); 1985 1986 html.push(formatCurrency(item.BasePrice,2) + '</div>'); 1987 1988 html.push('<div class="bootCart-attr">'); 1989 } 1990 1991 for(var j=0; j<item.Modifiers.length; j++) { 1992 var itemMod = item.Modifiers[j]; 1993 var modinput = itemMod.Input; 1994 modprice = itemMod.Price; 1995 var modinputvalue = ""; 1996 1997 if(modinput !== "" && modinput !== undefined && modinput != null) { 1998 modinputvalue = " [" + modinput + "] " 1999 } 2000 2001 //Check One time 2002 if (itemMod.OneTime) { 2003 itemModPrice += parseFloat(itemMod.Price); 2004 currentMarkUp = formatCurrency(parseFloat(itemMod.Price),2); 2005 2006 } else { 2007 if(drawProd && session.length > 0) { 2008 itemModPrice += parseFloat((itemMod.Price * qtyJustAdded).toFixed(2)); 2009 currentMarkUp = formatCurrency(parseFloat(itemMod.Price),2) + ' ea.'; 2010 2011 } else { 2012 itemModPrice += parseFloat((itemMod.Price * qty).toFixed(2)); 2013 currentMarkUp = formatCurrency(parseFloat(itemMod.Price),2) + ' ea.'; 2014 2015 } 2016 } 2017 2018 if(currentMarkUp.length > 0 && parseFloat(itemMod.Price) > 0) { 2019 if(drawProd)html.push('<span class="bootCart-attr-lbl">' + itemMod.TypeName + ': </span>' + itemMod.Name + modinputvalue + ' <span style="font-style:italic">(+' + currentMarkUp + ')</span><br>'); 2020 } else { 2021 if(drawProd)html.push('<span class="bootCart-attr-lbl">' + itemMod.TypeName + ': </span>' + itemMod.Name + modinputvalue + '<br>'); 2022 } 2023 } 2024 2025 //if(drawProd && session.length > 0) { 2026 var recentaddedSubT = (parseFloat((item.BasePrice * qtyJustAdded)) + itemModPrice).toFixed(2); 2027 //} 2028 2029 subtItem = (parseFloat((item.BasePrice * qty)) + itemModPrice).toFixed(2); 2030 2031 if(drawProd) { 2032 html.push('</div>'); 2033 html.push('<div class="bootCart-qty"><span class="bootCart-qty-lbl">Quantity: </span>'); 2034 2035 //if(session.length == 0) { 2036 // html.push(item.Quantity + '</div><div class="inlinecartitemsubtotal"><span class="inlinecartitemsubtotallabel">'); 2037 // html.push('' + formatCurrency(subtItem,2) + '</div>' ) 2038 //} else { 2039 html.push(qtyJustAdded + '</div><div class="bootCart-subtotal"><span class="bootCart-subtotal-lbl">Item Total:</span> '); 2040 2041 html.push('' + formatCurrency(recentaddedSubT,2) + '</div>' ); 2042 2043 //} 2044 2045 html.push('</div></div><div class="bootCart-separator"></div>'); 2046 } 2047 2048 totalItmPrice += parseFloat(subtItem); 2049 2050 if(!item.IsSpecial){ 2051 _totalQtyInlineCart += parseInt(qty, 10); 2052 } 2053 } 2054 2055 $("#subtotaldiv").html(formatCurrency(totalItmPrice,2)); 2056 2057 2058 if(totaladded === 1) { 2059 //$("#qtyitemsjustadded").html(totaladded + ' item'); 2060 } else { 2061 //$("#qtyitemsjustadded").html(totaladded + ' items'); 2062 } 2063 2064 totaladded = 0; 2065 $("#totalQtyInlineCart").html(_totalQtyInlineCart); 2066 $("#countItemsInCartInline").html(_totalQtyInlineCart); 2067 $("#countItemsInCartInlineCustom").html(_totalQtyInlineCart); 2068 setCartQtyDisplay(); 2069 2070 var bootCartScroll = new PerfectScrollbar('#bootCart'); 2071 2072 $("#bootCart").html(html.join('')); 2073 2074 var isItems = (_totalQtyInlineCart === 1)?'item':'items'; 2075 $("#isItems").html(isItems); 2076 2077 //var isItemsHeading = (_totalQtyInlineCart==1)?'Item':'Items'; 2078 //$("#isItemsHeading").html(isItemsHeading) 2079 2080 if(ret.Items.length === 0) { 2081 $("#bootCart").html('<div style="height:100px;width:100%; text-align:center;vertical-align:middle; padding-top:10px;">Your cart is currently empty</div>'); 2082 } else { 2083 setTimeout(function() {
2084 bootCartScroll.update(); 2085 },300); 2086 } 2087 } 2088 2089 function getCurrentCart(getSingleCartItem) { 2090 $("#bootCart").html(""); 2091 if(oCartInlineRet) { 2092 getLastItemsAdded(); 2093 } else { 2094 $.get("/st/723/cart/",function(ret){ 2095 oCartInlineRet = ret.Cart; 2096 getLastItemsAdded(); 2097 }); 2098 } 2099 } 2100 2101 var oCartInlineRet = ''; 2102 var _totalQtyInlineCart = ''; 2103 var gotoCartInline = true; 2104 2105 /*var callbackJS = function(ret){ 2106 oCartInlineRet = ret; 2107 getLastItemsAdded(); 2108 }*/ 2109 2110 function countItemsInCart() { 2111 try { 2112 _totalQtyInlineCart = 0; 2113 for(i=0; i<oCartInlineRet.Items.length; i++) { 2114 var item = oCartInlineRet.Items[i]; 2115 if(!item.IsSpecial){ 2116 var qty = item.Quantity; 2117 _totalQtyInlineCart += parseInt(qty, 10); 2118 } 2119 } 2120 2121 $("#countItemsInCartInline").html(_totalQtyInlineCart); 2122 $("#countItemsInCartInlineCustom").html(_totalQtyInlineCart); 2123 setCartQtyDisplay(); 2124 }catch(e) { 2125 $("#countItemsInCartInline").html(_totalQtyInlineCart); 2126 $("#countItemsInCartInlineCustom").html(_totalQtyInlineCart); 2127 setCartQtyDisplay(); 2128 } 2129 } 2130 2131 //$ = null; 2132 var hiddenOntime = true; 2133 var inter = 0; 2134 var closedButton = false; 2135 var leftpos = '500px'; 2136 2137 function toggleCart(display, header,getSingleCartItem) { 2138 try { 2139 if(closedButton) { 2140 hide = true; 2141 return false; 2142 } 2143 var fromPos = (hide)?hiddenpos:displayPos; 2144 var gotoPos = (!hide)?hiddenpos:displayPos; 2145 2146 try { 2147 if ($('#inlinecart').is(':hover')) { 2148 display = true; 2149 } 2150 } catch(e){} 2151 2152 if(display) { 2153 var fromPos = hiddenpos; 2154 var gotoPos = displayPos; 2155 } else { 2156 var hideOnFinish = "none"; 2157 } 2158 2159 hide = !hide; 2160 if(display)getCurrentCart(getSingleCartItem); 2161 //$("#cartHeaderInline").html(header); 2162 if(!hide) { 2163 } else { 2164 window.clearTimeout(inter); 2165 } 2166 } catch(e){} 2167 } 2168 2169 $(document).ready(function() { 2170 $('#cartInline').html('<span id="countItemsInCartInline"></span>'); 2171 $('#cartInlineCustom').html('<span id="countItemsInCartInlineCustom"></span>'); 2172 //BuildJSCart('testjs','30%'); 2173 // $(document).find('#cartInline').parent().click(function(){ 2174 $(document).find('#cartInline').parent().on('click touch', function () { 2175 var setParent = $(document).find('#cartInline').parent(); 2176 if (!setParent.hasClass("cart-payment-link")) { 2177 document.location = '../../content/22.htm'; 2178 } else { 2179 document.location = setParent.attr('href'); 2180 } 2181 }); 2182 $(document).find('#cartInlineCustom').parent().on('click touch', function () { 2183 var setParent = $(document).find('#cartInlineCustom').parent(); 2184 if (!$(document).find('#cartInlineCustom').parent().hasClass("cart-payment-link")) { 2185 document.location = '../../content/22.htm'; 2186 } else { 2187 document.location = setParent.attr('href'); 2188 } 2189 }); 2190 //getCurrentCart(); 2191 2192 }); 2193 2194 var iId = ''; 2195 var cpx = ''; 2196 function slideOn(obj,from, to) { 2197 cpx = parseInt(from , 10); 2198 iId = setInterval(function(){slideOnMove(obj,from,to)},1/100) 2199 } 2200 2201 function slideOnMove(obj,from, to) { 2202 if(cpx === to) { 2203 clearInterval(iId) 2204 } 2205 cpx = cpx + 1; 2206 obj.style.top = cpx; 2207 } 2208</script>
2208 2209 2210 2211<!-- *******INLINE CART LAYOUT START******* --> 2212<div class="modal fade" id="usrCart" tabindex="-1" role="dialog" aria-labelledby="usrCartTitle" aria-hidden="true"> 2213 <div class="modal-addcart modal-dialog modal-dialog-centered" role="document"> 2214 <div class="modal-content"> 2215 <div class="modal-header"> 2216 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 2217 <img src="../../st-app/modules/st-bootstrap/dist/static/icons/ico-ui-close.png"> 2218 </button> 2219 </div> 2220 <div class="modal-body"> 2221 <div class="row"> 2222 <div class="bootCart-left col-12 col-sm-6"> 2223 <h5 id="usrCartTitle" class="modal-title"> 2224 <div class="cartCheck"></div><span id="qtyitemsjustadded">Item(s)</span> added to your cart 2225 </h5> 2226 <div id="bootCart" class="container"></div> 2227 </div> 2228 <div class="bootCart-right col-12 col-sm-6"> 2229 <div class="container"> 2230 <div class="row bootCart-info"> 2231 <div class="bootCart-count col-12"> 2232 Your Cart: <span id="totalQtyInlineCart"></span> <span id="isItems">items</span> 2233 </div> 2234 <div class="bootCart-subtotal col-12"> 2235 Cart Subtotal: <span id="subtotaldiv"></span> 2236 </div> 2237 </div> 2238 <div class="row bootCart-buttons justify-content-center"> 2239 <div class="bootCart-continue col-12 mx-auto mb-3"> 2240 2241 <a class="btn btn-secondary bootCart-btn-continue w-100" title="Continue Shopping" data-dismiss="modal">Continue Shopping</a> 2242 2243 </div> 2244 <div class="bootCart-checkout col-12 mx-auto"> 2245 <a title="Checkout" class="btn btn-primary bootCart-btn-checkcout w-100" href="../../content/22.htm" target="_parent">View Cart</a> 2246 </div> 2247 </div> 2248 </div> 2249 </div> 2250 <div id="bootCart-related" class="col-12"></div> 2251 </div> 2252 </div> 2253 </div> 2254 </div> 2255 2256</div> 2257<!-- *******INLINE CART LAYOUT END******* --> 2258 2259<!--Site Core Functions-->
2260<script src="../dsn/wwwabchammerscom/Content/Javascripts/site-functions.js?v=0.3"></script>
2260 2261<link rel="stylesheet" type="text/css" href="../DSN/wwwabchammerscom/Style/wwwabchammerscom.css?v=5"> 2262</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.