/**
 * Description: Customized JavaScript Settings for jQueryPlugins.
 * Version: 1.0
 * Author: Peter Rozek
 * Author URI: http://www.ecomplexx.com
 * Tags: berner, group, relaunch
*/
function unique(arrayName)
{
    var newArray=new Array();
    label:for(var i=0; i<arrayName.length;i++ )
    {  
        for(var j=0; j<newArray.length;j++ )
        {
            if(newArray[j]==arrayName[i]) 
                continue label;
        }
        newArray[newArray.length] = arrayName[i];
    }
    return newArray;
}
	
function generateCountryList()
{
  var selected = $("#filter_controls select option:selected").text();
	 
	var CountryArray = new Array();
	if ($('#country_list_cmsedit').length<1)
	{
		$("#country_list li.country:visible div").each(function () {
		  var cClass=$(this).attr('class');
		  CountryArray.push(cClass);
	  });
	
		var uniqueCountry = unique(CountryArray);
		uniqueCountry.sort();
		//alert(uniqueCountry.length);
		
		$("#filter_controls select option").each(function () {
		     if ($(this).attr('value')!="-")
				 {
						$(this).remove();
				 }
	  });


		for (var i = 0; i < uniqueCountry.length; ++i)
		{
			if (selected == uniqueCountry[i])
			{
			  $('#filter_controls select').append('<option selected="selected" value="'+uniqueCountry[i]+'">'+uniqueCountry[i]+'</option>');
			  $('#filter_controls select').trigger('change');
			}
			else
			{
				$('#filter_controls select').append('<option value="'+uniqueCountry[i]+'">'+uniqueCountry[i]+'</option>');
			}
		}
	}
}
	
function checkCountry()
{
   	 if ($('#country_berner:checked').length)
		 {
		 	// filter
		 	$('#country_list li.country').addClass('hidden');
			$('#country_list li.country_berner').addClass('show_berner');
		 }
		 else
		 {
		 	// unfilter
		 	$('#country_list li.country').removeClass('show_berner');
		 }
		 
		 if ($('#country_caramba:checked').length)
		 {
		 	// filter
		 	$('#country_list li.country').addClass('hidden');
			$('#country_list li.country_caramba').addClass('show_caramba');
		 }
		 else
		 {
		 	// unfilter
		 	$('#country_list li.country').removeClass('show_caramba');
		 }
		 
		 if ($('#country_bti:checked').length)
		 {
		 	// filter
		 	$('#country_list li.country').addClass('hidden');
			$('#country_list li.country_bti').addClass('show_bti');
		 }
		 else
		 {
		 	// unfilter
		 	$('#country_list li.country').removeClass('show_bti');
		 }  
		 generateCountryList();
} 

$(document).ready(function() {
	
	if ( $.browser.msie && false)
	{
		$(".detail_teaser a div.border").each(function(){

			link = $(this).parent('a').attr('href'); 
			$(this).find('header, h3').before('<a class="image_link" href="'+link+'"></a>');
		});
		
		$("#berner_carousel li a div.border").each(function(){

			link = $(this).parent('a').attr('href'); 
			$(this).find('h3').before('<a class="image_link" href="'+link+'"></a>');
		});
	}
	
	
	$('#main_navi ul li').hover(function()
	{
	//$(this).find('ul').css('visibility', 'visible');
	   
	   
		 $(this).find('ul').animate({
		 		 height: 'toggle'
		 }, 0 , function() {
	    $(this).css('visibility', 'visible');
    	//$(this).css('display', 'none');
    	$(this).fadeIn('0');
  	});
	   
	}, function()
	{
	 	 //$(this).find('ul').css('visibility', 'hidden');
	 	 $(this).find('ul').animate({
		 		height: 'toggle'
		 }, 0 , function() {
    	$(this).css('visibility', 'hidden');
  	});
  	
  	
  
	}
	
	);
	
	// settings navseperator
	$('#main_navi ul li:last-child').addClass('last');
	
	// Settings mouseover effects home teaser
	$('.figure').hover(function()
	{
		$(this).find('.figure_legend_fadein').fadeIn();
		$(this).find('.figure_legend').css('visibility', 'hidden');
	}, function()
	{
		$(this).find('.figure_legend_fadein').fadeOut();
		$(this).find('.figure_legend').css('visibility', 'visible');	
	}
	);
	
	// seetings accordions
	
	// fix a nice IE overflow bug
	$( "#home_accordion" ).accordion({
        change: function(event, ui) {
            $('.ui-accordion-content-active').css('overflow', 'hidden');
        }
    });
  


	// contentsite
	$( "#content_accordion" ).accordion();
	
	// settings for seperator
	$(".detail_teaser .col:even").addClass("first");
	// $(".presse_teaser .border:even").addClass("first");
  
	// settings sreachforms
	$.fn.toggleValue = function() {
		return this.each(function() {
			defaultText = $(this).prev().html();                                                              
			if ($.trim($(this).val()) == '') {
				$(this).val(defaultText);
			}
			$(this).focus(function() {
				defaultText = $(this).prev().html();
				if ($(this).val() == defaultText) {
					$(this).val('');
				}
				$(this).blur(function() {
					defaultText = $(this).prev().html();
					if ($.trim($(this).val()) == '') {
						$(this).val(defaultText);
					}
				});
			});
		});
		$('input.auto_text').toggleValue();
	};
	$('input.auto_text').toggleValue();
  
   	// Settings jQuery Home Carousel
    function homecarousel_initCallback(carousel) {

		if ($('#home_carousel li').size()>1)
		{

		$('.jcarousel-skin-home').prepend('<div id="mycarousel-prev" class="jcarousel-prev jcarousel-prev-horizontal"></div>');
		$('.jcarousel-skin-home').prepend('<div id="mycarousel-next" class="jcarousel-next jcarousel-next-horizontal"></div>');

			$('#mycarousel-next').bind('click', function() {
				carousel.next();
				carousel.startAuto(0);
				return false;
			});

			$('#mycarousel-prev').bind('click', function() {
				carousel.prev();
				carousel.startAuto(0);
				return false;
			});          

		};

		// Pause autoscrolling if the user moves with the cursor over the clip.
		carousel.clip.hover(function() {
			carousel.stopAuto();
		}, function() {
			carousel.startAuto();
		});

	};


  	if ($('#home_carousel li').size()>1)
  	{
	// settings carousel for homepage
    $('#home_carousel').not('.in_cms').jcarousel({
        scroll: 1,       
        auto: 4,
        wrap: 'circular',
		animation: 2500,
		easing: 'easeInOutCubic',
        initCallback: homecarousel_initCallback,
        buttonNextHTML: null,
        buttonPrevHTML: null   
    });
	}
	else
	{
	   $('#home_carousel').not('.in_cms').jcarousel({
        scroll: 0,       
        auto: 4,
        wrap: 'circular',
		animation: 2500,
		easing: 'easeInOutCubic',
        initCallback: homecarousel_initCallback,
        buttonNextHTML: null,
        buttonPrevHTML: null   
    });
	}

	/*
    $('#home_carousel').not('.in_cms').jcarousel({
		scroll: 1,
		auto: 4,
		wrap: 'circular',
		animation: 2500,
		easing: 'easeInOutCubic'
    });
	*/
	

    // Settings jQuery Carousel
    function mycarousel_initCallback(carousel) {
    
		if ($('#berner_carousel li').size()>3)
		{
		
		$('.jcarousel-skin-tango').prepend('<div id="mycarousel-prev" class="jcarousel-prev jcarousel-prev-horizontal"></div>');
		$('.jcarousel-skin-tango').prepend('<div id="mycarousel-next" class="jcarousel-next jcarousel-next-horizontal"></div>');

			$('#mycarousel-next').bind('click', function() {
				carousel.next();
				carousel.startAuto(0);
				return false;
			});

			$('#mycarousel-prev').bind('click', function() {
				carousel.prev();
				carousel.startAuto(0);
				return false;
			});          
			
		};
		
		// Pause autoscrolling if the user moves with the cursor over the clip.
		carousel.clip.hover(function() {
			carousel.stopAuto();
		}, function() {
			carousel.startAuto();
		});

	};

	
  	if ($('#berner_carousel li').size()>3)
  	{
	// settings carousel for entrypages
    $('#berner_carousel').jcarousel({
        scroll: 1,       
        auto: 4,
        wrap: 'circular',
        initCallback: mycarousel_initCallback,
        buttonNextHTML: null,
        buttonPrevHTML: null   
    });
	}
	else
	{
	   $('#berner_carousel').jcarousel({
        scroll: 0,       
        auto: 4,
        wrap: 'circular',
        initCallback: mycarousel_initCallback,
        buttonNextHTML: null,
        buttonPrevHTML: null   
    });
	}

	// Settings for fancybox
	// video
	$("a.f_inline").fancybox({
		'overlayOpacity': 0.55,
		'overlayColor' : '#000000'
	});
	
	/*
	$('.groupoverlay').each(function(){  
		var dWidth  = parseInt($(this).attr('href').match(/width=[0-9]+/i)[0].replace('width=',''));  
		var dHeight     =  parseInt($(this).attr('href').match(/height=[0-9]+/i)[0].replace('height=',''));  
			$(this).fancybox({  
			'width':dWidth,  
			'height':dHeight,  
			'autoScale'         : false,  
			'transitionIn'      : 'elastic',  
			'transitionOut'     : 'elastic',  
			'type'          : 'iframe'  
		});  
	}); 
	*/
	
	// textoverlay, all berner websites
	$(".groupoverlay").fancybox({
		'overlayOpacity': 0.55,
		'overlayColor' : '#000000',
		'titleShow' : false,
		// 'autoDimensions' : true,
        'centerOnScroll' : true,
		'padding' : 10,
        'speedIn' : 250,
        'speedOut' : 250,
		'width' : 916,
		// 'scrolling' : 'auto',
		'height' : 480,
		'transitionIn' : 'elastic',
		'transitionOut' : 'elastic',
		'autoScale' : false,
		'scrolling' : 'auto',
		'type' : 'iframe'
	});
	
	// default settgins for images
	$("a.img").fancybox({
		'overlayOpacity': 0.55,
		'overlayColor' : '#000000'
	});

	// settings: change the backgroundcolor by mousseover
	$(".presse_teaser .border").hover(
		function () {
			$(this).addClass("hover");
		},
		function () {
			$(this).removeClass("hover");
		}
	);
	
	// jQuery Pagination
	if ($('#paging_container ul li').size()>6 )
	{
		$('#paging_container').pajinate({
			items_per_page: 6,
			nav_label_first : '<<',
					nav_label_last : '>>',
					nav_label_prev : '<',
					nav_label_next : '>'

		});
	}
	
	// seeting css class for 10 pixel distance in the press area
	$(".presse_teaser .border:even").addClass("even");
	
	
	if ($('#left_navi li').size()<1)
	{
		$('#left_navi').css('visibility', 'hidden');
	}
	
	$("ul#html_sitemap li.first").equalHeights();
	//$("ul#country_list li ul li").equalHeights();
	
	$("ul#country_list li ul").each(function (i)
	{
		$(this).find('li').equalHeights();
	});
	
	$(".presse_teaser .border").equalHeights();
	
	
	if (($('#country_list').length>0) && ($('#country_list_cmsedit').length<1)) 
	{
		$('#filter_controls').append('<div class="checkbox_filter"><input type="checkbox" name="Berner" id="country_berner">Berner</div><div class="checkbox_filter"><input type="checkbox" name="Caramba" id="country_caramba">Caramba</div><div class="checkbox_filter"><input type="checkbox" name="BTI" id="country_bti">BTI</div>');
		
		generateCountryList();		 
	}
	
	$('#filter_controls select').change(function()
			{
			
				var country = $(this).attr('value');
				if (country!="-")
				{
					// filter
					var trimmedClass=country.replace(" ", "")
					
					$('#country_list li.country').addClass('hidden_country');
					$('#country_list li.country.'+trimmedClass).removeClass('hidden_country');
				}
				else
				{
					$('#country_list li.country').removeClass('hidden_country');
				}
			}
		)
		
		
		$('#country_berner').click(function()
			{
				$('#country_list li.country').removeClass('hidden_country');
				 if ($('#country_berner:checked').length)
				 {
				 	// filter
				 	$('#country_list li.country').addClass('hidden');
					$('#country_list li.'+$(this).attr('id')).addClass('show_berner');
				 }
				 else
				 {
				 	// unfilter
				 	$('#country_list li.country').removeClass('show_berner');
				 }
				 generateCountryList();
			}  
		)
		
		$('#country_bti').click(function()
			{
				$('#country_list li.country').removeClass('hidden_country');
				 if ($('#country_bti:checked').length)
				 {
				 	// filter
				 	$('#country_list li.country').addClass('hidden');
					$('#country_list li.'+$(this).attr('id')).addClass('show_bti');
				 }
				 else
				 {
				 	// unfilter
				 	$('#country_list li.country').removeClass('show_bti');
				 	
				 }
				 generateCountryList();
			} 
		)
	
	
		$('#country_caramba').click(function()
			{
				$('#country_list li.country').removeClass('hidden_country');
				 if ($('#country_caramba:checked').length)
				 {
				 	// filter
				 	$('#country_list li.country').addClass('hidden');
					$('#country_list li.'+$(this).attr('id')).addClass('show_caramba');
				 }
				 else
				 {
				 	// unfilter
				 	$('#country_list li.country').removeClass('show_caramba');
				 }
				 generateCountryList();
			} 
		)
	
	
});
