--- conditional_fields.module 2011-02-28 05:02:24.000000000 +0200 +++ conditional_fields.module 2011-02-28 05:30:52.000000000 +0200 @@ -309,6 +309,9 @@ function conditional_fields_form_alter(& case 'content_copy_import_form': $form['#submit'][] = 'conditional_fields_import'; break; + case 'user_register': + conditional_fields_node_editing_form($form, $form_state); + break; } if (isset($form['type']['#value']) && $form_id == $form['type']['#value'] . '_node_form') { @@ -644,6 +647,19 @@ function conditional_fields_node_after_b return $form; } + if (array_key_exists('#content_profile_registration_use_types', $form) && is_array($form['#content_profile_registration_use_types'])) { + $type_value = $form['type']['#value']; + $content_profile_registration_use_types = $form['#content_profile_registration_use_types']; + unset($form['#content_profile_registration_use_types']); + foreach ($content_profile_registration_use_types as $type_name => $value) { + $form['type']['#value'] = $type_name; + $form = conditional_fields_node_after_build($form, $form_state); + } + $form['#content_profile_registration_use_types'] = $content_profile_registration_use_types; + $form['type']['#value'] = $type_value; + return $form; + } + $type_name = $form['type']['#value']; // Do nothing if there are no conditional fields @@ -966,7 +982,7 @@ function conditional_fields_node_editing else { // Do not submit values of controlled fields which were not triggered (except on preview) if (variable_get('c_fields_reset_default_' . $form['type']['#value'], 1) && - !in_array('node_form_build_preview', $form_state['submit_handlers'])) { + !in_array('node_form_build_preview', (array)$form_state['submit_handlers'])) { // Load default values like in content_field_form() in content.node_form.inc $field_in_group_info = $form['#field_info'][$field_in_group]; if (content_callback('widget', 'default value', $field_in_group_info) != CONTENT_CALLBACK_NONE) {