'warning'=>lang('safe_mode is turned on, which is generaly a good thing as it makes your install more secure.')."\n".
lang('If safe_mode is turned on, eGW is not able to change certain settings on runtime, nor can we load any not yet loaded module.')."\n".
lang('*** You have to do the changes manualy in your php.ini (usualy in /etc on linux) in order to get eGW fully working !!!')."\n".
lang('*** Do NOT update your database via setup, as the update might be interrupted by the max_execution_time, which leaves your DB in an unrecoverable state (your data is lost) !!!')
),
'magic_quotes_runtime'=>array(
'func'=>'php_ini_check',
'value'=>0,
'verbose_value'=>'Off',
'safe_mode'=>'magic_quotes_runtime = Off'
),
'register_globals'=>array(
'func'=>'php_ini_check',
'value'=>0,
'verbose_value'=>'Off',
'warning'=>lang("register_globals is turned On, eGroupWare does NOT require it and it's generaly more secure to have it turned Off")
),
'display_errors'=>array(
'func'=>'php_ini_check',
'value'=>0,
'verbose_value'=>'Off',
'warning'=>lang('%1 is set to %2. This is NOT recommeded for a production system, as displayed error messages can contain passwords or other sensitive information!','display_errors',ini_get('display_errors')),
),
'memory_limit'=>array(
'func'=>'php_ini_check',
'value'=>'24M',
'check'=>'>=',
'error'=>lang('memory_limit is set to less than %1: some applications of eGroupWare need more than the recommend 8M, expect occasional failures','24M'),
'change'=>'memory_limit = 24M'
),
'max_execution_time'=>array(
'func'=>'php_ini_check',
'value'=>30,
'check'=>'>=',
'error'=>lang('max_execution_time is set to less than 30 (seconds): eGroupWare sometimes needs a higher execution_time, expect occasional failures'),
'safe_mode'=>'max_execution_time = 30'
),
'file_uploads'=>array(
'func'=>'php_ini_check',
'value'=>1,
'verbose_value'=>'On',
'error'=>lang('File uploads are switched off: You can NOT use any of the filemanagers, nor can you attach files in several applications!'),
),
'upload_max_filesize'=>array(
'func'=>'php_ini_check',
'value'=>'8M',
'check'=>'>=',
'error'=>lang('%1 is set to %2, you will NOT be able to upload or attach files bigger then that!','upload_max_filesize',ini_get('upload_max_filesize')),
'change'=>'upload_max_filesize = 8M'
),
'post_max_size'=>array(
'func'=>'php_ini_check',
'value'=>'8M',
'check'=>'>=',
'error'=>lang('%1 is set to %2, you will NOT be able to upload or attach files bigger then that!','post_max_size',ini_get('max_post_size')),
'change'=>'post_max_size = 8M'
),
'session'=>array(
'func'=>'extension_check',
'error'=>lang('The session extension is required!')
),
'include_path'=>array(
'func'=>'php_ini_check',
'value'=>'.',
'check'=>'contain',
'error'=>lang('include_path need to contain "." - the current directory'),
'error'=>lang('No VALID timezone set! ("%1" is NOT sufficient, you have to use a timezone identifer like "%2", see %3full list of valid identifers%4)',
'error'=>lang('The PDO extension plus a database specific driver is needed by the VFS (virtual file system)!'),
),
'mysql'=>array(
'func'=>'extension_check',
'warning'=>lang('The %1 extension is needed, if you plan to use a %2 database.','mysql','MySQL')
),
'pdo_mysql'=>array(
'func'=>'extension_check',
'warning'=>lang('The %1 extension is needed, if you plan to use a %2 database.','pdo_mysql','MySQL')
),
'pgsql'=>array(
'func'=>'extension_check',
'warning'=>lang('The %1 extension is needed, if you plan to use a %2 database.','pgsql','pgSQL')
),
'pdo_pgsql'=>array(
'func'=>'extension_check',
'warning'=>lang('The %1 extension is needed, if you plan to use a %2 database.','pdo_pgsql','pgSQL')
),
'mssql'=>array(
'func'=>'extension_check',
'warning'=>lang('The %1 extension is needed, if you plan to use a %2 database.','mssql','MsSQL'),
'win_only'=>True
),
'pdo_dblib'=>array(
'func'=>'extension_check',
'warning'=>lang('The %1 extension is needed, if you plan to use a %2 database.','pdo_dblib','MsSQL'),
'win_only'=>True
),
'odbc'=>array(
'func'=>'extension_check',
'warning'=>lang('The %1 extension is needed, if you plan to use a %2 database.','odbc','MaxDB, MsSQL or Oracle'),
),
'pdo_odbc'=>array(
'func'=>'extension_check',
'warning'=>lang('The %1 extension is needed, if you plan to use a %2 database.','pdo_odbc','MaxDB, MsSQL or Oracle'),
),
'oci8'=>array(
'func'=>'extension_check',
'warning'=>lang('The %1 extension is needed, if you plan to use a %2 database.','oci','Oracle'),
),
'pdo_oci'=>array(
'func'=>'extension_check',
'warning'=>lang('The %1 extension is needed, if you plan to use a %2 database.','pdo_oci','Oracle'),
),
'mbstring'=>array(
'func'=>'extension_check',
'warning'=>lang('The mbstring extension is needed to fully support unicode (utf-8) or other multibyte-charsets.')
),
'mbstring.func_overload'=>array(
'func'=>'php_ini_check',
'value'=>7,
'warning'=>'<div class="setup_info">'.lang('The mbstring.func_overload = 7 is needed to fully support unicode (utf-8) or other multibyte-charsets.')."</div>",
'warning'=>lang("The ldap extension is needed, if you use ldap as account or contact storage, authenticate against ldap or active directory. It's not needed for a standard SQL installation."),
),
''=>array(
'func'=>'pear_check',
'error'=>lang('PEAR extensions are required by many eGroupware applications, PEAR itself is the required basis for each extension!'),
),
'HTTP_WebDAV_Server'=>array(
'func'=>'pear_check',
'from'=>'WebDAV',
),
realpath('..')=>array(
'func'=>'permission_check',
'is_world_writable'=>False,
'only_if_exists'=>true,// quitens "file does not exist" for doc symlinks in Debian to files outside open_basedir
// we check for the existens of 'dl', as multithreaded webservers dont have it !!!
$available=check_load_extension($name);
echo'<div>'.($available?$passed_icon:$warning_icon).' <span'.($available?'':' class="setup_warning"').'>'.lang('Checking extension %1 is loaded or loadable',$name).': '.($available?lang('True'):lang('False'))."</span></div>\n";
if(!$available)
{
if(!isset($args['warning']))
{
$args['warning']=lang('The %1 extension is needed from: %2.',$name,
echo'<div>'.$error_icon.' <span class="setup_error">'.$msg.' '.lang('%1 is %2%3 !!!',$rel_name,$args['is_writable']?lang('not').' ':'',lang('writable by the webserver')).$extra_error_msg."</span></div>\n";
echo'<div>'.$error_icon.' <span class="setup_error">'.$msg.' '.lang('%1 is %2%3 !!!',$rel_name,$args['is_readable']?lang('not').' ':'',lang('readable by the webserver')).$extra_error_msg."</span></div>\n";
echo'*** '.lang('Please make the following change in your php.ini').' ('.get_php_ini().'): '.(@$args['safe_mode']?$args['safe_mode']:$args['change'])."<br />\n";
echo'*** '.lang('AND reload your webserver, so the above changes take effect !!!')."</div>\n";
echo"<br />\n".lang('You dont have JPGraph version %1 or higher installed! It is needed from ProjectManager for Ganttcharts.',$min_version)."<br />\n";
echolang('Please download a recent version from %1 and install it as %2.',
echo"<div>".($available?$passed_icon:$warning_icon).' <span'.($available?'':' class="setup_warning"').'>'.lang('Checking for GD support...').': '.($available?lang('True'):lang('False'))."</span></div>\n";
if(!$available)
{
echolang('Your PHP installation does not have appropriate GD support. You need gd library version 1.8 or newer to see Gantt charts in projects.')."\n";
echo'<p>'.lang('The first step in installing eGroupWare is to ensure your environment has the necessary settings to correctly run the application.').'</p>';
echo'<p>'.lang('We will now run a series of tests, which may take a few minutes. Click the link below to proceed.').'</p>';
echo'<p><a href="manageheader.php">'.lang('Skip the installation tests (not recommended)')."</a></p>\n";
$setup_tpl->pparse('out','T_footer');
exit;
}else{
$GLOBALS['egw_setup']->html->show_header(lang('Checking the eGroupWare Installation'),False,'config',$ConfigDomain?$ConfigDomain.'('.@$GLOBALS['egw_domain'][$ConfigDomain]['db_type'].')':'');
echo'<h1>'.lang('Checking the eGroupWare Installation')."</h1>\n";