You are here

function panelizer_features_pipe_panelizer_defaults_alter in Panelizer 7.3

Implements hook_features_pipe_panelizer_defaults_alter().

File

./panelizer.module, line 1487
The Panelizer module attaches panels to entities, providing default panels and allowing each panel to be configured independently by privileged users.

Code

function panelizer_features_pipe_panelizer_defaults_alter(&$more, $data, $export) {
  foreach ($data as $machine_name) {
    list($entity_type, $bundle) = explode(':', $machine_name);
    $variables = array(
      'panelizer_defaults_' . $entity_type . '_' . $bundle,
      'panelizer_' . $entity_type . ':' . $bundle . '_allowed_layouts',
      'panelizer_' . $entity_type . ':' . $bundle . '_allowed_layouts_default',
      'panelizer_' . $entity_type . ':' . $bundle . '_allowed_types',
      'panelizer_' . $entity_type . ':' . $bundle . '_allowed_types_default',
      'panelizer_' . $entity_type . ':' . $bundle . '_default',
    );

    // Add default display variables for each view mode.
    $entity_info = entity_get_info($entity_type);
    $default_base = 'panelizer_' . $entity_type . ':' . $bundle . ':';
    foreach ($entity_info['view modes'] as $view_mode => $view_info) {
      $variables[] = $default_base . $view_mode . '_selection';
    }
    $variables[] = $default_base . 'page_manager' . '_selection';
    $variables[] = $default_base . 'default' . '_selection';
    foreach ($variables as $variable) {
      $more['variable'][$variable] = $variable;
    }
  }
  return $more;
}