alecpl
2010-05-20 24c91ed78e64cb20b2ba08971d2c35979a2de856
- Moved error.inc to /utils
- Removed bugs.inc (content copied into main.inc)


1 files renamed
2 files modified
1 files deleted
193 ■■■■■ changed files
program/include/bugs.inc 106 ●●●●● patch | view | raw | blame | history
program/include/iniset.php 1 ●●●● patch | view | raw | blame | history
program/include/main.inc 80 ●●●●● patch | view | raw | blame | history
program/steps/utils/error.inc 6 ●●●● patch | view | raw | blame | history
program/include/bugs.inc
File was deleted
program/include/iniset.php
@@ -123,6 +123,5 @@
PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, 'rcube_pear_error');
// include global functions
require_once 'include/bugs.inc';
require_once 'include/main.inc';
require_once 'include/rcube_shared.inc';
program/include/main.inc
@@ -1618,16 +1618,92 @@
class rcube_base_replacer
{
  private $base_url;
  public function __construct($base)
  {
    $this->base_url = $base;
  }
  public function callback($matches)
  {
    return $matches[1] . '="' . make_absolute_url($matches[3], $this->base_url) . '"';
  }
}
/**
 * Throw system error and show error page
 *
 * @param array Named parameters
 *  - code: Error code (required)
 *  - type: Error type [php|db|imap|javascript] (required)
 *  - message: Error message
 *  - file: File where error occured
 *  - line: Line where error occured
 * @param boolean True to log the error
 * @param boolean Terminate script execution
 */
function raise_error($arg=array(), $log=false, $terminate=false)
{
    global $__page_content, $CONFIG, $OUTPUT, $ERROR_CODE, $ERROR_MESSAGE;
    // report bug (if not incompatible browser)
    if ($log && $arg['type'] && $arg['message'])
        log_bug($arg);
    // display error page and terminate script
    if ($terminate) {
        $ERROR_CODE = $arg['code'];
        $ERROR_MESSAGE = $arg['message'];
        include('program/steps/utils/error.inc');
        exit;
    }
}
/**
 * Report error according to configured debug_level
 *
 * @param array Named parameters
 * @see raise_error()
 */
function log_bug($arg_arr)
{
    global $CONFIG;
    $program = strtoupper($arg_arr['type']);
    // write error to local log file
    if ($CONFIG['debug_level'] & 1) {
        $post_query = ($_SERVER['REQUEST_METHOD'] == 'POST' ? '?_task='.urlencode($_POST['_task']).'&_action='.urlencode($_POST['_action']) : '');
        $log_entry = sprintf("%s Error: %s%s (%s %s)",
            $program,
            $arg_arr['message'],
            $arg_arr['file'] ? sprintf(' in %s on line %d', $arg_arr['file'], $arg_arr['line']) : '',
            $_SERVER['REQUEST_METHOD'],
            $_SERVER['REQUEST_URI'] . $post_query);
        if (!write_log('errors', $log_entry)) {
            // send error to PHPs error handler if write_log didn't succeed
            trigger_error($arg_arr['message']);
        }
    }
    // resport the bug to the global bug reporting system
    if ($CONFIG['debug_level'] & 2) {
        // TODO: Send error via HTTP
    }
    // show error if debug_mode is on
    if ($CONFIG['debug_level'] & 4) {
        print "<b>$program Error";
        if (!empty($arg_arr['file']) && !empty($arg_arr['line']))
            print " in $arg_arr[file] ($arg_arr[line])";
        print ':</b>&nbsp;';
        print nl2br($arg_arr['message']);
        print '<br />';
        flush();
    }
}
?>
program/steps/utils/error.inc
File was renamed from program/steps/error.inc
@@ -2,10 +2,10 @@
/*
 +-----------------------------------------------------------------------+
 | program/steps/error.inc                                               |
 | program/steps/utils/error.inc                                         |
 |                                                                       |
 | This file is part of the RoundCube Webmail client                     |
 | Copyright (C) 2005-2009, RoundCube Dev. - Switzerland                 |
 | Copyright (C) 2005-2010, RoundCube Dev. - Switzerland                 |
 | Licensed under the GNU GPL                                            |
 |                                                                       |
 | PURPOSE:                                                              |
@@ -46,7 +46,7 @@
  $__error_text  = "Could not verify that you are authorized to access this service!<br />\n".
                   "Please contact your server-administrator.";
}
// failed request (wrong step in URL)
else if ($ERROR_CODE==404) {
  $__error_title = "REQUEST FAILED/FILE NOT FOUND";