function afb_ajax_handler in Advanced Form Block 7
Ajax Handler that returns the forms in each individual blocks.
1 string reference to 'afb_ajax_handler'
- afb_form_alter in ./
afb.module - Implements hook_form_alter().
File
- ./
afb.module, line 348 - Allows administrators to create blockd of node add/edit forms.
Code
function afb_ajax_handler($form, $form_state) {
if (isset($form['#node']->nid)) {
$id = $form['#id'];
module_load_include('inc', 'node', 'node.pages');
$node = node_load($form['#node']->nid);
$form_state['build_info']['args'][0]->form_id = $id;
$form = drupal_rebuild_form($node->type . '_node_form', $form_state, $form);
$form['#id'] = $id;
return $form;
}
else {
$node = $form_state['node'];
if (!empty($node->nid)) {
$id = $form['#id'];
$new_node = (object) array(
'uid' => $node->uid,
'name' => $node->name,
'type' => $node->type,
'language' => $node->language,
'ajax_form' => 1,
'delta' => $node->delta,
'form_id' => $id,
);
$new_form_state = array();
$new_form_state['build_info']['args'] = array(
$new_node,
);
$new_form_state['values'] = array();
$new_form_state['method'] = $form_state['method'];
form_load_include($new_form_state, 'inc', 'node', 'node.pages');
$form = drupal_rebuild_form($node->type . '_node_form', $new_form_state);
$form['#id'] = $id;
return $form;
}
else {
return $form;
}
}
}