|
@@ -11,55 +11,24 @@
|
|
*
|
|
*
|
|
* $Id$
|
|
* $Id$
|
|
*/
|
|
*/
|
|
-
|
|
|
|
-$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;
|
|
|
|
- } else if ($key == 'bcc') {
|
|
|
|
- $rcptaddress .= '&send_to_bcc=' . $value;
|
|
|
|
- } else if ($key == 'subject') {
|
|
|
|
- $rcptaddress .= '&subject=' . $value;
|
|
|
|
- } else if ($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('../functions/strings.php');
|
|
require_once('../config/config.php');
|
|
require_once('../config/config.php');
|
|
require_once('../functions/i18n.php');
|
|
require_once('../functions/i18n.php');
|
|
require_once('../functions/plugin.php');
|
|
require_once('../functions/plugin.php');
|
|
require_once('../functions/constants.php');
|
|
require_once('../functions/constants.php');
|
|
require_once('../functions/page_header.php');
|
|
require_once('../functions/page_header.php');
|
|
-require_once('../functions/html.php');
|
|
|
|
|
|
+require_once('../class/browser.class');
|
|
|
|
+
|
|
|
|
+// initialize some vars
|
|
|
|
+if(!isset($UA)) $UA = '';
|
|
|
|
+if(!isset($cc)) $cc = '';
|
|
|
|
+if(!isset($dl)) $dl = '';
|
|
|
|
+if(!isset($am)) $am = '';
|
|
|
|
+
|
|
|
|
+$sniffer_settings = array('check_cookies'=>$cc,
|
|
|
|
+ 'default_language'=>$dl,
|
|
|
|
+ 'allow_masquerading'=>$am);
|
|
|
|
+$browser = new phpSniff($UA,$sniffer_settings);
|
|
|
|
|
|
/*
|
|
/*
|
|
* $squirrelmail_language is set by a cookie when the user selects
|
|
* $squirrelmail_language is set by a cookie when the user selects
|
|
@@ -75,7 +44,8 @@ if (!function_exists('sqm_baseuri')){
|
|
}
|
|
}
|
|
$base_uri = sqm_baseuri();
|
|
$base_uri = sqm_baseuri();
|
|
@session_destroy();
|
|
@session_destroy();
|
|
-
|
|
|
|
|
|
+session_start();
|
|
|
|
+session_register('browser');
|
|
/*
|
|
/*
|
|
* In case the last session was not terminated properly, make sure
|
|
* In case the last session was not terminated properly, make sure
|
|
* we get a new one.
|
|
* we get a new one.
|
|
@@ -91,7 +61,7 @@ do_hook('login_cookie');
|
|
|
|
|
|
/* Output the javascript onload function. */
|
|
/* Output the javascript onload function. */
|
|
|
|
|
|
-$header = "<SCRIPT LANGUAGE=\"JavaScript\" type=\"text/javascript\">\n" .
|
|
|
|
|
|
+$header = "<SCRIPT LANGUAGE=\"JavaScript\" TYPE=\"text/javascript\">\n" .
|
|
"<!--\n".
|
|
"<!--\n".
|
|
" function squirrelmail_loginpage_onload() {\n".
|
|
" function squirrelmail_loginpage_onload() {\n".
|
|
" document.forms[0].js_autodetect_results.value = '" . SMPREF_JS_ON . "';\n".
|
|
" document.forms[0].js_autodetect_results.value = '" . SMPREF_JS_ON . "';\n".
|
|
@@ -103,7 +73,8 @@ $custom_css = 'none';
|
|
displayHtmlHeader( "$org_name - " . _("Login"), $header, FALSE );
|
|
displayHtmlHeader( "$org_name - " . _("Login"), $header, FALSE );
|
|
|
|
|
|
/* Set the title of this page. */
|
|
/* Set the title of this page. */
|
|
-echo '<body text="#000000" bgcolor="#FFFFFF" link="#0000CC" vlink="#0000CC" alink="#0000CC" onLoad="squirrelmail_loginpage_onload();">';
|
|
|
|
|
|
+echo '<BODY TEXT="#000000" BGCOLOR="#FFFFFF" LINK="#0000CC" VLINK="#0000CC" ALINK="#0000CC" onLoad="squirrelmail_loginpage_onload();">'.
|
|
|
|
+ "\n<FORM ACTION=\"redirect.php\" METHOD=\"POST\">\n";
|
|
|
|
|
|
$username_form_name = 'login_username';
|
|
$username_form_name = 'login_username';
|
|
$password_form_name = 'secretkey';
|
|
$password_form_name = 'secretkey';
|
|
@@ -113,73 +84,52 @@ $loginname_value = (isset($loginname) ? htmlspecialchars($loginname) : '');
|
|
|
|
|
|
/* Display width and height like good little people */
|
|
/* Display width and height like good little people */
|
|
$width_and_height = '';
|
|
$width_and_height = '';
|
|
-if (isset($org_logo_width) && is_numeric($org_logo_width) && $org_logo_width>0) {
|
|
|
|
- $width_and_height = " width=\"$org_logo_width\"";
|
|
|
|
|
|
+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_numeric($org_logo_height) && $org_logo_height>0) {
|
|
|
|
- $width_and_height .= " height=\"$org_logo_height\"";
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-$rcptaddress_input = '';
|
|
|
|
-if ($rcptaddress != '') {
|
|
|
|
- $rcptaddress_input = '<input type="hidden" name="rcptemail" value="htmlspecialchars(' . $rcptaddress . ')">';
|
|
|
|
|
|
+if (isset($org_logo_height) && is_int($org_logo_height) && $org_logo_height>0) {
|
|
|
|
+ $width_and_height .= " HEIGHT=\"$org_logo_height\"";
|
|
}
|
|
}
|
|
|
|
|
|
-echo "\n" . '<form action="redirect.php" method="post">' . "\n" .
|
|
|
|
-html_tag( 'table',
|
|
|
|
- html_tag( 'tr',
|
|
|
|
- html_tag( 'td',
|
|
|
|
- '<center>'.
|
|
|
|
- '<img src="' . $org_logo . '" alt="' . sprintf(_("%s Logo"), $org_name) .'"' .
|
|
|
|
- $width_and_height .'><br>' . "\n".
|
|
|
|
- ( $hide_sm_attributions ? '' :
|
|
|
|
- '<small>' . sprintf (_("SquirrelMail version %s"), $version) . '<br>' ."\n".
|
|
|
|
- ' ' . _("By the SquirrelMail Development Team") . '<br></small>' . "\n" ) .
|
|
|
|
- html_tag( 'table',
|
|
|
|
- html_tag( 'tr',
|
|
|
|
- html_tag( 'td',
|
|
|
|
- '<b>' . sprintf (_("%s Login"), $org_name) . "</b>\n",
|
|
|
|
- 'center', '#DCDCDC' )
|
|
|
|
- ) .
|
|
|
|
- html_tag( 'tr',
|
|
|
|
- html_tag( 'td', "\n" .
|
|
|
|
- html_tag( 'table',
|
|
|
|
- html_tag( 'tr',
|
|
|
|
- html_tag( 'td',
|
|
|
|
- _("Name:") ,
|
|
|
|
- 'right', '', 'width="30%"' ) .
|
|
|
|
- html_tag( 'td',
|
|
|
|
- '<input type="text" name="' . $username_form_name .'" value="' . $loginname_value .'">' ,
|
|
|
|
- 'left', '', 'width="*"' )
|
|
|
|
- ) . "\n" .
|
|
|
|
- html_tag( 'tr',
|
|
|
|
- html_tag( 'td',
|
|
|
|
- _("Password:") ,
|
|
|
|
- 'right', '', 'width="30%"' ) .
|
|
|
|
- html_tag( 'td',
|
|
|
|
- '<input type="password" name="' . $password_form_name . '">' . "\n" .
|
|
|
|
- '<input type=hidden name="js_autodetect_results" value="SMPREF_JS_OFF">' . "\n" .
|
|
|
|
- '<input type=hidden name="just_logged_in" value=1>' . "\n" .
|
|
|
|
- $rcptaddress_input . "\n" ,
|
|
|
|
- 'left', '', 'width="*"' )
|
|
|
|
- ) ,
|
|
|
|
- 'center', '#ffffff', 'border="0" cols="2" width="100%"' ) ,
|
|
|
|
- 'left', '#FFFFFF' )
|
|
|
|
- ) .
|
|
|
|
- html_tag( 'tr',
|
|
|
|
- html_tag( 'td',
|
|
|
|
- '<center><input type="submit" value="' . _("Login") . '"></center>',
|
|
|
|
- 'left' )
|
|
|
|
- ),
|
|
|
|
- '', '#ffffff', 'border="0" cols="1" width="350"' ),
|
|
|
|
- 'center' )
|
|
|
|
- ) ,
|
|
|
|
-'', '#ffffff', 'border="0" cellspacing="0" cellpadding="0" width="100%"' ) .
|
|
|
|
-'</form>' . "\n";
|
|
|
|
|
|
+echo '<CENTER>'.
|
|
|
|
+ " <IMG SRC=\"$org_logo\" ALT=\"" . sprintf(_("%s Logo"), $org_name) .
|
|
|
|
+ "\"$width_and_height><BR>\n".
|
|
|
|
+ ( $hide_sm_attributions ? '' :
|
|
|
|
+ '<SMALL>' . sprintf (_("SquirrelMail version %s"), $version) . "<BR>\n".
|
|
|
|
+ ' ' . _("By the SquirrelMail Development Team") . "<BR></SMALL>\n" ) .
|
|
|
|
+ "</CENTER>\n".
|
|
|
|
+
|
|
|
|
+ "<CENTER>\n".
|
|
|
|
+ "<TABLE COLS=\"1\" WIDTH=\"350\">\n".
|
|
|
|
+ " <TR><TD ALIGN=CENTER BGCOLOR=\"#DCDCDC\">\n".
|
|
|
|
+ ' <B>' . sprintf (_("%s Login"), $org_name) . "</B>\n".
|
|
|
|
+ " </TD></TR>".
|
|
|
|
+ " <TR><TD BGCOLOR=\"#FFFFFF\"><TABLE COLS=2 WIDTH=\"100%\">\n".
|
|
|
|
+ " <TR>\n".
|
|
|
|
+ ' <TD WIDTH="30%" ALIGN=right>' . _("Name:") . "</TD>\n".
|
|
|
|
+ " <TD WIDTH=\"*\" ALIGN=left>\n".
|
|
|
|
+ " <INPUT TYPE=TEXT NAME=\"$username_form_name\" VALUE=\"$loginname_value\">\n".
|
|
|
|
+ " </TD>\n".
|
|
|
|
+ " </TR>\n".
|
|
|
|
+ " <TR>\n".
|
|
|
|
+ ' <TD WIDTH="30%" ALIGN=right>' . _("Password:") . "</TD>\n".
|
|
|
|
+ " <TD WIDTH=\"*\" ALIGN=left>\n".
|
|
|
|
+ " <INPUT TYPE=PASSWORD NAME=\"$password_form_name\">\n".
|
|
|
|
+ " <INPUT TYPE=HIDDEN NAME=\"js_autodetect_results\" VALUE=\"" . SMPREF_JS_OFF . "\">\n".
|
|
|
|
+ " <INPUT TYPE=HIDDEN NAME=\"just_logged_in\" value=1>\n".
|
|
|
|
+ " </TD>\n".
|
|
|
|
+ " </TR>\n".
|
|
|
|
+ " </TABLE></TD></TR>\n".
|
|
|
|
+ " <TR><TD>\n".
|
|
|
|
+ ' <CENTER><INPUT TYPE=SUBMIT VALUE="' . _("Login") . "\"></CENTER>\n".
|
|
|
|
+ " </TD></TR>\n".
|
|
|
|
+ "</TABLE>\n".
|
|
|
|
+ "</CENTER>\n";
|
|
|
|
|
|
do_hook('login_form');
|
|
do_hook('login_form');
|
|
|
|
+echo "</FORM>\n";
|
|
|
|
|
|
do_hook('login_bottom');
|
|
do_hook('login_bottom');
|
|
-echo "</body>\n".
|
|
|
|
- "</html>\n";
|
|
|
|
-?>
|
|
|
|
|
|
+echo "</BODY>\n".
|
|
|
|
+ "</HTML>\n";
|
|
|
|
+?>
|