var p_strCookieName = 'KifidCssStyle';

$(function(){

	$('a#LargeFont').click(function(){
		$('body').css('font-size', '13px');
		createCookie(p_strCookieName,'LargeFont');
		return false;
	});
	
	$('a#DefaultFont').click(function(){
		$('body').css('font-size', '11px');
		createCookie(p_strCookieName,'DefaultFont');
		return false;
	});
	
	$('a#'+readCookie(p_strCookieName)).click();
		
	setNumbersInCenter();

	$(".pngFix").pngfix();
	$(".dicolumnize").columnize({ 'columns': 2 });

	if($('html').height() > $('body').height()){
		var $bwh	= $('div.bottom_wrapper').height();
		var $diff	= ($('html').height()-$('body').height());
		$('div.bottom_wrapper').height($bwh + $diff);
	}
	
	// Set hover to headmenu
	$('ul.headmenu li').hover(function(){
		var menuclass = $(this).attr('class');
		$(this).removeClass(menuclass);
		$(this).addClass(menuclass+'_hover');
	},function(){
		var menuclass = $(this).attr('class');
		$(this).removeClass(menuclass);
		$(this).addClass(menuclass.replace('_hover',''));
	});
	
	$('ul.headmenu li').click(function(){
		window.location=$(this).children('a:first').attr('href');
	});
	
	$('ul#headmenu_home li').hover(function(){
		var num = $(this).attr('id').replace('parent', '');
		if(!$('ul#childOf'+num).is(':visible')){
			$('ul.homehovermenu').slideUp();
			$('ul#childOf'+num).slideDown();
			
			$('ul#childOf'+num).slideDown(200, function(){
				if($('ul#childOf'+num).height() < 236){
					$('ul#childOf'+num).animate({'height': '236px'}, 150);
					$('ul#childOf'+num).height(236);
				}else
					$('ul#childOf'+num).css('border-bottom','4px solid #f68600');
			});		
		}
	}, function(){
		// do nothing
	});

	// Show submenu on hover headmenu
	$('ul.homehovermenu li').hover(function(){
		var menuclass = $(this).attr('class');
		$(this).removeClass(menuclass);
		if(menuclass.length == 0)
			$(this).addClass('hover');
		else
			$(this).addClass(menuclass+'_hover');
	},function(){
		var menuclass = $(this).attr('class');
		$(this).removeClass(menuclass);		
		$(this).addClass(menuclass.replace('hover','').replace('_',''));
	});
	
	
	$('div.bottom_wrapper, div.header, ul.menuhome').hover(function(){
		$('ul.homehovermenu').slideUp();
	}, function(){
		// donothing
	});
	
	$('ul.homehovermenu').hover(function(){
		var num = $(this).attr('id').replace('childOf','');
		var menuclass = $('ul#headmenu_home li#parent'+num).attr('class');
		$('ul#headmenu_home li#parent'+num).removeClass(menuclass);
		$('ul#headmenu_home li#parent'+num).addClass(menuclass+'_hover');		
		
		$('ul#headmenu_home li#parent'+num+' a img').each(function(){
			var src = $(this).attr('src');
			$(this).attr('src', src.replace('c=|89%2C89%2C89|','c=|255%2C255%2C255|'));			
		});
		FLIR.init();
		flirReplaced = false;
		FLIR.replace( 'ul.headmenu li.hover', new FLIRStyle({ cSize:'17',  ff_Wrap:false, fixBaseline:false, css:'color:white;'}) );
	}, function(){
		var num = $(this).attr('id').replace('childOf', '');		
		var menuclass = $('ul#headmenu_home li#parent'+num).attr('class');
		$('ul#headmenu_home li#parent'+num).removeClass(menuclass);
		$('ul#headmenu_home li#parent'+num).addClass(menuclass.replace('_hover',''));
		
		$('ul#headmenu_home li#parent'+num+' a img').each(function(){
			var src = $(this).attr('src');
			$(this).attr('src', src.replace('c=|255%2C255%2C255|','c=|89%2C89%2C89|'));
		});
		
		FLIR.init();
		flirReplaced = false;
		FLIR.replace( 'ul.headmenu li.hover', new FLIRStyle({ cSize:'17',  ff_Wrap:false, fixBaseline:false, css:'color:black;'}) );	
		$('ul.homehovermenu').slideUp();
	});
		
	// Style upload file button
	$("input[type=file]").filestyle({ 
		 image: "/img/browse.gif",
		 imageheight : 28,
		 imagewidth : 29,
		 width : 160
 	});

	$('.menu li a').hover(function(){
		var menuclass = $(this).parent().attr('class');
		$(this).parent().removeClass(menuclass);
		if(menuclass.length == 0)
			$(this).parent().addClass('hover');
		else
			$(this).parent().addClass($.trim(menuclass)+'_hover');
	},function(){
		var menuclass = $(this).parent().attr('class');
		$(this).parent().removeClass(menuclass);		
		$(this).parent().addClass(menuclass.replace('hover','').replace('_',''));
	});	
	
	$('ul.geschillencommissie li.person').click(function(){
		$('ul.geschillencommissie li.desc').hide();
		$(this).next('li.desc').show();
	});
	
	$('ul#faqlist li a.question').click(function(){
		$('ul#faqlist li').removeClass('active');
		$(this).parent().addClass('active');
		return false;
	});
		
	$('div.zoekfilter span.help').hover(function(){
		$('div.uitspraak').css('position','static');
		$('div.zoekfilter p.helptxt').show();
		return false;
	},function(){
		$('div.uitspraak').css('position','relative');
		$('div.zoekfilter p.helptxt').hide();
		return false;
	});
	
	$('ul#statementTypes li').click(function(){
		var $a = $(this).children('a:first');
		$(this).parent().children('li').removeClass('active');
		$('div.resultaat.cats.extra').remove();
		
		$('div.resultaat form input:first').val('Trefwoord invullen...');
		
		$('div.resultaat.cats li').removeClass('active');
		$('div.resultaat.cats li').hide();
		if($a.attr('href').indexOf(strBaseUrl) == 0){
			var _rel = $a.attr('rel');
			$('.contentDivs').hide();
			
			if($.trim($('div#content_'+_rel).html()).length > 0)
				$('div#content_'+_rel).show();
			else
				$('div#content_default').show();
			
			$(this).addClass('active');
			$('div.resultaat.cats li.ofType'+_rel).show();
		}else{
			$('div.resultaat.cats li.ofType0').show();
			window.open($a.attr('href'));
		}
		
		doStatemantAjaxCall();
		return false;
	});
	
	$('div.resultaat.cats li').click(function(){
		catClicks($(this));		
		return false;
	});
	
	$('div.resultaat.year select').change(function(){
		doStatemantAjaxCall();
		return false;
	});
	
	$('div.resultaat.keywords select').change(function(){
		setStatementFilter($(this));
		return false;
	});
	
	$('select#keyword_list1').change(function(){
		redoKeywords(2);
	});
	
	$('div.resultaat.keywords div.keywordfilter a').click(function(){
		removeStatementFilter($(this));
		return false;
	});
	
	$('div.resultaat.keywords a.close').click(function(){
		var _parent = $(this).parent();
		var _div 	= _parent.children('.keywordfilter');
		var listId	= $(this).attr('rel');
		
		$.ajax({
	    	type: 'POST',
	        url:  '/js/ajax/statementfilter.php',
	        data: 'list='+listId+'&action=clear',
	        cache:false,
	        success: function(mssg){
				var $parts = mssg.split('##|##');
				if($parts[0] == 'succes'){
					_parent.children('select').children('option').removeClass('selected');
					_div.html('');
					doStatemantAjaxCall();
				}else{
					alert($parts[1]);
				}
	        }
		});
		
		return false;
	});
		

	$('div.resultaat_last form').submit(function(){
		doStatemantAjaxCall();
		return false;
	});
	
	$('div.resultaat form input:first').blur(function(){
		doStatemantAjaxCall();
	});
	
	$('div.resultaat.first a.close').click(function(){
		$('div.resultaat.cats.extra').remove();
		$('div.resultaat li').removeClass('active');
		$('div.resultaat.cats li').hide();
		$('div.resultaat.cats li.ofType0').show();
		$('.contentDivs').hide();
		$('div#content_default').show();
		
		doStatemantAjaxCall();
		return false;
	});
	
	
	$('div.bestuur div a').click(function(){
		$('div.bestuur div div').hide();
		$('div.bestuur div').css('height','110px');
		$('div.bestuur div div').css('height','auto');
		$(this).parent().css('height','auto');
		$(this).parent().children('div').show();
	});	
	
	$('div.resultaat_last a.close').click(function(){
		$('div.resultaat_last form input:first').val('Trefwoord invullen...');
		doStatemantAjaxCall();
		return false;		
	});	
	
	$('div.resultaat.cats a.close').click(function(){
		$(this).parent().children('ul').children('li.active').removeClass('active');
		doStatemantAjaxCall();
		return false;		
	});
	
	statementResultClicks();
	
	if ($.browser.msie){
		$("div.resultaat.keywords select").ieSelectStyle();
		$("div.resultaat.year select").ieSelectStyle();
	}
	
	if($('#bedrijfstypeId').length > 0) {
		$('#bedrijfstypeId').bind('change', function() {
			$('.firmTypeVarLabel').hide();
			$('#label_type_firm_'+$(this).val()).show();
			$('.branchesForType').hide();
			if($('#y_branche').is(':checked')) {
				$('.branchesForType_'+$(this).val()).show();
			}
		});
	}
});


function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}

function doStatemantAjaxCall(pageNum){
	
	if(!$.browser.msie || !($.browser.msie && $.browser.version.substr(0,1) <= '7'))
		$('div.uitspraken_wrapper, img#uitsprakenTop').css({'opacity' : 0.35});
	$('div.loading').show();
	
	var typeId 		= $('ul#statementTypes li.active').length > 0 ? $('ul#statementTypes li.active a:first').attr('rel') : '';
	
	var seachStr	= $('div.resultaat_last form input:first').val();
	seachStr		= seachStr == 'Trefwoord invullen...' ? '' : seachStr;
	
	var catIds		= ''; 
	$('div.resultaat.cats li.active').each(function(){
		catIds = catIds+(catIds.length > 0? ',' : '')+ $(this).children('a:first').attr('rel');
	});		
	
	var _year = $('div.resultaat.year select option:selected').val();
	
	var dataString		= 'typeId='+typeId+'&catId='+catIds+'&search='+seachStr+'&pagenum='+pageNum+'&year='+_year;
	var ajaxUrl			= '/js/ajax/getstatements.php';

	$.ajax({
		type: 'POST',
		data: dataString,
		url: ajaxUrl,
		cache: false,
		complete: function(result){
			var rText = result.responseText;
			
			var $parts = rText.split('|##|');
			
			$('div.zoekfilter p.aantal span').html(($parts[0].length == 1 ? '&nbsp;'+$parts[0] : $parts[0]));
			$('div.zoekfilter p.aantal').removeClass('multiple');
			if($parts[0].length > 2){
				$('div.zoekfilter p.aantal').addClass('multiple');
			}
			$('div.uitspraken_wrapper').html($parts[1]);
			
			statementResultClicks();
			setNumbersInCenter();
			redoKeywords(1);
			
			if(!$.browser.msie || !($.browser.msie && $.browser.version.substr(0,1) <= '7'))
				$('div.uitspraken_wrapper, img#uitsprakenTop').css({'opacity' : 1});
			$('div.loading').hide();
		}
	});
}

function setStatementFilter($Obj){
	$Obj.children('option:selected').each(function(){
		if(!$(this).hasClass('selected')){
			var $sfVal 	= $(this).val();
			var $option = $(this);
			if($sfVal.length > 0){
				$.ajax({
			    	type: 'POST',
			        url:  '/js/ajax/statementfilter.php',
			        data: 'id='+$sfVal+'&action=add',
			        cache:false,
			        success: function(mssg){
						var $parts = mssg.split('##|##');
						if($parts[0] == 'succes'){
							var aId = 'selectedfilter_'+$sfVal;
							$option.addClass('selected');
							$('#keyword_filters_'+$parts[1]).append('<a href="#" id="'+aId+'" rel="'+$sfVal+'" title="'+$parts[2]+'">'+$parts[3]+'</a>');
							$('#'+aId).click(function(){
								removeStatementFilter($(this));
								return false;
							});
							
							doStatemantAjaxCall();
						}else{
							alert($parts[1]);
						}
			        }
				});
			}
		}else
			alert('Trefwoord al gekozen.');
	});
	
	$Obj.val('0');
}

function removeStatementFilter($Obj){
	var $id = $Obj.attr('rel');
	$.ajax({
    	type: 'POST',
        url:  '/js/ajax/statementfilter.php',
        data: 'id='+$id+'&action=remove',
        cache:false,
        success: function(mssg){
			var $parts = mssg.split('##|##');
			if($parts[0] == 'succes'){
				$Obj.remove();
				$('option[value="'+$id+'"]').removeClass('selected');	
				doStatemantAjaxCall();
			}else{
				alert($parts[1]);
			}
        }
	});
}


function statementResultClicks(){
	$('div.uitspraken_wrapper ul.numbers li').unbind('click');
	$('div.uitspraken_wrapper ul.numbers li').click(function(){
		var pageNum = $(this).children('a:first').attr('rel');
		doStatemantAjaxCall(pageNum);
		return false;
	});
	
	$('div.uitspraak').unbind('hover');
	$('div.uitspraak').hover(function(){
		var downlObj = $(this).children('a.download');
		
		downlObj.show();
		var dTop = (($(this).height()-downlObj.height())/2+12);
		downlObj.css('top', dTop+'px');
	},function(){
		$(this).children('a.download').hide();
	});

	$('div.uitspraak a.download').unbind('click');
	$('div.uitspraak a.download').click(function(){
		window.open($(this).attr('href'));
		return false;
	});
}


function catClicks($thisObj){

	var $activeOne 		= $thisObj.parent().children('li.active');
	$thisObj.parent().children('li').removeClass('active');
	
	/*
	var catSelect 		= $thisObj.parent().parent();
	var newCatSelect 	= '<div class="resultaat cats extra">'+catSelect.html()+'</div>';
	
	if(!$thisObj.hasClass('ofType0') && $activeOne.length == 0){
		catSelect.after(newCatSelect);
		$('div.resultaat.cats.extra h4').html('Extra categorie');
		
		$('div.resultaat.cats li').unbind('click');
		$('div.resultaat.cats li').click(function(){
			catClicks($(this));
			return false;
		});
		
		$('div.resultaat.cats a.close').unbind('click');
		$('div.resultaat.cats a.close').click(function(){
			var $ulObj = $(this).parent().children('ul');
			
			if(!$(this).parent().hasClass('extra')){
				$ulObj.children('li').removeClass('active');
				$('div.resultaat.cats.extra').remove();
			}else{
				if($ulObj.children('li.active').length > 0)
					$(this).parent().remove();
			}
			doStatemantAjaxCall();
			return false;
		});		
	}
	*/
	
	if(!$thisObj.hasClass('ofType0'))
		$thisObj.addClass('active');
	
	doStatemantAjaxCall();
}

function redoKeywords(listId){
	var _type = $('ul#statementTypes li.active a:first').attr('rel');
	var _select = $('select#keyword_list'+listId);
	var _statements = $('div#allIds').html();
	var _cat = $('.resultaat.cats ul li.active a:first').attr('rel');
	
	if(!$.browser.msie || !($.browser.msie && $.browser.version.substr(0,1) <= '7'))
		_select.css({'opacity' : 0.35});
	
	$.ajax({
    	type: 'POST',
        url:  '/js/ajax/statementfilter.php',
        data: 'action=list&list='+listId+'&type='+str2int(_type)+'&cat='+str2int(_cat)+'&statements='+_statements,
        cache:false,
        success: function(mssg){
			var $parts = mssg.split('##|##');
			if($parts[0] == 'succes'){
				_select.html($parts[1]);
				
				$('#keyword_filters_'+listId+' a').each(function(){
					var _val = $(this).attr('rel');
					if(!$('#keyword_list'+listId+' option[value="'+_val+'"]').hasClass('selected'))
						$(this).remove(); //already out of session
				});
				
				if(listId == 1)
					redoKeywords(2);
			}
        },
        complete: function(){
        	if(!$.browser.msie || !($.browser.msie && $.browser.version.substr(0,1) <= '7'))
        		_select.css({'opacity' : 1});
        }
	});
}

function str2int(str){
	var i = parseFloat(str);
	return (!is_numeric(i))? 0 : Math.round(i);
}

function is_numeric(str){
	return (!isNaN(str*1));
}

function setNumbersInCenter(){
	if($.browser.msie && $.browser.version.substr(0,1) <= '7'){
		$('ul.numbers li, ul.numbers li.next a, ul.numbers li.prev a').css('display', 'block');
		$('ul.numbers li').css('float', 'left');
		
		var $ulw 	= $('ul.numbers').width();
		var $liw	= 0;

 		$('ul.numbers li').each(function(){
			$liw += $(this).width();
			$liw += 12; // margins
		});
		
		var $tot = (($ulw-$liw)/2);
		$('ul.numbers').css('padding-left', $tot+'px');
		$('ul.numbers').width($ulw-$tot);
	}
}

function toggleBranches(elem) {
	if(elem.checked) {
		$('.branchesForType_'+$('#bedrijfstypeId').val()).show();
	}
	else {
		$('.branchesForType').hide();
	}
}

