var afterPreload = null;
var isIE = (window.ActiveXObject) ? true : false;
var isOldFF = (navigator.userAgent.indexOf("Firefox/2") > 0) ? true : false;

function preloadImages() {
 imageNames = new Array('menuHomeOver.gif', 'menuPart1Over.gif', 'menuPart2Over.gif', 'menuProducersOver.gif', 'menuGetInvolvedOver.gif', 'menuStayUpdatedOver.gif', 'menu2ContactOver.gif', 'menu2StayUpdatedOver.gif', 'menu2SarahOver.gif', 'menu2PressOver.gif', 'menu2SponsorsOver.gif', 'bottomMenuCreditsOver.gif', 'sliderH.gif', 'sliderHOver.gif', 'sliderVOver.gif', 'sliderV2Over.gif', 'sliderV3.gif', 'sliderV3Over.gif', 'sliderV4Over.gif', 'menuPartIStatementOver.gif', 'menuPartICreditsOver.gif', 'menuPartIInfoOver.gif', 'menuPartIQuotesOver.gif', '_part1-1Over.jpg', '_part1-2Over.jpg', '_part1-3Over.jpg', '_part2-1Over.jpg', '_part2-2Over.jpg', 'backOver.gif', 'getInvolvedApplyOver.gif', 'getInvolvedModelsOver.jpg', 'getInvolvedCreativesOver.jpg', 'getInvolvedSponsorsOver.jpg', 'submitOver.gif');

 srcArr = new Array();
 for (i=0;i<imageNames.length;i++) {
  srcArr[i] = new Image();
  srcArr[i].src = 'images/' + imageNames[i];
 }

 if (window.innerHeight && window.innerHeight < 780 && window.outerHeight) {
  tmpNewH = window.outerHeight - window.innerHeight + 780;
  if (screen.height && screen.height > tmpNewH)
   window.resizeTo(window.outerWidth, tmpNewH);
 }

 if (afterPreload != null)
  afterPreload();
}



//----- SCROLL FUNCTIONS
var elMove = null;
var elUp = null;
var isScrolling = false;
var slider = null;
var autoScroll = null;

function initHScroll(o) {
 if (o.offsetWidth >= o.scrollWidth) {
  return;
 }

//----- ADD SLIDER IMAGE
 posArr = getPos(o);
//------ ADJUST FOR IMAGE & BORDERS
 posArr[1] += o.offsetHeight - 26;
 if (isIE)
  posArr[1] -= 1;

if (!isOldFF) {
 o.style['overflow'] = 'auto';
} else {
 posArr[1] += 1;
}

 slider = document.createElement('img');
 slider.src = 'images/sliderHBlink.gif';
 slider.onmousedown = function(event) { clearTimeout(autoScroll); startDragScroll(event, slider); }
 slider.onmouseover = function() { slider.src = 'images/sliderHOver.gif'; }
 slider.onmouseout = function() { slider.src = 'images/sliderH.gif'; }

 slider.width = 68;
 slider.height = 23;

 slider.target = o;
 slider.targetWidth = o.offsetWidth;
 slider.targetHeight = o.offsetHeight;
 document.body.appendChild(slider);


 slider.style['position'] = 'absolute';
 slider.style['z-index'] = 50;
 slider.style['top'] = posArr[1] + 'px';
 slider.style['left'] = posArr[0] + 'px';
 slider.maxX = posArr[0] + slider.targetWidth - slider.width - 6;
 slider.minX = posArr[0];
 slider.curX = slider.minX;
 slider.clickX = -1;
 slider.maxY = posArr[1];
 slider.minY = posArr[1];
 slider.curY = slider.minY;
 slider.clickY = -1;

 o.style['visibility'] = 'visible';  

 window.onresize = function() { redoHScroll(slider); };
 o.onscroll = function() { if (!isScrolling) { redoHScroll(slider); } };
 autoScroll = setTimeout('autoScrollH();', 25);
}

function autoScrollH() {
 tmpO = document.getElementById('scrollHolder');

 if (tmpO.scrollLeft < tmpO.scrollWidth - tmpO.offsetWidth) {
  tmpO.scrollLeft += 1;
  clearTimeout(autoScroll);
  autoScroll = setTimeout('autoScrollH();', 25);
 }
}

function redoHScroll(o) {
 posArr = getPos(o.target);
//------ ADJUST FOR IMAGE & BORDERS
 posArr[1] += o.targetHeight - 26;

if (isOldFF) {
 posArr[1] += 1;
}

 o.maxX = posArr[0] + o.targetWidth - o.width;
 o.minX = posArr[0];
 o.maxY = posArr[1];
 o.minY = posArr[1];

 xScale = o.target.scrollLeft / (o.target.scrollWidth - o.targetWidth);
 newX = xScale * (o.maxX - o.minX) + o.minX;
 if (newX > o.maxX)
  newX = o.maxX;

 o.style['top'] = posArr[1] + 'px';
 o.style['left'] = newX + 'px';
 o.curX = newX;
 o.curY = posArr[1];
}



function initVScroll(o) {
 if (o.offsetHeight >= o.scrollHeight) {
  return;
 }

//----- ADD SLIDER IMAGE
 posArr = getPos(o);
//------ ADJUST FOR IMAGE & BORDERS
 posArr[0] += o.offsetWidth - 30;
 posArr[1] += 3;
 if (isIE)
  posArr[0] -= 3;

if (!isOldFF) {
 o.style['overflow'] = 'auto';
} else {
 posArr[0] += 3;
}

 slider = document.createElement('img');
 slider.src = 'images/sliderVBlink.gif';
 slider.onmousedown = function(event) { startDragScroll(event, slider); }
 slider.onmouseover = function() { slider.src = 'images/sliderVOver.gif'; }
 slider.onmouseout = function() { slider.src = 'images/sliderV.gif'; }

 slider.width = 26;
 slider.height = 63;

 slider.target = o;
 slider.targetWidth = o.offsetWidth;
 slider.targetHeight = o.offsetHeight;
 document.body.appendChild(slider);

 slider.style['position'] = 'absolute';
 slider.style['z-index'] = 50;
 slider.style['top'] = posArr[1] + 'px';
 slider.style['left'] = posArr[0] + 'px';
 slider.maxX = posArr[0];
 slider.minX = posArr[0];
 slider.curX = slider.minX;
 slider.clickX = -1;
 slider.maxY = posArr[1] + slider.targetHeight - slider.height - 6;
 slider.minY = posArr[1];
 slider.curY = slider.minY;
 slider.clickY = -1;

 o.style['visibility'] = 'visible';  

 window.onresize = function() { redoVScroll(slider); };
 o.onscroll = function() { if (!isScrolling) { redoVScroll(slider); } };
}

function redoVScroll(o) {
 posArr = getPos(o.target);
//------ ADJUST FOR IMAGE & BORDERS
 posArr[0] += o.targetWidth - 30;
 posArr[1] += 3;
 if (isIE)
  posArr[0] -= 3;

if (isOldFF) {
 posArr[0] += 3;
}

 o.maxX = posArr[0];
 o.minX = posArr[0];
 o.minY = posArr[1];
 o.maxY = posArr[1] + o.targetHeight - o.height - 6;

 yScale = o.target.scrollTop / (o.target.scrollHeight - o.targetHeight);
 newY = Math.round(yScale * (o.maxY - o.minY) + o.minY);
 if (newY > o.maxY)
  newY = o.maxY;

 o.style['left'] = o.maxX + 'px';
 o.style['top'] = newY + 'px';
 o.curY = newY;
 o.curX = o.maxX;
}


function initV2Scroll(o) {
 if (o.offsetHeight >= o.scrollHeight) {
  return;
 }

//----- ADD SLIDER IMAGE
 posArr = getPos(o);
//------ ADJUST FOR IMAGE & BORDERS
 posArr[0] += o.offsetWidth - 25;
 posArr[1] += 3;

if (!isOldFF) {
 o.style['overflow'] = 'auto';
}

 slider = document.createElement('img');
 slider.src = 'images/sliderV2Blink.gif';
 slider.onmousedown = function(event) { startDragScroll(event, slider); }
 slider.onmouseover = function() { slider.src = 'images/sliderV2Over.gif'; }
 slider.onmouseout = function() { slider.src = 'images/sliderV2.gif'; }

 slider.width = 24;
 slider.height = 70;

 slider.target = o;
 slider.targetWidth = o.offsetWidth;
 slider.targetHeight = o.offsetHeight;
 document.body.appendChild(slider);

 slider.style['position'] = 'absolute';
 slider.style['z-index'] = 50;
 slider.style['top'] = posArr[1] + 'px';
 slider.style['left'] = posArr[0] + 'px';
 slider.maxX = posArr[0];
 slider.minX = posArr[0];
 slider.curX = slider.minX;
 slider.clickX = -1;
 slider.maxY = posArr[1] + slider.targetHeight - slider.height - 6;
 slider.minY = posArr[1];
 slider.curY = slider.minY;
 slider.clickY = -1;

 o.style['visibility'] = 'visible';  

 window.onresize = function() { redoV2Scroll(slider); };
 o.onscroll = function() { if (!isScrolling) { redoV2Scroll(slider); } };
}

function redoV2Scroll(o) {
 posArr = getPos(o.target);
//------ ADJUST FOR IMAGE & BORDERS
 posArr[0] += o.targetWidth - 25;
 posArr[1] += 3;

if (!isOldFF) {
 o.style['overflow'] = 'auto';
} else {
 posArr[0] += 3;
}

 o.maxX = posArr[0];
 o.minX = posArr[0];
 o.minY = posArr[1];
 o.maxY = posArr[1] + o.targetHeight - o.height - 6;

 yScale = o.target.scrollTop / (o.target.scrollHeight - o.targetHeight);
 newY = Math.round(yScale * (o.maxY - o.minY) + o.minY);
 if (newY > o.maxY)
  newY = o.maxY;

 o.style['left'] = o.maxX + 'px';
 o.style['top'] = newY + 'px';
 o.curY = newY;
 o.curX = o.maxX;
}



function initV3Scroll(o) {
 if (o.offsetHeight >= o.scrollHeight) {
  return;
 }

//----- ADD SLIDER IMAGE
 posArr = getPos(o);
//------ ADJUST FOR IMAGE & BORDERS
 posArr[0] += o.offsetWidth - 11;
 posArr[1] += 3;

if (!isOldFF) {
 o.style['overflow'] = 'auto';
}

 slider = document.createElement('img');
 slider.src = 'images/sliderV3Blink.gif';
 slider.onmousedown = function(event) { startDragScroll(event, slider); }
 slider.onmouseover = function() { slider.src = 'images/sliderV3Over.gif'; }
 slider.onmouseout = function() { slider.src = 'images/sliderV3Blink.gif'; }

 slider.width = 27;
 slider.height = 69;

 slider.target = o;
 slider.targetWidth = o.offsetWidth;
 slider.targetHeight = o.offsetHeight;
 document.body.appendChild(slider);

 slider.style['position'] = 'absolute';
 slider.style['z-index'] = 50;
 slider.style['top'] = posArr[1] + 'px';
 slider.style['left'] = posArr[0] + 'px';
 slider.maxX = posArr[0];
 slider.minX = posArr[0];
 slider.curX = slider.minX;
 slider.clickX = -1;
 slider.maxY = posArr[1] + slider.targetHeight - slider.height - 6;
 slider.minY = posArr[1];
 slider.curY = slider.minY;
 slider.clickY = -1;

 slider.isBlinking = true;

 o.style['visibility'] = 'visible';  

 window.onresize = function() { redoV3Scroll(slider); };
 o.onscroll = function() { if (!isScrolling) { redoV3Scroll(slider); } };
}

function redoV3Scroll(o) {
 posArr = getPos(o.target);
//------ ADJUST FOR IMAGE & BORDERS
 posArr[0] += o.targetWidth - 11;
 posArr[1] += 3;

 o.maxX = posArr[0];
 o.minX = posArr[0];
 o.minY = posArr[1];
 o.maxY = posArr[1] + o.targetHeight - o.height - 6;

 if (o.isBlinking) {
  o.src = 'images/sliderV3Blink.gif';
  o.isBlinking = false;
 }

 yScale = o.target.scrollTop / (o.target.scrollHeight - o.targetHeight);
 newY = Math.round(yScale * (o.maxY - o.minY) + o.minY);
 if (newY > o.maxY)
  newY = o.maxY;

 o.style['left'] = o.maxX + 'px';
 o.style['top'] = newY + 'px';
 o.curY = newY;
 o.curX = o.maxX;
}


function initV4Scroll(o) {
 if (o.offsetHeight >= o.scrollHeight) {
  return;
 }

//----- ADD SLIDER IMAGE
 posArr = getPos(o);
//------ ADJUST FOR IMAGE & BORDERS
 posArr[0] += o.offsetWidth + 5;
 posArr[1] += 3;

if (!isOldFF) {
 o.style['overflow'] = 'auto';
}

 slider = document.createElement('img');
 slider.src = 'images/sliderV4.gif';
 slider.onmousedown = function(event) { startDragScroll(event, slider); }
 slider.onmouseover = function() { slider.src = 'images/sliderV4Over.gif'; }
 slider.onmouseout = function() { slider.src = 'images/sliderV4.gif'; }

 slider.width = 24;
 slider.height = 65;

 slider.target = o;
 slider.targetWidth = o.offsetWidth;
 slider.targetHeight = o.offsetHeight;
 document.body.appendChild(slider);

 slider.style['position'] = 'absolute';
 slider.style['z-index'] = 50;
 slider.style['top'] = posArr[1] + 'px';
 slider.style['left'] = posArr[0] + 'px';
 slider.maxX = posArr[0];
 slider.minX = posArr[0];
 slider.curX = slider.minX;
 slider.clickX = -1;
 slider.maxY = posArr[1] + slider.targetHeight - slider.height - 6;
 slider.minY = posArr[1];
 slider.curY = slider.minY;
 slider.clickY = -1;

 o.style['visibility'] = 'visible';  

 window.onresize = function() { redoV4Scroll(slider); };
 o.onscroll = function() { if (!isScrolling) { redoV4Scroll(slider); } };
}

function redoV4Scroll(o) {
 posArr = getPos(o.target);
//------ ADJUST FOR IMAGE & BORDERS
 posArr[0] += o.target.offsetWidth + 5;
 posArr[1] += 3;

 o.maxX = posArr[0];
 o.minX = posArr[0];
 o.minY = posArr[1];
 o.maxY = posArr[1] + o.targetHeight - o.height - 6;

 yScale = o.target.scrollTop / (o.target.scrollHeight - o.targetHeight);
 newY = Math.round(yScale * (o.maxY - o.minY) + o.minY);
 if (newY > o.maxY)
  newY = o.maxY;

 o.style['left'] = o.maxX + 'px';
 o.style['top'] = newY + 'px';
 o.curY = newY;
 o.curX = o.maxX;
}











function startDragScroll(event, obj) {
 if (!event)
  event = window.event;

 if (elMove || elUp) {
  if (document.removeEventListener) {
   document.removeEventListener("mousemove", elMove, false);
   document.removeEventListener("mouseup", elUp, false);
  } else if (document.detachEvent) {
   document.detachEvent("onmousemove", elMove);
   document.detachEvent("onmouseup", elUp);
  }
 }
  
 if (document.addEventListener) {
  document.addEventListener("mousemove", elMove = function(event) { dragGo(event, obj); }, false);
  document.addEventListener("mouseup", elUp = function(event) { dragStop(event, obj); }, false);
 } else if (document.attachEvent) {
  document.attachEvent('onmousemove', elMove = function(event) { dragGo(event, obj); });
  document.attachEvent('onmouseup', elUp = function(event) { dragStop(event, obj); });
 }
 isScrolling = true;
 event.preventDefault();
}

function dragGo(event, obj) {
 if (!event)
  event = window.event;

 if (obj.clickX == -1)
  obj.clickX = event.clientX;
 if (obj.clickY == -1)
  obj.clickY = event.clientY;

 newX = event.clientX - obj.clickX + obj.curX;
 if (newX < obj.minX)
  newX = obj.minX;
 else if (newX > obj.maxX)
  newX = obj.maxX;

 newY = event.clientY - obj.clickY + obj.curY;
 if (newY < obj.minY)
  newY = obj.minY;
 else if (newY > obj.maxY)
  newY = obj.maxY;

 obj.newX = newX;
 obj.newY = newY;

 obj.style.left = newX + 'px';
 obj.style.top = newY + 'px';
 xScale = (obj.newX - obj.minX) / (obj.maxX - obj.minX);
 yScale = (obj.newY - obj.minY) / (obj.maxY - obj.minY);
 scrollTarget(obj, xScale, yScale);
}

function dragStop(event, obj) {
 if (!event)
  event = window.event;

 if (document.removeEventListener) {
  document.removeEventListener("mousemove", elMove, false);
  document.removeEventListener("mouseup", elUp, false);
 } else if (document.detachEvent) {
  document.detachEvent("onmousemove", elMove);
  document.detachEvent("onmouseup", elUp);
 }
 obj.curX = obj.newX;
 obj.clickX = -1;
 obj.curY = obj.newY;
 obj.clickY = -1;
 isScrolling = false;
}

function scrollTarget(o, xScale, yScale) {
 maxX = o.target.scrollWidth - o.targetWidth;
 maxY = o.target.scrollHeight - o.targetHeight;
 newX = xScale * maxX;
 newY = yScale * maxY;
 o.target.scrollLeft = newX;
 o.target.scrollTop = newY;
}

function getPos(posObj) {
 xVal = posObj.offsetLeft;
 yVal = posObj.offsetTop;
 while (posObj.offsetParent) {
  posObj = posObj.offsetParent;
  xVal += posObj.offsetLeft;
  yVal += posObj.offsetTop;
 }
 return(new Array(xVal, yVal));
}
