PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 1.2.31
Booking for Appointments and Events Calendar – Amelia v1.2.31
2.4.9 2.4.8 2.4.7 2.4.6 2.4.5 2.4.4 2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / v3 / src / store / modules / customFields.js
ameliabooking / v3 / src / store / modules Last commit date
appointment.js 1 year ago attendee.js 1 year ago auth.js 1 year ago bookableType.js 3 years ago booking.js 1 year ago cabinet.js 2 years ago cabinetFilters.js 1 year ago coupon.js 2 years ago customFields.js 1 year ago customerInfo.js 1 year ago employee.js 1 year ago entities.js 1 year ago event.js 1 year ago eventBooking.js 3 years ago eventEntities.js 1 year ago eventWaitingListOptions.js 1 year ago pagination.js 3 years ago params.js 1 year ago payment.js 3 years ago persons.js 1 year ago recurring.js 1 year ago shortcodeParams.js 2 years ago tickets.js 1 year ago
customFields.js
105 lines
1 export default {
2 namespaced: true,
3
4 state: () => ({
5 customFieldsArray: [],
6 customFields: {},
7 }),
8
9 getters: {
10 getFilteredCustomFieldsArray (state) {
11 return state.customFieldsArray
12 },
13 getCustomFields (state) {
14 return state.customFields
15 },
16
17 getCustomFieldValue: (state) => (field) => {
18 return state.customFields[field].value
19 },
20
21 getAllData (state) {
22 return {
23 // customFieldsArray: state.customFieldsArray,
24 customFields: state.customFields,
25 }
26 }
27 },
28
29 mutations: {
30 setFilteredCustomFieldsArray (state, payload) {
31 state.customFieldsArray = payload
32 },
33
34 setCustomFields (state, payload) {
35 state.customFields = payload
36 },
37
38 setCustomFieldValue (state, payload) {
39 state.customFields[payload.key].value = payload.value
40 },
41
42 setAllData (state, payoad) {
43 // state.customFieldsArray = payoad.customFieldsArray
44 state.customFields = payoad.customFields
45 },
46
47 populateCustomerCustomFields (state, payload) {
48 let customerCustomFields = payload.customFields
49 ? JSON.parse(payload.customFields) : {}
50 let populateAvailableCustomFields = state.customFields
51
52 for (let id in customerCustomFields) {
53 if (populateAvailableCustomFields.hasOwnProperty('cf' + id)) {
54 populateAvailableCustomFields['cf' + id].value = customerCustomFields[id].value
55 }
56 }
57
58 state.customFields = populateAvailableCustomFields
59 }
60 },
61
62 actions: {
63 filterEventCustomFields ({ commit, getters, rootGetters }) {
64 let eventId = rootGetters['eventBooking/getSelectedEventId']
65 let filteredCustomFieldsArr = []
66 let customFields = {}
67 rootGetters['eventEntities/getCustomFields'].forEach(c => {
68 if (c.events.find(event => event.id === parseInt(eventId)) || c.allEvents || c.saveType === 'customer') {
69 filteredCustomFieldsArr.push(c)
70
71 customFields[`cf${c.id}`] = {
72 id: c.id,
73 label: c.label,
74 type: c.type,
75 position: c.position,
76 options: c.options,
77 required: c.required,
78 width: c.width,
79 saveFirstChoice: c.saveFirstChoice,
80 saveType: c.saveType
81 }
82
83 switch (c.type) {
84 case ('checkbox'):
85 case ('file'):
86 customFields[`cf${c.id}`].value = []
87
88 break
89
90 default:
91 customFields[`cf${c.id}`].value = ''
92 }
93
94 if (getters['getCustomFields'][`cf${c.id}`]) {
95 customFields[`cf${c.id}`].value = getters['getCustomFields'][`cf${c.id}`]['value']
96 }
97 }
98 })
99
100 commit('setFilteredCustomFieldsArray', filteredCustomFieldsArr)
101 commit('setCustomFields', customFields)
102 }
103 }
104 }
105