Rebuild Ajax Forms

Categories

Component ID

2682059

Component name

Rebuild Ajax Forms

Component type

module

Maintenance status

Development status

Component security advisory coverage

not-covered

Component created

Component changed

Component body

This module is a workaround for a well known bug in Drupal core:

drupal_process_form() deletes cached form + form_state despite still needed for later POSTs with enabled page caching

This module is addressed to developers, since you need to implement hook_form_alter in order for it to work.

How it works:

  1. A tiny JS is injected in the page containing the form which fails on anonymous AJAX requests
  2. The script performs an AJAX POST request and checks whether the given form_build_id exists in cache
  3. The module then looks for the form in the cache_form table. If it doesn't exist, it recreates the record.

Please refer to the README.txt for more information on how to use this module.