Järjestelmäviesti:Gadget-Artikkelipohjaus-mini.js
Huomautus: Selaimen välimuisti pitää tyhjentää asetusten tallentamisen jälkeen, jotta muutokset tulisivat voimaan.
- Firefox ja Safari: Napsauta Shift-näppäin pohjassa Päivitä, tai paina Ctrl-F5 tai Ctrl-R (⌘-R Macilla)
- Google Chrome: Paina Ctrl-Shift-R (⌘-Shift-R Macilla)
- Internet Explorer ja Edge: Napsauta Ctrl-näppäin pohjassa Päivitä tai paina Ctrl-F5
- Opera: Paina Ctrl-F5.
(function(w){
function main($) {
var api,
$container,
$ph_inp_def,
$ph_inp_lang,
$ph_inp_generate,
$ph_inp_usetemplate,
$inp_def,
$inp_lang,
$inp_generate,
$tr_pohja,
$lnk_pohjatitle,
$textbox;
console.log("versio: 20141214204550 ");
console.log("main");
function generate() {
var wikicode,
pohjaartikkeli;
pohjaartikkeli = $lnk_pohjatitle.html();
wikicode = "{{sub" + "st:" + pohjaartikkeli + "|" + $inp_def.val() + "}}";
jQuery.cookie( 'edellinen_nu_lang', $inp_lang.value, { expires: 1, path: '/' } );
api.get({
action: 'parse',
onlypst: true,
text: wikicode,
prop: 'text',
contentmodel: 'wikitext'
}).done(function (data) {
var pageText = wikicode;
console.log("artikkelipohjan lataus onnistui");
if ( data.parse && data.parse.text ) {
pageText = data.parse.text['*'];
}
//jQuery('#wpTextbox1').html(JSON.stringify(data, undefined, 2));
$textbox.html($textbox.html() + pageText + "\n");
//$nu_definition.val("");
}).fail(function () {
console.log("Virhe: sivun " + pohjaartikkeli + " lataus epäonnistui");
$textbox.html($textbox + wikicode + "\n");
});
}
function etsi_artikkelipohjaa() {
var kieli = $inp_lang.val();
if ( !kieli ) return;
$tr_pohja.hide();
$inp_generate.hide();
api.get({
action: 'query',
titles: "Wikisanakirja:Artikkelipohjat/" + kieli + "/" + mw.config.get('wgTitle')
}).done(function (data) {
console.log("artikkelipohja haku onnistui");
if ( data.query && data.query.pages ) {
var page = data.query.pages[Object.keys(data.query.pages)[0]];
if (page && typeof (page.missing) == 'undefined' && page.title) {
$lnk_pohjatitle.html(page.title);
$tr_pohja.show();
$inp_generate.show();
console.log("tulos: löytyi");
return;
}
console.log("tulos: ei löytynyt");
}
}).fail(function () {
console.log("Virhe: sivun " + pohjaartikkeli + " lataus epäonnistui");
});
}
function init() {
console.log("init");
api = new mw.Api();
$container = $("#nytt_uppslag");
$ph_inp_def = $("#nu_definition_input");
$ph_inp_lang = $("#nu_language_input");
$ph_inp_generate = $("#nu_submit_button");
$textbox = $("#wpTextbox1");
$tr_pohja = $('#nu_tr_pohja');
if ( $container.length === 0 || $ph_inp_def.length === 0 || $ph_inp_lang.length === 0
|| $ph_inp_generate.length === 0 || $tr_pohja.length === 0 || $textbox.length === 0 ) {
console.log("Virhe: Nappulanpaikkoja ei ole.");
return;
}
$inp_def = $('<input type="text" id="nu_definition" />');
$ph_inp_def.html($inp_def);
$inp_lang = $('<input type="text" id="nu_language" />');
$ph_inp_lang.html($inp_lang);
$inp_lang.val($.cookie('edellinen_nu_lang'));
$inp_generate = $('<input type="button" value="Tuo artikkelipohja" >');
$inp_generate.click(generate);
$inp_generate.hide();
$ph_inp_generate.html($inp_generate);
$lnk_pohjatitle = $('<a href=""></a>');
$tr_pohja.children('td').html(["Sanalle on artikkelipohja sivulla ", $lnk_pohjatitle, "."]);
$inp_lang.on('change', etsi_artikkelipohjaa);
$container.addClass("enabled");
$tr_pohja.hide();
$tr_pohja.children('th').html("Artikkelipohja");
$('.nu_ei_pohja').hide();
}; init();
}
if ( (mw.config.get('wgAction') == "edit" || mw.config.get('wgAction') == "submit") && mw.config.get('wgNamespaceNumber') === 0 ) {
console.log("juuri");
jQuery(document).ready(main);
}
})(window);