Important: The GCConnex decommission will not affect GCCollab or GCWiki. Thank you and happy collaborating!
Difference between revisions of "MediaWiki:Common.js"
Jump to navigation
Jump to search
Mark.wooff (talk | contribs) |
Mark.wooff (talk | contribs) |
||
Line 2: | Line 2: | ||
function getCookie(name) { | function getCookie(name) { | ||
− | + | match = document.cookie.match(new RegExp(name + '=([^;]+)')); | |
− | + | if (match) return match[1]; | |
+ | } | ||
+ | |||
+ | function setCookie(name, value) { | ||
+ | var today = new Date(); | ||
+ | today.setTime(today.getTime()); | ||
+ | expires = 1000 * 60 * 60 * 24; | ||
+ | var expires_date = new Date( today.getTime() + (expires) ); | ||
+ | document.cookie = name + "=" + escape(value) + ";path=/" + ";expires=" + expires_date.toGMTString() + ";domain=.gccollab.ca;"; | ||
} | } | ||
Line 56: | Line 64: | ||
}); | }); | ||
} | } | ||
+ | }); | ||
+ | |||
+ | $(".uls-language-block a.autonym").click(function(){ | ||
+ | var lang = $(this).attr('lang'); | ||
+ | console.log(lang); | ||
+ | setCookie('lang', lang); | ||
}); | }); |
Revision as of 21:33, 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]; } function setCookie(name, value) { var today = new Date(); today.setTime(today.getTime()); expires = 1000 * 60 * 60 * 24; var expires_date = new Date( today.getTime() + (expires) ); document.cookie = name + "=" + escape(value) + ";path=/" + ";expires=" + expires_date.toGMTString() + ";domain=.gccollab.ca;"; } var lang = getCookie('lang'); $.ajax({ url: 'api.php', data: { action: 'query', meta: 'userinfo', uiprop: 'options', format: 'json' }, xhrFields: { withCredentials: true }, dataType: 'json' }).done(function (data){ var userid = data.query.userinfo.id; var currentLang = data.query.userinfo.options.language; if(username != 0 && lang && lang != currentLang){ $.ajax({ url: 'api.php', data: { action: 'query', meta: 'tokens', format: 'json' }, xhrFields: { withCredentials: true }, dataType: 'json' }).done(function (data){ $.ajax({ url: 'api.php', method: 'POST', data: { action: 'options', format: 'json', token: data.query.tokens.csrftoken, optionname: 'language', optionvalue: lang }, xhrFields: { withCredentials: true }, dataType: 'json' }).done(function (data){ location.reload(); }); }); } }); $(".uls-language-block a.autonym").click(function(){ var lang = $(this).attr('lang'); console.log(lang); setCookie('lang', lang); });