All add-ons currently require PHP 7.4 or greater.
On July 4th 2024 PHP 8.2 will be the new minimum requirement for all add-ons. Expect any add-on released after that date to require 8.2 or greater. Some releases may not immediately take advantage of 8.x specific features in PHP, which means you might, be able to continue using new releases in PHP 7.4, however, if you experience an error the first thing you should do is update to PHP 8.2 then create a support ticket if the error persists.
Please read about the changes to BoldMinded add-on licensing.
Ticket: Resaving multi-select type bloq causes havoc in the entry’s bloq
Status | Resolved |
Add-on / Version | Bloqs 5.0.13 |
Severity | |
EE Version | 7.4.6 |
Niki Wolf
Jul 03, 2024Description of the problem
After creating a bloq with multi-select, saving it, then going back re-saving it (whether edited or not), the resulting display of the options in the entry are in disarray…
(see screenshot)
Basically, it ends up displaying the row IDs, and both the value and the labels with checkboxes, instead of just displaying the label checkboxes.
rows
row_id_1
- option_1
- Option 1
row_id_2
- option_2
- Option 2
row_id_3
- option_3
- Option 3
row_id_4
- option_4
- Option 4
etc., etc.
How To Reproduce Steps to reproduce the behavior: 1. Create Bloq with an atom that is multi-select. 2. Add multiple options 3. Save bloq. 4. Go check entry – normal display of this bloq. 5. Resave bloq with multi-select atom. 6. Check entry again – display of options as noted above.
Error Messages n/a
Screenshots / Videos / Template Code See attached screenshots of the entry screen. These are just of the multi-select options area to reduce showing client pertinent information. I also recreated the field on the staging server and reproduced the issue; the other two screenshots are the before/after re-saving the bloq to demonstrate it happening there, too.
Environment Details: - Version: EE: 7.4.6 // Bloqs 5.0.13 - PHP Version 8.1 - MySQL Version (mariaDB) 10.4.32 / mySQL 8.0.12 (staging) - OS: DDEV on MacOS / Ubuntu 22.04 (staging) - Web Server: nginx / (both staging & local)
Possible Solution According to a colleague, this is fixable directly in the database, but that becomes severely untenable with multiple rows and potentially needing to resave the bloq multiple times while developing.
Thanks!
BoldMinded (Brian)
Are there any JS errors in your console at any point during this process? Have you tried to replicate it inside of a Grid field?
Niki Wolf
No JS errors, not in either the Bloqs screen nor the Entry screen.
I created a grid field with multi-selecct, and it does not experience this problem, but I think I have noticed what might be causing it in the Bloq…
I have noticed, that when I go into a multi-select field after creating it/saving it initially, that the radio button, which one can use to select : Value/Label Pairs Populate Manually or Populate from another Channel field …
instead of being on the first one, which is where I entered the options, it’s actually on “Populate Manually”. Every time I go into that bloq.
If I save it while it’s on that “Populate Manually” option? It does the crazy stuff with the options as shown in the screen shots.
But if I make a point to move the radio button BACK to ‘Value/Label Pairs’ before saving – it saves it just fine, no weirdness.
When I recreated the Grid field, I watched for the same behavior, but it is NOT doing it there. The radio button stays where it is in the Label Pairs option.
It is only in multi-select in Bloqs where seems to be forgetting where it should be selected at. The funny thing is, it starts off on the label pairs button when the initial choice for a multi-select field is made, it just doesn’t stay there after the initial save. Even if I don’t add any options in there, it still has been moved to ‘Populate Manually’ when it’s opened again for editing.
BoldMinded (Brian)
Comment has been marked private.
BoldMinded (Brian)
Comment has been marked private.
Niki Wolf
Comment has been marked private.
Niki Wolf
Comment has been marked private.
BoldMinded (Brian)
Excellent!