You are here

function custom_breadcrumbs_views_form in Custom Breadcrumbs 7.2

Same name and namespace in other branches
  1. 6.2 custom_breadcrumbs_views/custom_breadcrumbs_views.module \custom_breadcrumbs_views_form()

Form builder; Displays an edit form for a views breadcrumb.

Parameters

string $type: The type of custom breadcrumb to edit.

See also

custom_breadcrumbs_form_validate()

custom_breadcrumbs_form_submit()

1 string reference to 'custom_breadcrumbs_views_form'
custom_breadcrumbs_views_menu in custom_breadcrumbs_views/custom_breadcrumbs_views.module
Implements hook_menu().

File

custom_breadcrumbs_views/custom_breadcrumbs_views.module, line 143

Code

function custom_breadcrumbs_views_form($form, &$form_state, $type) {
  $form = array();
  $breadcrumb = NULL;
  $bid = arg(5);
  if (isset($bid)) {
    drupal_set_title(t('Edit Custom Breadcrumb for View'));
    $breadcrumbs = custom_breadcrumbs_load_breadcrumbs('custom_breadcrumbs_views', NULL, array(
      'bid' => $bid,
    ));
    $breadcrumb = array_pop($breadcrumbs);
  }
  else {
    drupal_set_title(t('Add Custom Breadcrumb for View'));
  }
  $options = array();
  $views = views_get_all_views();
  foreach ($views as $view) {
    if (!isset($view->disabled) || isset($view->disabled) && !$view->disabled) {
      foreach ($view->display as $display) {
        if (_custom_breadcrumbs_allowed_display($display)) {
          $name = $display->display_options['path'];
          $options[$name] = $name;
        }
      }
    }
  }
  $form['views_path'] = array(
    '#type' => 'select',
    '#title' => t('Views Path'),
    '#required' => TRUE,
    '#options' => $options,
    '#description' => t('The path to the view that this custom breadcrumb trail will apply to.'),
    '#default_value' => isset($breadcrumb->views_path) ? $breadcrumb->views_path : NULL,
    '#weight' => -10,
  );

  // Store information needed to save this breadcrumb.
  $form['#module'] = 'custom_breadcrumbs_views';
  $form['#infokey'] = 'views';
  $form += custom_breadcrumbs_common_form_elements($bid, $breadcrumb);
  $form['visibility_php']['#description'] = t('Determine whether this breadcrumb should be displayed by using a PHP snippet to return TRUE or FALSE. Do not use opening and closing php tags.');
  $form['#submit'][] = 'custom_breadcrumbs_form_submit';
  $form['#validate'][] = 'custom_breadcrumbs_form_validate';
  return $form;
}