Difference between revisions of "MediaWiki:Atlas Tools.js"

Line 59: Line 59:
 
                     fontSize: '9px'
 
                     fontSize: '9px'
 
                 });
 
                 });
                 $('#gridText').length && #('.mapOuterDiv').before('<input type="text" id="gridText" style="width: 50%;float: right;">');
+
                 !$('#gridText').length && #('.mapOuterDiv').before('<input type="text" id="gridText" style="width: 50%;float: right;">');
 
                 event.preventDefault();
 
                 event.preventDefault();
 
                 break;
 
                 break;

Revision as of 05:57, 18 October 2020

/* Flash icons on hover. */
$('#UOLinksList').on('mouseover', 'span', function() {
        $('.pin a img').addClass('pin-not_circle');
        $('#' + $(this).data('pair') + ' a img').addClass('pin-circle').removeClass('pin-not_circle');
    })
    .on('mouseout', 'span', function() {
        $('.pin a img').removeClass('pin-not_circle');
        $('#' + $(this).data('pair') + ' a img').removeClass('pin-circle');
    });

/* Highlight map region on hover. */
document.removeHighlights = () => {
    $('.mapgrid').css('visibility', 'hidden');
    $('.roundTL,.roundTR,.roundBL,.roundBR').removeClass('roundTL roundTR roundBL roundBR');
};
$('body').on('mouseover', '.overlayhighlighter', function() {
        let getEles = (num) => [...$(this).find(`span:eq(${num})`).text().split(',')].map((x) => {
            return `.grid${x}`;
        }).join(', ');
        document.removeHighlights();
        $(getEles(0)).css('visibility', 'visible');
        $(getEles(1)).addClass('roundTL');
        $(getEles(2)).addClass('roundTR');
        $(getEles(3)).addClass('roundBL');
        $(getEles(4)).addClass('roundBR');
    })
    .on('mouseout', '.overlayhighlighter', function() {
        document.removeHighlights();
    });

/* Dev tool hotkeys for map highlighter. */
document.onkeydown = function(e) {
    if (e.ctrlKey) {
        switch (e.which) {
            case 38: // up
                $('.overlaygrid').css('fontSize', parseInt($('.overlaygrid').css('fontSize')) + 1 + 'px');
                break;

            case 40: // down
                $('.overlaygrid').css('fontSize', parseInt($('.overlaygrid').css('fontSize')) - 1 + 'px');
                break;

            case 66: // "b"
                $('.mapgrid').css({
                    background: 'red'
                });
                break;

            case 79: // "o"
                $('.mapgrid').css({
                    visibility: 'visible',
                    borderLeft: '1px solid white',
                    borderTop: '1px solid white',
                    background: 'inherit'
                });
                $('.hideoverlaytext').removeClass('hideoverlaytext');
                $('.overlaygrid').css({
                    opacity: '100%',
                    fontSize: '9px'
                });
                !$('#gridText').length && #('.mapOuterDiv').before('<input type="text" id="gridText" style="width: 50%;float: right;">');
                event.preventDefault();
                break;

            default:
                return; // exit this handler for other keys
        }
    }
};