118 lines
3.7 KiB
PHP
118 lines
3.7 KiB
PHP
<?php
|
|
|
|
if (!defined("PHP_VERSION_ID") || PHP_VERSION_ID < 50500) {
|
|
$title = 'Unsupported PHP version';
|
|
|
|
$text =
|
|
'<p>You are using old, unsupported PHP version.</p>' .
|
|
'<p>Your PHP version: <b>' . PHP_VERSION . '</b>, required PHP version: <b>5.5.0</b>.</p>' .
|
|
'<p>Please update your PHP installation and try again.</p>';
|
|
|
|
showError($title, $text);
|
|
exit;
|
|
}
|
|
|
|
if (!function_exists("utf8_encode")) {
|
|
showExtensionMissingError("xml");
|
|
exit;
|
|
}
|
|
|
|
if (!extension_loaded("json")) {
|
|
showExtensionMissingError("json");
|
|
exit;
|
|
}
|
|
|
|
if (!extension_loaded("mbstring")) {
|
|
showExtensionMissingError("mbstring");
|
|
exit;
|
|
}
|
|
|
|
if((fileperms(__DIR__ . '/../cache') & 0777) !== 0777) {
|
|
$title = 'Cache directory is not writable';
|
|
|
|
$text =
|
|
'<p>Please make sure that the <code>cache</code> directory is fully readable, writable and executable.</p>' .
|
|
'<p>Running: <code>sudo chmod 777 -R ' . realpath(__DIR__ . '/../cache') . '</code> should fix the problem.</p>';
|
|
|
|
showError($title, $text);
|
|
exit;
|
|
}
|
|
|
|
if (!file_exists(__DIR__ . "/../config/config.php")) {
|
|
$title = 'config.php does not exists';
|
|
|
|
$text =
|
|
'<p>Please go into the directory <code>config</code> and rename <code>config.template.php</code> to <code>config.php</code>.</p>' .
|
|
'<p>Edit the new file and tweak it to suite your needs.</p>';
|
|
|
|
showError($title, $text);
|
|
exit;
|
|
}
|
|
|
|
|
|
|
|
// FUNCTION
|
|
|
|
function showExtensionMissingError($extension_name) {
|
|
$title = 'Required extension "' . $extension_name . '" is missing';
|
|
|
|
$text =
|
|
'<p>Required PHP extension <code>' . $extension_name . '</code> is missing or is not loaded.</p>' .
|
|
'<p>Install it and restart your server. Usually running <code>sudo apt-get install php-' . $extension_name . '</code> should be enough.</p>' .
|
|
'<p>If you still get this error, try restarting your web server and <code>php-fpm</code> service or just reboot your machine</p>' .
|
|
'<p>If you are using Web Hosting service, please contact their support for instructions on enabling <code>' . $extension_name . '</code> extension</p>';
|
|
|
|
showError($title, $text);
|
|
}
|
|
|
|
function showError($title, $text) { ?>
|
|
<!DOCTYPE html>
|
|
<html lang="en">
|
|
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
|
|
<meta name="author" content="Wruczek">
|
|
|
|
<title><?php echo $title ?></title>
|
|
|
|
<!-- Icon -->
|
|
<link rel="shortcut icon" href="https://assets-cdn.github.com/images/icons/emoji/unicode/26a0.png">
|
|
|
|
<!-- Twitter Bootstrap -->
|
|
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootswatch/3.3.7/superhero/bootstrap.min.css" rel="stylesheet">
|
|
|
|
<!--[if IE]>
|
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv.min.js"></script>
|
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/respond.js/1.4.2/respond.min.js"></script>
|
|
<![endif]-->
|
|
|
|
<style>
|
|
body { margin-top: 70px }
|
|
</style>
|
|
</head>
|
|
|
|
<body>
|
|
<div class="container">
|
|
|
|
<div class="panel panel-default">
|
|
<div class="panel-heading">
|
|
<h3 class="panel-title"><img src="https://assets-cdn.github.com/images/icons/emoji/unicode/26a0.png" width="20px" alt="Error"> <?php echo $title ?></h3>
|
|
</div>
|
|
<div class="panel-body">
|
|
<?php echo $text ?>
|
|
</div>
|
|
<div class="panel-footer">
|
|
© <a href="https://wruczek.tech">Wruczek</a> 2016 - 2018 | <a href="https://github.com/Wruczek/ts-website">ts-website</a> v 1.4.5 | MIT License
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
<!-- /container -->
|
|
</body>
|
|
|
|
</html>
|
|
<?php }
|