if ((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)) || screen.width <= 699)
{
   location.replace("/mobile/");
}
if((navigator.userAgent.match(/iPad/i)))
{
	location.replace("/mobile/");
}




// Slider || content slider //

var sliderClass, fadeItemClass;

// Hier word de Class uitgevoerd.

window.addEvent('load', function(){
	windowSize = new WindowSize(
	{
		elSlider: $$('.slider_item'),
		elSliderBg: $$('.slider_wrapper')
	});
});


window.addEvent('domready', function(){
	preLoadImgClass = new preLoadImg(
	{
		elContainer: $('slider_content')
	});
	
	windowSize = new WindowSize(
	{
		elSlider: $$('.slider_item'),
		elSliderBg: $$('.slider_wrapper')
	});
	
	sliderClass = new scroller(
	{
		elScroller: $('scroller'),
		elScrollContent: $('slider_content')
	});
	
	fadeItemClass = new fadeItem(
	{
		elItems: $$('.slider_item')
	});
	
	flipOutClass = new FlipOut(
	{
		elFlipOut: $('top_info')
	});
	
});


/**
 * Image PreLoader
 *
 * @author Koen de Man
 **/
var preLoadImg = new Class(
{	
	options: {
		elContainer: null
	},
	
	Implements: Options,
	
	// word als eerste in de class uitgevoerd
	initialize: function(options)
	{
		this.setOptions(options);
		this.preLoad();
	},
	
	preLoad: function()
	{			
		window.addEvent('domready', function()
		{
	
			var images =
			[
				
				'images/projecten/1-2_tw.jpg',
				'images/projecten/affiche_koen.jpg',
				'images/projecten/affiche_lucas.jpg',
				'images/projecten/affiche-30-sterren.jpg',
				'images/projecten/affiche-russen.jpg',
				'images/projecten/aji samen.jpg',
				'images/projecten/affiche-TL.jpg',
				'images/projecten/aji_spread.jpg',
				'images/projecten/aji2.jpg',
				'images/projecten/Alumni.jpg',
				'images/projecten/barlake-1.jpg',
				'images/projecten/billboard-1-stappegoor.jpg',
				'images/projecten/billboard-2-stappegoor.jpg',
				'images/projecten/billboard-stappegoor.jpg',
				'images/projecten/boekie-lucas.jpg',
				'images/projecten/boek-Koen-1.jpg',
				'images/projecten/boek-koen-2.jpg',
				'images/projecten/bom.jpg',
				'images/projecten/bombord1.jpg',
				'images/projecten/Bottle_shapes.jpg',
				'images/projecten/brochurelijn-aji.jpg',
				'images/projecten/brochurelijn-hkt.jpg',
				'images/projecten/dix-3.jpg',
				'images/projecten/dual-satin.jpg',
				'images/projecten/fa1.jpg',
				'images/projecten/Fhealinc brochure def.jpg',
				'images/projecten/flyer-links.jpg',
				'images/projecten/flyer-rechts.jpg',
				'images/projecten/fondwa-1.jpg',
				'images/projecten/GKC_omslag.jpg',
				'images/projecten/good-vibrations.jpg',
				'images/projecten/hkt1.jpg',
				'images/projecten/hoeks.jpg',
				'images/projecten/I_love_milieu.jpg',
				'images/projecten/identiteit_Kolbach.jpg',
				'images/projecten/innofocus.jpg',
				'images/projecten/jaarverslag-1.jpg',
				'images/projecten/jongeren-tilburg.jpg',
				'images/projecten/jrl_samen.jpg',
				'images/projecten/jrl4.jpg',
				'images/projecten/kaart-cursus-2.jpg',
				'images/projecten/korsten-1.jpg',
				'images/projecten/korsten-2.jpg',
				/*'images/projecten/kruis_fiets.jpg',*/
				'images/projecten/leadbeeld_growing_on_demand.jpg',
				'images/projecten/LED.jpg',
				'images/projecten/lucas-promo-1.jpg',
				'images/projecten/majoppe.jpg',
				'images/projecten/mbp.jpg',
				'images/projecten/mbp1.jpg',
				'images/projecten/mbp4.jpg',
				'images/projecten/mc1.jpg',
				'images/projecten/morellet-1.jpg',
				'images/projecten/morrelet-2.jpg',
				'images/projecten/nachtvlinders.jpg',
				'images/projecten/o-bot.jpg',
				'images/projecten/omslagcd.jpg',
				'images/projecten/open-huis1.jpg',
				'images/projecten/ph1.jpg',
				'images/projecten/ph4.jpg',
				'images/projecten/ph6.jpg',
				'images/projecten/philips-logo.jpg',
				'images/projecten/prof.jpg',
				'images/projecten/stad-en-milieu.jpg',
				'images/projecten/stap2.jpg',
				'images/projecten/stap3.jpg',
				'images/projecten/stegenga.jpg',
				'images/projecten/straat-1.jpg',
				'images/projecten/straat-2.jpg',
				'images/projecten/taste.jpg',
				'images/projecten/tuinstraat.jpg',
				'images/projecten/v39.jpg',
				'images/projecten/v391.jpg',
				'images/projecten/v392.jpg',
				'images/projecten/Veghelspaart.jpg',
				'images/projecten/vincent_enkel.jpg',
				'images/projecten/vlaggen-stappegoor.jpg',
				'images/projecten/Vrom.jpg',
				'images/projecten/website-hkt.jpg',
				'images/projecten/wieldop.jpg',
				'images/projecten/woody.jpg',
				'images/projecten/zero.jpg',
				'images/projecten/zero-1.jpg',
				'images/projecten/inbuca.jpg',
			]
			
			var loader = new Asset.images(images);			
			
			
			
			images.each(function(im)
			{
				var theHtml = '<div class="slider_item"><img src="' + im +  '"class="slider_item_img" /></div>';
				//<p class="slider_item_txt">Expositiebrochure: het appel van de kip</p>
				$('slider_content').innerHTML = $('slider_content').innerHTML + theHtml;
			});
			
		
		});
	}
});




/**
 * Scroller Class
 *
 * @author Koen de Man
 **/

var scroller = new Class(
{
	options: {
		elScroller: null,
		elScrollContent: null
	},
	
	Implements: Options,
	
	initialize: function(options)
	{
		this.setOptions(options);
		this.setScrollContentWidth();
		this.setScroller();
	},

	setScroller: function()
	{
		var elScroller = this.options.elScroller;
		var elScrollContent = this.options.elScrollContent;
		var minWidth = this.getWindowWidth();
		this.itemMiddle = null;
		
		var totalSteps = ((elScrollContent.getStyle('width').toInt() - minWidth) / 10).round();
		
		// Create the new slider instance
		new Slider(elScroller, elScroller.getElement('.scroller_item'),
		{
			steps: totalSteps,
			wheel: true,
			onChange: function(intValue)
			{
				this.sliderDelay(intValue);
			}.bind(this)
		}).set(elScrollContent.getStyle('margin-left').toInt());
	},
	
	setScrollContentWidth: function()
	{
		//	breedte nomaals meten zoals eronder en kijken naar het verschil in ff en chrome/safari
		// divje = $$('.slider_item');
		// console.log(divje[14].getStyle('width').toInt());
		
		/*
		var totalItemWidth = 0;
		$$('.slider_item').each(function(el){
	    	itemWidth = el.getStyle('width').toInt();
	    	console.log(itemWidth);	
	    	totalItemWidth = totalItemWidth + itemWidth;
		});
		console.log(totalItemWidth);
		*/
		
		//________________________
		
		
		
			
		/*
		var totalWidth = null;
		var objItems = new Hash();
		this.options.elScrollContent.getElements('.slider_item').each(function(el, key)
		{			
			var elWidth = el.getStyle('width').toInt();
			var firstWidth = totalWidth;
			totalWidth = totalWidth + elWidth;
			
			objItems.set(
				key, 
				new Hash({
					'firstWidth': firstWidth,
					'totalWidth': totalWidth,
					'element': el
				})
			);
		}, this);
		
		this.options.elScrollContent.setStyle('width', totalWidth + 50);
		this.objItems = objItems;
		*/
	},
	
	sliderDelay: function(intStep) 
	{		
		(function()
		{
			var minMargin = intStep * 10;
			this.options.elScrollContent.setStyle('margin-left', '-' + minMargin + 'px');
			this.middleItem	
		}).bind(this).delay(170);
	},
	
	middleItem: function()
	{
		var totalWidth = 0;
		this.options.elScrollContent.getElements('.slider_item').each(function(el, key)
		{
			var elementSettings = this.objItems.get(key);
			
			console.log(elementSettings);
			
			if(elementSettings.get('totalWidth') > (minMargin + (this.getWindowWidth() / 2)) && elementSettings.get('firstWidth') < (minMargin + (this.getWindowWidth() / 2)))
			{
				if(this.itemMiddle != null)
				{
					this.itemMiddle.getElement('img').fade(0.4);
				}
				
				this.itemMiddle = el;
				el.getElement('img').fade(1);
			} 
		}, this);
	},
	
	getWindowWidth: function()
	{
		if(typeof( window.innerWidth ) == 'number') 
		{
	    	windowWidth = window.innerWidth;
		} 
		else if(document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) 
		{
	    	windowWidth = document.documentElement.clientWidth;
		} 
		else if(document.body && (document.body.clientWidth || document.body.clientHeight))
		{
	    	windowWidth = document.body.clientWidth;
		}
		
		var browserName = navigator.appName;
		
		if(browserName == "Microsoft Internet Explorer")
		{
			windowWidth = windowWidth + 150;
		}
		
		return windowWidth;
	}
	
});


/**
 * Fade Item Class
 *
 * @author Koen de Man
 **/
var fadeItem = new Class(
{
	options: {
		elItems: null
	},
	
	Implements: Options,
	
	// word als eerste in de class uitgevoerd
	initialize: function(options)
	{
		this.setOptions(options);
		this.setDefaults();
		this.setAction();
		this.setMiddleItem();
	},
	
	setDefaults: function()
	{
		this.options.elItems.each(function(el)
		{
			/*el.getElement('p').fade(0.3);*/
			el.getElement('img').fade(0.4);
			
		});	
	},
	
	setAction: function()
	{
		this.options.elItems.each(function(el)
		{
			el.addEvents(
			{
				mouseover: function()
				{					
					this.fadeItem('in', el);
				}.bind(this),
				
				mouseout: function()
				{
					this.fadeItem('out', el);
				}.bind(this)
			}, this);
		}, this);
	},
	
	setMiddleItem: function()
	{
		 
	},
	
	fadeItem: function(action, el)
	{
		if(action == 'in')
		{
			/*el.getElement('p').fade(0.8);*/
			el.getElement('img').fade(1);
		}
		else if(action == 'out')
		{
			/*el.getElement('p').fade(0.3);*/
			el.getElement('img').fade(0.4);
		}
	}
	
});




/**
 * Contact card FlipOutClass
 *
 * @author Koen de Man
 **/
var FlipOut = new Class(
{
	// hierin word de variabele een waarde van nul meegegeven die later de waarde krijgt van het betreffende element.
	options: {
		elFlipOut: null
	},
	
	Implements: Options,
	
	// word als eerste in de class uitgevoerd
	initialize: function(options)
	{
		this.setOptions(options);
		this.setFlipOut();
	},
	
	setFlipOut: function()
	{
		this.options.elFlipOut.addEvents(
		{
			click: function()
			{					
				var flipOutHeight =  this.getElement('.info').getStyle('height').toInt();
				
				if(flipOutHeight == 1)
				{
					this.getElement('.info').tween('height', '150px');
				}
				else
				{
					this.getElement('.info').tween('height', '1px');
				}
			}
		});
	}
});



/**
 * set window height
 *
 * @author Koen de Man
 **/
var WindowSize = new Class(
{	
	options: {
		elSlider: null,
		elSliderBg: null
	},
	
	Implements: Options,
	
	// word als eerste in de class uitgevoerd
	initialize: function(options)
	{
		this.setOptions(options);
		this.setWindowSize();
	},
	
	setWindowSize: function()
	{
		var myWidth = 0, myHeight = 0;
		if( typeof( window.innerWidth ) == 'number' ) {
			//Non-IE
			myWidth = window.innerWidth;
			myHeight = window.innerHeight;
		}
		else if(document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight))
		{
			//IE 6+ in 'standards compliant mode'
			myWidth = document.documentElement.clientWidth;
			myHeight = document.documentElement.clientHeight;
		}
		else if(document.body && (document.body.clientWidth || document.body.clientHeight))
		{
			//IE 4 compatible
			myWidth = document.body.clientWidth;
			myHeight = document.body.clientHeight;
		}

		//window.alert(myWidth);
		//window.alert(myHeight);
		
		this.setWindowSizeCss(myHeight);
	},
	
	setWindowSizeCss: function(height)
	{	
		var elHeight = height - 80;
		var imgHeight = height - 180;
		
		
		
		if(height > 400 && height < 900)
		{			
			var totalWidth = 100000;
			this.options.elSlider.each(function(el)
			{
				el.setStyle('height', elHeight);
				el.getElements('img').setStyle('height', imgHeight);
				var elWidth = el.getElements('img').getStyle('width')[0].toInt();
				totalWidth = totalWidth + elWidth;
				el.getElements('p').setStyle('width', elWidth - 20);
				
			});	
			$('slider_content').setStyle('width', totalWidth - 99930);
		}
	}
});
