I am trying to rebuild a form in Drupal 7. I know its 'form_build_id' (e.g. form-_eNZLqaZWy7-6kYuGma5Cxg1Gru7Tmr9W2tsofSJxSg)
I defined this hook_menu and menu callback function:
/**
* Implements hook_menu().
*/
function set_menu_menu() {
$items['admin/structure/set_menu/rebuild/%'] = array(
'title' => 'Rebuilt',
'page callback' => 'set_menu_ajax_rebuild',
'page arguments' => array(4),
'access callback' => TRUE,
);
return $items;
}
function set_menu_ajax_rebuild($form_build_id) {
$form_state = form_state_defaults();
$form = form_get_cache($form_build_id, $form_state);
$form_state['no_redirect'] = TRUE;
// @see drupal_rebuild_form()
$form_state['set_menu']['count']++;
$form_state['rebuild'] = TRUE;
drupal_process_form($form['#form_id'], $form, $form_state);
}
I would like to rebuild a form by hitting url like this http://www.example.com/admin/structure/set_menu/rebuild/form-mQVd8FeimUAba8xuro38Q2_4phHZ6gupegEuY_ddKLs - this url displays no error but it does not rebuild my form.
The code never rebuilds any form. How can I rebuild a form?
Thank you, Martin.