X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=functions%2Fdisplay_messages.php;h=cce8e1109b95c1f0477630ca4e634e1e608899ff;hb=fe2a5f768f2c3458c6d0545a9d64c7e2f16593be;hp=048594283a94b8f4b238b292706325e4581e2b6a;hpb=26f277a6f9b3c816da010ef89cef45def1ccec29;p=squirrelmail.git diff --git a/functions/display_messages.php b/functions/display_messages.php index 04859428..cce8e110 100644 --- a/functions/display_messages.php +++ b/functions/display_messages.php @@ -12,84 +12,173 @@ * $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 + cleanly. */ + + if (!isset($frame_top)) { + $frame_top = '_top'; + } echo '
'. - ''. + '
'. ''. ''. '' . - ''. '
' . _("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 '
'; - echo "
"; - echo ''; - echo ' '; - echo " '; - echo '
"; - echo '
'; - printf (_("Welcome to %s's WebMail system"), $org_name); - echo '
'; - echo '
'; - echo ' '; - echo ' '; - echo ' '; - echo ' '; - echo ' '; - echo '
'; - if ( strlen($org_logo) > 3 ) { - echo " "; - } else { - echo " $org_name"; - } - echo '
'; - printf (_("Running SquirrelMail version %s (c) 1999-2001."), $version); - echo '

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

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

$message"; - echo '
'; - echo '
'; + echo "
". + ''. + "'. + '
". + "" . _("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") . "". + '
'; +} + ?>