Projet

Général

Profil

Paste
Télécharger (835 octets) Statistiques
| Branche: | Révision:

root / drupal7 / sites / all / modules / panels / panels_ipe / panels_ipe.api.php @ 136a805a

1
<?php
2

    
3
/**
4
 * @file
5
 * Hooks provided by Panels In-Place Editor.
6
 */
7

    
8
/**
9
 * Allow modules to control access to the Panels IPE.
10
 *
11
 * @param panels_display $display
12
 *   The panels display about to be rendered.
13
 *
14
 * @return TRUE|FALSE|NULL
15
 *   Returns TRUE to allow access, FALSE to deny, or NULL if the module
16
 *   implementing this hook doesn't care about access for the given display.
17
 */
18
function hook_panels_ipe_access($panels_display) {
19
  // We only care about displays with the 'panelizer' context.
20
  if (!isset($display->context['panelizer'])) {
21
    return NULL;
22
  }
23

    
24
  if ($display->context['panelizer']->type[0] == 'entity:node') {
25
    // Allow or deny IPE access based on node type.
26
    return $display->context['panelizer']->data->type == 'awesome_page';
27
  }
28

    
29
  // Otherwise, deny access to everything!
30
  return FALSE;
31
}