window.addEvent('domready',function(){  
    
        SqueezeBox.initialize({});
	    SqueezeBox.assign($$('a.SqueezeBox'), {
		    parse: 'rel'
	    });  
	   
});

var SimpleCarousel = new Class({
	Implements: [Options, Events],
	options: {
//		onRotate: $empty,
//		onStop: $empty,
//		onAutoPlay: $empty,
//		onShowSlide: $empty,
		slideInterval: 500,
		transitionDuration: 2000,
		startIndex: 0,
		buttonOnClass: "selected",
		buttonOffClass: "off",
		rotateAction: "none",
		rotateActionDuration: 100,
		autoplay: true
	},
	initialize: function(container, slides, buttons, options){
		this.container = document.id(container);
		var instance = this.container.retrieve('SimpleCarouselInstance');
		if (instance) return instance;
		this.container.store('SimpleCarouselInstance', this);
		this.setOptions(options);
		this.container.addClass('hasCarousel');
		this.slides = $$(slides);
		this.buttons = $$(buttons);
		this.createFx();
		this.showSlide(this.options.startIndex);
		if (this.options.autoplay) this.autoplay();
		if (this.options.rotateAction != 'none') this.setupAction(this.options.rotateAction);
		return this;
	},
	toElement: function(){
		return this.container;
	},
	setupAction: function(action) {
		this.buttons.each(function(el, idx){
			document.id(el).addEvent(action, function() {
				this.slideFx.setOptions(this.slideFx.options, {duration: this.options.rotateActionDuration});
				if (this.currentSlide != idx) this.showSlide(idx);
				this.stop();
			}.bind(this));
		}, this);
	},
	createFx: function(){
		if (!this.slideFx) this.slideFx = new Fx.Elements(this.slides, {duration: this.options.transitionDuration});
		this.slides.each(function(slide){
			slide.setStyle('opacity',0);
		});
	},
	showSlide: function(slideIndex){
		var action = {};
		this.slides.each(function(slide, index){
			if (index == slideIndex && index != this.currentSlide){ //show
				if (document.id(this.buttons[index])) document.id(this.buttons[index]).swapClass(this.options.buttonOffClass, this.options.buttonOnClass);
				action[index.toString()] = {
					opacity: 1
				};
			} else {
				if (document.id(this.buttons[index])) document.id(this.buttons[index]).swapClass(this.options.buttonOnClass, this.options.buttonOffClass);
				action[index.toString()] = {
					opacity:0
				};
			}
		}, this);
		this.fireEvent('onShowSlide', slideIndex);
		this.currentSlide = slideIndex;
		this.slideFx.start(action);
		return this;
	},
	autoplay: function(){
		this.slideshowInt = this.rotate.periodical(this.options.slideInterval, this);
		this.fireEvent('onAutoPlay');
		return this;
	},
	stop: function(){
		$clear(this.slideshowInt);
		this.fireEvent('onStop');
		return this;
	},
	rotate: function(){
		var current = this.currentSlide;
		var next = (current+1 >= this.slides.length) ? 0 : current+1;
		this.showSlide(next);
		this.fireEvent('onRotate', next);
		return this;
	}
});



function movePoint(element,originalHeight,pTop,pLeft){

    $$('#imgcontainer img').each(function(el,index){ 
    
	    //work out new height as a percentage of the orignal height
	    var currentHeight = el.getStyle('height').toInt();
        var heightPercent = (currentHeight / originalHeight) * 100;
        
        //get top and left position of ponit
        var pointTop = pTop;
        var pointLeft = pLeft;
        
        var newPointTop = (pointTop / 100) * heightPercent;
        newPointTop = (newPointTop).round();
        var newPointLeft  = (pointLeft / 100) * heightPercent;
        newPointLeft = (newPointLeft).round();
        
        $(element).setStyles({
            top: newPointTop,
            left: newPointLeft
        });
    
    });
    
}

function ClearInput(target, defaultval){
	if(target.value == defaultval){
		target.value = "";
	}
	if(target.nodeName.test('textarea','i')){
		if(target.innerHTML == defaultval){
			target.innerHTML = '';
		}
	}
}

function ReplaceInputPrompt(target,defaultval){
	if(target.value == ""){
		target.value = defaultval;
	}
	if(target.nodeName.test('textarea','i')){
		if(target.innerHTML == ""){
			target.innerHTML = defaultval;
		}
	}
}

function getInternetExplorerVersion()
{
  var rv = 1000;
  if (navigator.appName == 'Microsoft Internet Explorer')
  {
    var ua = navigator.userAgent;
    var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
    if (re.exec(ua) != null)
      rv = parseFloat( RegExp.$1 );
  }
  return rv;
}


