Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

MediaWiki:Citizen.js: Difference between revisions

MediaWiki interface page
Created page with "→‎All JavaScript here will be loaded for users of the Citizen skin: →‎Current version of MediaWiki does not support ES6: mw.loader.using(['mediawiki.util']).done(function () { →‎Trigger search box when click on the fake search button on main page: var searchTrigger = document.getElementById('citizen-search-trigger'); if (searchTrigger) { searchTrigger.addEventListener('click', function () { var search = document.getElementById('citizen-search-details');..."
(No difference)

Revision as of 00:19, 29 April 2025

/* All JavaScript here will be loaded for users of the Citizen skin */
/* Current version of MediaWiki does not support ES6 */
mw.loader.using(['mediawiki.util']).done(function () {
	/* Trigger search box when click on the fake search button on main page */
	var searchTrigger = document.getElementById('citizen-search-trigger');
	if (searchTrigger) {
		searchTrigger.addEventListener('click', function () {
			var search = document.getElementById('citizen-search-details');
			/*
			Command Palette is activated through a click to the details element
			So we don't need any of these

			// HACK: Force sticky header to be visible
			var isSearchHidden =
				document.body.classList.contains('citizen-scroll--down') &&
				window.matchMedia('(max-width: 1119px)');
			if (isSearchHidden) {
				document.body.classList.remove('citizen-scroll--down');
				document.body.classList.add('citizen-scroll--up');
			}
			var prefill = searchTrigger.dataset.prefill;
			if (prefill) {
				var prefillText = mw.html.escape(searchTrigger.dataset.prefill);
				document.getElementById('searchInput').value = prefillText;
			}
			// Citizen does not have a visible search bar, you need to expand the search card first
			// And Citizen will focus the input automatically
			search.open = true;
			*/
			search.click();
		});
	}
});