var myScroll = new Class({

    options: {
		scrollWidth: 0,
		leftHandle: null,
		rightHandle: null,
		container: null,
		leftClicks: 0,
		rightClicks: 0,
		speed: 500		
	},
	
	initialize: function(options){
	this.setOptions(options)
	
		this.scrollWidth = options['scrollWidth'];
		this.leftHandle = options['leftHandle'];
		this.rightHandle = options['rightHandle'];	
		this.container = $(options['container']);
		
		if($(options['ff'])){
			this.ff = $(options['ff']);
			$(this.ff).addEvent('click',this.fastForward.bindWithEvent(this));
		}
		if($(options['rw'])){
			this.rw = $(options['rw']);
			$(this.rw).addEvent('click',this.speedReverse.bindWithEvent(this));
		}
		
		this.leftClicks = 0;
		this.rightClicks = 0;
		this.speed = options['speed'];
	},
	
	
	fastForward: function(){
		
				
				if (this.leftClicks<1)
				{
					var start= (this.leftClicks) * this.scrollWidth;			
					var end = (( this.leftClicks + 1 ) * this.scrollWidth);
					$(this.container).effect('right',{ duration: this.speed, wait:true, transition:Fx.Transitions.Back.easeIn }).start(start,end);
					this.leftClicks = this.leftClicks +  1;
				}
				
	},
	
	speedReverse: function(){

				if (this.leftClicks==1)
				{
					var start= (this.leftClicks *  this.scrollWidth );
					var end = ((this.leftClicks  - 1 ) * this.scrollWidth);
					$(this.container).effect('right',{ duration: this.speed, wait:true, transition: Fx.Transitions.Back.easeIn }).start(start,end);
					this.leftClicks-= 1;
				}	
	}
				
});
myScroll.implement(new Options, new Events);


function fixPNG(myImage) 
{
	try {
		var arVersion = navigator.appVersion.split("MSIE");
		var version = parseFloat(arVersion[1]);
		if ((version >= 5.5) && (version < 7) && (document.body.filters)){
			myImage = $(myImage);
			var vis = myImage.getStyle('display') != 'none';
			if(!vis) myImage.setStyle('display','block');
			var width = $(myImage).offsetWidth;
			var height = $(myImage).offsetHeight;
			if(!vis) myImage.hide();
			var replacement = new Element('span', {
				id:(myImage.id)?myImage.id:'',
				'class':(myImage.className)?myImage.className:'',
				title:(myImage.title)?myImage.title:(myImage.alt)?myImage.alt:'',
				styles: {
					display: 'inline-block',
					width: width,
					height: height,
					filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader (src='" 
						+ myImage.src + "', sizingMethod='scale');"
				}
			});
			if(myImage.style.cssText) {
				try {
					var styles = {};
					var s = myImage.style.cssText.split(';');
					s.each(function(style){
						var n = style.split(':');
						styles[n[0]] = n[1];
					});
					replacement.setStyle(styles);
				} catch(e){}
			}
			if(replacement.cloneEvents) replacement.cloneEvents(myImage);
			myImage.replaceWith(replacement);
		}
	} catch(e) {}
};



var myGallery;

		
function startGallery() {
	myGallery = new gallery($('myGallery'), {
	timed: false,
	embedLinks: false,
	showCarousel: true,
	showArrows: true,
	showInfopane:true,
	titleSelector: "h1",
	preloader: true,
	defaultTransition: "fade",
	useHistoryManager: true,
	carouselElement: $('thumbs'),
	useExternalCarousel: true,
	textShowCarousel: "Weitere Bilder",
	showCarouselLabel: false,
    thumbCloseCarousel: false
	
	});
	HistoryManager.start();
}

var siteInit = function() {
	
	
	
	var Tooltip = new Tips($$('.tooltip'), {
		initialize:function(){
			this.fx = new Fx.Style(this.toolTip, 'opacity', {duration: 500, wait: false}).set(0);
		},
		onShow: function(toolTip) {
			this.fx.start(1);
		},
		onHide: function(toolTip) {
			this.fx.start(0);
		}
	});

	
	
		
}

window.addEvent('domready', function(){
	
	
		var p = new myScroll({container:'innerScroller', imgWidth:140, scrollWidth:800, rw:'leftFF', ff:'rightFF', speed:700});

	
	if ($('myGallery')) { startGallery(); }
	
	siteInit();
	
});


window.addEvent('load', function(){
	
	if(window.ie6) {

		$$('img.fixPNG').each(function(png){
			fixPNG(png)
		});

	}
	
});
