//==================
// GLOBAL VARIABLES
//==================
var carrousselEffect = '';
var carrousselSize = 1;
var index = 1;
var automateIntervalId;

//=================================================
// IMPORTANT!!! ON DOCUMENT.READY --> FINALIZEPAGE
//=================================================
function finalizePage(){
    $('.linkedin a').each(function(){
		var articleUrl = encodeURIComponent(window.location.href);
		var articleTitle = encodeURIComponent(document.title);
		var summary = encodeURIComponent($(document.getElementsByName('description')[0]).attr('name'));
		var url = 'http://www.linkedin.com/shareArticle?mini=true&url='+articleUrl+'&title='+articleTitle+'&summary='+ summary;
		$(this).attr('href', url).attr('target', '_blank');
    });
	$('.twitter a').each(function(){
		var articleUrl = encodeURIComponent(window.location.href);
		var url = 'http://twitter.com/home?status=Currently reading '+articleUrl;
		$(this).attr('href', url).attr('target', '_blank');
    });
	$('.facebook a').each(function(){
		var articleUrl = encodeURIComponent(window.location.href);
		var articleTitle = encodeURIComponent(document.title);
		var url = 'http://www.facebook.com/sharer.php?u='+articleUrl+'&t='+articleTitle;
		$(this).attr('href', url).attr('target', '_blank');
    });
	$('.print a').each(function(){
		var articleUrl = encodeURIComponent(window.location.href);
		var articleTitle = encodeURIComponent(document.title);
		var url = 'javascript:print()';
		$(this).attr('href', url).attr('target', '_blank');
    });
	$('a[target="_blank"][href*="/internet/"]').click(function() {
		$(this).attr('href', 'http://www.agfa.com' + $(this).attr('href'));
	});

	//$('#dropdownnavigation select').change(function() {
	//	$('#loadingcountries').css('display', 'block');
	//	var url = $(this).parent().attr("action") + '?';
	//	$.each($('#dropdownnavigation select'), function(index, value){
	//	   url = url + $(value).attr('name') + '=' + $(value).val().replace(' ', '%20') + '&'
	//	});
		
	//	$('#dropdownnavigation').load(url + ' #dropdownnavigation', function(response, status, xhr){
	//		if (status == "error") {
	//		    var msg = "Sorry, but there was an error: ";
	//		    $('#' + resultId).html(msg + xhr.status + " " + xhr.statusText);
	//		}
	//		$('#loadingcountries').css('display', 'none');
	//	});
	//});
}

//===============================================================
// ONCLICK EVENT THAT REMOVES THE DEFAULT KEYWORD OF INPUTFIELDS
//===============================================================
function cleanUpKeyword(oObject){
    oObject.value = '';
}

//=====================================
// TABS: SYNCHRONIZE TAB PANEL HEIGHTS
//=====================================
function synchronizeTabPanelHeight(tabId){
    var panelHeight = 1;
    var tempHeight = 1;
    $('#' + tabId + ' div.ui-tabs-panel').each(function(i) {
        tempHeight = $(this).height();
        if (tempHeight > panelHeight){
            panelHeight = tempHeight;
        }
    });
    if($.browser.msie && $.browser.version < 7)
        $('#' + tabId + ' div.ui-tabs-panel').css('height', panelHeight);
    else
        $('#' + tabId + ' div.ui-tabs-panel').css('min-height', panelHeight);
}

//========================================
// SHOWADVANCEDSEARCH: TOGGLE SHOW / HIDE
//========================================
function showAdvancedSearch() {
    if ($('#advanced').hasClass('close')){
	$('#advanced').removeClass('close');
	$('#advanced').addClass('open');
	$('#advanced').show(500);
    } else {
	$('#advanced').removeClass('open');
	$('#advanced').addClass('close');
	$('#advanced').hide(500);
    }
}

//==================================================
// GET LIST OF OFFICES BASED ON COUNTRY (AJAX-WISE)
//==================================================
function getAgfaOffices(elementId, resultId){
    $('#loadingcountries').css('display', 'block');

    var url = $('#' + elementId).val();
    $('#' + resultId).load(url + ' #main div.contactlist,#main div.pageintro', function(response, status, xhr){
		if (status == "error") {
		    var msg = "Sorry, but there was an error: ";
		    $('#' + resultId).html(msg + xhr.status + " " + xhr.statusText);
		}
		$('#' + resultId).fadeIn(1000);
		$('#loadingcountries').css('display', 'none');
    }).hide();
}

//======================
// CARROUSSEL FUNCTIONS
//======================
function startBannerCarroussel(sClass, sEffect){
    carrousselEffect = sEffect;
    $('.' + sClass).children('div.banneritem').css('display','none');
    carrousselSize = $('.' + sClass).children('div.banneritem').size();
    createCarrousselPager($('.' + sClass).children('div.banneritem'),0);
    automateCarroussel(true);
    automateIntervalId = setInterval('automateCarroussel(false)', 8000);
}

function automateCarroussel(bInit){
    var previousIndex;

    previousIndex = index - 1;
    if (previousIndex == 0){
	previousIndex = 1;
    }

    if(index == carrousselSize + 1){
	index = 1;
    }

    if (bInit){
	$('#banneritem_1').fadeIn(1500);
    }else {
	showBannerCarrousselItem($('#banneritem_' + previousIndex + ' a'), index);
    }
    
    index++;
}

function stopAutomateCarroussel(){
    clearInterval(automateIntervalId);
}

function createCarrousselPager(oBannerItems, index){
    var lCount = oBannerItems.size();
    var lNext = index + 1;
    var lNextNext = index + 2;
    var lPrevious = index - 1;
    var lPreviousPrevious = index -2;

    var oFirst;
    var oSecond;
    var oThird;

    var sHtml;

    if (index > 0 && lNext > 0 && lPrevious >= 0){
        if(lNext > lCount - 1){
            //alert('pager met gevraagde element achteraan');
            oFirst = oBannerItems.get(lPreviousPrevious);
            oSecond = oBannerItems.get(lPrevious);
            oThird = oBannerItems.get(index);

            sHtml = '<a class="previous" onclick="showBannerCarrousselItem(this,' + parseInt(lPrevious + 1) + ');stopAutomateCarroussel();"></a>';

            if(lPreviousPrevious >= 0 && $(oFirst).length > 0){
                //append first
                sHtml = sHtml + '<a onclick="showBannerCarrousselItem(this,' + parseInt(lPreviousPrevious + 1) + ');stopAutomateCarroussel();">' + parseInt(lPreviousPrevious + 1) + '</a>';
            }
            if(lPrevious >= 0 && $(oSecond).length > 0){
                //append second
                sHtml = sHtml + '<a onclick="showBannerCarrousselItem(this,' + parseInt(lPrevious + 1) + ');stopAutomateCarroussel();">' + parseInt(lPrevious + 1) + '</a>';
            }
            if(index >= 0 && $(oThird).length > 0){
                //append third
                sHtml = sHtml + '<span>' + parseInt(index + 1) + '</span>';
            }
        }else{
            //alert('gewone pager met gevraagde element centraal');
            oFirst = oBannerItems.get(lPrevious);
            oSecond = oBannerItems.get(index);
            oThird = oBannerItems.get(lNext);

            sHtml = '<a class="previous" onclick="showBannerCarrousselItem(this,' + parseInt(lPrevious + 1) + ');stopAutomateCarroussel();"></a>';

            if(lPrevious >= 0 && $(oFirst).length > 0){
                //append first
                sHtml = sHtml + '<a onclick="showBannerCarrousselItem(this,' + parseInt(lPrevious + 1) + ');stopAutomateCarroussel();">' + parseInt(lPrevious + 1) + '</a>';
            }
            if(index >= 0 && $(oSecond).length > 0){
                //append second
                sHtml = sHtml + '<span>' + parseInt(index + 1) + '</span>';
            }
            if(lNext >= 0 && $(oThird).length > 0){
                //append third
                sHtml = sHtml + '<a onclick="showBannerCarrousselItem(this,' + parseInt(lNext + 1) + ');stopAutomateCarroussel();">' + parseInt(lNext + 1) + '</a>';
            }
            sHtml = sHtml + '<a class="next" onclick="showBannerCarrousselItem(this,' + parseInt(lNext + 1) + ');stopAutomateCarroussel();"></a>';
        }
    } else {
        //alert('pager met gevraagde element vooraan');
        oFirst = oBannerItems.get(index);
        oSecond = oBannerItems.get(lNext);
        oThird = oBannerItems.get(lNextNext);

        if(index >= 0 && $(oFirst).length > 0){
            //append first
            sHtml = '<span>' + parseInt(index + 1) + '</span>';
        }
        if(lNext >= 0 && $(oSecond).length > 0){
            //append second
            sHtml = sHtml + '<a onclick="showBannerCarrousselItem(this,' + parseInt(lNext + 1) + ');stopAutomateCarroussel();">' + parseInt(lNext + 1) + '</a>';
        }
        if(lNextNext >= 0 && $(oThird).length > 0){
            //append third
            sHtml = sHtml + '<a onclick="showBannerCarrousselItem(this,' + parseInt(lNextNext + 1) + ');stopAutomateCarroussel();">' + parseInt(lNextNext + 1) + '</a>';
        }
        sHtml = sHtml + '<a class="next" onclick="showBannerCarrousselItem(this,' + parseInt(lNext + 1) + ');stopAutomateCarroussel();"></a>';
    }

    $(oBannerItems.get(index)).find('.pager').html(sHtml);
}

function showBannerCarrousselItem(oObject, index){
    var sId = $(oObject).parents('.banneritem').attr('id');
    var sIdName = sId.split('_')[0];
    var sIdNumberCurrent = parseInt(sId.split('_')[1]);
    
    if (sIdNumberCurrent == 0){
	sIdNumberCurrent = 1;
    }

    var sIdNumberSpecific = index;

    if ($('#' + sIdName + '_' + sIdNumberSpecific).length > 0){
        if(carrousselEffect == 'fade' || carrousselEffect == ''){
            $('#' + sIdName + '_' + sIdNumberCurrent).fadeOut(1000);
            $('#' + sIdName + '_' + sIdNumberSpecific).delay(500).fadeIn(1000);
        }
        if(carrousselEffect == 'show'){
            $('#' + sIdName + '_' + sIdNumberCurrent).hide(1000);
            $('#' + sIdName + '_' + sIdNumberSpecific).show(1000);
        }
        if(carrousselEffect == 'slide'){
            $('#' + sIdName + '_' + sIdNumberCurrent).slideUp(1000);
            $('#' + sIdName + '_' + sIdNumberSpecific).slideDown(1000);
        }
        if(carrousselEffect == 'scroll'){
            $('#' + sIdName + '_' + sIdNumberCurrent).animate({'left': '-=1000px'},'1000');
            $('#' + sIdName + '_' + sIdNumberSpecific).css('left', '1000px');
            $('#' + sIdName + '_' + sIdNumberSpecific).css('display', 'block');
            $('#' + sIdName + '_' + sIdNumberSpecific).animate({'left': '-=1000px'},'1000');
        }
    }
    createCarrousselPager($(oObject).parents('.bannercarroussel').children('div.banneritem'),parseInt(index - 1));
}

//=====================================
// SENDMAIL: SUBJECT & BODY PREDEFINED
//=====================================
function sendMail(subject, body){
    var url = document.location.href;
    var shortUrl = url.split("?")[0];
    window.location = "mailto:?subject=" + subject + "&body=" + body + shortUrl;
}

//==============
// BLOCK HOVERS
//==============
function really_over(src) {
    if (!window.event)
        return true;

    var event = window.event;
    var from = event.fromElement;
    var to = event.toElement;
    return ( to == src || src.contains(to) ) && !src.contains(from) && src != from;
}
function really_out(src) {
    if (!window.event)
        return true;

    var event = window.event;
    var from = event.fromElement;
    var to = event.toElement;
    return (src == from || src.contains(from)) && !src.contains(to) && src != to;
}
function setHover(field){
    $(field).addClass('hovered');
}
function releaseHover(field){
    $(field).removeClass('hovered');
}
function redirect(url){
    if (url.match("http")) {
        window.open(url);
    }
    else {
        window.location = url;
    }
}

//============================
// POPUP: OPENS POPUP WINDOW
//============================
function PopUp(url, title){
    var newwindow;
    newwindow=window.open(url,title,"height=300,width=298,resizable=yes,scrollbars=no,toolbar=no,menubar=no");
    if (window.focus) {newwindow.focus();}
}

//============================
// QTIP: document download links
//============================
$(document).ready(function() {
	$('.yuimenu').each(function(i) {
		var downloadblock = $(this);
		downloadblock.hide();
		var downloadblock_id = downloadblock.attr('id');
		downloadblock_id = downloadblock_id.replace(":", "\\:");
		var downloadlink = $('#'+downloadblock_id+'_link');
		downloadlink.qtip({content: downloadblock.html(), position: {corner: {tooltip: 'topLeft',target: 'bottomLeft'}}, hide: {fixed: true }, show: { delay: 10, effect: 'slide' }, style: {width: {min: downloadlink.width()+10 },background: 'none repeat scroll 0 0 #F7F7F7',border: {color: '#C7C7C9'},margin: '0'}});
	});
});
