function _panels_context_selector in Panels 5.2
Same name and namespace in other branches
- 6.2 includes/plugins.inc \_panels_context_selector()
1 call to _panels_context_selector()
- panels_context_selector in includes/
plugins.inc - Create a select box to choose possible contexts. This only creates a selector if there is actually a choice.
File
- includes/
plugins.inc, line 1010 - plugins.inc
Code
function _panels_context_selector($contexts, $required, $default, $num = 0) {
$filtered = panels_context_filter($contexts, $required);
$count = count($filtered);
$form = array();
if ($count == 1) {
$keys = array_keys($filtered);
return array(
'#type' => 'value',
'#value' => $keys[0],
);
}
if ($count > 1) {
// If there's more than one to choose from, create a select widget.
foreach ($filtered as $cid => $context) {
$options[$cid] = $context
->get_identifier();
}
if (!empty($required->title)) {
$title = $required->title;
}
else {
$title = $num ? t('Context %count', array(
'%count' => $num,
)) : t('Context');
}
return array(
'#type' => 'select',
'#options' => $options,
'#title' => $title,
'#description' => t('Multiple contexts are valid for this pane; one must be chosen.'),
'#default_value' => $default,
);
}
}