/* HighSlide Setup */

var HighSlide = {

	slideshowGroups: new Object,

	run: function()
	{
		// Commercial Unlimited
		// 87e18fc07f5c729c8640280620cce7c8
		HighSlide.setup();
		HighSlide.start();
	},

	setup: function()
	{
		hs.outlineType = 'rounded-white';
		hs.outlineWhileAnimating = true;
		hs.dimmingOpacity = 0.75;
		hs.graphicsDir = '/media/js/highslide/graphics/';
		hs.align = 'center';
		hs.showCredits = false;
		//hs.moveText = '<img src="/media/js/highslide/graphics/move.gif" alt="" />';
		//hs.closeText = '<img src="/media/js/highslide/graphics/close.gif" alt="" />';
		//hs.loadingText = '...';
	},

	fetch_object_overrides: function(classes)
	{
		var object_overrides = new Object;
		var regex = /^hs_(.+)_([^_]*)$/;
		classes.each(function(class_name) {
			var result = class_name.match(regex);
			if (result) {
				if (result[1] == 'slideshowGroup') {
					HighSlide.register_overlay(result[2]);
				}
				object_overrides[result[1]] = result[2];
			}
		});
		return object_overrides;
	},

	start: function()
	{
		$$('a.highslide').each(HighSlide.start_each);
	},
	start_each: function(link)
	{
		link.onclick = HighSlide.start_each_click;
		link.observe('click', function(event) { event.stop(); });
	},
	start_each_click: function(event) {
		var object_overrides = HighSlide.fetch_object_overrides(this.classNames());
		if (this.hasClassName('htmlExpand')) {
			return hs.htmlExpand(this, object_overrides);
		} else {
			return hs.expand(this, object_overrides);
		}
	},

	register_overlay: function(slideshowGroup)
	{
		var i = HighSlide.slideshowGroups[slideshowGroup];
		if (i) {
			i = i+1;
		} else {
			i = 1;
		}
		HighSlide.slideshowGroups[slideshowGroup] = i;

		if (i == 1) {
			hs.registerOverlay({
				thumbnailId: null,
				slideshowGroup: slideshowGroup,
				overlayId: 'highslide_controlbar',
				position: 'top right',
				hideOnMouseOut: true
			});
		}
	}

}

new StartUp(HighSlide);
