function content_multigroup_add_more in Content Construction Kit (CCK) 6.3
Add AHAH add more button, if not working with a programmed form.
1 call to content_multigroup_add_more()
- _content_multigroup_fieldgroup_form in modules/
content_multigroup/ content_multigroup.node_form.inc - Implementation of hook_fieldgroup_form().
File
- modules/
content_multigroup/ content_multigroup.node_form.inc, line 691 - Implementation of node edit functions for content multigroup.
Code
function content_multigroup_add_more(&$form, &$form_state, $group) {
$group_multiple = $group['settings']['multigroup']['multiple'];
if ($group_multiple != 1 || !empty($form['#programmed'])) {
return FALSE;
}
// Make sure the form is cached so ahah can work.
$form['#cache'] = TRUE;
$content_type = content_types($group['type_name']);
$group_name = $group['group_name'];
$group_name_css = str_replace('_', '-', $group_name);
$form_element = array();
$form_element[$group_name . '_add_more'] = array(
'#type' => 'submit',
'#name' => $group_name . '_add_more',
'#value' => theme('content_multigroup_add_more_label', $group_name),
'#weight' => $group_multiple + 1,
'#submit' => array(
'content_multigroup_add_more_submit',
),
'#ahah' => array(
'path' => 'content_multigroup/js_add_more/' . $content_type['url_str'] . '/' . $group_name,
'wrapper' => $group_name_css . '-items',
'method' => 'replace',
'effect' => 'fade',
),
// When JS is disabled, the content_multigroup_add_more_submit handler will
// find the relevant group information using these entries.
'#group_name' => $group_name,
'#type_name' => $group['type_name'],
'#item_count' => $form[$group_name]['#item_count'],
);
// Add wrappers for the group and 'more' button.
$form_element['#prefix'] = '<div id="' . $group_name_css . '-items">';
$form_element['#suffix'] = '</div>';
$form_element[$group_name . '_add_more']['#prefix'] = '<div class="content-add-more clear-block">';
$form_element[$group_name . '_add_more']['#suffix'] = '</div>';
return $form_element;
}