diff --git a/installer/config.php b/installer/config.php index f990fc23f..ee8eb7221 100644 --- a/installer/config.php +++ b/installer/config.php @@ -24,21 +24,37 @@ $RCI->bool_config_props = array( $_SESSION['allowinstaller'] = true; if (!empty($_POST['submit'])) { - echo '
Copy or download the following configuration and save it';
- echo ' as config.inc.php within the '.RCUBE_CONFIG_DIR.' directory of your Roundcube installation.
';
- echo ' Make sure that there are no characters outside the <?php ?> brackets when saving the file.';
- echo ' ';
- if ($RCI->legacy_config) {
- echo '
Afterwards, please remove the old configuration files main.inc.php and db.inc.php';
- echo ' from the config directory.';
+ $_SESSION['config'] = $RCI->create_config();
+
+ if($RCI->save_configfile())
+ {
+ echo '
The config file was saved successfully into '.RCMAIL_CONFIG_DIR.' directory of your Roundcube installation.';
+
+ if($RCI->legacy_config) {
+ echo '
Afterwards, please remove the old configuration files main.inc.php and db.inc.php from the config directory.';
+ }
+
+ echo '
Copy or download the following configuration and save it';
+ echo ' as config.inc.php within the '.RCUBE_CONFIG_DIR.' directory of your Roundcube installation.
';
+ echo ' Make sure that there are no characters outside the <?php ?> brackets when saving the file.';
+ echo ' ';
- $textbox = new html_textarea(array('rows' => 16, 'cols' => 60, 'class' => "configfile"));
- echo $textbox->show(($_SESSION['config'] = $RCI->create_config()));
+ if($RCI->legacy_config) {
+ echo '
Afterwards, please remove the old configuration files main.inc.php and db.inc.php from the config directory.';
+ }
+
+ echo '
Of course there are more options to configure. - Have a look at the defaults.inc.php file or visit Howto_Config to find out.
'; + Have a look at the defaults.inc.php file or visit Howto_Config to find out.'; echo ''; diff --git a/installer/rcube_install.php b/installer/rcube_install.php index 0e137e11d..76d6a7f10 100644 --- a/installer/rcube_install.php +++ b/installer/rcube_install.php @@ -272,6 +272,21 @@ class rcube_install } + /** + * save generated config file in RCUBE_CONFIG_DIR + * + * @return boolean True if the file was saved successfully, false if not + */ + function save_configfile() + { + if(is_writable(RCUBE_CONFIG_DIR)) + { + return file_put_contents(RCUBE_CONFIG_DIR . 'config.inc.php', $_SESSION['config']); + } + + return false; + } + /** * Check the current configuration for missing properties * and deprecated or obsolete settings