It's that time again... it's £20 Tuesday b**ches and we're calling all Dolls who are looking for a style... Read More
Sold out
Born With It - Cream Black Stripe Roll Neck Jumper Dress
£32.99
- Unit price
- /per
Save £30.00
co*cktail OClock - Red Sequin Midi Dress
Regular price £59.99 £29.99
- Unit price
- /per
17 colours
- +12 more
Save £20.00
Adore Me - Forest Velvet Midi Dress
Regular price £49.99 £29.99
- Unit price
- /per
15 colours
- +10 more
Sold out
Drive Em Wild - Champagne Velvet Gold Sequin Midi Wrap Dress
Regular price £49.99 £34.99
- Unit price
- /per
50 colours
- +45 more
Save £25.00
Adore Me - Wine Velvet Midi Dress
Regular price £49.99 £24.99
- Unit price
- /per
15 colours
- +10 more
Adore Me - Forest Midi Dress
£42.99
- Unit price
- /per
15 colours
- +10 more
Save £18.00
So Sensational - Pink Blue Sequin Long Sleeve Mini Dress
Regular price £59.99 £41.99
- Unit price
- /per
2 colours
Sold out
co*cktail OClock - Multi Sequin Velvet Midi Dress
Regular price £64.99 £44.99
- Unit price
- /per
17 colours
- +12 more
Sold out
Off The Cuff - Black Stripe Cuff Oversized Coat
£47.99
- Unit price
- /per
Save £24.00
co*cktail OClock - Wine Velvet Wrap Dress
Regular price £47.99 £23.99
- Unit price
- /per
Sold out
Never Looked Better - Forest Velvet One Shoulder Midi Dress
Regular price £47.99 £28.99
- Unit price
- /per
6 colours
- +1 more
Save £20.00
Epitome Of Elegance - Wine Velvet Cowl Neck Midi Dress
Regular price £49.99 £29.99
- Unit price
- /per
9 colours
- +4 more
Save £24.00
Take Me Out - Plum Satin Long Sleeve Wrap Maxi Dress
Regular price £47.99 £23.99
- Unit price
- /per
Save £24.00
Take Me Out - Emerald Satin Long Sleeve Wrap Maxi Dress
Regular price £47.99 £23.99
- Unit price
- /per
Save £20.00
Drive Em Wild - White Velvet Silver Sequin Midi Wrap Dress
Regular price £49.99 £29.99
- Unit price
- /per
50 colours
- +45 more
Save £20.00
Reversible
Without Limits - Magenta Velvet Pleated Midi Dress
Regular price £49.99 £29.99
- Unit price
- /per
Sold out
Without Limits - Forest Velvet Pleated Midi Dress
Regular price £49.99 £29.99
- Unit price
- /per
One Step Ahead - Pink Heeled Sock Boots
£42.99
- Unit price
- /per
A Class Of Your Own - Black Gold Spot Midi Dress
£47.99
- Unit price
- /per
13 colours
- +8 more
On Thin Ice - Black Pink Sequin Sleeve Jumper Dress
£44.99
- Unit price
- /per
Save £24.00
Reversible
The Pleat Is On - Cobalt Glitter Pleated Jumpsuit
Regular price £59.99 £35.99
- Unit price
- /per
22 colours
- +17 more
Save £30.00
Reversible
The Pleat Is On - Forest Glitter Pleated Jumpsuit
Regular price £59.99 £29.99
- Unit price
- /per
22 colours
- +17 more
Save £36.00
Shes A Goddess - Wine Sequin Grecian Maxi Dress
Regular price £59.99 £23.99
- Unit price
- /per
Save £17.00
Dont Give A Glam - Wine Jacquard Leopard Midi Dress
Regular price £42.99 £25.99
- Unit price
- /per
- 1
- …
- 25
- 26
- 27
- 28
You’re viewing 625-648 of 670 products
Availability
`).insertBefore(form.find('.product-form__controls-group')) // } if(GloboPreorderParams.advancedSettings.tickbox){ if($('.gpo-preorder-confirm').length == 0){ $(`
`).insertBefore(form.find('.product-form__controls-group')) } if($('.gpo-preorder-confirm-input').is(':checked')){ $('.gPreorderBtn').removeClass('gPreorderBtnConfirm'); }else{ $('.gPreorderBtn').addClass('gPreorderBtnConfirm'); } $(document).on('change', '.gpo-preorder-confirm-input', function(){ if($(this).is(':checked')){ $(this).closest('form').find('.gPreorderBtn').removeClass('gPreorderBtnConfirm'); }else{ $(this).closest('form').find('.gPreorderBtn').addClass('gPreorderBtnConfirm'); } }) } if(form.hasClass('quickviewPreOrderForm')){ app.initQuickview(form); } }); document.addEventListener('globo.preorder.show.addtocart', function (e) { const form = e.detail.form; // form.find('.product-form__cart-submit').attr('data-lang-available', form.find('.product-form__cart-submit').attr('data-old-lang-available')); // form.find('.product-form__cart-submit [data-add-to-cart-text]').text(form.find('.product-form__cart-submit').attr('data-lang-available')); form.find('.product-form__cart-submit [data-add-to-cart-text]').text(form.find('.product-form__cart-submit').attr('data-default-text')) $('.gpo-preorder-confirm').remove(); if(form.hasClass('quickviewPreOrderForm')){ app.initQuickview(form); } const btnConfirm = form.find('.gPreorderBtnConfirm') if(btnConfirm.length){ btnConfirm.removeClass('gPreorderBtnConfirm') } let atcButton = form.find('.product-form__cart-submit[data-addtocart-text]') if(atcButton.length){ atcButton.html(` ${atcButton.attr('data-addtocart-text')}
`) } }); this.appSetInterval(function(){ if(typeof Globo !== 'undefined' && typeof Globo.Preorder !== 'undefined'){ const preorder = Globo.Preorder; if(preorder.settings.page == 'cart' && preorder.settings.products.length){ $('.cart__form-item').each(function(){ const cartElement = $(this); const cartItem = preorder.settings.cart.items.find(i => i.key === cartElement.data('key')); const cartItemKey = parseInt(preorder.settings.cart.items.findIndex(i => i.key === cartElement.data('key'))) + 1; const cartItemProps = cartItem?.properties?._is_preorder ?? null; const productJson = preorder.settings.products.find(p => p.id.toString() === cartElement.data('product-id').toString()); const profile = preorder.getProductProfile(productJson, cartElement.data('variant-id'), null); if(typeof profile !== 'undefined' && profile.isPreorder && !cartItemProps){ cartElement.find('.cart__form-item-properties').length == 0 && $(`
${profile.message.preorderedItemlabel}
`).insertAfter(cartElement.find('.cart__form-item-variant').length ? cartElement.find('.cart__form-item-variant') : cartElement.find('.cart__form-item-title')) let data = { 'line': cartItemKey, 'properties': { '_is_preorder': profile.message.preorderedItemlabel, '_preorder_locale': preorder.settings.locale } } fetch('/cart/change.js', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(data) }) .then(response => response.json()) .then(response => { preorder.settings.cart = response; if (app.dataOrDefault(preorder.settings, ['settings', 'cartWarning', 'enabled'], false)) { preorder.popupCartMixed(); } }) } }) } } }, 500, 3) }, initQuickview: function(productForm) { const self = this; const app = Globo.Preorder; let productId = productForm.attr('data-preorder-product-id'); let productJson = app.settings.products.find(product => product.id.toString() == productId.toString()); let productAddToCartSelector = app.settings.selectors.productAddToCartBtn.find(selector => productForm.find(selector).length); $(productForm.closest('.quick-product--right').find('.dynamic-variant-button')).on('change click', function(){ app.initProductPreorder( productJson, productForm, app.settings.selectors.productVariantActivator, 'input[name="id"]', app.settings.selectors.productQuantitySelector, productAddToCartSelector, app.settings.selectors.productAddToCartTextElement, app.settings.selectors.paymentButton ); }) }, getVariantId: function(form, product){ let variantId = product?.first_available_variant?.id || product.variants[0].id; let shopUrl = window.location.search; if(shopUrl.includes('variant=')){ variantId = new URLSearchParams(shopUrl).get("variant"); } return variantId; }, initVariantElement: function(form, product){ let variantId = this.getVariantId(form, product) if($(form).find('.variantId').length){ $(form).find('.variantId').val(variantId) }else{ let variantELement = `` $(form).append(variantELement) } }, renderSingleProductForm: async function(form, product){ const app = window.Globo.Preorder; const productVariantActivator = app.settings.selectors.productVariantActivator; const productVariantSelector = app.settings.selectors.productVariantSelector; const productQuantitySelector = app.settings.selectors.productQuantitySelector; const productAddToCartTextElement = app.settings.selectors.productAddToCartTextElement; const paymentButton = app.settings.selectors.paymentButton; //await this.initVariantElement(form, product) app.renderProductForm(product, form, productVariantActivator, productVariantSelector, productQuantitySelector, 'button.product-form__cart-submit', productAddToCartTextElement, paymentButton) app.renderBisForm(product, form, productVariantActivator, productVariantSelector) }, appSetInterval: function (callback, delay, repetitions) { callback(); var x = 0; var intervalID = window.setInterval(function () { callback(); if (++x === repetitions) window.clearInterval(intervalID); }, delay); }, dataOrDefault: function(data,path,def) { let data_ = data; for (var i = 0; i < path.length; i++) { if (!data_[path[i]]) return def; data_ = data_[path[i]]; } return data_; } } preorderCustom.render()