$(document).ready(function() {
	try {			
		window.user = new UserProfile();		
		window.currentUser = window.user;		
		$("a.ajaxLink").each(function(){
			$(this).click(function(){				
				window.thisUrl = document.location;
				var targetUrl = $(this).attr("href");
				var ajaxHost = "";
				
				if(window.location && window.location.assign){
					window.location.assign(targetUrl);
				}
				else {
					document.location = targetUrl;
				}
				
				var href = ajaxHost + $(this).attr("backgroundLoad");
				
				if(tracking && typeof(tracking.setPopulationGroups) == "function" && tracking.populations){					
					if(stateManager && stateManager.readCookie("trusteer.status1") == "remind"){
						tracking.setPopulationGroups("++" + tracking.populations.rapportDownload2);					
					}
					else {						
						tracking.setPopulationGroups("++" + tracking.populations.rapportDownload1);
					}
				}
				
				$("#container").load(href + " #container>div", function() {
					if(typeof(DynamicCorners) == "object" && typeof(DynamicCorners.initialise) == "function") {
						DynamicCorners.initialise();
					}
					$("a.refreshButton").click(function() {
						document.location.reload();							
					});
					$("#menu").each(function() {
						$(this).css("visibility", "visible");
						$(this).find("a.back").each(function() {						
							$(this).unbind("click");
							$(this).click(function() {
								try {
									document.location = window.thisUrl;
									return false;
								}
								catch(e){
								}
							});
						});
					});
				});
				return false;
			});
		});
		
		//Regular expressions for online banking/ibanking strings 
		var hrefMatch = /(ANYTIME-UK-LOGON|ANYTIME-IE-LOGON)$/i;
		$('a').filter(function(){				
				return hrefMatch.test($(this).attr('href'));
				}).each (function(){
				$(this).click(function() {
			    if(typeof trackLoginClick == 'function')
			        trackLoginClick("event8");
			    });
				if(!($(this).hasClass("rapportRemind") || $(this).hasClass("skipCheck") || $(this).hasClass("rapportExclude"))){				
						var olbUrl = $(this).attr("href");
						var olbString = olbUrl.substr(9);
						var trusteerUrl;
						switch(olbString)
							{
								case 'ANYTIME-UK-LOGON':
									trusteerUrl="trusteer.niinterstitial.url";					
								  break;							
								case 'ANYTIME-IE-LOGON':
									trusteerUrl="trusteer.roiinterstitial.url";
								  break;
							   default: 
									trusteerUrl="trusteer.niinterstitial.url";
								  break;
							};
						
						$(this).attr("href",window.user.getRedirect(trusteerUrl,"trusteer.enabled1=true"));
					}
					else {			
						if($(this).hasClass("rapportExclude")){
							$(this).click(function() {
								user.redirect = $(this).attr("href");						
								if(tracking && typeof(tracking.setPopulationGroups) == "function" && tracking.populations){
									if(stateManager && stateManager.readCookie("trusteer.status1") == "remind"){
										tracking.setPopulationGroups("++" + tracking.populations.rapportRemindThenExclude);
									}
									else {
										tracking.setPopulationGroups("++" + tracking.populations.rapportExclude);
									}
								}
								
								if(window.user != null) {
									user.onUpdate = function() {
										document.location.href = this.redirect;
									};
									user.updateSettings([{name:"trusteer.enabled1",value:"false"},{name:"trusteer.status1",value:"excluded"}]);
									return false;
								}
								return false;
							});
						}
						else {				
							if($(this).hasClass("rapportRemind")){
								$(this).click(function() {
									user.redirect = $(this).attr("href");
									
									if(tracking && typeof(tracking.setPopulationGroups) == "function" && tracking.populations){
										tracking.setPopulationGroups("++" + tracking.populations.rapportRemind);
									}
									
									if(window.user != null) {
										user.onUpdate = function() {
											document.location.href = this.redirect;
										};
										user.updateSettings([{name:"trusteer.status1",value:"remind"}]);
										return false;
									}
								});
							}
						}
					}						
		});
				
	}
	catch(err){
		if(window.console) {
			console.debug("OLB Rapport Error:" + err.message);
		}
	}
});
