mirror of
https://gitlab.com/davical-project/davical.git
synced 2026-05-20 01:44:15 +00:00
Check for some supported stuff very early so we can show it is missing.
This commit is contained in:
parent
7f63f12e57
commit
f77ac0fab4
@ -1,4 +1,51 @@
|
|||||||
<?php
|
<?php
|
||||||
|
/** @TODO: work out something more than true/false returns for dependency checks */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* We put many of these checks before we even try to load always.php so that we
|
||||||
|
* can try and do some diagnostic work to ensure it will load OK.
|
||||||
|
*/
|
||||||
|
function check_pgsql() {
|
||||||
|
return function_exists('pg_connect');
|
||||||
|
}
|
||||||
|
|
||||||
|
function check_pdo() {
|
||||||
|
return class_exists('PDO');
|
||||||
|
}
|
||||||
|
|
||||||
|
function check_pdo_pgsql() {
|
||||||
|
global $loaded_extensions;
|
||||||
|
|
||||||
|
if ( !check_pdo() ) return false;
|
||||||
|
return isset($loaded_extensions['pdo_pgsql']);
|
||||||
|
}
|
||||||
|
|
||||||
|
function check_gettext() {
|
||||||
|
global $phpinfo, $loaded_extensions;
|
||||||
|
|
||||||
|
if ( !function_exists('gettext') ) return false;
|
||||||
|
return isset($loaded_extensions['gettext']);
|
||||||
|
}
|
||||||
|
|
||||||
|
function check_suhosin_server_strip() {
|
||||||
|
global $loaded_extensions;
|
||||||
|
|
||||||
|
if ( !isset($loaded_extensions['suhosin']) ) return true;
|
||||||
|
if ( ini_get('suhosin.server.strip') == "0" ) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function do_error( $errormessage ) {
|
||||||
|
printf("<p class='error'>%s</p>", $errormessage );
|
||||||
|
}
|
||||||
|
$loaded_extensions = array_flip(get_loaded_extensions());
|
||||||
|
if ( !check_pgsql() ) do_error("PHP 'pgsql' functions are not available" );
|
||||||
|
if ( !check_pdo() ) do_error("PHP 'PDO' module is not available" );
|
||||||
|
if ( !check_pdo_pgsql() ) do_error("The PDO drivers for PostgreSQL are not available" );
|
||||||
|
|
||||||
|
|
||||||
include("./always.php");
|
include("./always.php");
|
||||||
include("DAViCalSession.php");
|
include("DAViCalSession.php");
|
||||||
@ -11,45 +58,11 @@ ob_end_clean( );
|
|||||||
$phpinfo = preg_replace( '{^.*?<body>}s', '', $phpinfo);
|
$phpinfo = preg_replace( '{^.*?<body>}s', '', $phpinfo);
|
||||||
$phpinfo = preg_replace( '{</body>.*?$}s', '', $phpinfo);
|
$phpinfo = preg_replace( '{</body>.*?$}s', '', $phpinfo);
|
||||||
|
|
||||||
$loaded_extensions = array_flip(get_loaded_extensions());
|
|
||||||
|
|
||||||
/** @TODO: work out something more than true/false returns for dependency checks */
|
|
||||||
function check_pgsql() {
|
|
||||||
return function_exists('pg_connect');
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( check_pgsql() ) {
|
if ( check_pgsql() ) {
|
||||||
$session->LoginRequired( (isset($c->restrict_setup_to_admin) && $c->restrict_setup_to_admin ? 'Admin' : null ) );
|
$session->LoginRequired( (isset($c->restrict_setup_to_admin) && $c->restrict_setup_to_admin ? 'Admin' : null ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
function check_pdo() {
|
|
||||||
return class_exists('PDO');
|
|
||||||
}
|
|
||||||
|
|
||||||
function check_pdo_pgsql() {
|
|
||||||
global $phpinfo, $loaded_extensions;
|
|
||||||
|
|
||||||
if ( !class_exists('PDO') ) return false;
|
|
||||||
return isset($loaded_extensions['pdo_pgsql']);
|
|
||||||
}
|
|
||||||
|
|
||||||
function check_gettext() {
|
|
||||||
global $phpinfo, $loaded_extensions;
|
|
||||||
|
|
||||||
if ( !function_exists('gettext') ) return false;
|
|
||||||
return isset($loaded_extensions['gettext']);
|
|
||||||
}
|
|
||||||
|
|
||||||
function check_suhosin_server_strip() {
|
|
||||||
global $phpinfo, $loaded_extensions;
|
|
||||||
|
|
||||||
if ( !isset($loaded_extensions['suhosin']) ) return true;
|
|
||||||
if ( ini_get('suhosin.server.strip') == "0" ) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
include("interactive-page.php");
|
include("interactive-page.php");
|
||||||
include("page-header.php");
|
include("page-header.php");
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user