[ADD] hacky abort() proxy for json requests
authorXavier Morel <xmo@openerp.com>
Wed, 13 Nov 2013 15:19:11 +0000 (16:19 +0100)
committerXavier Morel <xmo@openerp.com>
Wed, 13 Nov 2013 15:19:11 +0000 (16:19 +0100)
bzr revid: xmo@openerp.com-20131113151911-l4f7vlzkcht38nuc

addons/web/static/src/js/openerpframework.js

index e986a2f..a2e4c06 100644 (file)
@@ -809,7 +809,8 @@ var genericJsonRpc = function(fct_name, params, fct) {
         params: params,
         id: Math.floor(Math.random() * 1000 * 1000 * 1000)
     };
-    return fct(data).pipe(function(result) {
+    var xhr = fct(data);
+    var result = xhr.pipe(function(result) {
         if (result.error !== undefined) {
             console.error("Server application error", result.error);
             return $.Deferred().reject("server", result.error);
@@ -821,6 +822,9 @@ var genericJsonRpc = function(fct_name, params, fct) {
         var def = $.Deferred();
         return def.reject.apply(def, ["communication"].concat(_.toArray(arguments)));
     });
+    // FIXME: jsonp?
+    result.abort = function () { xhr.abort && xhr.abort(); };
+    return result;
 };
 
 openerp.jsonRpc = function(url, fct_name, params, settings) {