fix: resolve contact form placeholders, restore process block layout, and fix testimonials carousel scroll logic
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
import { getPayload } from 'payload'
|
||||
import configPromise from '../src/payload.config'
|
||||
|
||||
async function run() {
|
||||
const payload = await getPayload({ config: configPromise })
|
||||
|
||||
console.log("Symulacja odebrania FormData(puste pola) na backendzie (zgodnie z logiką validateSubmission)...")
|
||||
|
||||
const incomingData: Record<string, any> = {
|
||||
name: "",
|
||||
email: "",
|
||||
message: "",
|
||||
consent: true // Pomijamy consent
|
||||
}
|
||||
|
||||
console.log("Dane wejściowe (z FormData):", incomingData)
|
||||
|
||||
const form: any = await payload.findByID({ id: 1, collection: 'forms', depth: 0 })
|
||||
const fields = form.fields || []
|
||||
|
||||
let validationResult: any = { ok: true, cleaned: {} }
|
||||
|
||||
for (const field of fields) {
|
||||
if (field.blockType === 'message') continue;
|
||||
|
||||
const value = incomingData[field.name]
|
||||
const isBlank = value == null || (typeof value === 'string' && value.trim() === '') || value === false
|
||||
|
||||
if (field.required && isBlank) {
|
||||
validationResult = { field: field.name, kind: 'required', ok: false, reason: 'invalid' }
|
||||
break;
|
||||
}
|
||||
|
||||
if (value !== undefined) {
|
||||
validationResult.cleaned[field.name] = value
|
||||
}
|
||||
}
|
||||
|
||||
console.log("\\n=== Wynik validateSubmission ===")
|
||||
console.log(JSON.stringify(validationResult, null, 2))
|
||||
|
||||
if (validationResult.ok) {
|
||||
console.log("\\nTworzenie wpisu w bazie przez payload.create (symulacja zapisu)...")
|
||||
const submission = await payload.create({
|
||||
collection: 'form-submissions',
|
||||
data: {
|
||||
form: 1,
|
||||
submissionData: Object.entries(validationResult.cleaned).map(([field, value]) => ({
|
||||
field,
|
||||
value: value == null ? '' : String(value),
|
||||
})) as any,
|
||||
}
|
||||
})
|
||||
console.log("\\nZapisano w bazie:", JSON.stringify(submission.submissionData, null, 2))
|
||||
} else {
|
||||
console.log("\\nFormularz odrzucony na poziomie API backendowego (validateSubmission) - rekord NIE trafił do bazy, użytkownik dostaje błąd o braku pola.")
|
||||
}
|
||||
|
||||
process.exit(0)
|
||||
}
|
||||
run().catch(console.error)
|
||||
Reference in New Issue
Block a user