File manager - Edit - /home/premiey/www/wp-includes/images/media/store.tar
Back
modules/pagination.js 0000666 00000001466 15165610720 0010721 0 ustar 00 export default { namespaced: true, state: () => ({ show: 1, page: 1, count: 0 }), getters: { getShow (state) { return state.show }, getPage (state) { return state.page }, getCount (state) { return state.count }, getAllData (state) { return { show: state.show, page: state.page, count: state.count } } }, mutations: { setShow (state, payload) { state.show = payload }, setPage (state, payload) { state.page = payload }, setCount (state, payload) { state.count = payload }, setAllData (state, payload) { state.show = parseInt(payload.show) state.page = parseInt(payload.page) state.count = parseInt(payload.count) } }, actions: {} } modules/entities.js 0000666 00000044160 15165610720 0010412 0 ustar 00 import httpClient from "../../plugins/axios.js"; import { settings, shortLocale, longLocale } from "../../plugins/settings.js"; import { useUrlParams } from "../../assets/js/common/helper"; import { useTranslateEntities } from "../../assets/js/public/translation"; function isEmployeeServiceLocation (relations, employeeId, serviceId, locationId = null) { if (locationId) { return employeeId in relations && serviceId in relations[employeeId] && relations[employeeId][serviceId].indexOf(locationId) !== -1 } return employeeId in relations && serviceId in relations[employeeId] } function getParsedCustomPricing (service) { if (!('customPricing' in service) || service.customPricing === null) { service.customPricing = {enabled: false, durations: {}} } else { let customPricing = JSON.parse(service.customPricing) service.customPricing = {enabled: customPricing.enabled, durations: {}} service.customPricing.durations[service.duration] = {price: service.price, rules: []} if (customPricing.enabled) { service.customPricing.durations = Object.assign( service.customPricing.durations, customPricing.durations ) } } return service.customPricing } function setLiteService () { return { extras: [], maxCapacity: 1, minCapacity: 1, timeAfter: '', timeBefore: '', bringingAnyone: false, aggregatedPrice: true, settings: null, recurringCycle: 'disabled', recurringSub: 'future', recurringPayment: 0, deposit: 0, depositPayment: 'disabled', depositPerPerson: 1, fullPayment: false, translations: null, minSelectedExtras: null, mandatoryExtra: false } } function useLiteEntities (entities) { entities.categories.forEach((category, categoryIndex) => { category.serviceList.forEach((service, serviceIndex) => { entities.categories[categoryIndex].serviceList[serviceIndex] = Object.assign( service, setLiteService() ) }) }) entities.employees.forEach((employee, employeeIndex) => { employee.serviceList.forEach((service, serviceIndex) => { entities.employees[employeeIndex].serviceList[serviceIndex] = Object.assign( service, setLiteService() ) }) }) entities.packages = [] entities.locations = [] entities.customFields = [] return entities } function setEntities ({ commit }, entities, types, licence) { let availableTranslationsShort = settings.general.usedLanguages.map( key => key.length > 2 ? key.slice(0, 2) : key ) if (licence.isLite) { entities = useLiteEntities(entities) } if (settings.general.usedLanguages.indexOf(longLocale) !== -1 || availableTranslationsShort.indexOf(shortLocale) !== -1 ) { useTranslateEntities(entities) } types.forEach(ent => { if (ent === 'employees') { let arr = [] entities[ent].forEach((employee) => { employee.serviceList.forEach((service) => { service.customPricing = getParsedCustomPricing(service) }) if (employee.status !== 'hidden') { arr.push(employee) } }) commit('setUnfilteredEmployees', arr) } if (ent === 'locations') { let arr = [] entities[ent].forEach((location) => { if (location.status !== 'hidden') { arr.push(location) } }) commit('setUnfilteredLocations', arr) } commit( 'set' + ent.charAt(0).toUpperCase() + ent.slice(1), ent === 'customFields' ? entities['customFields'].sort(function(a, b) { return ((a['position'] < b['position']) ? -1 : ((a['position'] > b['position']) ? 1 : 0)); }) : entities[ent] ) }) commit('setPreselectedValues') commit('setReady', true) } function getEntitiesVariableName () { return 'ameliaAppointmentEntities' in window ? 'ameliaAppointmentEntities' : ('ameliaEntities' in window ? 'ameliaEntities' : false) } export default { namespaced: true, state: () => ({ categories: [], services: [], employees: [], unfilteredEmployees: [], locations: [], unfilteredLocations: [], packages: [], entitiesRelations: {}, customFields: [], ready: false, preselected: {} }), getters: { getEntitiesRelations (state) { return state.entitiesRelations }, getPreselected (state) { return state.preselected }, getCategories (state) { return state.categories }, getCategory: (state) => (id) => { return state.categories.find(i => parseInt(i.id) === parseInt(id)) || null }, getPackages (state) { return state.packages }, getPackage: (state) => (id) => { return state.packages.find(i => parseInt(i.id) === parseInt(id)) || null }, getServices (state) { return state.services }, getService: (state) => (id) => { return state.services.find(i => parseInt(i.id) === parseInt(id)) || null }, getUnfilteredEmployees (state) { return state.unfilteredEmployees }, getUnfilteredEmployee: (state) => (id) => { return state.unfilteredEmployees.find(a => parseInt(a.id) === parseInt(id)) || null }, getEmployees (state) { return state.employees }, getEmployee: (state) => (id) => { return state.employees.find(i => parseInt(i.id) === parseInt(id)) || null }, getEmployeeService: (state) => (providerId, serviceId) => { return state.employees.find( i => parseInt(i.id) === parseInt(providerId) ).serviceList.find( i => parseInt(i.id) === parseInt(serviceId) ) }, getUnfilteredLocations (state) { return state.unfilteredLocations }, getUnfilteredLocation: (state) => (id) => { return state.unfilteredLocations.find(i => parseInt(i.id) === parseInt(id)) || null }, getLocations (state) { return state.locations }, getLocation: (state) => (id) => { return state.locations.find(i => parseInt(i.id) === parseInt(id)) || null }, getCustomFields (state) { return state.customFields }, filteredCategories: (state, getters) => (data) => { let categories = [] let categoriesIds = getters.filteredServices(data).map(service => service.categoryId) state.categories.forEach((category) => { if (categoriesIds.indexOf(category.id) !== -1) { let availableCategory = Object.assign( category ) availableCategory.serviceList = getters.filteredServices(data).filter(service => service.categoryId === category.id) categories.push(category) } }) return categories }, filteredServices: (state, getters) => (data) => { return state.services.filter(service => (!data.categoryId ? true : service.categoryId === data.categoryId) && (!data.providerId ? true : isEmployeeServiceLocation(state.entitiesRelations, data.providerId, service.id)) && (!data.locationId ? true : getters.filteredEmployees(data).filter( employee => isEmployeeServiceLocation(state.entitiesRelations, employee.id, service.id, data.locationId) ).length > 0 ) ) }, filteredPackages: (state, getters) => (data) => { return state.packages.filter(pack => pack.status === 'visible' && pack.bookable.length && pack.available && (!data.serviceId ? true : pack.bookable.filter( b => b.service.id === data.serviceId ).length > 0) && (!data.providerId ? true : pack.bookable.filter( b => b.providers.length ? b.providers.find(p => data.providerId === p.id) : isEmployeeServiceLocation(state.entitiesRelations, data.providerId, b.service.id) ).length === pack.bookable.length) && (!data.categoryId ? true : pack.bookable.filter( b => b.service.categoryId === data.categoryId ).length > 0) && (!data.locationId ? true : pack.bookable.filter( b => (b.locations.length ? b.locations.find(l => data.locationId === l.id) : ( getters.filteredEmployees(data).filter( employee => isEmployeeServiceLocation(state.entitiesRelations, employee.id, b.service.id, data.locationId) ).length > 0 )) ).length === pack.bookable.length) ) }, filteredLocations: (state, getters) => (data) => { return state.locations.filter(location => (!data.providerId ? true : state.employees.length ? state.employees.find(i => i.id === data.providerId).serviceList.filter( employeeService => { return employeeService.status === 'visible' && isEmployeeServiceLocation(state.entitiesRelations, data.providerId, employeeService.id, location.id) }).length > 0 : false ) && (!data.serviceId || data.packageId ? true : getters.filteredEmployees(data).filter( employee => isEmployeeServiceLocation(state.entitiesRelations, employee.id, data.serviceId, location.id) ).length > 0 ) && (!data.packageId ? true : state.packages.find(i => i.id === data.packageId).bookable.filter((book) => { return book.locations.length ? book.locations.find(l => l.id === location.id) : (getters.filteredEmployees(data).filter( employee => isEmployeeServiceLocation(state.entitiesRelations, employee.id, book.service.id, location.id) ).length > 0) }).length > 0 ) ) }, filteredEmployees: (state) => (data) => { return state.employees.filter(employee => employee.serviceList.filter( service => service.status === 'visible' && // service.maxCapacity >= data.persons && (!data.serviceId ? true : isEmployeeServiceLocation(state.entitiesRelations, employee.id, service.id) && service.id === data.serviceId) && (!data.locationId ? true : isEmployeeServiceLocation(state.entitiesRelations, employee.id, service.id, data.locationId)) ).length > 0 ) }, getEmployeeServices: (state, getters) => (data) => { let employeeServices = [] if (data.serviceId) { let service = getters.getService(data.serviceId) if (data.providerId) { let possibleEmployee = state.employees.find(i => i.id === data.providerId) if (!possibleEmployee) return {} let employeeService = possibleEmployee.serviceList.filter(service => service.id === data.serviceId) return employeeService.map(eS => Object.assign(eS, {bringingAnyone: service.bringingAnyone, aggregatedPrice: service.aggregatedPrice, maxExtraPeople: service.maxExtraPeople})) } getters.filteredEmployees(data).forEach((employee) => { employee.serviceList.forEach((employeeService) => { if (employeeService.id === data.serviceId) { employeeServices.push(Object.assign(employeeService, {bringingAnyone: service.bringingAnyone, aggregatedPrice: service.aggregatedPrice, maxExtraPeople: service.maxExtraPeople})) } }) }) } return employeeServices }, getBookableFromBookableEntities: (state) => (data) => { switch (data.type) { case ('appointment'): return state.services.find(i => i.id === data.serviceId) case ('package'): return state.packages.find(i => i.id === data.packageId) } }, getReady (state) { return state.ready }, }, mutations: { setCategories (state, payload) { state.categories = payload let services = [] state.categories.forEach((category) => { category.serviceList.forEach((service) => { services.push(service) }) }) state.services = services }, setUnfilteredEmployees (state, payload) { state.unfilteredEmployees = payload }, setUnfilteredLocations (state, payload) { state.unfilteredLocations = payload }, setEmployees (state, payload) { state.employees = payload }, setLocations (state, payload) { state.locations = payload }, setPackages (state, payload) { payload.forEach(pack => { let isAvailable = true pack.bookable.forEach(book => { if (!book.service.name) { let service = state.services.find(s => s.id === book.service.id) if (service) { book.service = service } } if (!book.service.show || book.service.status !== 'visible') { isAvailable = false } }) if (isAvailable) { state.packages.push(pack) } }) state.packages.sort((a, b) => a.position - b.position) }, setCustomFields (state, payload) { state.customFields = [...Object.values(payload)] }, setEntitiesRelations (state, payload) { state.entitiesRelations = payload }, setReady (state, payload) { state.ready = payload }, setPreselected (state, payload) { state.preselected = payload }, setPreselectedValues (state) { state.employees = state.employees.filter(e => e.status === 'visible') state.services = state.services.filter(s => s.status === 'visible' && s.show && state.employees.filter(e => e.serviceList.find(eS => eS.id === s.id)).length) state.locations = state.locations.filter(l => l.status === 'visible') if (state.preselected.category) { state.categories = state.categories.filter(c => c.id === parseInt(state.preselected.category)) state.services = state.services.filter(s => s.categoryId === parseInt(state.preselected.category)) state.employees = state.employees.filter(e => e.serviceList.filter(s => s.categoryId === parseInt(state.preselected.category)).length > 0) state.locations = state.locations.filter(l => state.employees.filter(e => state.services.filter(s => isEmployeeServiceLocation(state.entitiesRelations, e.id, s.id, l.id) && s.categoryId === parseInt(state.preselected.category)).length > 0 ).length > 0 ) } if (state.preselected.service) { state.services = state.services.filter(s => s.id === parseInt(state.preselected.service)) state.categories = state.services[0] ? state.categories.filter(c => c.id === state.services[0].categoryId) : [] state.employees = state.employees.filter(e => e.serviceList.filter(s => s.id === parseInt(state.preselected.service)).length > 0) state.locations = state.locations.filter(l => state.employees.filter(e => isEmployeeServiceLocation(state.entitiesRelations, e.id, parseInt(state.preselected.service), l.id)).length > 0 ) } if (state.preselected.employee) { state.employees = state.employees.filter(e => e.id === parseInt(state.preselected.employee)) if (state.employees.length) { state.services = state.services.filter(s => state.employees[0].serviceList.filter(serv => serv.id === s.id).length > 0) state.categories = state.categories.filter(c => state.services.filter(s => s.categoryId === c.id).length > 0) state.locations = state.locations.filter(l => state.services.filter(s => isEmployeeServiceLocation(state.entitiesRelations, parseInt(state.preselected.employee), s.id, l.id)).length > 0 ) } } if (state.preselected.location) { state.locations = state.locations.filter(e => e.id === parseInt(state.preselected.location)) state.employees = state.employees.filter(e => e.serviceList.filter(s => isEmployeeServiceLocation(state.entitiesRelations, e.id, s.id, parseInt(state.preselected.location))).length > 0) state.services = state.services.filter(s => state.employees.filter(e => e.serviceList.filter(serv => serv.id === s.id)).length > 0) state.categories = state.categories.filter(c => state.services.filter(s => s.categoryId === c.id).length > 0) } if (state.preselected.package) { state.packages = state.packages.filter(p => p.id === parseInt(state.preselected.package)) } if (state.services.length === 1 && state.preselected.show !== 'packages') { state.preselected = Object.assign({}, state.preselected, {service: (state.services[0].id).toString()}) } if (state.categories.length === 1 && state.preselected.show !== 'packages') { state.preselected = Object.assign({}, state.preselected, {category: (state.categories[0].id).toString()}) } if (state.employees.length === 1 && state.preselected.show !== 'packages') { state.preselected = Object.assign({}, state.preselected, {employee: (state.employees[0].id).toString()}) } if (state.locations.length === 1 && state.preselected.show !== 'packages') { state.preselected = Object.assign({}, state.preselected, {location: (state.locations[0].id).toString()}) } // if all employees have the same price state.services.forEach(s => { let services = state.employees.map(e => e.serviceList.filter(service => service.id === s.id)).flat() let samePrice = services.every(service => service.price === services[0].price) if (services.length && samePrice) { s.price = services[0].price } }) }, }, actions: { getEntities ({ commit }, payload) { let types = payload.types if (payload.loadEntities && !getEntitiesVariableName()) { httpClient.get('/entities', { params: useUrlParams({ types }) }).then(response => { window.ameliaAppointmentEntities = response.data.data let entities = JSON.parse(JSON.stringify(window.ameliaAppointmentEntities)) setEntities({ commit }, entities, types, payload.licence) }) } else { let ameliaApiInterval = setInterval( () => { let name = getEntitiesVariableName() if (name) { clearInterval(ameliaApiInterval) let entities = JSON.parse(JSON.stringify(window[name])) setEntities({ commit }, entities, types, payload.licence) } }, 1000 ) } } }, } modules/eventBooking.js 0000666 00000000624 15165610720 0011215 0 ustar 00 export default { namespaced: true, state: () => ({ booked: null, eventId: null, }), getters: { getSelectedEventId (state) { return state.eventId }, getBooked (state) { return state.booked } }, mutations: { setEventId (state, payload) { state.eventId = payload }, setBooked (state, payload) { state.booked = payload } } } modules/params.js 0000666 00000004675 15165610720 0010060 0 ustar 00 import moment from 'moment'; function getDateString (date) { return moment(date).format('YYYY-MM-DD') } export default { namespaced: true, state: () => ({ params: { id: null, tag: null, search: null, recurring: null, dates: moment().toDate(), locationId: null, providers: null, } }), getters: { getTag (state) { return state.params.tag }, getSearch (state) { return state.params.search }, getLocationIdParam (state) { return state.params.locationId }, getDates (state) { return state.params.dates }, getEventParams (state) { return { dates: [getDateString(state.params.dates)], id: state.params.id, search: state.params.search, locationId: state.params.locationId, tag: state.params.tag, recurring: state.params.recurring, providers: state.params.providers } }, getAllData (state) { return { dates: state.params.dates, id: state.params.id, search: state.params.search, locationId: state.params.locationId, tag: state.params.tag, recurring: state.params.recurring, providers: state.params.providers } } }, mutations: { setTag (state, payload) { state.params.tag = payload ? payload : null }, setLocationIdParam (state, payload) { state.params.locationId = payload ? payload : null }, setId (state, payload) { state.params.id = payload }, // * Params for Events // ! needs to change name of function setParams (state, payload) { if (payload.eventId) { state.params.id = payload.eventId } if (payload.eventTag) { state.params.tag = payload.eventTag } if (payload.eventRecurring) { state.params.recurring = payload.eventRecurring } }, setSearch (state, payload) { state.params.search = payload ? payload : null }, setDates (state, payload) { state.params.dates = payload }, setAllData (state, payload) { state.params = { dates: payload.dates, id: payload.id ? parseInt(payload.id) : null, search: payload.search, locationId: payload.locationId ? parseInt(payload.locationId) : null, tag: payload.tag, recurring: payload.recurring, providers: payload.providers } } }, actions: {} } modules/shortcodeParams.js 0000666 00000000444 15165610720 0011721 0 ustar 00 export default { namespaced: true, state: () => ({ preselected: {}, }), getters: { getShortcodeParams (state) { return state.preselected } }, mutations: { setShortcodeParams (state, payload) { state.preselected = payload }, }, actions: {} } modules/booking.js 0000666 00000033143 15165610720 0010215 0 ustar 00 export default { namespaced: true, state: () => ({ appointment: { bookingStartDate: '', bookingStartTime: '', bookings: [{ customer: { email: '', externalId: null, firstName: '', id: null, lastName: '', phone: '', countryPhoneIso : '', }, customFields: {}, customerId: 0, extras: [], persons: 1, haveMandatoryExtras: false, minSelectedExtras: 0 }], duration: 0, group: false, notifyParticipants:'', payment: { amount: 0, gateway: '', deposit: false, data: {} }, categoryId: null, serviceId: null, locationId: null, providerId: null, packageId: null, }, coupon: { code: '', discount: '', deduction: '', limit: '', }, appointmentsIndex: 0, appointments: [], attachments: {}, recurringRules: { repeat: { type: 'daily', interval: 1, }, occurrence: { type: 'After', date: null, count: 1, }, days: [ {value: 'monday', selected: false}, {value: 'tuesday', selected: false}, {value: 'wednesday', selected: false}, {value: 'thursday', selected: false}, {value: 'friday', selected: false}, {value: 'saturday', selected: false}, {value: 'sunday', selected: false} ], monthly: 0 }, loading: false, booked: null, ready: false, packageId: null, error: '', busyness: [], }), getters: { getSelection (state) { return { packageId: state.packageId, categoryId: state.appointment.categoryId, serviceId: state.appointment.serviceId, providerId: state.appointment.providerId, locationId: state.appointment.locationId, persons: state.appointment.bookings[0].persons, type: state.appointment.type, } }, getServiceProviderSelection (state) { return { serviceId: state.appointment.serviceId, providerId: state.appointment.providerId, locationId: state.appointment.locationId, } }, getPackageId (state) { return state.packageId }, getCategoryId (state) { return state.appointment.categoryId }, getServiceId (state) { return state.appointment.serviceId }, getEmployeeId (state) { return state.appointment.providerId }, getLocationId (state) { return state.appointment.locationId }, getBookingPersons (state) { return state.appointment.bookings[0].persons }, getBookableType (state) { return state.appointment.type }, getAllMultipleAppointments (state) { return state.appointments }, getMultipleAppointmentsServiceSlots (state) { let selection = state.appointments[state.appointmentsIndex].services[state.appointments[state.appointmentsIndex].serviceId] if (selection.providerId || selection.locationId) { let slots = {} for (let date in selection.slots) { for (let time in selection.slots[date]) { for (let i = 0; i < selection.slots[date][time].length; i++) { if ((selection.providerId && selection.slots[date][time][i][0] === selection.providerId) || (selection.locationId && selection.slots[date][time][i][1] === selection.locationId) ) { if (!(date in slots)) { slots[date] = {} } slots[date][time] = selection.slots[date][time] } } } } return slots } return state.appointments[state.appointmentsIndex].services[state.appointments[state.appointmentsIndex].serviceId].slots }, getMultipleAppointmentsIndex (state) { return state.appointmentsIndex }, getMultipleAppointmentsRange (state) { let i = state.appointmentsIndex return state.appointments[i] .services[state.appointments[i].serviceId] .list[state.appointments[i].index] .range }, getMultipleAppointmentsDate (state) { let i = state.appointmentsIndex return state.appointments[i] .services[state.appointments[i].serviceId] .list[state.appointments[i].index] .date }, getMultipleAppointmentsOccupied (state) { return state.appointments[state.appointmentsIndex].services[state.appointments[state.appointmentsIndex].serviceId].occupied }, getMultipleAppointmentsTime (state) { let i = state.appointmentsIndex return state.appointments[i] .services[state.appointments[i].serviceId] .list[state.appointments[i].index] .time }, getMultipleAppointmentsSlots (state) { let i = state.appointmentsIndex return state.appointments[i] .services[state.appointments[i].serviceId] .slots }, getMultipleAppointmentsLastDate (state) { let i = state.appointmentsIndex return state.appointments[i] .services[state.appointments[i].serviceId] .lastDate }, getSelectedExtras (state) { return state.appointment.bookings[0].extras }, getCustomerId (state) { return state.appointment.bookings[0].customer.id }, getCustomerFirstName (state) { return state.appointment.bookings[0].customer.firstName }, getCustomerLastName (state) { return state.appointment.bookings[0].customer.lastName }, getCustomerEmail (state) { return state.appointment.bookings[0].customer.email }, getCustomerPhone (state) { return state.appointment.bookings[0].customer.phone }, getCustomerCountryPhoneIso (state) { return state.appointment.bookings[0].customer.countryPhoneIso }, getCustomerExternalId (state) { return state.appointment.bookings[0].customer.externalId }, getAvailableCustomFields (state) { return state.appointment.bookings[0].customFields }, getRecurringRules (state) { return state.recurringRules }, getRecurringRepeatType (state) { return state.recurringRules.repeat.type }, getRecurringRepeatInterval (state) { return state.recurringRules.repeat.interval }, getRecurringOccurrenceType (state) { return state.recurringRules.occurrence.type }, getRecurringOccurrenceDate (state) { return state.recurringRules.occurrence.date }, getRecurringOccurrenceCount (state) { return state.recurringRules.occurrence.count }, getRecurringDays (state) { return state.recurringRules.days }, getRecurringMonthly (state) { return state.recurringRules.monthly }, getAttachments (state) { return state.attachments }, getCoupon (state) { return state.coupon }, getPaymentGateway (state) { return state.appointment.payment.gateway }, getPaymentDeposit (state) { return state.appointment.payment.deposit }, getDuration (state) { return state.appointment.duration }, getLoading (state) { return state.loading }, getBooked (state) { return state.booked }, getError (state) { return state.error }, getBusyness (state) { return state.busyness }, }, mutations: { setPackageId (state, payload) { state.packageId = payload }, setCategoryId (state, payload) { state.appointment.categoryId = payload }, setServiceId (state, payload) { state.appointment.serviceId = payload }, setEmployeeId (state, payload) { state.appointment.providerId = payload }, setLocationId (state, payload) { state.appointment.locationId = payload }, setMultipleIndex (state, payload) { state.appointmentsIndex = payload }, setMultipleAppointments (state, payload) { state.appointments = payload }, setMultipleAppointmentsServiceId (state, payload) { state.appointments[state.appointmentsIndex].serviceId = payload }, setMultipleAppointmentsIndex (state, payload) { state.appointments[state.appointmentsIndex].index = payload }, unsetMultipleAppointmentsData (state, payload) { let i = state.appointmentsIndex state.appointments[i] .services[state.appointments[i].serviceId] .list[payload] = { date: null, time: null, providerId: null, locationId: null, } }, setMultipleAppointmentsRange (state, payload) { let i = state.appointmentsIndex state.appointments[i] .services[state.appointments[i].serviceId] .list[state.appointments[i].index] .range = payload }, setMultipleAppointmentsDate (state, payload) { let i = state.appointmentsIndex state.appointments[i] .services[state.appointments[i].serviceId] .list[state.appointments[i].index] .date = payload }, setMultipleAppointmentsTime (state, payload) { let i = state.appointmentsIndex state.appointments[i] .services[state.appointments[i].serviceId] .list[state.appointments[i].index] .time = payload }, setMultipleAppointmentsProviderId (state, payload) { let i = state.appointmentsIndex state.appointments[i] .services[state.appointments[i].serviceId] .list[state.appointments[i].index] .providerId = payload }, setMultipleAppointmentsLocationId (state, payload) { let i = state.appointmentsIndex state.appointments[i] .services[state.appointments[i].serviceId] .list[state.appointments[i].index] .locationId = payload }, setMultipleAppointmentsSlots (state, payload) { let i = state.appointmentsIndex state.appointments[i] .services[state.appointments[i].serviceId] .slots = payload }, setMultipleAppointmentsOccupied (state, payload) { let i = state.appointmentsIndex state.appointments[i] .services[state.appointments[i].serviceId] .occupied = payload }, setMultipleAppointmentsLastDate (state, payload) { let i = state.appointmentsIndex state.appointments[i] .services[state.appointments[i].serviceId] .lastDate = payload }, setMultipleAppointmentsServiceProvider (state, payload) { let i = state.appointmentsIndex state.appointments[i] .services[state.appointments[i].serviceId] .providerId = payload ? parseInt(payload) : null }, setMultipleAppointmentsServiceLocation (state, payload) { let i = state.appointmentsIndex state.appointments[i] .services[state.appointments[i].serviceId] .locationId = payload ? parseInt(payload) : null }, setBookingPersons (state, payload) { state.appointment.bookings[0].persons = payload + 1 }, setAvailableCustomFields (state, payload) { state.appointment.bookings[0].customFields = payload }, setBookableType (state, payload) { state.appointment.type = payload }, setSelectedExtras (state, payload) { state.appointment.bookings[0].extras = payload }, setCustomerId (state, payload) { state.appointment.bookings[0].customer.id = payload }, setCustomerFirstName (state, payload) { state.appointment.bookings[0].customer.firstName = payload }, setCustomerLastName (state, payload) { state.appointment.bookings[0].customer.lastName = payload }, setCustomerEmail (state, payload) { state.appointment.bookings[0].customer.email = payload }, setCustomerPhone (state, payload) { state.appointment.bookings[0].customer.phone = payload }, setCustomerCountryPhoneIso (state, payload) { state.appointment.bookings[0].customer.countryPhoneIso = payload }, setCustomerExternalId (state, payload) { state.appointment.bookings[0].customer.externalId = payload }, setRecurringRules (state, payload) { state.recurringRules = payload }, setRecurringRepeatType (state, payload) { state.recurringRules.repeat.type = payload }, setRecurringRepeatInterval (state, payload) { state.recurringRules.repeat.interval = payload }, setRecurringOccurrenceType (state, payload) { state.recurringRules.occurrence.type = payload }, setRecurringOccurrenceDate (state, payload) { state.recurringRules.occurrence.date = payload }, setRecurringOccurrenceCount (state, payload) { state.recurringRules.occurrence.count = payload }, setRecurringDays (state, payload) { state.recurringRules.days.find(day => day.value === payload.value).selected = payload.selected }, setRecurringMonthly (state, payload) { state.recurringRules.monthly = payload }, setAttachment (state, payload) { state.attachments[payload.id] = payload.raw }, setCoupon (state, payload) { state.coupon = payload }, setPaymentGateway (state, payload) { state.appointment.payment.gateway = payload }, setPaymentDeposit (state, payload) { state.appointment.payment.deposit = payload }, setDuration (state, payload) { state.appointment.duration = payload }, setLoading (state, payload) { state.loading = payload }, setBooked (state, payload) { state.booked = payload }, setError (state, payload) { state.error = payload }, setBusyness (state, payload) { state.busyness = payload }, }, } modules/customerInfo.js 0000666 00000006777 15165610720 0011257 0 ustar 00 import httpClient from "../../plugins/axios"; export default { namespaced: true, state: () => ({ id: null, externalId: null, firstName: '', lastName: '', email: '', phone: '', countryPhoneIso : '', loggedUser: false, }), getters: { getCustomerId (state) { return state.id }, getCustomerExternalId (state) { return state.externalId }, getCustomerFirstName (state) { return state.firstName }, getCustomerLastName (state) { return state.lastName }, getCustomerEmail (state) { return state.email }, getCustomerPhone (state) { return state.phone }, getCustomerCountryPhoneIso (state) { return state.countryPhoneIso }, getLoggedUser (state) { return state.loggedUser }, getAllData (state) { return { id: state.id, externalId: state.externalId, firstName: state.firstName, lastName: state.lastName, email: state.email, phone: state.phone, countryPhoneIso : state.countryPhoneIso, loggedUser: state.loggedUser } } }, mutations: { setCustomerId (state, payload) { state.id = payload }, setCustomerExternalId (state, payload) { state.externalId = payload }, setCustomerFirstName (state, payload) { state.firstName = payload }, setCustomerLastName (state, payload) { state.lastName = payload }, setCustomerEmail (state, payload) { state.email = payload }, setCustomerPhone (state, payload) { state.phone = payload }, setCustomerCountryPhoneIso (state, payload) { state.countryPhoneIso = payload }, setLoggedUser (state, payload) { state.loggedUser = payload }, setCurrentUser (state, payload) { state.id = payload.id state.externalid = payload.externalid state.firstName = payload.firstName state.lastName = payload.lastName state.email = payload.email state.phone = payload.phone ? payload.phone : '' state.countryPhoneIso = payload.countryPhoneIso ? payload.countryPhoneIso : '' }, setAllData (state, payload) { state.id = payload.id state.externalId = payload.externalId state.firstName = payload.firstName state.lastName = payload.lastName state.email = payload.email state.phone = payload.phone state.countryPhoneIso = payload.countryPhoneIso state.loggedUser = payload.loggedUser } }, actions: { requestCurrentUserData ({ commit }) { commit('setLoading', true, {root: true}) if (!('ameliaUser' in window) || !window.ameliaUser) { httpClient.get( '/users/current' ).then((response) => { if (response.data.data.user) { window.ameliaUser = response.data.data.user ? response.data.data.user : null commit('setCurrentUser', window.ameliaUser) commit('setLoggedUser', true) } commit('setLoading', false, {root: true}) }).catch(() => { commit('setLoading', false, {root: true}) }) } else { let ameliaApiInterval = setInterval( () => { if ('ameliaUser' in window) { clearInterval(ameliaApiInterval) commit('setCurrentUser', window.ameliaUser) commit('setLoggedUser', true) } commit('setLoading', false, {root: true}) }, 1000 ) } } } } modules/coupon.js 0000666 00000002132 15165610720 0010062 0 ustar 00 export default { namespaced: true, state: () => ({ code: '', discount: '', deduction: '', limit: '', error: '', loading: false }), getters: { getCoupon (state) { return { code: state.code, discount: state.discount, deduction: state.deduction, limit: state.limit } }, getCode (state) { return state.code }, getError (state) { return state.error }, getLoading (state) { return state.loading }, }, mutations: { setCoupon (state, payload) { state.code = payload.code state.discount = payload.discount state.deduction = payload.deduction state.limit = payload.limit }, setCode (state, payload) { state.code = payload }, setError (state, payload) { state.error = payload }, setLoading (state, payload) { state.loading = payload } }, actions: { restCoupon ({commit}) { commit('setCoupon', { code: '', discount: '', deduction: '', limit: '', }) } } } modules/eventEntities.js 0000666 00000017227 15165610720 0011420 0 ustar 00 import httpClient from "../../plugins/axios.js" import { useUrlParams } from "../../assets/js/common/helper" import { useTranslateEntities, getNameTranslated, getDescriptionTranslated, getTicketTranslated } from "../../assets/js/public/translation" import moment from "moment/moment"; function setTicketsData (event) { event.bookingToEventTickets = [] let bookingToEventTickets = [] event.customTickets.forEach(ticket => { bookingToEventTickets.push({ id: Math.random(), customerBookingId: null, eventTicketId: ticket.id, persons: 0, price: ticket.dateRangePrice ? ticket.dateRangePrice : ticket.price }) }) return bookingToEventTickets } function getEntitiesVariableName () { return 'ameliaEventEntities' in window ? 'ameliaEventEntities' : ('ameliaEntities' in window ? 'ameliaEntities' : false) } export default { namespaced: true, state: () => ({ events: [], tags:[], locations: [], employees: [], customFields: [] }), getters: { getEvents (state) { return state.events }, getEvent: (state) => (id) => { return state.events.find(event => parseInt(event.id) === parseInt(id)) || null }, getTags (state) { return state.tags }, getEmployees (state) { return state.employees }, getLocations (state) { return state.locations }, getCustomFields (state) { return state.customFields }, getEventCustomFields: (state) => (id) => { return state.customFields.filter(customField => customField.events.filter(event => event.id === id).length) }, }, mutations: { setEvents (state, payload) { state.events = payload }, setTags (state, payload) { state.tags = payload }, setEmployees (state, payload) { state.employees = payload.filter(e => e.status !== 'hidden') }, setLocations (state, payload) { state.locations = payload.filter(l => l.status !== 'hidden') }, setCustomFields (state, payload) { state.customFields = [...Object.values(payload)] }, // setPreselectedValues (state, payload) { // if (payload.eventId && !payload.eventRecurring) { // state.events = state.events.filter(e => e.id === parseInt(payload.eventId)) // } // // if (payload.eventTag) { // state.tags = state.tags.filter(t => t.name === payload.eventTag) // state.events = state.events.filter(e => // e.tags.filter(t => t.name === payload.eventTag).length > 0 // ) // } // // if (payload.eventRecurring) { // state.events = state.events.filter(e => e.recurring !== null) // } // }, }, actions: { requestEntities ({ dispatch, commit, rootGetters }, payload) { commit('setReady', false, {root: true}) commit('params/setParams', rootGetters['shortcodeParams/getShortcodeParams'], {root: true}) let serverData = { types: payload.types } if (payload.loadEntities && !getEntitiesVariableName()) { httpClient.get( '/entities', { params: useUrlParams({types: serverData.types}) } ).then(response => { window.ameliaEventEntities = response.data.data serverData.entities = JSON.parse(JSON.stringify(window.ameliaEventEntities)) dispatch('fillingOutData', serverData) }) } else { let ameliaApiInterval = setInterval( () => { let name = getEntitiesVariableName() if (name) { clearInterval(ameliaApiInterval) serverData.entities = JSON.parse(JSON.stringify(window[name])) dispatch('fillingOutData', serverData) } }, 1000 ) } }, fillingOutData ({ commit, dispatch, rootState }, payload) { let availableTranslationsShort = rootState.settings.general.usedLanguages.map( key => key.length > 2 ? key.slice(0, 2) : key ) if (rootState.settings.general.usedLanguages.indexOf(rootState.localLanguage) !== -1 || availableTranslationsShort.indexOf(rootState.localLanguage.split('_')[0]) !== -1 ) { useTranslateEntities(payload.entities) } payload.types.forEach(ent => { commit( `set${ent.charAt(0).toUpperCase()}${ent.slice(1)}`, ent === 'customFields' ? payload.entities['customFields'].sort(function(a, b) { return ((a['position'] < b['position']) ? -1 : ((a['position'] > b['position']) ? 1 : 0)); }) : payload.entities[ent] ) }) dispatch('requestEvents') }, requestEvents ({ commit, rootState, rootGetters }) { let eventParams = {...rootGetters['params/getEventParams'], page: rootGetters['pagination/getPage']} commit('setLoading', true, {root: true}) httpClient.get( '/events', { params: useUrlParams(eventParams)} ).then(response => { commit('pagination/setCount', response.data.data.count , {root: true}) commit('pagination/setShow', rootState.settings.general.itemsPerPage , {root: true}) let events = [] let availableTranslationsShort = rootState.settings.general.usedLanguages.map( key => key.length > 2 ? key.slice(0, 2) : key ) let useTranslations = rootState.settings.general.usedLanguages.indexOf(rootState.localLanguage) !== -1 || availableTranslationsShort.indexOf(rootState.localLanguage.split('_')[0]) !== -1 response.data.data.events.forEach(function (event) { event.gallery = event.gallery.sort((a, b) => (a.position > b.position) ? 1 : -1) if (useTranslations) { event.name = getNameTranslated(event) event.description = getDescriptionTranslated(event) event.customTickets.forEach((ticket) => { ticket.name = getTicketTranslated(ticket) }) } if (event.customTickets.length && event.customPricing) { event.bookingToEventTickets = setTicketsData(event) } events.push(event) if (rootState.settings.general.showClientTimeZone) { event.periods.forEach(function (period) { let utcOffsetStart = moment(period.periodStart, 'YYYY-MM-DD HH:mm:ss').toDate().getTimezoneOffset() let utcOffsetEnd = moment(period.periodEnd, 'YYYY-MM-DD HH:mm:ss').toDate().getTimezoneOffset() if (utcOffsetStart > 0) { period.periodStart = moment.utc(period.periodStart, 'YYYY-MM-DD HH:mm:ss').subtract(utcOffsetStart, 'minutes').format('YYYY-MM-DD HH:mm:ss') } else { period.periodStart = moment.utc(period.periodStart, 'YYYY-MM-DD HH:mm:ss').add(-1 * utcOffsetStart, 'minutes').format('YYYY-MM-DD HH:mm:ss') } if (utcOffsetEnd > 0) { period.periodEnd = moment.utc(period.periodEnd, 'YYYY-MM-DD HH:mm:ss').subtract(utcOffsetEnd, 'minutes').format('YYYY-MM-DD HH:mm:ss') } else { period.periodEnd = moment.utc(period.periodEnd, 'YYYY-MM-DD HH:mm:ss').add(-1 * utcOffsetEnd, 'minutes').format('YYYY-MM-DD HH:mm:ss') } }) } }) commit('setEvents', events) // ! this need to be considered for removing // if ( // state.events.length === 1 // && Math.ceil(rootGetters['pagination/getCount']/rootGetters['pagination/getShow']) < 2 // ) { // commit('params/setId', (state.events[0].id).toString(), { root: true }) // } commit('setReady', true, { root: true }) commit('setLoading', false, {root: true}) }) }, } } modules/payment.js 0000666 00000002525 15165610720 0010242 0 ustar 00 export default { namespaced: true, state: () => ({ amount: 0, gateway: '', deposit: false, depositAmount: 0, depositType: '', data: {}, error: '' }), getters: { getError (state) { return state.error }, getPaymentGateway (state) { return state.gateway }, getPaymentDeposit (state) { return state.deposit }, getAllData (state) { return { amount: state.amount, gateway: state.gateway, deposit: state.deposit, depositAmount: state.depositAmount, depositType: state.depositType, data: state.data, } } }, mutations: { setError (state, payload) { state.error = payload }, setPaymentGateway (state, payload) { state.gateway = payload }, setPaymentDeposit (state, payload) { state.deposit = payload }, setPaymentDepositAmount (state, payload) { state.depositAmount = payload }, setPaymentDepositType (state, payload) { state.depositType = payload }, setAllData (state, payload) { state.amount = payload.amount state.gateway = payload.gateway state.deposit = payload.deposit state.depositAmount = payload.depositAmount state.depositType = payload.depositType state.data = payload.data } }, actions: {} } modules/bookableType.js 0000666 00000000371 15165610720 0011202 0 ustar 00 export default { namespaced: true, state: () => ({ type: '' }), getters: { getType (state) { return state.type }, }, mutations: { setType (state, payload) { state.type = payload }, }, actions: {} } modules/persons.js 0000666 00000001675 15165610720 0010263 0 ustar 00 export default { namespaced: true, state: () => ({ persons: 1, max: 1, min: 1 }), getters: { getMaxPersons (state) { return state.max }, getMinPersons (state) { return state.min }, getPersons (state) { return state.persons }, getAllData (state) { return { persons: state.persons, max: state.max, min: state.min } } }, mutations: { setMaxPersons (state, payload) { state.max = payload }, setMinPersons (state, payload) { state.min = payload }, setPersons (state, payload) { state.persons = payload }, setAllData (state, payload) { state.persons = payload.persons state.max = payload.max state.min = payload.min } }, actions: { resetPersons ({ commit }) { commit('setPersons', 1) commit('setMaxPersons', 1) commit('setMinPersons', 1) } } } modules/tickets.js 0000666 00000005110 15165610720 0010224 0 ustar 00 export default { namespaced: true, state: () => ({ tickets: [], ticketsData: [], maxCustomCapacity: null, maxExtraPeople: null, globalSpots: 0 }), getters: { getTickets (state) { return state.tickets }, getMaxCustomCapacity (state) { return state.maxCustomCapacity }, getMaxExtraPeople (state) { return state.maxExtraPeople }, getTicketNumber: (state) => (id) => { return state.ticketsData.find(t => t.id === id).persons }, getTicketsSum (state) { let persons = 0 state.ticketsData.forEach(t => { persons += t.persons }) return persons }, getTicketsData (state) { return state.ticketsData }, getEventGlobalSpots (state) { return state.globalSpots }, getAllData (state) { return { tickets: state.tickets, ticketsData: state.ticketsData, maxCustomCapacity: state.maxCustomCapacity, maxExtraPeople: state.maxExtraPeople, globalSpots: state.globalSpots } } }, mutations: { setTickets (state, payload) { state.tickets = payload payload.forEach(item => { if (item.enabled) { let obj = { spots: item.spots, sold: item.sold, persons: 0, price: item.dateRangePrice ? item.dateRangePrice : item.price, name: item.name, id: item.id, eventTicketId: item.id } state.ticketsData.push(obj) } }) }, setMaxCustomCapacity (state, payload) { state.maxCustomCapacity = payload }, setReduceMaxExtraPeople (state, payload) { state.maxExtraPeople = (state.maxExtraPeople + 1) - payload }, setMaxExtraPeople (state, payload) { state.maxExtraPeople = payload }, setTicketNumber (state, payload) { state.ticketsData.forEach(t => { if (t.id === payload.id) t.persons = parseInt(payload.numb) }) }, setEventGlobalSpots (state, payload) { state.globalSpots += payload }, setAllData (state, payload) { state.tickets = payload.tickets state.ticketsData = payload.ticketsData state.maxCustomCapacity = payload.maxCustomCapacity state.maxExtraPeople = payload.maxExtraPeople state.globalSpots = payload.globalSpots } }, actions: { resetCustomTickets ({commit}) { commit('setAllData', { tickets: [], ticketsData: [], maxCustomCapacity: null, maxExtraPeople: null, globalSpots: 0 }) } } } modules/customFields.js 0000666 00000004216 15165610720 0011225 0 ustar 00 export default { namespaced: true, state: () => ({ customFieldsArray: [], customFields: {}, }), getters: { getFilteredCustomFieldsArray (state) { return state.customFieldsArray }, getCustomFields (state) { return state.customFields }, getCustomFieldValue: (state) => (field) => { return state.customFields[field].value }, getAllData (state) { return { // customFieldsArray: state.customFieldsArray, customFields: state.customFields, } } }, mutations: { setFilteredCustomFieldsArray (state, payload) { state.customFieldsArray = payload }, setCustomFields (state, payload) { state.customFields = payload }, setCustomFieldValue (state, payload) { state.customFields[payload.key].value = payload.value }, setAllData (state, payoad) { // state.customFieldsArray = payoad.customFieldsArray state.customFields = payoad.customFields } }, actions: { filterEventCustomFields ({ commit, getters, rootGetters }) { let eventId = rootGetters['eventBooking/getSelectedEventId'] let filteredCustomFieldsArr = [] let customFields = {} rootGetters['eventEntities/getCustomFields'].forEach(c => { if (c.events.find(event => event.id === parseInt(eventId)) || c.allEvents) { filteredCustomFieldsArr.push(c) customFields[`cf${c.id}`] = { id: c.id, label: c.label, type: c.type, position: c.position, options: c.options, required: c.required } switch (c.type) { case ('checkbox'): case ('file'): customFields[`cf${c.id}`].value = [] break default: customFields[`cf${c.id}`].value = '' } if (getters['getCustomFields'][`cf${c.id}`]) { customFields[`cf${c.id}`].value = getters['getCustomFields'][`cf${c.id}`]['value'] } } }) commit('setFilteredCustomFieldsArray', filteredCustomFieldsArr) commit('setCustomFields', customFields) } } } index.js 0000666 00000000542 15165610720 0006221 0 ustar 00 import { createStore } from 'vuex' import entities from './modules/entities' import booking from './modules/booking' import eventEntities from './modules/eventEntities' import eventBooking from './modules/eventBooking' const store = createStore({ modules: { entities, booking, eventEntities, eventBooking }, }) export default store
| ver. 1.4 |
Github
|
.
| PHP 5.4.45 | Generation time: 0 |
proxy
|
phpinfo
|
Settings