﻿
var v_lastDiv = true;
var m_imagePos = 0;
var m_imgList;
var m_wait = 5000;
var m_imgname = "";
var m_tdname = "";
var m_imgObjArr = new Array();

function f_startDesolve(a_imglist,a_imgname,a_tdname,a_fade,a_wait)
{
    for (var v_i = 0; v_i < a_imglist.length; v_i++) 
	{ 
        var v_img = new Image();
		v_img.src = a_imglist[v_i];
		m_imgObjArr.push(v_img);
    }
    m_imgList = a_imglist;
    m_imagePos = Math.round(Math.random()*(m_imgList.length-1));
    m_wait = a_wait;
    m_fade = a_fade;
    m_imgname = a_imgname;
    m_tdname = a_tdname;
    f_checkFirstImage();
}   

function f_checkFirstImage()
{
    if(!m_imgObjArr[0].complete) setTimeout("f_disoveImage();",100); 
    else f_disoveImage();
}
    
function f_disoveImage()
{
    if(v_lastDiv)
    {
        document.getElementById(m_tdname).style.backgroundImage = "url("+m_imgList[m_imagePos]+")";
        f_opacity(new Array(m_imgname),100,0,m_fade,f_checkChange);
        v_lastDiv = false;
    }
    else
    {
        document.getElementById(m_imgname).src = m_imgList[m_imagePos];
        f_opacity(new Array(m_imgname),0,100,m_fade,f_checkChange); 
        v_lastDiv = true;
    }
}

function f_checkChange()
{
    if(m_imagePos<m_imgList.length-1) m_imagePos++;
    else m_imagePos=0;
    setTimeout("f_disoveImage();",m_wait); 
}

function f_opacity(a_arr,a_start,a_end,a_millisec,a_callback) 
{ 
    var v_speed = Math.round(a_millisec / 100); 
    var v_timer = 0; 
    var v_timer = 0; 
    
    var v_names = ",'"+a_arr.join("','")+"'";
    
   if(a_start > a_end) 
    { 
        for(var v_j = a_start; v_j >= a_end; v_j--) 
        { 
            setTimeout("f_changeOpac(" + v_j + v_names+")",(v_timer * v_speed)); 
            v_timer++; 
        }
    }
    else if(a_start < a_end) 
    { 
        for(v_j = a_start; v_j <= a_end; v_j++) 
        { 
            setTimeout("f_changeOpac(" + v_j + v_names+")",(v_timer * v_speed)); 
            v_timer++; 
        } 
    } 
    if(a_callback!=null) setTimeout(a_callback,(v_timer * v_speed));
}



//change the opacity for different browsers 
function f_changeOpac(a_opacity) 
{ 
    var v_opacity = f_changeOpac.arguments[0];
    for(var v_i=1;v_i<f_changeOpac.arguments.length;v_i++)
    {
        var v_obj = document.getElementById(f_changeOpac.arguments[v_i]);
        if(v_obj!=null) f_setOpec(v_obj,v_opacity);
    }
}

function f_setOpec(a_obj,a_opacity)
{
    if(a_obj!=null)
    {
        var v_obj = a_obj.style; 
        if(a_opacity>95)
        {
            v_obj.opacity = ""; 
            v_obj.MozOpacity = ""; 
            v_obj.KhtmlOpacity = ""; 
            v_obj.filter = ""; 
        }
        else if(a_opacity<3)
        {
            v_obj.opacity = 0; 
            v_obj.MozOpacity = 0; 
            v_obj.KhtmlOpacity = 0; 
            v_obj.filter = "alpha(opacity=0)"; 
        }
        else 
        {
            v_obj.opacity = (a_opacity/ 100); 
            v_obj.MozOpacity = (a_opacity/ 100); 
            v_obj.KhtmlOpacity = (a_opacity/ 100); 
            v_obj.filter = "alpha(opacity=" +a_opacity+ ")"; 
        }
    }
}
