You are here

function oa_core_panelizer_defaults_override_alter in Open Atrium Core 7.2

Implements hook_panelizer_defaults_override_alter().

File

./oa_core.module, line 1992

Code

function oa_core_panelizer_defaults_override_alter(&$data) {
  drupal_alter('oa_core_layout', $data);

  // Add any custom widgets coming from Atrium plugins
  $info = module_invoke_all('oa_core_add_panes');
  foreach ($info as $panelizer => $panes) {
    if (isset($data[$panelizer]->display)) {
      foreach ($panes as $uuid => $pane) {
        $pid = 'new-' . $uuid;
        if (empty($pane)) {
          if (isset($data[$panelizer]->display->content[$pid])) {
            unset($data[$panelizer]->display->content[$pid]);
          }
        }
        else {
          $pane = $pane + array(
            'shown' => TRUE,
            'access' => array(),
            'configuration' => array(),
            'cache' => array(),
            'style' => array(
              'settings' => NULL,
            ),
            'css' => array(),
            'extras' => array(),
            'position' => 9,
            'locks' => array(),
            'uuid' => $uuid,
            'pid' => $pid,
          );
          if (isset($data[$panelizer])) {
            $data[$panelizer]->display->content[$pid] = (object) $pane;
          }
        }
      }
    }
  }
  _oa_core_panelizer_sort($data);
}