Browse Source

Define prefix after config-file has been loaded (#38 #214 #196)

Tobias Reich 9 years ago
parent
commit
af37f5c138
2 changed files with 21 additions and 10 deletions
  1. 3 0
      php/api.php
  2. 18 10
      php/define.php

+ 3 - 0
php/api.php

@@ -39,6 +39,9 @@ if (!empty($_POST['function'])||!empty($_GET['function'])) {
 
 	}
 
+	# Define the table prefix
+	defineTablePrefix($dbTablePrefix);
+
 	# Connect to database
 	$database = Database::connect($dbHost, $dbUser, $dbPassword, $dbName);
 

+ 18 - 10
php/define.php

@@ -26,15 +26,23 @@ define('LYCHEE_CONFIG_FILE', LYCHEE_DATA . 'config.php');
 define('LYCHEE_URL_UPLOADS_THUMB', 'uploads/thumb/');
 define('LYCHEE_URL_UPLOADS_BIG', 'uploads/big/');
 
-# Parse table prefix
-# Old users do not have the table prefix stored in their config-file
-if (!isset($dbTablePrefix)) $dbTablePrefix = '';
-else $dbTablePrefix .= '_';
-
-# Define tables
-define('LYCHEE_TABLE_ALBUMS', $dbTablePrefix . 'lychee_albums');
-define('LYCHEE_TABLE_LOG', $dbTablePrefix . 'lychee_log');
-define('LYCHEE_TABLE_PHOTOS', $dbTablePrefix . 'lychee_photos');
-define('LYCHEE_TABLE_SETTINGS', $dbTablePrefix . 'lychee_settings');
+function defineTablePrefix($dbTablePrefix) {
+
+	# This part is wrapped into a function, because it needs to be called
+	# after the config-file has been loaded. Other defines are also available
+	# before the config-file has been loaded.
+
+	# Parse table prefix
+	# Old users do not have the table prefix stored in their config-file
+	if (!isset($dbTablePrefix)) $dbTablePrefix = '';
+	else $dbTablePrefix .= '_';
+
+	# Define tables
+	define('LYCHEE_TABLE_ALBUMS', $dbTablePrefix . 'lychee_albums');
+	define('LYCHEE_TABLE_LOG', $dbTablePrefix . 'lychee_log');
+	define('LYCHEE_TABLE_PHOTOS', $dbTablePrefix . 'lychee_photos');
+	define('LYCHEE_TABLE_SETTINGS', $dbTablePrefix . 'lychee_settings');
+
+}
 
 ?>