Skip to content

Conversation

thet
Copy link
Member

@thet thet commented Jun 23, 2025

IClassicUISchema: Add new control panel.

Add new IClassicUISchema control panel with it's
plone.use_ajax_main_template setting.

When plone.use_ajax_main_template is enabled, and if we are in an XHR
request, Plone uses the AJAX main template. Note: This setting does not affect
the ajax_load query string parameter, which if set and evaluates to
true, will always trigger the AJAX main template.

Related PRs

plone/Products.CMFPlone#4169
plone/plone.app.layout#405
#87
plone/plone.app.theming#265
plone/plone.app.upgrade#345
plone/buildout.coredev#1036
plone/buildout.coredev#1037

@mister-roboto
Copy link

@thet thanks for creating this Pull Request and helping to improve Plone!

TL;DR: Finish pushing changes, pass all other checks, then paste a comment:

@jenkins-plone-org please run jobs

To ensure that these changes do not break other parts of Plone, the Plone test suite matrix needs to pass, but it takes 30-60 min. Other CI checks are usually much faster and the Plone Jenkins resources are limited, so when done pushing changes and all other checks pass either start all Jenkins PR jobs yourself, or simply add the comment above in this PR to start all the jobs automatically.

Happy hacking!

@stevepiercy
Copy link
Contributor

Please add the open docs PR to this PR description, if it means an update to them. plone/documentation#1961

Copy link
Member

@davisagli davisagli left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm, now I'm realizing that this probably really belongs in plone.app.layout or plone.classicui, since it's not relevant to Volto.

But, in the interest of trying to get things finished, I guess we can add it here. We'll have to update https://github.com/plone/volto/blob/main/packages/volto/src/config/ControlPanels.js#L60 to keep it from appearing in the site control panel in Volto.

Copy link
Contributor

@stevepiercy stevepiercy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor polish. Thank you!

Copy link
Contributor

@stevepiercy stevepiercy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Text LGTM. Let's get a technical review, too.

@thet thet changed the title Site controlpanel: Register new use_ajax option. IClassicUISchema: Add new control panel. Sep 22, 2025
@thet
Copy link
Member Author

thet commented Sep 22, 2025

@davisagli maybe this makes everything more complicated but I have now implemented a IClassicUISchema control panel interface here.

It is exposed in plone.app.theming, the place where it best fits to and a control panel which is not used in Volto.
I did not implement the IClassicUISchema interface there because it just doesn't fit there nor in plone.classicui because that is currently a very shallow repository and I'd prefer to move it there once it's getting more traction during the 6.2 development. I also just didn't want to invent the whole module structure and test setup in plone.classicui just for the use_ajax feature....

What do you think about this?

@thet thet requested a review from davisagli September 22, 2025 13:33
Add new ``IClassicUISchema`` control panel schema with its ``plone.use_ajax_main_template`` setting.

When ``plone.use_ajax_main_template`` is enabled, and if we are in an XHR
request, Plone uses the AJAX main template. Note: This setting does not affect
the ``ajax_load`` query string parameter, which if set and evaluates to
``true``, will always trigger the AJAX main template.
@thet thet merged commit edf8b33 into main Sep 23, 2025
10 of 12 checks passed
@thet thet deleted the ajax_marker branch September 23, 2025 16:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants