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. */
mw.loader.using('mediawiki.util').then(function () {
  function initAutoScroll() {
    const container = document.getElementById('scrollable-articles');
    if (!container) return;

    if (container.dataset.autoScrollInitialized) return;
    container.dataset.autoScrollInitialized = 'true';

    if (!container.dataset.duplicated) {
      const originalChildren = Array.from(container.children);
      originalChildren.forEach(child => {
        const clone = child.cloneNode(true);
        container.appendChild(clone);
      });
      container.dataset.originalWidth = container.scrollWidth / 2;
      container.dataset.duplicated = 'true';
    }

    let scrollSpeed = window.innerWidth < 500 ? 0.3 : 0.5;
    let requestId;

    function autoScroll() {
      container.scrollLeft += scrollSpeed;
      const originalWidth = parseFloat(container.dataset.originalWidth);

      if (container.scrollLeft >= originalWidth) {
        container.scrollLeft -= originalWidth;
      }

      requestId = requestAnimationFrame(autoScroll);
      container._autoScrollRequestId = requestId;
    }

    if (container._autoScrollRequestId) {
      cancelAnimationFrame(container._autoScrollRequestId);
    }

    function pauseScroll() {
      if (container._autoScrollRequestId) {
        cancelAnimationFrame(container._autoScrollRequestId);
        container._autoScrollRequestId = null;
      }
    }

    function resumeScroll() {
      if (!container._autoScrollRequestId) {
        autoScroll();
      }
    }

    container.removeEventListener('mouseenter', pauseScroll);
    container.removeEventListener('mouseleave', resumeScroll);

    container.addEventListener('mouseenter', pauseScroll);
    container.addEventListener('mouseleave', resumeScroll);

    autoScroll();
  }

  if (document.readyState === 'complete' || document.readyState === 'interactive') {
    initAutoScroll();
  } else {
    document.addEventListener('DOMContentLoaded', initAutoScroll);
  }

  mw.hook('wikipage.content').add(initAutoScroll);
});

// Hide 'View source' tab using JS fallback
$(document).ready(function () {
  $('#ca-viewsource').hide();
});

// Auto-tag NeedsReview for user-level edits only
$(document).ready(function() {
  if (mw.config.get("wgAction") === "edit" || mw.config.get("wgAction") === "submit") {
    var userGroups = mw.config.get('wgUserGroups');

    if (userGroups.includes('user') && !userGroups.includes('approver') && !userGroups.includes('sysop')) {
      var $wpTextbox1 = $('#wpTextbox1');
      if ($wpTextbox1.length && !$wpTextbox1.val().includes("{{NeedsReview}}")) {
        $wpTextbox1.val("{{NeedsReview}}\n" + $wpTextbox1.val());
      }
    }
  }
});

$(document).ready(function() {
  var desc = $('meta[name="knowlepedia-desc"]').attr('content');
  if (desc) {
    $('head').append('<meta name="description" content="' + desc + '">');
  }
});



mw.loader.using('mediawiki.util').then(function () {
  var schema = {
    "@context": "https://schema.org",
    "@type": "Person",
    "name": "Gaurav Singh Chouhan",
    "image": "https://commons.wikimedia.org/wiki/Special:FilePath/Gaurav_Singh_Chouhan.jpg",
    "url": "https://knowlepedia.org/wiki/Gaurav_Singh_Chouhan",
    "sameAs": [
      "https://www.imdb.com/name/nm14658047/",
      "https://www.instagram.com/mrgauravchouhan",
      "https://www.linkedin.com/in/mrgauravchouhan",
      "https://x.com/mrgauravchouhan",
      "https://www.timesofmalwa.in/2025/06/gaurav-singh-chouhan.html"
    ],
    "birthDate": "1999-07-21",
    "jobTitle": "Writer, Law Student, Motivational Speaker",
    "alumniOf": "Chaudhary Charan Singh University",
    "nationality": "Indian",
    "description": "Gaurav Singh Chouhan is an Indian writer, motivational speaker, and BA LLB student, known for his public talks and biography 'From Pen to Purpose.'"
  };

  var script = document.createElement('script');
  script.type = 'application/ld+json';
  script.text = JSON.stringify(schema);
  document.head.appendChild(script);
});