Anonymous

MediaWiki:BossTimer.js: Difference between revisions

From Elwiki
no edit summary
No edit summary
No edit summary
 
(6 intermediate revisions by the same user not shown)
Line 5: Line 5:
     var bosses = {
     var bosses = {
         boss1: {
         boss1: {
             EU: {
             href: '/w/The Great Steel Wall',
                href: '/w/Titan\'s Grotto',
            img: '/wiki/images/2/22/20-4Button.png'
                img: '/wiki/images/8/84/13-5Button.png'
         },
            },
            NA: {
                href: '/w/The Great Steel Wall',
                img: '/wiki/images/2/22/20-4Button.png'
            }
         },
         boss2: {
         boss2: {
             href: '/w/Plegas\'s Labyrinth',
             href: '/w/Plegas\'s Labyrinth',
Line 75: Line 69:
             timer_img.attr('srcset', currBossData.img).attr('src', currBossData.img);
             timer_img.attr('srcset', currBossData.img).attr('src', currBossData.img);
             $('.boss-timer-' + server + ' .boss-timer-image a').attr('href', currBossData.href);
             $('.boss-timer-' + server + ' .boss-timer-image a').attr('href', currBossData.href);
             var localizationID = currBoss + '-localization-' + server;
             var localizationID = '#' + currBoss + '-localization-' + server;
             var localization = $(currBossData[localizationID]).text();
             var localization = $(localizationID).text();
            console.table(localizationID, localization);
             if (!localization) {
             if (!localization) {
                 localization = $(currBossData[localizationID.replace(server, 'NA')]).text();
                 localization = $(localizationID.replace(server, 'NA')).text();
             }
             }
             $('.boss-timer-' + server + ' .boss-timer-text').text(localization);
             $('.boss-timer-' + server + ' .boss-timer-text').text(localization);
Line 102: Line 97:
         if (!timer_server) return;
         if (!timer_server) return;
         if (timers) return;
         if (timers) return;
         timers = setInterval(function () {
 
         function updateTimers() {
             diffTime = diffTime - 1000;
             diffTime = diffTime - 1000;
             if (diffTime < 0) {
             if (diffTime < 0) {
Line 109: Line 105:
             }
             }
             updateTime();
             updateTime();
         }, 1000);
         }
        timers = setInterval(updateTimers, 1000);
     }
     }


Line 183: Line 180:
     var offset = Date.parse(`${dateString} UTC`) - Date.parse(`${dateString} ${tz}`);
     var offset = Date.parse(`${dateString} UTC`) - Date.parse(`${dateString} ${tz}`);
     return offset;
     return offset;
}
// Detect when tab is invisible
var hidden, visibilityChange;
if (typeof document.hidden !== "undefined") {
    hidden = "hidden";
    visibilityChange = "visibilitychange";
} else if (typeof document.msHidden !== "undefined") {
    hidden = "msHidden";
    visibilityChange = "msvisibilitychange";
} else if (typeof document.webkitHidden !== "undefined") {
    hidden = "webkitHidden";
    visibilityChange = "webkitvisibilitychange";
}
}