summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
Diffstat (limited to 'includes')
-rw-r--r--includes/database/database.inc26
-rw-r--r--includes/database/pgsql/database.inc5
-rw-r--r--includes/theme.inc6
3 files changed, 18 insertions, 19 deletions
diff --git a/includes/database/database.inc b/includes/database/database.inc
index 31d98b4b3..bb5338631 100644
--- a/includes/database/database.inc
+++ b/includes/database/database.inc
@@ -414,9 +414,7 @@ abstract class DatabaseConnection extends PDO {
}
}
catch (PDOException $e) {
- if (!function_exists('module_implements')) {
- _db_need_install();
- }
+ _db_check_install_needed();
if ($options['throw_exception']) {
if ($query instanceof DatabaseStatement) {
$query_string = $stmt->queryString;
@@ -892,11 +890,9 @@ abstract class Database {
final protected static function parseConnectionInfo() {
global $databases;
- if (empty($databases)) {
- _db_need_install();
- }
- $databaseInfo = $databases;
+ _db_check_install_needed();
+ $databaseInfo = $databases;
foreach ($databaseInfo as $index => $info) {
foreach ($databaseInfo[$index] as $target => $value) {
// If there is no "driver" property, then we assume it's an array of
@@ -1016,7 +1012,7 @@ abstract class Database {
// It is extremely rare that an exception will be generated here other
// than when installing. We therefore intercept it and try the installer,
// passing on the exception otherwise.
- _db_need_install();
+ _db_check_install_needed();
throw $e;
}
}
@@ -1851,7 +1847,7 @@ function db_field_set_no_default(&$ret, $table, $field) {
* Fields for the primary key.
*/
function db_add_primary_key(&$ret, $table, $fields) {
- return Database::getActiveConnection()->schema()->addPrimaryKey($ret, $table, $field);
+ return Database::getActiveConnection()->schema()->addPrimaryKey($ret, $table, $fields);
}
/**
@@ -1923,7 +1919,7 @@ function db_add_index(&$ret, $table, $name, $fields) {
* The name of the index.
*/
function db_drop_index(&$ret, $table, $name) {
- return Database::getActiveConnection()->schema()->addIndex($ret, $table, $name);
+ return Database::getActiveConnection()->schema()->dropIndex($ret, $table, $name);
}
/**
@@ -2032,8 +2028,14 @@ function db_result(DatabaseStatement $statement) {
return $statement->fetchField();
}
-function _db_need_install() {
- if (!function_exists('install_goto')) {
+/**
+ * Redirect the user to the installation script if Drupal has not been
+ * installed yet (i.e., if no $databases array has been defined in the
+ * settings file) and we are not already there. Otherwise, do nothing.
+ */
+function _db_check_install_needed() {
+ global $databases;
+ if (empty($databases) && !function_exists('install_main')) {
include_once DRUPAL_ROOT . '/includes/install.inc';
install_goto('install.php');
}
diff --git a/includes/database/pgsql/database.inc b/includes/database/pgsql/database.inc
index 25cec5528..793e97c74 100644
--- a/includes/database/pgsql/database.inc
+++ b/includes/database/pgsql/database.inc
@@ -61,10 +61,7 @@ class DatabaseConnection_pgsql extends DatabaseConnection {
}
}
catch (PDOException $e) {
- if (!function_exists('module_implements')) {
- _db_need_install();
- }
- //watchdog('database', var_export($e, TRUE) . $e->getMessage(), NULL, WATCHDOG_ERROR);
+ _db_check_install_needed();
if ($options['throw_exception']) {
if ($query instanceof DatabaseStatement) {
$query_string = $stmt->queryString;
diff --git a/includes/theme.inc b/includes/theme.inc
index 5a5c4d3fa..29d9aa5e0 100644
--- a/includes/theme.inc
+++ b/includes/theme.inc
@@ -898,7 +898,7 @@ function theme_get_settings($key = NULL) {
'toggle_logo' => 1,
'toggle_favicon' => 1,
'toggle_name' => 1,
- 'toggle_search' => 1,
+ 'toggle_search' => 0,
'toggle_slogan' => 0,
'toggle_mission' => 1,
'toggle_node_user_picture' => 0,
@@ -919,8 +919,8 @@ function theme_get_settings($key = NULL) {
}
// Only offer search box if search.module is enabled.
- if (!module_exists('search') || !user_access('search content')) {
- $settings['toggle_search'] = 0;
+ if (!defined('MAINTENANCE_MODE') && module_exists('search') && user_access('search content')) {
+ $settings['toggle_search'] = 1;
}
return $settings;