MediaWiki:Common.js

From Marupedia
Revision as of 16:02, 20 January 2026 by BudhaRam Patel (talk | contribs) (Created page with "Any JavaScript here will be loaded for all users on every page load.: ========================= SHOW "CREATE PAGE" LINK ON MOBILE SEARCH =========================: mw.loader.using( 'mediawiki.util', function () { // Run only on Special:Search if ( mw.config.get( 'wgCanonicalSpecialPageName' ) !== 'Search' ) { return; } // Run only on mobile (Minerva) if ( document.body.className.indexOf( 'skin-minerva' ) === -1 ) { return; } // F...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

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)
  • Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/* Any JavaScript here will be loaded for all users on every page load. */
/* =========================
   SHOW "CREATE PAGE" LINK ON MOBILE SEARCH
   ========================= */

mw.loader.using( 'mediawiki.util', function () {

  // Run only on Special:Search
  if ( mw.config.get( 'wgCanonicalSpecialPageName' ) !== 'Search' ) {
    return;
  }

  // Run only on mobile (Minerva)
  if ( document.body.className.indexOf( 'skin-minerva' ) === -1 ) {
    return;
  }

  // Find the "no results" message box
  var noResultsBox = document.querySelector(
    '.mw-search-results-none, .results-info, .mw-search-results'
  );

  if ( !noResultsBox ) {
    return;
  }

  // Get search term
  var searchInput = document.querySelector( 'input[type="search"], input[type="text"]' );
  if ( !searchInput || !searchInput.value ) {
    return;
  }

  var title = searchInput.value.trim().replace( /"/g, '' );
  if ( !title ) {
    return;
  }

  // Build create page URL
  var createUrl = mw.util.getUrl( title, { action: 'edit', redlink: 1 } );

  // Create link element
  var link = document.createElement( 'p' );
  link.className = 'mw-mobile-create-page';
  link.innerHTML =
    'Create the page "<strong>' + mw.html.escape( title ) +
    '</strong>" on this wiki!';

  link.style.marginTop = '12px';
  link.style.fontSize = '16px';

  // Make it clickable
  link.onclick = function () {
    window.location.href = createUrl;
  };

  noResultsBox.appendChild( link );

});