? sites/all/modules/contrib ? sites/default/files ? sites/default/settings.bak.php ? sites/default/settings.php Index: includes/form.inc =================================================================== RCS file: /cvs/drupal/drupal/includes/form.inc,v retrieving revision 1.508 diff -u -p -r1.508 form.inc --- includes/form.inc 7 Nov 2010 21:46:09 -0000 1.508 +++ includes/form.inc 11 Nov 2010 08:00:12 -0000 @@ -496,7 +496,7 @@ function form_set_cache($form_build_id, // Cache form structure. if (isset($form)) { - if ($GLOBALS['user']->uid) { + if (!empty($GLOBALS['user']->uid)) { $form['#cache_token'] = drupal_get_token(); } cache_set('form_' . $form_build_id, $form, 'cache_form', REQUEST_TIME + $expire); Index: includes/install.core.inc =================================================================== RCS file: /cvs/drupal/drupal/includes/install.core.inc,v retrieving revision 1.41 diff -u -p -r1.41 install.core.inc --- includes/install.core.inc 5 Nov 2010 20:53:38 -0000 1.41 +++ includes/install.core.inc 11 Nov 2010 08:00:12 -0000 @@ -860,14 +860,27 @@ function install_settings_form($form, &$ '#options' => $drivers, '#default_value' => !empty($database['driver']) ? $database['driver'] : current($drivers_keys), '#description' => st('The type of database your @drupal data will be stored in.', array('@drupal' => drupal_install_profile_distribution_name())), + '#ajax' => array( + 'callback' => 'install_settings_database_fields', + 'wrapper' => 'database-fields', + 'options' => array( + 'alias' => TRUE, + ) + ), ); if (count($drivers) == 1) { $form['driver']['#disabled'] = TRUE; $form['driver']['#description'] .= ' ' . st('Your PHP configuration only supports a single database type, so it has been automatically selected.'); } - // Database name. + // Wrapper for AJAX callback. $form['database'] = array( + '#prefix' => '
', + '#suffix' => '
', + ); + + // Database name. + $form['database']['database'] = array( '#type' => 'textfield', '#title' => st('Database name'), '#default_value' => empty($database['database']) ? '' : $database['database'], @@ -877,7 +890,7 @@ function install_settings_form($form, &$ ); // Database username. - $form['username'] = array( + $form['database']['username'] = array( '#type' => 'textfield', '#title' => st('Database username'), '#default_value' => empty($database['username']) ? '' : $database['username'], @@ -885,14 +898,14 @@ function install_settings_form($form, &$ ); // Database password. - $form['password'] = array( + $form['database']['password'] = array( '#type' => 'password', '#title' => st('Database password'), '#default_value' => empty($database['password']) ? '' : $database['password'], '#size' => 45, ); - $form['advanced_options'] = array( + $form['database']['advanced_options'] = array( '#type' => 'fieldset', '#title' => st('Advanced options'), '#collapsible' => TRUE, @@ -901,7 +914,7 @@ function install_settings_form($form, &$ ); // Database host. - $form['advanced_options']['host'] = array( + $form['database']['advanced_options']['host'] = array( '#type' => 'textfield', '#title' => st('Database host'), '#default_value' => empty($database['host']) ? 'localhost' : $database['host'], @@ -913,7 +926,7 @@ function install_settings_form($form, &$ ); // Database port. - $form['advanced_options']['port'] = array( + $form['database']['advanced_options']['port'] = array( '#type' => 'textfield', '#title' => st('Database port'), '#default_value' => empty($database['port']) ? '' : $database['port'], @@ -925,7 +938,7 @@ function install_settings_form($form, &$ // Table prefix. $db_prefix = ($profile == 'standard') ? 'drupal_' : $profile . '_'; - $form['advanced_options']['db_prefix'] = array( + $form['database']['advanced_options']['db_prefix'] = array( '#type' => 'textfield', '#title' => st('Table prefix'), '#default_value' => '', @@ -946,6 +959,10 @@ function install_settings_form($form, &$ return $form; } +function install_settings_database_fields($form, $form_state) { + return 'AJAXY STUFF'; +} + /** * Form API validate for install_settings form. */