
//-- dimm efekty - začátek -------------------------------------------------------------------------------------

function SetOpacity(elem, opacityAsInt)
{
	var opacityAsDecimal = opacityAsInt;
	
	if (opacityAsInt > 100)
		opacityAsInt = opacityAsDecimal = 100; 
	else if (opacityAsInt < 0)
		opacityAsInt = opacityAsDecimal = 0; 
	
	opacityAsDecimal /= 100;
	if (opacityAsInt < 1)
		opacityAsInt = 1; // IE7 bug, text smoothing cuts out if 0
	
	elem.style.opacity = opacityAsDecimal;
	elem.style.filter  = "alpha(opacity=" + opacityAsInt + ")";
}

function FadeOpacity(elemId, fromOpacity, toOpacity, time, fps)
{
	var steps = Math.ceil(fps * (time / 1000));
	var delta = (toOpacity - fromOpacity) / steps;
	
	FadeOpacityStep(elemId, 0, steps, fromOpacity, delta, (time / steps));
}

function FadeOpacityStep(elemId, stepNum, steps, fromOpacity, delta, timePerStep)
{
    SetOpacity(document.getElementById(elemId), Math.round(parseInt(fromOpacity) + (delta * stepNum)));

    if (stepNum < steps)
        setTimeout("FadeOpacityStep('" + elemId + "', " + (stepNum+1) + ", " + steps + ", " + fromOpacity + ", " + delta + ", " + timePerStep + ");", timePerStep);
}


//-- dimm efekty - konec -------------------------------------------------------------------------------------


//-- dimm efekty objektově -------------------------------------------------------------------------------------

var ThImg = new Array();

function thumb(elemId){
  this.element = document.getElementById(elemId);
  this.timer = 0;
  this.lowOpac = 60;
  this.hiOpac = 100;
  this.startTime = 500;
  this.onTime = 100;
  this.offTime = 300;
  this.fps = 50;
  // nastavení průhlednosti
  this.setOpac = 
  function (opacityAsInt){
    	var opacityAsDecimal = opacityAsInt;
    	if (opacityAsInt > 100)
    		opacityAsInt = opacityAsDecimal = 100; 
    	else if (opacityAsInt < 0)
    		opacityAsInt = opacityAsDecimal = 0; 
    	opacityAsDecimal /= 100;
    	if (opacityAsInt < 1)
    		opacityAsInt = 1;
    	this.element.style.opacity = opacityAsDecimal;
    	this.element.style.filter  = "alpha(opacity=" + opacityAsInt + ")";
    };
  // plynulá změna průhlednosti
  this.FadeOpac = 
  function img_fade_opacity(fromOpacity, toOpacity, time, fps){
    clearTimeout(this.timer);
  	var steps = Math.ceil(fps * (time / 1000));
  	var delta = (toOpacity - fromOpacity) / steps;
  	this.FadeOpacStep(0, steps, fromOpacity, delta, (time / steps));
  };
  // změna průhlednosti - jeden krok
  this.FadeOpacStep =
  function img_fade_opacity_step(stepNum, steps, fromOpacity, delta, timePerStep){
    this.setOpac(Math.round(parseInt(fromOpacity) + (delta * stepNum)));
    var _self = this;
    if (stepNum < steps){
      _self.timer = setTimeout(function(){
              _self.FadeOpacStep((stepNum+1), steps, fromOpacity, delta, timePerStep);
              }, timePerStep);
    }
    else
     clearTimeout(_self.timer);
  };
  // zobrazeni obrázku po uplodadu
  this.load =
  function (){
    // vypnutí loading u rodičovského divu
    if(this.element.parentNode.id != "")
      this.element.parentNode.style.background='transparent';
    if(this.element.parentNode.parentNode.id != "")
      this.element.parentNode.parentNode.style.background='transparent';
    this.setOpac(0);
    this.element.style.display='';
    this.FadeOpac(0, this.lowOpac, this.startTime, this.fps);
  };
  // rožnutí obrázku po najetí myši
  this.on = 
  function (){
    var fromOpac = Math.ceil(100*this.element.style.opacity);
    //this.element.style.border = '1px solid gray';
    this.FadeOpac(fromOpac, this.hiOpac, this.onTime, this.fps);
  };
  // zhasnutí obrázku po odjetí myši
  this.off =
  function (){
    //this.element.style.border = '';
    var fromOpac = Math.ceil(100*this.element.style.opacity);
    this.FadeOpac(fromOpac, this.lowOpac, this.offTime, this.fps);
  };
} 

// objekt onload init na lowOpac
function InitThOn(elemId){
  ThImg[elemId] = new thumb(elemId);
  ThImg[elemId].load();
}
// objekt onload init na hiOpac
function InitThOnFF(elemId){
  ThImg[elemId] = new thumb(elemId);
  ThImg[elemId].load();
  ThImg[elemId].on();
}
// objekt onmouse over
function TurnOnTh(elemId){
  ThImg[elemId].on();
}
// objekt onmouse out
function TurnOffTh(elemId){
  ThImg[elemId].off();
}



// Změna velikosti okna ----------------------------------------------------------------------------- 

function resizeWin(){
  var vyska = document.getElementById('allbar').scrollHeight + 66;
  window.resizeTo(500,vyska);

}

function fitWinAndFoto(OrigFotoWidth, OrigFotoHeight){
  //var OrigFotoWidth = parseInt(document.getElementById('foto').width);
  //var OrigFotoHeight = parseInt(document.getElementById('foto').height);
  document.getElementById('zoom_ico').style.display = '';
  document.getElementById('zoom_out_ico').style.display = 'none';
  var OffsetWidth = 40;
  var OffsetHeight = 100;
  if(navigator.appName == 'Netscape')
    OffsetHeight = 110;

  var NewFotoWidth;
  var NewFotoHeight;
  var ScreenWidth = screen.availWidth - OffsetWidth;
  var ScreenHeight = screen.availHeight - OffsetHeight;
  var NewScreenWidth;
  var NewScreenHeight;  
  if ((ScreenWidth >= OrigFotoWidth) && (ScreenHeight >= OrigFotoHeight)){
    NewFotoHeight = OrigFotoHeight;
    NewFotoWidth = OrigFotoWidth;
  }
  else{
    var p_h = ScreenHeight/OrigFotoHeight;
    var p = ScreenWidth/OrigFotoWidth;
    if (p_h < p)
      p = p_h;
    NewFotoWidth = Math.ceil(OrigFotoWidth*p);
    NewFotoHeight = Math.ceil(OrigFotoHeight*p);
  }
  //alert('done');
  document.getElementById('foto').width = NewFotoWidth;
  document.getElementById('foto').height = NewFotoHeight;
  NewScreenWidth = NewFotoWidth + OffsetWidth;
  NewScreenHeight = NewFotoHeight + OffsetHeight;
  window.resizeTo(NewScreenWidth,NewScreenHeight);
  window.moveTo(Math.ceil((screen.availWidth-NewScreenWidth)/2),Math.ceil((screen.availHeight - NewScreenHeight)/2));
}

function ZoomFoto(OrigFotoWidth, OrigFotoHeight){
  document.getElementById('zoom_ico').style.display = 'none';
  document.getElementById('zoom_out_ico').style.display = '';
  document.getElementById('foto').width = OrigFotoWidth;
  document.getElementById('foto').height = OrigFotoHeight;
  window.moveTo(0,0);
  window.resizeTo(screen.availWidth,screen.availHeight);
}

function fontSize(elemId, size){
  document.getElementById(elemId).style.fontSize = size + 'px';
}

