merge of '3041774927e7490f413c502580f789b26a0e693d'
and 'adf196d027f81b081e5999a384d4c9faaea58f27' Monotone-Parent: 3041774927e7490f413c502580f789b26a0e693d Monotone-Parent: adf196d027f81b081e5999a384d4c9faaea58f27 Monotone-Revision: 0194b10e82c289d4b0daf68bd644381fc3f912c7 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2010-09-03T15:49:51 Monotone-Branch: ca.inverse.sogomaint-2.0.2
commit
77e019bd05
14
ChangeLog
14
ChangeLog
|
@ -1,3 +1,17 @@
|
|||
2010-09-02 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
||||
|
||||
* UI/WebServerResources/generic.js: (recoverRequest): removed
|
||||
obsolete function.
|
||||
(onAjaxRequestStateChange): when a recovery request is required,
|
||||
we now use the new "createCASRecoveryIFrame" function and the
|
||||
"onCASRecoverIFrameLoaded" to handle the request.
|
||||
|
||||
* UI/MainUI/SOGoUserHomePage.m (-recoverAction): new method,
|
||||
returning a simple text-based response with HTTP code 200,
|
||||
ensuring that the CAS authentication process has succeeded.
|
||||
|
||||
* UI/MainUI/SOGoRootPage.m (-recoverAction): removed method.
|
||||
|
||||
2010-09-02 Francis Lachapelle <flachapelle@inverse.ca>
|
||||
|
||||
* UI/WebServerResources/generic.js (openMailTo): replaced calls to
|
||||
|
|
|
@ -435,9 +435,4 @@
|
|||
return response;
|
||||
}
|
||||
|
||||
- (id) recoverAction
|
||||
{
|
||||
return [self jsCloseWithRefreshMethod: @"recoverRequest();"];
|
||||
}
|
||||
|
||||
@end /* SOGoRootPage */
|
||||
|
|
|
@ -399,4 +399,10 @@
|
|||
return result;
|
||||
}
|
||||
|
||||
- (id) recoverAction
|
||||
{
|
||||
return [self responseWithStatus: 200
|
||||
andString: @"Full recovery in place."];
|
||||
}
|
||||
|
||||
@end
|
||||
|
|
|
@ -110,11 +110,6 @@
|
|||
protectedBy = "<public>";
|
||||
pageName = "SOGoRootPage";
|
||||
};
|
||||
recover = {
|
||||
protectedBy = "View";
|
||||
pageName = "SOGoRootPage";
|
||||
actionName = "recover";
|
||||
};
|
||||
index = {
|
||||
protectedBy = "<public>";
|
||||
pageName = "SOGoRootPage";
|
||||
|
@ -163,6 +158,11 @@
|
|||
protectedBy = "<public>";
|
||||
pageName = "SOGoUserHomePage";
|
||||
};
|
||||
recover = {
|
||||
protectedBy = "View";
|
||||
pageName = "SOGoUserHomePage";
|
||||
actionName = "recover";
|
||||
};
|
||||
logoff = {
|
||||
protectedBy = "<public>";
|
||||
pageName = "SOGoUserHomePage";
|
||||
|
|
|
@ -843,6 +843,7 @@ DIV.tabsContainer > DIV.tabs > DIV.tab
|
|||
right: 5px;
|
||||
overflow: hidden; }
|
||||
|
||||
IFRAME.hidden,
|
||||
DIV.tab
|
||||
{ display: none; }
|
||||
|
||||
|
|
|
@ -23,7 +23,6 @@ var logConsole;
|
|||
var logWindow = null;
|
||||
|
||||
var queryParameters;
|
||||
var recoveryRequest = null;
|
||||
|
||||
var menus = new Array();
|
||||
var search = {};
|
||||
|
@ -208,7 +207,7 @@ function openMailComposeWindow(url, wId) {
|
|||
function openMailTo(senderMailTo) {
|
||||
var addresses = senderMailTo.split(",");
|
||||
var sanitizedAddresses = new Array();
|
||||
var subject = extractSubject(senderMailTo);
|
||||
var subject = extractSubject(senderMailTo);
|
||||
for (var i = 0; i < addresses.length; i++) {
|
||||
var sanitizedAddress = sanitizeMailTo(addresses[i]);
|
||||
if (sanitizedAddress.length > 0)
|
||||
|
@ -246,18 +245,38 @@ function createHTTPClient() {
|
|||
return new XMLHttpRequest();
|
||||
}
|
||||
|
||||
function createCASRecoveryIFrame(http) {
|
||||
var urlstr = UserFolderURL;
|
||||
if (!urlstr.endsWith('/'))
|
||||
urlstr += '/';
|
||||
urlstr += "recover";
|
||||
|
||||
var newIFrame = createElement("iframe", null, "hidden",
|
||||
{ src: urlstr });
|
||||
newIFrame.request = http;
|
||||
newIFrame.observe("load", onCASRecoverIFrameLoaded);
|
||||
document.body.appendChild(newIFrame);
|
||||
}
|
||||
|
||||
function onCASRecoverIFrameLoaded(event) {
|
||||
if (this.request) {
|
||||
var request = this.request;
|
||||
triggerAjaxRequest(request.url,
|
||||
request.callback,
|
||||
request.callbackData,
|
||||
request.paramHeaders);
|
||||
this.request = null;
|
||||
}
|
||||
this.parentNode.removeChild(this);
|
||||
}
|
||||
|
||||
function onAjaxRequestStateChange(http) {
|
||||
try {
|
||||
if (http.readyState == 4) {
|
||||
if (http.status == 0 && usesCASAuthentication) {
|
||||
activeAjaxRequests--;
|
||||
checkAjaxRequestsState();
|
||||
recoveryRequest = http;
|
||||
var urlstr = ApplicationBaseURL;
|
||||
if (!urlstr.endsWith('/'))
|
||||
urlstr += '/';
|
||||
urlstr += ("../../recover");
|
||||
window.open(urlstr, "_blank");
|
||||
createCASRecoveryIFrame(http);
|
||||
}
|
||||
else if (activeAjaxRequests > 0) {
|
||||
if (!http.aborted)
|
||||
|
@ -289,16 +308,6 @@ function onAjaxRequestStateChange(http) {
|
|||
}
|
||||
}
|
||||
|
||||
function recoverRequest() {
|
||||
if (recoveryRequest) {
|
||||
triggerAjaxRequest(recoveryRequest.url,
|
||||
recoveryRequest.callback,
|
||||
recoveryRequest.callbackData,
|
||||
recoveryRequest.paramHeaders);
|
||||
recoveryRequest = null;
|
||||
}
|
||||
}
|
||||
|
||||
/* taken from Lightning */
|
||||
function getContrastingTextColor(bgColor) {
|
||||
var calcColor = bgColor.substring(1);
|
||||
|
@ -1694,7 +1703,7 @@ AIM = {
|
|||
frame: function(c) {
|
||||
var d = new Element ('div');
|
||||
var n = d.identify ();
|
||||
d.innerHTML = '<iframe style="display:none" src="about:blank" id="'
|
||||
d.innerHTML = '<iframe class="hidden" src="about:blank" id="'
|
||||
+ n + '" name="' + n + '" onload="AIM.loaded(\'' + n + '\')"></iframe>';
|
||||
document.body.appendChild(d);
|
||||
var i = $(n); // TODO: useful?
|
||||
|
|
Loading…
Reference in New Issue