//==================================================================================================
// Advertising Slideshow for team-hardware4u.net
//==================================================================================================
// Author:                Frank Herrmann
// www:                   www.codeking.eu
//==================================================================================================
// Description:
////////////////
// Slides several images with or without a link
//==================================================================================================
shuffle = function(o){ 
  for(var j, x, i = o.length; i; j = parseInt(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
  return o;
};

h4u_banner = shuffle(h4u_banner);

   
var h4u_intervall, h4u_nr, h4u_old_nr, h4u_action, h4u_hover;
//////////////////////////////////////////////////////////////
function h4u_setOpacity(objID, opacity)
{
  var obj = document.getElementById(objID);
      obj.style.filter       = "alpha(opacity:"+opacity+")";
      obj.style.KHTMLOpacity = opacity/100;
      obj.style.MozOpacity   = opacity/100;
      obj.style.opacity      = opacity/100;
}

function h4u_getOpacity(objID)
{
  var obj = document.getElementById(objID);
  if(obj.filters)                 return !obj.filters.alpha.opacity ? 0 : obj.filters.alpha.opacity/100;
  else if(obj.style.KHTMLOpacity) return !obj.style.KHTMLOpacity ? 0 : obj.style.KHTMLOpacity;
  else if(obj.style.MozOpacity)   return !obj.style.MozOpacity ? 0 : obj.style.MozOpacity;
  else                            return !obj.style.opacity ? 0 : obj.style.opacity;
}

function h4u_fade(objID1, objID2)
{
  if(!this.proc)
  {
    h4u_action = true;
    h4u_setOpacity(objID1, 100);
    h4u_setOpacity(objID2, 0);
    this.proc = window.setInterval ('h4u_fade(\'' + objID1 + '\', \'' + objID2 + '\')', 90);
  } else {
    var opacity1 = h4u_getOpacity(objID1);
    var opacity2 = h4u_getOpacity(objID2);

    if(opacity1 != 0)
    {
      opacity1 -= 0.10;
      opacity2 += 0.10;

      h4u_setOpacity(objID1, parseInt(opacity1*100));
      h4u_setOpacity(objID2, parseInt(opacity2*100));
    } else {
      h4u_setOpacity(objID2, parseInt(100));
      if(document.getElementById(objID1)) document.getElementById('h4u_slideshow').removeChild(document.getElementById(objID1));
      window.clearInterval(this.proc);
      this.proc = null;
      h4u_action = false;
    }
  }
}

function h4u_empty(str)
{
  if(str == undefined) return false;
  else                 return (str.length == 0) ? true : false;
}

function h4u_slide(i)
{
  if(h4u_action != true)
  {
    
    if(typeof(h4u_nr) == 'undefined' )
    {
      h4u_old_nr = 0; h4u_nr = 1;
    } else if(h4u_nr == 'undefined') {
      h4u_nr = 0;
    } else {
      h4u_old_nr = h4u_nr; h4u_nr++;
    }

    if(i == 'last')
    {
      h4u_nr     = h4u_nr == 1 ? h4u_banner.length-1 : h4u_nr-2;
      h4u_old_nr = h4u_old_nr == 0 ? 0 : h4u_old_nr--;
    }

    if(h4u_nr == (h4u_banner.length)) h4u_nr = 0;
    if(typeof(i) == 'number')       h4u_nr = i;
    if(h4u_nr != h4u_old_nr)
    {
      if(typeof(i) == 'number') {
        window.clearInterval(h4u_intervall);
        h4u_intervall = window.setInterval('h4u_slide()', h4u_timer * 1000);
      }

      var h4u_image = h4u_banner[h4u_nr].split(',')[0];
      var h4u_url   = h4u_banner[h4u_nr].split(',')[1];
      
      var h4u_sliderDiv = document.createElement('div');
          h4u_sliderDiv.setAttribute('id', 'h4u_item_' + h4u_nr);
          h4u_sliderDiv.setAttribute('class', 'h4u_items');
          h4u_sliderDiv.style.position     = 'absolute';
          h4u_sliderDiv.style.top          = '0';
          h4u_sliderDiv.style.left         = '0';
          h4u_sliderDiv.style.zIndex       = '9';
          h4u_sliderDiv.style.filter       = "alpha(opacity:0)";
          h4u_sliderDiv.style.KHTMLOpacity = 0;
          h4u_sliderDiv.style.MozOpacity   = 0;
          h4u_sliderDiv.style.opacity      = 0;
      document.getElementById('h4u_slideshow').appendChild(h4u_sliderDiv);

      
      h4u_sliderDiv.innerHTML += (!h4u_empty(h4u_url) ? '  <a href="' + h4u_url + '" target="_blank">' : '')
                              +  h4u_fileType(h4u_image)
                              + (!h4u_empty(h4u_url) ? '  </a>' : '');
                                                     
      h4u_fade('h4u_item_' + h4u_old_nr, 'h4u_item_' + h4u_nr);
    }
  }
}

function h4u_fileType(url)
{
  var ext = url.split('.')
  switch(ext[ext.length-1])
  {
    default:
      return '    <img src="' + url + '" alt="" />';
    break;
    case 'swf':
      return h4u_addFlash(
          'src', url,
          'width', '468',
          'height', '60'
      );
    break;
  }
}

function h4u_addFlash()
{    
  var ret        = new Object();
  ret.embedAttrs = new Object();
  ret.params     = new Object();
  ret.objAttrs   = new Object();

  for(var i=0; i < arguments.length; i=i+2)
  {
    ret.objAttrs[arguments[i]]   = arguments[i+1];
    ret.embedAttrs[arguments[i]] = ret.params[arguments[i]] = arguments[i+1];
    ret.params[arguments[i]]     = arguments[i+1];
  }

  ret.objAttrs['classid'] = 'clsid:d27cdb6e-ae6d-11cf-96b8-444553540000';
  ret.embedAttrs['type']  = 'application/x-shockwave-flash';

  var str = '<object ';
  for(var i in ret.objAttrs)   str += i + '="' + ret.objAttrs[i] + '" '; str += '>';
  for(var i in ret.params)     str += '<param name="' + i + '" value="' + ret.params[i] + '" /> ';  str += '<embed ';
  for(var i in ret.embedAttrs) str += i + '="' + ret.embedAttrs[i] + '" '; str += ' ></embed></object>';

  return str;
}

function h4u_init_slideshow()
{  
  var h4u_image = h4u_banner[0].split(',')[0];
  var h4u_url   = h4u_banner[0].split(',')[1];
      
  document.writeln('<div id="h4u_slideshow"></div>');
  document.getElementById('h4u_slideshow').innerHTML += '<div id="h4u_item_0" class="h4u_items">'
                                                    +  (!h4u_empty(h4u_url) ? '  <a href="' + h4u_url + '" target="_blank">' : '')
                                                    +  h4u_fileType(h4u_image)
                                                    +  (!h4u_empty(h4u_url) ? '  </a>' : '')
                                                    +  '</div>';
  var preLoad = new Array();
  for(var i=0;i<h4u_banner.length;i++)
  {
    preLoad[i] = new Image();
    preLoad[i].src = h4u_banner[i].split(',')[0];
  }

  h4u_intervall = window.setInterval('h4u_slide()', h4u_timer * 1000);
}

h4u_init_slideshow();