Heya
I am sort of stuck here and don’t really know whats wrong
In an old Kirby instance with 3.3.3 this seems so be working fine, but with 3.8.4 it no longer works correctly for me?
# pages/test.yml
title: Test
preset: page
fields:
email:
type: email
required: true
salutation:
type: text
required: true
firstname:
type: text
required: true
validate:
min: 2
max: 255
lastname:
type: text
required: true
validate:
min: 2
max: 255
# default.php
<?php
$data = [
'salutation' => 'MALE',
// 'firstname' => 'First Name',
'email' => 'mail@example.com',
'lastname' => 'Last Name',
];
$new_page = new Page([
'slug' => Str::random(5)
'template' => 'test',
'content' => $data,
]);
echo '<pre>'; print_r($new_page->errors()); echo '</pre>';
?>
output with 3.3.3 which is correct. firstname
is not included in $data
Array
(
[firstname] => Array
(
[label] => Firstname
[message] => Array
(
[required] => Please enter something
[min] => Please enter a value equal to or greater than 2
)
)
)
output with 3.8.4 (same code, same everything, just newer version of kirby)
Array
(
[email] => Array
(
[label] => Email
[message] => Array
(
[required] => Please enter something
)
)
[salutation] => Array
(
[label] => Salutation
[message] => Array
(
[required] => Please enter something
)
)
[firstname] => Array
(
[label] => Firstname
[message] => Array
(
[required] => Please enter something
[min] => Please enter a value equal to or greater than 2
)
)
[lastname] => Array
(
[label] => Lastname
[message] => Array
(
[required] => Please enter something
[min] => Please enter a value equal to or greater than 2
)
)
)
Changing the language slug (so /de
or /en
) only results in the translated error messages
This has all been tested with plainkit.
Since the versions differ a lot, I am guessing something changed, but I can’t seem to find it in the docs?
Thanks for any hint or solution!