Allow to change the where VFS stores the content of files:

1. filesystem (default)
2. database (problems with files > 1mb)
3. custome set via filemanager/cli.php mount
--> If you can only access the docroot, you can use 2. AND set the files
directory to the path for temp. files
This commit is contained in:
Ralf Becker 2008-10-02 15:30:44 +00:00
parent 8d7c57e253
commit 9e3281799f
5 changed files with 427 additions and 374 deletions

View File

@ -1,207 +1,244 @@
<?php
/**************************************************************************\
* eGroupWare *
* http://www.egroupware.org *
* Written by Miles Lott <milos@groupwhere.org> *
* ------------------------------------------------------------------------ *
* This program is free software; you can redistribute it and/or modify it *
* under the terms of the GNU General Public License as published by the *
* Free Software Foundation; either version 2 of the License, or (at your *
* option) any later version. *
\**************************************************************************/
/**
* Setup
*
* @link http://www.egroupware.org
* @package setup
* @author Miles Lott <milos@groupwhere.org>
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @version $Id$
*/
/* $Id$ */
function encryptalgo($config)
/**
* Get the options for vfs_storage_mode, select the right one depending on vfs_fstab
*
* @param array $config
* @return string
*/
function vfs_storage_mode_options($config)
{
if (!isset($config['vfs_fstab']) || $config['vfs_fstab'] == serialize(array(
'/' => 'sqlfs://$host/',
'/apps' => 'links://$host/apps',
)))
{
if(@function_exists('mcrypt_list_algorithms'))
$config['vfs_storage_mode'] = 'fs';
}
elseif($config['vfs_fstab'] == serialize(array(
'/' => 'sqlfs://$host/?storage=db',
'/apps' => 'links://$host/apps?storage=db',
)))
{
$config['vfs_storage_mode'] = 'db';
}
else
{
$config['vfs_storage_mode'] = 'custom';
}
//_debug_array(array_intersect_key($config,array('vfs_fstab'=>1,'vfs_storage_mode'=>1)));
foreach(array(
'fs' => lang('Filesystem (default)'),
'db' => lang('Database').' (problems with files > 1MB)',
'custom' => lang('Custom set via %1','filemanager/cli.php mount'),
) as $name => $label)
{
$options .= '<option value="'.$name.($name === $config['vfs_storage_mode'] ? '" selected="selected' : '').
'">'.htmlspecialchars($label)."</options>\n";
}
//echo "<pre>".htmlspecialchars($options)."</pre>\n";
return $options;
}
function encryptalgo($config)
{
if(@function_exists('mcrypt_list_algorithms'))
{
$listed = array();
if(!isset($config['mcrypt_algo']))
{
$listed = array();
if(!isset($config['mcrypt_algo']))
{
$config['mcrypt_algo'] = 'tripledes'; /* MCRYPT_TRIPLEDES */
}
$algos = @mcrypt_list_algorithms();
$found = False;
$config['mcrypt_algo'] = 'tripledes'; /* MCRYPT_TRIPLEDES */
}
$algos = @mcrypt_list_algorithms();
$found = False;
$out = '';
while(list($key,$value) = each($algos))
$out = '';
while(list($key,$value) = each($algos))
{
$found = True;
/* Only show each once - seems this is a problem in some installs */
if(!in_array($value,$listed))
{
$found = True;
/* Only show each once - seems this is a problem in some installs */
if(!in_array($value,$listed))
if($config['mcrypt_algo'] == $value)
{
if($config['mcrypt_algo'] == $value)
{
$selected = ' selected="selected"';
}
else
{
$selected = '';
}
$descr = strtoupper($value);
$out .= '<option value="' . $value . '"' . $selected . '>' . $descr . '</option>' . "\n";
$listed[] = $value;
$selected = ' selected="selected"';
}
else
{
$selected = '';
}
$descr = strtoupper($value);
$out .= '<option value="' . $value . '"' . $selected . '>' . $descr . '</option>' . "\n";
$listed[] = $value;
}
if(!$found)
}
if(!$found)
{
/* Something is wrong with their mcrypt install or php.ini */
$out = '<option value="">' . lang('no algorithms available') . '</option>' . "\n";;
}
}
else
{
$out = '<option value="tripledes">TRIPLEDES</option>' . "\n";;
}
return $out;
}
function encryptmode($config)
{
if(@function_exists('mcrypt_list_modes'))
{
$listed = array();
if(!isset($config['mcrypt_mode']))
{
$config['mcrypt_mode'] = 'cbc'; /* MCRYPT_MODE_CBC */
}
$modes = @mcrypt_list_modes();
$found = False;
$out = '';
while(list($key,$value) = each($modes))
{
$found = True;
/* Only show each once - seems this is a problem in some installs */
if(!in_array($value,$listed))
{
/* Something is wrong with their mcrypt install or php.ini */
$out = '<option value="">' . lang('no algorithms available') . '</option>' . "\n";;
if($config['mcrypt_mode'] == $value)
{
$selected = ' selected="selected"';
}
else
{
$selected = '';
}
$descr = strtoupper($value);
$out .= '<option value="' . $value . '"' . $selected . '>' . $descr . '</option>' . "\n";
$listed[] = $value;
}
}
if(!$found)
{
/* Something is wrong with their mcrypt install or php.ini */
$out = '<option value="" selected="selected">' . lang('no modes available') . '</option>' . "\n";
}
}
else
{
$out = '<option value="cbc" selected="selected">CBC</option>' . "\n";
}
return $out;
}
function passwdhashes($config)
{
$hashes = array(
'des' => 'des',
'md5' => 'md5'
);
if(@function_exists('mhash'))
{
$hashes += array(
'smd5' => 'smd5',
'sha' => 'sha',
'ssha' => 'ssha'
);
}
$hashes += array(
'plain' => 'plain',
);
/* Check for available crypt methods based on what is defined by php */
if(@defined('CRYPT_BLOWFISH') && CRYPT_BLOWFISH == 1)
{
$hashes['blowish_crypt'] = 'blowish_crypt';
}
if(@defined('CRYPT_MD5') && CRYPT_MD5 == 1)
{
$hashes['md5_crypt'] = 'md5_crypt';
}
if(@defined('CRYPT_EXT_DES') && CRYPT_EXT_DES == 1)
{
$hashes['ext_crypt'] = 'ext_crypt';
}
while(list($key, $value) = each($hashes))
{
if($config['ldap_encryption_type'] == $value)
{
$selected = ' selected="selected"';
}
else
{
$out = '<option value="tripledes">TRIPLEDES</option>' . "\n";;
$selected = '';
}
return $out;
$descr = strtoupper($value);
$out .= '<option value="' . $value . '"' . $selected . '>' . $descr . '</option>' . "\n";
}
return $out;
}
function sql_passwdhashes($config)
{
$hashes = array(
'md5' => 'md5'
);
/* Check for available crypt methods based on what is defined by php */
if(@defined('CRYPT_BLOWFISH') && CRYPT_BLOWFISH == 1)
{
$hashes['blowish_crypt'] = 'blowish_crypt';
}
if(@defined('CRYPT_MD5') && CRYPT_MD5 == 1)
{
$hashes['md5_crypt'] = 'md5_crypt';
}
if(@defined('CRYPT_EXT_DES') && CRYPT_EXT_DES == 1)
{
$hashes['ext_crypt'] = 'ext_crypt';
}
if(@defined('CRYPT_STD_DES') && CRYPT_STD_DES == 1)
{
$hashes['crypt'] = 'crypt';
}
function encryptmode($config)
if(@function_exists('mhash'))
{
if(@function_exists('mcrypt_list_modes'))
$hashes += array(
'smd5' => 'smd5',
'sha' => 'sha',
'ssha' => 'ssha'
);
}
$hashes += array(
'plain' => 'plain',
);
while(list($key, $value) = each($hashes))
{
if($config['sql_encryption_type'] == $value)
{
$listed = array();
if(!isset($config['mcrypt_mode']))
{
$config['mcrypt_mode'] = 'cbc'; /* MCRYPT_MODE_CBC */
}
$modes = @mcrypt_list_modes();
$found = False;
$out = '';
while(list($key,$value) = each($modes))
{
$found = True;
/* Only show each once - seems this is a problem in some installs */
if(!in_array($value,$listed))
{
if($config['mcrypt_mode'] == $value)
{
$selected = ' selected="selected"';
}
else
{
$selected = '';
}
$descr = strtoupper($value);
$out .= '<option value="' . $value . '"' . $selected . '>' . $descr . '</option>' . "\n";
$listed[] = $value;
}
}
if(!$found)
{
/* Something is wrong with their mcrypt install or php.ini */
$out = '<option value="" selected="selected">' . lang('no modes available') . '</option>' . "\n";
}
$selected = ' selected="selected"';
}
else
{
$out = '<option value="cbc" selected="selected">CBC</option>' . "\n";
$selected = '';
}
return $out;
$descr = strtoupper($value);
$out .= '<option value="' . $value . '"' . $selected . '>' . $descr . '</option>' . "\n";
}
function passwdhashes($config)
{
$hashes = array(
'des' => 'des',
'md5' => 'md5'
);
if(@function_exists('mhash'))
{
$hashes += array(
'smd5' => 'smd5',
'sha' => 'sha',
'ssha' => 'ssha'
);
}
$hashes += array(
'plain' => 'plain',
);
/* Check for available crypt methods based on what is defined by php */
if(@defined('CRYPT_BLOWFISH') && CRYPT_BLOWFISH == 1)
{
$hashes['blowish_crypt'] = 'blowish_crypt';
}
if(@defined('CRYPT_MD5') && CRYPT_MD5 == 1)
{
$hashes['md5_crypt'] = 'md5_crypt';
}
if(@defined('CRYPT_EXT_DES') && CRYPT_EXT_DES == 1)
{
$hashes['ext_crypt'] = 'ext_crypt';
}
while(list($key, $value) = each($hashes))
{
if($config['ldap_encryption_type'] == $value)
{
$selected = ' selected="selected"';
}
else
{
$selected = '';
}
$descr = strtoupper($value);
$out .= '<option value="' . $value . '"' . $selected . '>' . $descr . '</option>' . "\n";
}
return $out;
}
function sql_passwdhashes($config)
{
$hashes = array(
'md5' => 'md5'
);
/* Check for available crypt methods based on what is defined by php */
if(@defined('CRYPT_BLOWFISH') && CRYPT_BLOWFISH == 1)
{
$hashes['blowish_crypt'] = 'blowish_crypt';
}
if(@defined('CRYPT_MD5') && CRYPT_MD5 == 1)
{
$hashes['md5_crypt'] = 'md5_crypt';
}
if(@defined('CRYPT_EXT_DES') && CRYPT_EXT_DES == 1)
{
$hashes['ext_crypt'] = 'ext_crypt';
}
if(@defined('CRYPT_STD_DES') && CRYPT_STD_DES == 1)
{
$hashes['crypt'] = 'crypt';
}
if(@function_exists('mhash'))
{
$hashes += array(
'smd5' => 'smd5',
'sha' => 'sha',
'ssha' => 'ssha'
);
}
$hashes += array(
'plain' => 'plain',
);
while(list($key, $value) = each($hashes))
{
if($config['sql_encryption_type'] == $value)
{
$selected = ' selected="selected"';
}
else
{
$selected = '';
}
$descr = strtoupper($value);
$out .= '<option value="' . $value . '"' . $selected . '>' . $descr . '</option>' . "\n";
}
return $out;
}
?>
return $out;
}

View File

@ -1,163 +1,182 @@
<?php
/**************************************************************************\
* eGroupWare *
* http://www.egroupware.org *
* Written by Miles Lott <milos@groupwhere.org> *
* ------------------------------------------------------------------------ *
* This program is free software; you can redistribute it and/or modify it *
* under the terms of the GNU General Public License as published by the *
* Free Software Foundation; either version 2 of the License, or (at your *
* option) any later version. *
\**************************************************************************/
/**
* Setup
*
* @link http://www.egroupware.org
* @package setup
* @author Miles Lott <milos@groupwhere.org>
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @version $Id$
*/
/* $Id$ */
/*
Set a global flag to indicate this file was found by setup/config.php.
config.php will unset it after parsing the form values.
*/
$GLOBALS['egw_info']['server']['found_validation_hook'] = True;
/*
Set a global flag to indicate this file was found by setup/config.php.
config.php will unset it after parsing the form values.
*/
$GLOBALS['egw_info']['server']['found_validation_hook'] = True;
function mail_server($settings)
/**
* Set vfs_fstab depending from what the user selected for vfs_storage_mode
*
* @param array $settings
*/
function vfs_storage_mode($settings)
{
switch($settings['vfs_storage_mode'])
{
if (!$settings['mail_server'] || !$settings['mail_server_type'] || !$settings['smtp_server'])
case 'fs':
config::save_value('vfs_fstab','','phpgwapi');
break;
case 'db':
config::save_value('vfs_fstab',serialize(array(
'/' => 'sqlfs://$host/?storage=db',
'/apps' => 'links://$host/apps?storage=db',
)),'phpgwapi');
break;
}
}
function mail_server($settings)
{
if (!$settings['mail_server'] || !$settings['mail_server_type'] || !$settings['smtp_server'])
{
$GLOBALS['config_error'] = lang('Missing or uncomplete mailserver configuration');
}
if (@file_exists('../emailadmin/inc/class.emailadmin_bo.inc.php') && $GLOBALS['egw_setup']->table_exist(array('egw_emailadmin')) || true)
{
$emailadmin = new emailadmin_bo(-1,false); // false=no session stuff
if (is_object($emailadmin))
{
$GLOBALS['config_error'] = lang('Missing or uncomplete mailserver configuration');
}
if (@file_exists('../emailadmin/inc/class.emailadmin_bo.inc.php') && $GLOBALS['egw_setup']->table_exist(array('egw_emailadmin')) || true)
{
$emailadmin = new emailadmin_bo(-1,false); // false=no session stuff
if (is_object($emailadmin))
{
$emailadmin->setDefaultProfile($settings);
}
$emailadmin->setDefaultProfile($settings);
}
}
}
function temp_dir($settings)
function temp_dir($settings)
{
if (!setup_detection::check_dir($settings['temp_dir'],$error_msg))
{
if (!setup_detection::check_dir($settings['temp_dir'],$error_msg))
{
$GLOBALS['config_error'] = lang("Your temporary directory '%1' %2",$settings['temp_dir'],$error_msg);
}
$GLOBALS['config_error'] = lang("Your temporary directory '%1' %2",$settings['temp_dir'],$error_msg);
}
}
function files_dir($settings)
function files_dir($settings)
{
if ($settings['file_repository'] == 'sql' && $settings['file_store_contents'] == 'filesystem' &&
!setup_detection::check_dir($settings['files_dir'],$error_msg,true))
{
if ($settings['file_repository'] == 'sql' && $settings['file_store_contents'] == 'filesystem' &&
!setup_detection::check_dir($settings['files_dir'],$error_msg,true))
{
$GLOBALS['config_error'] = lang("Your files directory '%1' %2",$settings['files_dir'],$error_msg);
}
$GLOBALS['config_error'] = lang("Your files directory '%1' %2",$settings['files_dir'],$error_msg);
}
}
function backup_dir(&$settings)
function backup_dir(&$settings)
{
if (@is_writeable($settings['files_dir']) && !$settings['backup_dir'] && $settings['file_store_contents'] == 'filesystem')
{
if (@is_writeable($settings['files_dir']) && !$settings['backup_dir'] && $settings['file_store_contents'] == 'filesystem')
{
$settings['backup_dir'] = $settings['files_dir'].'/db_backup';
}
if (!setup_detection::check_dir($settings['backup_dir'],$error_msg,true))
{
$GLOBALS['config_error'] = lang("Your backup directory '%1' %2",$settings['backup_dir'],$error_msg);
}
$settings['backup_dir'] = $settings['files_dir'].'/db_backup';
}
function _mcrypt_test_module_mode($module,$mode)
if (!setup_detection::check_dir($settings['backup_dir'],$error_msg,true))
{
/* Data */
$key = 'this is a very long key, even too long for the cipher';
$plain_text = 'very important data';
$GLOBALS['config_error'] = lang("Your backup directory '%1' %2",$settings['backup_dir'],$error_msg);
}
}
/* Open module, and create IV */
if(!$GLOBALS['td'] = @mcrypt_module_open($module, '',$mode, ''))
{
@mcrypt_module_close($GLOBALS['td']);
return False;
}
function _mcrypt_test_module_mode($module,$mode)
{
/* Data */
$key = 'this is a very long key, even too long for the cipher';
$plain_text = 'very important data';
/* Open module, and create IV */
if(!$GLOBALS['td'] = @mcrypt_module_open($module, '',$mode, ''))
{
@mcrypt_module_close($GLOBALS['td']);
return False;
}
$key = substr($key, 0, mcrypt_enc_get_key_size($GLOBALS['td']));
$iv_size = mcrypt_enc_get_iv_size($GLOBALS['td']);
$iv = @mcrypt_create_iv($iv_size, MCRYPT_RAND);
/* Initialize encryption handle */
if(mcrypt_generic_init($GLOBALS['td'], $key, $iv) != -1)
{
/* Encrypt data */
$c_t = mcrypt_generic($GLOBALS['td'], $plain_text);
mcrypt_generic_deinit($GLOBALS['td']);
// close the module
mcrypt_module_close($GLOBALS['td']);
/* Reinitialize buffers for decryption */
/* Open module */
$GLOBALS['td'] = mcrypt_module_open($module, '', $mode, '');
$key = substr($key, 0, mcrypt_enc_get_key_size($GLOBALS['td']));
$iv_size = mcrypt_enc_get_iv_size($GLOBALS['td']);
$iv = @mcrypt_create_iv($iv_size, MCRYPT_RAND);
/* Initialize encryption handle */
if(mcrypt_generic_init($GLOBALS['td'], $key, $iv) != -1)
{
/* Encrypt data */
$c_t = mcrypt_generic($GLOBALS['td'], $plain_text);
mcrypt_generic_deinit($GLOBALS['td']);
mcrypt_generic_init($GLOBALS['td'], $key, $iv);
$p_t = mdecrypt_generic($GLOBALS['td'], $c_t);
// close the module
mcrypt_module_close($GLOBALS['td']);
/* Reinitialize buffers for decryption */
/* Open module */
$GLOBALS['td'] = mcrypt_module_open($module, '', $mode, '');
$key = substr($key, 0, mcrypt_enc_get_key_size($GLOBALS['td']));
mcrypt_generic_init($GLOBALS['td'], $key, $iv);
$p_t = mdecrypt_generic($GLOBALS['td'], $c_t);
/* Clean up */
mcrypt_generic_deinit($GLOBALS['td']);
mcrypt_module_close($GLOBALS['td']);
}
else
{
@mcrypt_module_close($GLOBALS['td']);
}
return rtrim($p_t) === $plain_text;
/* Clean up */
mcrypt_generic_deinit($GLOBALS['td']);
mcrypt_module_close($GLOBALS['td']);
}
/* run a self-test through every listed cipher and mode - from robert at peakepro dot com (php.net manual) */
function mcrypt_check_sanity()
else
{
$modes = mcrypt_list_modes();
$algorithms = mcrypt_list_algorithms();
@mcrypt_module_close($GLOBALS['td']);
}
return rtrim($p_t) === $plain_text;
}
foreach($algorithms as $cipher)
/* run a self-test through every listed cipher and mode - from robert at peakepro dot com (php.net manual) */
function mcrypt_check_sanity()
{
$modes = mcrypt_list_modes();
$algorithms = mcrypt_list_algorithms();
foreach($algorithms as $cipher)
{
if(mcrypt_module_self_test($cipher))
{
if(mcrypt_module_self_test($cipher))
$GLOBALS['ciphers'][$cipher] = array();
foreach($modes as $mode)
{
$GLOBALS['ciphers'][$cipher] = array();
foreach($modes as $mode)
if(_mcrypt_test_module_mode($cipher,$mode))
{
if(_mcrypt_test_module_mode($cipher,$mode))
{
$result = True;
}
else
{
$result = False;
}
@$GLOBALS['ciphers'][$cipher][$mode] = $result;
$result = True;
}
else
{
$result = False;
}
@$GLOBALS['ciphers'][$cipher][$mode] = $result;
}
}
ksort($GLOBALS['ciphers']);
/* _debug_array($GLOBALS['ciphers']); */
}
ksort($GLOBALS['ciphers']);
/* _debug_array($GLOBALS['ciphers']); */
}
function mcrypt_algo($settings)
function mcrypt_algo($settings)
{
/* _debug_array($settings);exit; */
if(@function_exists('mcrypt_list_modes'))
{
/* _debug_array($settings);exit; */
if(@function_exists('mcrypt_list_modes'))
mcrypt_check_sanity();
if(!@$GLOBALS['ciphers'][$settings['mcrypt_algo']][$settings['mcrypt_mode']])
{
mcrypt_check_sanity();
if(!@$GLOBALS['ciphers'][$settings['mcrypt_algo']][$settings['mcrypt_mode']])
{
$GLOBALS['config_error'] = lang('Invalid Mcrypt Algorithm/Mode combination');
}
$GLOBALS['config_error'] = lang('Invalid Mcrypt Algorithm/Mode combination');
}
}
}
/**
* Add bracket around the ldap_search_filter, if admin forgot it
*
* @param array $settings
*/
function ldap_search_filter(&$settings)
{
$filter =& $settings['ldap_search_filter'];
/**
* Add bracket around the ldap_search_filter, if admin forgot it
*
* @param array $settings
*/
function ldap_search_filter(&$settings)
{
$filter =& $settings['ldap_search_filter'];
if ($filter && $filter{0} != '(') $filter = '('.$filter.')';
}
if ($filter && $filter{0} != '(') $filter = '('.$filter.')';
}

View File

@ -169,6 +169,7 @@ current system-charset setup de Aktueller Systemzeichensatz
current system-charset is %1. setup de Aktueller Systemzeichensatz ist %1.
current version setup de Gegenwärtige Version
currently installed languages: %1 <br /> setup de Gegenwärtig installierte Sprachen: %1 <br />
custom set via %1 setup de Benutzerdefiniert über "%1" gesetzt
cyrus imap: admin user,password setup de Cyrus IMAP: Adminbenutzer,Passwort
database setup de Datenbank
database instance (egw domain) setup de Datenbankinstanz (eGW Domain)
@ -212,6 +213,7 @@ domain(all),[config user(admin)],password,[file-name(default: backup-dir/db_back
domain(default),[config user(admin)],password,[backup to install],[charset(default depends on language)] setup de Domain(default),[Konfigurationsbenutzer(admin)],Passwort,[Backupdatei],[Zeichensatz(Vorgabe sprachabhänig)]
domain(default),[config user(admin)],password,[name=value,...] sets config values beside: setup de Domain(default),[Konfigurationsbenutzer(admin)],Passwort,[Name=Wert,...] setzt Konfigurationswerte neben:
domain-name setup de Domainname
don't change, if you already stored files! you will loose them! setup de Nicht ändern, wenn Sie bereits Dateien gespeichert haben! Sie werden Sie verlieren!
dont touch my data setup de Meine Daten nicht verändern
download setup de Herunterladen
edit current configuration setup de Gegenwärtige Konfiguration überarbeiten
@ -257,6 +259,7 @@ file type, size, version, etc. setup de Dateityp, Größe, Version usw.
file uploads are switched off: you can not use any of the filemanagers, nor can you attach files in several applications! setup de Dateiuploads sind ausgeschaltet. Sie können keinen der Dateimanager verwenden, noch können Sie in verschiedenen Anwendungen Dateien anhängen!
filename setup de Dateiname
filesystem setup de Dateisystem
filesystem (default) setup de Dateisystem (Vorgabe)
force selectbox setup de Auswahl erzwingen
found existing configuration file. loading settings from the file... setup de Existierende Konfigurationsdatei gefunden. Lade Einstellungen von der Datei ...
give admin access to all installed apps setup de Admin Zugang zu allen installierten Anwendungen geben
@ -291,6 +294,7 @@ if the application has no defined tables, selecting upgrade should remedy the pr
if using ads (active directory) authentication setup de Wenn Sie ADS (Active Directory) Authentifizierung benutzen
if using ldap setup de Wenn Sie LDAP verwenden
if using ldap, do you want to manage homedirectory and loginshell attributes? setup de Wenn Sie LDAP verwenden, wollen Sie Benutzerverzeichnisse und Komandointerpreter verwalten ?
if you can only access the docroot choose <b>database</b> for where to store the file content and use same path as for temporäry files. setup de Wenn Sie nur die Documentroot erreichen können, wählen Sie bei Inhalt von Dateien speichern <b>Datenbank</b> UND benutzern Sie hier den Pfad für temporäre Dateien.
if you did not receive any errors, your applications have been setup de Wenn Sie keine Fehlermeldungen erhalten, wurden Ihre Anwendungen
if you did not receive any errors, your tables have been setup de Wenn Sie keine Fehlermeldungen erhalten, wurden Ihre Tabellen
if you running this the first time, don't forget to manualy %1 !!! setup de Wenn Sie das zum ersten Mal ausführen, vergessen Sie nicht manuell die %1 !!!
@ -441,7 +445,6 @@ re-enter password setup de Passworteingabe wiederholen
read translations from setup de Lese Übersetzungen von
readable by the webserver setup de lesebar durch den Webserver
really uninstall all applications setup de WIRKLICH alle Anwendungen deinstallieren
recommended: filesystem setup de Empfohlen: Dateisystem
register_globals is turned on, egroupware does not require it and it's generaly more secure to have it turned off setup de register_globals ist eingeschaltet (On), eGroupWare benötigt das NICHT und es ist generell sicherer es auszuschalten (Off)
registered setup de registriert
rejected lines setup de Zurückgewiesende Zeilen
@ -470,8 +473,6 @@ select one... setup de Einen auswählen...
select the default applications to which your users will have access setup de Wählen Sie die voreingestellten Anwendungen, zu denen Ihre Benutzer Zugriff haben werden
select the desired action(s) from the available choices setup de Wählen Sie die verlangten Aktion(en) aus der verfügbaren Auswahl
select to download file setup de Auswähle um die Datei herunterzuladen
select where you want to store/retrieve file contents setup de Wählen Sie aus wo Sie Dateiinhalte speichern/lesen wollen
select where you want to store/retrieve filesystem information setup de Wo wollen Sie Datei Informationen ablegen/lesen
select where you want to store/retrieve user accounts setup de Wo wollen Sie die Benutzerkonten speichern
select which group(s) will be exported setup de Wählen Sie die zu exportierende(n) Gruppe(n)
select which group(s) will be imported (group membership will be maintained) setup de Wählen Sie die zu importierende(n) Gruppe(n) (Gruppenmitgliedschaft wird erhalten)
@ -603,6 +604,7 @@ validation errors setup de Fehler bei der Prüfung der Eingaben
version setup de Version
version mismatch setup de Versionen passen nicht zueinander
view setup de Anzeigen
virtual filesystem setup de Virtuelles Dateisystem
virtual mail manager (login-name includes domain) setup de Virtual Mail Manager (Loginname enthalten Domain)
warning! setup de Warnung!
we can proceed setup de Wir können fortfahren
@ -611,6 +613,7 @@ we will automatically update your tables/records to %1 setup de Wir werden Ihre
we will now run a series of tests, which may take a few minutes. click the link below to proceed. setup de Wir werden jetzt eine Serie von Tests durchführen. Das kann ein paar Minuten dauern. Klicken sie auf den folgenden Link um Fortzufahren.
welcome to the egroupware installation setup de Herzlich willkommen zur eGroupWare Installation
what type of sessions management do you want to use (php session management may perform better)? setup de Welches Session-Management wollen Sie verwenden (PHP Session-Management hat eine bessere Performanz)?
where should egroupware store file content setup de Wo soll eGroupware den Inhalt von Dateien speichern
which database type do you want to use with egroupware? setup de Welchen Datenbanktyp wollen Sie mit eGroupWare verwenden?
world readable setup de lesbar von jedem (world readable)
world writable setup de schreibbar von jedem (world writeable)

View File

@ -169,6 +169,7 @@ current system-charset setup en Current system-charset
current system-charset is %1. setup en Current system-charset is %1.
current version setup en Current Version
currently installed languages: %1 <br /> setup en Currently installed languages: %1 <br />
custom set via %1 setup en Custom set via %1
cyrus imap: admin user,password setup en Cyrus IMAP: Admin user,Password
database setup en Database
database instance (egw domain) setup en Database instance (eGW domain)
@ -212,6 +213,7 @@ domain(all),[config user(admin)],password,[file-name(default: backup-dir/db_back
domain(default),[config user(admin)],password,[backup to install],[charset(default depends on language)] setup en domain(default),[config user(admin)],password,[backup to install],[charset(default depends on language)]
domain(default),[config user(admin)],password,[name=value,...] sets config values beside: setup en domain(default),[config user(admin)],password,[name=value,...] sets config values beside:
domain-name setup en domain-name
don't change, if you already stored files! you will loose them! setup en Don't change, if you already stored files! You will loose them!
dont touch my data setup en Dont touch my data
download setup en Download
edit current configuration setup en Edit Current Configuration
@ -255,6 +257,7 @@ file type, size, version, etc. setup en file type, size, version, etc.
file uploads are switched off: you can not use any of the filemanagers, nor can you attach files in several applications! setup en File uploads are switched off: You can NOT use any of the filemanagers, nor can you attach files in several applications!
filename setup en filename
filesystem setup en Filesystem
filesystem (default) setup en Filesystem (default)
force selectbox setup en Force Selectbox
found existing configuration file. loading settings from the file... setup en Found existing configuration file. Loading settings from the file...
give admin access to all installed apps setup en Give admin access to all installed apps
@ -289,6 +292,7 @@ if the application has no defined tables, selecting upgrade should remedy the pr
if using ads (active directory) authentication setup en If using ADS (Active Directory) authentication
if using ldap setup en If using LDAP
if using ldap, do you want to manage homedirectory and loginshell attributes? setup en If using LDAP, do you want to manage homedirectory and loginshell attributes?
if you can only access the docroot choose <b>database</b> for where to store the file content and use same path as for temporäry files. setup en If you can only access the docroot choose <b>Database</b> for where to store the file content AND use same path as for temporäry files.
if you did not receive any errors, your applications have been setup en If you did not receive any errors, your applications have been
if you did not receive any errors, your tables have been setup en If you did not receive any errors, your tables have been
if you running this the first time, don't forget to manualy %1 !!! setup en If you running this the first time, don't forget to manualy %1 !!!
@ -439,7 +443,6 @@ re-enter password setup en Re-enter password
read translations from setup en Read translations from
readable by the webserver setup en readable by the webserver
really uninstall all applications setup en REALLY Uninstall all applications
recommended: filesystem setup en Recommended: Filesystem
register_globals is turned on, egroupware does not require it and it's generaly more secure to have it turned off setup en register_globals is turned On, eGroupWare does NOT require it and it's generaly more secure to have it turned Off
registered setup en registered
rejected lines setup en Rejected lines
@ -468,8 +471,6 @@ select one... setup en select one...
select the default applications to which your users will have access setup en Select the default applications to which your users will have access
select the desired action(s) from the available choices setup en Select the desired action(s) from the available choices
select to download file setup en Select to download file
select where you want to store/retrieve file contents setup en Select where you want to store/retrieve file contents
select where you want to store/retrieve filesystem information setup en Select where you want to store/retrieve filesystem information
select where you want to store/retrieve user accounts setup en Select where you want to store/retrieve user accounts
select which group(s) will be exported setup en Select which group(s) will be exported
select which group(s) will be imported (group membership will be maintained) setup en Select which group(s) will be imported (group membership will be maintained)
@ -601,6 +602,7 @@ validation errors setup en Validation errors
version setup en version
version mismatch setup en Version Mismatch
view setup en View
virtual filesystem setup en Virtual filesystem
virtual mail manager (login-name includes domain) setup en Virtual mail manager (login-name includes domain)
warning! setup en Warning!
we can proceed setup en We can proceed
@ -609,6 +611,7 @@ we will automatically update your tables/records to %1 setup en We will automati
we will now run a series of tests, which may take a few minutes. click the link below to proceed. setup en We will now run a series of tests, which may take a few minutes. Click the link below to proceed.
welcome to the egroupware installation setup en Welcome to the eGroupWare Installation
what type of sessions management do you want to use (php session management may perform better)? setup en What type of sessions management do you want to use (PHP session management may perform better)?
where should egroupware store file content setup en Where should eGroupware store file content
which database type do you want to use with egroupware? setup en Which database type do you want to use with eGroupWare?
world readable setup en world readable
world writable setup en world writable

View File

@ -12,30 +12,54 @@
<!-- BEGIN body -->
<tr class="th">
<td colspan="2"><b>{lang_Path_information}</b></td>
</tr>
<tr class="row_off">
<td>{lang_Enter_the_full_path_for_temporary_files.<br />Examples:_/tmp,_C:\TEMP}:</td>
<td><input name="newsettings[temp_dir]" value="{value_temp_dir}" size="40" /></td>
<td colspan="2"><b>{lang_Path_information}, {lang_Virtual_filesystem}</b></td>
</tr>
<tr class="row_on">
<td>{lang_Enter_the_full_path_for_users_and_group_files.<br />Examples:_/files,_E:\FILES}:<br /><b>{lang_This_has_to_be_outside_the_webservers_document-root!!!}</b><br />{lang_or_http://webdav.domain.com_(WebDAV)}:</td>
<td>{lang_Where_should_eGroupware_store_file_content}:</td>
<td>
<select name="newsettings[vfs_storage_mode]">
{hook_vfs_storage_mode_options}
</select>
</td>
</tr>
<tr class="row_off">
<td colspan="2"><b>{lang_Don't_change,_if_you_already_stored_files!_You_will_loose_them!}</b> There's currently no migration avaliable.</td>
</tr>
<tr class="row_on">
<td>{lang_Enter_the_full_path_for_users_and_group_files.<br />Examples:_/files,_E:\FILES}</td>
<td><input name="newsettings[files_dir]" value="{value_files_dir}" size="40" /></td>
</tr>
<tr class="row_off">
<td>{lang_Enter_the_full_path_to_the_backup_directory.<br />if_empty:_files_directory}/db_backup:<br /><b>{lang_This_has_to_be_outside_the_webservers_document-root!!!}</b></td>
<td><input name="newsettings[backup_dir]" value="{value_backup_dir}" size="40" /></td>
<td colspan="2">
<b>{lang_This_has_to_be_outside_the_webservers_document-root!!!}</b><br />
{lang_If_you_can_only_access_the_docroot_choose_<b>Database</b>_for_where_to_store_the_file_content_AND_use_same_path_as_for_temporäry_files.}
</td>
</tr>
<tr class="row_on">
<td>{lang_Enter_the_full_path_to_the_backup_directory.<br />if_empty:_files_directory}/db_backup:</td>
<td><input name="newsettings[backup_dir]" value="{value_backup_dir}" size="40" /></td>
</tr>
<tr class="row_off">
<td colspan="2"><b>{lang_This_has_to_be_outside_the_webservers_document-root!!!}</b></td>
</tr>
<tr class="row_on">
<td>{lang_Enter_the_full_path_for_temporary_files.<br />Examples:_/tmp,_C:\TEMP}:</td>
<td><input name="newsettings[temp_dir]" value="{value_temp_dir}" size="40" /></td>
</tr>
<tr class="row_off">
<td>{lang_Enter_the_location_of_eGroupWare's_URL.<br />Example:_http://www.domain.com/egroupware_&nbsp;_or_&nbsp;_/egroupware<br /><b>No_trailing_slash</b>}:</td>
<td><input name="newsettings[webserver_url]" value="{value_webserver_url}" size="40" /></td>
</tr>
<tr class="row_off">
<tr class="row_ono">
<td>{lang_Image_type_selection_order}:</td>
<td>
<select name="newsettings[image_type]">
@ -450,7 +474,7 @@
<tr class="row_off">
<td colspan="2">&nbsp;</td>
</tr>
<!--
<tr class="th">
<td colspan="2"><b>{lang_Mcrypt_settings_(requires_mcrypt_PHP_extension)}</b></td>
</tr>
@ -481,40 +505,7 @@
<tr class="row_off">
<td colspan="2">&nbsp;</td>
</tr>
<tr class="th">
<td colspan="2"><b>{lang_Additional_settings}</b></td>
</tr>
<tr class="row_on">
<td>
{lang_Select_where_you_want_to_store/retrieve_filesystem_information}:
<br />
({lang_file_type,_size,_version,_etc.})
</td>
<td>
<select name="newsettings[file_repository]">
<option value="sql"{selected_file_repository_sql}>SQL ({lang_default})</option>
<option value="dav"{selected_file_repository_dav}>WebDAV</option>
<option value="sql2"{selected_file_repository_sql2}>SQL version 2 (EXPERIMENTAL, required and works only with FilesCenter)</option>
</select>
</td>
</tr>
<tr class="row_off">
<td>
{lang_Select_where_you_want_to_store/retrieve_file_contents}:
<br />
({lang_Recommended:_Filesystem})
</td>
<td>
<select name="newsettings[file_store_contents]">
<option value="filesystem"{selected_file_store_contents_filesystem}>{lang_Filesystem}</option>
<option value="sql"{selected_file_store_contents_sql}>SQL</option>
</select>
</td>
</tr>
<tr class="row_on">
<td colspan="2">&nbsp;</td>
</tr>
-->
<!-- end from admin -->
<!-- END body -->