MediaWiki:Gadget-cs.js: Difference between revisions
From Tardis Wiki, the free Doctor Who reference
Bongolium500 (talk | contribs) No edit summary |
Bongolium500 (talk | contribs) No edit summary |
||
(33 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
mw.hook( 'wikipage.content' ).add( function ( | mw.hook('wikipage.content').add(function(){ | ||
$('. | $('.cse').each(function(i, obj) { | ||
$(obj).attr("aria-hidden","true"); | |||
var citeID = $(obj).attr('id'); | |||
var citeIDNum = citeID.slice(23); //get number at end of ID | |||
var toggle = $(".mw-customtoggle-cs" + citeIDNum); | |||
$(toggle).attr("aria-controls",citeID); | |||
$(toggle).attr("title","Show " + $(toggle).attr("title").slice(7).replace('"', '\\"')); | |||
$(toggle).attr("aria-label",$(toggle).attr("title")); | |||
}); | }); | ||
} ); | }); | ||
$(".cse").on("afterExpand.mw-collapsible", function() { | |||
$(this).attr("aria-hidden","false"); | |||
var citeIDNum = $(this).attr('id').slice(23); //get number at end of ID | |||
var toggle = $(".mw-customtoggle-cs" + citeIDNum); | |||
$(toggle).attr("aria-expanded","true"); | |||
$(toggle).attr("title","Hide " + $(toggle).attr("title").slice(5).replace('"', '\\"')); | |||
$(toggle).attr("aria-label",$(toggle).attr("title")); | |||
if ($($(this).children(".csl")).length) { | |||
var csLoader = $(this).children(".csl")[0]; | |||
var json = $(csLoader).children(".csd")[0].innerHTML; | |||
var storedText = sessionStorage.getItem('CS-' + json); | |||
if (storedText != null) { | |||
csLoader.innerHTML = storedText; | |||
$(csLoader).removeClass("csl"); | |||
} else { | |||
var params = { | |||
action: 'parse', | |||
text: '{{#invoke:cite source|generateCollapsibleTextFromJSON|' + json + ' }}', | |||
format: 'json', | |||
useskin: 'timeless', | |||
mobileformat: 'false' | |||
}; | |||
var api = new mw.Api(); | |||
api.get(params).done(function(data) { | |||
var response = $(data.parse.text['*']); | |||
var citationText = $($(response).children("section")[0]).children("p")[0].innerHTML; | |||
csLoader.innerHTML = citationText; | |||
$(csLoader).removeClass("csl"); | |||
sessionStorage.setItem('CS-' + json, citationText); | |||
}); | |||
} | |||
} | |||
}); | |||
$(".cse").on("afterCollapse.mw-collapsible", function() { | |||
$(this).attr("aria-hidden","true"); | |||
var citeIDNum = $(this).attr('id').slice(23); //get number at end of ID | |||
var toggle = $(".mw-customtoggle-cs" + citeIDNum); | |||
$(toggle).attr("aria-expanded","false"); | |||
$(toggle).attr("title","Show " + $(toggle).attr("title").slice(5).replace('"', '\\"')); | |||
$(toggle).attr("aria-label",$(toggle).attr("title")); | |||
}); |
Latest revision as of 22:08, 9 April 2024
mw.hook('wikipage.content').add(function(){
$('.cse').each(function(i, obj) {
$(obj).attr("aria-hidden","true");
var citeID = $(obj).attr('id');
var citeIDNum = citeID.slice(23); //get number at end of ID
var toggle = $(".mw-customtoggle-cs" + citeIDNum);
$(toggle).attr("aria-controls",citeID);
$(toggle).attr("title","Show " + $(toggle).attr("title").slice(7).replace('"', '\\"'));
$(toggle).attr("aria-label",$(toggle).attr("title"));
});
});
$(".cse").on("afterExpand.mw-collapsible", function() {
$(this).attr("aria-hidden","false");
var citeIDNum = $(this).attr('id').slice(23); //get number at end of ID
var toggle = $(".mw-customtoggle-cs" + citeIDNum);
$(toggle).attr("aria-expanded","true");
$(toggle).attr("title","Hide " + $(toggle).attr("title").slice(5).replace('"', '\\"'));
$(toggle).attr("aria-label",$(toggle).attr("title"));
if ($($(this).children(".csl")).length) {
var csLoader = $(this).children(".csl")[0];
var json = $(csLoader).children(".csd")[0].innerHTML;
var storedText = sessionStorage.getItem('CS-' + json);
if (storedText != null) {
csLoader.innerHTML = storedText;
$(csLoader).removeClass("csl");
} else {
var params = {
action: 'parse',
text: '{{#invoke:cite source|generateCollapsibleTextFromJSON|' + json + ' }}',
format: 'json',
useskin: 'timeless',
mobileformat: 'false'
};
var api = new mw.Api();
api.get(params).done(function(data) {
var response = $(data.parse.text['*']);
var citationText = $($(response).children("section")[0]).children("p")[0].innerHTML;
csLoader.innerHTML = citationText;
$(csLoader).removeClass("csl");
sessionStorage.setItem('CS-' + json, citationText);
});
}
}
});
$(".cse").on("afterCollapse.mw-collapsible", function() {
$(this).attr("aria-hidden","true");
var citeIDNum = $(this).attr('id').slice(23); //get number at end of ID
var toggle = $(".mw-customtoggle-cs" + citeIDNum);
$(toggle).attr("aria-expanded","false");
$(toggle).attr("title","Show " + $(toggle).attr("title").slice(5).replace('"', '\\"'));
$(toggle).attr("aria-label",$(toggle).attr("title"));
});