? 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' => '<div id="database-fields">',
+    '#suffix' => '</div>',
+  );
+
+  // 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.
  */
