请输入您的邮政编码以获得即时报价或在线预订您的跳过.

获得报价

请输入您的邮政编码以继续 ${postcodeInvalidError消息} 邮编有问题?
请选择跳跃的位置 许可证 在公共道路上放置的箕斗需要什么
  • ${邮编}
  • 道路许可证 越野 ${formatPrice(permitPrice)}
请选择跳过大小以继续
${skipTitle} (${skipSubTitle})
公共道路许可证+£${formatPrice(permitPrice)} 为什么需要许可证?
总计 £${total}
总计 £${total}

${vatText}

选择交付日期

  • ${邮编}
  • 道路许可证 越野 ${formatPrice(permitPrice)}
  • ${skipTitle} (${skipSubTitle}) ${formatPrice(skipPrice)}
请选择一个日期 请选择一个未来的日期.

确认订单 & 支付

订单汇总

  • ${邮编}
  • 道路许可证 越野 ${formatPrice(permitPrice)}
  • ${skipTitle} (${skipSubTitle}) ${formatPrice(skipPrice)}
  • 折扣- ${discountDetails} -£${formatPrice(discountAmount)}
  • ${orderdate格式化}
  • 订单Id ${总结.id }
支付总额 支出金额 £${total}

${vatText}

成功下订单!

${discountError消息}

交货的细节

付款细节

请在送货详情中输入标题 请在送货详情中输入姓名 请在送货详情中输入您的姓 请输入您的联络电邮地址 请输入有效的电子邮件地址 请输入您的联系电话 你必须同意十大棋牌游戏排行榜的条件才能继续 你必须确认你明白你可以在十大棋牌游戏排行榜的船里放什么 ${paymentError消息} ${错误} ${错误} 您必须为要使用的卡片添加名称.
2码小型箕斗

2码开放跳跃

Enva 2庭院开放式箕斗是专为小型项目或少量的房屋/花园废物. 紧凑,可以放置在您的驱动器或道路上与许可证, 十大棋牌游戏排行榜可以代表你申请哪些.

高度0.76m x长度.53米x宽.1米(大约

有用的指导

20个轮式垃圾袋(约)

迷笛跳4码

4码开放跳跃

Enva 4码开放式箕斗是专为中型项目. 可以放置在您的车道上,还是十大棋牌游戏排行榜可以代表您申请许可证放置在道路上.

高度0.96m x长度.80m x宽度.22米(大约)

有用的指导

30至40个轮式垃圾袋(约)

最大跳跃6码

6码开放跳跃

Enva 6码开放式箕斗是专为中型项目. 可以放置在您的车道上,还是十大棋牌游戏排行榜可以代表您申请许可证放置在道路上.

身高1.22m x长度.60米×宽.52米(大约)

有用的指导

40至60个轮式垃圾袋(约)

最大跳跃6码

8码开放跳跃

Enva 8码开放式箕斗用于整个建筑行业,也可用于房屋, 花园清理和惰性材料. 十大棋牌游戏排行榜可以代表你申请许可证,把它放在路上.

身高1.22m x长度.20米宽1.75米(大约)

有用的指导

60至80个轮式垃圾袋(约)

在线跳过订购,你可以信任

Enva提供广泛的跳过,以适应所有类型的项目. 从一个家庭住宅装修, 车库或花园清关到大型全国多地点建设项目,十大棋牌游戏排行榜可以提供箕斗和集装箱,以满足各种类型的客户. 您所需要的跳跃的大小将取决于正在进行的工作的类型.

如果您不确定所需的跳跃大小,则 请联系Enva 十大棋牌游戏排行榜的专家团队将很乐意帮助您确定合适尺寸的箕斗. 作为一个粗略的指南,1立方码大约相当于10个垃圾袋——或者两个标准尺寸的轮式垃圾箱.

十大棋牌游戏排行榜在你当地的仓库里有各种各样的车,所以如果你需要更大的, 为什么不十大棋牌游戏排行榜得到一个定制报价.

重要的笔记

请考虑您的车道路面是否适合箕斗车辆和箕斗的重量, 特别是当填充时. 当在车道上放置箕斗时,必须清除所有障碍物,以便箕斗能够安全卸载和收集. 由于健康和安全原因,超载的箕斗无法收集. 价格基于交货后7天的自动提升,但可以根据您的要求提前提货,长期雇佣可与十大棋牌游戏排行榜联系. 在道路上放置跳绳需要议会许可,十大棋牌游戏排行榜可以为您安排. 箕斗不能放在人孔盖或消火栓盖上.

联系

 

隐私
JS代码需要-不要删除
' // }); var app = Vue.component('app', { delimiters: ['${', '}'], data: function () { return { }; }, template: '
', methods: { getNextPage: function (currentPageID) { this.$root.$data.displayedPage++; } // received:function () { // console.log('changePageToNumber received'); // } } // mounted: function () { // this.$on("changePageToNumber", this.received); // } }); var page = Vue.component('page', { delimiters: ['${', '}'], mounted: function () { this.id = "page_" + this._uid; }, props: { pageNumber: Number, buttonLabel: String, button: String, inProgress: Boolean }, data: function () { return { page: this.pageNumber, buttonColour: this.button, id: null }; }, methods: { changePageToNext: function() { this.$root.$emit('changePageToNext', this.id); }, pageDisplayed: function() { if (this.page == this.$root.$data.displayedPage) { return true; } else { return false; } } }, template: '
' }); var pagination = Vue.component('pagination', { delimiters: ['${', '}'], props: { pageNumber: Number }, data: function () { return { }; }, methods: { changePageToNumber: function(n) { this.$root.$emit('changePageToNumber', n); } }, template: '
' }); new Vue({ el: '#skip_hire', delimiters: ['${', '}'], components: { app: app, page: page, pagination: pagination, skip卡: skip卡, vuejsDatepicker: vuejsDatepicker }, data: { uuid: '', started: [], address: { line_1: '', line_2: '', town_or_city: '', county: '' }, billingAddress: { line_1: '', line_2: '', town_or_city: '', county: '', postcode: '' }, addressErrors: [], billingAddressErrors: [], postcodeId: 0, postcode: '', postcodeError: false, postcodeInvalidError: false, postcodeInvalidError消息: '', placement: '', placementError: false, pages: [], skips: [], addresses: [], deliveryTitle: '', deliveryTitleError: false, deliveryFirstName: '', deliveryFirstNameError: false, deliveryLastName: '', deliveryLastNameError: false, discountCode: '', discountCodeError: false, discountId: 0, discountAmount: 0.00, discountDetails: '', contact电子邮件: '', contact电子邮件Error: false, validate电子邮件Error: false, contactNumber: '', contactNumberError: false, contactNotes: '', selectedAddress: null, selectedAddressError: false, billingAddressError: false, orderDate: null, cardName: '', cardNameError: false, cardNumberEl: null, cardNumberElError: false, cardExpiryEl: null, cardExpiryElError: false, cardCvcEl: null, cardCvcElError: false, // cardNumber: '', // cardExpiryMonth: '', // cardExpiryYear: '', // cardCvv: '', disabledDates: { days: [], dates: [] }, skipChoosen: null, isApiSkip: false, depotData: null, skipChoosenError: false, usesScottishStripe: false, localAuthority: '', permitPrice: 0.00, skipPrice: 0.00, skipTitle: '', skipSubTitle: '', permitDelay: 0, displayedPage: 1, modalTitle: '许可证', modalContent: '

Skips on public roads require a permit to be issued.

A permit from your Local Authority will be required for placement on a public road. This will be arranged by Enva, but may incur a fee and will require advance booking notification.

', modalContentExtended: '', modalTitleDate: '交货日期', modalContentDate: '

Orders must be placed before midday for next day delivery.

', modalTitle邮政编码: '邮编有问题?', modalContent邮政编码: '

If you are having issues any issues obtaining a quote, please contact us or phone your local depot on the numbers listed below:

英格兰: 0115 940 3111
苏格兰: 01505 321 000

', modalTitleWasteInfo: '我可以在我的车里放些什么?', modalContentWasteInfo: '

As a responsible waste processor Enva can handle most domestic items that you would need to place in a skip. There are some items which cannot be placed in our skips, although arrangements can be made to collect specific items if arranged at the time of booking.

Read more

', // class="btn btn-dark-green" style="border-radius: 15px; timeSlot: 'am', timeSlotError: false, orderDateError: false, orderFutureDateError: false, momentFormat: 'YYYY-MM-DD', momentFormatUser: 'dddd Do MMMM YYYY', agree条款: false, agree条款Error: false, agreeSkipContents: false, agreeSkipContentsError: false, agree联系: 0, inProgress: false, complete: false, summary: {}, paymentError: false, paymentError消息: '', paymentFormInvalid: false, discountError: false, discountError消息: '', vatText: 'All prices include V.A.T and are based on an automatic uplift 7 days from the time of delivery', useSelectedAddress: true, useDeliveryAddress: true }, computed: { total: function () { var tmpPermitprice = ( this.placement === 'on' ? this.permitPrice : 0 ); var price = (this.skipPrice - this.discountAmount) + tmpPermitprice; return price.toFixed(2); }, buttonText: function () { if (this.inProgress) { return 'Processing'; } if (this.complete) { return 'Complete'; } return '支付 £' + this.total; }, orderDateFormatted: function () { if (!this.orderDate) { return null; } return moment(this.orderDate).format(this.momentFormatUser); } }, methods: { formatPrice: function(value) { return value.toFixed(2); }, stringToJsDate: function(str) { var parts = str.split('-'); if (parts.length !== 3) { return null; } return new Date(parts[0], (parts[1] - 1), parts[2]); }, validate电子邮件: function() { const re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; return re.test(String(this.contact电子邮件).toLowerCase()); }, nextPage: function() { if (this.inProgress) { return false; } // hide contact $('#contact').hide(); switch (this.displayedPage) { case 1: this.postcodeError = false; this.placementError = false; this.postcodeInvalidError = false; // BOTH POSTCODE AND PLACEMENT EMPTY if (!this.postcode.length && !this.placement.length) { this.postcodeError = true; this.placementError = true; } if (!this.postcode.length && this.placement.length) { this.postcodeError = true; this.placementError = false; } // ONLY PLACEMENT EMPTY if (this.postcode.length && !this.placement.length) { this.postcodeError = false; this.placementError = true; } if (this.postcodeError || this.placementError) { return false; } // Clear the vars this.postcodeId = 0; this.skips = []; this.skipChoosen = ''; this.skipPrice = 0.00; this.localAuthority = ''; this.permitPrice = 0.00; this.permitDelay = 0; this.modalContentExtended = ''; this.inProgress = true; // Store ref to "this" var that = this; // Check 邮政编码 and get skip types availabled etc axios.post('/skiphire-api/check-postcode', { postcode: this.postcode, placement: this.placement }) .then(function (response) { that.inProgress = false; if (response.data.status === 'error') { that.postcodeInvalidError = true; that.postcodeInvalidError消息 = response.data.message; that.recordEvent('邮政编码: ' + response.data.payload.postcode + ' - ' + response.data.message); if (response.data.message === '邮政编码 is invalid') { window.dataLayer = window.dataLayer || []; window.dataLayer.push({ 'invalid邮政编码': that.postcode, }); } return false; } that.postcodeInvalidError = false; that.postcodeInvalidError消息 = ''; that.postcodeId = response.data.payload.postcode_id; that.skips = response.data.payload.skips; that.addresses = response.data.payload.addresses; that.localAuthority = response.data.payload.permit_info.local_authority; that.permitPrice = parseFloat(response.data.payload.permit_info.permit_price); that.permitDelay = parseInt(response.data.payload.permit_info.permit_delay, 10); that.modalContentExtended = '

A permit in '+that.localAuthority+' costs £'+ that.permitPrice.toFixed(2) +' (inc. VAT) and must be applied for at least '+that.permitDelay+' days in advance.

Some roads may be subject to additional permit charges based on an inspection by Council representatives.

'; that.displayedPage++; that.hash = "#step2"; window.location.hash = "#step2"; that.recordEvent('Entered'); that.setCookie(); that.resetView(); }) .catch(function (error) { that.inProgress = false; alert(error); }); break; case 2: // Ensure a skip has been selected if (!this.skipChoosen) { this.skipChoosenError = true; } else { this.skipChoosenError = false; } if (this.skipChoosenError) { return false; } // reset order date - just in case // pagination has been used this.orderDate = null; this.getDates(); this.displayedPage++; this.hash = "#step3"; window.location.hash = "#step3"; this.recordEvent('Entered'); this.setCookie(); this.resetView(); break; case 3: this.orderDateError = false; this.timeSlotError = false; // BOTH ORDER DATE AND TIME SLOT EMPTY if(!this.orderDate && !this.timeSlot) { this.orderDateError = true; this.timeSlotError = true; } if (!this.orderDate && this.timeSlot) { this.orderDateError = true; this.timeSlotError = false; } if (this.orderDate && !this.timeSlot) { this.orderDateError = false; this.timeSlotError = true; } if (this.orderDateError || this.timeSlotError) { return false; } // CHECK VALIDITY OF DATE BASED ON CURRENT PARAMS var now = moment(); var nowString = now.format(this.momentFormat); var orderDateMoment = moment(this.orderDate); var orderDateMomentString = orderDateMoment.format(this.momentFormat); // console.log(nowString, orderDateMomentString); this.orderFutureDateError = false; if (orderDateMoment.isBefore(now)) { this.orderFutureDateError = true; return false; } var isDisabled = false; this.disabledDates.dates.forEach(function(d) { var toTest = moment(d).format(this.momentFormat); // console.log(toTest); if (orderDateMomentString === toTest) { isDisabled = true; } }); if (isDisabled) { alert('Your choosen date is disabled/unavailable'); return false; } this.displayedPage++; this.hash = "#step4"; window.location.hash = "#step4"; this.recordEvent('Entered'); this.setCookie(); this.resetView(); // SET UP STRIPE HERE // var card = elements.create("card", { style: style }); // card.mount("#card-element"); if (this.usesScottishStripe) { initStripe('pk_live_51IJaxlJPC7QzsSxPRD99ATwB73K11OwnerkGRFn4S8ctejwJVCMKh98K8p7W8Gx5ToVZX6vJNM67Vb7aMh0zlQJe005t9OdCOc'); } else { initStripe('pk_live_scplv2cW9FGcCy7hoRmCYsAw'); } var style = { base: { fontFamily: '"Gotham Rounded A", sans-serif', color: "#54565b", fontWeight: "400", fontSize: "16px", "::placeholder": { color: "#BCBCBC", fontWeight: "400" } } }; var cardNumber = elements.create('cardNumber', { style: style, classes: {} }); cardNumber.mount('#card-number'); this.cardNumberEl = cardNumber; var cardExpiry = elements.create('cardExpiry', { style: style, classes: {} }); cardExpiry.mount('#card-expiry'); this.cardExpiryEl = cardExpiry; var cardCvc = elements.create('cardCvc', { style: style, classes: {}, }); cardCvc.mount('#card-cvc'); this.cardCvcEl = cardCvc; break; case 4: // clear all errors this.clearErrors(); if (!this.deliveryTitle.length) { this.deliveryTitleError = true; this.paymentFormInvalid = true; this.recordEvent('Form Error: Delivery title'); } else { this.deliveryTitleError = false; } if (!this.deliveryFirstName.length) { this.deliveryFirstNameError = true; this.paymentFormInvalid = true; this.recordEvent('Form Error: Delivery first name'); } else { this.deliveryFirstNameError = false; } if (!this.deliveryLastName.length) { this.deliveryLastNameError = true; this.paymentFormInvalid = true; this.recordEvent('Form Error: Delivery surname'); } else { this.deliveryLastNameError = false; } if (!this.contact电子邮件.length) { this.contact电子邮件Error = true; this.paymentFormInvalid = true; this.recordEvent('Form Error: 电子邮件 length'); } else { this.contact电子邮件Error = false; } if (!this.validate电子邮件()) { this.validate电子邮件Error = true; this.paymentFormInvalid = true; this.recordEvent('Form Error: 电子邮件 invalid'); } else { this.validate电子邮件Error = false; } if (!this.contactNumber) { this.contactNumberError = true; this.paymentFormInvalid = true; this.recordEvent('Form Error: 联系 number'); } else { this.contactNumberError = false; } if (!this.checkAddress()) { this.selectedAddressError = true; this.paymentFormInvalid = true; this.recordEvent('Form Error: Delivery address'); } else { this.selectedAddressError = false; } if (!this.checkBillingAddress()) { this.billingAddressError = true; this.paymentFormInvalid = true; this.recordEvent('Form Error: Billing address'); } else { this.selectedAddressError = false; } if (!this.agree条款) { this.agree条款Error = true; this.paymentFormInvalid = true; this.recordEvent('Form Error: Agree terms'); } else { this.agree条款Error = false; } if (!this.agreeSkipContents) { this.agreeSkipContentsError = true; this.paymentFormInvalid = true; this.recordEvent('Form Error: Agree skip contents'); } else { this.agreeSkipContentsError = false; } if (!this.cardName) { this.cardNameError = true; this.paymentFormInvalid = true; this.recordEvent('支付ment Error: Name on card'); } else { this.cardNameError = false; } if (this.paymentFormInvalid) { return false; } this.get支付mentIntent(); break; default: alert('ERROR'); break; } }, openModal: function() { $('#skips-modal-label').text(this.modalTitle); $('#skips-modal-content').html(this.modalContent + this.modalContentExtended); $('#skipsModal').modal('show'); this.recordEvent('Tooltip: 我可以在我的车里放些什么'); }, openModalDate: function() { $('#skips-modal-label').text(this.modalTitleDate); $('#skips-modal-content').html(this.modalContentDate); $('#skipsModal').modal('show'); this.recordEvent('Tooltip: Delivery date'); }, openModal邮政编码: function() { $('#skips-modal-label').text(this.modalTitle邮政编码); $('#skips-modal-content').html(this.modalContent邮政编码); $('#skipsModal').modal('show'); this.recordEvent('Tooltip: 邮政编码 Errors'); }, openModalWasteInfo: function() { $('#skips-modal-label').text(this.modalTitleWasteInfo); $('#skips-modal-content').html(this.modalContentWasteInfo); $('#skipsModal').modal('show'); this.recordEvent('Tooltip: 为什么需要许可证'); }, selectSkip: function(id) { this.depotData = null; this.skipChoosen = id; // skip = this.skips.find(s => s.id === id); skip = this.skips.find(function(s) { return s.id === id; }); if (skip === undefined) { alert('An error occurred while selecting your skip - please try again 或联系 us if the issue persists'); return false; } this.isApiSkip = skip.isApiSkip; this.skipPrice = parseFloat(skip.price); this.skipTitle = skip.title; this.skipSubTitle = skip.subtitle; this.depotData = skip.depotData; this.usesScottishStripe = skip.useScottishStripe; this.recordEvent('Skip Choosen: ' + this.skipTitle); }, checkDiscount: function() { this.discountError = false; this.discountError消息 = ''; if (!this.discountCode) { this.discountError = true; this.discountError消息 = 'Please enter a discount code to check'; this.recordEvent('Discount: Error - ' + this.discountError消息); return false; } // Store ref to "this" var that = this; // Clear the vars this.discountAmount = 0.00; this.discountDetails = ''; // Check Discount axios.post('/skiphire-api/check-discount', { skipId: this.skipChoosen, isApiSkip: this.isApiSkip, localAuthority: this.localAuthority, skipPrice: this.skipPrice, discountCode: this.discountCode, deliveryDate: this.orderDate }) .then(function (response) { if (response.data.status === 'error') { that.discountError = true; that.discountCode = ''; that.discountError消息 = response.data.message; that.recordEvent('Discount: Error - ' + response.data.message); return false; } // All good - apply discount that.discountId = response.data.payload.discount_id; that.discountAmount = parseFloat(response.data.payload.discount_amount); that.discountDetails = response.data.payload.discount_details; that.recordEvent('Discount: Valid - ' + that.discountCode); }) .catch(function (error) { alert(error); }) ; }, resetView: function() { var position = $("#skip_hire").offset().top; position = position - 120; $("html, body").animate( { scrollTop: position }, 1000 ); }, getDates: function() { // // Reset disabled dates this.disabledDates.dates = []; this.disabledDates.to = null; var dateArray = []; var that = this; var skipDepots = $.grep(this.skips, function(s) { return s.id == that.skipChoosen; }); if (skipDepots[0] === undefined) { alert('Unable to find supplier'); return; } axios.post('/skiphire-api/get-dates', { postcodeId: this.postcodeId, placement: this.placement, supplierId: skipDepots[0].depotData.id }) .then(function (response) { // console.log(response); response.data.payload.disabled_dates.forEach(function(d) { dateArray.push(that.stringToJsDate(d)); }); if (response.data.payload.disabled_dates.length) { var toDateCheck = that.stringToJsDate(response.data.payload.disabled_dates[0]); if (toDateCheck > new Date()) { that.disabledDates.to = toDateCheck; } else { that.disabledDates.to = new Date(); } } else { that.disabledDates.to = new Date(); } var d = new Date(); var year = d.getFullYear(); var month = d.getMonth(); var day = d.getDate(); var endDate = new Date(year + 1, month, day); that.disabledDates.from = endDate; that.disabledDates.dates = dateArray; }) .catch(function (error) { alert(error); }); }, get支付mentIntent: function() { this.inProgress = true; this.paymentError = false; this.paymentError消息 = ''; var that = this; // Get 支付ment Intent axios.post('/skiphire-api/get-intent', { skipId: this.skipChoosen, isApiSkip: this.isApiSkip, localAuthority: this.localAuthority, skipPrice: this.skipPrice, postcodeId: this.postcodeId, placement: this.placement, discountId: this.discountId, delTitle: this.deliveryTitle, deliveryDate: this.orderDate, discountCode: this.discountCode, usesScottishStripe: this.usesScottishStripe }) .then(function (response) { that.inProgress = false; if (response.data.status === 'error') { that.paymentError = true; that.paymentError消息 = response.data.message; that.recordEvent('支付ment Error: ' + response.data.message); } else { var clientSecret = response.data.payload.payment_intent; that.process支付ment(clientSecret, that); } }) .catch(function (error) { // console.log(error); that.paymentError = true; that.paymentError消息 = error; that.inProgress = false; that.recordEvent('支付ment Error: ' + error); }) ; }, process支付ment: function(clientSecret, that) { that.inProgress = true; stripe.confirm卡支付ment(clientSecret, { payment_method: { card: that.cardNumberEl, billing_details: { name: that.cardName, address: { postal_code: that.postcode } } } }).then(function(result) { that.inProgress = false; if (result.error) { that.paymentError = true; that.paymentError消息 = result.error.message; that.recordEvent('支付ment Error: ' + result.error.message); } else { // console.log(result); // The payment has been processed! if (result.paymentIntent.status === 'succeeded') { that.sendOrderSuccess(result.paymentIntent.id, that); that.destroyCookie(); } } }); }, sendOrderSuccess: function(id, that) { // temp that.transaction = id; that.inProgress = true; var billingAddress = that.billingAddress; if (that.useDeliveryAddress) { billingAddress = that.address; billingAddress.postcode = that.postcode; } axios.post( '/skiphire-api/order-success', { postcodeId: this.postcodeId, postcode: this.postcode, orderDate: moment(this.orderDate).format('YYYY-MM-DD'), orderSlot: this.timeSlot, skipId: this.skipChoosen, deliveryDate: this.orderDate, isApiSkip: this.isApiSkip, depotData: this.depotData, localAuthority: this.localAuthority, skipPrice: this.skipPrice, skip位置: this.placement, delTitle: this.deliveryTitle, delFirstname: this.deliveryFirstName, delLastname: this.deliveryLastName, delAddress: this.address, billAddress: billingAddress, contact电子邮件: this.contact电子邮件, contactNumber: this.contactNumber, consent: this.agree联系 ? true : false, message: this.contactNotes, transactionId: id, discountId: this.discountId, discountCode: this.discountCode }, { withCredentials: true } ) .then(function (response) { that.inProgress = false; if (response.data.status === 'error') { that.paymentError = true; that.paymentError消息 = response.data.message; that.recordEvent('支付ment Error: ' + response.data.message); } else { // HAPPY HAPPY that.complete = true; that.summary = response.data.payload; that.recordEvent('支付ment Success: id - ' + response.data.payload.id); var url = window.location.origin + '/skip-hire-checkout-success'; var form = $('
' + '' + '
'); $('body').append(form); form.submit(); } }) .catch(function (error) { that.paymentError = true; that.paymentError消息 = error; that.inProgress = false; that.recordEvent('支付ment Error: ' + error); }); }, formatAddress: function(addressArray) { var filtered = addressArray.filter(function (el) { return el !== null && el !== ''; }); return filtered.join(', '); }, changeAddress: function(e) { if (e.target.value === '') { // Reset this.address = { line_1: '', line_2: '', town_or_city: '', county: '' }; return; } var address = this.addresses[e.target.value]; this.address = { line_1: address.line_1, line_2: address.line_2, town_or_city: address.town_or_city, county: address.county }; }, checkAddress: function() { // console.log('checking'); var error = false; this.addressErrors = []; if (this.address.line_1 == '') { error = true; this.addressErrors.push('Please ensure you have filled out the first line of the address'); } if (this.address.town_or_city == '') { error = true; this.addressErrors.push('Please ensure you have filled out the town or city of the address'); } // if (this.address.county == '') { // error = true; // this.addressErrors.push('Please ensure you have filled out the county of the address - this may need to be added manually'); // } if (error) { return false; } return true; }, checkBillingAddress: function() { var error = false; this.billingAddressErrors = []; if (this.useDeliveryAddress) { return true; } if (this.billingAddress.line_1 == '') { error = true; this.billingAddressErrors.push('Please ensure you have filled out the first line of the billing address'); } if (this.billingAddress.town_or_city == '') { error = true; this.billingAddressErrors.push('Please ensure you have filled out the town or city of the billing address'); } // if (this.billingAddress.county == '') { // error = true; // this.billingAddressErrors.push('Please ensure you have filled out the county of the billing address'); // } if (this.billingAddress.postcode == '') { error = true; this.billingAddressErrors.push('Please ensure you have filled out the postcode of the billing address'); } if (error) { return false; } return true; }, sendOrderRepeat: function() { // var that = this; // this.sendOrderSuccess(this.transaction, that); }, nextPageByNumber: function(number) { if (this.complete) { // TOO LATE DO NOTHING return; } if (number > this.displayedPage) { this.nextPage(); } else { this.displayedPage = number; this.recordEvent('Returned'); } }, clearErrors: function () { this.postcodeError = false; this.postcodeInvalidError = false; this.placementError = false; this.deliveryTitleError = false; this.deliveryFirstNameError = false; this.deliveryLastNameError = false; this.discountCodeError = false; this.contact电子邮件Error = false; this.validate电子邮件Error = false; this.selectedAddressError = false; this.billingAddressError = false; this.cardNameError = false; this.cardNumberElError = false; this.cardExpiryElError = false; this.cardCvcElError = false; this.skipChoosenError = false; this.timeSlotError = false; this.orderDateError = false; this.agree条款Error = false; this.agreeSkipContentsError = false, this.paymentError = false; this.cardNameError = false; this.paymentFormInvalid = false; this.discountError = false; this.postcodeInvalidError消息 = ''; this.paymentError消息 = ''; this.discountError消息 = ''; this.addressErrors = []; }, goBackOnePage: function () { if (this.displayedPage > 1) { this.displayePage = this.displayePage - 1; } }, recordEvent: function (action) { if (this.displayedPage > 1) { $('#skip-hire-tabs').hide(); } else { $('#skip-hire-tabs').show(); } var actionText = action; if (action === 'Entered' || action === 'Returned') { actionText = 'Step' + this.displayedPage + ': ' + action; } if (action === 'Entered') { if (this.started.indexOf(this.displayedPage) >= 0 ) { // already been to and tracked as a start - change to 'Returned' this.recordEvent('Returned'); return false; } else { this.started.push(this.displayedPage); } } window.dataLayer = window.dataLayer || []; window.dataLayer.push({ 'event' : 'SkipHireEvent', 'action' : actionText, 'label' : this.uuid }); }, uuidv4: function () { return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) { var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8); return v.toString(16); }); }, dateSelected: function (date) { var formattedDate = moment(date).format(this.momentFormatUser); this.recordEvent('Date Choosen: ' + formattedDate); }, setCookie: function () { // console.log('cookie'); this.destroyCookie(); Cookies.set('十大棋牌游戏排行榜-skiphire', this.uuid + ',' + this.displayedPage); }, destroyCookie: function () { // console.log('destroy'); Cookies.remove('十大棋牌游戏排行榜-skiphire'); } }, mounted: function() { this.uuid = this.uuidv4(); this.recordEvent('Entered'); this.$on("changePageToNext", this.nextPage); this.$on("selectSkip", this.selectSkip); this.$on("changePageToNumber", this.nextPageByNumber); // document.addEventListener("backbutton", this.goBackOnePage, false); window.location.hash = "#step1"; this.hash = window.location.hash; that = this; setInterval(function() { if (window.location.hash != that.hash) { that.hash = window.location.hash; var page = that.hash.replace('#step', ''); // console.log(page); that.nextPageByNumber(parseInt(page)); } }, 100); }, beforeDestroy: function() { // document.removeEventListener("backbutton", this.goBackOnePage); } });
友情链接: 1 2 3 4 5 6 7 8 9 10