Support

Akeeba Ticket System

#40359 Custom Fields with "Show On" do not display in the ticket summary

Posted in ‘Akeeba Ticket System for Joomla! 4 & 5’
This is a public ticket

Everybody will be able to see its contents. Do not include usernames, passwords or any other sensitive information.

Environment Information

Joomla! version
n/a
PHP version
n/a
Akeeba Ticket System version
n/a

Latest post by nicholas on Tuesday, 05 March 2024 04:16 CST

[email protected]

Hello,

I have created a ticket category and I am using custom fields to capture various information from the end user. I have observed that not all custom field values  are being displayed in the ticket summary, however, if I "Edit" the ticket I can see the custom field values.

It seems that the custom fields primarily affected are using "Show On". Even though the conditional values are met the values are still not being displayed.

I have created screen recording to show this issue:

https://app.screencastify.com/v3/watch/W37hH1SJ4zgyTu01BDq1

It seems that the affected fields are not limited to Text Area. Check boxes and drop down's do not appear in the Ticket Summary page.

If I remove the affected fields "Show On" condition the fields are displayed in the ticket summary as expected.

While I can remove the "Show On" values, it will make the ticket more confusing for the users when submitting the form.

Any help you can provide is greatly appreciated.

 

Eric

 

nicholas
Akeeba Staff
Manager

This has a lot to do with the way Joomla! handles custom fields and how its Show On works. For the fields to show up correctly you need the control field and the value (controlled) fields i.e. the fields with the Show On attribute to be available in the frontend which means

a. its access needs to be Public (or an access level which ensures everyone who will be viewing the ticket is in a group included in this access level);

b. its Private Display must be set to No;

c. its Display When Read-Only must be set to Yes;

c. the control field's Automatic Display can be set to "Do not automatically display" to avoid displaying it in the frontend, but the same option for value fields must be set to any of the other available options.

The point about the control field is especially important! If the field's options make the value unavailable to the front-end, it will not be included in the ticket's jcfields object set by Joomla's fields plugin, therefore the fields whose display is controlled by the (now missing) value will not be displayed! This is never the case when editing a ticket because then a different code path in the core Joomla! code is followed, making all fields available.

Moreover, you must only use our own Show On attribute in the field's General tab, NOT the one in the field's Options tab. The latter is controlled by Joomla! itself and it's unsuitable for use with ATS as it does not understand the concept of private tickets. Unfortunately, that's not something we can hide when you are editing a field. That's a limitation in how Joomla! works. Yep, the Fields and Field Groups pages of our component... are not our component. They are Joomla's com_fields component. Just like the Categories page is not our page, it's Joomla's com_categories component. I am not saying it's a perfect solution, but it's definitely better than having us try to reinvent all those features like we were doing in ATS 4 and earlier...

Please check the documentation example to understand how it's supposed to work. This is the setup I have on my dev sites, Joomla! 4.4 and 5.0 at the moment, and it works correctly.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

Support Information

Working hours: We are open Monday to Friday, 9am to 7pm Cyprus timezone (EET / EEST). Support is provided by the same developers writing the software, all of which live in Europe. You can still file tickets outside of our working hours, but we cannot respond to them until we're back at the office.

Support policy: We would like to kindly inform you that when using our support you have already agreed to the Support Policy which is part of our Terms of Service. Thank you for your understanding and for helping us help you!