Need to show or hide fields or panels based on the value of another field? For this requirement Dynamic Panels is the perfect solution. The advanced configuration tools allow you to clearly define what should happen whenever a field value changes.
#5404 - Plugin doesn't select correct layout
My colleague has stated that Dynamic Panels is not providing the correct list of fields for the layout which would be used by the selected Security Group and that the fields that appear in Dynamic Panels are the ones found within the default layout for the selected module.
I'll look into how the vi_dynamicpanelseditview works and will provide any code changes I make if required so they can be reviewed by your team.
5 months ago
Hello,
Thank you for reaching out with us.
Can you please share more detail about the fields which are not display.
Also one more thing if you change anything in the vi_dynamicpanelseditview file then we're not responsible for it if it's not work.
Regards,
Variance Infotech PVT LTD
5 months ago
Hi,
Within the CRM it is possible to create different layouts for different security groups containing different fields. Currently when using dynamic panels no matter which security group is selected, the UI will always return the fields and panels that are defined in the default layout.
We would like the list of fields and panels from the layout that would be active with the selected security group.
5 months ago
I am already aware that you are not responsible for any changes I make that break the plugin these changes are for your benefit if you wish to include them with your plugin
5 months ago
Hello,
Thank you for the suggestion.
Our Extension build on the Generalized for all Customers. So We have to check what kind of customization you have implemented in your CRM for the Custom Layout than we can decide it's possible to add fields and panels of the custom layout in Dynamic Panels or not.
Regards,
Variance Infotech PVT LTD
5 months ago
So far I have made modifications to the JavaScript to send the id of the selected Security Group during the calls to the backend. if no security group is selected it will send null for this parameter.
The PHP code will then be able to use this id to select the correct layout for the view and return the panels and fields within it. first the following needs to be addressed.
the function
makes use of the ParserFactory. SecuritySuite does not override the ParserFactory to make it possible to select the correct layout for a view.
I have reached out to SecurtiySuite to see if they have plans to override the ParserFactory. For the moment until this is addressed, I'll use the ParserFactory if no security group id is returned or if the CRM system is not using the full version of Security Suite otherwise, I will use another method for obtaining a views metadata,
5 months ago
delimiter*
5 months ago
Hello,
We have added you our communication channel.
Please share the requested information there so we can review your point.
Regards,
Variance Infotech PVT LTD
5 months ago
I have added the following method to both
and
This function replaces the parts of the code which gets the panels metadata. it will check if the full version of security suite is installed. if it is then it will use an alternate method to get the view metadata, otherwise it will use the standard method.
I may need to tweak this slightly after battle testing. not sure if I need to do extra handling for default layouts.