
var isIE=window.ActiveXObject ? true : false;

function slideshows(idx, t, pt) {
 var s=this;
 s.index=idx;
 s.last=null;
 s.name=t;
 s.target=document.getElementById(t);
 s.slides=[];
 s.current=null;
 s.pt=pt;
 s.loaded=[];
 s.step=0.02;
 s.fr=20;
 s.waiting=null;
 s.maxw=0;
 s.maxh=0;

 s.makeImg=function(url, sa) {
  var img=document.createElement("img");
  img.src=url;
  img.setAttribute("alt", s.name);
  sa.appendChild(img);
  s.waiting=img;
  return img;
 }

 s.fadeSlide=function(op) {
  op=op+s.step;
  if(op>1) op=1;
  if(isIE) {
   s.current.style.filter=(op==1)?"":"alpha(opacity="+(op*100)+")";
   if(s.last) s.last.style.filter=(op==1)?"":"alpha(opacity="+(100-(op*100))+")";
  }
  else {
   s.current.style.opacity=op;
   if(s.last) s.last.style.opacity=1-op;
  }
  if(op<1) setTimeout(s.name+".fadeSlide("+op+")", s.fr);
  else {
   if(s.last) s.last.style.display="none";
   s.last=s.current;
   s.index=(s.index+1)%s.length;
   if(!s.loaded[s.index]) {
    slide=s.slides[s.index];
    sp=slide.getElementsByTagName("span")[0];
    var img=s.makeImg(sp.innerHTML, slide.getElementsByTagName("a")[0]);
   }
   setTimeout(s.name+".showSlide()", s.pt);
  }
 }

 s.showSlide=function() {
  if(s.waiting && !s.waiting.complete) {
   setTimeout(s.name+".showSlide()", 250);
  }
  else {
   if(s.waiting) {
    s.fiximg(s.waiting);
   }
   s.waiting=null;
   s.loaded[s.index]=1;
   s.current=s.slides[s.index];
   if(s.last != null) s.last.style.zIndex=1;
   s.current.style.zIndex=2;
   if(isIE) s.current.style.filter="alpha(opacity=0)";
   else s.current.style.opacity=0;
   s.current.style.display="block";
   s.fadeSlide(0);
  }
 }

 s.fiximg=function(img) {
  w=img.width;
  h=img.height;
  if(w > s.maxw) {
   h=Math.ceil(s.maxw*(h/w));
   w=s.maxw;
  }
  if(h > s.maxh) {
   w=Math.ceil(s.maxh*(w/h));
   h=s.maxh;
  }
  img.width=w;
  img.height=h;
  pn=img.parentNode.parentNode;
  img.style.marginLeft=((s.maxw-w)>>1)+"px";
  img.style.marginTop=((s.maxh-h)>>1)+"px";
  pn.style.left="0px";
  pn.style.top="0px";
 }

 var tmpslides=s.target.getElementsByTagName("div");
 for(var i=0; i<tmpslides.length; i++) if(tmpslides[i].className=="slide") s.slides.push(tmpslides[i]);
 s.length=s.slides.length;
 for(var i=0; i<s.length; i++) {
  s.slides[i].style.left="-9999px";
  s.slides[i].style.top="-9999px";
  sp=s.slides[i].getElementsByTagName("span")[0];
  sp.style.display="none";
  if(i==s.index) {
   var img=s.makeImg(sp.innerHTML, s.slides[i].getElementsByTagName("a")[0]);
  }
  s.loaded[i]=0;
 }
 s.maxw=s.target.offsetWidth;
 s.maxh=s.target.offsetHeight;
 s.showSlide();
}

