﻿var ladies = '';
var fwArray = Array;
var lastImgChgd = 3;
var lastLadyUsedID = 2;
var timer = 0;
var fadetimer = 0;

function Start() {
  ClearLinks();
  ladies = document.getElementById('uxGalleryLadies').value;
  if (ladies.length > 0) {
    fwArray = ladies.split(',');

    setTimeout(function() { fade('Image1') }, 3950);
    setTimeout(function() { fade('Image2') }, 8950);
    setTimeout(function() { fade('Image3') }, 13950);
    setTimeout(function() { Rotinate(); }, 5000);
  }
}

function ClearLinks() {
  var hrefs = document.getElementsByTagName('A');
  for (var i = 0; i < hrefs.length; i++) {
    var a = hrefs[i];
    if (a.id) {
      var objID = a.id;
      if (objID.indexOf('MastHeadGirls') > -1) {
        a.href = '#';
      }
    }
  }
}

function Rotinate() {

  var nextLady = lastLadyUsedID + 1;
  if (nextLady >= fwArray.length)
    nextLady = 0;

  lastLadyUsedID = nextLady;

  var nextImg = 1;
  if (lastImgChgd < 3)
    nextImg = lastImgChgd + 1;

  lastImgChgd = nextImg;

  var ladyId = fwArray[nextLady];
  var imgSrc = 'photogallery/ImageGenerator.aspx?featuregallerylady=' + ladyId;

  var imgID = new String('Image' + nextImg);

  var imgObj = document.getElementById(imgID);
  if (imgObj) {
    imgObj.style.filter = 'alpha(opacity:0)';
    imgObj.style.opacity = 0;
    imgObj.src = imgSrc;
  }

  fade(imgID);
  fadetimer = setTimeout(function() { fade(imgID) }, 13950);
  timer = setTimeout(function() { Rotinate(); }, 5000);

}

var TimeToFade = 1000.0;

function fade(eid) {
  var element = document.getElementById(eid);
  
  if (element == null)
    return;
    
  if (element.FadeState == null) {
    if (element.style.opacity == null || element.style.opacity == '' || element.style.opacity == '1')
      element.FadeState = 2;
    else
      element.FadeState = -2;
  }

  if (element.FadeState == 1 || element.FadeState == -1) {
    element.FadeState = element.FadeState == 1 ? -1 : 1;
    element.FadeTimeLeft = TimeToFade - element.FadeTimeLeft;
  }
  else {
    element.FadeState = element.FadeState == 2 ? -1 : 1;
    element.FadeTimeLeft = TimeToFade;
    setTimeout("animateFade(" + new Date().getTime() + ",'" + eid + "')", 33);
  }
}

function animateFade(lastTick, eid) {
  var curTick = new Date().getTime();
  var elapsedTicks = curTick - lastTick;

  var element = document.getElementById(eid);

  if (element.FadeTimeLeft <= elapsedTicks) {
    element.style.opacity = element.FadeState == 1 ? '1' : '0';
    element.style.filter = 'alpha(opacity = '
        + (element.FadeState == 1 ? '100' : '0') + ')';
    element.FadeState = element.FadeState == 1 ? 2 : -2;
    return;
  }

  element.FadeTimeLeft -= elapsedTicks;
  var newOpVal = element.FadeTimeLeft / TimeToFade;
  if (element.FadeState == 1)
    newOpVal = 1 - newOpVal;

  element.style.opacity = newOpVal;
  element.style.filter = 'alpha(opacity = ' + (newOpVal * 100) + ')';

  setTimeout("animateFade(" + curTick + ",'" + eid + "')", 33);
}

