FileMaster
Search
Toggle Dark Mode
Home
/
.
/
wp-content
/
plugins
/
ameliabooking
/
v3
/
src
/
store
/
modules
Edit File: params.js
import moment from 'moment'; import {useUrlQueryParams} from "../../assets/js/common/helper"; 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()], upcomingDates: [moment().toDate()], locationId: null, locations: null, providers: null, }, shortcodeParams: { ids: null, tags: null, locations: null } }), getters: { getTag (state) { return state.params.tag }, getSearch (state) { return state.params.search }, getLocationIdParam (state) { return state.params.locationId }, getLocations (state) { return state.params.locations }, getEmployees (state) { return state.params.providers }, getDates (state) { return state.params.dates }, getUpcomingDates (state) { return state.params.upcomingDates }, getEventParams (state) { let locations = state.params.locationId && !state.params.locations ? { locationId: state.params.locationId } : state.params.locations && !state.params.locationId ? { locations: state.params.locations } : { locations: state.shortcodeParams.locations }; return Object.assign({ dates: state.params.dates[1] ? [getDateString(state.params.dates[0]), getDateString(state.params.dates[1])] : [getDateString(state.params.dates[0])], id: state.params.id ? state.params.id : state.shortcodeParams.ids, search: state.params.search, tag: state.params.tag ? state.params.tag : state.shortcodeParams.tags, recurring: state.params.recurring, providers: state.params.providers }, locations ) }, getUpcomingEventParams (state) { let locations = state.params.locationId && !state.params.locations ? { locationId: state.params.locationId } : state.params.locations && !state.params.locationId ? { locations: state.params.locations } : { locations: state.shortcodeParams.locations }; return Object.assign({ dates: state.params.upcomingDates[1] ? [getDateString(state.params.upcomingDates[0]), getDateString(state.params.upcomingDates[1])] : [getDateString(state.params.upcomingDates[0])], id: state.params.id ? state.params.id : state.shortcodeParams.ids, search: state.params.search, tag: state.params.tag ? state.params.tag : state.shortcodeParams.tags, recurring: state.params.recurring, providers: state.params.providers }, locations ) }, getShortcodeParams (state) { return { ids: state.shortcodeParams.ids, tags: state.shortcodeParams.tags, locations: state.shortcodeParams.locations } }, getAllData (state) { return { dates: state.params.dates, upcomingDates: state.params.upcomingDates, 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 }, setLocations (state, payload) { state.params.locations = payload ? payload : null }, setEmployees (state, payload) { state.params.providers = payload ? payload : null }, setId (state, payload) { state.params.id = payload }, // * Params for Events // ! needs to change name of function setParams (state, payload) { let urlParameters = useUrlQueryParams(window.location.href) if (payload.eventId) { state.shortcodeParams.ids = payload.eventId.split(',') } if (urlParameters && urlParameters.ameliaEventId) { state.shortcodeParams.ids = urlParameters.ameliaEventId.split(',') } if (payload.eventTag) { state.shortcodeParams.tags = payload.eventTag.split("{").map(e => e.replace('},', '').replace('}', '')).filter(e => e !== '') } if (urlParameters && urlParameters.ameliaEventTag) { state.shortcodeParams.tags = urlParameters.ameliaEventTag.split(',') } if (payload.locationId) { state.shortcodeParams.locations = payload.locationId.split(',') } if (urlParameters && urlParameters.ameliaLocationId) { state.shortcodeParams.locations = urlParameters.ameliaLocationId.split(',') } if (payload.eventRecurring) { state.params.recurring = payload.eventRecurring } }, setSearch (state, payload) { state.params.search = payload ? payload : null }, setDates (state, payload) { state.params.dates = payload }, setUpcomingDates (state, payload) { state.params.upcomingDates = payload }, setAllData (state, payload) { state.params = { dates: payload.dates, upcomingDates: payload.upcomingDates, 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: {} }
Save
Back