Compare commits

...

2 Commits

2 changed files with 41 additions and 16 deletions

View File

@ -0,0 +1,37 @@
<?php
namespace App\Core;
use Exception;
use Feedback;
class DatabaseConnector
{
/**
* Connect to the database using given configuration and handle errors.
*
* @param array $config
* @return mixed Database connection
*/
public static function connect(array $config)
{
// Load DB classes
require_once __DIR__ . '/../classes/database.php';
require_once __DIR__ . '/../includes/database.php';
try {
$db = connectDB($config);
if (!$db['db']) {
throw new Exception('Could not connect to database');
}
return $db['db'];
} catch (Exception $e) {
// Show error and exit
Feedback::flash('ERROR', 'DEFAULT', getError('Error connecting to the database.', $e->getMessage()));
include __DIR__ . '/../templates/page-header.php';
include __DIR__ . '/../helpers/feedback.php';
include __DIR__ . '/../templates/page-footer.php';
exit();
}
}
}

View File

@ -134,22 +134,10 @@ $public_pages = filter_public_pages($public_pages);
require_once __DIR__ . '/../app/core/Router.php';
$currentUser = \App\Core\Router::checkAuth($config, $app_root, $public_pages, $page);
// connect to db of Jilo Web
require '../app/classes/database.php';
require '../app/includes/database.php';
try {
$response = connectDB($config);
if (!$response['db']) {
throw new Exception('Could not connect to database: ' . $response['error']);
}
$dbWeb = $response['db'];
} catch (Exception $e) {
Feedback::flash('ERROR', 'DEFAULT', getError('Error connecting to the database.', $e->getMessage()));
include '../app/templates/page-header.php';
include '../app/helpers/feedback.php';
include '../app/templates/page-footer.php';
exit();
}
// connect to DB via DatabaseConnector
require_once __DIR__ . '/../app/core/DatabaseConnector.php';
use App\Core\DatabaseConnector;
$dbWeb = DatabaseConnector::connect($config);
// start logging
require '../app/classes/log.php';