X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=installer%2Findex.php;h=7ed52240ba9a631d3c6e061f09d3a085f232d752;hb=9d358bb749203c1c4cb278a01e51f79754aa643a;hp=69e33f87021a579df4de06312cd082182cc885c0;hpb=92c39ec46fd8ad15a83b42a19fab7cb2e9a59ec9;p=roundcube.git diff --git a/installer/index.php b/installer/index.php index 69e33f8..7ed5224 100644 --- a/installer/index.php +++ b/installer/index.php @@ -1,9 +1,94 @@ + | + +-------------------------------------------------------------------------+ + + $Id$ + +*/ + +ini_set('error_reporting', E_ALL&~E_NOTICE); +ini_set('display_errors', 1); + +define('INSTALL_PATH', realpath(dirname(__FILE__) . '/../').'/'); +define('RCMAIL_CONFIG_DIR', INSTALL_PATH . 'config'); + +$include_path = INSTALL_PATH . 'program/lib' . PATH_SEPARATOR; +$include_path .= INSTALL_PATH . 'program' . PATH_SEPARATOR; +$include_path .= INSTALL_PATH . 'program/include' . PATH_SEPARATOR; +$include_path .= ini_get('include_path'); + +set_include_path($include_path); + +require_once 'utils.php'; +require_once 'main.inc'; + +session_start(); + +$RCI = rcube_install::get_instance(); +$RCI->load_config(); + +if (isset($_GET['_getfile']) && in_array($_GET['_getfile'], array('main', 'db'))) { + $filename = $_GET['_getfile'] . '.inc.php'; + if (!empty($_SESSION[$filename])) { + header('Content-type: text/plain'); + header('Content-Disposition: attachment; filename="'.$filename.'"'); + echo $_SESSION[$filename]; + exit; + } + else { + header('HTTP/1.0 404 Not found'); + die("The requested configuration was not found. Please run the installer from the beginning."); + } +} + +if ($RCI->configured && ($RCI->getprop('enable_installer') || $_SESSION['allowinstaller']) && + isset($_GET['_mergeconfig']) && in_array($_GET['_mergeconfig'], array('main', 'db'))) { + $filename = $_GET['_mergeconfig'] . '.inc.php'; + + header('Content-type: text/plain'); + header('Content-Disposition: attachment; filename="'.$filename.'"'); + + $RCI->merge_config(); + echo $RCI->create_config($_GET['_mergeconfig'], true); + exit; +} + +// go to 'check env' step if we have a local configuration +if ($RCI->configured && empty($_REQUEST['_step'])) { + header("Location: ./?_step=1"); + exit; +} + +?> -RoundCube Webmail Installer - +Roundcube Webmail Installer + + @@ -11,43 +96,30 @@ + + + + +
+ How-to Wiki +
load_config(); // exit if installation is complete if ($RCI->configured && !$RCI->getprop('enable_installer') && !$_SESSION['allowinstaller']) { - header("HTTP/1.0 404 Not Found"); + // header("HTTP/1.0 404 Not Found"); echo '

The installer is disabled!

'; - echo '

To enable it again, set $rcmail_config[\'enable_installer\'] = true; in config/main.inc.php

'; + echo '

To enable it again, set $rcmail_config[\'enable_installer\'] = true; in RCMAIL_CONFIG_DIR/main.inc.php

'; echo '
'; exit; } ?> -

RoundCube Webmail Installer

+

Roundcube Webmail Installer

    step]) { include $include_steps[$RCI->step]; @@ -75,7 +147,7 @@ else {