You are here

function _custom_breadcrumbs_views_token_types in Custom Breadcrumbs 6.2

Same name and namespace in other branches
  1. 7.2 custom_breadcrumbs_common.inc \_custom_breadcrumbs_views_token_types()

Obtains the appropriate objects for token type replacement for a view display.

Parameters

$display: The view $display object.

Return value

$objs An associate array of objects to use for token replacement.

1 call to _custom_breadcrumbs_views_token_types()
custom_breadcrumbs_views_views_pre_render in custom_breadcrumbs_views/custom_breadcrumbs_views.module
Implements hook_views_pre_render().

File

./custom_breadcrumbs_common.inc, line 131
Common helper functions used by custom breadcrumbs submodules.

Code

function _custom_breadcrumbs_views_token_types($display) {
  $objs = array();

  // Check to see if the current display has overriden the default arguments.
  $arguments = _custom_breadcrumbs_views_display_arguments($display);
  if (isset($arguments) && !empty($arguments)) {
    $viewargs = isset($display->handler->view->args) && is_array($display->handler->view->args) ? $display->handler->view->args : array();
    $arg_values = _custom_breadcrumbs_views_parse_args($arguments, $viewargs);
    foreach ($arg_values['types'] as $key => $type) {
      switch ($type) {
        case 'tid':
          $objs['taxonomy'] = taxonomy_get_term($arg_values['values'][$key]);
          break;
        case 'nid':
          $objs['node'] = node_load(array(
            'nid' => $arg_values['values'][$key],
          ));
          break;
        case 'uid':
          $objs['user'] = user_load(array(
            'uid' => $arg_values['values'][$key],
          ));
          break;
      }
    }
  }
  return $objs;
}