Projet

Général

Profil

Paste
Télécharger (1,25 ko) Statistiques
| Branche: | Révision:

root / drupal7 / sites / all / modules / panels / plugins / styles / list.inc @ 64156087

1
<?php
2

    
3

    
4
/**
5
 * @file
6
 * Definition of the 'list' panel style.
7
 */
8

    
9
// Plugin definition.
10
$plugin = array(
11
  'title' => t('List'),
12
  'description' => t('Presents the panes in the form of an HTML list.'),
13
  'render region' => 'panels_list_style_render_region',
14
  'settings form' => 'panels_list_style_settings_form',
15
  'settings validate' => 'panels_list_style_settings_validate',
16
);
17

    
18
/**
19
 * Render callback.
20
 *
21
 * @ingroup themeable
22
 */
23
function theme_panels_list_style_render_region($vars) {
24
  $display = $vars['display'];
25
  $region_id = $vars['region_id'];
26
  $panes = $vars['panes'];
27
  $settings = $vars['settings'];
28

    
29
  $items = array();
30

    
31
  foreach ($panes as $pane_id => $item) {
32
    $items[] = $item;
33
  }
34

    
35
  if (empty($settings['list_type'])) {
36
    $settings['list_type'] = 'ul';
37
  }
38

    
39
  return theme('item_list', array('items' => $items, 'type' => $settings['list_type']));
40
}
41

    
42
/**
43
 * Settings form callback.
44
 */
45
function panels_list_style_settings_form($style_settings) {
46
  $form['list_type'] = array(
47
    '#type' => 'select',
48
    '#title' => t('List type'),
49
    '#options' => array(
50
      'ul' => t('Unordered'),
51
      'ol' => t('Ordered'),
52
    ),
53
    '#default_value' => (isset($style_settings['list_type'])) ? $style_settings['list_type'] : 'ul',
54
  );
55

    
56
  return $form;
57
}