aboutsummaryrefslogtreecommitdiffstats
path: root/gitrefinery/static/js/ajax.js
blob: 144a4a50a6b6d03651ef974995db8bf3eb98b488 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/* git-refinery-web - ajax helper code
 * Based on examples from the CSRF page in the Django manual
 */

var csrftoken = Cookies.get('csrftoken');

function csrfSafeMethod(method) {
    // these HTTP methods do not require CSRF protection
    return (/^(GET|HEAD|OPTIONS|TRACE)$/.test(method));
}
$.ajaxSetup({
    crossDomain: false, // obviates need for sameOrigin test
    beforeSend: function(xhr, settings) {
        if (!csrfSafeMethod(settings.type)) {
            xhr.setRequestHeader("X-CSRFToken", csrftoken);
        }
    }
});