X-Git-Url: https://vcs.fsf.org/?p=squirrelmail.git;a=blobdiff_plain;f=functions%2Fdisplay_messages.php;h=cce8e1109b95c1f0477630ca4e634e1e608899ff;hp=2fe6bd4a6a14dd4d0358fea35cc08acc7a498cda;hb=1f05436ea9c69a768384181fa115546c6ae58bc9;hpb=76b684a5e8035dd5781262fab912c18ef2998ec9 diff --git a/functions/display_messages.php b/functions/display_messages.php index 2fe6bd4a..cce8e110 100644 --- a/functions/display_messages.php +++ b/functions/display_messages.php @@ -12,6 +12,49 @@ * $Id$ */ +/** + * Find out where squirrelmail lives and try to be smart about it. + * The only problem would be when squirrelmail lives in directories + * called "src", "functions", or "plugins", but people who do that need + * to be beaten with a steel pipe anyway. + * + * @return the base uri of squirrelmail installation. + */ +function sqm_baseuri(){ + global $base_uri, $PHP_SELF; + /** + * If it is in the session, just return it. + */ + if (isset($base_uri)){ + return $base_uri; + } + $dirs = array('|src/.*|', '|plugins/.*|', '|functions/.*|'); + $repl = array('', '', ''); + $base_uri = preg_replace($dirs, $repl, $PHP_SELF); + return $base_uri; +} + +/** + * Find out the top REAL path of the squirrelmail installation. + * + * @return the real installation directory of squirrelmail. + */ + +function sqm_topdir(){ + $topdir = ''; + /** + * $levels is just to avoid a potential infinite loop in case + * things are REALLY broken. Shouldn't really ever happen. + */ + $levels = 0; + while (!(is_dir("$topdir/functions") && is_dir("$topdir/src")) + && $levels < 10){ + $topdir .= '../'; + $levels++; + } + return $topdir; +} + function error_username_password_incorrect() { global $frame_top, $color; /* XXX: Should really not start the HTML before this, or close off more @@ -26,61 +69,30 @@ function error_username_password_incorrect() { ''. '' . _("ERROR") . ''. '' . - ''. - '

' . _("Unknown user or password incorrect.") . - '
' . - _("Click here to try again") . - '.
'. + ''. + '
' . _("Unknown user or password incorrect.") . + '
' . _("Click here to try again") . + '.'. ''. ''. ''; } -function general_info($motd, $org_logo, $version, $org_name, $color) { - - echo '
'. - "
". - ''. - '' . - "'. - '
" . - '
'; - printf (_("Welcome to %s's WebMail system"), $org_name); - echo '
'. - '
'. - ''. - ''. - '' . - ''. - ''. - '
'; - if ( strlen($org_logo) > 3 ) { - echo ""; - } else { - echo "$org_name"; - } - echo '
'; - printf (_("Running SquirrelMail version %s (c) 1999-2001."), $version); - echo '

'. - '
' . - $motd. - '
'. - '
'. - '
'; -} - function error_message($message, $mailbox, $sort, $startMessage, $color) { $urlMailbox = urlencode($mailbox); echo '
'. - "". + "
". ''. - "'. @@ -88,16 +100,85 @@ function error_message($message, $mailbox, $sort, $startMessage, $color) { } function plain_error_message($message, $color) { - echo '
'. - "
". - "
" . _("ERROR") . '
'. - '
'. - "

$message
\n". + "
". + "" . _("ERROR") . ''. + '
'. + "
$message
\n". '
'. - ""; + ""; printf (_("Click here to return to %s"), $mailbox); echo '.'. '
". + echo "
". ''. - "'. '
". - "
" . _("ERROR") . '
'. - '
'. - "

$message". - '
'. + "
". + "" . _("ERROR") . ''. + '
'. + "
$message". '
'; } +function logout_error( $errString, $errTitle = '' ) { + global $frame_top, $org_logo, $org_name, $org_logo_width, $org_logo_height, + $hide_sm_attributions, $version, $squirrelmail_language; + + $base_uri = sqm_baseuri(); + $topdir = sqm_topdir(); + include_once( "$topdir/functions/page_header.php" ); + if ( !isset( $org_logo ) ) { + // Don't know yet why, but in some accesses $org_logo is not set. + include( "$topdir/config/config.php" ); + } + /* Display width and height like good little people */ + $width_and_height = ''; + if (isset($org_logo_width) && is_int($org_logo_width) && $org_logo_width>0) { + $width_and_height = " WIDTH=\"$org_logo_width\""; + } + if (isset($org_logo_height) && is_int($org_logo_height) && $org_logo_height>0) { + $width_and_height .= " HEIGHT=\"$org_logo_height\""; + } + + if (!isset($frame_top) || $frame_top == '' ) { + $frame_top = '_top'; + } + + if ( !isset( $color ) ) { + $color = array(); + $color[0] = '#DCDCDC'; /* light gray TitleBar */ + $color[1] = '#800000'; /* red */ + $color[2] = '#CC0000'; /* light red Warning/Error Messages */ + $color[3] = '#A0B8C8'; /* green-blue Left Bar Background */ + $color[4] = '#FFFFFF'; /* white Normal Background */ + $color[5] = '#FFFFCC'; /* light yellow Table Headers */ + $color[6] = '#000000'; /* black Text on left bar */ + $color[7] = '#0000CC'; /* blue Links */ + $color[8] = '#000000'; /* black Normal text */ + $color[9] = '#ABABAB'; /* mid-gray Darker version of #0 */ + $color[10] = '#666666'; /* dark gray Darker version of #9 */ + $color[11] = '#770000'; /* dark red Special Folders color */ + $color[12] = '#EDEDED'; + $color[15] = '#002266'; /* (dark blue) Unselectable folders */ + } + + if ( $errTitle == '' ) { + $errTitle = $errString; + } + set_up_language($squirrelmail_language, true); + + displayHtmlHeader( $errTitle, '', false ); + + echo "\n\n" . + '
'. + "\""
\n". + ( $hide_sm_attributions ? '' : + '' . sprintf (_("SquirrelMail version %s"), $version) . "
\n". + ' ' . _("By the SquirrelMail Development Team") . "
\n" ) . + "
". + "". + "'. + ''. + "'. + '
". + "" . _("ERROR") . + '
' . $errString . '
". + "". + '' . + _("Go to the login page") . "". + '
'; +} + ?>