YAHOO.util.Event.onContentReady('collection', function() {
	var items = YAHOO.util.Dom.getElementsByClassName('swap-item', 'div', 'collection');
	YAHOO.util.Dom.setStyle(items, 'opacity', 0);
	YAHOO.util.Dom.setStyle(items, 'display', 'none');
	YAHOO.util.Dom.setStyle(items[0], 'opacity', 1);
	YAHOO.util.Dom.setStyle(items[0], 'display', 'block');
	var pageNrs = document.createElement('div');
	pageNrs.style.position = 'absolute';
	pageNrs.style.top = '0';
	pageNrs.style.right = '0';
	pageNrs.style.display = 'none';
	pageNrs.innerHTML = '1/' + items.length;
	YAHOO.util.Dom.get('collection').appendChild(pageNrs);
	var selected = 0;
	determineNext = function(t) {
		if (t.indexOf('next') > -1) {
			return (selected < items.length - 1 ? selected + 1 : 0);
		} else {
			return (selected == 0 ? items.length - 1 : selected - 1);
		}
	}
	fadeIn = function(e) {
		var attributes = {
			opacity: { to: 1 }
		}
		selected = this.newTarget;
		YAHOO.util.Dom.setStyle('show-item-' + selected, 'display', 'block');
		YAHOO.util.Dom.setStyle(this.old, 'display', 'none');
		anim = new YAHOO.util.Motion('show-item-' + selected, attributes,.65, YAHOO.util.Easing.easeOut);
		anim.animate();
		pageNrs.innerHTML = (selected + 1) + '/' + items.length;
	}
	fadeOut = function(e) {
		var t = YAHOO.util.Event.getTarget(e).id;
		var attributes = {
			opacity: { to: 0 }
		}
		anim = new YAHOO.util.Motion('show-item-' + selected, attributes,.65, YAHOO.util.Easing.easeOut);
		anim.old = YAHOO.util.Dom.get('show-item-' + selected);
		anim.newTarget = determineNext(t);
		anim.onComplete.subscribe(fadeIn);
		anim.animate();
	}
	// Controls
	var prev = YAHOO.util.Dom.get('collection-prev');
	var next = YAHOO.util.Dom.get('collection-next');
	YAHOO.util.Event.addListener([prev, next], 'click', fadeOut);
});
