%PDF- %PDF-
Direktori : /home/forge/takeaseat.eco-n-tech.co.uk/.nuxt/dist/client/ |
Current File : //home/forge/takeaseat.eco-n-tech.co.uk/.nuxt/dist/client/b2735de.js |
(window.webpackJsonp=window.webpackJsonp||[]).push([[24],{440:function(t,e,n){"use strict";n.r(e);var r=n(0),o=(n(30),n(3),{props:{value:{required:!0},selected_slots:{type:Object,required:!0}},data:function(){return{error:null,working:!1,stripe:null,card:{},selected_payment_method:null,isPaymentRequestAllowed:!1,paymentRequest:{},card_name:null}},computed:{totals:function(){return this.$store.state.booking.summary.totals},therapist:function(){return this.$store.state.booking.therapist},payment_methods:function(){return this.$store.state.account.billing.paymentMethods},setup_intent:function(){return this.$store.state.account.billing.setupIntent},connect_id:function(){return this.$store.state.booking.payment.connect_id}},mounted:function(){var t=this;return Object(r.a)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("account/billing/setupIntent");case 2:return e.next=4,t.$store.dispatch("account/billing/getPaymentMethods");case 4:t.mountCard();case 5:case"end":return e.stop()}}),e)})))()},methods:{mountCard:function(){var t=this.$stripe.elements();this.card=t.create("card",{style:{base:{fontSize:"15px",fontFamily:"Poppins, sans-serif"}}}),this.getPaymentRequest(),this.card.mount("#card-element")},submitForm:function(){var t=this;this.$refs.paymentForm.validate().then((function(e){e&&t.confirmCardSetup()}))},getPaymentRequest:function(){var t=this;return Object(r.a)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$stripe.paymentRequest({country:"GB",currency:"gbp",total:{amount:parseInt(t.totals.amount),label:"Takeaseat Booking with "+t.therapist.user.full_name},requestPayerName:!0,requestPayerEmail:!0});case 2:t.paymentRequest=e.sent,t.mountPaymentButton();case 4:case"end":return e.stop()}}),e)})))()},mountPaymentButton:function(){var t=this;return Object(r.a)(regeneratorRuntime.mark((function e(){var n,r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=t.$stripe.elements(),r=n.create("paymentRequestButton",{paymentRequest:t.paymentRequest}),t.paymentRequest.canMakePayment().then(function(t){t?(this.isPaymentRequestAllowed=!0,r.mount("#payment-request-button")):this.isPaymentRequestAllowed=!1}.bind(t)),t.paymentRequest.on("paymentmethod",function(t){t.complete("success"),this.createPayment(t.paymentMethod.id)}.bind(t));case 4:case"end":return e.stop()}}),e)})))()},confirmCardSetup:function(){var t=this;return Object(r.a)(regeneratorRuntime.mark((function e(){var n,r,o;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t.working=!0,e.next=3,t.$stripe.confirmCardSetup(t.setup_intent,{payment_method:{card:t.card,billing_details:{name:t.card_name}}});case 3:if(n=e.sent,r=n.setupIntent,!(o=n.error)){e.next=13;break}return t.$toast.error(o.message).goAway(3e3),e.next=10,t.$store.dispatch("account/billing/setupIntent");case 10:t.working=!1,e.next=14;break;case 13:t.createPayment(r.payment_method);case 14:case"end":return e.stop()}}),e)})))()},createPayment:function(t){var e=this;return Object(r.a)(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return e.working=!0,n.next=3,e.$axios.post("/booking/payment/"+e.therapist.user.id,{grand_total:e.totals.amount,sessions:e.selected_slots,sessions_count:Object.keys(e.selected_slots).length,payment_method:t}).then((function(t){200==t.status&&e.createBooking(t.data)})).catch((function(t){e.working=!1,e.$toast.error(t.response.data.message).goAway(3e3)}));case 3:case"end":return n.stop()}}),n)})))()},createBooking:function(data){var t=this;return Object(r.a)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t.working=!0,e.next=3,t.$axios.post("/booking/create",{sessions:t.selected_slots,amount:t.totals.amount,therapist_id:t.therapist.id,charges:data.charges,transfer:data.transfer}).then((function(e){200==e.status&&(t.$store.commit("booking/success/setBookings",e.data),t.$router.push({path:"/booking/success"}))})).catch((function(e){t.$toast.error(e.response.message).goAway(1e3),t.working=!1}));case 3:case"end":return e.stop()}}),e)})))()},goBack:function(){this.$emit("input",2)}}}),c=n(10),component=Object(c.a)(o,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[n("span",{staticClass:"block text-center text-3xl font-bold mb-6"},[t._v("Payment")]),t._v(" "),n("div",{staticClass:"grid grid-cols-1 sm:grid-cols-2 gap-y-3 mb-6"},[n("div",{staticClass:"leading-6 text-center sm:text-left"},[t._v(t._s(Object.keys(t.selected_slots).length)+" x Sessions with "+t._s(t.therapist.user.full_name))]),t._v(" "),n("div",{staticClass:"flex items-center justify-center sm:justify-end text-2xl font-bold"},[t._v(t._s(t.totals.formatted))])]),t._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:t.isPaymentRequestAllowed,expression:"isPaymentRequestAllowed"}],attrs:{id:"payment-request-wrapper"}},[t._m(0),t._v(" "),t._m(1)]),t._v(" "),0==t.isPaymentRequestAllowed?n("div",{staticClass:"relative text-center my-6"},[n("span",{staticClass:"absolute z-10 top-1/2 left-0 transform -translate-y-1/2 block w-full h-0.5 bg-gray"}),t._v(" "),n("span",{staticClass:"relative z-20 inline-block px-6 bg-white uppercase"},[t._v("Pay with Card")])]):t._e(),t._v(" "),t.payment_methods.length>0?n("div",{staticClass:"grid grid-cols-1 gap-y-2 mb-6"},t._l(t.payment_methods,(function(e,r){return n("label",{key:r,staticClass:"relative grid grid-cols-2 bg-white border border-black border-opacity-10 py-2 px-3 pl-12 rounded-lg transition cursor-pointer",class:t.selected_payment_method==e.id?"bg-gray":"",attrs:{for:"payment_method-"+r}},[n("input",{directives:[{name:"model",rawName:"v-model",value:t.selected_payment_method,expression:"selected_payment_method"}],staticClass:"hidden",attrs:{type:"radio",name:"payment_methods",id:"payment_method-"+r},domProps:{value:e.id,checked:t._q(t.selected_payment_method,e.id)},on:{change:function(n){t.selected_payment_method=e.id}}}),t._v(" "),n("div",{staticClass:"absolute top-0 left-0.5 w-10 h-full bg-center bg-contain",class:"card-icon-"+e.card.brand}),t._v(" "),n("span",{staticClass:"text-sm"},[t._v(t._s(e.billing_details.name))]),t._v(" "),n("div",{staticClass:"text-sm flex items-center justify-end"},[n("span",{staticClass:"mx-2"},[t._v("****"+t._s(e.card.last4))]),t._v(" "),n("span",{staticClass:"mx-2"},[t._v(t._s(e.card.exp_month)+"/"+t._s(e.card.exp_year))])])])})),0):t._e(),t._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:null==t.selected_payment_method,expression:"selected_payment_method == null"}]},[n("ValidationObserver",{ref:"paymentForm"},[n("form",{attrs:{role:"form",method:"POST"},on:{submit:function(e){return e.preventDefault(),t.submitForm(e)}}},[n("ValidationProvider",{attrs:{rules:"required"},scopedSlots:t._u([{key:"default",fn:function(e){var r=e.errors;return[n("t-input-group",{attrs:{label:"Name on Card"}},[n("t-input",{attrs:{type:"text",placeholder:"Name on Card"},model:{value:t.card_name,callback:function(e){t.card_name=e},expression:"card_name"}}),t._v(" "),r[0]?n("span",{staticClass:"field-invalid"},[t._v(t._s(r[0]))]):t._e()],1)]}}])}),t._v(" "),n("t-input-group",{attrs:{label:"Card Information"}},[n("div",{staticClass:"px-4 py-4 bg-white border border-black border-opacity-20 rounded-xl",attrs:{id:"card-element"}})]),t._v(" "),n("div",{staticClass:"flex flex-col items-center justify-center sm:px-10"},[n("button",{staticClass:"btn btn-primary btn-small rounded-full w-full sm:w-auto",attrs:{disabled:1==t.working,type:"submit"}},[0==t.working?n("span",[t._v("Pay Now")]):n("span",{staticClass:"flex items-center justify-center"},[n("svg",{staticClass:"animate-spin -ml-1 mr-3 h-5 w-5 text-current",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"}},[n("circle",{staticClass:"opacity-25",attrs:{cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}}),t._v(" "),n("path",{staticClass:"opacity-75",attrs:{fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"}})]),t._v(" "),n("span",[t._v("Processing")])])]),t._v(" "),n("button",{staticClass:"mt-6 uppercase text-blue-light text-sm",attrs:{type:"button"},on:{click:t.goBack}},[t._v("Go Back")])])],1)])],1),t._v(" "),t.selected_payment_method?n("div",{staticClass:"flex flex-col items-center justify-center sm:px-10"},[n("button",{staticClass:"mb-2 uppercase text-blue-light text-sm",on:{click:function(e){t.selected_payment_method=null}}},[t._v("Use New Card")]),t._v(" "),n("button",{staticClass:"btn btn-primary btn-small rounded-full w-full sm:w-auto",attrs:{disabled:1==t.working,type:"button"},on:{click:function(e){return t.createPayment(t.selected_payment_method)}}},[0==t.working?n("span",[t._v("Pay Now")]):n("span",{staticClass:"flex items-center justify-center"},[n("svg",{staticClass:"animate-spin -ml-1 mr-3 h-5 w-5 text-current",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"}},[n("circle",{staticClass:"opacity-25",attrs:{cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}}),t._v(" "),n("path",{staticClass:"opacity-75",attrs:{fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"}})]),t._v(" "),n("span",[t._v("Processing")])])]),t._v(" "),n("button",{staticClass:"mt-6 uppercase text-blue-light text-sm",attrs:{type:"button"},on:{click:t.goBack}},[t._v("Go Back")])]):t._e(),t._v(" "),n("p",{staticClass:"text-sm text-center mt-6 text-black text-opacity-75"},[t._v("By subscribing to Take a Seat you are agreeing to all site "),n("NuxtLink",{staticClass:"text-blue-light hover:underline",attrs:{to:"/terms-conditions",target:"_blank"}},[t._v("Terms and Conditions")]),t._v(". Please read carefully before continuing.")],1)])}),[function(){var t=this.$createElement,e=this._self._c||t;return e("div",{staticClass:"w-full flex items-center justify-center mb-8"},[e("div",{staticClass:"w-full",attrs:{id:"payment-request-button"}})])},function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"relative text-center my-6"},[n("span",{staticClass:"absolute z-10 top-1/2 left-0 transform -translate-y-1/2 block w-full h-0.5 bg-gray"}),t._v(" "),n("span",{staticClass:"relative z-20 inline-block px-6 bg-white uppercase"},[t._v("Or Pay with Card")])])}],!1,null,null,null);e.default=component.exports}}]);