function nr_fields_nr_settings_enable_private_fields_submit in Node registration 7
Submit handler for node_registration_registrations_settings_form().
Enables 'private fields' for this node/event. Creates a new node_registration bundle.
1 string reference to 'nr_fields_nr_settings_enable_private_fields_submit'
- nr_fields_form_node_registration_registrations_settings_form_alter in submodules/
nr_fields/ nr_fields.module - Implements hook_form_FORM_ID_alter() for node_registration_registrations_settings_form();
File
- submodules/
nr_fields/ nr_fields.module, line 41
Code
function nr_fields_nr_settings_enable_private_fields_submit($form, &$form_state) {
$node = $form['#node'];
$settings = $node->registration;
// Create new registration bundle.
$settings
->update(array(
'private_fields' => 1,
));
// Copy fields.
$bundle = 'node_' . $node->nid;
$instances = field_info_instances('node_registration', $node->type);
foreach ($instances as $instance) {
$instance['bundle'] = $bundle;
field_create_instance($instance);
}
// Notify user.
$uri = 'admin/structure/node_registration/manage/' . $bundle . '/fields';
$link = l(t('Edit its fields here.'), $uri);
drupal_set_message(t('Private fields created. !link', array(
'!link' => $link,
)));
// Reset entities & menu routes.
entity_info_cache_clear();
menu_rebuild();
}