forked from drupalprojects/panels_bootstrap_styles
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpanels_bootstrap_styles.module
More file actions
127 lines (118 loc) · 3.28 KB
/
panels_bootstrap_styles.module
File metadata and controls
127 lines (118 loc) · 3.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
<?php
/**
* Implements hook_ctools_plugin_directory()
*/
function panels_bootstrap_styles_ctools_plugin_directory($module, $plugin) {
if ($module == "panels" && in_array($plugin, array('styles'))) {
return "plugins/$plugin";
}
}
/**
* Implementation of hook_theme()
*/
function panels_bootstrap_styles_theme() {
$theme = array();
$theme['panels_bootstrap_pane'] = array(
'variables' => array(
'output' => array(),
'pane' => array(),
'display' => array()
),
'path' => drupal_get_path('module', 'panels_bootstrap_styles') . '/theme',
'file' => 'theme.inc',
'template' => 'panels-bootstrap-pane',
);
$theme['panels_bootstrap_region'] = array(
'variables' => array(
'output' => array(),
'panes' => array(),
'display' => array()
),
'path' => drupal_get_path('module', 'panels_bootstrap_styles') . '/theme',
'file' => 'theme.inc',
'template' => 'panels-bootstrap-region',
);
return $theme;
}
/**
* Retrieves a single or all substyles.
* @param string $name
* @return array
*/
function panels_bootstrap_styles_load_substyles($name = NULL) {
$substyles = &drupal_static(__FUNCTION__, array());
if (empty($substyles)) {
$substyles = module_invoke_all('panels_bootstrap_substyles');
$default = array(
'description' => '',
// Default elements.
'wrapper_element' => 'div',
'header_element' => 'div',
'title_element' => 'div',
'content_element' => 'div',
'links_element' => 'div',
'footer_element' => 'div',
);
foreach ($substyles as $id => &$substyle) {
$substyle = $default + $substyle;
$substyle['title'] = !empty($substyle['title']) ? $substyle['title'] : $id;
$substyle['name'] = !empty($substyle['name']) ? $substyle['name'] : $id;
}
}
if ($name) {
return $substyles[$name];
}
return $substyles;
}
/**
* Implements hook_panels_bootstrap_substyles.
*/
function panels_bootstrap_styles_panels_bootstrap_substyles() {
$styles = array(
'panel' => array(
'name' => 'panel',
'title' => 'Panel',
'description' => t('Renders as bootstrap panel class.'),
'panes' => TRUE,
'regions' => TRUE,
'collapsible' => TRUE,
'modifier_classes' => TRUE,
'hide_classes' => TRUE,
'additional_classes' => TRUE,
),
'jumbotron' => array(
'name' => 'jumbotron',
'title' => 'Jumbotron',
'description' => t('Renders as bootstrap jumbotron class.'),
'panes' => TRUE,
'regions' => TRUE,
'collapsible' => FALSE,
'modifier_classes' => FALSE,
'hide_classes' => TRUE,
'additional_classes' => TRUE,
),
'well' => array(
'name' => 'well',
'title' => 'Well',
'description' => t('Renders as bootstrap well class.'),
'panes' => TRUE,
'regions' => TRUE,
'collapsible' => FALSE,
'modifier_classes' => FALSE,
'hide_classes' => TRUE,
'additional_classes' => TRUE,
),
'alert' => array(
'name' => 'alert',
'title' => 'Alert',
'description' => t('Renders as alert class.'),
'panes' => TRUE,
'regions' => FALSE,
'collapsible' => FALSE,
'modifier_classes' => TRUE,
'hide_classes' => TRUE,
'additional_classes' => TRUE,
),
);
return $styles;
}