12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- <?php
- namespace Lychee\Modules;
- final class Config {
- /**
- * Creates the configuration file.
- * @return true|string Returns true when successful.
- * Warning: Connection failed!
- * Warning: Creation failed!
- * Warning: Could not create file!
- */
- public static function create($host, $user, $password, $name = 'lychee', $prefix = '') {
- // Open a new connection to the MySQL server
- $connection = Database::connect($host, $user, $password);
- // Check if the connection was successful
- if ($connection===false) return 'Warning: Connection failed!';
- // Check if user can create the database before saving the configuration
- if (Database::createDatabase($connection, $name)===false) return 'Warning: Creation failed!';
- // Escape data
- $host = mysqli_real_escape_string($connection, $host);
- $user = mysqli_real_escape_string($connection, $user);
- $password = mysqli_real_escape_string($connection, $password);
- $name = mysqli_real_escape_string($connection, $name);
- $prefix = mysqli_real_escape_string($connection, $prefix);
- // Save config.php
- $config = "<?php
- // Database configuration
- \$dbHost = '$host'; // Host of the database
- \$dbUser = '$user'; // Username of the database
- \$dbPassword = '$password'; // Password of the database
- \$dbName = '$name'; // Database name
- \$dbTablePrefix = '$prefix'; // Table prefix
- ?>";
- // Save file
- if (@file_put_contents(LYCHEE_CONFIG_FILE, $config)===false) return 'Warning: Could not create file!';
- return true;
- }
- /**
- * @return boolean Returns true when the config exists.
- */
- public static function exists() {
- return file_exists(LYCHEE_CONFIG_FILE);
- }
- /**
- * @return array Returns the config.
- */
- public static function get() {
- require(LYCHEE_CONFIG_FILE);
- return(array(
- 'host' => $dbHost,
- 'user' => $dbUser,
- 'password' => $dbPassword,
- 'name' => $dbName,
- 'prefix' => $dbTablePrefix
- ));
- }
- }
- ?>
|