Index: conditional_fields.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/conditional_fields/conditional_fields.module,v retrieving revision 1.1.2.16 diff -u -r1.1.2.16 conditional_fields.module --- conditional_fields.module 3 Mar 2008 17:06:01 -0000 1.1.2.16 +++ conditional_fields.module 24 Apr 2008 15:25:13 -0000 @@ -831,18 +831,34 @@ ob_end_clean(); } if (!$allowed_values[$field['field_name']]) { - - $list = explode("\n", $field['allowed_values']); - $list = array_map('trim', $list); - $list = array_filter($list, 'strlen'); - foreach ($list as $opt) { - list($key, $value) = explode('|', $opt); - $allowed_values[$field['field_name']][$key] = $value ? $value : $key; + if( $field['type'] == 'content_taxonomy'){ + $allowed_values[$field['field_name']] = conditional_fields_allowed_values_content_taxonomy( $field['vid']); + } + else { + $list = explode("\n", $field['allowed_values']); + $list = array_map('trim', $list); + $list = array_filter($list, 'strlen'); + foreach ($list as $opt) { + list($key, $value) = explode('|', $opt); + $allowed_values[$field['field_name']][$key] = $value ? $value : $key; + } } } return $allowed_values[$field['field_name']]; } +function conditional_fields_allowed_values_content_taxonomy( $vid){ + $tree= taxonomy_get_tree( $vid, $parent = 0); + $result=array(); + foreach( $tree as $term){ + if( $term->parents[0]==0){ + $result[ $term->tid]=$term->name; + } + } + return $result; +} + + /** * Themes a mock required form element title. */