/*************************************************************************
	This code is from Dynamic Web Coding at http://www.dyn-web.com/
	Copyright 2001-3 by Sharon Paine
	See Terms of Use at http://www.dyn-web.com/bus/terms.html
	regarding conditions under which you may use this code.
	This notice must be retained in the code as is!
*************************************************************************/

function initImgRotation() {
	// create rotating image objects here
	// arguments: image name, rotation speed (milliseconds)
	var rotator1 = new rotateImgObj('img1',2500);
	// add the images to rotate into that image object
	rotator1.addImages("square5.jpg","square6.jpg","square7.jpg");
	// add the corresponding actions to take onclick of those images
	// destination url or function pointer
//	rotator1.addActions("piece_bracelet_peachy.php", "piece_necklace_flight.php", "piece_bracelet_seafoam.php");
	rotator1.addActions("piece_bracelet_spring.php", "piece_bracelet_grace_ga.php", "piece_bracelet_pair.php");
	rotator1.rotate();

	// arguments: image name, rotation speed (milliseconds)
	var rotator2 = new rotateImgObj('img2',3500);
	// add the images to rotate into that image object
	rotator2.addImages("rect6.jpg","rect7.jpg","rect8.jpg");
	// add the corresponding actions to take onclick of those images
	// destination url or function pointer
//	rotator2.addActions("piece_necklace_signature.php", "piece_bracelet_ante.php", "piece_bracelet_sugar.php");
	rotator2.addActions("piece_necklace_burning.php", "piece_necklace_fire.php", "piece_necklace_lucky_o.php");
	rotator2.rotate();

	// arguments: image name, rotation speed (milliseconds)
	var rotator3 = new rotateImgObj('img3',3750);
	// add the images to rotate into that image object
	rotator3.addImages("rect10.jpg","rect11.jpg","rect9.jpg");
	// add the corresponding actions to take onclick of those images
	// destination url or function pointer
//	rotator3.addActions("piece_bracelet_sugar.php", "piece_necklace_whirling.php", "piece_necklace_macbeth.php");
	rotator3.addActions("piece_bracelet_survive.php", "piece_necklace_merlot.php", "piece_necklace_margarita.php");
	rotator3.rotate();

	// arguments: image name, rotation speed (milliseconds)
	var rotator4 = new rotateImgObj('img4',3250);
	// add the images to rotate into that image object
	rotator4.addImages("square9.jpg","square10.jpg","square8.jpg");
	// add the corresponding actions to take onclick of those images
	// destination url or function pointer
//	rotator4.addActions("piece_bracelet_seafoam.php", "piece_bracelet_royal.php", "piece_necklace_flight.php");
	rotator4.addActions("piece_bracelet_arte.php", "piece_bracelet_prosperity.php", "piece_bracelet_arm.php");
	rotator4.rotate();

	rotateImgObj.start();
}

// If all the images you wish to display are in the same location, you can specify the path here
rotateImgObj.imagesPath = "media/";
// if you want url's to open in a separate window, un-comment this line
//rotateImgObj.tgt = "_blank";

// no need to edit code below
/////////////////////////////////////////////////////////////////////
rotateImgObjs = []; // holds all rotating image objects defined
// constructor
function rotateImgObj(nm,s) {
	this.speed=s; this.ctr=0; this.timer=0;
	this.imgObj = document.images[nm]; // get reference to the image object
	this.index = rotateImgObjs.length; rotateImgObjs[this.index] = this;
	this.animString = "rotateImgObjs[" + this.index + "]";
}

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

	addActions: function() {
		this.actions = [];
		for (var i=0; i<arguments.length; i++) { this.actions[i] = arguments[i]; }
	},

	rotate: 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 rotation for all defined rotateImgObjs
rotateImgObj.start = function() {
	for (var i=0; i<rotateImgObjs.length; i++)
		rotateImgObjs[i].timer = setInterval(rotateImgObjs[i].animString + ".rotate()", rotateImgObjs[i].speed);
}

// called onclick of images
rotateImgObj.doClick = function(n) {
	if ( document.images && rotateImgObjs[n] ) {
		var obj = rotateImgObjs[n]; // shorten reference
		if ( obj.actions && obj.actions[obj.ctr] ) {
			if ( typeof obj.actions[obj.ctr] == "string" ) {
				if ( rotateImgObj.tgt == "_blank" ) {
					// open in separate window (add features here if you want, i.e., chrome, size, position, ...)
					var win = window.open(obj.actions[obj.ctr], "subwin");
					if ( win && !win.closed ) win.focus();
				} else window.location = obj.actions[obj.ctr];
			} else obj.actions[obj.ctr]();
		}
		return false;
	} else return true;
}

// for stopping/starting onmouseover/out
rotateImgObj.pause = function(n) {
	if (rotateImgObjs[n]) clearInterval(rotateImgObjs[n].timer);
}

rotateImgObj.resume = function(n) {
	if ( rotateImgObjs[n] ) {
		var obj = rotateImgObjs[n]; // shorten reference
		//obj.rotate(); // rotate now and resume repeated calls
		obj.timer = setInterval( obj.animString + ".rotate()", obj.speed );
	}
}
