Difference between revisions of "MediaWiki:Common.js"

From wiki
Jump to navigation Jump to search
Line 8: Line 8:
 
var prefs = JSON.parse(localStorage.getItem("uls-preferences"));
 
var prefs = JSON.parse(localStorage.getItem("uls-preferences"));
  
console.log('GCcollab lang: ' + getCookie('lang'));
+
var lang = getCookie('lang');
 +
console.log('GCcollab lang: ' + lang);
 
console.log('MediaWiki lang: ' + getCookie('wikilanguage'));
 
console.log('MediaWiki lang: ' + getCookie('wikilanguage'));
 
console.log('LocalStorage: ' + localStorage);
 
console.log('LocalStorage: ' + localStorage);
 
console.log('MediaWiki localStorage lang: ' + prefs.ime.language);
 
console.log('MediaWiki localStorage lang: ' + prefs.ime.language);
 +
 +
 +
var apiURL = 'https://wiki.gccollab.ca/api.php';
 +
 +
$.ajax({
 +
    url: apiURL,
 +
    data: {
 +
        action: 'query',
 +
        meta: 'userinfo',
 +
        format: 'json',
 +
        origin: 'https://wiki.gccollab.ca'
 +
    },
 +
    xhrFields: {
 +
        withCredentials: true
 +
    },
 +
    dataType: 'json'
 +
}).done(function (data){
 +
    console.log(data);
 +
});
 +
 +
 +
$.ajax({
 +
    url: apiURL,
 +
    data: {
 +
        action: 'query',
 +
        meta: 'tokens',
 +
        format: 'json',
 +
        origin: 'https://wiki.gccollab.ca'
 +
    },
 +
    xhrFields: {
 +
        withCredentials: true
 +
    },
 +
    dataType: 'json'
 +
}).done(function (data){
 +
    console.log(data);
 +
    $.ajax({
 +
        url: apiURL + '?origin=https://wiki.gccollab.ca',
 +
        method: 'POST',
 +
        data: {
 +
            action: 'options',
 +
            format: 'json',
 +
            token: data.query.tokens.csrftoken,
 +
            optionname: 'language',
 +
            optionvalue: lang
 +
        },
 +
        xhrFields: {
 +
            withCredentials: true
 +
        },
 +
        dataType: 'json'
 +
    }).done(function (data){
 +
        console.log(data);
 +
    }
 +
});

Revision as of 14:48, 18 April 2018

/* Any JavaScript here will be loaded for all users on every page load. */

function getCookie(name) {
  match = document.cookie.match(new RegExp(name + '=([^;]+)'));
  if (match) return match[1];
}

var prefs = JSON.parse(localStorage.getItem("uls-preferences"));

var lang = getCookie('lang');
console.log('GCcollab lang: ' + lang);
console.log('MediaWiki lang: ' + getCookie('wikilanguage'));
console.log('LocalStorage: ' + localStorage);
console.log('MediaWiki localStorage lang: ' + prefs.ime.language);


var apiURL = 'https://wiki.gccollab.ca/api.php';

$.ajax({
    url: apiURL,
    data: {
        action: 'query',
        meta: 'userinfo',
        format: 'json',
        origin: 'https://wiki.gccollab.ca'
    },
    xhrFields: {
        withCredentials: true
    },
    dataType: 'json'
}).done(function (data){
    console.log(data);
});


$.ajax({
    url: apiURL,
    data: {
        action: 'query',
        meta: 'tokens',
        format: 'json',
        origin: 'https://wiki.gccollab.ca'
    },
    xhrFields: {
        withCredentials: true
    },
    dataType: 'json'
}).done(function (data){
    console.log(data);
    $.ajax({
        url: apiURL + '?origin=https://wiki.gccollab.ca',
        method: 'POST',
        data: {
            action: 'options',
            format: 'json',
            token: data.query.tokens.csrftoken,
            optionname: 'language',
            optionvalue: lang
        },
        xhrFields: {
            withCredentials: true
        },
        dataType: 'json'
    }).done(function (data){
        console.log(data);
    }
});