You are here

function custom_breadcrumbs_taxonomy_form_taxonomy_form_term_alter in Custom Breadcrumbs 6.2

Same name and namespace in other branches
  1. 7.2 custom_breadcrumbs_taxonomy/custom_breadcrumbs_taxonomy.module \custom_breadcrumbs_taxonomy_form_taxonomy_form_term_alter()

Implements hook_form_FORM_ID_alter().

File

custom_breadcrumbs_taxonomy/custom_breadcrumbs_taxonomy.module, line 479
This module implements taxonomy_based breadcrumbs using a hybrid of methods developed for the custom_breadcrumbs and taxonomy_breadcrumbs modules. Breadcrumbs are provided for node and taxonomy term pages. If 'Use taxonomy hierarchy' is…

Code

function custom_breadcrumbs_taxonomy_form_taxonomy_form_term_alter(&$form, &$form_state) {
  if (isset($form['tid']['#value']) && !(isset($_POST['op']) && $_POST['op'] == t('Delete')) || isset($_POST['confirm'])) {

    // Load all custom breadcrumbs for this tid.
    $breadcrumbs = custom_breadcrumbs_load_breadcrumbs('custom_breadcrumbs_taxonomy', 'custom_breadcrumbs_taxonomy_term', array(
      'tid' => $form['tid']['#value'],
    ));
    $output = NULL;
    if (count($breadcrumbs) > 0) {
      $output = '<p>' . t('Custom breadcrumbs have been created for this term. Use the <a href="@link">Custom Breadcrumbs Administration Page</a> to add additional breadcrumbs. Or follow the links in the table below to edit or delete existing custom breadcrumbs.', array(
        '@link' => url('admin/build/custom_breadcrumbs'),
      )) . '</p>';
    }

    // Show a table of custom breadcrumbs with links to the edit form.
    module_load_include('inc', 'custom_breadcrumbs', 'custom_breadcrumbs.admin');
    $output .= custom_breadcrumbs_simple_breadcrumb_table($breadcrumbs);
    $form['custom_breadcrumbs_taxonomy_term'] = array(
      '#type' => 'fieldset',
      '#title' => t('Custom Breadcrumbs for Taxonomy'),
      '#collapsible' => TRUE,
      '#collapsed' => TRUE,
      '#weight' => -50,
    );
    $form['custom_breadcrumbs_taxonomy_term']['breadcrumb_table'] = array(
      '#value' => $output,
    );
  }
}