function domain_theme_form_alter($form_id, &$form) {
if ($form_id == 'system_themes') {
global $_domain;
$theme = domain_theme_lookup($_domain['domain_id']);
if ($theme['theme']) {
$form['theme_default']['#default_value'] = $theme['theme'];
}
$available = $form['status']['#options'];
$allowed = $form['status']['#default_value'];
foreach ($available as $key => $value) {
if (!in_array($key, $allowed)) {
if ($key == $theme['theme']) {
$form['theme_default']['#default_value'] = variable_get('theme_default', 'garland');
}
unset($form[$key]);
unset($form['status']['#options'][$key]);
unset($form['theme_default']['#options'][$key]);
}
else {
$form['status']['#disabled'] = TRUE;
}
}
$unset = array('buttons', '#submit');
foreach ($unset as $key) {
unset($form[$key]);
}
$form['intro'] = array(
'#value' => t('<p>Select the default theme for this domain. Theme-specific settings must be configured at <a href="!url">the system theme settings page</a>.</p>', array('!url' => url('admin/build/themes'))),
);
$form['domain_id'] = array(
'#type' => 'value',
'#value' => $_domain['domain_id'],
);
$form['#submit']['domain_theme_submit'] = array();
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Set domain theme'),
);
}
}
function domain_theme_submit($form_id, $form_values) {
$theme = $form_values['theme_default'];
$id = $form_values['domain_id'];
$settings = NULL; $check = domain_theme_lookup($id);
if ($check == -1) {
db_query("INSERT INTO {domain_theme} VALUES (%d, '%s', %b)", $id, $theme, $settings);
}
else {
db_query("UPDATE {domain_theme} SET theme = '%s', settings = %b WHERE domain_id = %d", $theme, $settings, $id);
}
}