﻿womAdd('LoadWeather();');

//Images for IR
var Images1 = new Array();
//Images for national outlook
var Images2 = new Array();

//Data required by timer.
var timerID = 0;

var timer2ID = 0;

var currentfile=0;

var speeds=new Array(1000,500,300,200,100,50,25,5);

var pauses=new Array(2000,1000,500,250);

var timelapse = new Array(1,2,6,12,24,48);

var settings = new Array(speeds,pauses,timelapse);

var currentsettings = new Array(4,2,4)

var menuopacity = 0;

function LoadWeather(){
    
    //Preload the images
    PreloadImages();
    
    MenuItemClick(1);
    
}

function PreloadImages(){
    
    //Load the IR images
    for (i=0; i<48;i++){
        Images1[i] = new Image(170,135);
        Images1[i].src="PortletData/Images/Weather/PROCESSED/thumb_ir"+(i+1)+".jpg";
    }
    
    //Load the national outlook images
    for (i=0; i<7;i++){
        Images2[i] = new Image(170,135);
        Images2[i].src="PortletData/Images/Weather/PROCESSED/thumb_temp"+i+".gif";
    }

}

function setVariable(offset,offsetincrement,isindex){

    if (isindex == true){
    
        currentsettings[offset] = offsetincrement;

    }

    else{

        if (currentsettings[offset]+offsetincrement<settings[offset].length && currentsettings[offset]+offsetincrement>-1){

            currentsettings[offset] = currentsettings[offset] + offsetincrement;
    
        }
    
    }
    
}

function MenuItemClick(i){
    try{

        switch(i){
   
            case 1:     
                clearTimeout(timerID);
                timerID  = 0;
                startAnimation(settings[2][currentsettings[2]],Images1);
                break
    
            case 2:    
                clearTimeout(timerID);
                timerID  = 0;
                currentfile = 0;
                incrementimage(0,Images2);
                break
    
        }
    
    }
    catch(ex){
    
        timer2ID = setTimeout(function(){MenuItemClick(i)}, 250);
    
    }
    
}

function startAnimation(lapse,imagearray){

    currentfile = lapse;
    
    UpdateTimer(imagearray);

}

function swapImage(url){

    document.getElementById("divMain").innerHTML = "<img src='"+url+"' />";
    
}

//This function is called when it is time to update the timer.
function UpdateTimer(imagearray) {
    
     swapImage(imagearray[currentfile-1].src)

    if (currentfile == 1){
    
        currentfile = settings[2][currentsettings[2]];

        timerID = setTimeout(function(){UpdateTimer(imagearray)}, settings[1][currentsettings[1]]);
    
    }
    
    else{
     
        currentfile = currentfile-1;

        timerID = setTimeout(function(){UpdateTimer(imagearray)}, settings[0][currentsettings[0]]);
    
    }

}

function incrementimage(inc,array){

    if ((currentfile + inc) >= 0 && (currentfile + inc < array.length)){

        currentfile = currentfile + inc;
    
    }
    
    var myDate=new Date();
    
    if (currentfile != 0){
    
        myDate.setDate(myDate.getDate()+currentfile);
    }
    
    if (currentfile == 0){
        
        document.getElementById('btnPrevious').disabled='disabled'
    
        document.getElementById('btnPrevious').src = 'PortletData/Images/previousday_disabled.png';
        
    }
    
    else {
        
        document.getElementById('btnPrevious').disabled=''
    
        document.getElementById('btnPrevious').src = 'PortletData/Images/previousday.png';
        
    }
    
    if (currentfile == array.length-1){
        
        document.getElementById('btnNext').disabled='disabled'
    
        document.getElementById('btnNext').src = 'PortletData/Images/nextday_disabled.png';
        
    }
    
    else {
        
        document.getElementById('btnNext').disabled=''
    
        document.getElementById('btnNext').src = 'PortletData/Images/nextday.png';
        
    }
    
    document.getElementById('jsDate').innerHTML = dateFormat(myDate, "dddd, dd mmm yyyy");
    
    swapImage(array[currentfile].src);

}