function delta_load_theme_settings_callback in Delta 7.2
1 call to delta_load_theme_settings_callback()
- delta_layout_configure in ./delta_ui.admin.inc
- delta_template_configure function.
File
- ./delta_ui.admin.inc, line 317
- Delta UI functionality
Code
function delta_load_theme_settings_callback($theme, $layout) {
if ($theme != 'none') {
$key = $theme;
$var = 'theme_delta_' . $layout . '_settings';
$themes = system_rebuild_theme_data();
$features = $themes[$key]->info['features'];
$form = array();
$form_state['build_info']['args'][0] = $key;
$function = $themes[$key]->prefix . '_engine_settings';
if (function_exists($function)) {
$form['engine_specific'] = array(
'#type' => 'fieldset',
'#title' => t('Theme-engine-specific settings'),
'#description' => t('These settings only exist for the themes based on the %engine theme engine.', array(
'%engine' => $themes[$key]->prefix,
)),
);
$function($form, $form_state);
}
$form['var'] = $form['delta_template'] = array(
'#type' => 'hidden',
'#value' => $var,
);
if (isset($themes[$key]->base_themes)) {
$theme_keys = array_keys($themes[$key]->base_themes);
$theme_keys[] = $key;
}
else {
$theme_keys = array(
$key,
);
}
$default_theme = !empty($GLOBALS['theme_key']) ? $GLOBALS['theme_key'] : NULL;
$GLOBALS['theme_key'] = $key;
foreach ($theme_keys as $theme) {
$filename = DRUPAL_ROOT . '/' . str_replace("/{$theme}.info", '', $themes[$theme]->filename) . '/theme-settings.php';
if (file_exists($filename)) {
require_once $filename;
}
$function = $theme . '_form_system_theme_settings_alter';
if (function_exists($function)) {
$function($form, $form_state, $theme);
}
}
if (isset($default_theme)) {
$GLOBALS['theme_key'] = $default_theme;
}
else {
unset($GLOBALS['theme_key']);
}
return $form;
}
else {
return t('<div id="theme_settings_replace"><p>Unable to load theme settings form group... WTF...</p></div>');
}
}