forked from Sky/Dragon-Knight
Compare commits
2 Commits
bcb9139995
...
c615a978e4
Author | SHA1 | Date | |
---|---|---|---|
![]() |
c615a978e4 | ||
![]() |
51a65506c1 |
@ -31,8 +31,16 @@ if (! $autoloader = require file_exists(__DIR__.'/../vendor/autoload.php') ? __D
|
||||
throw new \Exception('Composer autoloader not found. Run `composer install` and try again.');
|
||||
}
|
||||
|
||||
if (! extension_loaded('sqlite3')) {
|
||||
throw new \Exception('The SQLite3 extension is required but not loaded. Please enable it in your PHP configuration.');
|
||||
// Check required extensions
|
||||
$requiredExtensions = [
|
||||
'sqlite3',
|
||||
];
|
||||
|
||||
if ($missing = array_filter($requiredExtensions, fn($ext) => !extension_loaded($ext))) {
|
||||
throw new \Exception(
|
||||
'Required PHP extensions missing: ' . implode(', ', $missing) .
|
||||
'. Please enable them in your PHP configuration.'
|
||||
);
|
||||
}
|
||||
|
||||
$uri = explode('/', trim(parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH), '/'));
|
||||
|
@ -15,7 +15,6 @@ namespace DragonKnight;
|
||||
|
||||
use DragonKnight\Actions\Install;
|
||||
|
||||
define('DRAGONKNIGHTBOT_START', microtime(true));
|
||||
ini_set('display_errors', 1);
|
||||
error_reporting(E_ALL);
|
||||
|
||||
@ -24,7 +23,7 @@ ignore_user_abort(true);
|
||||
ini_set('max_execution_time', 0);
|
||||
ini_set('memory_limit', '-1'); // Unlimited memory usage
|
||||
|
||||
function loadEnv(string $filePath = __DIR__.'/.env'): void
|
||||
function loadEnv(string $filePath = __DIR__.'/../.env'): void
|
||||
{
|
||||
if (! file_exists($filePath)) {
|
||||
throw new \Exception('The .env file does not exist.');
|
||||
@ -41,9 +40,9 @@ function loadEnv(string $filePath = __DIR__.'/.env'): void
|
||||
}
|
||||
});
|
||||
}
|
||||
loadEnv(getcwd().'/.env');
|
||||
loadEnv(getcwd().'/../.env');
|
||||
|
||||
if (! $autoloader = require file_exists(__DIR__.'/vendor/autoload.php') ? __DIR__.'/vendor/autoload.php' : __DIR__.'/../../autoload.php') {
|
||||
if (! $autoloader = require file_exists(__DIR__.'/../vendor/autoload.php') ? __DIR__.'/../vendor/autoload.php' : __DIR__.'/../../autoload.php') {
|
||||
throw new \Exception('Composer autoloader not found. Run `composer install` and try again.');
|
||||
}
|
||||
|
@ -21,11 +21,16 @@ function index(): string|false
|
||||
{
|
||||
$page = false;
|
||||
|
||||
if (user()->currentaction === 'In Town') {
|
||||
if (! $user = user()) {
|
||||
error_log('User not found in index() function.');
|
||||
return $page;
|
||||
}
|
||||
|
||||
if ($user->currentaction === 'In Town') {
|
||||
$page = Towns::town();
|
||||
} elseif (user()->currentaction === 'Exploring') {
|
||||
} elseif ($user->currentaction === 'Exploring') {
|
||||
$page = Explore::explore();
|
||||
} elseif (user()->currentaction === 'Fighting') {
|
||||
} elseif ($user->currentaction === 'Fighting') {
|
||||
redirect('/fight');
|
||||
}
|
||||
|
||||
@ -127,12 +132,12 @@ function babblebox_messages(): string
|
||||
*/
|
||||
function db(): Database
|
||||
{
|
||||
if (! is_dir($path = getcwd().'/db')) {
|
||||
if (! is_dir($path = __DIR__.'/../../db')) {
|
||||
error_log('Database folder not found at '.$path.'. Please run the installer first.');
|
||||
throw new \RuntimeException('Database folder not found. Please run the installer first.');
|
||||
throw new \RuntimeException("Database folder not found at $path. Please run the installer first.");
|
||||
}
|
||||
|
||||
return $GLOBALS['database'] ??= new Database(getcwd().'/db/database.db');
|
||||
return $GLOBALS['database'] ??= new Database($path.'/database.db');
|
||||
}
|
||||
|
||||
/**
|
||||
@ -158,7 +163,7 @@ function render(string $path_to_base_view, array $data = []): string|false
|
||||
{
|
||||
ob_start();
|
||||
extract($data);
|
||||
require __DIR__."/../templates/$path_to_base_view.php";
|
||||
require __DIR__."/../../templates/$path_to_base_view.php";
|
||||
|
||||
return ob_get_clean();
|
||||
}
|
||||
@ -676,7 +681,7 @@ function is_post(): bool
|
||||
/**
|
||||
* Get the current page title per updates. Optionally set a new title.
|
||||
*/
|
||||
function page_title(string $new_title = ''): string
|
||||
function page_title(?string $new_title = null): ?string
|
||||
{
|
||||
if ($new_title) {
|
||||
return $GLOBALS['state']['new-page-title'] = $new_title;
|
||||
|
Loading…
x
Reference in New Issue
Block a user