From acff900c5a3a7c89faaf1141eff706ec221a4dd3 Mon Sep 17 00:00:00 2001 From: alecpl <alec@alec.pl> Date: Wed, 08 Oct 2008 04:42:59 -0400 Subject: [PATCH] #1485294: Add recipients address small validation --- index.php | 42 +++++++++++++++++++++++++++--------------- 1 files changed, 27 insertions(+), 15 deletions(-) diff --git a/index.php b/index.php index 699cf19..adab411 100644 --- a/index.php +++ b/index.php @@ -2,7 +2,7 @@ /* +-------------------------------------------------------------------------+ | RoundCube Webmail IMAP Client | - | Version 0.2-20080619 | + | Version 0.2-20080829 | | | | Copyright (C) 2005-2008, RoundCube Dev. - Switzerland | | | @@ -30,9 +30,6 @@ // include environment require_once 'program/include/iniset.php'; -// define global vars -$OUTPUT_TYPE = 'html'; - // init application and start session with requested task $RCMAIL = rcmail::get_instance(); @@ -50,6 +47,15 @@ else { ob_start(); } +} + + +// check if config files had errors +if ($err_str = $RCMAIL->config->get_error()) { + raise_error(array( + 'code' => 601, + 'type' => 'php', + 'message' => $err_str), false, true); } // check DB connections and exit on failure @@ -79,21 +85,21 @@ get_input_value('_pass', RCUBE_INPUT_POST, true, 'ISO-8859-1'), $host)) { // create new session ID unset($_SESSION['temp']); - sess_regenerate_id(); + rcube_sess_regenerate_id(); // send auth cookie if necessary $RCMAIL->authenticate_session(); // log successful login - if ($RCMAIL->config->get('log_logins') && $RCMAIL->config->get('debug_level') & 1) - console(sprintf('Successful login for %s (id %d) from %s', - trim(get_input_value('_user', RCUBE_INPUT_POST), ' '), - $_SESSION['user_id'], - $_SERVER['REMOTE_ADDR'])); + if ($RCMAIL->config->get('log_logins')) { + write_log('userlogins', sprintf('Successful login for %s (id %d) from %s', + $RCMAIL->user->get_username(), + $RCMAIL->user->ID, + $_SERVER['REMOTE_ADDR'])); + } // send redirect - header("Location: {$RCMAIL->comm_path}"); - exit; + $OUTPUT->redirect(); } else { $OUTPUT->show_message($IMAP->error_code == -1 ? 'imaperror' : 'loginfailed', 'warning'); @@ -127,7 +133,7 @@ // check client X-header to verify request origin if ($OUTPUT->ajax_call) { - if ($RCMAIL->config->get('devel_mode') && !rc_request_header('X-RoundCube-Referer')) { + if (!$RCMAIL->config->get('devel_mode') && !rc_request_header('X-RoundCube-Referer')) { header('HTTP/1.1 404 Not Found'); die("Invalid Request"); } @@ -138,7 +144,7 @@ if (empty($RCMAIL->user->ID)) { if ($OUTPUT->ajax_call) - $OUTPUT->remote_response("setTimeout(\"location.href='\"+this.env.comm_path+\"'\", 2000);"); + $OUTPUT->redirect(array(), 2000); // check if installer is still active if ($RCMAIL->config->get('enable_installer') && is_readable('./installer/index.php')) { @@ -158,7 +164,13 @@ // handle keep-alive signal -if ($RCMAIL->action=='keep-alive') { +if ($RCMAIL->action == 'keep-alive') { + $OUTPUT->reset(); + $OUTPUT->send(); +} +// save preference value +else if ($RCMAIL->action == 'save-pref') { + $RCMAIL->user->save_prefs(array(get_input_value('_name', RCUBE_INPUT_POST) => get_input_value('_value', RCUBE_INPUT_POST))); $OUTPUT->reset(); $OUTPUT->send(); } -- Gitblit v1.9.1