You are here

function popup_breadcrumb_preprocess_page in Popup 6.x

Implementation of hook_preprocess_page

File

modules/popup_breadcrumb/popup_breadcrumb.module, line 80

Code

function popup_breadcrumb_preprocess_page(&$variables) {
  if (!drupal_is_front_page()) {
    module_load_include('inc', 'popup_breadcrumb', 'includes/popup_breadcrumb.admin');
    $settings = _popup_breadcrumb_settings();
    $path_args = _popup_breadcrumb_arguments($settings);
    $breadcrumb = $settings['home-link'] ? array(
      l(t('Home'), variable_get('site-frontpage', '')),
    ) : array();
    module_load_include('inc', 'popup', 'includes/popup.api');
    if (count($settings['views'])) {
      foreach ($settings['views'] as $view_settings) {
        $args = array();
        foreach ($view_settings['arguments'] as $index => $argument_enabled) {
          if ($argument_enabled) {
            $args[] = $path_args[$index - 1];
          }
        }
        $view = views_get_view($view_settings['view']);
        $attributes = _popup_breadcrumb_title_attributes($view_settings['title_type'], $path_args[$view_settings['title_link_argument'] - 1]);
        $attributes['format'] = $settings['format'];
        $attributes['view'] = $view_settings['view'];
        $attributes['display'] = $view_settings['display'];
        $attributes['args'] = implode(',', $args);
        $attributes['empty-body'] = 'none';
        $breadcrumb[] = _popup_view($attributes);
      }
    }
    $breadcrumb = array_filter($breadcrumb);
    if (($settings['append-title'] == 1 && arg(0) == 'node' || $settings['append-title'] == 2) && !drupal_is_front_page()) {
      $breadcrumb[] = drupal_get_title();
    }
    $variables['breadcrumb'] = theme('breadcrumb', $breadcrumb);
    $variables['styles'] = drupal_get_css();
  }
}