Skip to content

Commit 25fab56

Browse files
committed
Resolving issues with the edit page.
1 parent 4f7f64e commit 25fab56

File tree

1 file changed

+42
-22
lines changed

1 file changed

+42
-22
lines changed

src/views/Edit.vue

Lines changed: 42 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -98,20 +98,39 @@ function togglePreview() {
9898
previewMode.value = !previewMode.value
9999
}
100100
101-
async function mergeTags() {
102-
if (currentTag.value && previousTag.value) {
103-
Object.assign(mergedTag, {
104-
...currentTag.value,
105-
foundPlayer: previousTag.value.foundPlayer,
106-
foundTime: previousTag.value.foundTime,
107-
foundLocation: previousTag.value.foundLocation,
108-
foundImageUrl: previousTag.value.foundImageUrl,
109-
})
101+
function mergeTags(forward = true) {
102+
if (forward) {
103+
if (currentTag.value && previousTag.value) {
104+
Object.assign(mergedTag, {
105+
...currentTag.value,
106+
foundPlayer: previousTag.value.foundPlayer,
107+
foundTime: previousTag.value.foundTime,
108+
foundLocation: previousTag.value.foundLocation,
109+
foundImageUrl: previousTag.value.foundImageUrl,
110+
})
111+
} else {
112+
console.log('issue merging current and previous tags', {
113+
currentTag: currentTag.value,
114+
previousTag: previousTag.value,
115+
})
116+
}
110117
} else {
111-
console.log('issue merging current and previous tags', {
112-
currentTag: currentTag.value,
113-
previousTag: previousTag.value,
114-
})
118+
return {
119+
currentTag: {
120+
...currentTag.value,
121+
foundPlayer: pendingEdits.value.foundPlayer,
122+
foundTime: pendingEdits.value.foundTime,
123+
foundLocation: pendingEdits.value.foundLocation,
124+
foundImageUrl: pendingEdits.value.foundImageUrl,
125+
},
126+
previousTag: {
127+
...previousTag.value,
128+
mysteryPlayer: pendingEdits.value.mysteryPlayer,
129+
mysteryTime: pendingEdits.value.mysteryTime,
130+
mysteryLocation: pendingEdits.value.mysteryLocation,
131+
mysteryImageUrl: pendingEdits.value.mysteryImageUrl,
132+
},
133+
}
115134
}
116135
}
117136
@@ -136,16 +155,13 @@ async function onSave() {
136155
137156
editInProgress.value = true
138157
139-
const payload = {
140-
game: getGameName.value,
141-
tagnumber: mergedTag.tagnumber,
142-
...pendingEdits,
143-
}
158+
const updatePayloads = mergeTags(false)
144159
145-
const result = await store.updateCurrentTag(payload)
160+
const currentUpdateResult = await store.updateCurrentTag(updatePayloads.currentTag)
161+
const previousUpdateResult = await store.updateCurrentTag(updatePayloads.previousTag)
146162
editInProgress.value = false
147163
148-
if (result === true) {
164+
if (currentUpdateResult === true && previousUpdateResult === true) {
149165
store.fetchQueuedTags(false)
150166
return sendNetlifyForm(
151167
'edit-tag-success',
@@ -171,21 +187,25 @@ async function onSave() {
171187
},
172188
)
173189
} else {
174-
const message = `Error saving edit: ${result}`
190+
const message = `Error saving edits for${currentUpdateResult !== true ? ' current' : ''}${previousUpdateResult !== true ? ' previous' : ''}`
175191
toast.open({
176192
message,
177193
type: 'error',
178194
duration: 10000,
179195
timeout: false,
180196
position: 'bottom',
181197
})
198+
console.error(message, {
199+
currentUpdateResult,
200+
previousUpdateResult,
201+
})
182202
return sendNetlifyError(message, undefined, errorAction)
183203
}
184204
}
185205
186206
onMounted(async () => {
187207
await store.isReady()
188-
await mergeTags()
208+
mergeTags()
189209
editInProgress.value = false
190210
})
191211
</script>

0 commit comments

Comments
 (0)