var showcase_overlay_numbers = document.getElementById('showcase_overlay_numbers');
var overlay_number_holder;
var preloaded_images = [];
var rotate_timeout_id;
for (var i in showcase_items) {
  overlay_number_holder = document.createElement('div');
  overlay_number_holder.id = 'overlay_number_holder_' + i;
  overlay_number_holder.className = 'showcase_overlay_number_off';
  overlay_number_holder.style.visibility = 'hidden';
  eval('overlay_number_holder.onclick = function(){show_showcase_item("' + i + '");}');
  overlay_number_holder.appendChild(document.createTextNode(i*1 + 1));
  showcase_overlay_numbers.appendChild(overlay_number_holder);
  
  preloaded_images[i] = new Image();
  eval('preloaded_images[' + i + '].onload = function(){preloaded_images[' + i + '].alt="loaded"; document.getElementById("' + overlay_number_holder.id + '").style.visibility = "visible";}');
  preloaded_images[i].src = showcase_settings.image_url + showcase_items[i].image;
}

if (showcase_items.length > 0) {
  show_showcase_item(0);
}

function rotate_showcase_items() {
  var next_showcase_item = showcase_settings.current_item + 1;
  if (next_showcase_item >= showcase_items.length) {
    next_showcase_item = 0;
  }
  
  if (preloaded_images[next_showcase_item].alt != 'loaded') return;
  
  show_showcase_item(next_showcase_item);
}

function show_showcase_item(item_id) {
  if (item_id == showcase_settings.current_item) return;
  
  clearTimeout(rotate_timeout_id);
  
  var showcase_item = showcase_items[item_id];
  
  var total = showcase_items.length;
  for (var i=0; i<total; i++) {
    document.getElementById('overlay_number_holder_' + i).className = 'showcase_overlay_number_off';
  }
  
  slide_image(showcase_settings.image_url + showcase_item.image);
  document.getElementById('showcase_overlay_title').innerHTML = showcase_item.title;
  document.getElementById('overlay_number_holder_' + item_id).className = 'showcase_overlay_number_on';
  document.getElementById('showcase_cover').onclick = function(){location.href = showcase_item.url};
  
  showcase_settings.current_item = item_id*1;
  
  rotate_timeout_id = setTimeout(rotate_showcase_items, showcase_settings.rotate_interval);
}

function slide_image(image_url) {
  var showcase_image = document.getElementById('showcase_image');
  var showcase_image_slider = document.getElementById('showcase_image_slider');
  var showcase_image_holder = showcase_image.parentNode;
  var showcase_image_slider_holder = showcase_image_slider.parentNode;
  
  showcase_image.src = showcase_image_slider.src;
  showcase_image_holder.style.left = '0px';
  
  showcase_image_slider_holder.style.left = showcase_settings.image_width + 'px';
  showcase_image_slider.src = image_url;
  
  var obj_id;
  var x;
  var y;
  var fps;
  var seconds;
  var ease;
  
  obj_id = showcase_image_slider_holder.id;
  x = 0;
  y = 0;
  fps = 24;
  seconds = .3;
  ease = 1;
  slide(obj_id, x, y, fps, seconds, ease);
  
  obj_id = showcase_image_holder.id;
  x = showcase_settings.image_width * -1;
  y = 0;
  fps = 24;
  seconds = .3;
  ease = 1;
  slide(obj_id, x, y, fps, seconds, ease);
}
