From 449d20640bb5d8706715bdb3b76b3977040166bd Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 14 Jul 2009 14:34:55 +0000 Subject: [PATCH] Monotone-Parent: 7d7fda1fe8fdf96d8a846378379c8a49661b7e7b Monotone-Revision: a891c51c800c8bcf46a3cc4342794d975147ddb5 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-07-14T14:34:55 Monotone-Branch: ca.inverse.sogo --- UI/WebServerResources/SchedulerUI.js | 12 +++++++++--- UI/WebServerResources/generic.js | 7 ++++--- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/UI/WebServerResources/SchedulerUI.js b/UI/WebServerResources/SchedulerUI.js index e73500f5b..a218455f3 100644 --- a/UI/WebServerResources/SchedulerUI.js +++ b/UI/WebServerResources/SchedulerUI.js @@ -1504,7 +1504,6 @@ function onShowCompletedTasks(event) { function updateTaskStatus(event) { var newStatus = (this.checked ? 1 : 0); - var http = createHTTPClient(); if (isSafari() && !isSafari3()) { newStatus = (newStatus ? 0 : 1); @@ -1513,12 +1512,19 @@ function updateTaskStatus(event) { url = (ApplicationBaseURL + this.parentNode.calendar + "/" + this.parentNode.cname + "/changeStatus?status=" + newStatus); + var http = createHTTPClient(); if (http) { // TODO: add parameter to signal that we are only interested in OK http.open("POST", url, false /* not async */); http.url = url; - http.send(""); -// http.setRequestHeader("Content-Length", 0); + try { + http.send(""); + } + catch (e) { + /* IE7 tends to generate "tranaction aborted" errors for synchronous + transactions returning HTTP code 204. */ + log("exception during http.send (expected on IE7)"); + } if (isHttpStatus204(http.status)) refreshTasks(); } else diff --git a/UI/WebServerResources/generic.js b/UI/WebServerResources/generic.js index 1caf9f477..d9809ad85 100644 --- a/UI/WebServerResources/generic.js +++ b/UI/WebServerResources/generic.js @@ -356,12 +356,13 @@ function getContrastingTextColor(bgColor) { } function triggerAjaxRequest(url, callback, userdata, content, headers) { - var http = createHTTPClient(); - activeAjaxRequests++; - document.animTimer = setTimeout("checkAjaxRequestsState();", 250); //url = appendDifferentiator(url); + var http = createHTTPClient(); if (http) { + activeAjaxRequests++; + document.animTimer = setTimeout("checkAjaxRequestsState();", 250); + http.open("POST", url, true); http.url = url; http.callback = callback;