// JavaScript Document
function initImgSwap() {
  var swapImage1 = new swapImgObj('imgPortfolio',2000);
  // add the image names to swap
  swapImage1.addImages("image1.jpg","image2.jpg","image3.jpg", "image4.jpg", "image5.jpg", "image6.jpg", "image7.jpg", "image8.jpg", "image9.jpg", "image10.jpg", "image11.jpg", "image12.jpg", "image13.jpg", "image14.jpg", "image15.jpg", "image16.jpg", "image17.jpg", "image18.jpg", "image19.jpg", "image20.jpg");
  swapImage1.swap();  
  swapImgObj.start();
}

// Image location
swapImgObj.imagesPath = "images/";

swapImgObjs = []; 
// constructor 
function swapImgObj(nm,s) {
  this.speed=s; this.ctr=0; this.timer=0;  
  this.imgObj = document.images[nm]; 
  this.index = swapImgObjs.length; swapImgObjs[this.index] = this;
  this.animString = "swapImgObjs[" + this.index + "]";
}

swapImgObj.prototype = {
  addImages: function() { // preloads images
    this.imgObj.imgs = [];
    for (var i=0; arguments[i]; i++) {
      this.imgObj.imgs[i] = new Image();
      this.imgObj.imgs[i].src = swapImgObj.imagesPath + arguments[i];
    }
  },

  swap: function() {
    if (this.ctr < this.imgObj.imgs.length-1) this.ctr++;
    else this.ctr = 0;
    this.imgObj.src = this.imgObj.imgs[this.ctr].src;
  }
}

// sets up Swap for all defined swapImgObjs
swapImgObj.start = function() {
  for (var i=0; i<swapImgObjs.length; i++) 
    swapImgObjs[i].timer = setInterval(swapImgObjs[i].animString + ".swap()", swapImgObjs[i].speed);                     
}