// All Products drop down

var HIDE_LEFT_ATTRIB = 'nu_orig_left';
var HIDE_TOP_ATTRIB = 'nu_orig_top';
var HIDE_POSITION_ATTRIB = 'nu_orig_position';
var HIDE_HEIGHT_ATTRIB = 'nu_orig_height';
var GROUP_ATTRIB = 'nu_orig_group';
var HIDE_POSITION_TOP = '-300000em';


function toggle_the_div(div,fast,with_fade,customFunction)
{
    div.each( function() {
        var item = $(this);
        if (HIDE_POSITION_TOP==item.css('top'))
            show_the_div(item,fast,with_fade,customFunction);
        else
            hide_the_div(item,fast,with_fade,customFunction);
    });
}

function hide_the_div(div,fast,with_fade,customFunction)
{
    div.each( function() {
        var item = $(this);
        if (HIDE_POSITION_TOP == item.css('top'))
            return;

        item.attr( HIDE_TOP_ATTRIB, item.css('top') );
		item.attr( HIDE_LEFT_ATTRIB, item.css('left') );
        item.attr( HIDE_POSITION_ATTRIB, item.css('position') );
        if (item.height()!='100%')
            item.attr( HIDE_HEIGHT_ATTRIB, item.height() );
        if (fast) {
            item.css('height','0px').css('position','absolute').css('top',HIDE_POSITION_TOP).css('left',0);
        }
        else {
            var settings = null;
            if (with_fade)
                settings = {height:'0px',opacity:0.0};
            else
                settings = {height:'0px'};
            // Now it's been stored we can animate and hide the div
            item.animate( settings, 'normal', function() {
                $(item).css('position','absolute').css('top',HIDE_POSITION_TOP).css('left',0);
				if (customFunction != undefined) customFunction();
            });
        }
    } );
}

function show_the_div(div,fast,with_fade,customFunction)
{
     $(div).each( function() {
		var item = $(this);

		if (item.attr(HIDE_TOP_ATTRIB) == item.css('top'))
            return;

        if (undefined == item.attr(HIDE_TOP_ATTRIB))
            return;
		if (undefined == item.attr(HIDE_LEFT_ATTRIB))
            return;
        if (with_fade)
            item.css('opacity',0.0);
        item.css('top', item.attr(HIDE_TOP_ATTRIB) );
		item.css('left', item.attr(HIDE_LEFT_ATTRIB) );
        item.css('position', item.attr(HIDE_POSITION_ATTRIB) );

        if (undefined == item.attr(HIDE_HEIGHT_ATTRIB))
            var new_height = '';
        else
            var new_height = item.attr(HIDE_HEIGHT_ATTRIB);

		if (fast) {
            item.css('height','').css('opacity',1.0);
			if (customFunction != undefined) {
				customFunction();
			}
        }
        else {
			if (with_fade) {
				item.animate( {opacity:1.0,height:new_height}, 'slow', function() { $(this).height(''); if (customFunction != undefined) {customFunction(); } });
			}
			else {
				item.css('opacity',1.0).animate( {height:new_height}, function() { $(this).height(''); if (customFunction != undefined) {customFunction(); } });
			}
		}
    } );
}


function fadein_the_div(div,fadeDuration,customHeight,customFunction) {
	div.each( function() {
		var item = $(this);
        if (undefined == item.attr(HIDE_TOP_ATTRIB))
            return;
		if (undefined == item.attr(HIDE_LEFT_ATTRIB))
            return;

        item.css('top', item.attr(HIDE_TOP_ATTRIB) );
		item.css('left', item.attr(HIDE_LEFT_ATTRIB) );
        item.css('position', item.attr(HIDE_POSITION_ATTRIB) );

		if (customHeight) {
			var new_height = customHeight;
		} else {
			if (undefined == item.attr(HIDE_HEIGHT_ATTRIB))
				var new_height = '';
			else
				var new_height = item.attr(HIDE_HEIGHT_ATTRIB);
		}
		if (fadeDuration) {
        	item.animate( {opacity:1.0,height:new_height}, fadeDuration, function() {
				$(this).height('');
				if (customFunction != undefined) customFunction();
			});
		} else {
			item.animate( {opacity:1.0,height:new_height}, 'slow', function() {
				$(this).height('');
				if (customFunction != undefined) customFunction();
			});
		}
	});
}

function fadeout_the_div(div,fadeDuration,customFunction)
{
    div.each( function() {
        var item = $(this);
        if (HIDE_POSITION_TOP == item.css('top'))
            return;

        item.attr( HIDE_TOP_ATTRIB, item.css('top') );
		item.attr( HIDE_LEFT_ATTRIB, item.css('left') );
        item.attr( HIDE_POSITION_ATTRIB, item.css('position') );
        if (item.height()!='100%')
            item.attr( HIDE_HEIGHT_ATTRIB, item.height() );

		var settings = {opacity:0.0};
		if (fadeDuration) {
			item.animate( settings, fadeDuration, function() {
				$(item).css('position','absolute').css('top',HIDE_POSITION_TOP).css('left',0);
				if (customFunction != undefined) customFunction();
			});
		} else {
			item.animate( settings, 'normal', function() {
				$(item).css('position','absolute').css('top',HIDE_POSITION_TOP).css('left',0);
				if (customFunction != undefined) customFunction();
			});
		}
    });
}

function toggle_text(element){
	element.each( function() {
	var item = $(this);
		if (item.html() == "View all products"){
			item.html("Close all products");
			item.addClass('closed');
			item.removeClass('open');
		}else{
			item.html("View all products");
			item.addClass('open');
			item.removeClass('closed');
		}
	});
}

var live_fade_boxes = new Array();
var top_live_fade_boxes = new Array();


function setupPopup(anchorTag) {
	anchorTag.each( function() {
		var popupType = $(this).attr('rel');

		if(popupType == "popup")
		{
			$(this).click( function(event) {
				event.preventDefault();
				openPopWin($(this).attr('href'), '520', '500', 'scrollbars=yes,resizable=yes');
			});
		}
		else if(popupType == "fullWindow")
		{
			$(this).click( function(event) {
				event.preventDefault();
				openPopWin($(this).attr('href'), '1024', '800', 'scrollbars=yes,resizable=yes,menubar=yes,status=yes,toolbar=yes');
			});
		}
		else if((popupType == "external") || (popupType == "newWindow") || (popupType == "nofollow"))
		{
			$(this).attr('target', '_new');
		}
		else if(popupType == "leavingAviva")
		{
			$(this).click( function(event) {
				event.preventDefault();
				openPopWin('/leaving-aviva.html?url='+$(this).attr('href'), '490', '290', 'scrollbars=no,resizable=no,menubar=no,status=yes,toolbar=no,location=yes');
			});
		}
		else if(popupType == "quoteWindow")
		{
			$(this).click( function(event) {
				event.preventDefault();
				openPopWin($(this).attr('href'), '1024', '600', 'scrollbars=yes,resizable=yes,status=yes','newPopup');
			});
		}
		else if(popupType == "virtualHelp")
		{
			$(this).click( function(event) {
				event.preventDefault();
				openPopWin($(this).attr('href'), '500', '500', 'scrollbars=yes,resizable=yes,status=yes','newPopup');
			});
		}
		else if(popupType == "ricWindow")
		{
			$(this).click( function(event) {
				event.preventDefault();
				openPopWin($(this).attr('href'), '1024', '800', 'scrollbars=yes,resizable=yes,status=yes','newPopup');
			});
		}
		if ((popupType == "popup") || (popupType == "external") || (popupType == "nofollow") || (popupType == "quoteWindow") || (popupType == "newWindow") || (popupType == "fullWindow")) {
			if (($(this).attr('title') == null) || ($(this).attr('title') == '')) {
				if($(this).hasClass('linkPdf')){
					$(this).attr('title', 'This link will open a PDF in a new browser window');
				} else {
					$(this).attr('title', 'This link will open in a new window');
				}
			}
			else {
				if($(this).hasClass('linkPdf')){
					var newTitle = $(this).attr('title') + ' - This link will open a PDF in a new browser window';
				} else {
					var newTitle = $(this).attr('title') + ' - This link will open in a new window';
				}
				$(this).attr('title', newTitle);
			}
		}
	});
}

 $(document).ready(function(){
	//inline jquery test code

	var fading = false;

	$('a').each( function() {
		setupPopup($(this));
	});

	$('.printPageButton').append('<div class="pBut right"><img src="/library/images/btn/btn-white-120.png" alt="&nbsp;"/><a  href="">Print Page</a></div>')
	$('span.printLink').wrapInner(document.createElement("a"));
	$('span.printLink a').attr('href','');
	$('.printPageButton .pBut, span.printLink a, a.iconPrint').click(function(event) {
		event.preventDefault();
		window.print();
	});

 });




// For a dropdown show the layer corresponding to the value and hide all others
// containerList matches to the options in the dropdown

function checkDropdown( obj , containerList, fast ) {
	$(obj).each( function() {
		var setVal = $(this).val();
		var div = containerList[setVal];

		if ((div != null) && (div != undefined)) {
			if(fast){
				show_the_div($(div),true);
			} else {
				show_the_div($(div),false,false);
			}
		} else {
			div = null;
		}
		for(i in containerList){
			if(containerList[i] != div) {
				if(fast){
					hide_the_div($(containerList[i]),true);
				} else {
					hide_the_div($(containerList[i]),false,false);
				}
			}
		}
	});
}

// Show the layer when the input has be checked
// Hide the layer if not
function showLayer(obj, layerName, fast){
	if($(obj).attr('checked') == true){
		if(fast){
			show_the_div($(layerName),true);
		} else {
			show_the_div($(layerName),false,false);
		}
	} else {
		if (fast) {
			hide_the_div($(layerName),true);
		} else {
			hide_the_div($(layerName),false,false);
		}
	}
}

function showLayerOnId(obj, evalId, layerName, fast){
	$(obj).each( function() {
		if($(this).attr('id').match(evalId) != null){
			if($(this).attr('checked') == true){
				if(fast){
					show_the_div($(layerName),true);
				} else {
					show_the_div($(layerName),false,false);
				}
			} else {
				if (fast) {
					hide_the_div($(layerName),true);
				} else {
					hide_the_div($(layerName),false,false);
				}
			}
		}
	});
}
 
/**
 * --------------------------------------------------------------------
 * jQuery-Plugin "pngFix"
 * Version: 1.2, 09.03.2009
 * by Andreas Eberhard, andreas.eberhard@gmail.com
 *                      http://jquery.andreaseberhard.de/
 *
 * Copyright (c) 2007 Andreas Eberhard
 * Licensed under GPL (http://www.opensource.org/licenses/gpl-license.php)
 *
 * Changelog:
 *    09.03.2009 Version 1.2
 *    - Update for jQuery 1.3.x, removed @ from selectors
 *    11.09.2007 Version 1.1
 *    - removed noConflict
 *    - added png-support for input type=image
 *    - 01.08.2007 CSS background-image support extension added by Scott Jehl, scott@filamentgroup.com, http://www.filamentgroup.com
 *    31.05.2007 initial Version 1.0
 * --------------------------------------------------------------------
 * @example $(function(){$(document).pngFix();});
 * @desc Fixes all PNG's in the document on document.ready
 *
 * jQuery(function(){jQuery(document).pngFix();});
 * @desc Fixes all PNG's in the document on document.ready when using noConflict
 *
 * @example $(function(){$('div.examples').pngFix();});
 * @desc Fixes all PNG's within div with class examples
 *
 * @example $(function(){$('div.examples').pngFix( { blankgif:'ext.gif' } );});
 * @desc Fixes all PNG's within div with class examples, provides blank gif for input with png
 * --------------------------------------------------------------------
 */

(function($) {

jQuery.fn.pngFix = function(settings) {

	// Settings
	settings = jQuery.extend({
		blankgif: 'blank.gif'
	}, settings);

	var ie55 = (navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.appVersion) == 4 && navigator.appVersion.indexOf("MSIE 5.5") != -1);
	var ie6 = (navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.appVersion) == 4 && navigator.appVersion.indexOf("MSIE 6.0") != -1);

	if (jQuery.browser.msie && (ie55 || ie6)) {

		//fix images with png-source
		jQuery(this).find("img[src$=.png]").each(function() {

			jQuery(this).attr('width',jQuery(this).width());
			jQuery(this).attr('height',jQuery(this).height());

			var prevStyle = '';
			var strNewHTML = '';
			var imgId = (jQuery(this).attr('id')) ? 'id="' + jQuery(this).attr('id') + '" ' : '';
			var imgClass = (jQuery(this).attr('class')) ? 'class="' + jQuery(this).attr('class') + '" ' : '';
			var imgTitle = (jQuery(this).attr('title')) ? 'title="' + jQuery(this).attr('title') + '" ' : '';
			var imgAlt = (jQuery(this).attr('alt')) ? 'alt="' + jQuery(this).attr('alt') + '" ' : '';
			var imgAlign = (jQuery(this).attr('align')) ? 'float:' + jQuery(this).attr('align') + ';' : '';
			var imgHand = (jQuery(this).parent().attr('href')) ? 'cursor:hand;' : '';
			if (this.style.border) {
				prevStyle += 'border:'+this.style.border+';';
				this.style.border = '';
			}
			if (this.style.padding) {
				prevStyle += 'padding:'+this.style.padding+';';
				this.style.padding = '';
			}
			if (this.style.margin) {
				prevStyle += 'margin:'+this.style.margin+';';
				this.style.margin = '';
			}
			var imgStyle = (this.style.cssText);

			strNewHTML += '<span '+imgId+imgClass+imgTitle+imgAlt;
			strNewHTML += 'style="position:relative;white-space:pre-line;display:inline-block;background:transparent;'+imgAlign+imgHand;
			strNewHTML += 'width:' + jQuery(this).width() + 'px;' + 'height:' + jQuery(this).height() + 'px;';
			strNewHTML += 'filter:progid:DXImageTransform.Microsoft.AlphaImageLoader' + '(src=\'' + jQuery(this).attr('src') + '\', sizingMethod=\'scale\');';
			strNewHTML += imgStyle+'"></span>';
			if (prevStyle != ''){
				strNewHTML = '<span style="position:relative;display:inline-block;'+prevStyle+imgHand+'width:' + jQuery(this).width() + 'px;' + 'height:' + jQuery(this).height() + 'px;'+'">' + strNewHTML + '</span>';
			}

			jQuery(this).hide();
			jQuery(this).after(strNewHTML);

		});

		// fix css background pngs
		jQuery(this).find("*").each(function(){
			var bgIMG = jQuery(this).css('background-image');
			if(bgIMG.indexOf(".png")!=-1){
				var iebg = bgIMG.split('url("')[1].split('")')[0];
				jQuery(this).css('background-image', 'none');
				jQuery(this).get(0).runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + iebg + "',sizingMethod='scale')";
			}
		});

		//fix input with png-source
		jQuery(this).find("input[src$=.png]").each(function() {
			var bgIMG = jQuery(this).attr('src');
			jQuery(this).get(0).runtimeStyle.filter = 'progid:DXImageTransform.Microsoft.AlphaImageLoader' + '(src=\'' + bgIMG + '\', sizingMethod=\'scale\');';
   		jQuery(this).attr('src', settings.blankgif)
		});

	}

	return jQuery;

};

})(jQuery);

$(document).ready(function(){
	$(document).pngFix();
});

function openPopWin(windowURL, windowWidth, windowHeight, windowFeatures, windowName, windowLeft, windowTop) {
	if (windowName == null) {
		windowName = "popup";
	}

	if (windowLeft=="cen") {
		windowLeft = (screen.width - windowWidth)/2 - 20;
	}
	windowTop =+ 20;

	var windowProperties = "width=" + windowWidth + ",height=" + windowHeight + "," + windowFeatures + ",left=" + windowLeft + ",top=" + windowTop;
	window.open(windowURL,windowName,windowProperties);
}

//Fix for IE6 Image Flicker
try {
  document.execCommand("BackgroundImageCache", false, true);
} catch(err) {}

/* Country Selector */
$(document).ready(function(){
	$("#selectorButton").click(function () {
		$("#countrySelector").css({top:"4.5em"});
		return false;
	});
	$("#selectorCloseButton").click(function () {
		$("#countrySelector").css({top:"-9999em"});
		return false;
	});
});

