From bf2f39ea6d2b49c7495a43cca19ab18f27f8292e Mon Sep 17 00:00:00 2001 From: alecpl <alec@alec.pl> Date: Mon, 29 Sep 2008 09:02:02 -0400 Subject: [PATCH] - #1485290: Fix unread counter when displaying cached massage in preview panel - remove some empty lines in app.js --- installer/test.php | 103 +++++++++++++++++++++++++++++++-------------------- 1 files changed, 63 insertions(+), 40 deletions(-) diff --git a/installer/test.php b/installer/test.php index d83534b..ca7c7ad 100644 --- a/installer/test.php +++ b/installer/test.php @@ -3,10 +3,8 @@ <h3>Check config files</h3> <?php -require_once 'include/rcube_html.inc'; - -$read_main = is_readable('../config/main.inc.php'); -$read_db = is_readable('../config/db.inc.php'); +$read_main = is_readable(RCMAIL_CONFIG_DIR.'/main.inc.php'); +$read_db = is_readable(RCMAIL_CONFIG_DIR.'/db.inc.php'); if ($read_main && !empty($RCI->config)) { $RCI->pass('main.inc.php'); @@ -31,20 +29,46 @@ ?> +<h3>Check if directories are writable</h3> +<p>RoundCube may need to write/save files into these directories</p> +<?php + +if ($RCI->configured) { + $pass = false; + + $dirs[] = $RCI->config['temp_dir']; + if($RCI->config['log_driver'] != 'syslog') + $dirs[] = $RCI->config['log_dir']; + + foreach ($dirs as $dir) { + $dirpath = $dir{0} == '/' ? $dir : INSTALL_PATH . $dir; + if (is_writable(realpath($dirpath))) { + $RCI->pass($dir); + $pass = true; + } + else { + $RCI->fail($dir, 'not writeable for the webserver'); + } + echo '<br />'; + } + + if (!$pass) + echo '<p class="hint">Use <tt>chmod</tt> or <tt>chown</tt> to grant write privileges to the webserver</p>'; +} +else { + $RCI->fail('Config', 'Could not read config files'); +} + +?> + <h3>Check configured database settings</h3> <?php $db_working = false; -if (!empty($RCI->config)) { - if (!empty($RCI->config['db_backend']) && !empty($RCI->config['db_dsnw'])) { +if ($RCI->configured) { + if (!empty($RCI->config['db_dsnw'])) { - echo 'Backend: '; - echo 'PEAR::' . strtoupper($RCI->config['db_backend']) . '<br />'; - - $_class = 'rcube_' . strtolower($RCI->config['db_backend']); - require_once 'include/' . $_class . '.inc'; - - $DB = new $_class($RCI->config['db_dsnw'], '', false); + $DB = new rcube_mdb2($RCI->config['db_dsnw'], '', false); $DB->db_connect('w'); if (!($db_error_msg = $DB->is_error())) { $RCI->pass('DSN (write)'); @@ -53,7 +77,7 @@ } else { $RCI->fail('DSN (write)', $db_error_msg); - echo '<p class="hint">Make sure that the configured database extists and that the user as write privileges<br />'; + echo '<p class="hint">Make sure that the configured database exists and that the user has write privileges<br />'; echo 'DSN: ' . $RCI->config['db_dsnw'] . '</p>'; } } @@ -91,12 +115,12 @@ // more database tests if ($db_working) { // write test - $db_write = $DB->query("INSERT INTO {$RCI->config['db_table_cache']} (session_id, cache_key, data, user_id) VALUES (?, ?, ?, 0)", '1234567890abcdef', 'test', 'test'); - $insert_id = $DB->insert_id($RCI->config['db_sequence_cache']); - - if ($db_write && $insert_id) { + $insert_id = md5(uniqid()); + $db_write = $DB->query("INSERT INTO {$RCI->config['db_table_session']} (sess_id, created, ip, vars) VALUES (?, ".$DB->now().", '127.0.0.1', 'foo')", $insert_id); + + if ($db_write) { $RCI->pass('DB Write'); - $DB->query("DELETE FROM {$RCI->config['db_table_cache']} WHERE cache_id=?", $insert_id); + $DB->query("DELETE FROM {$RCI->config['db_table_session']} WHERE sess_id=?", $insert_id); } else { $RCI->fail('DB Write', $RCI->get_error()); @@ -135,11 +159,11 @@ $pass = $RCI->getprop('smtp_pass', '(none)'); if ($user == '%u') { - $user_field = new textfield(array('name' => '_user')); - $user = $user_field->show($_POST['_user']); + $user_field = new html_inputfield(array('name' => '_smtp_user')); + $user = $user_field->show($_POST['_smtp_user']); } if ($pass == '%p') { - $pass_field = new passwordfield(array('name' => '_pass')); + $pass_field = new html_passwordfield(array('name' => '_smtp_pass')); $pass = $pass_field->show(); } @@ -147,8 +171,8 @@ echo "Password: $pass<br />"; } -$from_field = new textfield(array('name' => '_from', 'id' => 'sendmailfrom')); -$to_field = new textfield(array('name' => '_to', 'id' => 'sendmailto')); +$from_field = new html_inputfield(array('name' => '_from', 'id' => 'sendmailfrom')); +$to_field = new html_inputfield(array('name' => '_to', 'id' => 'sendmailto')); ?> </p> @@ -157,8 +181,7 @@ if (isset($_POST['sendmail']) && !empty($_POST['_from']) && !empty($_POST['_to'])) { - require_once 'lib/rc_mail_mime.inc'; - require_once 'include/rcube_smtp.inc'; + require_once 'rcube_smtp.inc'; echo '<p>Trying to send email...<br />'; @@ -166,8 +189,8 @@ preg_match('/^' . $RCI->email_pattern . '$/i', trim($_POST['_to']))) { $headers = array( - 'From' => trim($_POST['_from']), - 'To' => trim($_POST['_to']), + 'From' => trim($_POST['_from']), + 'To' => trim($_POST['_to']), 'Subject' => 'Test message from RoundCube', ); @@ -178,12 +201,14 @@ if ($RCI->getprop('smtp_server')) { $CONFIG = $RCI->config; - if (!empty($_POST['_user'])) - $CONFIG['smtp_user'] = $_POST['_user']; - if (!empty($_POST['_pass'])) - $CONFIG['smtp_pass'] = $_POST['_pass']; - - $mail_object = new rc_mail_mime(); + if (!empty($_POST['_smtp_user'])) { + $CONFIG['smtp_user'] = $_POST['_smtp_user']; + } + if (!empty($_POST['_smtp_pass'])) { + $CONFIG['smtp_pass'] = $_POST['_smtp_pass']; + } + + $mail_object = new rcube_mail_mime(); $send_headers = $mail_object->headers($headers); $status = smtp_mail($headers['From'], $headers['To'], @@ -240,15 +265,15 @@ $default_hosts = $RCI->get_hostlist(); if (!empty($default_hosts)) { - $host_field = new select(array('name' => '_host', 'id' => 'imaphost')); + $host_field = new html_select(array('name' => '_host', 'id' => 'imaphost')); $host_field->add($default_hosts); } else { - $host_field = new textfield(array('name' => '_host', 'id' => 'imaphost')); + $host_field = new html_inputfield(array('name' => '_host', 'id' => 'imaphost')); } -$user_field = new textfield(array('name' => '_user', 'id' => 'imapuser')); -$pass_field = new passwordfield(array('name' => '_pass', 'id' => 'imappass')); +$user_field = new html_inputfield(array('name' => '_user', 'id' => 'imapuser')); +$pass_field = new html_passwordfield(array('name' => '_pass', 'id' => 'imappass')); ?> @@ -276,8 +301,6 @@ <?php if (isset($_POST['imaptest']) && !empty($_POST['_host']) && !empty($_POST['_user'])) { - - require_once 'include/rcube_imap.inc'; echo '<p>Connecting to ' . Q($_POST['_host']) . '...<br />'; -- Gitblit v1.9.1