(function () { if (window.PPEC_SMALL_TOWN_CARNIVAL_READY) return; window.PPEC_SMALL_TOWN_CARNIVAL_READY = true; var STORAGE_KEY = 'ppec_global_quote_v4'; var INV_URL = '/wp-json/partypros-webmcp/v1/inventory'; var BOOTH_IDS = [ 'ring-toss', 'frog-hop', 'can-smash', 'cover-the-spot', 'cover-the-star', 'dice-game', 'fish-pond', 'milk-the-cow', 'piggy-race', 'potty-toss', 'stand-it-bottle', 'tic-tac-toe', 'troll-toss', 'tubs-of-fun', 'clown-teeth-knockout' ]; var EXACT = 2; var activeMode = 'addon'; // 'addon' | 'package' function loadCart() { try { var a = JSON.parse(localStorage.getItem(STORAGE_KEY) || '[]'); return Array.isArray(a) ? a : []; } catch (e) { return []; } } function saveCart(cart) { localStorage.setItem(STORAGE_KEY, JSON.stringify(cart)); try { if (typeof window.ppHomeQuoteUpdate === 'function') window.ppHomeQuoteUpdate(); } catch (e) {} try { window.dispatchEvent(new CustomEvent('ppe:globalQuoteUpdated')); } catch (e) {} } function toast(msg) { var t = document.getElementById('ppe-stc-toast'); if (!t) { t = document.createElement('div'); t.id = 'ppe-stc-toast'; t.style.cssText = 'position:fixed;left:50%;bottom:88px;transform:translateX(-50%);z-index:1000003;background:#0f172a;color:#fff;padding:10px 14px;border-radius:10px;font:600 14px/1.3 system-ui,sans-serif;max-width:90vw;opacity:0;transition:opacity .2s'; document.body.appendChild(t); } t.textContent = msg; t.style.opacity = '1'; setTimeout(function () { t.style.opacity = '0'; }, 2200); } function ensureUi() { if (document.getElementById('ppe-stc-css')) return; var s = document.createElement('style'); s.id = 'ppe-stc-css'; s.textContent = [ '#ppe-stc-modal{position:fixed;inset:0;z-index:1000002;display:flex;align-items:flex-end;justify-content:center;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}', '#ppe-stc-modal[hidden]{display:none!important}', '#ppe-stc-modal .ppe-stc-back{position:absolute;inset:0;background:rgba(15,23,42,.55)}', '#ppe-stc-modal .ppe-stc-sheet{position:relative;z-index:1;width:100%;max-width:560px;max-height:min(88vh,720px);background:#fff;border-radius:16px 16px 0 0;box-shadow:0 -8px 40px rgba(0,0,0,.25);display:flex;flex-direction:column;overflow:hidden}', '@media(min-width:768px){#ppe-stc-modal{align-items:center}#ppe-stc-modal .ppe-stc-sheet{border-radius:16px}}', '#ppe-stc-modal .ppe-stc-head{padding:16px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;gap:12px}', '#ppe-stc-modal .ppe-stc-head .ppe-stc-title{margin:0;font-size:1.15rem;color:#321854;font-weight:700}', '#ppe-stc-modal .ppe-stc-head p{margin:4px 0 0;color:#64748b;font-size:.9rem}', '#ppe-stc-modal .ppe-stc-x{border:0;background:#f1f5f9;width:36px;height:36px;border-radius:999px;font-size:20px;cursor:pointer}', '#ppe-stc-modal .ppe-stc-list{overflow:auto;padding:8px 12px;flex:1}', '#ppe-stc-modal .ppe-stc-row{display:flex;gap:12px;align-items:center;padding:10px;border:1px solid #e2e8f0;border-radius:12px;margin:0 0 8px;cursor:pointer}', '#ppe-stc-modal .ppe-stc-row.is-on{border-color:#01847f;background:#f0fdfa}', '#ppe-stc-modal .ppe-stc-row img{width:56px;height:56px;object-fit:cover;border-radius:8px;background:#f8fafc}', '#ppe-stc-modal .ppe-stc-row .n{font-weight:700;color:#0f172a}', '#ppe-stc-modal .ppe-stc-foot{padding:12px 16px calc(72px + env(safe-area-inset-bottom,0px));border-top:1px solid #e2e8f0;display:flex;gap:10px}', '#ppe-stc-modal .ppe-stc-foot button{flex:1;min-height:48px;border-radius:10px;border:0;font-weight:800;cursor:pointer}', '#ppe-stc-modal .ppe-stc-go{background:#321854;color:#fff}', '#ppe-stc-modal .ppe-stc-go:disabled{opacity:.45;cursor:default}', '#ppe-stc-modal .ppe-stc-cancel{background:#f1f5f9;color:#334155}', 'html.ppe-stc-open .ppw-floating-picker,html.ppe-stc-open #ppec-global-quote-root .ppec-gq-fabs{visibility:hidden!important;pointer-events:none!important}' ].join(''); document.head.appendChild(s); } function closeModal() { var el = document.getElementById('ppe-stc-modal'); if (el) el.hidden = true; document.body.style.overflow = ''; document.documentElement.classList.remove('ppe-stc-open'); } function selected() { return Array.prototype.slice.call(document.querySelectorAll('#ppe-stc-modal .ppe-stc-row input:checked')); } function syncBtn() { var n = selected().length; var btn = document.getElementById('ppe-stc-go'); if (!btn) return; btn.disabled = n !== EXACT; btn.textContent = n === EXACT ? 'Add package with 2 booth games' : ('Select exactly 2 (' + n + '/2)'); } function confirmPackage() { var boxes = selected(); if (boxes.length !== EXACT) { toast('Select exactly 2 booth games'); return; } var byId = window.__ppeStcInv || {}; var picked = []; boxes.forEach(function (b) { var it = byId[b.value]; if (it) picked.push(it); }); if (picked.length !== EXACT) return; var cart = loadCart(); if (activeMode === 'package') { cart = cart.filter(function (x) { return x.id !== 'small-town-carnival'; }); cart.push({ id: 'small-town-carnival', title: 'Small Town Carnival', details: ['Carousel', 'High Striker', picked[0].name, picked[1].name, 'Popcorn Machine'], kind: 'package', url: location.pathname, source: 'carnival-booth-picker' }); } picked.forEach(function (it) { if (!cart.some(function (x) { return x.id === it.id; })) { cart.push({ id: it.id, title: it.name, details: ['Carnival Booth Game', 'Pick 2 booth games'], kind: 'item', url: it.url || '', source: 'carnival-booth-picker' }); } }); saveCart(cart); closeModal(); toast(activeMode === 'package' ? 'Small Town Carnival + 2 booth games added' : '2 Carnival Booth Games added to quote'); } function openModal(items) { ensureUi(); var el = document.getElementById('ppe-stc-modal'); if (!el) { el = document.createElement('div'); el.id = 'ppe-stc-modal'; el.hidden = true; el.setAttribute('role', 'dialog'); el.setAttribute('aria-modal', 'true'); el.innerHTML = '' + '
' + '
' + '
Pick 2 Carnival Booth Games
' + '

Choose exactly two carnival tabletop booth games.

' + '
' + '
' + '
' + ' ' + ' ' + '
'; document.body.appendChild(el); el.addEventListener('click', function (e) { if (e.target.closest('[data-stc-close]')) closeModal(); var row = e.target.closest('.ppe-stc-row'); if (row && !e.target.matches('input')) { var inp = row.querySelector('input'); if (inp) { if (!inp.checked && selected().length >= EXACT) { toast('Pick exactly two booth games'); return; } inp.checked = !inp.checked; row.classList.toggle('is-on', inp.checked); syncBtn(); } } }); el.addEventListener('change', function (e) { if (!e.target.matches('.ppe-stc-row input')) return; if (e.target.checked && selected().length > EXACT) { e.target.checked = false; toast('Pick exactly two booth games'); } var row = e.target.closest('.ppe-stc-row'); if (row) row.classList.toggle('is-on', e.target.checked); syncBtn(); }); document.getElementById('ppe-stc-go').addEventListener('click', confirmPackage); } var list = document.getElementById('ppe-stc-list'); var html = ''; items.forEach(function (it) { html += ''; }); list.innerHTML = html || '

No booth games found.

'; var sub = document.getElementById('ppe-stc-sub'); if (sub) { sub.textContent = activeMode === 'package' ? 'Small Town Carnival includes two tabletop booth games. Choose exactly two.' : 'Carnival Booth Games: pick exactly two tabletop booth games for your quote.'; } el.hidden = false; document.body.style.overflow = 'hidden'; document.documentElement.classList.add('ppe-stc-open'); syncBtn(); } function isTarget(btn) { if (!btn || !btn.classList.contains('pp-add-to-quote')) return false; var id = (btn.getAttribute('data-quote-id') || '').toLowerCase(); var title = (btn.getAttribute('data-quote-title') || '').toLowerCase(); if (id === 'small-town-carnival') return true; if (id === 'ring-toss' || id === 'carnival-booth-games' || id === 'carnival-booth-rentals') return true; if (title.indexOf('small town carnival') !== -1) return true; if (title.indexOf('carnival booth') !== -1) return true; if (title === 'ring toss') return true; var pack = btn.closest('.pp-package'); if (pack && /small town carnival/i.test(pack.getAttribute('data-item-title') || '')) return true; var card = btn.closest('.pp-card'); if (card) { var ct = (card.getAttribute('data-item-title') || '').toLowerCase(); var cid = (card.id || '').toLowerCase(); if (ct === 'ring toss' || ct.indexOf('carnival booth') !== -1) return true; if (cid === 'pp-ring-toss' || cid === 'pp-carnival-booth-games') return true; } return false; } document.addEventListener('click', function (e) { var btn = e.target.closest('.pp-add-to-quote, .package-btn'); if (!isTarget(btn)) return; e.preventDefault(); e.stopPropagation(); if (typeof e.stopImmediatePropagation === 'function') e.stopImmediatePropagation(); fetch(INV_URL, { credentials: 'same-origin' }) .then(function (r) { return r.json(); }) .then(function (data) { var items = (data && data.items) || []; var byId = {}; items.forEach(function (it) { byId[it.id] = it; }); window.__ppeStcInv = byId; var list = []; BOOTH_IDS.forEach(function (id) { if (byId[id]) list.push(byId[id]); }); var id = (btn.getAttribute('data-quote-id') || '').toLowerCase(); var title = (btn.getAttribute('data-quote-title') || '').toLowerCase(); activeMode = (id === 'small-town-carnival' || title.indexOf('small town carnival') !== -1) ? 'package' : 'addon'; openModal(list); }) .catch(function () { toast('Could not load booth games. Try again.'); }); }, true); })();

A Kemblesville holiday floor with a rink or a snow globe

Holiday Party Rentals in Kemblesville, PA

Send the Kemblesville street address before you announce skating. The package is a staffed synthetic rink, an attended inflatable globe, and the add-ons you toggle: Inflatable Photo Booth, Green Screen Photo Party, Photos with Santa, Blackjack, Craps, and Stud Poker.

  • Casino tables quoted as individual games, not a forced pit
  • Photo booth styles are separate rentals from the overview
  • Delivery, setup, and pickup for the address you send
  • Crafts and photo lines stay off the skate path
Ice Skating RinkSynthetic surface with skates and staff. Confirm the open floor before you announce it.View the rink
Giant Inflatable Snow GlobeWalk-in photo op with an attendant. A separate rental from the rink.View the globe
Holiday Party Rentals in Kemblesville, PA
Holiday rink staged for a Kemblesville event floor.The globe is a separate rental if the rink will not fit.

Quick answer

What belongs on the first Kemblesville holiday request?

Pick the synthetic rink or the inflatable snow globe as the anchor in Kemblesville. Then add Inflatable Photo Booth or Green Screen Photo Party if the guest list needs a second stop. The other add-ons on this page are optional line items, not a bundle.

Browse the holiday party rentals hub or open the ice skating rental and inflatable snow globe.

Build your quote

Build a Kemblesville holiday quote

Start with the synthetic rink or the inflatable globe, then toggle only the Kemblesville add-ons you have room for: Inflatable Photo Booth, Green Screen Photo Party, Photos with Santa, Blackjack, Craps, and Stud Poker.

Ice Skating Rink rental in Kemblesville, PA
Synthetic surfaceSkates includedStaffed

Ice Skating Rink

Staffed synthetic rink. The product page lists a 40 by 60 foot surface and skates from toddler size 8 through adult size 13.

Giant Inflatable Snow Globe rental in Kemblesville, PA
Photo opAttendant includedInflatable

Giant Inflatable Snow Globe

Walk-in globe photo op. An attendant is part of this holiday listing.

Holiday Casino Party rental in Kemblesville, PA
Staffed tablesPlay money

Holiday Casino Party

The holiday casino listing uses play money. Add only the Kemblesville games you have space to seat.

Holiday Photo Booths rental in Kemblesville, PA
Prints and GIFsProps

Holiday Photo Booths

Booth lineup for prints, GIFs, and props. Choose a specific booth below if you already know the style.

Photos with Santa rental for Kemblesville events

Photos with Santa

Santa photos are a separate rental from the booth and the globe. Add it only if the floor still has a clear corner.

Blackjack rental for Kemblesville events

Blackjack

One staffed blackjack table when you do not need every casino game. It does not replace the rink or the globe.

Craps rental for Kemblesville events

Craps

A craps table only if the room can give it a clear standing edge. Tell us the guest ages if this station is for families.

Full inventory

Other rentals that can share the Kemblesville quote

Open the catalog if you need a category that is not on this holiday page. Added items use the same quote.

Local event planning

A practical Kemblesville floor plan for holiday rentals

The Kemblesville quote gets faster when loading notes travel with the date. Place Inflatable Photo Booth where it does not cross the skate entrance. The crew confirms fit from the address and the floor notes you send.

1

Confirm power early

List outlets near the booth and near Inflatable Photo Booth. Do not make the crew guess from a photo. Outdoor plans need a wet-weather note on the same quote.

2

Give every attendant a home base

Staff for the rink, the globe, or Inflatable Photo Booth need a spot that is not the dinner aisle.

3

Write the hard out

Put the Kemblesville start and end on the request so setup and pickup use the same window.

4

Keep food off the active edge

Serving tables should not spill into the skate path or the globe entrance.

Event ideas

Event styles for holiday rentals in Kemblesville

Reception after a program

The Kemblesville crowd leaves in a wave. A globe line needs a holding spot, and Inflatable Photo Booth should not share it.

Weekend family party

Mix ages by splitting skating from Inflatable Photo Booth. The globe attendant is already part of that listing.

Company holiday party

A rink or globe keeps the Kemblesville celebration in the same building as dinner. Inflatable Photo Booth covers guests who are not skating.

Classroom winter party

A craft such as Inflatable Photo Booth fits a Kemblesville classroom better than a rink. Say the room size on the quote.

FAQ

Holiday rental questions for Kemblesville, PA

How do you open a holiday quote for Kemblesville?

Put the Kemblesville, PA street address on the same note as the date. Tell us rink, globe, or both, then mention Inflatable Photo Booth if you want it priced.

Is the Kemblesville snow globe staffed?

The globe comes with an attendant. In Kemblesville, keep that line from merging with Inflatable Photo Booth.

Can a smaller Kemblesville room still request the rink?

The product page states the footprint and the skate range. For Kemblesville, a tight floor is a reason to switch the anchor to the globe, not to invent a smaller rink.

Do Kemblesville hosts have to book every casino game?

No full pit is required. Quote the tables guests will use. Inflatable Photo Booth is one option on this Kemblesville page, not a requirement.

Where do outlets matter for a Kemblesville holiday rental?

Send a plain note: which wall has outlets, and whether Inflatable Photo Booth sits on that wall. That is enough to start.

Do you need a landmark to route the truck in Kemblesville?

No. Send the street address in Kemblesville, loading notes, and a contact on site. We do not invent a venue name to make the page sound local.

Check a holiday date in Kemblesville

Share the street address in Kemblesville, PA and whether the floor can take skating. Add Inflatable Photo Booth only if that corner is still open.

✅ Added! When you're ready, tap Review Quote to send your request.
Added to quote.