Sorry, @texnixe, but I tried several blueprints and I sill can’t edit or delete any of my Structure field items in v2.2.3. Here are two example blueprints for you to test against:
title: Checkout
pages: true
files: true
fields:
title:
label: Title
type: text
b_download_message_field:
label: Success Message
type: structure
fields:
subject:
label: Title
type: text
message:
label: Message
type: textarea
message_type:
label: Message type
type: radio
options:
1: Success - Valid Charge
3: Success - Download Started
2: Error - Download File Missing
4: Error - Sales File Missing
8: Error - No Charge ID Passed
16: Error - Stripe Credit Card Error
32: Error - Stripe Invalid Request
64: Error - Invalid Download Token
help: If error messages are missing, Download will use generic ones.
[I even tried to avoid both `title` and type as Structure sub-field names. No luck either.]
Hm, both of your blueprints work in my test install without any problems. Did you start with a fresh Kirby Starterkit or did you update an existing project?
Could you test your blueprints in a fresh Kirby 2.2.3 Starter Kit? Do you test locally or on a remote server?
Pls. check that the panel has really been updated to version 2.2.3; have you had a chance to test this with a new starter kit just in case something went wrong with the update?
All components have been updated to 2.2.3 through git submodules. Can you give me a hint what Panel components my xDebug could watch to track this down?
Either the update/delete methods get a wrong $entryID as parameter through the structure field route. Could you check what URL appears when you try to edit an entry? And could you provide what’s already in the content file for that structure field? (to see if there is a mismatch between the entryIDs)
Or $structure->find($entryId) fails here. Where we’d need some more digging through the code. But for that it would also help to know what’s currently in the content file, so what appears to can’t be found.
A xDebug session revealed that $structure->find($entryId) indeed fails to find a data entry with the corresponding key, because a friend’s htaccess-script forces all URLS to get rewritten to lowercases and keys are both lower and uppercase.
I will try to replace the said htaccess magic with a Kirby router solution to see if I can prohibit forcing all lowercase URLs for Panel.
Anyhow: You might evaluate using lowercase-only $data array keys at your end too.