Activate "Content - confirm Consent"
Define Beez3 as default template
In your contact form, click on "privacy note" link
display "privacy" article in a modal window
Nothing happens
Joomla 3.9.1, php 7..2
Everthing is OK with Protostar template, but it does not show anything with Beez3 template.
I also tried with some other third parties templates (Joomspirit for example) and I had the same problem
Labels |
Added:
?
|
And what are we supposed to do at the core level, not use our own API because other entities don't follow it?
I totally overlooked this, sorry. While fields should be rendered using renderField()
going forward, we probably have to account for outdated overrides (Beez3 included).
On the same topic, overrides still using label/input directly do not support showon because it's also inside renderField()
.
I think we also have a problem because it's based on Bootstrap 2.3. (see https://www.bootply.com/bootstrap-3-migration-guide).
bootstrap.renderModal adds .hide class to modal-jform_consentbox, so it will never show if your template uses bootstrap 3 or 4.
If you are using a Bootstrap 3 or 4 template you probably should be registering custom callbacks for the various Bootstrap JHtml helpers to have things be correct for those versions. Remember that core is based on Bootstrap 2.3.
This issue only occurs with Joomla v3.9.1.
It works perfectly well with Joomla v3.9.0.
It is a regression problem.
Status | New | ⇒ | Closed |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2018-11-30 20:46:11 |
Closed_By | ⇒ | mbabker |
The implementation in 3.9.0 was wrong-ish as it was using the (deprecated) MooTools oriented modal. 3.9.1 changed to use the Bootstrap modal and operated under the assumption that the API was actually being used correctly to render form fields (
#23205 addresses this issue to the extent possible within core. Any alternative framework related issues are going to have to be addressed at the template level, Joomla is not assembling modals that are compatible with every possible CSS framework out there.
Closing, the pull request should be tested.
Hello,
I'm new here, found this issue in an old template, somebody could point me where to know how to fix it ?
Confirmed. Reported several times for several templates, e.g. ReDim rebase template.
Whenever a template uses an override for default_form.php that doesn't use
echo $field->renderField();
for rendering the field but
echo $field->input;
the BS modal is not built.
Because this field method is not called during rendering: https://github.com/joomla/joomla-cms/blob/3.9.1/plugins/content/confirmconsent/fields/consentbox.php#L172-L187