﻿
// showbanners file

// displays banners of TransVer.net
// banners must be stored in same directory as this script as .gif files with a maximum number of 9
// default time-in-between is 7 seconds


var transverB = 
{
    nbanners:    7,            // number of available banner-files
    waitingtime: 5 * 1000,     // waiting time in between
	bgwaitingtime: 10 * 1000,  // waiting time in between
    i : 1,
	opacity:  0,
	opacities: new Array (1.0, 0.95, 0.9, 0.85, 0.8, 0.75, 0.7, 0.65, 0.6, 0.55, 0.5, 0.45, 0.4, 0.35, 0.3, 0.25, 0.2, 0.15, 0.1, 0.05),
	idxin:    19,
	idxout:   0,
	maxidx:   19,
	wtime:    50,
	
 
    showBanners: function()
    {
        var divId = document.getElementById('imgb');
        if (divId !== null)
        {
           var nextb = 'transverb01' + transverB.i + '0.jpg';
           // alert ('index is : ' + transverB.i + ' ; nextb is : ' + nextb);   // debugging 
           divId.setAttribute('src', nextb);
        }
            
        if ( transverB.i < transverB.nbanners )
            transverB.i++;
        else
            transverB.i = 1;    
           
        // refresh every 'waitingtime' seconds (timeout per second)
        var refresh = function() { transverB.showBanners(); }; 
        setTimeout(refresh, transverB.waitingtime);
        
    },
	
	
    changeBgImage: function()
    {
        var imgPath = new String();
        imgPath = document.getElementById("content").style.backgroundImage;
        
        if (imgPath == "url(\"images/Index.jpg\")" || imgPath == "")
        {
            document.getElementById("content").style.backgroundImage = "url(images/Index3.jpg)";
        }
        else
        {
            document.getElementById("content").style.backgroundImage = "url(images/Index.jpg)";
        }
		// transverB.fadeinImage();
	
    },
	
	
	triggerBgImage: function()
	{
		// refresh every 'bgwaitingtime' seconds (timeout per second)
        // transverB.changeBgImage();
		transverB.initSlide();
		// var refresh = function() { transverB.fadeoutImage(); };
		// var refresh = function() { transverB.triggerBgImage(); }; 
        // setTimeout(refresh, transverB.bgwaitingtime);
	},
	
	
	bgimages: new Array( "images/Index.jpg", 
						 "images/Index2.jpg", 
						 "images/Index3.jpg", 
						 "images/Index4.jpg",
						 "images/Index5.jpg",
						 "images/Index6.jpg",
						 "images/Index7.jpg",
						 "images/Index8.jpg",
						 "images/Index9.jpg",
						 "images/Indexa.jpg",
						 "images/Index.jpg"),
	pathToImg: new Array(),
	inc: -1,

	initSlide: function()
	{
		for (var i = 0; i < transverB.bgimages.length; i++)
		{
  			transverB.pathToImg[i] = new Image();
  			transverB.pathToImg[i].src = transverB.bgimages[i];
		}
		transverB.inc = -1;
		transverB.bgSlide();
	},
	
	
	bgSlide: function()
	{
  		if (transverB.inc < transverB.bgimages.length-1)
    		transverB.inc++;
  		else
    		transverB.inc = 0;
  		document.body.background = transverB.pathToImg[transverB.inc].src;
	
		var refresh = function() { transverB.bgSlide(); }; 
		setTimeout(refresh, transverB.bgwaitingtime);
	},


	fadeoutImage: function() 
	{
		if (transverB.idxout <= transverB.maxidx)
		{
			transverB.opacity = transverB.opacities[transverB.idxout];
			// alert ('opacity = '+opacity);
			transverB.idxout++;
			transverB.setOpacity(transverB.opacity);
			var repeat = function() { transverB.fadeoutImage(); };
    		setTimeout(repeat, transverB.wtime);
		}
		else if (transverB.idxout > transverB.maxidx)
		{
			// alert ('index > 4: reset!');
			transverB.idxout = 0;
			// resetOpacity();
			transverB.triggerBgImage();
		}
	},


	fadeinImage: function()
	{
		// alert ('fadeinBanner: idxin = '+idxin);
		if (transverB.idxin >= 0)
		{
			transverB.opacity = transverB.opacities[transverB.idxin];
			transverB.idxin--;
			transverB.setOpacity(transverB.opacity);
			var repeat = function() { transverB.fadeinImage(); };
    		setTimeout(repeat, transverB.wtime);
		}
		else if (transverB.idxin < 0)
		{
			transverB.idxin = transverB.maxidx;
			transverB.resetOpacity();
		}
	},


	setOpacity: function(opacity) 
	{
    	var opacityMsie = 100 * opacity;
		var styleObj = document.getElementById('content');
    	styleObj.style.MozOpacity = opacity;   						// Mozilla, etc.
		// alert('opacityMsie = '+opacityMsie);
		styleObj.style.filter = 'alpha(opacity='+opacityMsie+')';   // MSIE
	},


	resetOpacity: function() 
	{
    	var styleObj = document.getElementById('content');
    	styleObj.style.MozOpacity = 1.0;              				// Mozilla, etc.
    	styleObj.style.filter = '';                     			// MSIE
	}
 
}
