Get a list of available regions from a specified theme.
$theme_key: The name of a theme.
$show: Possible values: REGIONS_ALL or REGIONS_VISIBLE. Visible excludes hidden regions.
An array of regions in the form $region['name'] = 'description'.
function system_region_list($theme_key, $show = REGIONS_ALL) {
$themes = list_themes();
if (!isset($themes[$theme_key])) {
return array();
}
$list = array();
$info = $themes[$theme_key]->info;
// If requested, suppress hidden regions. See block_admin_display_form().
foreach ($info['regions'] as $name => $label) {
if ($show == REGIONS_ALL || !isset($info['regions_hidden']) || !in_array($name, $info['regions_hidden'])) {
$list[$name] = t($label);
}
}
return $list;
}