×
Create a new article
Write your page title here:
We currently have 3,034 articles on YumeWiki. Type your article name above or click on one of the titles below and start writing!



YumeWiki
3,034Articles

MediaWiki:Common.js: Difference between revisions

No edit summary
No edit summary
Line 2: Line 2:


//Season Calculator
//Season Calculator
$(document).ready(function() {
    $("#calculatorDiv").append('<input type="number" id="calculator" onkeyup="calculateSeason(this.id)" onchange="calculateSeason(this.id)"></input>'); 
});


(function () {
(function () {
$(document).ready(function() {
$('#calculator').keyup(calculateSeason);
    $("#calculatorDiv").append('<input type="number" id="calculator" onkeyup="calculateSeason(this.id)" onchange="calculateSeason(this.id)"></input>'); 
$('#calculator').change(calculateSeason);
});
function calculateSeason() {
function calculateSeason(id) {
    if ($(this).val().match(/^\d+$/)) {
    if ($("#" + id).val().match(/^\d+$/)) {
        var season = 'Unknown';
        var season = 'Unknown';
        var sleepTimes = parseInt($("#" + id).val());
        var sleepTimes = parseInt($(this).val());
        sleepTimes = (sleepTimes + 1) % 554400;
        sleepTimes = (sleepTimes + 1) % 554400;
        var seasonNumber = Math.floor((sleepTimes + 4)/ 3) % 4;
        var seasonNumber = Math.floor((sleepTimes + 4)/ 3) % 4;
Line 45: Line 49:
    }
    }
    else {
    else {
        $("#calculator").val('');
        $(this).val('');
        $("#results").empty();
        $("#results").empty();
        $("#results").append('Type a valid positive integer on the input field.');         
        $("#results").append('Type a valid positive integer on the input field.');         

Revision as of 04:26, 27 January 2022

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

//Season Calculator

$(document).ready(function() {
    $("#calculatorDiv").append('<input type="number" id="calculator" onkeyup="calculateSeason(this.id)" onchange="calculateSeason(this.id)"></input>');   
}); 


(function () {
	$('#calculator').keyup(calculateSeason);
	$('#calculator').change(calculateSeason);
	function calculateSeason() {
	    if ($(this).val().match(/^\d+$/)) {
	        var season = 'Unknown';
	        var sleepTimes = parseInt($(this).val());
	        sleepTimes = (sleepTimes + 1) % 554400;
	        var seasonNumber = Math.floor((sleepTimes + 4)/ 3) % 4;
	        switch (seasonNumber){
	            case 0:
	                season = 'Winter';
	                break;
	            case 1:
	                season = 'Spring';
	                break;
	            case 2:
	                season = 'Summer';
	                break;
	            case 3:
	                season = 'Fall';
	                break;                        
	        }
	        var limite = false;
	        var i = 1;
	        while (!limite) {
	            sleepTimes++;
	            seasonNumberTest = (Math.floor((sleepTimes + 4)/ 3)) % 4;
	            if (seasonNumberTest == seasonNumber) i++;
	            else limite = true;
	        }
	        $("#results").empty();
	        $("#results").append('The season in your next dream will be <b>' + season + '</b>. ');
	        if (i == 1) {
	            $("#results").append('This is the last day of the season.');
	        }
	        else {
	            $("#results").append('This season will last for ' + i + ' more days.');            
	        }
	    }
	    else {
	        $(this).val('');
	        $("#results").empty();
	        $("#results").append('Type a valid positive integer on the input field.');         
	    }
	} 
}());

//2kki map frame
mw.hook('wikipage.content').add(function($content) {
    $content.find('.kkiDiv:not(.loaded)').each(function() {
        var $this = $(this);
        $this.html(
            $('<iframe>', {
                border: 0,
                frameborder: 0,
                scrolling: 'no',
                class: 'kkiFrame',
                src: 'https://yume-2kki-explorer.herokuapp.com/',
            })
        ).addClass('loaded');
    });
});

(function () {
    $(".spoiler").click(changeClass);
    
    function changeClass(){
        if ($(this).hasClass("spoiler")) {
            $(this).removeClass("spoiler");
            $(this).addClass("spoilerClicked");
        }
        else {
            $(this).removeClass("spoilerClicked");
            $(this).addClass("spoiler");
        }
    }    
}());


(function () {
    $(".spoilerWarning").click(addClass);
    function addClass(){
        var parent = $(this).parent();
        var content = $(parent).find("div.spoilerContent");
        if ($(content).hasClass("hide")) {
            $(content).removeClass("hide");
            if ($(this).hasClass("hideable")) $(this).addClass("hide");
        }
        else{
            $(content).addClass("hide");
        }
    }    
}());