Mercurial > hg > rc2
comparison installer/config.php @ 8:bf99236cc5cd
try to recover from upgrade fail
| author | Charlie Root |
|---|---|
| date | Sat, 29 Dec 2018 07:07:34 -0500 |
| parents | 4681f974d28b |
| children |
comparison
equal
deleted
inserted
replaced
| 7:65fd7d441cf1 | 8:bf99236cc5cd |
|---|---|
| 1 <?php | 1 <?php |
| 2 | 2 |
| 3 if (!class_exists('rcmail_install', false) || !is_object($RCI)) { | 3 if (!class_exists('rcmail_install', false) || !is_object($RCI)) { |
| 4 die("Not allowed! Please open installer/index.php instead."); | 4 die("Not allowed! Please open installer/index.php instead."); |
| 5 } | 5 } |
| 6 | |
| 7 ?> | |
| 8 <form action="index.php" method="post"> | |
| 9 <input type="hidden" name="_step" value="2" /> | |
| 10 <?php | |
| 11 | 6 |
| 12 // register these boolean fields | 7 // register these boolean fields |
| 13 $RCI->bool_config_props = array( | 8 $RCI->bool_config_props = array( |
| 14 'ip_check' => 1, | 9 'ip_check' => 1, |
| 15 'enable_spellcheck' => 1, | 10 'enable_spellcheck' => 1, |
| 16 'auto_create_user' => 1, | 11 'auto_create_user' => 1, |
| 17 'smtp_log' => 1, | 12 'smtp_log' => 1, |
| 18 'prefer_html' => 1, | 13 'prefer_html' => 1, |
| 19 'preview_pane' => 1, | |
| 20 'debug_level' => 1, | 14 'debug_level' => 1, |
| 21 ); | 15 ); |
| 22 | 16 |
| 23 // allow the current user to get to the next step | 17 // allow the current user to get to the next step |
| 24 $_SESSION['allowinstaller'] = true; | 18 $_SESSION['allowinstaller'] = true; |
| 34 } | 28 } |
| 35 | 29 |
| 36 echo '</p>'; | 30 echo '</p>'; |
| 37 } | 31 } |
| 38 else { | 32 else { |
| 33 if (($dir = sys_get_temp_dir()) && @is_writable($dir)) { | |
| 34 echo '<iframe name="getconfig" style="display:none"></iframe>'; | |
| 35 echo '<form id="getconfig_form" action="index.php" method="get" target="getconfig" style="display:none">'; | |
| 36 echo '<input name="_getconfig" value="2" /></form>'; | |
| 37 | |
| 38 $button_txt = html::quote('Save in ' . $dir); | |
| 39 $save_button = ' <input type="button" onclick="document.getElementById(\'getconfig_form\').submit()" value="' . $button_txt . '" />'; | |
| 40 } | |
| 41 | |
| 39 echo '<p class="notice">Copy or download the following configuration and save it'; | 42 echo '<p class="notice">Copy or download the following configuration and save it'; |
| 40 echo ' as <tt><b>config.inc.php</b></tt> within the <tt>'.RCUBE_CONFIG_DIR.'</tt> directory of your Roundcube installation.<br/>'; | 43 echo ' as <tt><b>config.inc.php</b></tt> within the <tt>'.RCUBE_CONFIG_DIR.'</tt> directory of your Roundcube installation.<br/>'; |
| 41 echo ' Make sure that there are no characters outside the <tt><?php ?></tt> brackets when saving the file.'; | 44 echo ' Make sure that there are no characters outside the <tt><?php ?></tt> brackets when saving the file.'; |
| 42 echo ' <input type="button" onclick="location.href=\'index.php?_getconfig=1\'" value="Download" />'; | 45 echo ' <input type="button" onclick="location.href=\'index.php?_getconfig=1\'" value="Download" />'; |
| 46 echo $save_button; | |
| 43 | 47 |
| 44 if ($RCI->legacy_config) { | 48 if ($RCI->legacy_config) { |
| 45 echo '<br/><br/>Afterwards, please <b>remove</b> the old configuration files <tt>main.inc.php</tt> and <tt>db.inc.php</tt> from the config directory.'; | 49 echo '<br/><br/>Afterwards, please <b>remove</b> the old configuration files <tt>main.inc.php</tt> and <tt>db.inc.php</tt> from the config directory.'; |
| 46 } | 50 } |
| 47 | 51 |
| 50 $textbox = new html_textarea(array('rows' => 16, 'cols' => 60, 'class' => "configfile")); | 54 $textbox = new html_textarea(array('rows' => 16, 'cols' => 60, 'class' => "configfile")); |
| 51 echo $textbox->show(($_SESSION['config'])); | 55 echo $textbox->show(($_SESSION['config'])); |
| 52 } | 56 } |
| 53 | 57 |
| 54 echo '<p class="hint">Of course there are more options to configure. | 58 echo '<p class="hint">Of course there are more options to configure. |
| 55 Have a look at the defaults.inc.php file or visit <a href="http://trac.roundcube.net/wiki/Howto_Config" target="_blank">Howto_Config</a> to find out.</p>'; | 59 Have a look at the defaults.inc.php file or visit <a href="https://github.com/roundcube/roundcubemail/wiki/Configuration" target="_blank">Howto_Config</a> to find out.</p>'; |
| 56 | 60 |
| 57 echo '<p><input type="button" onclick="location.href=\'./index.php?_step=3\'" value="CONTINUE" /></p>'; | 61 echo '<p><input type="button" onclick="location.href=\'./index.php?_step=3\'" value="CONTINUE" /></p>'; |
| 58 | 62 |
| 59 // echo '<style type="text/css"> .configblock { display:none } </style>'; | 63 // echo '<style type="text/css"> .configblock { display:none } </style>'; |
| 60 echo "\n<hr style='margin-bottom:1.6em' />\n"; | 64 echo "\n<hr style='margin-bottom:1.6em' />\n"; |
| 61 } | 65 } |
| 62 | 66 |
| 63 ?> | 67 ?> |
| 68 <form action="index.php" method="post"> | |
| 69 <input type="hidden" name="_step" value="2" /> | |
| 70 | |
| 64 <fieldset> | 71 <fieldset> |
| 65 <legend>General configuration</legend> | 72 <legend>General configuration</legend> |
| 66 <dl class="configblock"> | 73 <dl class="configblock"> |
| 67 | 74 |
| 68 <dt class="propname">product_name</dt> | 75 <dt class="propname">product_name</dt> |
| 118 $input_deskey = new html_inputfield(array('name' => '_des_key', 'size' => 30, 'id' => "cfgdeskey")); | 125 $input_deskey = new html_inputfield(array('name' => '_des_key', 'size' => 30, 'id' => "cfgdeskey")); |
| 119 echo $input_deskey->show($RCI->getprop('des_key')); | 126 echo $input_deskey->show($RCI->getprop('des_key')); |
| 120 | 127 |
| 121 ?> | 128 ?> |
| 122 <div>This key is used to encrypt the users imap password before storing in the session record</div> | 129 <div>This key is used to encrypt the users imap password before storing in the session record</div> |
| 123 <p class="hint">It's a random generated string to ensure that every installation has its own key. | 130 <p class="hint">It's a random generated string to ensure that every installation has its own key.</p> |
| 124 If you enter it manually please provide a string of exactly 24 chars.</p> | |
| 125 </dd> | 131 </dd> |
| 126 | 132 |
| 127 <dt class="propname">ip_check</dt> | 133 <dt class="propname">ip_check</dt> |
| 128 <dd> | 134 <dd> |
| 129 <?php | 135 <?php |
| 208 <dt class="propname">log_driver</dt> | 214 <dt class="propname">log_driver</dt> |
| 209 <dd> | 215 <dd> |
| 210 <?php | 216 <?php |
| 211 | 217 |
| 212 $select_log_driver = new html_select(array('name' => '_log_driver', 'id' => "cfglogdriver")); | 218 $select_log_driver = new html_select(array('name' => '_log_driver', 'id' => "cfglogdriver")); |
| 213 $select_log_driver->add(array('file', 'syslog'), array('file', 'syslog')); | 219 $select_log_driver->add(array('file', 'syslog', 'stdout'), array('file', 'syslog', 'stdout')); |
| 214 echo $select_log_driver->show($RCI->getprop('log_driver', 'file')); | 220 echo $select_log_driver->show($RCI->getprop('log_driver', 'file')); |
| 215 | 221 |
| 216 ?> | 222 ?> |
| 217 <div>How to do logging? 'file' - write to files in the log directory, 'syslog' - use the syslog facility.</div> | 223 <div>How to do logging? 'file' - write to files in the log directory, 'syslog' - use the syslog facility, 'stdout' writes to the process' STDOUT file descriptor.</div> |
| 218 </dd> | 224 </dd> |
| 219 | 225 |
| 220 <dt class="propname">log_dir</dt> | 226 <dt class="propname">log_dir</dt> |
| 221 <dd> | 227 <dd> |
| 222 <?php | 228 <?php |
| 283 } | 289 } |
| 284 | 290 |
| 285 $input_dbhost = new html_inputfield(array('name' => '_dbhost', 'size' => 20, 'id' => "cfgdbhost")); | 291 $input_dbhost = new html_inputfield(array('name' => '_dbhost', 'size' => 20, 'id' => "cfgdbhost")); |
| 286 $input_dbname = new html_inputfield(array('name' => '_dbname', 'size' => 20, 'id' => "cfgdbname")); | 292 $input_dbname = new html_inputfield(array('name' => '_dbname', 'size' => 20, 'id' => "cfgdbname")); |
| 287 $input_dbuser = new html_inputfield(array('name' => '_dbuser', 'size' => 20, 'id' => "cfgdbuser")); | 293 $input_dbuser = new html_inputfield(array('name' => '_dbuser', 'size' => 20, 'id' => "cfgdbuser")); |
| 288 $input_dbpass = new html_passwordfield(array('name' => '_dbpass', 'size' => 20, 'id' => "cfgdbpass")); | 294 $input_dbpass = new html_inputfield(array('name' => '_dbpass', 'size' => 20, 'id' => "cfgdbpass")); |
| 289 | 295 |
| 290 $dsnw = rcube_db::parse_dsn($RCI->getprop('db_dsnw')); | 296 $dsnw = rcube_db::parse_dsn($RCI->getprop('db_dsnw')); |
| 291 | 297 |
| 292 echo $select_dbtype->show($RCI->is_post ? $_POST['_dbtype'] : $dsnw['phptype']); | 298 echo $select_dbtype->show($RCI->is_post ? $_POST['_dbtype'] : $dsnw['phptype']); |
| 293 echo '<label for="cfgdbtype">Database type</label><br />'; | 299 echo '<label for="cfgdbtype">Database type</label><br />'; |
| 452 <dt class="propname">smtp_server</dt> | 458 <dt class="propname">smtp_server</dt> |
| 453 <dd> | 459 <dd> |
| 454 <?php | 460 <?php |
| 455 | 461 |
| 456 $text_smtphost = new html_inputfield(array('name' => '_smtp_server', 'size' => 30, 'id' => "cfgsmtphost")); | 462 $text_smtphost = new html_inputfield(array('name' => '_smtp_server', 'size' => 30, 'id' => "cfgsmtphost")); |
| 457 echo $text_smtphost->show($RCI->getprop('smtp_server')); | 463 echo $text_smtphost->show($RCI->getprop('smtp_server', 'localhost')); |
| 458 | 464 |
| 459 ?> | 465 ?> |
| 460 <div>Use this host for sending mails</div> | 466 <div>Use this host for sending mails</div> |
| 461 | 467 |
| 462 <p class="hint">To use SSL connection, set ssl://smtp.host.com. If left blank, the PHP mail() function is used</p> | 468 <p class="hint">To use SSL connection, set ssl://smtp.host.com.</p> |
| 463 </dd> | 469 </dd> |
| 464 | 470 |
| 465 <dt class="propname">smtp_port</dt> | 471 <dt class="propname">smtp_port</dt> |
| 466 <dd> | 472 <dd> |
| 467 <?php | 473 <?php |
| 476 <dt class="propname">smtp_user/smtp_pass</dt> | 482 <dt class="propname">smtp_user/smtp_pass</dt> |
| 477 <dd> | 483 <dd> |
| 478 <?php | 484 <?php |
| 479 | 485 |
| 480 $text_smtpuser = new html_inputfield(array('name' => '_smtp_user', 'size' => 20, 'id' => "cfgsmtpuser")); | 486 $text_smtpuser = new html_inputfield(array('name' => '_smtp_user', 'size' => 20, 'id' => "cfgsmtpuser")); |
| 481 $text_smtppass = new html_passwordfield(array('name' => '_smtp_pass', 'size' => 20, 'id' => "cfgsmtppass")); | 487 $text_smtppass = new html_inputfield(array('name' => '_smtp_pass', 'size' => 20, 'id' => "cfgsmtppass")); |
| 482 echo $text_smtpuser->show($RCI->getprop('smtp_user')); | 488 echo $text_smtpuser->show($RCI->getprop('smtp_user')); |
| 483 echo $text_smtppass->show($RCI->getprop('smtp_pass')); | 489 echo $text_smtppass->show($RCI->getprop('smtp_pass')); |
| 484 | 490 |
| 485 ?> | 491 ?> |
| 486 <div>SMTP username and password (if required)</div> | 492 <div>SMTP username and password (if required)</div> |
| 587 $check_htmlview = new html_checkbox(array('name' => '_prefer_html', 'id' => "cfghtmlview", 'value' => 1)); | 593 $check_htmlview = new html_checkbox(array('name' => '_prefer_html', 'id' => "cfghtmlview", 'value' => 1)); |
| 588 echo $check_htmlview->show(intval($RCI->getprop('prefer_html'))); | 594 echo $check_htmlview->show(intval($RCI->getprop('prefer_html'))); |
| 589 | 595 |
| 590 ?> | 596 ?> |
| 591 <label for="cfghtmlview">Prefer displaying HTML messages</label><br /> | 597 <label for="cfghtmlview">Prefer displaying HTML messages</label><br /> |
| 592 </dd> | |
| 593 | |
| 594 <dt class="propname">preview_pane <span class="userconf">*</span></dt> | |
| 595 <dd> | |
| 596 <?php | |
| 597 | |
| 598 $check_prevpane = new html_checkbox(array('name' => '_preview_pane', 'id' => "cfgprevpane", 'value' => 1)); | |
| 599 echo $check_prevpane->show(intval($RCI->getprop('preview_pane'))); | |
| 600 | |
| 601 ?> | |
| 602 <label for="cfgprevpane">If preview pane is enabled</label><br /> | |
| 603 </dd> | 598 </dd> |
| 604 | 599 |
| 605 <dt class="propname">htmleditor <span class="userconf">*</span></dt> | 600 <dt class="propname">htmleditor <span class="userconf">*</span></dt> |
| 606 <dd> | 601 <dd> |
| 607 <label for="cfghtmlcompose">Compose HTML formatted messages</label> | 602 <label for="cfghtmlcompose">Compose HTML formatted messages</label> |
| 676 <legend>Plugins</legend> | 671 <legend>Plugins</legend> |
| 677 <dl class="configblock" id="cgfblockdisplay"> | 672 <dl class="configblock" id="cgfblockdisplay"> |
| 678 | 673 |
| 679 <?php | 674 <?php |
| 680 $plugins = $RCI->list_plugins(); | 675 $plugins = $RCI->list_plugins(); |
| 681 foreach($plugins as $p) | 676 foreach ($plugins as $p) { |
| 682 { | |
| 683 $p_check = new html_checkbox(array('name' => '_plugins_'.$p['name'], 'id' => 'cfgplugin_'.$p['name'], 'value' => $p['name'])); | 677 $p_check = new html_checkbox(array('name' => '_plugins_'.$p['name'], 'id' => 'cfgplugin_'.$p['name'], 'value' => $p['name'])); |
| 684 echo '<dt class="propname"><label>'; | 678 echo '<dt class="propname"><label>'; |
| 685 echo $p_check->show($p['enabled'] ? $p['name'] : 0); | 679 echo $p_check->show($p['enabled'] ? $p['name'] : 0); |
| 686 echo ' ' . $p['name'] . '</label></dt><dd>'; | 680 echo ' ' . $p['name'] . '</label></dt><dd>'; |
| 687 echo '<label for="cfgplugin_'.$p['name'].'" class="hint">' . $p['desc'] . '</label><br/></dd>'; | 681 echo '<label for="cfgplugin_'.$p['name'].'" class="hint">' . $p['desc'] . '</label><br/></dd>'; |
