X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=src%2Flogin.php;h=716f0f0c65dbbd26206b7c3ee4bd4692f328b121;hb=4dea7315db37a788bb396ce27788c394e6cba224;hp=c053f4803c021b2b215c26970e10aba1e16c7444;hpb=d10eeaf83ea305447a5cb06c3a60ece40d960b0e;p=squirrelmail.git diff --git a/src/login.php b/src/login.php index c053f480..716f0f0c 100644 --- a/src/login.php +++ b/src/login.php @@ -1,54 +1,100 @@ $v) + { + $key = strtolower($k); + $value = urlencode($v); + if ($key == 'cc') + $rcptaddress .= '&send_to_cc=' . $value; + elseif ($key == 'bcc') + $rcptaddress .= '&send_to_bcc=' . $value; + elseif ($key == 'subject') + $rcptaddress .= '&subject=' . $value; + elseif ($key == 'body') + $rcptaddress .= '&body=' . $value; + } + + // Double-encode in this fashion to get past redirect.php properly + $rcptaddress = urlencode($rcptaddress); + } - if (!isset($config_php)) - include("../config/config.php"); - if (!isset($strings_php)) - include("../functions/strings.php"); - if (!isset($i18n_php)) - include("../functions/i18n.php"); + require_once('../functions/strings.php'); + require_once('../config/config.php'); + require_once('../functions/i18n.php'); + require_once('../functions/plugin.php'); - // let's check to see if they compiled with gettext support - if (!function_exists("_")) { - function _($string) { - return $string; - } - } else { - // $squirrelmail_language is set by a cookie when the user selects - // language and logs out + // $squirrelmail_language is set by a cookie when the user selects + // language and logs out + set_up_language($squirrelmail_language, true); - // Use HTTP content language negotiation if cookie not set - if (!isset($squirrelmail_language) && isset($HTTP_ACCEPT_LANGUAGE)) { - $squirrelmail_language = substr($HTTP_ACCEPT_LANGUAGE, 0, 2); - } + // Need the base URI to set the cookies. (Same code as in webmail.php) + ereg ("(^.*/)[^/]+/[^/]+$", $PHP_SELF, $regs); + $base_uri = $regs[1]; - if (isset($squirrelmail_language)) { - if ($squirrelmail_language != "en" && $squirrelmail_language != "") { - putenv("LC_ALL=".$squirrelmail_language); - bindtextdomain("squirrelmail", "../locale/"); - textdomain("squirrelmail"); - header ("Content-Type: text/html; charset=".$languages[$squirrelmail_language]["CHARSET"]); - } - } - } + @session_destroy(); + // In case the last session was not terminated properly, make sure + // we get a new one. + $cookie_params = session_get_cookie_params(); + setcookie(session_name(),'',0,$cookie_params['path'].$cookie_params['domain']); + setcookie('username', '', 0, $base_uri); + setcookie('key', '', 0, $base_uri); + header ('Pragma: no-cache'); + + do_hook('login_cookie'); + + echo '' . + "\n\n" . + "\n" . + "\n"; + + if ($theme_css != "") + echo "\n"; - echo ""; - echo ""; - echo _("SquirrelMail Login"); + echo '<TITLE>'; + echo $org_name . ' - ' . _("Login"); echo "\n"; - echo "\n"; - - echo "
\n"; - echo "
\n"; + echo "\n"; + echo "\n"; + + $username_form_name = 'login_username'; + $password_form_name = 'secretkey'; + do_hook('login_top'); + + echo "
\n"; echo "
"; printf (_("SquirrelMail version %s"), $version); echo "
\n"; @@ -68,25 +114,35 @@ echo " \n"; echo _("Name:"); echo " \n"; - echo " \n"; + echo " \n"; echo " \n"; echo " \n"; echo " \n"; echo _("Password:"); echo " \n"; - echo " \n"; - echo " \n"; + echo " \n"; + echo " \n"; + if ($rcptaddress != '') { + echo " \n"; + } + echo " \n"; echo " \n"; echo " \n"; echo " \n"; echo " \n"; - echo "
\n"; echo " \n"; echo " \n"; echo "\n"; + echo "\n"; + do_hook('login_form'); echo "\n"; + do_hook('login_bottom'); ?>