MediaWiki:Common.js: Difference between revisions

From Another Chance Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 13: Line 13:
         }
         }
     });
     });
});


    var $currentThumb = $gallery.find('.gallerybox.slideshow-current');
mw.hook('wikipage.content').add(function ($gallery) {
    if (!currentThumb.length) {
    var $currentThumb = $gallery.find('.gallerybox.slideshow-current' || 'gallerybox.spoiler-image.slideshow-current');
        $currentThumb = $gallery.find('.gallerybox').first();
    }


     var $imgContainer = $gallery.find('.mw-gallery-slideshow-img-container, .mw-gallery-slideshow .carousel, .mw-gallery-slideshow-img');
     var $imgContainer = $gallery.find('.mw-gallery-slideshow-img-container, .mw-gallery-slideshow .carousel, .mw-gallery-slideshow-img');
     if ($currentThumb.hasClass('spoiler-image') && !$currentThumb.hasClass('spoiler-image.revealed')) {
     if ($currentThumb.hasClass('spoiler-image') && !$currentThumb.hasClass('revealed')) {
         $imgContainer.addClass('spoiler-image');
         $imgContainer.addClass('spoiler-image');
     } else {
     } else {

Revision as of 11:49, 20 August 2026

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

/* Allows images within galleries to be spoiled if "spoiler:" is put at the start of its caption*/
mw.hook('wikipage.content').add(function ($content) {
    $content.find('ul.gallery li.gallerybox').each(function () {
        var $box = $(this);
        var $caption = $box.find('.gallerytext');
        var captionText = $caption.text().trim().toLowerCase();

        if (captionText.startsWith('spoiler:')) {
            $box.addClass('spoiler-image');
            $caption.html($caption.html().replace('spoiler: ', ''));
        }
    });
});

mw.hook('wikipage.content').add(function ($gallery) {
    var $currentThumb = $gallery.find('.gallerybox.slideshow-current' || 'gallerybox.spoiler-image.slideshow-current');

    var $imgContainer = $gallery.find('.mw-gallery-slideshow-img-container, .mw-gallery-slideshow .carousel, .mw-gallery-slideshow-img');
    if ($currentThumb.hasClass('spoiler-image') && !$currentThumb.hasClass('revealed')) {
        $imgContainer.addClass('spoiler-image');
    } else {
        $imgContainer.removeClass('spoiler-image.revealed');
    }
});

/* Toggles spoilered images between blurred and not blurred upon clicking */
$(function() {
    $('.spoiler-image').on('click', function() {
        $(this).toggleClass('revealed');
    });
});