%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/forge/takeaseat.eco-n-tech.co.uk/.nuxt/dist/server/pages/therapist/money/
Upload File :
Create Path :
Current File : //home/forge/takeaseat.eco-n-tech.co.uk/.nuxt/dist/server/pages/therapist/money/statements.js

exports.ids = [72,19,22];
exports.modules = {

/***/ 169:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/partials/Payment.vue?vue&type=template&id=05cab483&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"relative p-6 pr-8 mb-1 bg-gray grid grid-cols-1 sm:grid-cols-3 md:grid-cols-5 lg:grid-cols-6 gap-6"},[_vm._ssrNode("<div class=\"col-span-1\"><div class=\"relative max-w-xs mx-auto md:max-w-full\"><div class=\"absolute top-0 left-0 w-full h-full border-15 border-yellow border-opacity-80\"></div> <img"+(_vm._ssrAttr("src",_vm.payment.customer.photo_url))+(_vm._ssrAttr("alt",_vm.payment.customer.first_name))+"></div></div> <div class=\"text-center sm:text-left sm:col-span-2 md:col-span-4 lg:col-span-5 grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 py-2\"><div class=\"lg:col-span-2 flex flex-col sm:items-start justify-center\"><small class=\"uppercase text-sm text-black text-opacity-80\">"+_vm._ssrEscape(_vm._s(_vm.payment.created_at))+"</small> <h2 class=\"text-xl font-bold mb-2\">"+_vm._ssrEscape(_vm._s(_vm.payment.customer.first_name +' '+ _vm.payment.customer.last_name))+"</h2></div> <div class=\"flex flex-col md:items-end justify-center\"><span class=\"block mb-2 text-sm\">"+_vm._ssrEscape(_vm._s(_vm.payment.is_complete == false ? 'Payment pending' : 'Payment recieved'))+"</span> <span class=\"block font-bold text-2xl\">"+_vm._ssrEscape(_vm._s(_vm.payment.amount.formatted))+"</span></div></div>")])}
var staticRenderFns = []


// CONCATENATED MODULE: ./components/partials/Payment.vue?vue&type=template&id=05cab483&

// CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--2-0!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/partials/Payment.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var Paymentvue_type_script_lang_js_ = ({
  props: {
    payment: Object
  }
});
// CONCATENATED MODULE: ./components/partials/Payment.vue?vue&type=script&lang=js&
 /* harmony default export */ var partials_Paymentvue_type_script_lang_js_ = (Paymentvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(1);

// CONCATENATED MODULE: ./components/partials/Payment.vue





/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  partials_Paymentvue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  "8d25059e"
  
)

/* harmony default export */ var Payment = __webpack_exports__["default"] = (component.exports);

/***/ }),

/***/ 171:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/blocks/MoneyManagerNav.vue?vue&type=template&id=43786508&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('nav',{staticClass:"flex items-center justify-center"},[_c('NuxtLink',{staticClass:"account-nav-link",attrs:{"to":"/therapist/money"}},[_vm._v("Overview")]),_vm._ssrNode(" "),_c('NuxtLink',{staticClass:"account-nav-link",attrs:{"to":"/therapist/money/statements"}},[_vm._v("Statements")])],2)}
var staticRenderFns = []


// CONCATENATED MODULE: ./components/blocks/MoneyManagerNav.vue?vue&type=template&id=43786508&

// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(1);

// CONCATENATED MODULE: ./components/blocks/MoneyManagerNav.vue

var script = {}


/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  script,
  render,
  staticRenderFns,
  false,
  null,
  null,
  "040123b5"
  
)

/* harmony default export */ var MoneyManagerNav = __webpack_exports__["default"] = (component.exports);

/***/ }),

/***/ 251:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./pages/therapist/money/statements.vue?vue&type=template&id=67383fda&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"page-wrapper"},[_c('PageHeader',{attrs:{"classObject":"bg-blue"}},[_c('img',{staticClass:"relative z-20 mb-8",attrs:{"src":__webpack_require__(20),"alt":"Takeaseat"}}),_vm._v(" "),_c('h1',{staticClass:"relative z-20 text-5xl lg:text-7xl font-bold m-0"},[_vm._v("Money Manager")]),_vm._v(" "),_c('div',{staticClass:"page-header-bottom"},[_c('MoneyManagerNav')],1)]),_vm._ssrNode(" "),(_vm.payments)?_vm._ssrNode("<div class=\"pt-8\">","</div>",[_vm._ssrNode("<div class=\"max-w-5xl mx-auto w-full px-6 lg:px-0\">","</div>",[_vm._ssrNode("<div class=\"grid grid-cols-1 sm:grid-cols-2 mb-6\">","</div>",[_vm._ssrNode("<h2 class=\"text-4xl font-bold text-center sm:text-left\">Statements</h2> "),_vm._ssrNode("<div class=\"text-center sm:text-right relative\">","</div>",[_vm._ssrNode("<button type=\"button\" class=\"text-blue-light text-2xl font-bold mt-2\">Download PDF</button> "),_vm._ssrNode("<div"+(_vm._ssrClass("text-center absolute z-20 w-full sm:w-96 right-0 bg-white rounded-3xl top-10 shadow-lg p-6 transition duration-100 transform origin-top-right scale-100 opacity-100",_vm.downloadOpen ? 'scale-100 opacity-100' : 'scale-90 opacity-0'))+">","</div>",[_vm._ssrNode("<div class=\"relative mb-3\"><h1>Download statement for</h1></div> "),_vm._ssrNode("<div class=\"relative mb-3\">","</div>",[_c('select',{directives:[{name:"model",rawName:"v-model",value:(_vm.downloadTimeframe),expression:"downloadTimeframe"}],staticClass:"form-select",on:{"change":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return val}); _vm.downloadTimeframe=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},[_c('option',{attrs:{"value":"today"}},[_vm._v("Today")]),_vm._v(" "),_c('option',{attrs:{"value":"7"}},[_vm._v("Last 7 Days")]),_vm._v(" "),_c('option',{attrs:{"value":"30"}},[_vm._v("Last 30 Days")])])]),_vm._ssrNode(" "+((_vm.downloadError)?("<div class=\"block px-4 py-3 mb-2 rounded-xl bg-red text-white text-sm leading-4\">\n              An error occurred, please try again.\n            </div>"):"<!---->")+" <div class=\"relative mb-3\"><button type=\"button\""+(_vm._ssrAttr("disabled",_vm.downloadLoading))+" class=\"btn btn-primary m-auto btn-small rounded-full shadow inline-block\">"+((_vm.downloadLoading)?("<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" class=\"inline-block animate-spin -ml-1 mr-3 h-5 w-5 text-current\"><circle cx=\"12\" cy=\"12\" r=\"10\" stroke=\"currentColor\" stroke-width=\"4\" class=\"opacity-25\"></circle> <path 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\" class=\"opacity-75\"></path></svg>"):"<!---->")+" <span class=\"inline-block\">Download</span></button></div>")],2)],2)],2),_vm._ssrNode(" "),_vm._l((_vm.payments),function(payment_date,key){return _vm._ssrNode("<div class=\"mb-6\">","</div>",[_vm._ssrNode("<div class=\"grid grid-cols-2 gap-4 mb-5\"><h3 class=\"text-2xl font-bold\">"+_vm._ssrEscape(_vm._s(key))+"</h3></div> "),_vm._l((payment_date),function(payment,key){return _c('Payment',{key:key,attrs:{"payment":payment}})})],2)})],2)]):_vm._ssrNode(("<div class=\"py-20 w-full bg-gray text-center\"><span class=\"font-bold text-3xl\">You have no payments yet</span></div>"))],2)}
var staticRenderFns = []


// CONCATENATED MODULE: ./pages/therapist/money/statements.vue?vue&type=template&id=67383fda&

// CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--2-0!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./pages/therapist/money/statements.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var statementsvue_type_script_lang_js_ = ({
  middleware: ['auth', 'therapist'],

  head() {
    return {
      titleTemplate: 'Statements | %s'
    };
  },

  data() {
    return {
      downloadLoading: false,
      downloadOpen: false,
      downloadTimeframe: 'today',
      downloadError: false
    };
  },

  computed: {
    payments() {
      return this.$store.state.therapist.money.payments;
    }

  },
  methods: {
    toggleDropdown() {
      this.downloadOpen = !this.downloadOpen;
      this.downloadError = false;
    },

    async downloadPdf() {
      try {
        this.downloadError = false;
        this.downloadLoading = true;
        const response = await this.$axios.post('/therapist/money/statement', {
          timeframe: this.downloadTimeframe
        }, {
          responseType: 'blob',
          headers: {
            'Accept': 'application/pdf'
          }
        });
        const blob = new Blob([response.data], {
          type: 'application/pdf'
        });
        const url = window.URL.createObjectURL(blob); // Creating a link in the DOM lets us "force" a download

        const link = document.createElement('a');
        link.href = url; // Generate a filename

        const utc = new Date().toJSON().slice(0, 10).replace(/-/g, '/');
        const filename = `${this.$auth.user.data.full_name} statement ${utc}`;
        link.setAttribute('download', filename.toLowerCase().replace(/ /g, '-').replace(/[^\w-]+/g, ''));
        link.click();
        this.downloadOpen = false;
      } catch (error) {
        this.downloadOpen = true;
        this.downloadError = true;
      }

      this.downloadLoading = false;
    }

  },

  async asyncData({
    store
  }) {
    await store.dispatch('therapist/money/getPayments');
  }

});
// CONCATENATED MODULE: ./pages/therapist/money/statements.vue?vue&type=script&lang=js&
 /* harmony default export */ var money_statementsvue_type_script_lang_js_ = (statementsvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(1);

// CONCATENATED MODULE: ./pages/therapist/money/statements.vue





/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  money_statementsvue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  "2af4e154"
  
)

/* harmony default export */ var statements = __webpack_exports__["default"] = (component.exports);

/* nuxt-component-imports */
installComponents(component, {MoneyManagerNav: __webpack_require__(171).default,PageHeader: __webpack_require__(36).default,Payment: __webpack_require__(169).default})


/***/ })

};;
//# sourceMappingURL=statements.js.map

Zerion Mini Shell 1.0