Index: taxonomy_manager.admin.inc =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/taxonomy_manager/Attic/taxonomy_manager.admin.inc,v retrieving revision 1.1.2.17.2.33 diff -u -p -r1.1.2.17.2.33 taxonomy_manager.admin.inc --- taxonomy_manager.admin.inc 31 Jan 2010 17:47:27 -0000 1.1.2.17.2.33 +++ taxonomy_manager.admin.inc 4 Mar 2010 15:49:53 -0000 @@ -857,18 +857,28 @@ function taxonomy_manager_update_term_da * @param $tid */ function taxonomy_manager_form_term_data($tid) { - $term = taxonomy_get_term($tid); + module_load_include('inc', 'taxonomy', 'taxonomy.admin'); $module_path = drupal_get_path('module', 'taxonomy_manager') .'/'; - $vocabulary = taxonomy_vocabulary_load($term->vid); - + + // Load the basic data needed for this page. + $term = (array) taxonomy_get_term($tid); + $vocabulary = taxonomy_vocabulary_load($term['vid']); + $form_state = array(); + + // Load the normal taxonomy-term form. + $term_form = taxonomy_form_term($form_state, $vocabulary, $term); + // Run the normal form hooks. + drupal_prepare_form('taxonomy_form_term', $term_form, $form_state); + //prevent that title of the fieldset is too long - $title = $term->name; + $title = $term['name']; if (drupal_strlen($title) >= 33) { $title = drupal_substr($title, 0, 33) ."..."; } - $title .= " (". $term->tid .")"; + $title .= " (". $term['tid'] .")"; $title = check_plain($title); + // Nest everything in a custom fieldset. $form['term_data'] = array( '#type' => 'fieldset', '#title' => $title, @@ -876,78 +886,52 @@ function taxonomy_manager_form_term_data '#tree' => TRUE, ); + // A Close button. $form['term_data']['close'] = array( '#value' => '
    
', '#weight' => -100, ); - $form['term_data']['tid'] = array('#type' => 'hidden', '#value' => $tid); + // Add the full term form into the fieldset. + foreach ($term_form as $key => $data) { + $form['term_data'][$key] = $data; + } - $form['term_data']['name'] = array( - '#type' => 'textfield', - '#title' => t('Name'), - '#default_value' => $term->name, - '#size' => 35, - '#maxlength' => 255, - '#required' => TRUE, - '#weight' => -20, - ); + // Add a link to the term's page. + $link_img = theme("image", $module_path ."images/link-small.png", "link to term page"); + $form['term_data']['link'] = array('#value' => '
'. l($link_img .' '. t('Go to the term page'), taxonomy_term_path($term), array('attributes' => array('rel' => 'tag', 'title' => strip_tags($term['description']), 'target' => '_blank'), 'html' => TRUE)), '#weight' => '60'); - $form['term_data']['description'] = array( - '#type' => 'textarea', - '#title' => t('Description'), - '#default_value' => $term->description, - '#cols' => 35, - '#rows' => 3, + // Get rid of some of the fields automatically added to the form. + unset($form['term_data']['submit']); + unset($form['term_data']['delete']); + unset($form['term_data']['#programmed']); + unset($form['term_data']['form_token']); + unset($form['term_data']['form_id']); + unset($form['term_data']['#token']); + unset($form['term_data']['options']); + unset($form['term_data']['#id']); + unset($form['term_data']['#required']); + unset($form['term_data']['#method']); + unset($form['term_data']['#action']); + unset($form['term_data']['#validate']); + unset($form['term_data']['#submit']); + unset($form['term_data']['#after_build']); + + // Fix some fields. + $form['term_data']['#type'] = 'fieldset'; + $form['term_data']['#attributes'] = array( + 'id' => 'taxonomy-term-data-fieldset', ); + $form['term_data']['#tree'] = TRUE; + $form['term_data']['#parents'][] = 'term_data'; - $synonyms = taxonomy_get_synonyms($term->tid); - asort($synonyms); - $form['term_data']['synonyms'] = _taxonomy_manager_form_term_data_lists($term, $synonyms, t('Synonyms'), 'synonym', FALSE); - $form['term_data']['synonyms']['#tree'] = TRUE; - $form['term_data']['synonyms']['#weight'] = '50'; - - $form['term_data']['relations'] = _taxonomy_manager_form_term_data_lists($term, taxonomy_get_related($term->tid), t('Relations'), 'related'); - $form['term_data']['relations']['#tree'] = TRUE; - $form['term_data']['relations']['#weight'] = '51'; - - $parents = taxonomy_get_parents($term->tid); - $form['term_data']['parents'] = _taxonomy_manager_form_term_data_lists($term, $parents, t('Parents'), 'parent', TRUE); - $form['term_data']['parents']['#tree'] = TRUE; - $form['term_data']['parents']['#weight'] = '52'; - - if (module_exists('i18ntaxonomy')) { - if (i18ntaxonomy_vocabulary($term->vid) == I18N_TAXONOMY_TRANSLATE) { - $translations = i18ntaxonomy_term_get_translations(array('tid' => $term->tid), FALSE); - $form['term_data']['translations'] = _taxonomy_manager_form_term_data_translations($term, $translations, t('Translations'), 'translation', TRUE); - $form['term_data']['translations']['#tree'] = TRUE; - $form['term_data']['translations']['#weight'] = '53'; - - $form['term_data']['language'] = array( - '#type' => 'select', - '#title' => t('Language'), - '#default_value' => isset($term) && !empty($term->language) ? $term->language : '', - '#options' => array('' => '') + locale_language_list('name'), - '#description' => t('This term belongs to a multilingual vocabulary. You can set a language for it.'), - '#weight' => 54, - ); + // Expand all of the collapsed fieldsets. + foreach ($form['term_data'] as $name => $data) { + if (is_array($data) && isset($data['#collapsed'])) { + $form['term_data'][$name]['#collapsed'] = FALSE; } } - $form['term_data']['weight'] = array( - '#type' => 'weight', - '#default_value' => $term->weight, - '#delta' => 50, - '#prefix' => '
', - '#suffix' => '
', - '#title' => t('Weight'), - '#weight' => 55, - ); - - $link_img = theme("image", $module_path ."images/link-small.png", "link to term page"); - $form['term_data']['link'] = array('#value' => '
'. l($link_img .' '. t('Go to the term page'), taxonomy_term_path($term), array('attributes' => array('rel' => 'tag', 'title' => strip_tags($term->description), 'target' => '_blank'), 'html' => TRUE)), '#weight' => '56'); - $form['term_data']['vid'] = array('#type' => 'hidden', '#value' => $term->vid); - return $form; } @@ -1563,6 +1547,11 @@ function taxonomy_manager_term_data_edit $msg = t("Changes successfully saved"); $is_error_msg = FALSE; + + //TODO: Finish this. + print_r($_POST); + return; + $form = taxonomy_admin_term_edit($_POST['tid']); $tid = $param['tid']; if (!$tid) {