| | |
| | | 'host' => $RCMAIL->autoselect_host(), |
| | | 'user' => trim(get_input_value('_user', RCUBE_INPUT_POST)), |
| | | 'cookiecheck' => true, |
| | | )) + array('pass' => get_input_value('_pass', RCUBE_INPUT_POST, true, 'ISO-8859-1')); |
| | | )); |
| | | |
| | | if (!isset($auth['pass'])) |
| | | $auth['pass'] = get_input_value('_pass', RCUBE_INPUT_POST, true, |
| | | $RCMAIL->config->get('password_charset', 'ISO-8859-1')); |
| | | |
| | | // check if client supports cookies |
| | | if ($auth['cookiecheck'] && empty($_COOKIE)) { |
| | | $OUTPUT->show_message("cookiesdisabled", 'warning'); |
| | | } |
| | | else if ($_SESSION['temp'] && !$auth['abort'] && !empty($auth['host']) && |
| | | !empty($auth['user']) && isset($auth['pass']) && |
| | | $RCMAIL->login($auth['user'], $auth['pass'], $auth['host'])) { |
| | | else if ($_SESSION['temp'] && !$auth['abort'] && |
| | | !empty($auth['host']) && !empty($auth['user']) && |
| | | $RCMAIL->login($auth['user'], $auth['pass'], $auth['host'])) { |
| | | // create new session ID |
| | | rcube_sess_unset('temp'); |
| | | rcube_sess_regenerate_id(); |
| | | $RCMAIL->session->remove('temp'); |
| | | $RCMAIL->session->regenerate_id(); |
| | | |
| | | // send auth cookie if necessary |
| | | $RCMAIL->authenticate_session(); |
| | | |
| | | // log successful login |
| | | 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'])); |
| | | } |
| | | rcmail_log_login(); |
| | | |
| | | // restore original request parameters |
| | | $query = array(); |
| | |
| | | 'remove-attachment' => 'attachments.inc', |
| | | 'display-attachment' => 'attachments.inc', |
| | | 'upload' => 'attachments.inc', |
| | | 'group-expand' => 'autocomplete.inc', |
| | | ), |
| | | |
| | | 'addressbook' => array( |
| | | 'add' => 'edit.inc', |
| | | 'group-create' => 'groups.inc', |
| | | 'group-rename' => 'groups.inc', |
| | | 'group-delete' => 'groups.inc', |
| | | 'group-addmembers' => 'groups.inc', |
| | | 'group-delmembers' => 'groups.inc', |
| | | ), |
| | | |
| | | 'settings' => array( |
| | |
| | | 'delete-folder' => 'manage_folders.inc', |
| | | 'subscribe' => 'manage_folders.inc', |
| | | 'unsubscribe' => 'manage_folders.inc', |
| | | 'enable-threading' => 'manage_folders.inc', |
| | | 'disable-threading' => 'manage_folders.inc', |
| | | 'add-identity' => 'edit_identity.inc', |
| | | ) |
| | | ); |