// JavaScript Document
Cufon.replace('h2', {
	hover: true
});

window.addEvent('domready', function()
{
	new Video();
	new externalLinks();
		
	var Slides = $$('.slide');
	var togSlide = $$('.tog');
	var togLink = $$('a.tog');
	
	togLink.each(function(el, i)
	{
		el.addEvent('click', function(e){
			e.stop();
			this.toggleClass('active');
		});
	});
	
	togSlide.each(function(el, i)
	{
		el.slider = new Fx.Slide( Slides[i],
		{
			onStart:function()
			{
				/*
				if(this.wrapper.style.height == '0px')
				{
					this.addClass('slide_active');
				}
				else
				{
					this.removeClass('slide_active');
				}
				*/
			}
		} );

		if(el.getParent().hasClass('block-right'))
		{
			el.slider.show();
		}
		else
		{
			el.slider.hide();
		}
		
		el.addEvent('click', function(){
			this.slider.toggle();
		});
	});
	
	// On focus clear input
	$$('input.input-text').each(function(elInput)
	{
		elInput.addEvent('focus', function()
		{
			doClear(elInput);
			
		});
		elInput.addEvent('blur', function()
		{
			resetField(elInput);
			switch($(this).getAttribute('name'))
			{
				case 'company':
				{
					if($(this).value == '' || $(this).value == 'Bedrijfsnaam' )
					{
						$(this).removeClass('validated');
						$(this).addClass('error');
					} 
					else
					{
						$(this).removeClass('error');
						$(this).addClass('validated');
					}
					break;
				}
				case 'initials':
				{
					if($(this).value == '' || $(this).value == 'Voorletters'  )
					{
						$(this).removeClass('validated');
						$(this).addClass('error');
					} 
					else
					{
						$(this).removeClass('error');
						$(this).addClass('validated');
					}
					break;
				}
				case 'firstname':
				{
					if($(this).value == '' || $(this).value == 'Voornaam'  )
					{
						$(this).removeClass('validated');
						$(this).addClass('error');
					} 
					else
					{
						$(this).removeClass('error');
						$(this).addClass('validated');
					}
					break;
				}
				case 'preposition':
				{
					if($(this).value == '' || $(this).value == 'Tussenvoegsel'  )
					{
						$(this).removeClass('validated');
						$(this).addClass('error');
					} 
					else
					{
						$(this).removeClass('error');
						$(this).addClass('validated');
					}
					break;
				}
				case 'lastname':
				{
					if($(this).value == '' || $(this).value == 'Achternaam'  )
					{
						$(this).removeClass('validated');
						$(this).addClass('error');
					} 
					else
					{
						$(this).removeClass('error');
						$(this).addClass('validated');
					}
					break;
				}
				case 'yourfunction':
				{
					if($(this).value == '' || $(this).value == 'Functie'  )
					{
						$(this).removeClass('validated');
						$(this).addClass('error');
					} 
					else
					{
						$(this).removeClass('error');
						$(this).addClass('validated');
					}
					break;
				}
				case 'address':
				{
					if($(this).value == '' || $(this).value == 'Adres'  )
					{
						$(this).removeClass('validated');
						$(this).addClass('error');
					} 
					else
					{
						$(this).removeClass('error');
						$(this).addClass('validated');
					}
					break;
				}
				case 'zipcode':
				{
					if($(this).value == '' || $(this).value == 'Postcode'  )
					{
						$(this).removeClass('validated');
						$(this).addClass('error');
					} 
					else
					{
						$(this).removeClass('error');
						$(this).addClass('validated');
					}
					break;
				}
				case 'city':
				{
					if($(this).value == '' || $(this).value == 'Woonplaats'  )
					{
						$(this).removeClass('validated');
						$(this).addClass('error');
					} 
					else
					{
						$(this).removeClass('error');
						$(this).addClass('validated');
					}
					break;
				}
				case 'phone':
				{
					if($(this).value == '' || $(this).value == 'Telefoon'  )
					{
						$(this).removeClass('validated');
						$(this).addClass('error');
					} 
					else
					{
						$(this).removeClass('error');
						$(this).addClass('validated');
					}
					break;
				}
				case 'email':
				{
					if($(this).value == '' || $(this).value == 'E-mail'  )
					{
						$(this).removeClass('validated');
						$(this).addClass('error');
					} 
					else
					{
						$(this).removeClass('error');
						$(this).addClass('validated');
					}
					break;
				}
			}
		});
	});
					
	$$('form.form-signup').addEvent('submit', function(e)
	{
		$$('input.text, input.password').each(function(elInput)
		{
			if(!elInput.hasClass('validated'))
			{
				elInput.addClass('error');
				e.stop();
				return;
			}
		});
	});

});



function externalLinks() 
{
	if (!document.getElementsByTagName) return;
	var anchors = document.getElementsByTagName('a');
	for (var i=0; i<anchors.length; i++) 
	{
		var anchor = anchors[i];
		if (anchor.getAttribute('href') && anchor.getAttribute('rel') == 'external')
		{
			anchor.target = '_blank';
		}
	}
}



var Video = new Class(
{
	initialize: function()
	{
		if($('videolist'))
		{
			objOverlayer = new overlayer();
			
			// videolist
			$$('.videolist li').each(function(elList) 
			{
				elList.addEvents(
				{
					'mouseenter': function() 
					{
						this.addClass('hover');
					},
					'mouseleave': function() 
					{
						this.removeClass('hover');
					},
					'click': function(event) 
					{
						if(elList.getElement('.flashdata .url'))
						{
							event.stop();
							
							// get data
							elList.strUrl = elList.getElement('.flashdata .url').innerHTML;
							//elList.strTitle = elList.getElement('.flashdata .title').innerHTML;
							
							// PageTracker
							//pageTracker._trackPageview(elList.strUrl);
							
							// remove current movie
							$('overlayer_2').set('html', '<div class="videobox" id="videobox"><div id="videoplayerswf"></div></div>');
							
							var strContent = $('emptybox').innerHTML;
							strContent = strContent.replace('videoplayerswfbogus', 'videoplayerswf');
							strContent = strContent.replace('videoclosebogus', 'videoclose');
							//strContent = strContent.replace('%videotitle%', elList.strTitle);
							$('overlayer_2').set('html', strContent);
							
							// set new movie
							var so = new SWFObject('inc/swf/videoPlayer.swf', 'videoplayerflash', '440', '295', '7', '#FFFFFF');
							so.addParam('wmode', 'transparent');
							so.addVariable('video', elList.strUrl);
							so.write('videoplayerswf');
							
							// calc height
							var intScrollTop = getScrollTop();
							var intHeight = getHeight();
							//var intTop = intScrollTop + ((intHeight / 2) - (250 / 2));
							var intTop = intScrollTop + 100;
							
							// show
							elOverlayerContent.setStyle('top', intTop + 'px');
							elOverlayerFake.fade(0.6);
							elOverlayerContent.fade('in');
							
							// make close button work
							if($('videoclose'))
							{
								$('videoclose').addEvent('click', function(e)
								{
									// fade out
									objOverlayer.doHide();
									$('overlayer_2').set('html', '');
								});	
							}	
						}
					}
				});
			});			
		}
	}
});



var overlayer = new Class(
{
	elObjects: null,
	initialize:function()
	{
		var self = this;
		
		// get objects from page
		//this.elObjects = $(document.body).getElements('object');
		
		// create 2 fullscreen divs
		elOverlayerFake = new Element('div',
		{
		    'id': 'overlayer_1',
		    'styles':
		    {
		    	'position': 'absolute',
		    	'left': '0px',
		    	'top': '0px',
		    	'opacity': '0',
		    	'background-color': '#FFFFFF',
		    	'width': '100%',
		    	'z-index': '999'
		    	//'height': getScrollHeight() + 'px'
		    },
		    'events':
		    {
		        'click': function()
		        {
		            //self.doClose();
		        }
		    }
		});
		
		elOverlayerContent = new Element('div',
		{
		    'id': 'overlayer_2',
		    'styles':
		    {
		    	'position': 'absolute',
		    	'left': '0px',
		    	'top': '0px',
		    	'opacity': '0',
		    	'width': '100%',
		    	'z-index': '999',
		    	'text-align': 'center'
		    },
		    'events':
		    {
		        'click': function()
		        {
		            //self.doClose();
		        }
		    }
		});
		
		elOverlayerFake.inject(document.body);
		elOverlayerContent.inject(document.body);
	},
	doShow: function()
	{
	},
	doHide: function()
	{
		elOverlayerFake.fade('out');
		elOverlayerContent.fade('out');
		$('overlayer_2').set('html', '');
	}
});



function doClear(field) 
{
	if (field.value == field.defaultValue) 
	{
	 	field.value = "";
	}
}



function resetField(field) 
{
	if (field.value == '') 
	{
		field.value = field.defaultValue;
	}
}


