summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/framework
diff options
context:
space:
mode:
Diffstat (limited to 'addons/web/static/src/js/framework')
-rw-r--r--addons/web/static/src/js/framework/ajax.js17
1 files changed, 10 insertions, 7 deletions
diff --git a/addons/web/static/src/js/framework/ajax.js b/addons/web/static/src/js/framework/ajax.js
index f8392287b26..d6619449a0f 100644
--- a/addons/web/static/src/js/framework/ajax.js
+++ b/addons/web/static/src/js/framework/ajax.js
@@ -1,6 +1,7 @@
odoo.define('web.ajax', function (require) {
"use strict";
+var core = require('web.core');
var time = require('web.time');
var utils = require('web.utils');
@@ -238,6 +239,11 @@ function get_file(options) {
method: 'POST'
}).appendTo(document.body);
}
+ if (core.csrf_token) {
+ $('<input type="hidden" name="csrf_token">')
+ .val(core.csrf_token)
+ .appendTo($form_data);
+ }
var hparams = _.extend({}, options.data || {}, {token: token});
_.each(hparams, function (value, key) {
@@ -292,19 +298,16 @@ function post (controller_url, data) {
};
var Def = $.Deferred();
- var compatibility = !(typeof(FormData));
- var postData = compatibility ? new FormDataCompatibility() : new FormData();
+ var postData = new FormData();
$.each(data, function(i,val) {
postData.append(i, val);
});
-
- var xhr = new XMLHttpRequest();
- if(compatibility) {
- postData.setContentTypeHeader(xhr);
- postData = postData.buildBody();
+ if (core.csrf_token) {
+ postData.append('csrf_token', core.csrf_token);
}
+ var xhr = new XMLHttpRequest();
if(xhr.upload) xhr.upload.addEventListener('progress', progressHandler(Def), false);
var ajaxDef = $.ajax(controller_url, {