1<!DOCTYPE html> 2�<html lang="en"><head><!-- Google tag (gtag.js) -->
vendor: 71 bytes, line 2
2<script async="async" src="https://www.googletagmanager.com/gtag/js?id=
2G-VG24VK2VKT
vendor: 11 bytes, line 2
2"></script>
2<script> 3 window.dataLayer = window.dataLayer || []; 4 function gtag(){dataLayer.push(arguments);} 5 gtag('set', 'linker', {'domains': ['tmt.spotapps.co','spothopperapp.com']}); 6 gtag('js', new Date()); 7 gtag('config', 'G-6JMDJKGLES'); 8 gtag('config', 'G-VG24VK2VKT'); 9 </script>
9<!-- wcache 2026-09-30 19:12:36.471759Z --><!-- 10smart_footer: true, 11smart_footer_version: 2, 12scripting_active: false 13--><link href="https://salspizzabville.com/" rel="canonical"/><meta charset="utf-8"/><meta content="IE=edge" http-equiv="X-UA-Compatible"/><meta content="width=device-width, initial-scale=1" name="viewport"/><meta content="From the beginning of their relationship, Sal and Meow LoMedico quickly discovered they had the same dreams: To have a family and a full service restaurant they could call their own. After two kids and a decade of hard work and dedication, they realized that dreams do come true! Salâs Pizza & Restaurant opened its doors to Baldwinsville, NY in February 2015." name="description"/><meta content="" name="author"/><meta content="Sal's Pizza & Restaurant - Baldwinsville, NY" property="og:title"/><meta content="website" property="og:type"/><meta content="http://salspizzabville.com/" property="og:url"/><meta content="From the beginning of their relationship, Sal and Meow LoMedico quickly discovered they had the same dreams: To have a family and a full service restaurant they could call their own. After t..." property="og:description"/><meta content="https://static.spotapps.co/website_images/ab_websites/504321_website_v1/social.jpg" property="og:image"/><meta content="Sal's Pizza & Restaurant image" property="og:image:alt"/><meta content="image/png" property="og:image:type"/><meta content="190472807642416" property="fb:app_id"/><meta content="summary_large_image" name="twitter:card"/><meta content="Sal's Pizza & Restaurant - Baldwinsville, NY" name="twitter:title"/><meta content="From the beginning of their relationship, Sal and Meow LoMedico quickly discovered they had the same dreams: To have a family and a full service restaurant they could call their own. After t..." name="twitter:description"/><meta content="https://static.spotapps.co/website_images/ab_websites/504321_website_v1/social.jpg" name="twitter:image"/><title>Sal's Pizza & Restaurant - Baldwinsville, NY</title>
13<script>document.cookie='resolution='+Math.max(screen.width,screen.height)+("devicePixelRatio" in window ? ","+devicePixelRatio : ",1")+'; path=/';</script>
13<script type="application/ld+json"> 14{"@context":"https://schema.org","@type":"Restaurant","image":"https://static.spotapps.co/website_images/ab_websites/504321_website_v1/social.jpg","name":"Sal's Pizza & Restaurant","address":{"@type":"PostalAddress","streetAddress":"41 East Genesee Street","addressLocality":"Baldwinsville","addressRegion":"NY","postalCode":"13027","addressCountry":"US"},"geo":{"@type":"GeoCoordinates","latitude":43.1592611,"longitude":-76.3279867},"url":"salspizzabville.com","telephone":"(315) 638-8505","servesCuisine":"Pizza"}</script>
14<link href="https://static.spotapps.co/website_images/ab_websites/504321_website_v1/favicons/favicon-96x96.png" rel="icon" sizes="96x96" type="image/png"/><link href="https://static.spotapps.co/website_images/ab_websites/504321_website_v1/favicons/favicon.svg" rel="icon" type="image/svg+xml"/><link href="https://static.spotapps.co/website_images/ab_websites/504321_website_v1/favicons/favicon.ico" rel="shortcut icon"/><link href="https://static.spotapps.co/website_images/ab_websites/504321_website_v1/favicons/apple-touch-icon.png" rel="apple-touch-icon" sizes="180x180"/><meta content="Sal's Pizza & Restaurant" name="apple-mobile-web-app-title"/><link href="https://static.spotapps.co/website_images/ab_websites/504321_website_v1/favicons/site.webmanifest" rel="manifest"/><link href="https://static.spotapps.co/web/salspizzabville--com/lib/bootstrap/css/bootstrap.min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/salspizzabville--com/lib/gallery/gallery.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/salspizzabville--com/lib/fancybox/source/jquery.fancybox.css" media="screen" rel="stylesheet" type="text/css"/><link href="https://static.spotapps.co/web/salspizzabville--com/lib/fancybox/source/helpers/jquery.fancybox-thumbs.css" rel="stylesheet" type="text/css"/><link href="//static.spotapps.co/web-lib/leaflet/[email protected]/dist/leaflet-gesture-handling.min.css" rel="stylesheet" type="text/css"/><link href="https://static.spotapps.co/web/salspizzabville--com/lib/uikit/css/uikit.docs.min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/salspizzabville--com/lib/uikit/css/slidenav.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/salspizzabville--com/lib/font-awesome-4.7.0/css/font-awesome.min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/salspizzabville--com/lib/hover_css/css/hover-min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/salspizzabville--com/lib/owlcarousel/owl.carousel.min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/salspizzabville--com/lib/owlcarousel/owl.theme.default.min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web-lib/leaflet/[email protected]/dist/leaflet.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/salspizzabville--com/css/style.css?version2" id="mainCSS" rel="stylesheet"/><link href="https://static.spotapps.co/web/salspizzabville--com/css/bottom_navigation_v1.css?v1783421966" rel="stylesheet"/><link href="css/custom.css?v1783421966&domain=salspizzabville.com" rel="stylesheet"/><link href="https://static.spotapps.co/web/salspizzabville--com/lib/icons_font/css/social_icons.css" rel="stylesheet"/><!--[if IE 7]><link rel="stylesheet" href="lib/icons_font/css/social_icons-ie7.css"><![endif]--><link href="https://static.spotapps.co/web/salspizzabville--com/lib/twitter_x_font_icon/css/twitter_x.css" rel="stylesheet"/><!--[if IE 7]><link rel="stylesheet" href="lib/twitter_x_font_icon/css/twitter_x-ie7.css"><![endif]--><!--[if lt IE 9]> 15
15<script src="//oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
15 16
16<script src="//oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
16 17 <![endif]--><style> 18 19#accessibility-footer { 20 padding: 20px 5px; 21 background-color: #353638; 22 color: #fff; 23 text-align: center; 24} 25#accessibility-footer p { 26 margin: 0; 27 padding: 0; 28 font-family: inherit; 29 font-size: initial; 30 color: #fff; 31} 32#accessibility-footer .accessibility-link { 33 display: inline-block; 34 color: inherit; 35 text-decoration: underline; 36 font-weight: 600; 37} 38 39@media (max-width: 767px) { 40 #accessibility-footer .accessibility-link { 41 display: block; 42 } 43 44 /* additionl css in case that there is a CTA mobile bar (id="bottom-navbar") on the website */ 45 #accessibility-footer { 46 position: relative; 47 top: -60px; 48 padding-bottom: 70px; 49 } 50} 51 52</style>
52<script src="https://static.spotapps.co/websites/lib/lazysizes/lazysizes.min.js" async=""></script>
52<script> 53function ga_check(){ 54 return true; 55} 56</script>
56<script> 57function universal_ga(action, type, category, ev_action, label){ 58 if(typeof ga === 'function') 59 { 60 if(!(action && label)) 61 ga(action, type, category) 62 else 63 ga(action, type, category, ev_action, label) 64 } 65 66 if(typeof gtag === 'function') 67 { 68 if(!(action && label)) 69 { 70 hash = category 71 ev_label = hash["eventLabel"] 72 var splits = ev_label.match(/.{1,100}/g) ?? []; 73 delete(hash["eventLabel"]) 74 75 if(splits.length <= 1) 76 hash["eventLabel"] = ev_label 77 else 78 { 79 for (let i = 0; i < splits.length; i++) { 80 var key = "eventLabel_"+i 81 hash[key] = splits[i] 82 } 83 } 84 console.log(hash) 85 gtag("event", hash["eventCategory"], hash); 86 } 87 else 88 { 89 var hash = { 90 eventCategory: category, 91 eventAction: ev_action 92 } 93 94 var splits = label.match(/.{1,100}/g) ?? []; 95 if(splits.length <= 1) 96 hash["eventLabel"] = label 97 else 98 { 99 for (let i = 0; i < splits.length; i++) { 100 var key = "eventLabel_"+i 101 hash[key] = splits[i] 102 } 103 } 104 gtag("event", hash["eventCategory"], hash); 105 } 106 } 107} 108</script>
108<script> function getPromotionUrlParams(){ 109 var params_str = sessionStorage.getItem('shUrlParams'); 110 if (params_str != null){ 111 return JSON.parse(params_str); 112 }else{ 113 return {}; 114 } 115 } 116 117 function getPromotionSourceDetails(){ 118 var params_str = localStorage.getItem('promotionSourceDetails'); 119 if (params_str != null){ 120 return JSON.parse(params_str); 121 }else{ 122 return {}; 123 } 124 } 125 126 function getLastEmailVisitInDays(){ 127 var promotionSourceDetails = getPromotionSourceDetails(); 128 if (!promotionSourceDetails['last_visit_email'] ){ 129 return null; 130 } 131 return Math.floor((new Date() - new Date(promotionSourceDetails['last_visit_email'])) / (1000 * 60 * 60 * 24)); 132 } 133 134 function getLastSocialVisitInDays(){ 135 var promotionSourceDetails = getPromotionSourceDetails(); 136 if (!promotionSourceDetails['last_visit_social'] ){ 137 return null; 138 } 139 return Math.floor((new Date() - new Date(promotionSourceDetails['last_visit_social'])) / (1000 * 60 * 60 * 24)); 140 } 141 142 var shUrlParams = getPromotionUrlParams(); 143 var promotionSourceDetails = getPromotionSourceDetails(); 144 145 new URL(document.location).searchParams.forEach(function(value, paramName){ 146 147 shUrlParams[paramName] = value; 148 149 if (paramName == 'source' && value =='social' ){ 150 promotionSourceDetails['last_visit_social'] = new Date(); 151 localStorage.setItem('promotionSourceDetails', JSON.stringify(promotionSourceDetails)); 152 } 153 154 if (paramName == 'source' && value =='email' ){ 155 promotionSourceDetails['last_visit_email'] = new Date(); 156 localStorage.setItem('promotionSourceDetails', JSON.stringify(promotionSourceDetails)); 157 } 158 159 }); 160 161 sessionStorage.setItem('shUrlParams', JSON.stringify(shUrlParams)) 162</script>
162<style>a:focus:not(:focus-visible){outline:none;box-shadow:none;} 163a.get-directions-footer-link{display:inline-block;transform-origin:left center;transition:transform .2s ease;} 164a.get-directions-footer-link:hover{transform:scale(1.08);} 165@media (prefers-reduced-motion:reduce){a.get-directions-footer-link{transition:none;transform:none;}} 166a.get-directions-footer-link,a.get-directions-footer-link:hover{color:inherit!important;}</style></head><body class="home-page" data-spot-id="504321"><style>.promotion-pop-up .modal-dialog { 167 margin: 0 auto; 168 top: 0; 169 transition: none; 170} 171.promotion-pop-up.fade .modal-dialog { 172 transform: none !important; 173} 174 175.promotion-pop-up .modal-content { 176 display: none; 177 border-radius: 6px; 178 background-color: #fff; 179 background-image: none; 180} 181.promotion-pop-up .modal-header { 182 border: none; 183 margin-bottom: 8px; 184} 185.promotion-pop-up .close { 186 position: absolute; 187 top: 15px; 188 right: 15px; 189 font-size: 3em; 190 font-weight: normal; 191 line-height: 0.8em; 192 color: #000; 193 opacity: 0.8; 194} 195.promotion-pop-up .modal-body { 196 margin: 20px 20px 10px 20px; 197 padding-top: 5px; 198 text-align: center; 199 color: initial; 200} 201.promotion-pop-up .modal-footer { 202 padding-bottom: 40px; 203 border-top: none; 204 text-align: center; 205} 206 207.promotion-pop-up .btn { 208 display: inline-block; 209 max-width: 90%; 210 padding: 10px 50px; 211 font-size: 1.2em; 212 background-color: #000000; 213 color: #fff; 214 transform: scale(1); 215 -webkit-transition: all 0.3s ease; 216 -moz-transition: all 0.3s ease; 217 -o-transition: all 0.3s ease; 218 transition: all 0.3s ease; 219} 220.promotion-pop-up .btn:hover { 221 background-color: #1a1a1a; 222 color: #e0e0e0; 223 box-shadow: 1px 3px 6px rgba(0, 0, 0, 0.3); 224 transform: scale(0.98); 225} 226 227.promotion-pop-up .btn:active { 228 background-color: #0f0f0f; 229 color: #cccccc; 230 box-shadow: 231 inset 0 2px 4px rgba(255, 255, 255, 0.08), 232 inset 0 -2px 2px rgba(0, 0, 0, 0.4); 233 transform: scale(0.94); 234} 235 236.promotion-pop-up h2 { 237 margin: 5px 5px 10px 5px; 238 font-size: 2.1em; 239 line-height: 1.3; 240 color: inherit; 241 /*font-family: unset;*/ 242} 243.promotion-pop-up h3 { 244 font-size: 1.5em; 245 margin: 5px 5px 15px 5px; 246 font-family: unset; 247 text-transform: inherit; 248} 249.promotion-pop-up p { 250 margin-top: 30px; 251} 252.promotion-pop-up .modal-body a { 253 color: initial; 254} 255 256.promotion-pop-up .modal-plain-text h3 { 257 padding-top: 10px; 258} 259 260.promotion-pop-up .modal-body.modal-image-and-button { 261 overflow: auto; 262 margin: 20px; 263 padding-top: 0; 264 padding-bottom: 0; 265} 266.promotion-pop-up .modal-body.modal-image-and-button img { 267 max-height: 60vh; 268 max-width: 100%; 269} 270.promotion-pop-up .modal-body.modal-image-and-button p { 271 margin-top: 15px; 272 margin-bottom: 10px; 273} 274 275@media only screen and (max-width: 1024px) { 276 .promotion-pop-up .modal-body.modal-image-and-button { 277 margin-bottom: 10px; 278 } 279 .promotion-pop-up h2 { 280 font-size: 1.9em; 281 } 282 .promotion-pop-up h3 { 283 font-size: 1.4em; 284 } 285 .promotion-pop-up .modal-body.modal-image-and-button img { 286 max-height: 65vh; 287 } 288} 289 290@media only screen and (max-width: 767px) { 291 .promotion-pop-up .modal-dialog { 292 margin: 0 10px; 293 } 294 .promotion-pop-up .modal-body { 295 margin-top: 18px; 296 } 297 .promotion-pop-up .modal-body.modal-image-and-button img { 298 max-height: 55vh; 299 } 300 .promotion-pop-up h2 { 301 font-size: 1.8em; 302 } 303 .promotion-pop-up h3 { 304 font-size: 1.3em; 305 } 306 .promotion-pop-up .modal-body.modal-image-and-button p { 307 font-size: 1.1em; 308 } 309} 310@media only screen and (max-width: 500px) { 311 .promotion-pop-up .modal-footer { 312 padding-top: 10px; 313 padding-bottom: 35px; 314 } 315 .promotion-pop-up .modal-body { 316 margin: 17px 15px 5px 15px; 317 } 318 .promotion-pop-up .btn { 319 padding: 9px 40px; 320 font-size: 1.1em; 321 } 322 .promotion-pop-up .modal-body.modal-image-and-button img { 323 max-height: 50vh; 324 } 325} 326@media only screen and (max-width: 400px) { 327 .promotion-pop-up h2 { 328 font-size: 1.7em; 329 } 330 .promotion-pop-up h3 { 331 font-size: 1.2em; 332 } 333 .promotion-pop-up .btn { 334 padding: 8px 35px; 335 font-size: 1.1em; 336 } 337}</style><div aria-label="Promotion" class="modal fade promotion-pop-up" id="promotion-pop-up" role="dialog" tabindex="-1"><div class="modal-dialog" role="document"><div class="modal-content promotion_pop_up_content" data-has-image="" data-internalname="catering" data-is-custom-link="false" data-is-template-image-and-button="false" data-link-url="https://salspizzabville.com/-catering?source=pop_up&spot_id=504321&destination=catering&promotion=catering" id="6217133"><!-- Modal Header --><div class="modal-header"><button aria-label="Close" class="close" data-dismiss="modal" type="button"><span aria-hidden="true">Ã</span></button></div><!-- Modal body -->
337<div class="modal-body modal-plain-text"><h2 class="section-header">Did you know we do catering?</h2><h3>Whatever your occasion, however big or small, we have the perfect options to choose from.</h3><p>Cater your birthday party, holiday party, corporate events, wedding festivities and more!</p></div><div class="modal-footer"><a class="btn btn-modal" data-href="https://salspizzabville.com/-catering?source=pop_up&spot_id=504321&destination=catering&promotion=catering" href="https://salspizzabville.com/-catering?source=pop_up&spot_id=504321&destination=catering&promotion=catering">Catering Packages</a></div></div><div class="modal-content promotion_pop_up_content" data-has-image="" data-internalname="order_online" data-is-custom-link="false" data-is-template-image-and-button="false" data-link-url="https://order.toasttab.com/online/sals-pizza-and-restaurant-41-e-genesee-st?source=pop_up&spot_id=504321&destination=order&promotion=order_online" id="6217141"><!-- Modal Header --><div class="modal-header"><button aria-label="Close" class="close" data-dismiss="modal" type="button"><span aria-hidden="true">Ã</span></button></div><!-- Modal body --><div class="modal-body modal-plain-text"><p>Order your favorite dishes in seconds!</p></div><div class="modal-footer"><a class="btn btn-modal" data-href="https://order.toasttab.com/online/sals-pizza-and-restaurant-41-e-genesee-st?source=pop_up&spot_id=504321&destination=order&promotion=order_online" href="https://order.toasttab.com/online/sals-pizza-and-restaurant-41-e-genesee-st?source=pop_up&spot_id=504321&destination=order&promotion=order_online">Order Online</a></div></div><div class="modal-content promotion_pop_up_content" data-has-image="" data-internalname="private_parties" data-is-custom-link="false" data-is-template-image-and-button="false" data-link-url="https://salspizzabville.com/-party?source=pop_up&spot_id=504321&destination=private_parties&promotion=private_parties" id="6217121"><!-- Modal Header --><div class="modal-header"><button aria-label="Close" class="close" data-dismiss="modal" type="button"><span aria-hidden="true">Ã</span></button></div><!-- Modal body --><div class="modal-body modal-plain-text"><h2 class="section-header">Turn moments into memories!</h2><h3>Choose us for your next special occasion or get-together.</h3><p>Got a birthday party, rehearsal dinner, corporate or other event coming up? We're a great option for your gathering! Inquire today and let us know how we can make your special occasion perfect!</p></div><div class="modal-footer"><a class="btn btn-modal" data-href="https://salspizzabville.com/-party?source=pop_up&spot_id=504321&destination=private_parties&promotion=private_parties" href="https://salspizzabville.com/-party?source=pop_up&spot_id=504321&destination=private_parties&promotion=private_parties">Book your party</a></div></div><div class="modal-content promotion_pop_up_content" data-has-image="" data-internalname="reservations" data-is-custom-link="false" data-is-template-image-and-button="false" data-link-url="https://salspizzabville.com/-reservations?source=pop_up&spot_id=504321&destination=reservations&promotion=reservations" id="6217137"><!-- Modal Header --><div class="modal-header"><button aria-label="Close" class="close" data-dismiss="modal" type="button"><span aria-hidden="true">Ã</span></button></div><!-- Modal body --><div class="modal-body modal-plain-text"><h2 class="section-header">We are taking online reservations!</h2><h3>Letâs ensure you get a great table: Book today!</h3><p>We recommend making a reservation ahead of time. Book your table today!</p></div><div class="modal-footer"><a class="btn btn-modal" data-href="https://salspizzabville.com/-reservations?source=pop_up&spot_id=504321&destination=reservations&promotion=reservations" href="https://salspizzabville.com/-reservations?source=pop_up&spot_id=504321&destination=reservations&promotion=reservations">Book Table</a></div></div></div></div><style> 338 339 340.navbar.nav-v6 .container { 341 padding-top: 10px; 342 padding-bottom: 10px; 343} 344.navbar.nav-v6.nav-scroll .container { 345 padding-top: 0px; 346 padding-bottom: 0px; 347} 348.navbar.nav-v6 .header-logo img { 349 max-width: 100%; 350} 351.navbar.nav-v6.nav-scroll .header-logo img { 352 max-width: 80%; 353} 354 355@media (max-width: 767px) { 356 /* DO NOT change mobile nav height on page scroll */ 357 .navbar.nav-v6 .navbar-header, 358 .navbar.nav-v6.nav-scroll .navbar-header { 359 padding-top: 10px; 360 padding-bottom: 10px; 361 } 362 .navbar.nav-v6 .socialnav, 363 .navbar.nav-v6.nav-scroll .socialnav { 364 margin-top: 10px; 365 } 366 .navbar.nav-v6 .container, 367 .navbar.nav-v6.nav-scroll .container { 368 padding-top: 0; 369 padding-bottom: 0; 370 } 371 .navbar.nav-v6 .header-logo, 372 .navbar.nav-v6.nav-scroll .header-logo { 373 height: 70px; 374 } 375 .navbar.nav-v6 .header-logo img { 376 max-height: 100%; 377 } 378 .navbar.nav-v6.nav-scroll .header-logo img { 379 max-width: 100%; 380 } 381 /* HOME page CHANGE mobile nav height on page scroll */ 382 /* Remove body.home-page from below code if there should be mobile nav height change on ALL pages */ 383 body.home-page .navbar.nav-v6 .navbar-header { 384 padding-top: 10px; 385 padding-bottom: 10px; 386 } 387 body.home-page .navbar.nav-v6.nav-scroll .navbar-header{ 388 padding-top: 0px; 389 padding-bottom: 0px; 390 } 391 body.home-page .navbar.nav-v6 .socialnav { 392 margin-top: 10px; 393 } 394 body.home-page .navbar.nav-v6.nav-scroll .socialnav { 395 margin-top: 0px; 396 } 397 body.home-page .navbar.nav-v6 .container{ 398 padding-top: 0; 399 padding-bottom: 0; 400 } 401 body.home-page .navbar.nav-v6.nav-scroll .container { 402 padding-top: 0; 403 padding-bottom: 0; 404 } 405 body.home-page .navbar.nav-v6 .header-logo { 406 height: 70px; 407 } 408 body.home-page .navbar.nav-v6.nav-scroll .header-logo { 409 height: 50px; 410 } 411 body.home-page .navbar.nav-v6 .header-logo img { 412 max-height: 100%; 413 max-width: 100%; 414 } 415 body.home-page .navbar.nav-v6.nav-scroll .header-logo img { 416 max-width: 80%; 417 } 418} 419 420 421.navbar-regular .navbar-collapse.collapse.in { 422 background-color: transparent; 423 width: 100%; 424} 425.navbar.nav-v6{ 426 background-color: #0B1315; 427 -webkit-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0); 428 -moz-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0); 429 box-shadow: 0px 2px 5px 0px rgba(0,0,0,0); 430 -moz-transition: all 0.3s ease-in-out; 431 -webkit-transition: all 0.3s ease-in-out; 432 -o-transition: all 0.3s ease-in-out; 433 transition: all 0.3s ease-in-out; 434} 435.navbar.nav-v6.nav-scroll{ 436 background-color: #0B1315; 437 -webkit-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.2); 438 -moz-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.2); 439 box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.2); 440} 441.drink-menu .navbar.nav-v6{ 442 background-color: #0B1315; 443 -webkit-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0); 444 -moz-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0); 445 box-shadow: 0px 2px 5px 0px rgba(0,0,0,0); 446 -moz-transition: all 0.3s ease-in-out; 447 -webkit-transition: all 0.3s ease-in-out; 448 -o-transition: all 0.3s ease-in-out; 449 transition: all 0.3s ease-in-out; 450} 451.drink-menu .navbar.nav-v6.nav-scroll{ 452 background-color: #0B1315; 453 -webkit-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.2); 454 -moz-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.2); 455 box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.2); 456} 457.navbar-regular.nav-v6 .navbar-nav>li>a, 458.navbar-regular.nav-v6 .navbar-nav>li>a:hover, 459.navbar-regular.nav-v6 .navbar-nav>.active>a, 460.navbar-regular.nav-v6 .navbar-nav>.active>a:focus, 461.navbar-regular.nav-v6 .navbar-nav>.active>a:hover{ 462 border: none; 463 border-right: 1px solid #fff; 464 background-color: transparent; 465 color: #fff; 466 -moz-transition: all 0.3s ease-in-out; 467 -webkit-transition: all 0.3s ease-in-out; 468 -o-transition: all 0.3s ease-in-out; 469 transition: all 0.3s ease-in-out; 470} 471.navbar-regular.nav-v6 .navbar-nav>li>a { 472 color: #fff; 473} 474.drink-menu .navbar.nav-v6 .navbar-nav>li>a { 475 color: #fff; 476 border-right: 1px solid #fff; 477} 478.drink-menu .navbar-regular.nav-v6 .navbar-nav>li>a:hover, 479.drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a, 480.drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a:focus, 481.drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a:hover{ 482 color: #fff; 483} 484li.drop-down-link .sub-menu { 485 background-color: #0B1315; 486 color: #fff; 487 } 488.nav-scroll li.drop-down-link .sub-menu { 489 background-color: #0B1315; 490 color: #fff; 491} 492.drink-menu li.drop-down-link .sub-menu { 493 background-color: #0B1315; 494 color: #fff; 495 } 496.drink-menu .nav-scroll li.drop-down-link .sub-menu { 497 background-color: #0B1315; 498 color: #fff; 499} 500li.drop-down-link .sub-menu a, 501li.drop-down-link div.drop-down { 502 color: #fff; 503} 504.nav-scroll li.drop-down-link .sub-menu a, 505.nav-scroll li.drop-down-link li.drop-down-link div.drop-down { 506 color: #fff; 507} 508.drink-menu li.drop-down-link .sub-menu a, 509.drink-menu li.drop-down-link div.drop-down { 510 color: #fff; 511} 512.drink-menu .nav-scroll li.drop-down-link .sub-menu a, 513.drink-menu .nav-scroll li.drop-down-link div.drop-down { 514 color: #fff; 515} 516 517li.drop-down-link .sub-menu a:hover, 518li.drop-down-link .sub-menu a:focus { 519 color: #fff; 520} 521.drink-menu li.drop-down-link .sub-menu a:hover, 522.drink-menu li.drop-down-link .sub-menu a:focus { 523 color: #fff; 524} 525
526.navbar-regular.nav-v6 .navbar-toggle .icon-bar { 527 background-color: #fff; 528 -moz-transition: all 0.3s ease-in-out; 529 -webkit-transition: all 0.3s ease-in-out; 530 -o-transition: all 0.3s ease-in-out; 531 transition: all 0.3s ease-in-out; 532} 533.drink-menu .navbar-regular.nav-v6 .navbar-toggle .icon-bar { 534 background-color: #fff; 535} 536.navbar-regular.nav-v6 [aria-expanded="true"].navbar-toggle .icon-bar { 537 background-color: #fff; 538} 539.drink-menu .navbar-regular.nav-v6 [aria-expanded="true"].navbar-toggle .icon-bar{ 540 background-color: #fff; 541} 542.navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a, 543.navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a:hover, 544.navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a, 545.navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:focus, 546.navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:hover{ 547 border: none; 548 border-right: 1px solid #fff; 549 color: #fff; 550} 551.navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a { 552 color: #fff; 553} 554.drink-menu .navbar.nav-v6.nav-scroll .navbar-nav>li>a { 555 color: #fff; 556 border-right: 1px solid #fff; 557} 558.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a:hover, 559.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a, 560.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:focus, 561.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:hover{ 562 color: #fff; 563} 564 565.nav-scroll li.drop-down-link .sub-menu a:hover, 566.nav-scroll li.drop-down-link .sub-menu a:focus { 567 color: #fff; 568} 569.drink-menu .nav-scroll li.drop-down-link .sub-menu a:hover, 570.drink-menu .nav-scroll li.drop-down-link .sub-menu a:focus { 571 color: #fff; 572} 573 574.navbar-regular.nav-v6.nav-scroll .navbar-toggle .icon-bar { 575 background-color: #fff; 576} 577.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-toggle .icon-bar { 578 background-color: #fff; 579} 580.navbar-regular.nav-v6.nav-scroll [aria-expanded="true"].navbar-toggle .icon-bar { 581 background-color: #fff; 582} 583.drink-menu .navbar-regular.nav-v6.nav-scroll [aria-expanded="true"].navbar-toggle .icon-bar{ 584 background-color: #fff; 585} 586.navbar.nav-v6 .header-logo-text{ 587 color: #fff; 588 -moz-transition: all 0.3s ease-in-out; 589 -webkit-transition: all 0.3s ease-in-out; 590 -o-transition: all 0.3s ease-in-out; 591 transition: all 0.3s ease-in-out; 592} 593.navbar.nav-v6.nav-scroll .header-logo-text{ 594 color: #fff; 595} 596.navbar.nav-v6 .social-icon{ 597 color: #fff; 598 -moz-transition: all 0.3s ease-in-out; 599 -webkit-transition: all 0.3s ease-in-out; 600 -o-transition: all 0.3s ease-in-out; 601 transition: all 0.3s ease-in-out; 602} 603.navbar.nav-v6.nav-scroll .social-icon{ 604 color: #fff; 605} 606.navbar.nav-v6 .social-square .contact-icon:hover { 607 color: #fff; 608 background-color: #fff; 609} 610.navbar.nav-v6.nav-scroll .social-square .contact-icon:hover { 611 color: #fff; 612 background-color: #fff; 613} 614 615.drink-menu .navbar.nav-v6 .header-logo-text{ 616 color: #fff; 617} 618.drink-menu .navbar.nav-v6.nav-scroll .header-logo-text{ 619 color: #fff; 620} 621.drink-menu .navbar.nav-v6 .social-icon{ 622 color: #fff; 623} 624.drink-menu .navbar.nav-v6.nav-scroll .social-icon{ 625 color: #fff; 626} 627.drink-menu .navbar.nav-v6 .social-square .contact-icon:hover { 628 color: #fff; 629 background-color: #fff; 630} 631.drink-menu .navbar.nav-v6.nav-scroll .social-square .contact-icon:hover { 632 color: #fff; 633 background-color: #fff; 634} 635.navbar.nav-v6 .container { 636 border-bottom: 1px solid transparent; 637 -moz-transition: all 0.3s ease-in-out; 638 -webkit-transition: all 0.3s ease-in-out; 639 -o-transition: all 0.3s ease-in-out; 640 transition: all 0.3s ease-in-out; 641} 642.navbar.nav-v6.nav-scroll .container { 643 border-bottom: 1px solid transparent; 644} 645.drink-menu .navbar.nav-v6 .container { 646 border-bottom: 1px solid transparent; 647} 648.drink-menu .navbar.nav-v6.nav-scroll .container { 649 border-bottom: 1px solid transparent; 650} 651@media(min-width: 768px) { 652 .nav-v6 .navbar-collapse { 653 display: flex !important; 654 justify-content: end; 655 } 656 .nav-v6 .navbar-nav, 657 .nav-v6 .socialnav.hidden-xs { 658 float: none !important; 659 } 660} 661@media (max-width: 767px) { 662 .navbar.nav-v6 .container, 663 .navbar.nav-v6.nav-scroll .container, 664 .drink-menu .navbar.nav-v6 .container, 665 .drink-menu .navbar.nav-v6.nav-scroll .container { 666 border-bottom: none; 667 } 668 .navbar.nav-v6 .navbar-header { 669 border-bottom: 2px solid transparent; 670 } 671 .navbar.nav-v6.nav-scroll .navbar-header { 672 border-bottom: 2px solid transparent; 673 } 674 .drink-menu .navbar.nav-v6 .navbar-header { 675 border-bottom: 2px solid transparent; 676 } 677 .drink-menu .navbar.nav-v6.nav-scroll .navbar-header { 678 border-bottom: 2px solid transparent; 679 } 680 li.drop-down-link .sub-menu, 681 .drink-menu li.drop-down-link .sub-menu { 682 width: 100% !important; 683 background-color: transparent; 684 } 685 .nav-scroll li.drop-down-link .sub-menu, 686 .drink-menu .nav-scroll li.drop-down-link .sub-menu { 687 background-color: transparent; 688 } 689 .navbar-regular.nav-v6 .navbar-nav>li>a:hover, 690 .navbar-regular.nav-v6 .navbar-nav>.active>a, 691 .navbar-regular.nav-v6 .navbar-nav>.active>a:focus, 692 .navbar-regular.nav-v6 .navbar-nav>.active>a:hover{ 693 background-color: #fff; 694 color: #fff; 695 } 696 .navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a:hover, 697 .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a, 698 .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:focus, 699 .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:hover{ 700 background-color: #fff; 701 color: #fff; 702 } 703 .drink-menu .navbar-regular.nav-v6 .navbar-nav>li>a:hover, 704 .drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a, 705 .drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a:focus, 706 .drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a:hover{ 707 background-color: #fff; 708 color: #fff; 709 } 710 .drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a:hover, 711 .drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a, 712 .drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:focus, 713 .drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:hover{ 714 background-color: #fff; 715 color: #fff; 716 } 717 718 .navbar-regular.nav-v6 li.drop-down-link.active .drop-down .fa.fa-angle-up { 719 color: #fff; 720 } 721 .navbar-regular.nav-v6.nav-scroll li.drop-down-link.active .drop-down .fa.fa-angle-up { 722 color: #fff; 723 } 724 725 .drink-menu .navbar-regular.nav-v6 li.drop-down-link.active .drop-down .fa.fa-angle-up { 726 color: #fff; 727 } 728 .drink-menu .navbar-regular.nav-v6.nav-scroll li.drop-down-link.active .drop-down .fa.fa-angle-up { 729 color: #fff; 730 } 731 732} 733</style><!-- nav --><nav class="navbar nav-v4 nav-v6 nav-v6-drop navbar-regular navbar-fixed-top" id="navbar" role="navigation"><div id="skip"><a class="visuallyhidden skip-content" href="#content">Skip to main content</a></div><div class="container"><a class="header-logo logo-top" href="/#"><img alt="Sal's Pizza & Restaurant logo top - Homepage" aria-label="Homepage" class="img-responsive logo-top" src="https://static.spotapps.co/website_images/ab_websites/504321_website_v1/logo.png"/></a><a class="header-logo logo-scroll" href="/"><img alt="Sal's Pizza & Restaurant logo scroll - Homepage" aria-label="Homepage" class="img-responsive logo-scroll" src="https://static.spotapps.co/website_images/ab_websites/504321_website_v1/logo.png"/></a><ul class="socialnav visible-xs">
733<li class="social-links social-icons-holder social-square"><a class="pull-left contact-icon" href="https://www.facebook.com/190472807642416" target="_blank"><i class="social-icon fa fa-facebook"></i><span>Facebook page</span></a></li><li class="social-links social-icons-holder social-square"><a class="pull-left contact-icon" href="https://www.google.com/search?q=Sal%27s+Pizza+%26+Restaurant+41+East+Genesee+Street&sca_esv=d1b4d337ee6528a3&hl=en&ei=1m7vaLL3O9mH9u8PyLaB2AY&ved=0ahUKEwiyup-o96WQAxXZg_0HHUhbAGsQ4dUDCBA&uact=5&oq=Sal%27s+Pizza+%26+Restaurant+41+East+Genesee+Street&gs_lp=Egxnd3Mtd2l6LXNlcnAiL1NhbCdzIFBpenphICYgUmVzdGF1cmFudCA0MSBFYXN0IEdlbmVzZWUgU3RyZWV0MgUQIRifBUjwCVApWM8FcAF4AZABAJgBuwGgAeMCqgEDMC4yuAEDyAEA-AEB-AECmAIDoAL7AsICChAAGLADGNYEGEfCAgUQABiABMICBhAAGBYYHpgDAIgGAZAGCJIHAzEuMqAHzgyyBwMwLjK4B_MCwgcFMC4xLjLIBw0&sclient=gws-wiz-serp#lrd=0x89d9e4f7f1f831e5:0x9160e2c6716dcd02,1,,,," target="_blank"><i aria-hidden="true" class="social-icon fa fa-google"></i><span>Google page</span></a></li></ul><div class="navbar-header"><button class="navbar-toggle" data-target="#navbar-collapse-1" data-toggle="collapse" type="button"><span class="sr-only">Toggle navigation</span><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span></button></div><div class="collapse navbar-collapse" id="navbar-collapse-1"><ul class="nav navbar-nav navbar-right"><li class=" nav-menu-page"><a class="" href="/food-menu" id="nav_tab_1_link" target="_self"> 734 735 Menu 736 737 </a></li><li class=" "><a class="" href="/drink-menu" id="nav_tab_2_link" target="_self"> 738 739 Drinks 740 741 </a></li><li class=" nav-order-link"><a class="link-order-sh" href="https://order.toasttab.com/online/sals-pizza-and-restaurant-41-e-genesee-st#" id="nav_tab_3_link" target="_self"> 742 743 Order 744 745 </a></li><li class=" nav-reservations-link"><a class="link-reservations-sh" href="/reservations#" id="nav_tab_4_link" target="_self"> 746 747 Reserve 748 749 </a></li><li class=" nav-parties-link"><a class="link-parties-sh" href="/party#" id="nav_tab_5_link" target="_self"> 750 751 Parties 752 753 </a></li><li class=" nav-catering-link"><a class="link-catering-sh" href="/catering#" id="nav_tab_6_link" target="_self"> 754 755 Catering 756 757 </a></li><li class=" nav-jobs-link"><a class="link-jobs-sh" href="https://tmt.spotapps.co/job-listings?spot_id=504321&callback_url=http://salspizzabville.com/#" id="nav_tab_7_link" target="_self"> 758 759 Jobs 760 761 </a></li><li class=" "><a class="" href="/about" id="nav_tab_8_link" target="_self"> 762 763 About 764 765 </a></li></ul><ul class="socialnav hidden-xs"><li class="social-links social-icons-holder social-square"><a class="pull-left contact-icon" href="https://www.facebook.com/190472807642416" target="_blank"><i class="social-icon fa fa-facebook"></i><span>Facebook page</span></a></li><li class="social-links social-icons-holder social-square"><a class="pull-left contact-icon" href="https://www.google.com/search?q=Sal%27s+Pizza+%26+Restaurant+41+East+Genesee+Street&sca_esv=d1b4d337ee6528a3&hl=en&ei=1m7vaLL3O9mH9u8PyLaB2AY&ved=0ahUKEwiyup-o96WQAxXZg_0HHUhbAGsQ4dUDCBA&uact=5&oq=Sal%27s+Pizza+%26+Restaurant+41+East+Genesee+Street&gs_lp=Egxnd3Mtd2l6LXNlcnAiL1NhbCdzIFBpenphICYgUmVzdGF1cmFudCA0MSBFYXN0IEdlbmVzZWUgU3RyZWV0MgUQIRifBUjwCVApWM8FcAF4AZABAJgBuwGgAeMCqgEDMC4yuAEDyAEA-AEB-AECmAIDoAL7AsICChAAGLADGNYEGEfCAgUQABiABMICBhAAGBYYHpgDAIgGAZAGCJIHAzEuMqAHzgyyBwMwLjK4B_MCwgcFMC4xLjLIBw0&sclient=gws-wiz-serp#lrd=0x89d9e4f7f1f831e5:0x9160e2c6716dcd02,1,,,," target="_blank"><i aria-hidden="true" class="social-icon fa fa-google"></i><span>Google page</span></a></li></ul></div></div></nav><header class="header cover-type-video" style=" 766 background-image: url(https://static.spotapps.co/website_images/ab_websites/504321_website_v1/video_poster_v1.jpg); 767 background-image: linear-gradient( rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6) ), url(https://static.spotapps.co/website_images/ab_websites/504321_website_v1/video_poster_v1.jpg); 768 background-image: -webkit-linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url(https://static.spotapps.co/website_images/ab_websites/504321_website_v1/video_poster_v1.jpg); 769 770 background-repeat: no-repeat; 771 background-position: center center fixed; 772 -webkit-background-size: cover; 773 -moz-background-size: cover; 774 -o-background-size: cover; 775 background-size: cover; 776 z-index: 98; position: relative; overflow: hidden; 777 "><div id="home_page_cover" style="height:100%;"><style> 778 779video#coverVideo { 780 z-index: 99; 781 background: url(https://static.spotapps.co/website_images/ab_websites/504321_website_v1/video_poster_v1.jpg) no-repeat; 782 background-size: cover; 783} 784 785@media (min-width: 768px) { 786 787 788 @media (min-width: 1025px) { 789 790 video#coverVideo { 791 position: absolute; 792 top: 50%; 793 left: 50%; 794 min-width: 100%; 795 min-height: 100%; 796 width: auto; 797 height: auto; 798 -ms-transform: translateX(-50%) translateY(-50%); 799 -moz-transform: translateX(-50%) translateY(-50%); 800 -webkit-transform: translateX(-50%) translateY(-50%); 801 transform: translateX(-50%) translateY(-50%); 802 max-width: none; 803 vertical-align: baseline; 804} 805 } 806 807 @media (max-width: 1024px) { 808 809 video#coverVideo { 810 width: 100%; 811} 812.header { 813 max-height: 100vh; 814 background-image: none !important; 815 width: initial; 816 height: initial; 817} 818body.home-page { 819 background-color: transparent; 820} 821 } 822 823 824} 825 826@media (max-width: 767px) { 827 video#coverVideo { 828 width: 100%; 829} 830.header { 831 max-height: 100vh; 832 background-image: none !important; 833 width: initial; 834 height: initial; 835} 836body.home-page { 837 background-color: transparent; 838}} 839 840 .video-volume-btn, .video-controls-btn { 841 color: rgba(255, 255, 255, 0.9); 842 } 843 844</style>
844<video autoplay="autoplay" id="coverVideo" loop="loop" muted="muted" playsinline="playsinline" poster="https://static.spotapps.co/website_images/ab_websites/504321_website_v1/video_poster_v1.jpg"><source src="https://static.spotapps.co/website_videos/Sals_EditV1_Vimeo720p30.m4v" type="video/mp4"/></video><button aria-label="The decorative video is currently playing, pause the video" class="video-controls-btn" id="cover_video_controls_btn" type="button"><span class="off-screen">The decorative video is currently playing</span><i aria-hidden="true" class="fa fa-play"></i><i aria-hidden="true" class="fa fa-pause"></i></button></div></header><main id="content" role="main"><h1 class="visuallyhidden">Sal's Pizza & Restaurant - Baldwinsville, NY</h1><article class="hide-show-section" data-hidden="no"><style> 845.custom_html_1-section .top-svg-border path, 846.custom_html_1-section .top-svg-border polygon, 847.custom_html_1-section .top-svg-border rect { 848 fill: #272E3E; 849} 850.custom_html_1-section .bottom-svg-border path, 851.custom_html_1-section .bottom-svg-border polygon, 852.custom_html_1-section .bottom-svg-border rect { 853 fill: #000; 854} 855.custom_html_1-section .top-line-border:before { 856 background: #272E3E; 857} 858.custom_html_1-section .bottom-line-border:before { 859 background: #000; 860} 861</style><div class="custom_html_1-section section-wrapper" id="custom_html_1"><div class="plain-line-border top-line-border"></div><div class="container"><h2 class="section-header">Where Family Meets Flavor</h2></div></div></article><article class="hide-show-section" data-hidden="no"><style> 862.about-us-v8-wrapper { 863 padding: 5%; 864} 865.about-us-v8-wrapper:before { 866 background-color: #272E3E; 867 background-image: url('https://static.spotapps.co/website_images/ab_websites/504321_website_v1/aboutus.jpg'); 868 } 869 870.about-us-v8-wrapper .top-svg-border path, 871.about-us-v8-wrapper .top-svg-border polygon, 872.about-us-v8-wrapper .top-svg-border rect { 873 fill: #272E3E; 874} 875.about-us-v8-wrapper .bottom-svg-border path, 876.about-us-v8-wrapper .bottom-svg-border polygon, 877.about-us-v8-wrapper .bottom-svg-border rect { 878 fill: #272E3E; 879} 880.about-us-v8-wrapper .top-line-border:before { 881 background: #272E3E; 882} 883.about-us-v8-wrapper .bottom-line-border:before { 884 background: #272E3E; 885} 886 887.about-us-v8-wrapper .container { 888 padding: 0; 889 width: 100%; 890} 891 892 893 894 895 896 #aboutus_v8 .about-us-v8-item-0 .text-wrapper { 897 padding: 60px 20%; 898 } 899 900 #aboutus_v8 .about-us-v8-item-0 .about-us-v8-content .text-content.title-image h2.about-title::after, 901 #aboutus_v8 .about-us-v8-item-0 .about-us-v8-content .text-content.title-image h2.about-title::before { 902 background-image: url('https://static.spotapps.co/website_images/ab_websites/504321_website_v1/title_decoration.png'); 903 height: 300px; 904 } 905 #aboutus_v8 .about-us-v8-item-0 .about-us-v8-content .text-content.title-image h2.about-title::before { 906 display: block; 907 } 908 909 910 #aboutus_v8 .about-us-v8-item-0 .about-us-v8-content .text-content h3, 911 #aboutus_v8 .about-us-v8-item-0 .about-us-v8-content .text-content h2:not(.about-title) { 912 color: #fff; 913 } 914 915 916 @media (max-width: 1024px) { 917 #aboutus_v8 .about-us-v8-item-0 .text-wrapper { 918 padding: 60px 20%; 919 } 920 } 921 922 @media (max-width: 767px) { 923 #aboutus_v8 .about-us-v8-item-0 .about-us-v8-image { 924 margin: 0; 925 height: 300px; 926 } 927 } 928 929@-webkit-keyframes grow { 930 from { 931 opacity: 0; 932 width: 0px; 933 } 934 to { 935 opacity: 1; 936 width: 80%; 937 } 938} 939@-moz-keyframes grow { 940 from { 941 opacity: 0; 942 width: 0px; 943 } 944 to { 945 opacity: 1; 946 width: 80%; 947 } 948} 949@keyframes grow { 950 from { 951 opacity: 0; 952 width: 0px; 953 } 954 to { 955 opacity: 1; 956 width: 80%; 957 } 958} 959 960.safari-mac .about-us-v8-item .about-us-v8-image-bar { 961 width: 80%; 962} 963 964 965@media (max-width: 767px) { 966 .about-us-v8-wrapper { 967 padding: 0; 968 } 969 .about-us-v8-wrapper .container { 970 padding: 0; 971 width: 100%; 972 } 973 .about-us-v8-item { 974 padding: 0 !important; 975 } 976} 977 978</style><div class="about-us-v8-wrapper section-wrapper" id="aboutus_v8"><div class="plain-line-border top-line-border"></div><div class="container about-us-v8"><section><div class="about-us-v8-item about-us-v8-item-0 about-us-v8-item-left" style="padding: 0;"><!-- start About us item --><div class="about-us-v8-image about-no-image image-size-cover image-size-mobile-cover" style="width: 0%;"><!-- start Left About us image --></div><!-- end Left About us image --><div class="about-us-v8-content " style="width: 100%; 979 color: #fff; 980 background: rgba(250, 250, 250, 0); text-align: center;"><div class="text-wrapper"><div class="text-content title-image"><h2 class="about-title" style="color: #fff;"><span>How it all started</span></h2><div class="text-holder"><h3>A Family Tradition</h3><p style="text-align: center;">
980From the beginning of their relationship, Sal and Meow LoMedico quickly discovered they had the same dreams: To have a family and a full service restaurant they could call their own. After two kids and a decade of hard work and dedication, they realized that dreams do come true! Salâs Pizza & Restaurant opened its doors to Baldwinsville, NY in February 2015. </p></div><div class="buttons-holder buttons-row-parent "><div class="buttons-row"><a class="custom-temp-btn hvr-fade" href="/about" target="_self"> 981 Learn more <span class="visuallyhidden"> about us</span></a></div></div></div></div></div><!-- end Right About us image --></div><!-- end About us item --></section></div><div class="plain-line-border bottom-line-border"></div></div><!-- For mobile devices animate the about_v8 section on page load if the video is on the cover and this section is 1st or 2nd below the cover. --></article><article class="hide-show-section" data-hidden="no"><div class="reservations-tmt-section tmt-section section-wrapper" id="reservations_tmt"><div class="container"><h2 class="section-header">Reservations</h2><h3>Join us today</h3><p>Click the button below to make a reservation.</p><a class="custom-temp-btn hvr-fade" href="/reservations" target="_self">Reserve<span class="visuallyhidden"> a table</span></a></div></div></article><article class="hide-show-section" data-hidden="no"><style> 982.slideshow-v2-wrapper .slideshow-controls-btn { 983 color: rgba(255, 255, 255, 0.8); 984} 985 986</style><div class="slideshow-v2-wrapper" id="slideshow_v2"><div aria-label="slideshow carousel" class="uk-slidenav-position" data-uk-slideshow="data-uk-slideshow" role="region" style="height:650px"><button aria-label="The slideshow is currently playing, pause the slideshow" class="slideshow-controls-btn playing" type="button"><span class="off-screen">slideshow start stop playing</span><i aria-hidden="true" class="fa fa-play"></i><i aria-hidden="true" class="fa fa-pause"></i></button><ul class="uk-dotnav uk-dotnav-contrast uk-position-bottom uk-flex-center"><li data-uk-slideshow-item="0"><a href="" role="button"><span class="off-screen">Slide 1 content</span></a></li><li data-uk-slideshow-item="1"><a href="" role="button"><span class="off-screen">Slide 2 content</span></a></li><li data-uk-slideshow-item="2"><a href="" role="button"><span class="off-screen">Slide 3 content</span></a></li></ul><a class="uk-slidenav uk-slidenav-contrast uk-slidenav-previous" data-uk-slideshow-item="previous" href=""><span class="off-screen">previous slide</span></a><a class="uk-slidenav uk-slidenav-contrast uk-slidenav-next" data-uk-slideshow-item="next" href=""><span class="off-screen">next slide</span></a><ul class="uk-slideshow "><li><img alt="slideshow photo number 1" src="//cdn.spotapps.co/spothopper/image/fetch/f_auto,q_auto:best,c_fit,h_1200/http://static.spotapps.co/spots/cd/6d0b2a61844baf94d13f67568d5765/:original"/><div class="uk-overlay-panel uk-overlay-background uk-overlay-fade uk-flex uk-flex-center uk-flex-middle uk-text-center"><div class="container"><h2>yes, we cater!</h2><div class="buttons-group-holder"><a class="custom-temp-btn hvr-fade" href="/catering" target="_self">catering</a></div></div></div></li><li><img alt="slideshow photo number 2" src="//cdn.spotapps.co/spothopper/image/fetch/f_auto,q_auto:best,c_fit,h_1200/http://static.spotapps.co/spots/63/5259cdf6e8479bb00018a225ae9f91/:original"/><div class="uk-overlay-panel uk-overlay-background uk-overlay-fade uk-flex uk-flex-center uk-flex-middle uk-text-center"><div class="container"><h2>Book your next party with us!</h2><div class="buttons-group-holder"><a class="custom-temp-btn hvr-fade" href="/party" target="_self">book now<span class="visuallyhidden"> a party</span></a></div></div></div></li><li><img alt="slideshow photo number 3" src="//cdn.spotapps.co/spothopper/image/fetch/f_auto,q_auto:best,c_fit,h_1200/http://static.spotapps.co/spots/25/90b3e321094e2b82c30681a80451de/:original"/><div class="uk-overlay-panel uk-overlay-background uk-overlay-fade uk-flex uk-flex-center uk-flex-middle uk-text-center"><div class="container"><h2>How it all started</h2><div class="buttons-group-holder"><a class="custom-temp-btn hvr-fade" href="/about" target="_self">learn more<span class="visuallyhidden">about us</span></a></div></div></div></li></ul></div></div></article><article class="hide-show-section" data-hidden="no"><style> 987.about-us-v8-wrapper.custom-about-us-v8-wrapper { 988 padding: 0; 989} 990.about-us-v8-wrapper.custom-about-us-v8-wrapper:before { 991 background-color: #212838; 992 background-image: url('https://static.spotapps.co/website_images/ab_websites/504321_website_v1/v8_bg.jpg'); 993 994 -webkit-filter: none; 995 -moz-filter: none; 996 -o-filter: none; 997 -ms-filter: none; 998 filter: none; 999 } 1000 1001 1002.about-us-v8-wrapper.custom-about-us-v8-wrapper .container { 1003 padding: 0; 1004 width: 100%; 1005} 1006 1007 1008 1009 1010 1011 #aboutus_v8_custom .about-us-v8-item-0 .text-wrapper { 1012 padding: 15% 8%; 1013 } 1014 1015 #aboutus_v8_custom .about-us-v8-item-0 .about-us-v8-content .text-content.title-image h2.about-title::after, 1016 #aboutus_v8_custom .about-us-v8-item-0 .about-us-v8-content .text-content.title-image h2.about-title::before { 1017 background-image: url('https://static.spotapps.co/website_images/ab_websites/504321_website_v1/title_decoration1.png'); 1018 height: 50px; 1019 } 1020 #aboutus_v8_custom .about-us-v8-item-0 .about-us-v8-content .text-content.title-image h2.about-title::before { 1021 display: block; 1022 } 1023 1024
1025 #aboutus_v8_custom .about-us-v8-item-0 .about-us-v8-content .text-content h3, 1026 #aboutus_v8_custom .about-us-v8-item-0 .about-us-v8-content .text-content h2:not(.about-title) { 1027 color: #E2CAA9; 1028 } 1029 1030 1031 @media (max-width: 1024px) { 1032 #aboutus_v8_custom .about-us-v8-item-0 .text-wrapper { 1033 padding: 15% 8%; 1034 } 1035 } 1036 1037 @media (max-width: 767px) { 1038 #aboutus_v8_custom .about-us-v8-item-0 .about-us-v8-image { 1039 margin: 0; 1040 height: 300px; 1041 } 1042 } 1043 1044 1045 #aboutus_v8_custom .about-us-v8-item-1 { 1046 background-color: #fff; 1047 } 1048 1049 1050 1051 #aboutus_v8_custom .about-us-v8-item-1 .text-wrapper { 1052 padding: 12% 8%; 1053 } 1054 1055 #aboutus_v8_custom .about-us-v8-item-1 .about-us-v8-content .text-content.title-image h2.about-title::after, 1056 #aboutus_v8_custom .about-us-v8-item-1 .about-us-v8-content .text-content.title-image h2.about-title::before { 1057 background-image: url('https://static.spotapps.co/website_images/ab_websites/504321_website_v1/title_decoration2.png'); 1058 height: 50px; 1059 } 1060 #aboutus_v8_custom .about-us-v8-item-1 .about-us-v8-content .text-content.title-image h2.about-title::before { 1061 display: block; 1062 } 1063 1064 1065 #aboutus_v8_custom .about-us-v8-item-1 .about-us-v8-content .text-content h3, 1066 #aboutus_v8_custom .about-us-v8-item-1 .about-us-v8-content .text-content h2:not(.about-title) { 1067 color: #000; 1068 } 1069 1070 #aboutus_v8_custom .about-us-v8-item-1 .about-us-v8-image { 1071 border-width: 24px; 1072 border-style: solid; 1073 border-color: #fff; 1074 } 1075 1076 @media (max-width: 1024px) { 1077 #aboutus_v8_custom .about-us-v8-item-1 .text-wrapper { 1078 padding: 12% 8%; 1079 } 1080 } 1081 1082 @media (max-width: 767px) { 1083 #aboutus_v8_custom .about-us-v8-item-1 .about-us-v8-image { 1084 margin: 0; 1085 height: 300px; 1086 } 1087 } 1088 1089 1090 1091 1092 1093 #aboutus_v8_custom .about-us-v8-item-2 .text-wrapper { 1094 padding: 20% 8%; 1095 } 1096 1097 #aboutus_v8_custom .about-us-v8-item-2 .about-us-v8-content .text-content.title-image h2.about-title::after, 1098 #aboutus_v8_custom .about-us-v8-item-2 .about-us-v8-content .text-content.title-image h2.about-title::before { 1099 background-image: url('https://static.spotapps.co/website_images/ab_websites/504321_website_v1/title_decoration1.png'); 1100 height: 50px; 1101 } 1102 #aboutus_v8_custom .about-us-v8-item-2 .about-us-v8-content .text-content.title-image h2.about-title::before { 1103 display: block; 1104 } 1105 1106 1107 #aboutus_v8_custom .about-us-v8-item-2 .about-us-v8-content .text-content h3, 1108 #aboutus_v8_custom .about-us-v8-item-2 .about-us-v8-content .text-content h2:not(.about-title) { 1109 color: #E2CAA9; 1110 } 1111 1112 1113 @media (max-width: 1024px) { 1114 #aboutus_v8_custom .about-us-v8-item-2 .text-wrapper { 1115 padding: 20% 8%; 1116 } 1117 } 1118 1119 @media (max-width: 767px) { 1120 #aboutus_v8_custom .about-us-v8-item-2 .about-us-v8-image { 1121 margin: 0; 1122 height: 300px; 1123 } 1124 } 1125 1126 1127@-webkit-keyframes grow { 1128 from { 1129 opacity: 0; 1130 width: 0px; 1131 } 1132 to { 1133 opacity: 1; 1134 width: 80%; 1135 } 1136} 1137@-moz-keyframes grow { 1138 from { 1139 opacity: 0; 1140 width: 0px; 1141 } 1142 to { 1143 opacity: 1; 1144 width: 80%; 1145 } 1146} 1147@keyframes grow { 1148 from { 1149 opacity: 0; 1150 width: 0px; 1151 } 1152 to { 1153 opacity: 1; 1154 width: 80%; 1155 } 1156} 1157 1158.safari-mac .custom-about-us-v8-wrapper .about-us-v8-item .about-us-v8-image-bar { 1159 width: 80%; 1160} 1161 1162 1163@media (max-width: 767px) { 1164 .about-us-v8-wrapper.custom-about-us-v8-wrapper { 1165 padding: 0; 1166 } 1167 .about-us-v8-wrapper.custom-about-us-v8-wrapper .container { 1168 padding: 0; 1169 width: 100%; 1170 } 1171 .custom-about-us-v8-wrapper .about-us-v8-item { 1172 padding: 0 !important; 1173 } 1174} 1175 1176</style><div class="about-us-v8-wrapper custom-about-us-v8-wrapper section-wrapper" id="aboutus_v8_custom"><div class="container about-us-v8"><section><div class="about-us-v8-item about-us-v8-item-0 about-us-v8-item-left " style="padding: 5%;"><!-- start About us item --><div class="about-us-v8-image image-size-contain image-size-mobile-contain" style="background-image: url('https://static.spotapps.co/website_images/ab_websites/504321_website_v1/catering.png'); width: 50%; 1177 "><!-- start Left About us image --></div><!-- end Left About us image --><div class="about-us-v8-content " style="width: 50%; 1178 color: #fff; 1179 background: rgba(250, 250, 250, 0); text-align: center;"><div class="text-wrapper"><div class="text-content title-image"><h2 class="about-title" style="color: #fff;"><span>yes, we cater!</span></h2><div class="text-holder"><h3>Let us cater your next event</h3><p>We would be honored to provide our services for your next event. Each event is bespoke to your tastes and needs, to provide the best experience possible for you and your guests.</p></div><div class="buttons-holder buttons-row-parent "><div class="buttons-row"><a class="custom-temp-btn hvr-fade" href="/catering" target="_self"> 1180 catering </a></div></div></div></div></div><!-- end Right About us image --></div><!-- end About us item --></section><section><div class="about-us-v8-item about-us-v8-item-1 about-us-v8-item-spec-color about-us-v8-item-right " style="padding: 0;"><!-- start About us item --><div class="about-us-v8-image visible-xs image-size-cover image-size-mobile-cover" style="background-image: url('https://static.spotapps.co/website_images/ab_websites/504321_website_v1/parties.jpg'); width: 50%; 1181 "><!-- start Left About us image --></div><!-- end Left About us image --><div class="about-us-v8-content " style="width: 50%; 1182 color: #000; 1183 background: rgba(250, 250, 250, 0); text-align: center;"><div class="text-wrapper"><div class="text-content title-image"><h2 class="about-title" style="color: #272E3E;"><span>PRIVATE Parties</span></h2><div class="text-holder"><h3>Book your next party with us!</h3><p>Need the space for your event? Search no more we have a perfect place for you!</p></div><div class="buttons-holder buttons-row-parent "><div class="buttons-row"><a class="custom-temp-btn hvr-fade" href="/party" target="_self"> 1184 book now <sp
1184an class="visuallyhidden"> a party</span></a></div></div></div></div></div><!-- start Right About us image --><div class="about-us-v8-image hidden-xs image-size-cover image-size-mobile-cover" style="background-image: url('https://static.spotapps.co/website_images/ab_websites/504321_website_v1/parties.jpg'); width: 50%; 1185 "></div><!-- end Right About us image --></div><!-- end About us item --></section><section><div class="about-us-v8-item about-us-v8-item-2 about-us-v8-item-left third-section" style="padding: 5% 0;"><!-- start About us item --><div class="about-us-v8-image image-size-contain image-size-mobile-contain" style="background-image: url('https://static.spotapps.co/website_images/ab_websites/504321_website_v1/order.png'); width: 50%; 1186 "><!-- start Left About us image --></div><!-- end Left About us image --><div class="about-us-v8-content " style="width: 50%; 1187 color: #fff; 1188 background: rgba(250, 250, 250, 0); text-align: center;"><div class="text-wrapper"><div class="text-content title-image"><h2 class="about-title" style="color: #fff;"><span>order online</span></h2><div class="text-holder"><h3>Pick Up Your Favorite Food</h3><p>We would be honored to provide our services for your next event. Each event is bespoke to your tastes and needs, to provide the best experience possible for you and your guests.</p></div><div class="buttons-holder buttons-row-parent "><div class="buttons-row"><a class="custom-temp-btn hvr-fade" href="https://order.toasttab.com/online/sals-pizza-and-restaurant-41-e-genesee-st" target="_self"> 1189 order now </a></div></div></div></div></div><!-- end Right About us image --></div><!-- end About us item --></section></div></div><!-- For mobile devices animate the about_v8 section on page load if the video is on the cover and this section is 1st or 2nd below the cover. --></article><article class="hide-show-section" data-hidden="no"><div class="jobs-tmt-section tmt-section section-wrapper" id="jobs_tmt"><div class="container"><h2 class="section-header">We are hiring!</h2><h3>Join our family</h3><p>We are looking for great people to join our amazing team! Check out our current job openings and apply with just a few clicks!</p><a class="custom-temp-btn hvr-fade" href="https://tmt.spotapps.co/job-listings?spot_id=504321&callback_url=http://salspizzabville.com/" target="_self">Learn More & Apply<span class="visuallyhidden"> for a job</span></a></div></div></article><article class="hide-show-section" data-hidden="no"><style></style><div class="gallery-v4-wrapper section-wrapper" id="gallery_v4"><button class="visuallyhidden skip-content gallery-toggle gt-off">Skip Photo Gallery</button><div class="container"><div class="gallery-v4-grid"><div class="gallery-v4-grid-sizer"></div><div class="gallery-v4-grid-item gallery-v4-grid-item--width2 gallery-hover animation_0"><a class="fancybox fancybox.image" href="//static.spotapps.co/spots/78/bc45e1d78d40edacbe7113a24de7f6/full"><div class="img"><img alt="Broccoli mushroom cavatelli pasta served with chicken wings and espresso martini." class="img-responsive lazyload" data-original="//static.spotapps.co/spots/78/bc45e1d78d40edacbe7113a24de7f6/full" data-sizes="auto" data-src="//static.spotapps.co/spots/78/bc45e1d78d40edacbe7113a24de7f6/full" data-srcset="//static.spotapps.co/spots/78/bc45e1d78d40edacbe7113a24de7f6/small 200w, //static.spotapps.co/spots/78/bc45e1d78d40edacbe7113a24de7f6/medium 400w, //static.spotapps.co/spots/78/bc45e1d78d40edacbe7113a24de7f6/full 800w" src="https://static.spotapps.co/web/placeholder.png"/></div></a></div><div class="gallery-v4-grid-item gallery-hover animation_0"><a class="fancybox fancybox.image" href="//static.spotapps.co/spots/76/be92ff61b7436c86556b70ba6c6e5f/full"><div class="img"><img alt="Assorted dinner dishes with pasta, chicken wings, and green beans." class="img-responsive lazyload" data-original="//static.spotapps.co/spots/76/be92ff61b7436c86556b70ba6c6e5f/full" data-sizes="auto" data-src="//static.spotapps.co/spots/76/be92ff61b7436c86556b70ba6c6e5f/full" data-srcset="//static.spotapps.co/spots/76/be92ff61b7436c86556b70ba6c6e5f/small 200w, //static.spotapps.co/spots/76/be92ff61b7436c86556b70ba6c6e5f/medium 400w, //static.spotapps.co/spots/76/be92ff61b7436c86556b70ba6c6e5f/full 800w" src="https://static.spotapps.co/web/placeholder.png"/></div></a></div><div class="gallery-v4-grid-item gallery-hover animation_0"><a class="fancybox fancybox.image" href="//static.spotapps.co/spots/05/244ed737e8448fa49d5e56c30be28f/full"><div class="img"><img alt="Tortellini simmered in vodka sauce served with red wine." class="img-responsive lazyload" data-original="//static.spotapps.co/spots/05/244ed737e8448fa49d5e56c30be28f/full" data-sizes="auto" data-src="//static.spotapps.co/spots/05/244ed737e8448fa49d5e56c30be28f/full" data-srcset="//static.spotapps.co/spots/05/244ed737e8448fa49d5e56c30be28f/small 200w, //static.spotapps.co/spots/05/244ed737e8448fa49d5e56c30be28f/medium 400w, //static.spotapps.co/spots/05/244ed737e8448fa49d5e56c30be28f/full 800w" src="https://static.spotapps.co/web/placeholder.png"/></div></a></div><div class="gallery-v4-grid-item gallery-hover animation_0"><a class="fancybox fancybox.image" href="//static.spotapps.co/spots/cd/43d52eed4e4980ad1008c748a03d7c/full"><div class="img"><img alt="Pinwheels served on a table against a brick wall." class="img-responsive lazyload" data-original="//static.spotapps.co/spots/cd/43d52eed4e4980ad1008c748a03d7c/full" data-sizes="auto" data-src="//static.spotapps.co/spots/cd/43d52eed4e4980ad1008c748a03d7c/full" data-srcset="//static.spotapps.co/spots/cd/43d52eed4e4980ad1008c748a03d7c/small 200w, //static.spotapps.co/spots/cd/43d52eed4e4980ad1008c748a03d7c/medium 400w, //static.spotapps.co/spots/cd/43d52eed4e4980ad1008c748a03d7c/full 800w" src="https://static.spotapps.co/web/placeholder.png"/></div></a></div><div class="gallery-v4-grid-item gallery-hover animation_0"><a class="fancybox fancybox.image" href="//static.spotapps.co/spots/11/0151a15ac04b218dc3686f97008424/full"><div class="img"><img alt="Cheese pizza." class="img-responsive lazyload" data-original="//static.spotapps.co/spots/11/0151a15ac04b218dc3686f97008424/full" data-sizes="auto" data-src="//static.spotapps.co/spots/11/0151a15ac04b218dc3686f97008424/full" data-srcset="//static.spotapps.co/spots/11/0151a15ac04b218dc3686f97008424/small 200w, //static.spotapps.co/spots/11/0151a15ac04b218dc3686f97008424/medium 400w, //static.spotapps.co/spots/11/0151a15ac04b218dc3686f97008424/full 800w" src="https://static.spotapps.co/web/placeholder.png"/></div></a></div><div class="gallery-v4-grid-item gallery-hover animation_0"><a class="fancybox fancybox.image" href="//static.spotapps.co/spots/29/0d635c338d4bf5a993da3abde7dc50/full"><div class="img"><img alt="Fried chicken breast with green beans and white wine butter sauce." class="img-responsive lazyload" data-original="//static.spotapps.co/spots/29/0d635c338d4bf5a993da3abde7dc50/full" data-sizes="auto" data-src="//static.spotapps.co/spots/29/0d635c338d4bf5a993da3abde7dc50/full" data-srcset="//static.spotapps.co/spots/29/0d635c338d4bf5a993da3abde7dc50/small 200w, //static.spotapps.co/spots/29/0d635c338d4bf5a993da3abde7dc50/medium 400w, //static.spotapps.co/spots/29/0d635c338d4bf5a993da3abde7dc50/full 800w" src="https://static.spotapps.co/web/placeholder.png"/></div></a></div><div class="gallery-v4-grid-item gallery-hover animation_0"><a class="fancybox fancybox.image" href="//static.spotapps.co/spots/46/16aaa01e8b4bb499f7f9990f18a2da/full"><div class="img"><img alt="Buffalo wings served on a black plate placed on a restaurant menu with a hot sauce bottle nearby." class="img-responsive lazyload" data-original="//static.spotapps.co/spots/46/16aaa01e8b4bb499f7f9990f18a2da/full" data-sizes="auto" data-src="//static.spotapps.co/spots/46/16aaa01e8b4bb499f7f9990f18a2da/full" data-srcset="//static.spotapps.co/spots/46/16aaa01e8b4bb499f7f9990f18a2da/small 200w, //static.spotapps.co/spots/46/16aaa01e8b4bb499f7f9990f18a2da/medium 400w, //static.spotapps.co/spots/46/16aaa01e8b4bb499f7f9990f18a2da/full 800w" src="https://static.spotapps.co/web/placeholder.png"/></div></a></div><div class="gallery-v4-grid-item gallery-v4-grid-item--width2 gallery-hover animation_0"><a class="fancybox fancybox.image" href="//static.spotapps.co/spots/a9/2cf590d048428b9bda0661cc46fcac/full"><div class="img"><img alt="Creamy tomato pasta with chicken and herbs." class="img-responsive lazyload" data-original="//static.spotapps.co/spots/a9/2cf590d048428b9bda0661cc46fcac/full" data-sizes="auto" data-src="//static.spotapps.co/spots/a9/2cf590d048428b9bda0661cc46fcac/full" data-srcset="//static.spotapps.co/spots/a9/2cf590d048428b9bda0661cc46fcac/small 200w, //static.spotapps.co/spots/a9/2cf590d048428b9bda0661cc46fcac/medium 400w, //static.spotapps.co/spots/a9/2cf590d048428b9bda0661cc46fcac/full 800w" src="https://static.spotapps.co/web/placeholder.png"/></div></a></div><div class="gallery-v4-grid-item gallery-hover animation_0"><a class="fancybox fancybox.image" href="//static.spotapps.co/spots/40/814a81d3ce42b7987517e4e33266f3/full"><div class="img"><img alt="Grilled chicken sandwich with arugula, tomatoes, and cheese." class="img-responsive lazyload" data-original="//static.spotapps.co/spots/40/814a81d3ce42b7987517e4e33266f3/full" data-sizes="auto" data-src="//static.spotapps.co/spots/40/814a81d3ce42b7987517e4e33266f3/full" data-srcset="//static.spotapps.co/spots/40/814a81d3ce42b7987517e4e33266f3/small 200w, //static.spotapps.co/spots/40/814a81d3ce42b7987517e4e33266f3/medium 400w, //static.spotapps.co/spots/40/814a81d3ce42b7987517e4e33266f3/full 800w" src="https://static.spotapps.co/web/placeholder.png"/></div></a></div><div class="gallery-v4-grid-item gallery-hover animation_0"><a class="fancybox fancybox.image" href="//static.spotapps.co/spots/50/fab31cceba47a58f83936514eeb6d5/full"><div class="img"><img alt="Large pepperoni pizza on a restaurant table." class="img-responsive lazyload" data-original="//static.spotapps.co/spots/50/fab31cceba47a58f83936514eeb6d5/full" data-sizes="auto" data-src="//static.spotapps.co/spots/50/fab31cceba47a58f83936514eeb6d5/full" data-srcset="//static.spotapps.co/spots/50/fab31cceba47a58f83936514eeb6d5/small 200w, //static.spotapps.co/spots/50/fab31cceba47a58f83936514eeb6d5/medium 400w, //static.spotapps.co/spots/50/fab31cceba47a58f83936514eeb6d5/full 800w" src="https://static.spotapps.co/web/placeholder.png"/></div></a></div><div class="gallery-v4-grid-item gallery-hover animation_0"><a class="fancybox fancybox.image" href="//static.spotapps.co/spots/25/90b3e321094e2b82c30681a80451de/full"><div class="img"><img alt="Broccoli mushroom chicken served with espresso martini and other dishes." class="img-responsive lazyload" data-original="//static.spotapps.co/spots/25/90b3e321094e2b82c30681a80451de/full" data-sizes="auto" data-src="//static.spotapps.co/spots/25/90b3e321094e2b82c30681a80451de/full" data-srcset="//static.spotapps.co/spots/25/90b3e321094e2b82c30681a80451de/small 200w, //static.spotapps.co/spots/25/90b3e321094e2b82c30681a80451de/medium 400w, //static.spotapps.co/spots/25/90b3e321094e2b82c30681a80451de/full 800w" src="https://static.spotapps.co/web/placeholder.png"/></div></a></div><div class="gallery-v4-grid-item gallery-hover animation_0"><a class="fancybox fancybox.image" href="//static.spotapps.co/spots/1b/0f1353af664cb391b953978b7e37cf/full"><div class="img"><img alt="Wooden bar with a long counter, stools, liquor shelves, and TVs." class="img-responsive lazyload" data-original="//static.spotapps.co/spots/1b/0f1353af664cb391b953978b7e37cf/full" data-sizes="auto" data-src="//static.spotapps.co/spots/1b/0f1353af664cb391b953978b7e37cf/full" data-srcset="//static.spotapps.co/spots/1b/0f1353af664cb391b953978b7e37cf/small 200w, //static.spotapps.co/spots/1b/0f1353af664cb391b953978b7e37cf/medium 400w, //static.spotapps.co/spots/1b/0f1353af664cb391b953978b7e37cf/full 800w" src="https://static.spotapps.co/web/placeholder.png"/></div></a></div><div class="gallery-v4-grid-item gallery-hover animation_0"><a class="fancybox fancybox.image" href="//static.spotapps.co/spots/4b/86b300f5554d5da935968e1f0a172b/full"><div class="img"><img alt="Bartender serving an espresso martini cocktail at a bar." class="img-responsive lazyload" data-original="//static.spotapps.co/spots/4b/86b300f5554d5da935968e1f0a172b/full" data-sizes="auto" data-src="//static.spotapps.co/spots/4b/86b300f5554d5da935968e1f0a172b/full" data-srcset="//static.spotapps.co/spots/4b/86b300f5554d5da935968e1f0a172b/small 200w, //static.spotapps.co/spots/4b/86b300f5554d5da935968e1f0a172b/medium 400w, //static.spotapps.co/spots/4b/86b300f5554d5da935968e1f0a172b/full 800w" src="https://static.spotapps.co/web/placeholder.png"/></div></a></div><div class="gallery-v4-grid-item gallery-hover animation_0"><a class="fancybox fancybox.image" href="//static.spotapps.co/spots/cd/6d0b2a61844baf94d13f67568d5765/full"><div class="img"><img alt="Dinner table with pasta dishes, buffalo wings, green beans, and espresso martini." class="img-responsive lazyload" data-original="//static.spotapps.co/spots/cd/6d0b2a61844baf94d13f67568d5765/full" data-sizes="auto" data-src="//static.spotapps.co/spots/cd/6d0b2a61844baf94d13f67568d5765/full" data-srcset="//static.spotapps.co/spots/cd/6d0b2a61844baf94d13f67568d5765/small 200w, //static.spotapps.co/spots/cd/6d0b2a61844baf94d13f67568d5765/medium 400w, //static.spotapps.co/spots/cd/6d0b2a61844baf94d13f67568d5765/full 800w" src="https://static.spotapps.co/web/placeholder.png"/></div></a></div></div></div></div></article><article class="hide-show-section" data-hidden="no"><style> 1190 1191
1192.reviews-v2-wrapper .carousel-controls .carousel-control-btn { 1193 color: #fff; 1194} 1195</style><div class="carousel-wrapper reviews-v2-wrapper section-wrapper" id="reviews_v2"><h2 class="section-header">Reviews</h2><div class="container"><div aria-label="reviews carousel" class="row" role="region"><div class="carousel-controls" id="ReviewesCarouselControls"><button aria-label="The Reviews carousel is currently playing, pause the Reviews carousel" class="carousel-control-btn stop-carousel" type="button"><i aria-hidden="true" class="fa fa-pause"></i><i aria-hidden="true" class="fa fa-play"></i><span class="visuallyhidden"> Start stop reviews carousel</span></button></div><ul class="owl-dots"><li class="owl-dot"></li><li class="owl-dot"></li><li class="owl-dot"></li><li class="owl-dot"></li><li class="owl-dot"></li></ul><div class="col-md-12 col-xs-12"><div class="owl-carousel owl-theme"><section><div class="item"><h3 class="review-by">Review by - Google</h3><h4 class="reviewer"><span class="visuallyhidden">five star review by</span> 1196 Delightra C: 1197 <i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i></h4><div class="review-text"><div aria-hidden="true" class="review-quote quote-left"><i class="fa fa-quote-left"></i></div><div aria-hidden="true" class="review-quote quote-right"><i class="fa fa-quote-right"></i></div><blockquote><p>Super casual little place with food that has amazing flavor! I have celiac disease, have eaten hear several times and I never been sick! The riggies, pizza and wings are amazing!! Wish I took a pic of those juicy wings! ð¤¤</p></blockquote></div></div></section><section><div class="item"><h3 class="review-by">Review by - Google</h3><h4 class="reviewer"><span class="visuallyhidden">five star review by</span> 1198 Jennifer w: 1199 <i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i></h4><div class="review-text"><div aria-hidden="true" class="review-quote quote-left"><i class="fa fa-quote-left"></i></div><div aria-hidden="true" class="review-quote quote-right"><i class="fa fa-quote-right"></i></div><blockquote><p>This place is awesome. They have the best gluten free pizza. The wings are delicious. The bar area is always fun.</p></blockquote></div></div></section><section><div class="item"><h3 class="review-by">Review by - Google</h3><h4 class="reviewer"><span class="visuallyhidden">five star review by</span> 1200 Sean O: 1201 <i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i></h4><div class="review-text"><div aria-hidden="true" class="review-quote quote-left"><i class="fa fa-quote-left"></i></div><div aria-hidden="true" class="review-quote quote-right"><i class="fa fa-quote-right"></i></div><blockquote><p>My co-worker brought us Sal's at work tonight. We had the Meatzza pizza & the house sauce on the wings. Both were delicious. The only downfall was the 40 minute ride the food took from Sal's to work.</p></blockquote></div></div></section><section><div class="item"><h3 class="review-by">Review by - Google</h3><h4 class="reviewer"><span class="visuallyhidden">five star review by</span> 1202 Alison L: 1203 <i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i></h4><div class="review-text"><div aria-hidden="true" class="review-quote quote-left"><i class="fa fa-quote-left"></i></div><div aria-hidden="true" class="review-quote quote-right"><i class="fa fa-quote-right"></i></div><blockquote><p>I have been here since they expanded because i moved to NC but to like the new add on and just came for drinks but it was a great night to catch up with an old friend last weekend</p></blockquote></div></div></section><section><div class="item"><h3 class="review-by">Review by - Google</h3><h4 class="reviewer"><span class="visuallyhidden">five star review by</span> 1204 Nicholas K: 1205 <i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i><i aria-hidden="true" class="fa fa-star"></i></h4><div class="review-text"><div aria-hidden="true" class="review-quote quote-left"><i class="fa fa-quote-left"></i></div><div aria-hidden="true" class="review-quote quote-right"><i class="fa fa-quote-right"></i></div><blockquote><p>The new bar is awesome! Food was great and the bartenders rocked. It was so busy but they didn't seem to leave anyone waiting!</p></blockquote></div></div></section></div></div></div></div></div></article><article class="hide-show-section" data-hidden="no"><style> 1206.map-newsletter .text-wrapper:before { 1207 background-image: url('https://static.spotapps.co/website_images/ab_websites/504321_website_v1/newsletter.jpg'); 1208 } 1209 1210.googlemap-v3-wrapper .top-svg-border path, 1211.googlemap-v3-wrapper .top-svg-border polygon, 1212.googlemap-v3-wrapper .top-svg-border rect { 1213 fill: #fff; 1214} 1215.googlemap-v3-wrapper .bottom-svg-border path, 1216.googlemap-v3-wrapper .bottom-svg-border polygon, 1217.googlemap-v3-wrapper .bottom-svg-border rect { 1218 fill: #000; 1219} 1220.googlemap-v3-wrapper .top-line-border:before { 1221 background: #fff; 1222} 1223.googlemap-v3-wrapper .bottom-line-border:before { 1224 background: #000; 1225} 1226</style><div class="googlemap-v3-wrapper openstreetmap-v3-wrapper maps-wrapper section-wrapper" id="openstreetmap_v3"><div class="plain-line-border top-line-border"></div><div class="row map-holder"><section><div class="col-md-6 col-sm-12 col-xs-12 map-item map-newsletter"><div class="text-wrapper"><div class="text-content"><h2 class="section-header">Newsletter</h2>
1226<script id="sph-widget-504321" type="text/javascript"> 1227 (function() { 1228 function async_load(){ 1229 var s = document.createElement('script'); 1230 s.type = 'text/javascript'; 1231 s.async = true; 1232 s.src = 'https://www.spothopperapp.com/spots/504321/widgets/newsletter.js?template=newsletter_widget1'; 1233 var embedder = document.getElementById('sph-widget-504321'); 1234 embedder.parentNode.insertBefore(s, embedder); 1235 1236 // Modify widget's html 1237 setTimeout(function(){ 1238 $( '<span class="bar"></span>' ).insertAfter( '.sph-email-input' ); 1239 $('.sph-submit-button').addClass('custom-temp-btn hvr-fade'); 1240 1241 // Replace <h2> with <p> 1242 document.querySelectorAll('.section-wrapper .sph-email-subscription h2').forEach(h2 => { 1243 const p = document.createElement('p'); 1244 1245 // Copy all attributes from h2 to p 1246 [...h2.attributes].forEach(attr => { 1247 p.setAttribute(attr.name, attr.value); 1248 }); 1249 1250 // Copy inner HTML content 1251 p.innerHTML = h2.innerHTML; 1252 1253 // Replace h2 with p 1254 h2.parentNode.replaceChild(p, h2); 1255 }); 1256 }, 2000); 1257 1258 } 1259 if (window.attachEvent) 1260 window.attachEvent('onload', async_load); 1261 else 1262 window.addEventListener('load', async_load, false); 1263 })(); 1264 </script>
1264</div></div></div></section><section><div class="col-md-6 col-sm-12 col-xs-12 map-item"><div aria-label="OpenStreet map" id="map-v3-container" role="region"></div></div></section></div><div class="map-footer text-center"><div class="triangle"></div></div></div></article><article class="hide-show-section" data-hidden="no"><style> 1265 1266.contact-v3 .hours-title, .contact-v3 .social-title, .contact-v3 .contact-us-title { 1267 color: #272E3E; 1268} 1269.contact a:hover, .contact a:active, .contact-us a:hover, .contact-us a:active { 1270 color: #000; 1271} 1272.contact-v3 .social-circle .contact-icon { 1273 color: rgba(255, 255, 255, 0.8); 1274} 1275 .contact-v3 .social-square .contact-icon { 1276 color: #000; 1277 } 1278 .contact-v3 .social-square .contact-icon:hover { 1279 color: #fff; 1280 background-color: #000; 1281 } 1282 1283</style><div class="contact-v3 contact-v3-center section-wrapper" id="contact_v3"><div class="container"><div class="row"><div class="col-md-4 col-sm-4 col-xs-12"><section><div class="contact-location"><div class="hours-title"><h2>Location</h2></div><div class="address">41 East Genesee Street</div><div class="city-state">Baldwinsville, NY</div><div class="zip">13027</div></div></section></div><div class="col-md-4 col-sm-4 col-xs-12"><section><div class="hours"><div class="hours-title"><h2>Hours</h2></div><div>Monday-Wednesday 11:00am to 9:00pm</div><div>Thursday 11:00am to 10:00pm</div><div>Friday-Saturday 11:00am to 11:00pm</div><div>Sunday 12:00pm to 9:00pm</div></div></section></div><div class="col-md-4 col-sm-4 col-xs-12"><div class="find-us"><section><div class="social"><div class="social-title"><h2>Find us on...</h2></div><div class="social-links social-icons-holder social-square"><a class="contact-icon" href="https://www.facebook.com/190472807642416" target="_blank"><i class="social-icon fa fa-facebook"></i><span>Facebook page</span></a><a class="contact-icon google-icon" href="https://www.google.com/search?q=Sal%27s+Pizza+%26+Restaurant+41+East+Genesee+Street&sca_esv=d1b4d337ee6528a3&hl=en&ei=1m7vaLL3O9mH9u8PyLaB2AY&ved=0ahUKEwiyup-o96WQAxXZg_0HHUhbAGsQ4dUDCBA&uact=5&oq=Sal%27s+Pizza+%26+Restaurant+41+East+Genesee+Street&gs_lp=Egxnd3Mtd2l6LXNlcnAiL1NhbCdzIFBpenphICYgUmVzdGF1cmFudCA0MSBFYXN0IEdlbmVzZWUgU3RyZWV0MgUQIRifBUjwCVApWM8FcAF4AZABAJgBuwGgAeMCqgEDMC4yuAEDyAEA-AEB-AECmAIDoAL7AsICChAAGLADGNYEGEfCAgUQABiABMICBhAAGBYYHpgDAIgGAZAGCJIHAzEuMqAHzgyyBwMwLjK4B_MCwgcFMC4xLjLIBw0&sclient=gws-wiz-serp#lrd=0x89d9e4f7f1f831e5:0x9160e2c6716dcd02,1,,,," target="_blank"><i aria-hidden="true" class="social-icon fa fa-google"></i><span>Google page</span></a></div></div></section><section><div class="contact-us"><div class="contact-us-title"><h2>Contact us</h2></div><p><a href="tel:+13156388505" id="contact_us_v3_section_phone_link"><span class="visuallyhidden">Call us at </span>(315)-638-8505</a></p><p><a href="mailto:[email protected]"><span class="visuallyhidden">Write us at </span>[email protected]</a></p></div></section></div></div></div></div></div></article><article class="hide-show-section" data-hidden="no"><div class="footer-v2-wrapper" id="footer_v2"><div class="container"><div class="row"><div class="col-xs-12 col-sm-12 col-md-12 col-lg-12"><p>Powered by: <a aria-label="SpotHopper homepage" class="applicationsLink" href="https://www.spothopperapp.com/" target="_blank"><img alt="SpotHopper logo" class="logoimg" src="https://static.spotapps.co/website_images/default_template_images/spothopper_logo.png"/></a></p></div><div class="col-xs-12 col-sm-12 col-md-12 col-lg-12"><a aria-label="Website design, Social Media marketing, and Email marketing provided by SpotHopper. Contact Us form" class="applicationsLink" href="https://www.spothopperapp.com/contact-us?contact_reason=demo" target="_blank">Website design, Social Media marketing and Email marketing provided by SpotHopper.</a></div></div></div></div></article></main><style type="text/css"> 1284 .navbar-fixed-bottom.nav-v1 { 1285 bottom: -100px; 1286 } 1287 .navbar-fixed-bottom.nav-v1 .nav.navbar-nav.navbar-right { 1288 background-color: #fff; 1289 } 1290 .navbar-fixed-bottom.nav-v1 .bottom-svg-border path, 1291 .navbar-fixed-bottom.nav-v1 .bottom-svg-border polygon { 1292 fill: #000; 1293 } 1294 .navbar-fixed-bottom.nav-v1 .bottom-list-item a { 1295 color: #000; 1296 } 1297 .navbar-fixed-bottom.nav-v1 .bottom-list-item a:hover, 1298 .navbar-fixed-bottom.nav-v1 .bottom-list-item a:focus { 1299 color: #000; 1300 } 1301</style><nav aria-label="mobile footer" class="navbar-fixed-bottom nav-v1" id="bottom-navbar"><div><ul class="nav navbar-nav navbar-right"><li class="bottom-list-item "><a class="bottom-link " href="https://order.toasttab.com/online/sals-pizza-and-restaurant-41-e-genesee-st" id="bottom_link_4" target="_self"> 1302 Order </a></li><li class="bottom-list-item "><a class="bottom-link " href="/reservations" id="bottom_link_3" target="_self"> 1303 Reserve </a></li><li class="bottom-list-item "><a class="bottom-link " href="/party" id="bottom_link_5" target="_self"> 1304 Parties </a></li><li class="bottom-list-item "><a class="bottom-link " href="/catering" id="bottom_link_6" target="_self"> 1305 Catering </a></li><li class="bottom-list-item "><a class="bottom-link " href="https://tmt.spotapps.co/job-listings?spot_id=504321&callback_url=http://salspizzabville.com/" id="bottom_link_7" target="_self"> 1306 Jobs </a></li></ul></div></nav><div aria-hidden="true" aria-label="newsletter dialog" class="modal fade custom-modal" id="CustomModal" role="dialog" tabindex="-1"><div class="modal-dialog modal-md" role="document"><div class="modal-content"><div class="custom-modal-close"><button aria-label="Close" class="close" data-dismiss="modal" type="button"><span aria-hidden="true">Ã</span></button></div><div class="modal-body"><div class="row"><div class="col-md-12"><div class="newsletter-popup"><h2 class="section-header">Newsletter</h2>
1306<script id="sph-widget-2ce08bd156a46491d83342eb4a039092" type="text/javascript"> 1307 (function() { 1308 function async_load(){ 1309 var s = document.createElement('script'); 1310 s.type = 'text/javascript'; 1311 s.async = true; 1312 s.src = 'https://www.spothopperapp.com/spots/504321/widgets/newsletter.js?template=newsletter_widget2'; 1313 var embedder = document.getElementById('sph-widget-2ce08bd156a46491d83342eb4a039092'); 1314 embedder.parentNode.insertBefore(s, embedder); 1315 1316 // Modify widget's html 1317 setTimeout(function(){ 1318 document.querySelectorAll('.custom-modal .sph-email-subscription h2').forEach(h2_p => { 1319 const p_p = document.createElement('p'); 1320 1321 // Copy all attributes from h2 to p 1322 [...h2_p.attributes].forEach(attr => { 1323 p_p.setAttribute(attr.name, attr.value); 1324 }); 1325 1326 // Copy inner HTML content 1327 p_p.innerHTML = h2_p.innerHTML; 1328 1329 // Replace h2 with p 1330 h2_p.parentNode.replaceChild(p_p, h2_p); 1331 }); 1332 }, 2000); 1333 } 1334 if (window.attachEvent) 1335 window.attachEvent('onload', async_load); 1336 else 1337 window.addEventListener('load', async_load, false); 1338 })(); 1339 </script>
1339</div></div></div></div></div></div></div>
1339<script src="https://static.spotapps.co/web/salspizzabville--com/lib/jquery/jquery.min.js"></script>
1339<script src="https://static.spotapps.co/web/salspizzabville--com/lib/jquery/jquery.browser.min.js"></script>
1339<script src="https://static.spotapps.co/web/salspizzabville--com/lib/bootstrap/js/bootstrap.min.js"></script>
1339<script src="https://static.spotapps.co/web/salspizzabville--com/lib/owlcarousel/owl.carousel.min.js"></script>
1339<script src="https://static.spotapps.co/web/salspizzabville--com/lib/masonry/masonry.pkgd.min.js"></script>
1339<script src="https://static.spotapps.co/web/salspizzabville--com/lib/uikit/js/uikit.min.js" type="text/javascript"></script>
1339<script src="https://static.spotapps.co/web/salspizzabville--com/lib/uikit/js/slideshow.min.js" type="text/javascript"></script>
1339<script src="https://static.spotapps.co/web/salspizzabville--com/lib/uikit/js/slideshow-fx.min.js"></script>
1339<script src="https://static.spotapps.co/web/salspizzabville--com/lib/imagesloaded/imagesloaded.pkgd.min.js"></script>
1339<script src="https://static.spotapps.co/iframeResizer.js" type="text/javascript"></script>
1339<script src="//static.spotapps.co/web-lib/leaflet/[email protected]/dist/leaflet.js"></script>
1339<script src="//static.spotapps.co/web-lib/leaflet/leaflet-providers.js"></script>
1339<script src="//static.spotapps.co/web-lib/leaflet/[email protected]/dist/leaflet-gesture-handling.min.js"></script>
1339<script src="https://static.spotapps.co/web/salspizzabville--com/lib/fancybox/source/jquery.fancybox.js" type="text/javascript"></script>
1339<script src="https://static.spotapps.co/web/salspizzabville--com/lib/fancybox/source/jquery.fancybox.pack.js" type="text/javascript"></script>
1339<script src="https://static.spotapps.co/web/salspizzabville--com/lib/fancybox/source/helpers/jquery.fancybox-thumbs.js?v=1.0.7" type="text/javascript"></script>
1339<script src="https://static.spotapps.co/web/salspizzabville--com/lib/fancybox/source/helpers/jquery.fancybox-media.js?v=1.0.6" type="text/javascript"></script>
1339<script type="text/javascript"> 1340 1341 1342 1343 $("#bottom_link_4").on("click", function(){ 1344 if (ga_check()) 1345 universal_ga('send', 'event', 'Button', 'Click', 'Order Online'); 1346 }); 1347 $("#bottom_link_3").on("click", function(){ 1348 if (ga_check()) 1349 universal_ga('send', 'event', 'Button', 'Click', 'Reserve'); 1350 }); 1351 $("#bottom_link_5").on("click", function(){ 1352 if (ga_check()) 1353 universal_ga('send', 'event', 'Button', 'Click', 'Private Party'); 1354 }); 1355 $("#bottom_link_6").on("click", function(){ 1356 if (ga_check()) 1357 universal_ga('send', 'event', 'Button', 'Click', 'Catering'); 1358 }); 1359 $("#bottom_link_7").on("click", function(){ 1360 if (ga_check()) 1361 universal_ga('send', 'event', 'Button', 'Click', 'Jobs'); 1362 }); 1363 $('.header-logo, .nav-v2-home-btn').click(function(event) { 1364 if ( window.location.pathname == '/' || window.location.pathname == '/index.php') { 1365 event.preventDefault(); 1366 var windowScrollTop = $(window).scrollTop(); 1367 if(windowScrollTop > 150) { 1368 $('html, body').animate({scrollTop: 0}, 750); 1369 } 1370 } 1371 }); 1372 1373$(".banner-section a.banner-pin").click(function(e) { 1374 // target element id 1375 var id = $(this).attr('href'); 1376 1377 // target element 1378 var section = $(id); 1379 if (section.length === 0) { 1380 return; 1381 } 1382 1383 // prevent standard hash navigation (avoid blinking in IE) 1384 e.preventDefault(); 1385 1386 // top position relative to the document 1387 var pos = section.offset().top - 100 + 10; 1388 1389 // animated top scrolling 1390 $('body, html').animate({scrollTop: pos}, 750); 1391}); 1392 1393$(document).ready(function() { 1394 var navHeight = $('nav.navbar').height(); 1395 $('html').css("scroll-padding-top", navHeight); 1396}); 1397$(document).on('scroll', function (e) { 1398 if($(document).scrollTop() > 0) { 1399 $('.navbar.nav-v6').addClass('nav-scroll'); 1400 }else { 1401 $('.navbar.nav-v6').removeClass('nav-scroll'); 1402 } 1403}); 1404 1405function scrollStop (callback, refresh = 66) { 1406 1407 // Make sure a valid callback was provided 1408 if (!callback || typeof callback !== 'function') return; 1409 1410 // Setup scrolling variable 1411 let isScrolling; 1412 1413 // Listen for scroll events 1414 window.addEventListener('scroll', function (event) { 1415 1416 // Clear our timeout throughout the scroll 1417 window.clearTimeout(isScrolling); 1418 1419 // Set a timeout to run after scrolling ends 1420 isScrolling = setTimeout(callback, refresh); 1421 1422 }, false); 1423 1424} 1425 1426$(function() { 1427 setDropDownMenuWidth(); 1428 1429 // Function to set drop-down menu position (css top property) 1430 setDropDownMenuTop(); 1431 1432 function setDropDownMenuWidth() { 1433 var tabs_list = $('.navbar-collapse .navbar-nav'); 1434 $(tabs_list).find('li.drop-down-link').each(function() { 1435 var sub_menu_width = $(this).outerWidth(true); 1436 if (sub_menu_width < 100) { 1437 sub_menu_width = 100; 1438 } 1439 $(this).find('.sub-menu').css('width', sub_menu_width+'px'); 1440 1441 }); 1442 }; 1443 1444 function setDropDownMenuTop() { 1445 var sub_menu_top = ($('.navbar.nav-v6 .container').outerHeight() + $('.drop-down-link').outerHeight())/2; 1446 $('li.drop-down-link .sub-menu').css('top', sub_menu_top-2 +'px'); 1447 }; 1448 1449 $( window ).resize(function() { 1450 setDropDownMenuWidth(); 1451 setDropDownMenuTop(); 1452 }); 1453 1454 $(window).on('scroll', function (e) { 1455 setDropDownMenuTop(); 1456 }); 1457 1458 scrollStop(function () { 1459 setDropDownMenuTop(); 1460 if($(document).scrollTop() == 0) { 1461 setTimeout(setDropDownMenuTop, 200); 1462 } 1463 }); 1464 1465 $('.nav a:not(.drop-down)').on('click', function () { 1466 $('.navbar-collapse').collapse('hide'); 1467 }); 1468 1469}); 1470 1471$( '.drop-down-link .drop-down' ).click(function(event) { 1472 event.preventDefault(); 1473 event.stopPropagation(); 1474 var drop_down = $(this).closest('.drop-down-link'); 1475 var drop_down_a = $(this); 1476 1477 if($(drop_down_a).attr("aria-expanded") == "true") { 1478 $(drop_down_a).attr("aria-expanded",false) 1479 } else { 1480 $(drop_down_a).attr("aria-expanded",true) 1481 } 1482 1483 var sub_menu = $(this).closest('.drop-down-link').find( '.sub-menu' ); 1484 if ( $(sub_menu).is( ':hidden' ) ) { 1485 $(sub_menu).slideDown(); 1486 $(drop_down).addClass('active'); 1487 } else { 1488 $(sub_menu).slideUp(); 1489 $(drop_down).removeClass('active'); 1490 } 1491}); 1492$('#navbar-collapse-1').on('hide.bs.collapse', function (e) { 1493 var clickedElement = $(event.target); 1494 if (clickedElement.hasClass('drop-down')) { 1495 return false;
1496 } 1497}); 1498$('#navbar-collapse-1').on('hidden.bs.collapse', function () { 1499 closeOpenedDropDownMenus(); 1500 function closeOpenedDropDownMenus() { 1501 var tabs_list = $('.navbar-collapse .navbar-nav'); 1502 $(tabs_list).find('li.drop-down-link').each(function() { 1503 if( $(this).hasClass('active') ) { 1504 var sub_menu = $(this).find('.sub-menu'); 1505 $(sub_menu).slideUp(); 1506 $(this).removeClass('active'); 1507 } 1508 }); 1509 }; 1510}); 1511 $(document).ready(function() { 1512 var video = $("#coverVideo")[0]; 1513 1514 // Cover video Play/pause 1515 $(".video-controls-btn").click(function () { 1516 if (video.paused) { 1517 video.play(); 1518 $(".video-controls-btn").focus(); 1519 $(".video-controls-btn i.fa-play").hide(); 1520 $(".video-controls-btn i.fa-pause").show(); 1521 $(".video-controls-btn").attr("aria-label", "The decorative video is currently playing, pause the video"); 1522 $(".video-controls-btn .off-screen").text("The decorative video is currently playing"); 1523 } else { 1524 video.pause(); 1525 $(".video-controls-btn").focus(); 1526 $(".video-controls-btn i.fa-play").show(); 1527 $(".video-controls-btn i.fa-pause").hide(); 1528 $(".video-controls-btn").attr("aria-label", "The decorative video is currently paused, play the video"); 1529 $(".video-controls-btn .off-screen").text("The decorative video is currently paused"); 1530 } 1531 }); 1532 // Cover video sound on/off 1533 if (video.muted) { 1534 $(".video-volume-btn").addClass('off'); 1535 } 1536 1537 $(".video-volume-btn").click(function () { 1538 if (video.muted) { 1539 video.muted = false; 1540 $(".video-volume-btn").removeClass('off'); 1541 $(".video-volume-btn").addClass('on'); 1542 $(".video-volume-btn").attr("aria-label", "The decorative video sound is on, turn it off"); 1543 $(".video-volume-btn .off-screen").text("The decorative video sound is on"); 1544 } else { 1545 video.muted = true; 1546 $(".video-volume-btn").removeClass('on'); 1547 $(".video-volume-btn").addClass('off'); 1548 $(".video-volume-btn").attr("aria-label", "The decorative video sound is off, turn it on"); 1549 $(".video-volume-btn .off-screen").text("The decorative video sound is off"); 1550 } 1551 }); 1552 }); 1553$(document).ready(function() { 1554 1555 if (navigator.userAgent.indexOf('Safari') != -1 && navigator.userAgent.indexOf('Mac') != -1 && navigator.userAgent.indexOf('Chrome') == -1 && $(window).width() > 767) { 1556 1557 // Turn Off animations on Safari browser for Mac desktop 1558 $('html').addClass('safari-mac'); 1559 1560 } 1561 else { 1562 1563 var animation_item_elements = $('.about-us-v8-item'); 1564 var window_var = $(window); 1565 1566 function check_if_item_in_view() { 1567 var window_var_height = window_var.height(); 1568 var window_var_top_position = window_var.scrollTop(); 1569 var window_var_bottom_position = (window_var_top_position + window_var_height/2 + 100); 1570 1571 $.each(animation_item_elements, function() { 1572 var element_var = $(this); 1573 var element_var_height = element_var.outerHeight(); 1574 var element_var_top_position = element_var.offset().top; 1575 var element_var_bottom_position = (element_var_top_position + element_var_height/2 + 100); 1576 1577 //check to see if this current container is within viewport 1578 if ((element_var_bottom_position >= window_var_top_position) && 1579 (element_var_top_position <= window_var_bottom_position)) { 1580 element_var.addClass('animate'); 1581 } else { 1582 // element_var.removeClass('in-view'); 1583 } 1584 }); 1585 } 1586 1587 window_var.on('scroll resize', check_if_item_in_view); 1588 window_var.trigger('scroll'); 1589 1590 } 1591 1592 1593}); 1594 $(document).ready(function() { 1595 1596 if ( $(window).width() < 768 ) { 1597 1598 var home_sections = $('article'); 1599 var home_section_id; 1600 var about_v8_section_position; 1601 1602 for (var i = 0; i < home_sections.length; i++) { 1603 home_section_id = $(home_sections[i]).find(".section-wrapper").attr("id"); 1604 if (home_section_id == "aboutus_v8") { 1605 about_v8_section_position = i; 1606 } 1607 } 1608 1609 if ( (about_v8_section_position == 0) || (about_v8_section_position == 1) ) { 1610 // Turn Off animations 1611 $('html').addClass('safari-mac'); 1612 } 1613 } 1614 1615 }); 1616 $(document).ready(function() { 1617 1618 var slideshow = UIkit.slideshow('[data-uk-slideshow]', { 1619 autoplay: true, 1620 height: '100%', 1621 animation: 'swipe', 1622 duration: 500, 1623 autoplayInterval: 4000, 1624 pauseOnHover: false 1625 }); 1626 1627 //play or pause slideshow functions 1628 $('.slideshow-v2-wrapper .slideshow-controls-btn').click(function () { 1629 if($(this).hasClass('playing')){ 1630 slideshow.stop(); 1631 $(this).removeClass('playing'); 1632 $(this).addClass('paused'); 1633 $(this).attr( "aria-label", "The slideshow is currently paused, play the slideshow"); 1634 }else { 1635 slideshow.start(); 1636 $(this).removeClass('paused'); 1637 $(this).addClass('playing'); 1638 $(this).attr( "aria-label", "The slideshow is currently playing, pause the slideshow"); 1639 } 1640 }); 1641 1642 $('.slideshow-v2-wrapper .uk-dotnav a, .slideshow-v2-wrapper a.uk-slidenav').click(function () { 1643 $('.slideshow-v2-wrapper .slideshow-controls-btn').removeClass('playing'); 1644 $('.slideshow-v2-wrapper .slideshow-controls-btn').addClass('paused'); 1645 $('.slideshow-v2-wrapper .slideshow-controls-btn').attr( "aria-label", "The slideshow is currently paused, play the slideshow"); 1646 }); 1647 1648 (function( func ) { 1649 $.fn.addClass = function() { // replace the existing function on $.fn 1650 func.apply( this, arguments ); // invoke the original function 1651 this.trigger('classChanged'); // trigger the custom event 1652 return this; // retain jQuery chainability 1653 } 1654 })($.fn.addClass); // pass the original function as an argument 1655 1656 (function( func ) { 1657 $.fn.removeClass = function() { 1658 func.apply( this, arguments ); 1659 this.trigger('classChanged'); 1660 return this; 1661 } 1662 })($.fn.removeClass); 1663 $('.uk-slideshow li').each(function(index) { 1664 $(this).find('.custom-temp-btn').attr("tabindex", -1); 1665 $(this).on('classChanged', function(){ 1666 if($(this).hasClass('uk-active')){ 1667 $(this).find('.custom-temp-btn').attr("tabindex", 0); 1668 $(slideDot[index]).attr('aria-current', 'true'); 1669 } else { 1670 $(this).find('.custom-temp-btn').attr("tabindex", -1); 1671 $(slideDot[index]).attr('aria-current', 'false'); 1672 } 1673 }); 1674 }); 1675 1676 var slideDot = $('.slideshow-v2-wrapper .uk-dotnav li a'); 1677 1678 slideDot.attr('aria-current', 'false'); 1679 $(slideDot[0]).attr('aria-current', 'true'); 1680 1681 }); 1682 1683$(document).ready(function() { 1684 1685 if (navigator.userAgent.indexOf('Safari') != -1 && navigator.userAgent.indexOf('Mac') != -1 && navigator.userAgent.indexOf('Chrome') == -1 && $(window).width() > 767) { 1686
1687 // Turn Off animations on Safari browser for Mac desktop 1688 $('html').addClass('safari-mac'); 1689 1690 } 1691 else { 1692 1693 var animation_item_elements_c = $('.custom-about-us-v8-wrapper .about-us-v8-item'); 1694 var window_var_c = $(window); 1695 1696 function check_if_item_in_view_c() { 1697 var window_var_c_height = window_var_c.height(); 1698 var window_var_c_top_position = window_var_c.scrollTop(); 1699 var window_var_c_bottom_position = (window_var_c_top_position + window_var_c_height/2 + 100); 1700 1701 $.each(animation_item_elements_c, function() { 1702 var element_var_c = $(this); 1703 var element_var_c_height = element_var_c.outerHeight(); 1704 var element_var_c_top_position = element_var_c.offset().top; 1705 var element_var_c_bottom_position = (element_var_c_top_position + element_var_c_height/2 + 100); 1706 1707 //check to see if this current container is within viewport 1708 if ((element_var_c_bottom_position >= window_var_c_top_position) && 1709 (element_var_c_top_position <= window_var_c_bottom_position)) { 1710 element_var_c.addClass('animate'); 1711 } else { 1712 // element_var_c.removeClass('in-view'); 1713 } 1714 }); 1715 } 1716 1717 window_var_c.on('scroll resize', check_if_item_in_view_c); 1718 window_var_c.trigger('scroll'); 1719 1720 } 1721 1722 1723}); 1724 $(document).ready(function() { 1725 1726 if ( $(window).width() < 768 ) { 1727 1728 var home_sections_c = $('article'); 1729 var home_section_c_id; 1730 var about_v8_section_c_position; 1731 1732 for (var i = 0; i < home_sections_c.length; i++) { 1733 home_section_c_id = $(home_sections_c[i]).find(".section-wrapper").attr("id"); 1734 if (home_section_c_id == "aboutus_v8_custom") { 1735 about_v8_section_c_position = i; 1736 } 1737 } 1738 1739 if ( (about_v8_section_c_position == 0) || (about_v8_section_c_position == 1) ) { 1740 // Turn Off animations 1741 $('html').addClass('safari-mac'); 1742 } 1743 } 1744 1745 }); 1746 // init Masonry 1747 var gridGallery = $('#gallery_v4 .gallery-v4-grid').masonry({ 1748 columnWidth: '.gallery-v4-grid-sizer', 1749 // do not use .grid-sizer in layout 1750 itemSelector: '.gallery-v4-grid-item', 1751 percentPosition: true, 1752 fitWidth: true 1753 }); 1754 1755 gridGallery.imagesLoaded(function() { 1756 gridGallery.masonry('layout'); 1757 }); 1758 1759 // layout Masonry after each image loads 1760 gridGallery.imagesLoaded().progress( function() { 1761 gridGallery.masonry('layout'); 1762 }); 1763 1764 // Re-set gallery layout 1765 $(window).load(function() { 1766 // trigger Masonry layout 1767 gridGallery.masonry('layout'); 1768 }); 1769 function discontinuousGG(func){ 1770 var timer; 1771 return function(event){ 1772 if(timer) clearTimeout(timer); 1773 timer = setTimeout(func,200,event); 1774 }; 1775 } 1776 $(window).on("resize", discontinuousGG(function() { 1777 setTimeout(() => gridGallery.masonry('layout'), 300); 1778 })); 1779 1780 $(document).ready(function() { 1781 1782 var fancyboxSlider = $('#gallery_v4 .fancybox'); 1783 1784 fancyboxSlider.attr('rel', 'gallery').fancybox({ 1785 beforeShow : function() { 1786 var alt = this.element.find('img').attr('alt'); 1787 this.inner.find('img').attr('alt', alt); 1788 }, 1789 padding : 15, 1790 margin: 20, 1791 arrows : true, 1792 closeBtn: true, 1793 autoPlay : false, 1794 playSpeed : 3000, 1795 loop : true, 1796 openEffect : 'fade', 1797 closeEffect : 'fade', 1798 nextEffect : 'elastic', 1799 prevEffect : 'elastic', 1800 helpers : { 1801 overlay : { 1802 css : { 1803 'background' : 'rgba(0, 0, 0, 0.5)' 1804 }, 1805 locked: false 1806 } 1807 } 1808 }); 1809 1810 var galleryToggleBtn = $('.gallery-v4-wrapper .gallery-toggle'); 1811 var galleryImages = $('.gallery-v4-grid-item a'); 1812 var galleryToggleTextOff = 'The Photo Gallery of ' + galleryImages.length + ' images can be accessed, hide the Photo Gallery from the Screen Reader'; 1813 var galleryToggleTextOn = 'The Photo Gallery of ' + galleryImages.length + ' images is hidden from the Screen Reader, access the Photo Gallery'; 1814 galleryToggleBtn.attr('aria-label', galleryToggleTextOff); 1815 1816 galleryToggleBtn.on('click',function(){ 1817 $(this).toggleClass('gt-off'); 1818 1819 const parentElement = $(this).closest('article'); 1820 const nextElement = $(parentElement).next(); 1821 1822 if ($(this).hasClass('gt-off')) { 1823 $(this).attr('aria-label', galleryToggleTextOff); 1824 galleryImages.each(function() { 1825 $(this).attr('aria-hidden', 'false').attr('tabindex', '0'); 1826 }); 1827 } else { 1828 $(this).attr('aria-label', galleryToggleTextOn); 1829 galleryImages.each(function() { 1830 $(this).attr('aria-hidden', 'true').attr('tabindex', '-1'); 1831 }); 1832 1833 if (nextElement.length !== 0) { 1834 const scrollTo = $(nextElement).offset().top - 100; 1835 $('html, body').animate({ scrollTop: scrollTo }, 1000); 1836 } 1837 } 1838 }); 1839 1840 }); 1841 $(document).ready(function() { 1842 1843 var owlReviews = $('#reviews_v2 .owl-carousel'); 1844 owlReviews.owlCarousel({ 1845 onInitialized: function (property) { 1846 //check if show dots is true in config 1847 if(true){ 1848 $('.reviews-v2-wrapper .owl-dot').each(function( index ) { 1849 var i = index + 1; 1850 $(this).html('<button aria-label="Review '+i+'"><span class="visuallyhidden">Review '+i+'</span></button>'); 1851 }); 1852 } 1853 //check if show arrows is true in config 1854 if(true && !true){ 1855 reviewsHandleArrowTabbing(owlReviews); 1856 } 1857 //prevent voiceover from reading hidden content 1858 $('.reviews-v2-wrapper').find('.owl-item').attr('aria-hidden','true'); 1859 $(property.target).find(".owl-item").eq(property.item.index).attr('aria-hidden','false'); 1860 }, 1861 margin: 0, 1862 nav: true, 1863 dots: true, 1864 dotsContainer: '#reviews_v2 .owl-dots', 1865 autoplay: true, 1866 autoplayTimeout: 6000, 1867 autoplayHoverPause: false, 1868 loop: true, 1869 navText: [ '<button aria-label="previous review">‹</button>', '<button aria-label="next review">›</button>' ], 1870 responsive: { 1871 0: { 1872 items: 1 1873 }, 1874 600: { 1875 items: 1 1876 }, 1877 1000: { 1878 items: 1 1879 } 1880 } 1881 }); 1882 1883 function discontinuousReviews(func){ 1884 var timer; 1885 return function(event){ 1886 if(timer) clearTimeout(timer); 1887 timer = setTimeout(func,200,event); 1888 }; 1889 } 1890 1891 $('#reviews_v2 .owl-dot button').attr('aria-current', 'false'); 1892 $('#reviews_v2 .owl-dot:first button').attr('aria-current', 'true'); 1893 1894 function reviewsCarouselStop() { 1895 owlReviews.trigger('stop.owl.autoplay'); 1896 owlReviews.data('owl.carousel').settings.autoplay = false;
1897 $('#reviews_v2 .carousel-control-btn').removeClass('stop-carousel'); 1898 $('#reviews_v2 .carousel-control-btn').addClass('play-carousel'); 1899 $('#reviews_v2 .carousel-control-btn').attr('aria-label', 'The Reviews carousel is currently paused, play the Reviews carousel'); 1900 } 1901 1902 function reviewsCarouselPlay() { 1903 owlReviews.trigger('play.owl.autoplay',[1000]); 1904 owlReviews.data('owl.carousel').settings.autoplay = true; 1905 $('#reviews_v2 .carousel-control-btn').removeClass('play-carousel'); 1906 $('#reviews_v2 .carousel-control-btn').addClass('stop-carousel'); 1907 $('#reviews_v2 .carousel-control-btn').attr('aria-label', 'The Reviews carousel is currently playing, pause the Reviews carousel'); 1908 } 1909 1910 $('#reviews_v2 .carousel-control-btn').on('click',function(){ 1911 if ($(this).hasClass('stop-carousel')) { 1912 reviewsCarouselStop(); 1913 } else if ($(this).hasClass('play-carousel')) { 1914 reviewsCarouselPlay(); 1915 } 1916 }); 1917 1918 $('#reviews_v2 .owl-dot').click(function () { 1919 owlReviews.trigger('to.owl.carousel', [$(this).index(), 300]); 1920 reviewsCarouselStop(); 1921 }); 1922 1923 $('#reviews_v2 .owl-nav').click(function () { 1924 reviewsCarouselStop(); 1925 }); 1926 1927 $(window).on("resize", discontinuousReviews(function() { 1928 if ($('#reviews_v2 .carousel-control-btn').hasClass('play-carousel')) { 1929 setTimeout(() => reviewsCarouselStop(), 500); 1930 } 1931 })); 1932 1933 $(window).on('focus', function() { 1934 if ($('#reviews_v2 .carousel-control-btn').hasClass('stop-carousel')) { 1935 owlReviews.trigger('next.owl.carousel'); 1936 } 1937 }); 1938 1939 //prevent voiceover from reading hidden content 1940 owlReviews.on('changed.owl.carousel',function(property){ 1941 $('.reviews-v2-wrapper').find('.owl-item').attr('aria-hidden','true'); 1942 $(property.target).find(".owl-item").eq(property.item.index).attr('aria-hidden','false'); 1943 $(property.target).find(".owl-dot").find('button').attr('aria-current', 'false'); 1944 $(property.target).find(".owl-dot").filter('.active').find('button').attr('aria-current', 'true'); 1945 }); 1946 1947 //check if show arrows is true in config 1948 if(true && !true){ 1949 reviewsHandleArrowTabbing(owlReviews); 1950 } 1951 1952 function reviewsHandleArrowTabbing(widget){ 1953 widget.on('changed.owl.carousel',function(property){ 1954 //handle tabbing when previous slider button is hidden 1955 if($(property.target).find(".owl-prev").hasClass('disabled')){ 1956 $(property.target).find(".owl-prev").children().attr('tabindex', -1); 1957 $(property.target).find(".owl-prev").attr('aria-hidden','true'); 1958 } 1959 else { 1960 $(property.target).find(".owl-prev").children().attr('tabindex', 0); 1961 $(property.target).find(".owl-prev").attr('aria-hidden','false'); 1962 } 1963 //handle tabbing when next slider button is hidden 1964 if($(property.target).find(".owl-next").hasClass('disabled')){ 1965 $(property.target).find(".owl-next").children().attr('tabindex', -1); 1966 $(property.target).find(".owl-next").attr('aria-hidden','true'); 1967 } 1968 else { 1969 $(property.target).find(".owl-next").children().attr('tabindex', 0); 1970 $(property.target).find(".owl-next").attr('aria-hidden','false'); 1971 } 1972 }); 1973 } 1974 1975 $('.reviews-v2-wrapper .owl-nav').insertBefore($('.reviews-v2-wrapper .owl-stage-outer')); 1976 $('.reviews-v2-wrapper .owl-dots').insertBefore($('.reviews-v2-wrapper .owl-nav')); 1977 1978 });iFrameResize({ 1979 enablePublicMethods: true, 1980 enableInPageLinks: true 1981}); 1982 1983var marker_icon = ""; 1984var additionalPins = ''; 1985if (additionalPins) { 1986 var locationsArray = JSON.parse(''); 1987} 1988 1989var google_map_url = 'https://www.google.com/maps/place/' + ",41 East Genesee Street,Baldwinsville,NY,13027".split(' ').join('+'); 1990function open_google_map() { 1991 window.open(google_map_url, '_blank') 1992} 1993 1994function discontinuous(func){ 1995 var timer; 1996 return function(event){ 1997 if(timer) clearTimeout(timer); 1998 timer = setTimeout(func,200,event); 1999 }; 2000} 2001 2002function init_open_street_map() { 2003 if (additionalPins) { 2004 var map = L.map('map-v3-container', { 2005 minZoom: 3, 2006 zoomControl: false, 2007 zoomSnap: 1, 2008 gestureHandling: true 2009 }); 2010 2011 var allMarkers = []; 2012 2013 var marker = L.marker([43.1592611, -76.3279867], {title: '41 East Genesee Street, Baldwinsville', alt: 'View 41 East Genesee Street, Baldwinsville on Google maps - opens in a new tab'}).addTo(map); 2014 allMarkers.push(marker); 2015 2016 marker.on('click keypress', open_google_map); 2017 2018 locationsArray.forEach(function(element, index) { 2019 var additionalMarker = L.marker([element.lat_coords, element.lng_coords], {title: element.pin_title, alt: 'View ' + element.pin_title + ' on Google maps - opens in a new tab'}).addTo(map); 2020 2021 additionalMarker.on('click keypress', function() { 2022 window.open(element.pin_link, '_blank'); 2023 }); 2024 2025 allMarkers.push(additionalMarker); 2026 2027 }); 2028 2029 function fitBoundsToMarkers(osmap, markers) { 2030 osmap.invalidateSize(); 2031 var group = new L.featureGroup(markers); 2032 osmap.fitBounds(group.getBounds(), {padding: [50, 50]}); 2033 } 2034 2035 fitBoundsToMarkers(map, allMarkers); 2036 2037 document.querySelector('.reset-zoom-btn').addEventListener('click', function () { 2038 fitBoundsToMarkers(map, allMarkers); 2039 }); 2040 2041 window.addEventListener("resize", discontinuous(function(e) { 2042 fitBoundsToMarkers(map, allMarkers); 2043 })); 2044 } else { 2045 var map = L.map('map-v3-container', { 2046 center: [ 43.1592611, -76.3279867], 2047 zoom: 16, 2048 dragging: false, 2049 minZoom: 3, 2050 zoomControl: false, 2051 }); 2052 2053 var marker = L.marker([43.1592611, -76.3279867], {title: '41 East Genesee Street, Baldwinsville', alt: 'View 41 East Genesee Street, Baldwinsville on Google maps - opens in a new tab'}).addTo(map); 2054 2055 marker.on('click keypress', open_google_map); 2056 2057 map.scrollWheelZoom.disable(); 2058 } 2059 2060 if (marker_icon.length>0){ 2061 var myIcon = L.icon({ 2062 iconUrl: marker_icon, 2063 iconSize: [35,35] 2064 }); 2065 2066 if(allMarkers) {
2067 allMarkers.forEach(marker => { 2068 marker.setIcon(myIcon); 2069 marker.update(); 2070 }); 2071 } else { 2072 marker.setIcon(myIcon); 2073 marker.update(); 2074 } 2075 } 2076 2077 L.tileLayer.provider('OpenStreetMap.Mapnik').addTo(map); 2078 L.control.zoom({ 2079 position:'bottomleft' 2080 }).addTo(map); 2081 2082 $('.openstreetmap-v3-wrapper #map-v3-container').removeAttr('tabindex'); 2083 $('.leaflet-touch .leaflet-bar a').attr('tabindex', '-1'); 2084 $('.leaflet-container .leaflet-marker-pane img').attr('role', 'link'); 2085} 2086 2087$(document).ready(function() { 2088 init_open_street_map(); 2089}); 2090$("#contact_us_v3_section_phone_link").on("click", function(){ 2091 if (ga_check()) 2092 universal_ga('send', 'event', 'Button', 'Click', 'Phone'); 2093}); 2094 setTimeout(function(){ 2095 $('.navbar-fixed-bottom.nav-v1').addClass('show-bottom-nav'); triggerShowFooterEvents(); 2096 }, 4000); 2097 2098 var navigation_alpha_starts_from = 0; 2099 var navigation_background_color = "rgba(0, 0, 0,"; 2100 var navigation_darkens_on_scroll = "1"; 2101 var top_nav_new_style = !navigation_darkens_on_scroll && ($(window).width() > 767); 2102 var custom_nav_style = "1"; 2103 if(!custom_nav_style){ 2104 $('.navbar-regular').css('background-color', 'rgba(255, 255, 255,' + navigation_alpha_starts_from + ')'); 2105 $('.navbar-inverse').css('background-color', navigation_background_color + (top_nav_new_style ? 0 : navigation_alpha_starts_from) + ')'); 2106 } 2107 2108 if (navigation_darkens_on_scroll && !custom_nav_style) { 2109 $(document).on('scroll', function (e) { 2110 var alpha = navigation_alpha_starts_from + $(document).scrollTop() / 1950; 2111 $('.navbar-inverse').css('background-color', navigation_background_color + alpha + ')'); 2112 $('.navbar-regular').css('background-color', 'rgba(255, 255, 255,' + alpha + ')'); 2113 }); 2114 } 2115 2116 if (!navigation_darkens_on_scroll && !custom_nav_style) { 2117 $(window).resize(function() { 2118 if ($(window).width() > 767) 2119 $('.navbar-inverse').css('background-color', navigation_background_color + 0 + ')'); 2120 else 2121 $('.navbar-inverse').css('background-color', navigation_background_color + navigation_alpha_starts_from + ')'); 2122 }); 2123 } 2124 2125</script>
2125<script type="text/javascript"> 2126 function openPopUp() { 2127 2128 document.touchmove = function (e) { 2129 e.preventDefault(); 2130 }; 2131 $(function () { 2132 $('body').css('overflow', 'hidden'); 2133 2134 $('#CustomModal').modal({ 2135 show: true 2136 }); 2137 2138 $(document).on('shown.bs.modal', '.modal', function () { 2139 //handle reader focus 2140 focusModal(); 2141 }); 2142 $(document).on("hidden.bs.modal", ".modal", function (event, ui) { 2143 //handle reader focus 2144 focusNavbar(); 2145 $('body').css('overflow', ''); 2146 document.touchmove = function () {}; 2147 }); 2148 }); 2149 } 2150 2151 function focusModal() { 2152 $('.modal-dialog') 2153 .css('outline', 'none') 2154 .attr('tabindex', '-1') 2155 .focus(); 2156 } 2157 2158 function focusNavbar(){ 2159 //handle which header exists 2160 if($(".navbar")){ 2161 var element = $(".navbar"); 2162 }else{ 2163 var element = $(".navbar-normal"); 2164 } 2165 element.css('outline', 'none') 2166 .attr('tabindex', '-1') 2167 .focus(); 2168 } 2169 2170 var showPopupPerSession = false; 2171 // Check if popup is set to show once per session 2172 if (!showPopupPerSession || (showPopupPerSession && !sessionStorage.getItem("newsletter_popup_shown"))) { 2173 var t = setTimeout(openPopUp, 10000); 2174 sessionStorage.setItem("newsletter_popup_shown", "yes"); 2175 } 2176 2177 </script>
2177<script> 2178 var animate_sections = ["banner","aboutus_v2","gallery_v3","aboutus_v7"]; 2179 2180 for (var i = 0; i < animate_sections.length; i++) { 2181 $('#'+animate_sections[i]).addClass('animation-element'); 2182 } 2183 2184 var $animation_elements = $('.animation-element'); 2185 var $window = $(window); 2186 2187 function check_if_in_view() { 2188 var window_height = $window.height(); 2189 var window_top_position = $window.scrollTop(); 2190 var window_bottom_position = (window_top_position + window_height/2); 2191 2192 $.each($animation_elements, function() { 2193 var $element = $(this); 2194 var element_height = $element.outerHeight(); 2195 var element_top_position = $element.offset().top; 2196 var element_bottom_position = (element_top_position + element_height/2); 2197 2198 //check to see if this current container is within viewport 2199 if ((element_bottom_position >= window_top_position) && 2200 (element_top_position <= window_bottom_position)) { 2201 $element.addClass('animate'); 2202 } else { 2203 // $element.removeClass('in-view'); 2204 } 2205 }); 2206 } 2207 2208 $window.on('scroll resize', check_if_in_view); 2209 $window.trigger('scroll'); 2210 </script>
2210<script> 2211$(function () { 2212 //If Newsletter widget (popup or section) is on 2213 if ($('.newsletter-popup').length || $('.map-newsletter').length || $('.newsletter-section').length) { 2214 //Inject html needed for ADA 2215 var waitSPHWidget = setInterval(function(){ 2216 if ($('.sph-email-input').length) { 2217 // 2218 $('.sph-loading-img img').attr('alt', 'Newsletter Loader icon'); 2219 clearInterval(waitSPHWidget) 2220 } 2221 }, 300); 2222 } 2223}); 2224</script>
2224<script> 2225// Functions needed for Newsletter (sh widget) subscription submit (case when texting is Off in SH) 2226function isEmail(email) { 2227 var regex = /^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/; 2228 return regex.test(email); 2229} 2230function submitEmail(input_id) { 2231 var shp_email_to_subscribe = $("#sph-newsletter-input-" + input_id); 2232 if (!isEmail(shp_email_to_subscribe.val())) { 2233 alert('Please enter valid email address'); 2234 return; 2235 } 2236 var sph_email_form_div = $(".sph-email-form"); 2237 var sph_loading_img = $(".sph-loading-img"); 2238 var sph_response_message_div = $(".sph-response-message"); 2239 var sph_submit_label = $(".sph-submit-label"); 2240 sph_submit_label.hide(); 2241 sph_loading_img.show(); 2242 var request = $.ajax({ 2243 method: "POST", 2244 url: "https://www.spothopperapp.com/api/spots/504321/contacts/add", 2245 crossDomain: true, 2246 dataType: 'json', 2247 data: { email: shp_email_to_subscribe.val() }, 2248 success: function (data) { 2249 sph_response_message_div.html(data); 2250 sph_email_form_div.hide(); 2251 sph_response_message_div.show(); 2252 }, 2253 error: function (data) { 2254 sph_response_message_div.html("Something went wrong. Please try again later."); 2255 sph_email_form_div.hide(); 2256 sph_response_message_div.show(); 2257 } 2258 }); 2259} 2260</script>
2260<script>(function() { 2261 const MODAL_ID = 'promotion-pop-up'; 2262 const SESSION_KEY = 'promotion-pop-up-container-ids'; 2263 const PADDING = 70; 2264 const RESIZE_DEBOUNCE_MS = 150; 2265 const INITIAL_DELAY = typeof promotion_pop_up_initial_delay === 'undefined' ? 2266 2000 : 2267 promotion_pop_up_initial_delay; 2268 2269 const POP_UP_PRIORITY = ["holiday_party"]; 2270 const _norm = s => (s || "").toString().trim().toLowerCase(); 2271 const PRIORITY_RANK = new Map(POP_UP_PRIORITY.map((n, i) => [_norm(n), i])); 2272 2273 function displayPromotionPopUp() { 2274 const items = document.getElementsByClassName('promotion_pop_up_content'); 2275 2276 // Track shown IDs as a Set (no dups, fast lookups) 2277 const shownIds = new Set( 2278 (sessionStorage.getItem(SESSION_KEY) || '') 2279 .split(',') 2280 .map(s => s.trim()) 2281 .filter(Boolean) 2282 ); 2283 2284 // Hide all; collect items not shown this session 2285 const availableItems = []; 2286 Array.prototype.forEach.call(items, item => { 2287 item.style.display = 'none'; 2288 2289 // --- Exclusion logic --- 2290 // Block popups whose non-custom CTA link is a phone number (tel:) 2291 const isCustomLink = item.getAttribute("data-is-custom-link") ?? "false"; 2292 const linkUrl = item.getAttribute("data-link-url") || ""; 2293 2294 const excludeItem = 2295 isCustomLink === "false" && 2296 linkUrl.trim().toLowerCase().startsWith("tel"); 2297 2298 if (excludeItem) { 2299 return; // Skip this popup entirely 2300 } 2301 2302 if (!shownIds.has(item.id)) { 2303 availableItems.push(item); 2304 } 2305 }); 2306 2307 if (availableItems.length === 0) return false; 2308 2309 // --- Priority logic --- 2310 const norm = s => (s || '').toString().trim().toLowerCase(); 2311 const prioritySource = Array.isArray(POP_UP_PRIORITY) 2312 ? POP_UP_PRIORITY 2313 : Array.isArray(window.pop_up_priority) 2314 ? window.pop_up_priority 2315 : []; 2316 const rank = new Map(prioritySource.map((name, i) => [norm(name), i])); 2317 2318 const records = availableItems.map(el => { 2319 const internal = norm(el.getAttribute('data-internalname')); 2320 const priority = rank.has(internal) ? rank.get(internal) : Infinity; 2321 return { el, priority }; 2322 }); 2323 2324 let selectedItem; 2325 const minPriority = Math.min(...records.map(r => r.priority)); 2326 2327 if (isFinite(minPriority)) { 2328 // Randomize within the highest-priority bucket only 2329 const topBucket = records.filter(r => r.priority === minPriority); 2330 const pick = topBucket[Math.floor(Math.random() * topBucket.length)]; 2331 selectedItem = pick.el; 2332 } else { 2333 // Pure random among all available when no priorities match 2334 selectedItem = availableItems[Math.floor(Math.random() * availableItems.length)]; 2335 } 2336 2337 // Show popup 2338 selectedItem.style.display = 'block'; 2339 2340 // Analytics + persist shown id (unless preview param present) 2341 if (window.location.search.indexOf('spot_promotion_channel_id=') === -1) { 2342 shownIds.add(selectedItem.id); 2343 do_promotion_analytics( 2344 selectedItem.getAttribute('data-internalname'), 2345 selectedItem.id, 2346 selectedItem.getAttribute('data-link-url'), 2347 selectedItem.getAttribute('data-has-image'), 2348 selectedItem.getAttribute('data-is-template-image-and-button') 2349 ); 2350 } 2351 2352 sessionStorage.setItem(SESSION_KEY, Array.from(shownIds).join(',')); 2353 return true; 2354 } 2355 2356 function preloadImages(container, callback) { 2357 const images = container.querySelectorAll('img'); 2358 if (images.length === 0) return callback(); 2359 2360 let loaded = 0; 2361 Array.prototype.forEach.call(images, function(img) { 2362 if (img.complete) { 2363 if (++loaded === images.length) callback(); 2364 } else { 2365 img.addEventListener('load', check); 2366 img.addEventListener('error', check); 2367 } 2368 2369 function check() { 2370 if (++loaded === images.length) callback(); 2371 } 2372 }); 2373 } 2374 2375 function centerModal() { 2376 const modal = document.getElementById(MODAL_ID); 2377 const dialog = modal.querySelector('.promotion-pop-up .modal-dialog'); 2378 if (!dialog) return; 2379 2380 modal.style.display = 'block'; 2381 modal.style.visibility = 'hidden'; 2382 2383 const height = dialog.offsetHeight; 2384 const winHeight = window.innerHeight; 2385 const top = Math.max(0, (winHeight - height) / 2); 2386 dialog.style.top = `${top}px`; 2387 2388 modal.style.visibility = ''; 2389 } 2390 2391 function centerModalVisible() { 2392 const modal = document.getElementById(MODAL_ID); 2393 const dialog = modal.querySelector('.promotion-pop-up .modal-dialog'); 2394 if (!dialog) return; 2395 2396 const height = dialog.offsetHeight; 2397 const winHeight = window.innerHeight; 2398 const top = Math.max(0, (winHeight - height) / 2); 2399 dialog.style.top = `${top}px`; 2400 } 2401 2402 function lockScroll() { 2403 document.body.style.overflow = 'hidden'; 2404 document.ontouchmove = function(e) { 2405 e.preventDefault(); 2406 }; 2407 } 2408 2409 function unlockScroll() { 2410 document.body.style.overflow = ''; 2411 document.ontouchmove = null; 2412 } 2413 2414 function setupModalLayout(modalId) { 2415 const modal = document.getElementById(modalId); 2416 const content = modal?.querySelector('.promotion_pop_up_content[style*="display: block"]'); 2417 if (!content) return; 2418 2419 const header = content.querySelector('.modal-header'); 2420 const footer = content.querySelector('.modal-footer'); 2421 const body = content.querySelector('.modal-body'); 2422 if (!body) return; 2423 2424 const windowHeight = window.innerHeight; 2425 const headerHeight = header?.offsetHeight || 0; 2426 const footerHeight = footer?.offsetHeight || 0;
2427 const maxBodyHeight = windowHeight - headerHeight - footerHeight - PADDING; 2428 2429 body.style.maxHeight = `${maxBodyHeight}px`; 2430 body.style.overflowY = 'auto'; 2431 2432 centerModalVisible(); 2433 } 2434 2435 function prepareModalForDisplay(modalId) { 2436 const modal = document.getElementById(modalId); 2437 const visibleContent = modal?.querySelector('.promotion_pop_up_content[style*="display: block"]'); 2438 if (!visibleContent) return; 2439 2440 modal.style.display = 'block'; 2441 modal.style.visibility = 'hidden'; 2442 2443 preloadImages(visibleContent, function() { 2444 const header = visibleContent.querySelector('.modal-header'); 2445 const footer = visibleContent.querySelector('.modal-footer'); 2446 const body = visibleContent.querySelector('.modal-body'); 2447 2448 if (body) { 2449 const windowHeight = window.innerHeight; 2450 const headerHeight = header?.offsetHeight || 0; 2451 const footerHeight = footer?.offsetHeight || 0;
2452 const maxBodyHeight = windowHeight - headerHeight - footerHeight - PADDING; 2453 2454 body.style.maxHeight = `${maxBodyHeight}px`; 2455 body.style.overflowY = 'auto'; 2456 } 2457 2458 centerModal(); 2459 modal.style.visibility = ''; 2460 lockScroll(); 2461 2462 $('#' + modalId).modal({ 2463 show: true, 2464 focus: true, 2465 backdrop: true 2466 }); 2467 }); 2468 } 2469 2470 // === Main Timer Logic === 2471 setTimeout(function() { 2472 if (displayPromotionPopUp()) { 2473 if (typeof t !== 'undefined') { 2474 clearTimeout(t); 2475 } 2476 2477 const timeoutDuration = INITIAL_DELAY > 500 ? INITIAL_DELAY - 500 : 0; 2478 2479 setTimeout(function() { 2480 prepareModalForDisplay(MODAL_ID); 2481 }, timeoutDuration); 2482 } 2483 }, 500); 2484 2485 // === Cleanup on modal close === 2486 $(document).on('hidden.bs.modal', `#${MODAL_ID}`, function() { 2487 unlockScroll(); 2488 }); 2489 2490 // === Responsive layout recalculation === 2491 let resizeTimeout; 2492 window.addEventListener('resize', function() { 2493 clearTimeout(resizeTimeout); 2494 resizeTimeout = setTimeout(function() { 2495 const modal = document.getElementById(MODAL_ID); 2496 if (modal && $(modal).hasClass('in')) { 2497 void modal.offsetHeight; 2498 setupModalLayout(MODAL_ID); 2499 } 2500 }, RESIZE_DEBOUNCE_MS); 2501 }); 2502 2503 // === Embedded analytics helpers === 2504 function obtain_analytics_function() { 2505 if (typeof sph_widgets_ga === 'function') return sph_widgets_ga; 2506 if (typeof ga === 'function') return ga; 2507 if (typeof gtag === 'function') return gtag; 2508 return null; 2509 } 2510 2511 function do_promotion_analytics(eventLabel, spot_promotion_channel_id, data_link_url, hasImage, is_template_image_and_button) { 2512 analytics = obtain_analytics_function(); 2513 if (!analytics) return null; 2514 2515 var pop_up_template = (is_template_image_and_button == 'true' ? 'text,image&button' : 'text&button'); 2516 var image_enabled_disabled = (hasImage ? 'image_enabled' : 'image_disabled'); 2517 var additional_info = (is_template_image_and_button == 'true' ? '|' + image_enabled_disabled : ''); 2518 2519 universal_ga('send', 'event', 'Pop Up Promotion', 'View', eventLabel + '|||' + data_link_url + '|' + pop_up_template + additional_info); 2520 2521 // universal_ga('send', 'event', 'Pop Up Promotion', 'View', eventLabel); 2522 if (typeof $ === 'function') { 2523 $(".promotion_pop_up_content a").on("click", function(event) { 2524 universal_ga('send', 'event', { 2525 eventCategory: 'Pop Up Promotion Button', 2526 eventAction: 'Click', 2527 eventLabel: eventLabel + '|||' + event.target.href + '|' + pop_up_template + additional_info, 2528 transport: 'beacon' 2529 }); 2530 $("#promotion-pop-up").modal('hide'); 2531 return true; 2532 }); 2533 } 2534 } 2535 2536})();</script>
2536<script>// ALL_PAGES_COMPONENT 2537var smart_footer_active = 'true' == 'true'; 2538var smart_footer_version = '2'; 2539 2540</script>
2540<footer id="accessibility-footer"><p>We strive to make our website accessible to everybody. <a aria-label="Learn More About our website accessibility" class="accessibility-link" href="/accessibility-page-01" target="_self">Learn More.</a></p></footer>
2540<script> 2541(function() { 2542 var name = "Sal's Pizza & Restaurant"; 2543 var pid = "ChIJ5TH48ffk2YkRAs1tccbiYJE"; 2544 function build_url() { 2545 var q = encodeURIComponent(name).replace(/'/g, "%27"); 2546 return "https://www.google.com/maps/search/?api=1" 2547 + "&query=" + q 2548 + "&query_place_id=" + encodeURIComponent(pid); 2549 } 2550 window.google_map_url = build_url(); 2551 window.open_google_map = function() { 2552 window.open(build_url(), "_blank"); 2553 }; 2554})(); 2555</script>
2555<script> 2556 2557 var spot_id = 504321; 2558 var sh_generic_form_params=JSON.parse('{"generic_contact_form_active":true,"texting_permissions_active":true,"title":"Contact us","instructions":"Please fill out the form and we will be in touch.","reasons":["To host a special event","To get a special event catered","To reserve a table","To apply for a job","Other Questions"],"custom_hours":"","hours":"","active_tmt_cta_links":{"cta_private_party":"https://salspizzabville.com/-party","cta_catering":"https://salspizzabville.com/-catering","cta_reservations":"https://salspizzabville.com/-reservations","cta_jobs":"https://tmt.spotapps.co/job-listings?spot_id=504321"},"spot_name":"Salâs Pizza \u0026 Restaurant","label_for_texting_permission":"Iâd like to get texts about specials, events, and other exclusive offers and announcements not available to general public"}'); 2559 2560 if (false){ 2561 console.log("Check SpotHopper configuration. Probably there is no 'WEBSITE::DOMAIN_NAME' key for your website"); 2562 } 2563 2564 if (navigator.userAgent.match(/iPhone/i) 2565 || navigator.userAgent.match(/iPad/i) 2566 || navigator.userAgent.match(/iPod/i)){ 2567 $(document).ready(function(){ 2568 document.body.className += " " + "webkit-mobile-body"; 2569 }); 2570 } 2571 2572 var promotion_url_param_domain = getPromotionUrlParams()['domain']; 2573 if ( promotion_url_param_domain && ( new URL(document.location).host == 'localhost:4000' || new URL(document.location).host == 'wcache.spotapps.co' || new URL(document.location).host == 'website-editor.spotapps.co' || new URL(document.location).host == 'website-editor-staging.spotapps.co' || new URL(document.location).host == 'wcache-staging.spotapps.co')){ 2574 $("a[href^='/']").each(function(){ 2575 if (this.href.indexOf('domain=') == -1){ 2576 var sh_internal_url = new URL(this.href); 2577 sh_internal_url.searchParams.set("domain", promotion_url_param_domain); 2578 this.href = sh_internal_url.toString(); 2579 } 2580 }) 2581 } 2582 2583 2584 function cta_link_matches_href(href, url){ 2585 var domain = 'salspizzabville.com'; 2586 if(typeof url === 'undefined'){ 2587 return false; 2588 } 2589 var partsOfURL = url.split(domain); 2590 if (partsOfURL.length != 2){ 2591 return href == url; 2592 }else{ 2593 var urlPath = partsOfURL[1]; 2594 if (urlPath.substring(0,1) == "/"){ 2595 urlPath = urlPath.substring(1,urlPath.length); 2596 } 2597 return href.indexOf(urlPath, domain.length + href.indexOf(domain)-1) !== -1; 2598 } 2599 } 2600 2601 var all_cta_links = [{"id":1592996,"spot_id":504321,"url":"https://salspizzabville.com/-reservations","cta_link_type":"reservations","created_at":"2025-09-23T17:22:07.122+00:00","updated_at":"2026-07-07T13:43:25.250+00:00","made_of_food":false,"link_name":"Reservations","target":null,"website_footer_label":"Reserve","position":1},{"id":1592995,"spot_id":504321,"url":"https://tmt.spotapps.co/job-listings?spot_id=504321","cta_link_type":"job_listing","created_at":"2025-09-23T17:22:07.036+00:00","updated_at":"2026-07-07T13:43:25.341+00:00","made_of_food":false,"link_name":"Job Listing","target":null,"website_footer_label":"Jobs","position":2},{"id":2016422,"spot_id":504321,"url":"https://salspizzabville.com/food-menu","cta_link_type":"food_menu","created_at":"2026-07-07T13:43:17.727+00:00","updated_at":"2026-07-07T13:43:25.212+00:00","made_of_food":false,"link_name":"","position":null},{"id":1658579,"spot_id":504321,"url":"https://order.toasttab.com/online/sals-pizza-and-restaurant-41-e-genesee-st","cta_link_type":"order","created_at":"2025-11-11T16:06:29.736+00:00","updated_at":"2026-07-07T13:43:25.383+00:00","made_of_food":false,"link_name":"Order","target":null,"website_footer_label":"Order\u003cspan class=\"visuallyhidden\"\u003e, you are leaving the website, opens in a new tab\u003c/span\u003e","position":0},{"id":1592994,"spot_id":504321,"url":"https://salspizzabville.com/-party","cta_link_type":"private_parties","created_at":"2025-09-23T17:22:06.976+00:00","updated_at":"2026-07-07T13:43:25.074+00:00","made_of_food":false,"link_name":"Private Parties","target":null,"website_footer_label":"Parties","position":3},{"id":2016421,"spot_id":504321,"url":"https://salspizzabville.com/drink-menu","cta_link_type":"drink_menu","created_at":"2026-07-07T13:43:17.704+00:00","updated_at":"2026-07-07T13:43:25.175+00:00","made_of_food":false,"link_name":"","position":null},{"id":1592993,"spot_id":504321,"url":"https://salspizzabville.com/-catering","cta_link_type":"catering","created_at":"2025-09-23T17:22:06.890+00:00","updated_at":"2026-07-07T13:43:25.297+00:00","made_of_food":false,"link_name":"Catering","target":null,"website_footer_label":"Catering","position":4}]; 2602 2603 function find_cta_link(href) { 2604 for (var i=0; i< all_cta_links.length; i++){ 2605 var cta_link = all_cta_links[i]; 2606 if ( cta_link_matches_href(href, cta_link.url)){ 2607 return cta_link; 2608 } 2609 } 2610 } 2611 2612 function find_cta_links(href) { 2613 var cta_links = [] 2614 for (var i=0; i< all_cta_links.length; i++){ 2615 var cta_link = all_cta_links[i]; 2616 if ( cta_link_matches_href(href, cta_link.url)){ 2617 cta_links.push(cta_link); 2618 } 2619 } 2620 return cta_links; 2621 } 2622 2623 2624 function get_current_page_cta_link_types(){ 2625 var types = []; 2626 var cta_links = find_cta_links(document.location.href); 2627 for (var i=0; i<cta_links.length; i++){ 2628 types.push(cta_links[i].cta_link_type); 2629 } 2630 return types; 2631 } 2632 2633 2634 function is_food_menu_page(){ 2635 var cta_link_types = get_current_page_cta_link_types(); 2636 for (var i=0; i<cta_link_types.length; i++){ 2637 if ('food_menu' == cta_link_types[i]) 2638 return true; 2639 } 2640 return false;
2641 } 2642 2643 2644 function get_form_cat_from_cta(){ 2645 var cta_link = find_cta_link(document.location.href); 2646 if (cta_link == null) { 2647 return null; 2648 } 2649 if (cta_link.cta_link_type == 'private_parties'){ 2650 return 'private_party'; 2651 }else if (cta_link.cta_link_type == 'reservations'){ 2652 return 'reservation'; 2653 }else if (cta_link.cta_link_type == 'catering'){ 2654 return 'catering'; 2655 }else if (cta_link.cta_link_type == 'job_listing'){ 2656 return 'job_listings'; 2657 }else if (cta_link.cta_link_type == 'gift_cards'){ 2658 return 'gift_cards'; 2659 } 2660 return null; 2661 } 2662 2663 function element_has_events_defined(elem){ 2664 if ($._data(elem, "events") === undefined){ 2665 return false; 2666 } 2667 return true; 2668 } 2669 2670 function create_ga_events_for_cta_clicks(){ 2671 if (typeof $ === 'function'){ 2672 2673 var cta_link_of_the_page = find_cta_link(location.href); 2674 2675 2676 $("a").each(function(index, elem){ 2677 var href = $(elem).attr('href'); 2678 2679 if (href === undefined ){ 2680 return; 2681 } 2682 2683 if (href.substring(0,4) == 'tel:'){ 2684 if (!element_has_events_defined(elem)){ // not footer links 2685 $(elem).on("click", function(){ 2686 universal_ga('send', 'event', { 2687 eventCategory: 'Button', 2688 eventAction: 'Click', 2689 eventLabel: 'Phone', 2690 transport: 'beacon' 2691 }); 2692 }); 2693 2694 if (cta_link_of_the_page){ 2695 $(elem).on("click", function(){ 2696 universal_ga('send', 'event', { 2697 eventCategory: 'Button', 2698 eventAction: 'Click', 2699 eventLabel: cta_link_of_the_page.cta_link_type + ' page phone', 2700 transport: 'beacon' 2701 }); 2702 }); 2703 } 2704 } else { 2705 if (cta_link_of_the_page){ 2706 $(elem).on("click", function(){ 2707 universal_ga('send', 'event', { 2708 eventCategory: 'Button', 2709 eventAction: 'Click', 2710 eventLabel: cta_link_of_the_page.cta_link_type + ' page phone footer', 2711 transport: 'beacon' 2712 }); 2713 }); 2714 } 2715 } 2716 2717 2718 }else{ 2719 var cta_link = find_cta_link(href); 2720 if (elem.className != null && elem.className.indexOf("bottom-link") > -1){ 2721 // console.log("bottom link detected"); 2722 }else{ 2723 if (cta_link != null){ 2724 $(elem).on("click", function(){ 2725 universal_ga('send', 'event', { 2726 eventCategory: 'Website Link', 2727 eventAction: 'Click', 2728 eventLabel: cta_link.cta_link_type, 2729 transport: 'beacon' 2730 }); 2731 }); 2732 } 2733 } 2734 } 2735 2736 2737 }); 2738 } 2739 } 2740 2741 if (typeof angular === "undefined") { 2742 create_ga_events_for_cta_clicks(); 2743 } else { 2744 angular.element(document).ready(function () { 2745 create_ga_events_for_cta_clicks(); 2746 }); 2747 } 2748 2749 2750 function triggerShowFooterEvents(){ 2751 if (window.screen.availWidth < 768){ 2752 universal_ga('send', 'event', { 2753 eventCategory: 'Mobile Footer', 2754 eventAction: 'View', 2755 eventLabel: '', 2756 transport: 'beacon' 2757 }); 2758 } 2759 } 2760 2761 2762 2763 2764 //////////// 2765 function smartFooterV2() 2766 { 2767 var list= document.getElementsByClassName("bottom-list-item"); 2768 if (!list) return; 2769 2770 if (document.getElementById("bottom-navbar") == null){ 2771 return; 2772 } 2773 2774 var bottomNav = document.querySelector('#bottom-navbar .navbar-nav'); 2775 var footerLinkPaddingLeft = $('#bottom-navbar .navbar-nav li a').css('padding-left'); 2776 var footerLinkPaddingRight = $('#bottom-navbar .navbar-nav li a').css('padding-right'); 2777 2778 bottomNav.innerHTML = ''; 2779 var linksWithPosition = all_cta_links.filter(e => e.position != null && e.position >= 0); 2780 linksWithPosition.sort(function(a,b) { 2781 return a.position - b.position; 2782 }); 2783 2784 var footerLinkStyle = (footerLinkPaddingLeft == '0px' || footerLinkPaddingRight == '0px' ? 'style="padding-left: 8px; padding-right: 8px;"' : ''); 2785 2786 linksWithPosition.forEach((e, i) => { 2787 var target = e.target || getUrlTarget(e.url); 2788 bottomNav.insertAdjacentHTML('beforeend', 2789 `<li class="bottom-list-item" style="white-space: nowrap;width: auto;"><a ${footerLinkStyle} class="bottom-link smart-footer-link" data-type="${e.cta_link_type}" data-position="${i}" target="${target}" href="${e.url}">${e.website_footer_label}</a></li>`); 2790 }) 2791 2792 var intervalCount = 0 2793 var interval = setInterval(() => { 2794 if(intervalCount == 50){ 2795 clearInterval(interval); 2796 } 2797 removeOverflowingFooterLinks(); 2798 intervalCount ++; 2799 }, 200); 2800 2801 $('.smart-footer-link').on("click", function(){ 2802 if (typeof shUrlParams !== "undefined" && shUrlParams['source'] === undefined){ 2803 shUrlParams['source'] = 'footer'; 2804 sessionStorage.setItem('shUrlParams', JSON.stringify(shUrlParams)); 2805 } 2806 2807 var visibleLinks = $('.smart-footer-link').map(function (e) { 2808 return $(this).data('type'); 2809 }).toArray().join(','); 2810 2811 universal_ga('send', 'event', { 2812 eventCategory: 'Button', 2813 eventAction: 'Click_footer_2', 2814 eventLabel: "type:" + $(this).data('type') + "|position:" + $(this).data('position') + "|visible:" + visibleLinks, 2815 transport: 'beacon' 2816 }); 2817 }); 2818 } 2819 2820 function removeOverflowingFooterLinks(){ 2821 var bottomNavLinks = document.querySelectorAll('#bottom-navbar .navbar-nav li'); 2822 var width_sum = 0; 2823 2824 bottomNavLinks.forEach(e => { 2825 width_sum += e.getBoundingClientRect().width; 2826 if ((width_sum) > window.innerWidth) { 2827 console.log(`%cLink %c${e.textContent} %cdeleted couldn't fit screen`,"color: #fff;background: #202124;", "background: red;color: #fff", "color: #fff;background: #202124;"); 2828 e.remove(); 2829 } 2830 }); 2831 } 2832 2833 function getUrlTarget(url){ 2834 if(url.startsWith('tel')){ 2835 return '_self'; 2836 } 2837 if(url.startsWith('/') || url.includes('tmt.spotapps.co') || url.includes(window.location.host)){ 2838 return '_self'; 2839 } 2840 return '_blank'; 2841 } 2842 2843 function npb() 2844 { 2845 var list= document.getElementsByClassName("bottom-list-item"); 2846 if (!list) return; 2847 2848 if (document.getElementById("bottom-navbar") == null){ 2849 return; 2850 } 2851 2852 var url = "" 2853 for (var i=0; i < all_cta_links.length; i++) 2854 { 2855 if (all_cta_links[i].cta_link_type == "order"){ 2856 url = all_cta_links[i].url; 2857 } 2858 } 2859 2860 if ( url == ""){ 2861 return; 2862 } 2863 2864 for (i=0; i < list.length; i++) 2865 { 2866 console.log(cta_link_matches_href(list[i].firstChild.href, url)); 2867 if (cta_link_matches_href(list[i].firstChild.href,url)) return; 2868 2869 }; 2870 2871 var item = list[list.length-1] 2872 document.getElementById("bottom-navbar").getElementsByClassName("nav navbar-nav")[0].appendChild(item.cloneNode(true)); 2873 var width_sum = 0; 2874 for (i=0; i < list.length; i++) { 2875 width_sum += list[i].getBoundingClientRect().width; 2876 } 2877 2878 var item = list[list.length-1] 2879 if ((width_sum - 10) > window.innerWidth) { item.parentNode.removeChild(item); console.log("link deleted couldn't fit screen"); return; } 2880 2881 item.firstChild.text = "Order"; 2882 item.firstChild.href = url; 2883 item.firstChild.id = "bottom_link_" + list.length; 2884 2885 $(item.firstChild).on("click", function(){ 2886 2887 if (typeof shUrlParams !== "undefined" && shUrlParams['source'] === undefined){ 2888 shUrlParams['source'] = 'footer'; 2889 sessionStorage.setItem('shUrlParams', JSON.stringify(shUrlParams)); 2890 } 2891 2892 universal_ga('send', 'event', { 2893 eventCategory: 'Button', 2894 eventAction: 'Click', 2895 eventLabel: 'Plan B-2 Order', 2896 transport: 'beacon' 2897 }); 2898 }); 2899 2900 2901 } 2902 2903function activateSmartFooter(){ 2904 var smart_footer_active = true; 2905 var smart_footer_version = 2; 2906 var man_bottom_active = false;
2907 if(window.location.hash == '#smartFooterV2=enabled'){ 2908 smartFooterV2(); 2909 return; 2910 } 2911 if (smart_footer_active && !man_bottom_active){ 2912 if(smart_footer_version == 2 ){ 2913 smartFooterV2(); 2914 }else { 2915 npb(); 2916 } 2917 } 2918 } 2919 2920 activateSmartFooter(); 2921 2922 var corona_config_str = '{"id":612712,"spot_id":504321,"promote_pick_up":true,"promote_gift_cards":true,"promote_happy_hour":true,"promote_events":true,"instructions_on_food_page":false,"food_page_instruction_text":null,"food_page_instruction_phone":"3156388505","created_at":"2025-09-23T16:51:51.978+00:00","updated_at":"2025-11-10T18:35:36.496+00:00","food_page_button_color":null,"food_page_button_text_color":null,"food_page_link_color":null,"food_page_text_color":null,"wine_and_beer_to_go_license":false,"all_alcoholic_to_go_lincense":false,"current_operating_status":"Offering To Go and Dine-in with Full Capacity","contact_tracing_active":false,"contact_tracing_text":"In cooperation with health guidelines for contact tracing, please fill out the form below.","contact_tracing_address_required":false,"collapse_all":false,"deliveries_priority_value":5,"pick_ups_priority_value":5,"reservations_priority_value":5,"private_parties_priority_value":5,"catering_priority_value":5,"gift_cards_priority_value":3,"jobs_priority_value":5,"food_and_drinks_priority_value":3,"specials_priority_value":3,"national_days_priority_value":3,"holidays_priority_value":3,"sports_priority_value":3,"walk_ins_priority_value":3,"collecting_emails_priority_value":3,"collecting_phone_numbers_priority_value":3,"growing_social_media_followers_priority_value":3,"increasing_revenue_vs_saving_time_priority_value":3,"events_priority_value":3,"shopping_cart_type":"TMT","shopping_cart_active":false}'; 2923 var corona_config = corona_config_str != '' ? JSON.parse('{"id":612712,"spot_id":504321,"promote_pick_up":true,"promote_gift_cards":true,"promote_happy_hour":true,"promote_events":true,"instructions_on_food_page":false,"food_page_instruction_text":null,"food_page_instruction_phone":"3156388505","created_at":"2025-09-23T16:51:51.978+00:00","updated_at":"2025-11-10T18:35:36.496+00:00","food_page_button_color":null,"food_page_button_text_color":null,"food_page_link_color":null,"food_page_text_color":null,"wine_and_beer_to_go_license":false,"all_alcoholic_to_go_lincense":false,"current_operating_status":"Offering To Go and Dine-in with Full Capacity","contact_tracing_active":false,"contact_tracing_text":"In cooperation with health guidelines for contact tracing, please fill out the form below.","contact_tracing_address_required":false,"collapse_all":false,"deliveries_priority_value":5,"pick_ups_priority_value":5,"reservations_priority_value":5,"private_parties_priority_value":5,"catering_priority_value":5,"gift_cards_priority_value":3,"jobs_priority_value":5,"food_and_drinks_priority_value":3,"specials_priority_value":3,"national_days_priority_value":3,"holidays_priority_value":3,"sports_priority_value":3,"walk_ins_priority_value":3,"collecting_emails_priority_value":3,"collecting_phone_numbers_priority_value":3,"growing_social_media_followers_priority_value":3,"increasing_revenue_vs_saving_time_priority_value":3,"events_priority_value":3,"shopping_cart_type":"TMT","shopping_cart_active":false}') : null; 2924 2925 2926 //corona instuctions 2927 function show_corona_instructions(text, phone, btnText){ 2928 //format to US number 2929 var match = phone.match(/^(\d{3})(\d{3})(\d{4})$/); 2930 2931 if(corona_config.shopping_cart_type == "TMT" && corona_config.shopping_cart_active == true) { 2932 var linkLocation = "https://tmt.spotapps.co/ordering-menu/?spot_id="+corona_config.spot_id+"&images=yes&accordion=true"; 2933 var btnLinkLocation = "https://tmt.spotapps.co/ordering-menu/?spot_id="+corona_config.spot_id+"&images=yes&accordion=true"; 2934 }else { 2935 var linkLocation = 'tel:+1'+phone+''; 2936 var btnLinkLocation = 'tel:+1'+ match[1] + '-' + match[2] + '-' + match[3] +'' 2937 } 2938 var appendPhone = 'tel:+1'+phone+''; 2939 //inject html content 2940 if ($('.food-menu-nav').length) { 2941 //new template 2942 var pageEl = $('.food-menu-nav').css('margin','20px auto 10px auto'); 2943 var textColor = rgb2hex($('.section-header').css('color')); 2944 var linkColor = rgb2hex($('.food-menu-nav-item.active').css('background-color')); 2945 var fontSize = parseInt($('.food-menu-nav-item').css('font-size')); 2946 fontSize = fontSize + Math.round(fontSize * 0.25); 2947
2948 // var html = '<div id="show-corona-instructions" style="padding:20px;flex: 0 1 100%;" class="text-center"><p style="color:'+textColor+';">'+text+' <a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="color:'+linkColor+';"href="tel:+1'+phone+'">'+ match[1] + '-' + match[2] + '-' + match[3] +'</a></p><a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="font-size:'+fontSize+'px" class="food-menu-nav-item custom-temp-btn hvr-fade active" href="tel:+1'+phone+'">'+btnText+'</a></div>'; 2949 var html = '<div id="show-corona-instructions" style="padding:20px;flex: 0 1 100%;" class="text-center"><p style="color:'+textColor+';">'+text+' <a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="text-decoration: underline;color:'+textColor+';" href="tel:+1'+phone+'">'+ match[1] + '-' + match[2] + '-' + match[3] +'</a></p><a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="display: inline-block !important;font-size:'+fontSize+'px" class="food-menu-nav-item custom-temp-btn hvr-fade active" href="'+btnLinkLocation +'">'+btnText+'</a></div>'; 2950 2951 }else { 2952 //old template 2953 var pageEl = $('.tabnav'); 2954 var textColor = rgb2hex($('.menu-item-name-traditional').css('color')); 2955 var linkColor = rgb2hex($('.style-traditional .tabnav .nav>li.active>a').css('color')); 2956 2957 var linkTextColor = getContrast50(linkColor); 2958 var fontSize = parseInt($('.menu-item-name-traditional').css('font-size')); 2959 fontSize = fontSize + Math.round(fontSize * 0.25); 2960 var textTransform = $('.style-traditional .tabnav .nav>li>a').css('text-transform'); 2961 2962 // var html = '<div id="show-corona-instructions" style="padding:20px;flex: 0 1 100%;" class="text-center"><p style="color:'+textColor+';margin-bottom:20px;">'+text+' <a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="color:'+linkColor+';"href="tel:+1'+phone+'">'+ match[1] + '-' + match[2] + '-' + match[3] +'</a></p><a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="margin: 20px auto; padding: 10px 50px 10px 30px; cursor: pointer; background-color: '+linkColor+'; background: '+linkColor+'; text-decoration: none; color: '+textColor+'; border: 2px solid '+linkColor+';font-size:'+fontSize+'px;text-transform: '+textTransform+'" href="tel:+1'+phone+'">'+btnText+'</a></div>'; 2963 var html = '<div id="show-corona-instructions" style="padding:20px;flex: 0 1 100%;" class="text-center"><p style="color:'+textColor+';margin-bottom:20px;">'+text+' <a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="text-decoration: underline;color:'+textColor+';"href="tel:+1'+phone+'">'+ match[1] + '-' + match[2] + '-' + match[3] +'</a></p><a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="margin: 20px auto; padding: 10px 30px 10px 30px; cursor: pointer; background-color: '+linkColor+'; background: '+linkColor+'; text-decoration: none; color: '+linkTextColor+'; border: 2px solid '+linkColor+';font-size:'+fontSize+'px;text-transform: '+textTransform+'" href="'+btnLinkLocation+'">'+btnText+'</a></div>'; 2964 2965 } 2966 //html content 2967 pageEl.prepend(html); 2968 } 2969 2970 function rgb2hex(rgb) { 2971 if(typeof rgb !== "undefined"){ 2972 rgbColor = rgb.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/); 2973 if (!rgbColor) { 2974 rgba = rgb.match(/^rgba?\((\d+),\s*(\d+),\s*(\d+)(,\s*\d+\.*\d+)?\)$/); 2975 return "#" + hex(rgba[1]) + hex(rgba[2]) + hex(rgba[3]); 2976 } 2977 function hex(x) { 2978 return ("0" + parseInt(x).toString(16)).slice(-2); 2979 } 2980 return "#" + hex(rgbColor[1]) + hex(rgbColor[2]) + hex(rgbColor[3]); 2981 } 2982 return rgb; 2983 } 2984 2985 function getContrast50(hexcolor){ 2986 return (parseInt(hexcolor, 16) > 0xffffff/2) ? '#000':'#fff'; 2987 } 2988 2989 function show_corona_sidebar_instructions(text, phone){ 2990 //format to US number 2991 var match = phone.match(/^(\d{3})(\d{3})(\d{4})$/); 2992 var divWidth = 230; 2993 var top = 50; 2994 var linkSize = '1.6em'; 2995 var pSize = $('p').css('font-size'); 2996 var appendPhone = 'tel:+1'+phone+''; 2997 2998 if ($(window).width() < 1600) 2999 var top = 30; 3000 if ($(window).width() < 1200){ 3001 var divWidth = 180; 3002 var linkSize = '1.4em'; 3003 var pSize ='1.1em'; 3004 } 3005 3006 if($('.food-menu-nav').length){ //new template 3007 var textColor = $('.food-menu-nav-item.active').css('color'); 3008 var linkColor = $('.food-menu-nav-item.active').css('background-color'); 3009 3010 var linkTextColor = $('.food-menu-nav-item.active').css('color'); 3011 var parent = $('.food-menu-page'); 3012 } 3013 else { //old template 3014 var textColor = $('.menu-item-name-traditional').css('color'); 3015 var linkColor = $('.style-traditional .tabnav .nav>
3015li.active>a').css('color'); 3016 var parent = $('.food-menu').length ? $('.food-menu') : $('.drink-menu'); 3017 var linkTextColor = getContrast50(linkColor); 3018 } 3019 3020 // $(parent).append('<div id="corona-instructions-sidebar" style="display:none;position:fixed;width:'+divWidth+'px;top:'+top+'vh;right:0;background-color:'+linkColor+';padding:15px;text-align:center;color:'+textColor+';text-transform:uppercase;"><p style="margin:0 0 5px;font-size:'+pSize+';">'+text+'</p><i class="fa fa-phone" aria-hidden="true"></i> <a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Food Page Side Element Phone\');" style="font-size:'+linkSize+';color:'+textColor+';" href="tel:+1'+phone+'">'+ match[1] + '-' + match[2] + '-' + match[3] +'</a></div>'); 3021 $(parent).append('<div id="corona-instructions-sidebar" style="display:none;position:fixed;width:'+divWidth+'px;top:'+top+'vh;right:0;background-color:'+linkColor+';padding:15px;text-align:center;color:'+linkTextColor+';text-transform:uppercase;"><p style="margin:0 0 5px;font-size:'+pSize+';">'+text+'</p><i class="fa fa-phone" aria-hidden="true"></i> <a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Food Page Side Element Phone\');this.href=\'' + appendPhone + '\';" style="font-size:'+linkSize+';color:'+linkTextColor+';" href="/call-us/'+phone+'">'+ match[1] + '-' + match[2] + '-' + match[3] +'</a></div>'); 3022 3023 //check if resolution is bigger than tablet resolution 3024/* if ($(window).width() > 991) { 3025 //detect scroll 3026 window.onscroll = function (e) { 3027 if ($(window).scrollTop() == 0) { 3028 $('#corona-instructions-sidebar').hide(); 3029 }else { 3030 $('#corona-instructions-sidebar').show(); 3031 } 3032 } 3033 } */ 3034 } 3035 3036 function check_corona_config(config){ 3037 console.log(config) 3038 if (config) { 3039 if (config.instructions_on_food_page && config.food_page_instruction_text && config.food_page_instruction_phone) { 3040 if (!config.promote_deliveries && config.promote_pick_up) { 3041 var btnText = 'Call For Pick Up'; 3042 } 3043 if (config.promote_deliveries && !config.promote_pick_up) { 3044 var btnText = 'Call For Delivery'; 3045 } 3046 if (config.promote_deliveries && config.promote_pick_up) { 3047 var btnText = 'Call For Pick Up Or Delivery'; 3048 } 3049 3050 if(typeof btnText !== "undefined"){ // check if pick up or delivery are true 3051 if(config.shopping_cart_type == "TMT" && config.shopping_cart_active == true) { 3052 var btnText = 'ORDER NOW'; 3053 if($('.food-menu-nav').length){ //new template 3054 var textColor = rgb2hex($('.section-header').css('color')); 3055 var linkColor = rgb2hex($('.food-menu-nav-item.active').css('background-color')); 3056 var fontSize = parseInt($('.food-menu-nav-item').css('font-size')); 3057 fontSize = fontSize + Math.round(fontSize * 0.25); 3058 } 3059 else { //old template 3060 var textColor = rgb2hex($('.menu-item-name-traditional').css('color')); 3061 var linkColor = rgb2hex($('.style-traditional .tabnav .nav>li.active>a').css('color')); 3062 3063 var linkTextColor = getContrast50(linkColor); 3064 var fontSize = parseInt($('.menu-item-name-traditional').css('font-size')); 3065 fontSize = fontSize + Math.round(fontSize * 0.25); 3066 } 3067 show_corona_instructions('For online orders, use our own <a style="text-decoration:underline;color: '+textColor+';" href="https://tmt.spotapps.co/ordering-menu/?spot_id='+config.spot_id+'&images=yes&accordion=true#"> commission free ordering platform! </a> or call:', config.food_page_instruction_phone, btnText); 3068 show_corona_sidebar_instructions(btnText, config.food_page_instruction_phone); 3069 } else { 3070 show_corona_instructions(config.food_page_instruction_text, config.food_page_instruction_phone, btnText); 3071 show_corona_sidebar_instructions(btnText, config.food_page_instruction_phone); 3072 } 3073 3074 } 3075 } 3076 } 3077 } 3078 3079 3080 if (is_food_menu_page() && !window.location.search.includes("contactless=true")){ 3081 $( document ).ready(function() { 3082 setTimeout(function(){ 3083 check_corona_config(corona_config); 3084 }, 300); 3085 }); 3086 } 3087 3088 3089 3090 function isPhone(phone){ 3091 var regex = /^(\+\d{1,2}\s?)?\(?\d{3}\)?[\s.-]?\d{3}[\s.-]?\d{4}$/; 3092 return regex.test(phone); 3093 } 3094 3095 function sendEmail_MT (input_id) { 3096 const $loader = $("[data-id=newsletter-widget-2] .sph-loading-img"); 3097 3098 const $step = { 3099 form: $("[data-id=newsletter-widget-2] .sph-email-form"), 3100 message: $("[data-id=newsletter-widget-2] .sph-response-message"), 3101 } 3102 3103 const $field = { 3104 email: $("[data-id=newsletter-widget-2] #sph-newsletter-input-" + input_id), 3105 phone: $("[data-id=newsletter-widget-2] #sph-newsletter-phone-" + input_id), 3106 consent: $("[data-id=newsletter-widget-2] #sph-newsletter-checkbox-phone-" + input_id), 3107 }; 3108 3109 const $error = { 3110 email: $("[data-id=newsletter-widget-2] #sph-newsletter-email-error-" + input_id), 3111 phone: $("[data-id=newsletter-widget-2] #sph-newsletter-phone-error-" + input_id), 3112 }; 3113 3114 if ($field.email.val().trim() === "") { 3115 $error.email 3116 .html("This field is required") 3117 .show(); 3118 } 3119 else if (!isEmail($field.email.val().trim())) { 3120 $error.email 3121 .html("Please use the format â[email protected]â") 3122 .show(); 3123 } else { 3124 $error.email 3125 .html("") 3126 .hide(); 3127 } 3128 3129 if ($field.consent.is(':checked') && $field.phone.val().trim() === "") { 3130 $error.phone 3131 .html("This field is required") 3132 .show(); 3133 } else if ($field.phone.val().trim().length > 0 && !isPhone($field.phone.val().trim())) { 3134 $error.phone 3135 .html("The phone number must contain 10 digits") 3136 .show(); 3137 } else { 3138 $error.phone 3139 .html("") 3140 .hide(); 3141 } 3142 3143 const errorField = $step.form.find('.sh-form-error:visible'); 3144 3145 if (errorField.length > 0) { 3146 const input = errorField.first().next(); 3147 3148 document.activeElement.blur(); 3149 3150 setTimeout(() => { 3151 input.focus(); 3152 }, 160) 3153 3154 return; 3155 } 3156 3157 $loader 3158 .show() 3159 .prev() 3160 .hide(); 3161 3162 $.ajax({ 3163 method: "POST", 3164 url: "https://www.spothopperapp.com/api/spots/504321/contacts/add_with_texting_permission", 3165 crossDomain: true, 3166 dataType: 'json', 3167 data: { 3168 email: $field.email.val().trim(), 3169 phone: $field.phone.val().trim(), 3170 texting_permission: $field.consent.is(':checked'), 3171 }, 3172 success: function (data) { 3173 afterRequestSubmission(data); 3174 }, 3175 error: function () { 3176 afterRequestSubmission("Something went wrong. Please try again later."); 3177 } 3178 }); 3179 3180 function afterRequestSubmission (data) { 3181 $step.form.hide(); 3182 3183 $step.message 3184 .html(data) 3185 .show() 3186 .trigger('focus'); 3187 } 3188 } 3189</script>
3189<script>function addPromotionParamsToTMTLinks() 3190{ 3191 if (sessionStorage.getItem('shUrlParams')) { 3192 let shParams = JSON.parse(sessionStorage.getItem('shUrlParams')); 3193 if (!Object.keys(shParams).length) 3194 return; 3195 if(!shParams.source) 3196 return; 3197 $('a').each(function () { 3198 if (this.href.includes('tmt.spotapps.co')) { 3199 if(this.href.includes('&source=') || this.href.includes('&destination=') || this.href.includes('&promotion=')) 3200 return; 3201 3202 this.href = this.href + '&source=' + shParams.source; 3203 if(shParams.destination) 3204 this.href = this.href + '&destination=' + shParams.destination; 3205 if(shParams.promotion) 3206 this.href = this.href + '&promotion=' + shParams.promotion; 3207 if(shParams.fb_post_id) 3208 this.href = this.href + '&fb_post_id=' + shParams.fb_post_id; 3209 if(shParams.email_post_id) 3210 this.href = this.href + '&email_post_id=' + shParams.email_post_id; 3211 } 3212 }) 3213 } 3214} 3215setTimeout(function() { 3216 addPromotionParamsToTMTLinks(); 3217 addFooterToSourceParam(); 3218},600) 3219 3220function addFooterToSourceParam() 3221{ 3222 $('.bottom-link').each(function (){ 3223 if(shouldAddSourceParam(this.href)) 3224 this.href = this.href + '&source=footer'; 3225 }) 3226 $('#sh-multiple-links-content-holder a').each(function (){ 3227 if(shouldAddSourceParam(this.href)) 3228 this.href = this.href + '&source=footer'; 3229 }) 3230} 3231function shouldAddSourceParam(link){ 3232 if (link.includes('tmt.spotapps.co') && !link.includes('&source=')){ 3233 return true; 3234 } 3235 return false; 3236} 3237</script>
3237<link href="https://static.spotapps.co/wcache-website-includes/assets/generic-form-BPJPlCcv.css" rel="stylesheet" media="screen"/>
3237<script type="module" crossorigin="crossorigin" src="https://static.spotapps.co/wcache-website-includes/assets/generic-form-CoiH5Vfl.js"></script>
3237<div id="sh-generic-form-widget"></div>
3237<script> 3238;(async () => { 3239if (typeof window.focusTrap === 'undefined') { 3240 await getScript('https://unpkg.com/tabbable/dist/index.umd.js'); 3241 await getScript('https://unpkg.com/focus-trap/dist/focus-trap.umd.js'); 3242} 3243 3244document.querySelectorAll('.modal').forEach((element) => { 3245 const trap = window.focusTrap?.createFocusTrap(element, { 3246 allowOutsideClick: true, 3247 }); 3248 3249 $(element).on('shown.bs.modal', () => { 3250 trap?.activate(); 3251 }); 3252 3253 $(element).on('hidden.bs.modal', () => { 3254 trap?.deactivate(); 3255 }); 3256}); 3257 3258async function getScript (source) { 3259 return new Promise((resolve, reject) => { 3260 const script = document.createElement('script'); 3261 script.src = source; 3262 script.async = true; 3263 3264 script.onload = resolve; 3265 script.onerror = reject; 3266 3267 document.head.appendChild(script); 3268 }); 3269} 3270})(); 3271</script>
3271<script src="https://wcache-plugins.spotapps.co/production/wcpl_bootstrap_ada_fix/wcpl_bootstrap_ada_fix.js"></script>
3271<link href="https://wcache-plugins.spotapps.co/production/wcpl_bday_club/wcpl_bday_club.css" rel="stylesheet" media="screen"/>
3271<script src="https://wcache-plugins.spotapps.co/production/wcpl_bday_club/wcpl_bday_club.js"></script>
3271<script src="https://wcache-plugins.spotapps.co/production/wcpl_ga_tracking/wcpl_ga_tracking.js"></script>
3271<script src="https://wcache-plugins.spotapps.co/production/wcpl_media_controls/script.js"></script>
3271<link href="https://wcache-plugins.spotapps.co/production/wcpl_website_editor_interpreter/website_interpreter_helper_style.css" rel="stylesheet" media="screen"/>
3271<script>var changes_log_array = {};</script>
3271<script src="https://wcache-plugins.spotapps.co/production/wcpl_website_editor_interpreter/website_interpreter.js"></script>
3271</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.