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

MediaWiki:Common.js: Difference between revisions

MediaWiki interface page
No edit summary
No edit summary
Line 6: Line 6:
         <div class="g-discord citizen-header__item citizen-dropdown">
         <div class="g-discord citizen-header__item citizen-dropdown">
             <details id="g-discord-details" class="citizen-dropdown-details">
             <details id="g-discord-details" class="citizen-dropdown-details">
                <summary class="citizen-dropdown-summary" title="Discord Link" aria-details="citizen-search__card">
                    <span class="citizen-ui-icon">
                        <span></span>
                        <span></span>
                        <span></span>
                    </span>
                    <span>Discord Link</span>
                </summary>
                 <div class="dropdown-content">
                 <div class="dropdown-content">
                     <a href="https://discord.com/gscripts" target="_blank">
                     <a href="https://discord.gg/gscripts" target="_blank">
                         <img src="https://wiki.gscripts.co/images/4/4b/Discord_30_30.png" alt="Discord" width="30" height="30">
                         <img src="https://wiki.gscripts.co/images/4/4b/Discord_30_30.png" alt="Discord" width="30" height="30">
                     </a>
                     </a>
Line 24: Line 16:
     $(".citizen-header").prepend(discordElement);
     $(".citizen-header").prepend(discordElement);
});
});





Revision as of 11:26, 2 April 2025

/* Any JavaScript here will be loaded for all users on every page load. */

// Discord link
$(document).ready(function() {
    var discordElement = $(`
        <div class="g-discord citizen-header__item citizen-dropdown">
            <details id="g-discord-details" class="citizen-dropdown-details">
                <div class="dropdown-content">
                    <a href="https://discord.gg/gscripts" target="_blank">
                        <img src="https://wiki.gscripts.co/images/4/4b/Discord_30_30.png" alt="Discord" width="30" height="30">
                    </a>
                </div>
            </details>
        </div>
    `);
    $(".citizen-header").prepend(discordElement);
});


$(document).ready(function() {
    var $sections = $('.accordion-section');

    // Initialize: disable links in all headers by default (since all start collapsed)
    $sections.find('.accordion-header a').css('pointer-events', 'none');

    // Handle header clicks
    $('.accordion-header').on('click', function(e) {
        var $section = $(this).closest('.accordion-section');
        var $content = $section.find('.accordion-content');
        var isHidden = $content.is(':hidden');

        if (isHidden) {
            // Collapse all other sections
            $sections.not($section).find('.accordion-content').slideUp(200);
            $sections.not($section).removeClass('expanded');
            $sections.not($section).find('.accordion-header a').css('pointer-events', 'none');

            // Expand this section
            $content.slideDown(200);
            $section.addClass('expanded');
            $section.find('.accordion-header a').css('pointer-events', 'auto');
        } else {
            // Collapse this section
            $content.slideUp(200);
            $section.removeClass('expanded');
            $section.find('.accordion-header a').css('pointer-events', 'none');
        }

        // Prevent link click if content is hidden
        if (e.target.tagName === 'A' && $content.is(':hidden')) {
            e.preventDefault();
        }
    });
});