jQuery.noConflict();
(function($) {
	function ajaxRequest(url) {
		/* AJAX Page Requets */
		$.get(url, {
			type : 10
		}, function(data, textStatus) {
			$('#content').html(data);
		}, 'html');
	}
	
	$(function() {
		if (location.search.indexOf('type=30') > -1) {
			$('h4').addClass('nocufon');
			$('a').each(function() {
				var href = $(this).attr('href');
				if (href != null && href != '#' && href.indexOf('type=30') == -1) {
					if ($(this).attr('target') != '_blank') {
						if (href.indexOf('kenmerken') > -1 || href.indexOf('documenten') > -1 || $(this).hasClass('undo') || href.indexOf('detail') > -1 || href.indexOf('pagina') > -1 || href.indexOf('sort') > -1) {
							if (href.indexOf('?') > -1) {
								$(this).attr('href', href + '&type=30');
							} else {
								$(this).attr('href', href + '?type=30');
							}
						}
					}
				}
			});
		}

		$('a[href]').each(function() {
			if (!$(this).attr('onclick') && $(this).attr('href').indexOf('.pdf') > -1) {
				$(this).attr('onclick',
					'_gaq.push(["_trackPageview", "'+ $(this).attr('href') + '"]);'
				);
			}
		});
		
		/* Open calculator in modal window */
		function resizeIFrame(h) {
			$(".turboCalculatorFrame").attr("height", h);
		}
		
		/* Turbo Calculator Modalbox */
		modalBoxShow = function(evt) {
			jQuery('.simplemodal-overlay').bind('click', function(evt) {
				modalBoxClose();
			});
			jQuery(window).bind('keydown', function(evt){
				if (evt.keyCode == 27) {
					modalBoxClose();
				}
			});
		};
		modalBoxClose = function(evt) {
			if (typeof(redirectOnCalculatorClose) != 'undefined' && redirectOnCalculatorClose)
			{
				location.href = redirectOnCalculatorClose;
			}
			else
			{
				jQuery.modal.close();
				jQuery(window).unbind('keydown');
				resetCalculatorFrame();
			}
		}
		openCalculator = function(src) {
			// The URL for the iframe should be prefixed with the host name of the application
			jQuery(".turboCalculatorFrame").attr("src", src);
			jQuery.modal(jQuery("#turboCalculatorWrapper"), {
				containerId: "simplemodal-container2",
				opacity:'75',
				closeHTML:'<a class="modalClose"><span>Sluiten<\/span><\/a>',
				closeClass:'modalClose',
				onShow: modalBoxShow,
				onClose: modalBoxClose
			});
			
			jQuery("#turboCalculatorWrapper").removeClass('hidden');
			var scrollTop = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop;
			jQuery('#simplemodal-container2').css({position:'absolute', top: (scrollTop + 15)+'px'});
		};

		$('.turboCalculator').click(function() {
			openCalculator($(this).attr('href'));
			return false;
		});
		
		$('.turboCalculator-large').click(function() {
			openCalculator($(this).attr('href'));
			return false;
		});
		
		resetCalculatorFrame = function()
		{
			var rnd = Math.floor(Math.random()*100000);
			$('.turboCalculatorFrame').attr('id', 'turboCalculator' + rnd);
		}
		
		resetCalculatorFrame();
		
		/*
		 * Open the transaction window and show the specified information
		 */
		openTransaction = function() {
			jQuery.modal(jQuery("#turboTransactionWrapper"), {
				containerId: "simplemodal-container2",
				opacity:'75',
				closeHTML:'<a class="modalClose"><span>Sluiten<\/span><\/a>',
				closeClass:'modalClose',
				onShow: modalBoxShow,
				onClose: modalBoxClose
			});
			
			jQuery("#turboTransactionWrapper").removeClass('hidden');
			var scrollTop = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop;
			jQuery('#simplemodal-container2').css({position:'absolute', top: (scrollTop + 15)+'px'});
		};

		/* External links */
		// $('a[@href^="http://"]').attr('rel',
		// 'external').attr('target', '_blank');
		$('a[rel="external"]').attr('target', '_blank');

		/* Open TA PDF in new window */
		$('a[href$=pdf]', $('body.p9 #content')).attr('target', '_blank');
		$('a[href$=pdf]', $('#homeNews')).attr('target', '_blank');

		/* Product search */
		var initSearchValue = $('#productQuickSearch label').html();
		$('#productQuickSearch input.searchField').bind('focus', function(evt) {
			if ($(this).val() == initSearchValue) {
				$(this).val('');
			}
		}).bind('blur', function(evt) {
			if ($(this).val() == '') {
				$(this).val(initSearchValue);
			}
		});

		/* Empty product search box on initial value */
		$('#productQuickSearch form').bind('submit', function(evt) {
			if ($('#productQuickSearch input.searchField').val() == initSearchValue) {
				$('#productQuickSearch input.searchField').val('');
			}
		});

		/* Contact */
		$('#contactBtn').bind('click', function(evt) {
			evt.preventDefault();
			$('#contact').toggle();
			if ($('#contact').is(':visible') && $('#contact iframe').length == 0)
			{
				$('#contact').prepend('<iframe frameborder="0" border="0"></iframe>');
				$('#contact iframe').css('height', ($('#contact .content').innerHeight() - 10) + 'px');
			}
			
			$('#contactWrap').bind('mouseleave', function(evt) {
				$('#contact').hide();
				$(this).unbind('mouseleave');
			});
		});
		/* Language nav */
		$('#navLanguageBtn').bind('click', function(evt) {
			evt.preventDefault();
			$('#navLanguage').toggle();
			$('#navLanguageWrap').bind('mouseleave', function(evt) {
				$('#navLanguage').hide();
				$(this).unbind('mouseleave');
			});
		});


		/* Cufon */
		if (location.search.indexOf('type=30') == -1) {
			Cufon('h4');
		}
		Cufon($('h3').not('.nocufon'));
		Cufon('h2');
		Cufon('.product-latest h5');
		Cufon('a.homeLink');
		Cufon.replace('h1');
		Cufon('.quick-search legend');
		Cufon('.poll .question');
		Cufon('.home #highlightTab a.button');
		Cufon('.home #highlightTab .description');

		/* Markets Quickview button */
		$('a#quickViewButton').bind('click', function(evt) {
			evt.preventDefault();
			$('#quickViewContent').slideToggle();
			$('#footer').slideToggle(200);
		});

		/* Product filtering */
		$('#filter-container a.expand').bind('click', function(evt) {
			evt.preventDefault();
			$(this).toggleClass('collapse').next('div').slideToggle().css('width', ($(this).parent().outerWidth() - 2)+'px');
			
			if ($(this).hasClass('collapse'))
			{
				$(this).parent().addClass('expanded');
			}
			else
			{
				$(this).parent().removeClass('expanded');
			}
		});
		
		/* Product filtering */
		$('.filter a').each(function() {if ($(this).html() == '') $(this).parent().remove()});

		/* Markets Flash */
		if ($('#marktkoersen').length > 0) {
			// Default values
			languageSettings = new Object();
			languageSettings = {
				fvMarketServiceGateway : '/?eID=abn_amro_markets',
				fvUpdateInterval : '180',
				fvSeperator: ",",
				fvLanguage: "nl",
				fvLanguageBaseUrl: "/fileadmin/templates/res/flash/marketoverview/xml/"
			};
			
			// Change values for English site
			if (jQuery('body').hasClass('lang-en')) {
				languageSettings.fvSeperator = ".";
				languageSettings.fvLanguage = "en";
			}
			if (jQuery('body').hasClass('lang-fr')) {
				languageSettings.fvSeperator = ".";
				languageSettings.fvLanguage = "fr";
			}
			
			swfobject.embedSWF(
				'/fileadmin/templates/res/flash/marketoverview/marketoverview.swf?v=20110517',
				'marktkoersen',
				'300',
				'390',
				'9.0.0',
				null,
				languageSettings,
				{wmode : 'transparent'},
				{});
		}
		if ($("#highlightTab").length > 0)
        {
			// Default values
			languageSettings = new Object();
			languageSettings = {
				fvUpdateInterval : '2',
				fvSeperator: ",",
				fvLanguage: "nl",
				fvLanguageBaseUrl: "/fileadmin/templates/res/flash/hometabs/xml/",
				fvHighlightServiceGateway: "/?eID=abn_amro_markets_highlighttab",
				fvTurboServiceGateway: "/?eID=abn_amro_markets_turbo_tip_rate",
				fvTimer: "5"
			};
			
			// Change values for English site
			if (jQuery('body').hasClass('lang-en')) {
				languageSettings.fvSeperator = ".";
				languageSettings.fvLanguage = "en";
			}
			
            swfobject.embedSWF(
                "/fileadmin/templates/res/flash/hometabs/hometabs.swf",
                "highlightTab",
                "670",
                "390",
                "9.0.0",                
				null,
				languageSettings
				, {}, {});
        }
		if ($('#markets-widget').length > 0) {
				swfobject.embedSWF(
					'/fileadmin/templates/res/flash/badge.swf',
					'markets-widget',
					'217',
					'180',
					'9.0.0',
					null,
					{appname : 'ABN%20AMRO%20Markets',
						appurl : 'http://www.abnamromarkets.nl/fileadmin/templates/res/flash/marketoverview.air',
						airversion : '1.1',
						imageurl : 'http://www.abnamromarkets.nl/fileadmin/templates/html/images/sample.jpg'},
					{wmode : 'transparent'},
					{});
		}
		if ($('#carrousel').length > 0) {
			swfobject.embedSWF(
				'/fileadmin/templates/res/flash/homeportal.swf',
				'carrousel',
				'670',
				'390',
				'9.0.0',
				null,
				{fvMarketServiceGateway : '/?eID=abn_amro_markets_highlight',
					fvTimer : '10'},
				{wmode : 'transparent'},
				{});
		}

		$('.top-tabs ul#period-tabs>li').each(function() {
			$(this).bind('click', function(evt) {
				var open = ($(this).attr('id'));
				$('.top-tabs ul#period-tabs>li').each(function() {
					$(this).removeAttr('class');
				});
				$('.top-turbo .top-turbo-overview tr[class!=header]').hide();
				$('.top-turbo .top-turbo-overview tr.' + open).show();
				$('.top-tabs ul li#' + open).addClass('active');
				$('input#top_active_tab').attr('value', open);
				evt.preventDefault();
			});
		});
		$('.top-tabs ul#short-long-tabs>li').each(function() {
			$(this).bind('click', function(evt) {
				var open = ($(this).attr('id'));
				$('.top-tabs ul#short-long-tabs>li').each(function() {
					$(this).removeAttr('class');
				});
				$('.top-traded-turbo .top-turbo-overview tr[class!=header]').hide();
				$('.top-traded-turbo .top-turbo-overview tr.' + open).show();
				$('.top-tabs ul li#' + open).addClass('active');
				evt.preventDefault();
			});
		});
		$('select#underlying_type').bind('change', function(evt) {
			$(this).attr('form').submit();
		});

		if ($('.ended-search').length > 0) {
			var initSearchValueEnded = $('.ended-search input.searchField').attr('title');
			if ($('.ended-search input.searchField').val() == '') {
				$('.ended-search input.searchField').val(initSearchValueEnded);
			}
			$('.ended-search input.searchField').bind('focus', function(evt) {
				if ($(this).val() == initSearchValueEnded) {
					$(this).val('');
				}
			}).bind('blur', function(evt) {
				if ($(this).val() == '') {
					$(this).val(initSearchValueEnded);
				}
			});
			$('.search-information form').bind('submit', function(evt) {
				if ($('.ended-search input.searchField').val() == initSearchValueEnded) {
					$('.ended-search input.searchField').val('');
				}
			});
			$('.search-information .searchPeriod').bind('change', function(evt) {
				if ($('.ended-search input.searchField').val() == initSearchValueEnded) {
					$('.ended-search input.searchField').val('');
				}
				$(this).attr('form').submit();
			});
		}

		$('#filter-container input[type=checkbox]').bind('click', function(evt) {
			$('#filter-container label').addClass('disabled');
			$(this).attr('form').submit();
			evt.preventDefault();
		});
		$('#filter-container label').bind('click', function(evt) {
			if (this.className != 'disabled') {
				var checkbox = $(this).prev('input#' + $(this).attr('for'));
				checkbox.attr('checked', !checkbox.attr('checked'));
				checkbox.click();
			}
			evt.preventDefault();
		});
		$('#quickLinks').bind('click', function(evt) {
			$('#quickLinks div.links').slideToggle('fast');
		});
		$('#quickLinks').bind('mouseleave', function(evt) {
			$('#quickLinks div.links').slideUp('fast');
		});
		$('#disclaimer-link').bind('click', function(evt) {
			evt.preventDefault();
			$('#privacy-text').hide();
			$('#disclaimer-text').toggle();
		});
		$('#privacy-link').bind('click', function(evt) {
			evt.preventDefault();
			$('#disclaimer-text').hide();
			$('#privacy-text').toggle();
		});
		$('#agree').bind('click', function(evt) {
			$('#agree-submit').toggleClass('on');
			if ($('#agree-submit').attr("disabled") == true) {
				$('#agree-submit').removeAttr("disabled");
			} else {
				$('#agree-submit').attr("disabled", true);
			}
		});
		$('#unsubscribe-link').bind('click', function(evt) {
			evt.preventDefault();
			$('#unsubscribe-form').toggle();
		});
		// Product autocomplete
		autoComplete.init();
		
		// Turbo class fix
		if ($('body').attr('class').indexOf('turbo\'s') > -1) {
			$('body').addClass('turbo');
		}

		// Print popup
		$('a.print').bind('click', function(evt) {
			evt.preventDefault();
			window.open($(this).attr('href'), 'print', 'scrollbars=yes,location=1,toolbar=1,menubar=yes,width=730,height=768');
		});
		if ($('body').hasClass('print')) {
			window.print();
		}
		
		if (document.referrer)
		{
			$(".news-single-backlink a").each(function() {
				var rx = new RegExp("^https?://" + document.domain,"i");
				if (rx.test(document.referrer))
				{
					$(this).attr("href", document.referrer);
				}
			});
		}
		
		if (jQuery('body').hasClass('lang-fr')) {
			autoCompleteOptions.extraParams.L = '1';
		}

	});
	
})(jQuery);

var autoCompleteOptions = {
	max: 15,
	minChars: 3,
	scroll: false,
	scrollHeight: 200,
	topOffset: 7,
	leftOffset: -7,
	width: 273,
	formatItem : function(item) {
		return item[0];
	},
	extraParams: {}
};

/* Alter values for iframed setup */
if (location.search.indexOf('type=30') > -1)
{
	autoCompleteOptions.width = 235;
	autoCompleteOptions.leftOffset = -57;
	autoCompleteOptions.extraParams.type = 30;
}

var autoComplete = {
	initialized : false,
	init : function() {
		jQuery('#productQuickSearch .quick-search .searchField').autocomplete(
			'/index.php?eID=abn_amro_markets_product_autocomplete',
			autoCompleteOptions).result(autoComplete.result);
	},
	result : function(event, data, formatted) {
		window.location = data[1];
	}

};

function badgeClicked (clickType)
{
	// ClickType can be: INSTALL_AIR_APP, INSTALL_APP, INSTALL_FAIL
	_gaq.push(['_trackPageview', '/meer-informatie/abn-amro-markets-on-air/' + clickType]);
}

function calculatorUrl (url)
{
	jQuery.modal("<div><h1>"+url+"</h1></div>")
}

/* Default TYPO3 JS */
var browserName=navigator.appName,browserVer=parseInt(navigator.appVersion),version="",msie4=(browserName=="Microsoft Internet Explorer"&&browserVer>=4);if((browserName=="Netscape"&&browserVer>=3)||msie4||browserName=="Konqueror"||browserName=="Opera"){version="n3"}else version="n2"
function blurLink(theObject){if(msie4)theObject.blur()}
function decryptCharcode(n,start,end,offset){n=n+offset;if(offset>0&&n>end){n=start+(n-end-1)}else if(offset<0&&n<start)n=end-(start-n-1);return String.fromCharCode(n)}
function decryptString(enc,offset){var dec="",len=enc.length;for(var i=0;i<len;i++){var n=enc.charCodeAt(i);if(n>=0x2B&&n<=0x3A){dec+=decryptCharcode(n,0x2B,0x3A,offset)}else if(n>=0x40&&n<=0x5A){dec+=decryptCharcode(n,0x40,0x5A,offset)}else if(n>=0x61&&n<=0x7A){dec+=decryptCharcode(n,0x61,0x7A,offset)}else dec+=enc.charAt(i)};return dec}
function linkTo_UnCryptMailto(s){location.href=decryptString(s,-2)};

