var fadeTime = 500; // rychlost změny v ms
var autoFade = 6000; // rychlost automatické změny v ms
var fading = false;
var pageAct = 0; // aktuální stránka
var lastChange = false;
var pagesNum = false; // celkový počet textů
var fadingPages = false; // element s tlačítky
var fadingImages = false; // element s obrázky

function autoChange()
{
    // inicializace lementů
    if (!pagesNum || !fadingPages)
    {
        fadingImages = document.getElementById('fading').getElementsByTagName('img');
		fadingPages = document.getElementById('fadingPages');
        pagesNum = fadingImages.length; // stránek celkem

        // vytvoří stránkovač
        for (var i = 0; i < pagesNum; i++)
            {
                fadingPages.innerHTML = fadingPages.innerHTML+('<span onclick="change('+i+');">'+(i+1)+'</span>');
            }
        fadingPages = fadingPages.getElementsByTagName('span');

        // zobrazí první boxík
        fadingPages[0].className = "active";
        //fadingPages[0].setAttribute("class", "cilePage active");

        fadingImages[0].style.opacity = '1';
        fadingImages[0].style.filter = 'alpha(opacity = 100)';
    }

    clearTimeout(lastChange);
    lastChange = setInterval("autoChanging()", autoFade);
}

function autoChanging()
{
    if (pageAct >= (pagesNum - 1))
    {
        eval("change(0)");
    }
    else
    {
        eval("change(" + (pageAct + 1) + ")");
    }
        
}

function change(newPage)
{
    
    if (newPage < 0 || newPage >= pagesNum)
        newPage = 0;
    
    var fadingElement = fadingImages[newPage];
        
    if (newPage == pageAct || fading)
        return false;
        
    fading = true;
    fadingElement.FadeTimeLeft = fadeTime;
    autoChange();
    
    setTimeout("fade(" + new Date().getTime() + ", " + newPage + ", " + pageAct + ")", 33);

    fadingPages[newPage].className = "active";
    //fadingPages[newPage].setAttribute("class", "cilePage active");
    fadingPages[pageAct].className = "";
    //fadingPages[pageAct].setAttribute("class", "cilePage");
    pageAct = newPage;

    return false;
}

function fade(lastTick, showBox, hideBox)
{  
  var show = fadingImages[showBox];
  var hide = fadingImages[hideBox];
  
  var curTick = new Date().getTime();
  var elapsedTicks = curTick - lastTick;
 
  if(show.FadeTimeLeft <= elapsedTicks)
  {
    show.style.opacity = '1';
    hide.style.opacity = '0';
    show.style.filter = 'alpha(opacity = 100)';
    hide.style.filter = 'alpha(opacity = 0)';
    
    fading = false;
    
    return;
  }
  else
  {
    show.FadeTimeLeft -= elapsedTicks;
    var newHideVal = show.FadeTimeLeft/fadeTime;
    var newShowVal = 1 - newHideVal;

    show.style.opacity = newShowVal;
    show.style.filter = 'alpha(opacity = ' + (newShowVal*100) + ')';
    hide.style.opacity = newHideVal;
    hide.style.filter = 'alpha(opacity = ' + (newHideVal*100) + ')';
 
    setTimeout("fade(" + new Date().getTime() + ", '" + showBox + "', '" + hideBox + "')", 33);
  }
}
