merge of '3ea5e4c3ab43c68fb675c5144a1c3378da620a48'

and '8bc0eb7c9fd973f77be1c3e110b5c04007734d45'

Monotone-Parent: 3ea5e4c3ab43c68fb675c5144a1c3378da620a48
Monotone-Parent: 8bc0eb7c9fd973f77be1c3e110b5c04007734d45
Monotone-Revision: 7f553366431940f24edc82f10721c69c1a91a3c0

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2008-08-23T03:24:41
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Wolfgang Sourdeau 2008-08-23 03:24:41 +00:00
commit e8de776baa

View file

@ -14,12 +14,13 @@ function initLogin() {
} }
function onLoginClick(event) { function onLoginClick(event) {
startAnimation($("loginButton"), $("submit")); var userNameField = $("userName");
var userName = userNameField.value;
var userName = $("userName").value;
var password = $("password").value; var password = $("password").value;
if (userName.length > 0) { if (userName.length > 0) {
startAnimation($("loginButton"), $("submit"));
if (typeof(loginSuffix) != "undefined" if (typeof(loginSuffix) != "undefined"
&& loginSuffix.length > 0 && loginSuffix.length > 0
&& !userName.endsWith(loginSuffix)) && !userName.endsWith(loginSuffix))
@ -32,6 +33,8 @@ function onLoginClick(event) {
"Content-length": parameters.length, "Content-length": parameters.length,
"Connection": "close" }); "Connection": "close" });
} }
else
userNameField.focus();
preventDefault(event); preventDefault(event);
} }
@ -41,17 +44,17 @@ function onLoginCallback(http) {
if (isHttpStatus204(http.status)) { if (isHttpStatus204(http.status)) {
var userName = $("userName").value; var userName = $("userName").value;
if (typeof(loginSuffix) != "undefined" if (typeof(loginSuffix) != "undefined"
&& loginSuffix.length > 0 && loginSuffix.length > 0
&& !userName.endsWith(loginSuffix)) && !userName.endsWith(loginSuffix))
userName += loginSuffix; userName += loginSuffix;
var address = "" + window.location.href; var address = "" + window.location.href;
var baseAddress = ApplicationBaseURL + encodeURI(userName); var baseAddress = ApplicationBaseURL + encodeURI(userName);
var altBaseAddress; var altBaseAddress;
if (baseAddress[0] == "/") { if (baseAddress[0] == "/") {
var parts = address.split("/"); var parts = address.split("/");
var hostpart = parts[2]; var hostpart = parts[2];
var protocol = parts[0]; var protocol = parts[0];
baseAddress = protocol + "//" + hostpart + baseAddress; baseAddress = protocol + "//" + hostpart + baseAddress;
} }
var altBaseAddress; var altBaseAddress;
var parts = baseAddress.split("/"); var parts = baseAddress.split("/");
@ -60,11 +63,11 @@ function onLoginCallback(http) {
var newAddress; var newAddress;
if ((address.startsWith(baseAddress) if ((address.startsWith(baseAddress)
|| address.startsWith(altBaseAddress)) || address.startsWith(altBaseAddress))
&& !address.endsWith("/logoff")) && !address.endsWith("/logoff"))
newAddress = address; newAddress = address;
else else
newAddress = baseAddress; newAddress = baseAddress;
window.location.href = newAddress; window.location.href = newAddress;
} }
} }