$(function(){
	$('h1').click(function(){ window.location=BaseURL }) ;
	
	
	$('#menu4 li.closed, #menu4 li.selectedParentItem').click(function(){	
		setZIndex($('#menu4'));
		$('#menu4 li').each(function(){
			$(this).toggle();
		});
	});
	
	$('#menu1 li').hover(function(){
		var subItem = $(this).children('.menu2');
		setZIndex($(this));
		setZIndex(subItem);
		subItem.show();
	}, function(){ $(this).children('.menu2').hide(); });
	
	$('.menu2 li').hover(function(){
		var subItem = $(this).children('.menu3');
		var pl		= str2int($(this).width()-10);
		subItem.css({'left' : pl+'px'})
		setZIndex(subItem);
		subItem.show();
	}, function(){ $(this).children('.menu3').hide(); });
	
	$('a.openContactPopup').click(function(){
		$('a.officeSelect:first').click(null);
		return false;
	});
	
	$('#closeExample').click(function(){
		var scroller 		= $('#exampleScroller');	
		var scrollerContent = $('#exampleScrollerContent');	
		
		scrollerContent.html('<!-- empty -->');
		scrollerContent.addClass('loading');
		
		$('#exampleScroller li a').removeClass('selected');
		
		scroller.animate({ 
			 backgroundPosition: '205px 50%'
			,height: '85px'
			,top: '428px'
			,width:'205px'
		}, 200, function(){
			scroller.removeClass('open');
			scroller.css({backgroundPosition : '205px top'});
			scrollerContent.removeClass('loading');
		});
		
		return false;
	});
	
	$('a.officeSelect').click(function(){
		var officePopup			= $('#officePopup');
		var officePopupContent	= $('#officePopupContent');
		var ajaxContentUrl 		= $(this).attr('href');

		$('a.officeSelect').removeClass('selected');
		$(this).addClass('selected');

		setZIndex(officePopup);
		
		officePopupContent.html('<!-- empty -->');
		officePopupContent.addClass('loading');
		
		officePopup.animate({ left: '240px' }, 
		200, function(){
			$(this).addClass('open');
		});

		officePopup.animate({ 
			bottom: '0px'
		}, 200, function(){
			$.ajax({
				url: ajaxContentUrl,
				cache: false,
				success: function(result){
					officePopupContent.html(result);
					officePopupContent.removeClass('loading');
					$('#officePopupContent .employees').jScrollPane({showArrows:false, scrollbarWidth:13, dragMinHeight:12, dragMaxHeight:12});
					employeeClick();
					formClick();

				}
			});
		});
		
		return false;
	});
	
	$('#officePopupClose').click(function(){
		var officePopup			= $('#officePopup');
		var officePopupContent	= $('#officePopupContent');
		
		$('a.officeSelect').removeClass('selected');
		
		officePopupContent.addClass('loading');
		officePopupContent.html('<!-- empty -->');
		
		officePopup.animate({ 
			 bottom: '-286px'
			,left: '340px'
		}, 200, function(){
			officePopup.removeClass('open');
			officePopupContent.removeClass('loading');
		});
		
	});
	
	$('#content').jScrollPane({showArrows:false, scrollbarWidth:15, dragMinHeight:40, dragMaxHeight:40});  
	
	formClick();
	FormFunctions();
	exampleClick();
});

function homeSlider(){
	var $obj = $('#homeTop');
	var $objH = ($.browser.msie)? ($obj.height()+50) : getCompleteHeight($obj);
	
	$obj.css({'top' : '-'+$objH+'px'});
	$obj.animate({'top' : '0px'}, 800);
	$('body').click(function(){
		$obj.animate({'top' :  '-'+$objH+'px'}, 400);
	});
}


function formClick(){
	$('a.FormBtn').click(function(){
		var holder 			= $('#formHolder');
		var holderContent 	= $('#formHolder .formPopupContentHolder');
		var ajaxContentUrl 	= $(this).attr('href');
		setZIndex(holder);
								 
		$('#wrapper').animate({ opacity : '0.25' }, 200, function(){
			holder.css({ left: $('#wrapper').offset().left+200+'px' });
			holder.addClass('loading');
			holder.show();
			
			$('#formPopupClose').click(function(){
				holder.addClass('loading');
				holderContent.html('<!--emprty-->');
				holder.hide();
				$('#wrapper').animate({ opacity : '1' }, 200);
			});
			
			$.ajax({
				url: ajaxContentUrl,
				cache: false,
				success: function(result){
					holderContent.html(result);
					holder.removeClass('loading');
					$('#formHolder .formPopupContentHolder .content').jScrollPane({showArrows:false, scrollbarWidth:15, dragMinHeight:40, dragMaxHeight:40}); 
					FormFunctions();
					pakketVerzekeringClicks();
				}
			});

			
		});

		return false;
	
	});
}

function pakketVerzekeringClicks(){
	$('.pakketTable th').click(function(){
		
		var ParentTable = $(this).parent().parent().parent();	
		var PisOpen = ParentTable.hasClass('open');
		var PisUnset = ParentTable.hasClass('unset');
		var PisSet = ParentTable.hasClass('set');
		
		if(!PisOpen && !PisUnset){
			$('.pakketTable.open').addClass('closed');
			$('.pakketTable').removeClass('open');
			ParentTable.addClass('open');
			ParentTable.removeClass('closed');
		}

		switch(ParentTable.attr('id')){
			case 'allinsurances':
				if(!PisOpen && !PisUnset){
					$('.pakketTable table').removeClass('closed');
					$('.pakketTable table').addClass('closed');
					
					var openendOne = false;
					
					$('label.multiselect').each(function(){
						if($(this).attr('parent') == 'insurance_type' && $(this).hasClass('checked')){
							var RelType = $(this).attr('rel');
							$('.pakketTable table#'+RelType).removeClass('closed');
						}
					});
				}
			break;
		}
		
		
		$('#formHolder .formPopupContentHolder .content').jScrollPane({showArrows:false, scrollbarWidth:15, dragMinHeight:40, dragMaxHeight:40});
	});
	
	$('.pakketTable label.multiselect').click(function(){
		switch($(this).attr('parent')){
			case 'insurance_type':
				if($('#insurance_type').val().length > 0){
					$('#allinsurances, #personaldata').removeClass('unset');
					$('#allinsurances, #personaldata').addClass('set');
				}else{
					$('#allinsurances, #personaldata').removeClass('set');
					$('#allinsurances, #personaldata').addClass('unset');
				}
				
				if($('#insurance_type').val() == $('.pakketTable label.multiselect#misc').html()){
					$('#allinsurances').removeClass('set');
					$('#allinsurances').addClass('unset');
				}
				
			break;
		}
	});
}


function employeeClick(){
	$('a.employeeSelect').click(function(){
										 
		$('a.employeeSelect').removeClass('selected');
		$(this).addClass('selected');
								 
		var ContentHolder = $('#officePopupContent .left');	
		var ajaxContentUrl	= $(this).attr('href');
		
		ContentHolder.html('<!--empty-->');
		ContentHolder.addClass('loading');
		
		$.ajax({
			url: ajaxContentUrl,
			cache: false,
			success: function(result){
				ContentHolder.html(result);
				ContentHolder.removeClass('loading');
			}
		});
		return false;
	});
}

function exampleClick(){
	$('#exampleScroller li a').click(function(){
		var scroller 		= $('#exampleScroller');	
		var scrollerContent = $('#exampleScrollerContent');	
		var ajaxContentUrl	= $(this).attr('href');
		var bigImageHolder	= $('#bigExmpleImage');

		$('#exampleScroller li a').removeClass('selected');
		$(this).addClass('selected');

		if(bigImageHolder.length > 0){
			bigImageHolder.load(ajaxContentUrl + ' #bigExmpleImage');
		}else{
			setZIndex(scroller);
			
			scrollerContent.html('<!-- empty -->');
			scrollerContent.addClass('loading');
					
			scroller.animate({ 
					 width: '850px'
					,backgroundPosition: '850px top'
				}, 300, 'linear', function(){ 
									scroller.addClass('open');
			});
			
			scroller.animate({ 
					 height: '370px'
					,top: '125px'
				}, 200, function(){
				
				$.ajax({
					url: ajaxContentUrl,
					cache: false,
					success: function(result){
						scrollerContent.removeClass('loading');
						scrollerContent.html(result);
	
					}
				});
			});
		}
		return false;
	});
}


function FormFunctions(){
	$('label.radio').click(function(){
		$(this).parent('td').children('label').removeClass('checked');						  
		$(this).addClass('checked');	
		var parts = $(this).attr('id').split('_');
		$('#'+parts[0]).val(parts[1]);
	});
	
	$('a#print_btn').click(function(){
		var DataString = '';
		var DataSpacer = '';
		$('#popupForm input, #popupForm textarea, #popupForm select').each(function(){
			DataString += DataSpacer+$(this).attr('name')+'='+$(this).val();
			DataSpacer = '&';
		});
		
		window.open($(this).attr('href')+'?'+DataString);
		return false;
	});

		
	$('label.multiselect').click(function(){
		$(this).toggleClass('checked');	
		var parent = $('#'+$(this).attr('parent'));
		var parentVal = '' + parent.val();
		
		if ($(this).hasClass('checked'))
			parent.val(parentVal + ','+$(this).html());
		else
			parent.val(parentVal.replace($(this).html(), ''));
		
		parentVal = '' + parent.val();
		parentVal = parentVal.replace(',,', ',');
	
		if(parentVal.indexOf(',') == 0)
			parent.val(parentVal.replace(',', ''));
	});

	
	$('input.datepart').change(function(){
		var parts = $(this).attr('id').split('_');
		
		var day 	= $('#'+parts[0]+'_dd').val();
		var month	= $('#'+parts[0]+'_mm').val();
		var year	= $('#'+parts[0]+'_yyyy').val();
		
		$('#'+parts[0]).val(day+'-'+month+'-'+year)
	});
	
	$('form').submit(function(){
		$(this).stop();
		var returnVal = true;					  

		switch($(this).attr('id')){
			case'searchForm':
				return true;
			break;
			case'popupForm':
				var LastRadioButton = '';
				var RadioButtons = new Array();
				var CheckedRadioButtons = new Array();
				var IRB = 0;

				$('#'+$(this).attr('id')+' input.req, #'+$(this).attr('id')+' textarea.req').each(function(){
					if (returnVal){												 
						switch ($(this).attr('type')){
							default:
							case 'text':
								if ($(this).val().length == 0){
									alert(jQuery.trim($(this).attr('caption')) + ' is verplicht');
									$(this).focus();
									returnVal = false;
								}
								
								if($(this).hasClass('email') && returnVal){	
									if (!is_valid_email($(this).val())){
										window.alert(jQuery.trim($(this).attr('caption')) + ' is een ongeldig emailadres.');
										$(this).focus();
										returnVal = false;
									}
								}
								
								if($(this).hasClass('date') && returnVal){	
									var l_strError = is_valid_date($(this).val(), 'Dutch');
									if (l_strError!=true){
										alert(l_strError.replace('##FIELDNAME##', $(this).attr('caption')));
										$(this).focus();
										returnVal = false;
									}
								}
	
							break;
							
							case'radio':
								if (LastRadioButton != $(this).attr('name')){
									LastRadioButton = $(this).attr('name');
									RadioButtons[IRB] = $(this);
									IRB++;
								}
								
								if (CheckedRadioButtons[LastRadioButton] != true)
									CheckedRadioButtons[LastRadioButton] = $(this).attr('checked');
						
							break;
							
							case'checkbox':
								if ($(this).attr('checked') == false){
									alert(jQuery.trim($(this).attr('caption')) + ' is verplicht');
									$(this).focus();
									returnVal = false;
								}
							break;
						}
					}else
						return false;
				});
				
				for(i=0;i<IRB;i++){
					var tmpStr = RadioButtons[i].attr('name');
					if (CheckedRadioButtons[tmpStr] == false && returnVal){
						alert(RadioButtons[i].attr('caption') + ' is verplicht');
						$(this).focus();
						returnVal = false;
					}else
						return false;
				}
								
				if(returnVal && $(this).hasClass('ajaxform')){
					var form			= $(this);

					form.animate({ opacity : '0.25' }, 200, function(){
						var allFieldNames	= new Array();
						var DataString		= '';
						var DataSpacer		= '';
						var ajaxUrl			= form.attr('action');
						var ajaxType		= form.attr('method').toUpperCase();
		
						$('#'+$(this).attr('id')+' input, #'+$(this).attr('id')+' textarea, #'+$(this).attr('id')+' select').each(function(){
							if($(this).attr('name').length > 0){															   
								DataString += DataSpacer+$(this).attr('name')+'='+$(this).val();
								DataSpacer = '&';
							}
						});
											
						$.ajax({
							type: ajaxType,
							data: DataString,
							url: ajaxUrl,
							cache: false,
							complete: function(result){
								$('#formTekst').remove();
								form.html(result.responseText);
								form.animate({ opacity : '1' }, 200);
								$('#formHolder .formPopupContentHolder .content').jScrollPane({showArrows:false, scrollbarWidth:15, dragMinHeight:40, dragMaxHeight:40}); 
								return false;
							}
						});
						return false;
					});
				}else
					return false;
			break;
		}
		return false;
	});
}

function doOnLoad(){
	preloadImages(	 BaseURL +'/images/bgs/dropdownBG.png'
					,BaseURL +'/images/bgs/dropdownBottom.png'
					,BaseURL +'/images/bgs/dropdownTop.png'
					,BaseURL +'/images/bgs/scrollerBig.png'
					,BaseURL +'/images/bgs/officePopup.png'
					,BaseURL +'/images/bgs/example_ajax_loader.gif'
					,BaseURL +'/images/bgs/office_ajax_loader.gif'
			);
}
