X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=src%2Flogin.php;h=716f0f0c65dbbd26206b7c3ee4bd4692f328b121;hb=4dea7315db37a788bb396ce27788c394e6cba224;hp=cb9b32a2cff4394a4ec5860d094a7d2b51fa879b;hpb=9ee3e401f4c462a724be00e01236ffb843009ed6;p=squirrelmail.git diff --git a/src/login.php b/src/login.php index cb9b32a2..716f0f0c 100644 --- a/src/login.php +++ b/src/login.php @@ -1,61 +1,148 @@ - - -\n"; - echo "
\n"; - echo "
\n"; - echo "
"; - echo _("SquirrelMail version $version
By the SquirrelMail Development Team"); - echo "
\n"; + $rcptaddress = ''; + if (isset($emailaddress)) { + if (stristr($emailaddress, 'mailto:')) + $rcptaddress = substr($emailaddress, 7); + else + $rcptaddress = $emailaddress; + + if (($pos = strpos($rcptaddress, '?')) !== false) + { + $a = substr($rcptaddress, $pos + 1); + $rcptaddress = substr($rcptaddress, 0, $pos); + $a = explode('=', $a, 2); + if (isset($a[1])) { + $name = urldecode($a[0]); + $val = urldecode($a[1]); + global $$name; + $$name = $val; + } + } + + // At this point, we have parsed a lot of the mailto stuff. Let's + // do the rest -- CC, BCC, Subject, Body + // Note: They can all be case insensitive + foreach ($GLOBALS as $k => $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); + } + + require_once('../functions/strings.php'); + require_once('../config/config.php'); + require_once('../functions/i18n.php'); + require_once('../functions/plugin.php'); + + // $squirrelmail_language is set by a cookie when the user selects + // language and logs out + set_up_language($squirrelmail_language, true); + + // Need the base URI to set the cookies. (Same code as in webmail.php) + ereg ("(^.*/)[^/]+/[^/]+$", $PHP_SELF, $regs); + $base_uri = $regs[1]; + + @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 $org_name . ' - ' . _("Login"); + 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"; + echo _("By the SquirrelMail Development Team"); + echo "
\n"; echo "\n"; echo " \n"; - echo " \n"; echo " \n"; - echo " \n"; echo " \n"; echo " \n"; echo " \n"; echo "
\n"; - echo "
$org_name Login
\n"; + echo "
\n"; + echo "
"; + printf (_("%s Login"), $org_name); + echo "
\n"; echo "
\n"; + echo " \n"; echo " \n"; echo " \n"; echo " \n"; echo " \n"; echo " \n"; + echo " \n"; + echo " \n"; + if ($rcptaddress != '') { + echo " \n"; + } + echo " \n"; echo "
\n"; - echo " "; echo _("Name:"); - echo " \n"; echo " \n"; - echo "
\n"; + echo " \n"; echo "
\n"; - echo " "; echo _("Password:"); - 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'); ?>