Difference between revisions of "MediaWiki:Common.js"

From wiki
Jump to navigation Jump to search
Line 5: Line 5:
 
   if (match) return match[1];
 
   if (match) return match[1];
 
}
 
}
 
var localStorage = JSON.parse(localStorage);
 
  
 
var lang = getCookie('lang');
 
var lang = getCookie('lang');
 
console.log('GCcollab lang: ' + lang);
 
console.log('GCcollab lang: ' + lang);
 
console.log('MediaWiki lang: ' + getCookie('wikilanguage'));
 
console.log('MediaWiki lang: ' + getCookie('wikilanguage'));
console.log('LocalStorage: ' + localStorage);
 
 
  
 
var apiURL = 'https://wiki.gccollab.ca/api.php';
 
var apiURL = 'https://wiki.gccollab.ca/api.php';

Revision as of 14:52, 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 lang = getCookie('lang');
console.log('GCcollab lang: ' + lang);
console.log('MediaWiki lang: ' + getCookie('wikilanguage'));

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);
    });
});