/*
  This version of ImageRotater tries to work with the 
  corners.js script.
*/

var ImageRotator = function(tocPage, div) {
  div = $(div);
  this.div = div;
  Element.addClassName(this.div, 'imageRotator');
  this.innerDiv = addDivTo(this.div);

  this.url = tocPage;
  this.jsonUrl = '/sitebuilder2/api/rss/tocRss.htm?json=yes';
  this.currentIndex = 0;
  this.postBody = 'includeBinary=true&includeHtml=false&type=json&page=' + tocPage;
    options = {
     parameters: this.postBody,
     onSuccess: function(e) {
       this.info = eval('('+e.responseText+')');
       this.show(this.randomItemNumber());
     }.bind(this)
    };
    this.ajax = new Ajax.Request(this.jsonUrl, options);
}

ImageRotator.prototype.randomItemNumber = function() {
    var itemCount = this.info.items.length;
    var i = Math.floor(itemCount*Math.random());
    if (i == itemCount) {i--};
    return i;
}

/* display slide number i */
ImageRotator.prototype.show = function(i) {
    this.currentIndex = i;
    var items = this.info.items;
    href = items[i].url.href;
    var description = items[i].content;
    var title = items[i].title;
    var html = '<img src="'+href+'" alt="" class="corner iradius16" />';
    
    var preloadImage = new Image();
    preloadImage.src = href;

    Element.update(this.innerDiv, html);
    if(typeof(addCorners) != 'undefined') {
      var check = function() {
          if (preloadImage.loaded) {
              ImageRotator.corners();
          } else {
              setTimeout(100, check);
          }
      }
    }
}

ImageRotator.corners = function() { if(isIE){addIECorners(); }else {addCorners();} }

var addDivTo = function(parent) {
  var d = document.createElement('DIV');
  parent.appendChild(d); return d;
}