MediaWiki:Common.js

From WikiMSK

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (โŒ˜-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (โŒ˜-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
/* Any JavaScript here will be loaded for all users on every page load. */
/*Remove the file size information on the gallery image for dynamicpagelist*/
	var galleryText = document.querySelectorAll('.gallerytext');
	var linkList = [];
	
	for (i = 0; i < galleryText.length; i++) {
	var pageLink = galleryText[i].innerHTML;
	var endLinkIndex = pageLink.indexOf("</a>");
	pageLink = pageLink.slice(0,endLinkIndex);
    pageLink += "</a></p>";
    linkList.push(pageLink);
	}
    
    for (i = 0; i < galleryText.length; i++) {
    document.querySelectorAll('.gallerytext')[i].innerHTML = linkList[i];
	}

	var watchChanges = setInterval(function(){
		var allEditors = $.fn.getVEInstances();
		for(var editor of allEditors){
			if(editor.target.getSurface().$element.find('.ve-ce-surface-focused').length){
				var html = editor.target.getSurface().getHtml();
				editor.target.$element.closest('.ve-area-wrapper').find('textarea').val(html);
			}
		}
	},1000);
	
	$('body').on('focus','.ve-ce-surface', function(){
    	for( let instance of veInstances){
         //find instance that own this sourface
        	if( this == instance.target.getSurface().getView().$element.get(0)){
            //When editor loses focus, update the field input.
            	instance.target.focusedWithoutUpdate = true;
			}
		}
	});

/* Toggle advanced search checkboxes;. to use in conjunction with css to hide it if using semantic mediawiki */
/*
const advancedSearchToggle = document.createElement("li");
advancedSearchToggle.className = "advancedSearchToggle";
const newContent = document.createTextNode("ห…");
advancedSearchToggle.appendChild(newContent);

const searchTabs = document.querySelector(".search-types ul");
searchTabs.appendChild(advancedSearchToggle);

advancedSearchToggle.addEventListener("click", function() {
  var advancedSearchBox = document.getElementById("mw-searchoptions");
  if (advancedSearchBox.style.display == "none") {
    advancedSearchBox.style.display = "block";
  } else {
    advancedSearchBox.style.display = "none";
  }
});
*/