BulkForm confirm functionality lacks logic

Created on 11 September 2017, over 7 years ago
Updated 13 May 2025, 4 days ago

Problem/Motivation

The core BulkForm plugin first executes an action and only then the confirm form is beeing displayd if it exists.

This leads to unlogical behaviour where the action execute method has to contain code for saving results to a temporary storage instead of actually executing the action.

Proposed resolution

The problem has been solved in Views Bulk Operations module, it'd be possible to implement a similar solution in core and update the existing node delete action at the same time.

Backwards compatibility problem

The main problem here is that by doing this the right way, modules already implementing the confirm_form_route_name the old way (and using the execute method to save results to a temp storage) will stop working.

This way of doing things can be marked as deprecated, but how can we make the BulkForm::viewsFormSubmit know if a module is using the old (deprecated) or the new method?
The only solution that comes to my mind is introducing a new method in the action interface like 'doExecute' that is used only for executing the action and checking if that method exists in BulkForm.

If anyone is interested in making this right or has better ideas to solve the backward compatibility problem, please let me know.

🌱 Plan
Status

Active

Version

11.0 🔥

Component

views.module

Created by

🇵🇱Poland Graber

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

Production build 0.71.5 2024