Notu:Post publikigo forviŝu la kaŝmemoron de via foliumilo por vidi la ŝanĝojn.

  • Firefox / Safari: Premu majuskligan klavon klakante Reŝarĝi, aŭ premu aŭ Stir-F5Stir-R (⌘-R kun Makintoŝo)
  • Google Chrome: Premu Stir-majuskligklavon-R (⌘-Majuskligklavo-R kun Makintoŝo)
  • Interreta Esplorilo / Edge: Premu Stir klakante Refreŝu, aŭ premu Stir-F5
  • Opera: Premu Stir-F5.
var onDOMChanges = function (callback, node, options) {
  var targetNode = node || document.body;
  var config = options || {attributes: true, childList: true, subtree: true};
  var observer = new MutationObserver(callback);
  observer.observe(targetNode, config);
  return observer;
};

if (mw.config.get('wgNamespaceNumber') === 104 && mw.config.get('wgAction') === 'edit') {
	onDOMChanges(canvasCreated, $(".prp-page-image")[0]);
}

function canvasCreated() {
	const url = $("#ca-proofreadPageScanLink > a").attr("href");
	const $cvs = $("canvas");
	if ($cvs.length !== 0 && false) {
		const canvas = $cvs[0];
		ctx = canvas.getContext("2d");
		ctx.filter = "grayscale(1) invert(1) sepia(1)"
		image = new Image();
		image.crossOrigin = "Anonymous";
		image.src = url;
		ctx.clearRect(0, 0, canvas.width, canvas.height);
		ctx.drawImage(image, 0, 0);
	}
}

if (mw.config.get('wgAction') === 'edit') {
	onDOMChanges(hideMenus, $("#editform")[0]);
}

function hideMenus() {
	$(".tab-advanced").hide();
	$(".tab-characters").hide();
	$(".tab-help").hide();
	$(".tab-proofreadpage-tools").hide();
	if (mw.config.get('wgNamespaceNumber') === 104) {
		const lst = $("#wikiEditor-section-proofreadpage-tools > div");
		if (lst.length !== 0) {
			$("#wikiEditor-section-main").append(lst);
			lst.find(".label").hide();
		}
	}
}

if (mw.config.get('wgNamespaceNumber') === 104 && mw.config.get('wgAction') === 'edit') {
    mw.loader.using(['mediawiki.util', 'mediawiki.api', 'user'], function () {
        $(fullscreen);
        $(vdkFetcher);
    });
}

function vdkFetcher($) {
  const URL = mw.config.get("wgServer") + mw.config.get("wgScript");
  let title = mw.config.get("wgPageName").split("/");
  let nb = parseInt(title[1]) - 1;
  let newTitle = title[0] + "/" + nb;
  let res = $.get(URL, {"title": newTitle, "action": "raw"}, 
  function (data) {
    const regex = new RegExp("{{VDK.+}}", "i");
    let vdk = data.match(regex)[0];
    let vdf = vdk.replace("VDK", "VDF").replace("Vdk", "Vdf");
    let tb = $("#wpTextbox1")[0];
    tb.value = vdf + " ";
  });
}

function fullscreen($) {
  const p = mw.util.addPortletLink("p-namespaces", "#", "Plein écran");
  
  $(p).click(function (e) {
    if ($("#mw-panel").is(":visible")) {
      document.getElementById("content").style.marginLeft="0";
      document.getElementById("content").style.paddingLeft="0";
      document.getElementById("content").style.paddingRight="0";
      $("#mw-panel").hide();
    } else {
      document.getElementById("content").style.marginLeft="11em";
      document.getElementById("content").style.paddingLeft="1.5em";
      document.getElementById("content").style.paddingRight="1.5em";
      $("#mw-panel").show();		
    }
  });
}

/* Preload next page image in Page namespace */

$(function () {
	var page = mw.config.get('wgPageName');
	var next = page.replace(/(.*\/)(\d+)$/, function(match, p1, p2) {
		return p1 + (parseInt(p2) + 1);
  	});
	var query = {
	    "action": "query",
	    "format": "json",
	    "prop": "imageforpage",
	    "titles": next,
	    "formatversion": "2"
	};
	var api = new mw.Api();
	api.get(query).done(prefetchImages);
});

function prefetchImages (data) {
	var images = data.query.pages[0].imagesforpage;
	var promises = [];
	promises.push($.get(images.thumbnail));
	promises.push($.get(images.responsiveimages["1.5"]));
	promises.push($.get(images.responsiveimages["2"]));
//	promises.push($.get(images.fullsize));
/* Fullsize doesn't seem to be used for anything and could be huge. */

	Promise.all(promises).then(function () {
		$('#ca-proofreadPageNextLink a').css({
			'border-bottom': '3px solid lightgreen'
		});
	});
}