// A variable indicating, whether  the logging should be done or not
var DEBUG = false;

/**
 * A method to log informations to the Firefox console
 */
function log(msg){
    if (DEBUG) {
        console.debug(msg);
    }
}

jQuery(document).ready(function(){
	homePromotion();
	checkDefaultTexts();
	toggleConsumerProfessional();
	initPageScripts();
	checkPageWidth();
});

/*function homePromotion(){
	if (!$('body.home').length) return false;
	$('body').data('selectedItem',1);
	$img = $('#homeTeaserImg1');
	$('#homeTeaser img:not(#homeTeaserImg1)').hide();
	$('#homeSelectionNav .selectPromotionLink').unbind('click').bind('click',function(event){
		$('#homeTeaser img').hide();
		var $self = $(this);
		var clickRel = $self.attr('rel');
		$('#homeTeaser img#' + clickRel).show();
		return false;
	});
}*/

function homePromotion(){
	console.log("hallo");
	if (!$('body.home').length) return false;
	$('body').data('selectedItem',1);
	$('#teaserContainer_1').show();
	$('#homeSelectionNav .selectPromotionLink').unbind('click').bind('click',function(event){
		$('.homeTeaser').hide();
		var $self = $(this);
		var clickRel = $self.attr('rel');
		$('#' + clickRel).show();
		return false;
	});
	
	//var scaleBy = 10.6;
	var scaleBy = 1.1;
    $('.bubbleUp').each(function(){
    	var position = $(this).position();
        //var itemH = $(this).attr('height');
        //var itemHBig = itemH + (itemH/100 * scaleBy);
        //var itemW = $(this).attr('width');
        //var itemWBig = itemW + (itemW/100 * scaleBy);
        $(this).hover(
            function(e){
                $(this)
                	.css({'zIndex':'100',position:'absolute',top:position.top,left:position.left}).stop(false,true)
                	.animate(
                		{
                		//width:itemWBig + 'px',
                		//height:itemHBig + 'px',
                		width: $(this).width() * scaleBy,
                		height: $(this).height() * scaleBy,
                		top: position.top,
                		left: position.left
                		}
                		,200);
            },
            function(e){
                $(this).css({'zIndex':'1'}).stop(false,true).animate(
                	{
                	//width:itemW + 'px',
                	//height:itemH + 'px'
                		width: $(this).width() / scaleBy,
                		height: $(this).height() / scaleBy,
                		top: position.top,
                		left: position.left
                	}
                	,200);
            }
        );
        
    });
}

function initPageScripts(){
	$('#folderSupport').hide();
	$('#rightArea .folders li a').bind('click',function(){
		$(this).parents('.folders').find('li').removeClass('active').addClass('inactive')
		.find('img').replaceAttr('src','_aktiv','_inaktiv');
				
		$(this).find('img').replaceAttr('src','_inaktiv','_aktiv').parents('li').removeClass('inactive').addClass('active');
				
		var relDiv = $(this).attr('rel');
		$('.folderContent').hide();
		$('#' + relDiv).show();
	});
			
	$('#selectCountry').selectbox({
		onChangeCallback: selectCountryCallback,
		debug: true,
		containerClass:'selectbox-wrapper-omron-worldwide',
		inputClass:'selectbox-omron-worldwide'
	});
	$('#selectLanguage').selectbox({
		onChangeCallback: selectLanguageCallback,
		debug: false,
		containerClass:'selectbox-wrapper-omron-countryselect',
		inputClass:'selectbox-omron-countryselect'
	});
	$('#category').selectbox({
		onChangeCallback: selectCategory,
		debug: false,
		containerClass:'selectbox-wrapper-omron-categorySelect',
		inputClass:'selectbox-omron-categorySelect'
	});
	$('#product').selectbox({
		onChangeCallback: selectProduct,
		debug: false,
		containerClass:'selectbox-wrapper-omron-productSelect',
		inputClass:'selectbox-omron-productSelect'
	});
	/*$('#supportcategory').selectbox({
		onChangeCallback: selectCategory,
		debug: false,
		containerClass:'selectbox-wrapper-omron-categorySelect',
		inputClass:'selectbox-omron-categorySelect'
	});
	$('#supportproduct').selectbox({
		onChangeCallback: selectProduct,
		debug: false,
		containerClass:'selectbox-wrapper-omron-productSelect',
		inputClass:'selectbox-omron-productSelect'
	});*/
	$('#selectEvent').selectbox({
		onChangeCallback: selectEvent,
		debug: false,
		containerClass:'selectbox-wrapper-omron-eventSelect',
		inputClass:'selectbox-omron-eventSelect'
	});
			
	jQuery('ul#sfnav').superfish({ 
		delay:250,                           // one second delay on mouseout 
		hoverClass	: 'over',
		speed:       'fast',                          // faster animation speed 
		autoArrows:  false,                           // disable generation of arrow mark-up 
		dropShadows: false                            // disable drop shadows 
	});
			
	function selectLanguageCallback(args){
		changeLanguage(); 
	}
	function selectCountryCallback(args){
	    var url = args.selectedVal;
	    if (url != null && url != '') {
           	window.location.href = url;
	    }
	}
	function selectCategory(args){
		changeSelectCategoryNew(args.selectedVal); 
	}
	function selectProduct(args){
		changeSelectCategoryNew(args.selectedVal); 
	}
	function selectEvent(args){
		changeSelectCategoryNew(args.selectedVal); 
	}

}

function changeSelectCategoryNew(url) {
	//var url = select.options[select.options.selectedIndex].value;
	if (url != "") {
	window.location.href = url;
	}
}

function checkDefaultTexts(){
    jQuery(".defaultText").each(function(){
        if (jQuery(this).val() == jQuery(this)[0].title){
            jQuery(this).addClass("defaultTextInactive");
        }
    });

    jQuery(".defaultText")
    .focus(function(){
        if (jQuery(this).val() == jQuery(this)[0].title){
            jQuery(this).removeClass("defaultTextInactive").
            addClass("defaultTextActive").
            val("");
        }
    })
    .blur(function(){
        if (jQuery(this).val() == ""){
            jQuery(this).addClass("defaultTextInactive")
            .removeClass("defaultTextActive")
            .val(jQuery(this)[0].title);
        }
    });

    jQuery(".defaultText").blur();
}

function toggleConsumerProfessional(){
	$('#professional').hide();
	$('#content .LayerConsumer').click(function(){
		$('#professional').hide();
		$('#tabConsumer').show();
		$('#tabProfessional').hide();
		return false;
	});
	$('#content .LayerProfessional').click(function(){
		$('#professional').show();
		$('#tabConsumer').hide();
		$('#tabProfessional').show();
		return false;
	});
	checkInterest();
}

// COOKIES
function setCookie(name, wert, domain, expires){
   var cook = name + "=" + unescape(wert);
   cook += (domain) ? "; domain=" + domain : "";
   cook += (expires) ? "; expires=" + expires.toGMTString() : "";
   cook += "; path=/";
   //cook += (secure) ? "; secure" : "";
   document.cookie = cook;
   //alert("cookie " + name + "=" + getCookie(name));
}

function getCookie(name){
   var i=0;  //Suchposition im Cookie
   var suche = name+"=";
   while (i < document.cookie.length){
      if (document.cookie.substring(i, i+suche.length)==suche){
         var ende = document.cookie.indexOf(";", i+suche.length);
         ende = (ende>-1) ? ende : document.cookie.length;
         var cook = document.cookie.substring(i+suche.length, ende);
         return unescape(cook);
      }
      i++;
   }
   return null;
}

function setLanguageCookie(language) {
   var a = new Date();
   a = new Date(a.getTime() +1000*60*60*24*365);
   setCookie("omronlanguage", language, null, a)
}

function setInterestCookie(interest) {
   var a = new Date();
   a = new Date(a.getTime() +1000*60*60*24*365);
   setCookie("omroninterest", interest, null, a)
}

function getLanguageCookie() {
   return getCookie("omronlanguage");
}

function getInterestCookie() {
   return getCookie("omroninterest");
}

function switchInterest(interest) {
    setInterestCookie(interest);
}

function checkInterest() {
    var interest = getInterestCookie();
    if (interest != null && interest == "professional") {
	$('#tabConsumer').hide();
	$('#tabProfessional').show();
	$('#professional').show();
    }
}

function showProductLink(blank, url) {
    if (blank) {
        newwindow = window.open(url,"popup");
    } else {
        window.location.href=url;
    }
}

function checkPageWidth(){
	var pWidth = $(document).width();
	if (pWidth <1100){
		$('#bottomTeasers .first-child').addClass('resolutionFix');
		$('#footer').addClass('resolutionFix');
	}
	$(window).resize(function(){
		pWidth = $(document).width();
	
		if (pWidth <1100){
			$('#bottomTeasers .first-child').addClass('resolutionFix');
			$('#footer').addClass('resolutionFix');
		}else{
			$('#bottomTeasers .first-child').removeClass('resolutionFix');
			$('#footer').removeClass('resolutionFix');
		}
	});
}

//

jQuery.fn.replaceAttr = function(aName, rxString, repString) {
    return this.attr(
        aName,
        function() { return jQuery(this).attr(aName).replace(rxString,
repString); }
    );
}; 
