var $j=jQuery.noConflict();
var alertText = "Please be advised that you are leaving Kleberg Bank's website. This link is provided as a courtesy.  Kleberg Bank does not endorse or control the content of third party websites.";
var emailAlertText = "Kleberg Bank reminds you that sending e-mail to this e-mail address is not necessarily secure against interception. If your information is very sensitive, or includes personal or confidential information, such as your account, ATM, check card or Social Security number, you should either send it to us using the secure-mail link that is available through our Internet Banking product or send it to us by postal mail. ";
var customFolder = "klebergbank";
var slideSpeed = 500;
var tabEffect = "fade";	//slide, fade
jQuery.fn.defuscate = function( settings ) {
    settings = jQuery.extend({
        link: true
    }, settings);
    var regex = /\b([A-Z0-9._%-]+)\([^)]+\)((?:[A-Z0-9-]+\.)+[A-Z]{2,6})\b/gi;
    return this.each(function() {
        if ( $j(this).is('a[@href]') ) {
            // If it's an <a> element, defuscate the href attribute
            $j(this).attr('href', $j(this).attr('href').replace(regex, '$1@$2'));
            // Make sure that the element's contents is not made into a link
            var is_link = true;
            //alert($(this).attr('href'));
        }
        // Defuscate the element's contents
        $j(this).html($j(this).html().replace(regex, (settings.link && !is_link ? '<a href="mailto:$1@$2">$1@$2</a>' : '$1@$2')));
  });
}

$j(document).ready( function() {

	productTabs();
	initAccordion();
	$j(".confirm").click( function() {						   
			if (!confirmAlert($j(this).attr('href'))){
				return false;			
			}
		}); 	
	$j(".emailConfirm").click( function() {						   
			if (!emailAlert($j(this).attr('href'))){
				return false;			
			}
	});
	
// new page for INMO
	$j('a.newPage').each( function(){
		this.target = "_blank";
	});
// Product Details DT
	if( $j('#productTabs').length > 0 ){
		$j('#productTabs dt:first').addClass('firstChild');
	}
// fancybox popup on apps
	if ($j('a#ssnWhy').length > 0) {
		$j("a#ssnWhy").fancybox({
			'frameWidth': 300,
			'frameHeight': 190
		});
	}
// Tell Me More - SAF - Calculators - OBL Popup provided by FancyBox 
	if ($j('#tellMeMoreButton a').length > 0) {
		$j('#tellMeMoreButton a').addClass('iframe');
		$j("#tellMeMoreButton a").fancybox({
			'hideOnContentClick': false,
			'frameWidth': 550,
			'frameHeight': 430,
			'overlayOpacity': 0.8
		});
	}
/*	if ($j('#quickLinks li').length > 0) {
		$j('#quickLinks li.nthChild-2 a').addClass('iframe');
		$j('#quickLinks li.nthChild-3 a').addClass('iframe'); 
		$j('#quickLinks li.nthChild-2 a').fancybox({
			'hideOnContentClick': false,
			'frameWidth': 450,
			'frameHeight': 250,
			'overlayOpacity': 0.8
		});
		$j('#quickLinks li.nthChild-3 a').fancybox({
			'hideOnContentClick': false,
			'frameWidth': 450,
			'frameHeight': 200,
			'overlayOpacity': 0.8
		});
	}*/
	if ($j('#shareButton a').length > 0) {
		$j('#shareButton a').addClass('iframe');
		$j("#shareButton a").fancybox({
			'hideOnContentClick': false,
			'frameWidth': 550,
			'frameHeight': 500,
			'overlayOpacity': 0.8
		});
	}
	if ($j('#tagDisclosure').length > 0) {
		$j("#tagDisclosure a").fancybox({
			'hideOnContentClick': false,
			'frameWidth': 550,
			'frameHeight': 300,
			'overlayOpacity': 0.8
		});
	}
	
	if ($j('#jobListing').length > 0) {
		$j('#jobListing h2:first').addClass('firstChild');
		$j('#jobListing p.textVariant1:last').addClass('lastChild');
		$j('#jobApplyNow a').attr('target','_top');
	}
	if ($j('#newApplication').length > 0) {
		$j('#contentWrapper').css('background-image','none');
	}
/*	stand alone online banking link
	$j('#downstreamObl a').addClass('iframe');
	
	$j("#downstreamObl a").fancybox({
		'hideOnContentClick': false,
		'frameWidth': 570,
		'frameHeight': 520,
		'overlayOpacity': 0.8
	});*/
	
	// online banking link in ultratopnav
	if ( $j('#olbButtonWrapper h3 a').length > 0) {
		$j('#olbButtonWrapper h3 a').addClass('iframe');
		$j("#olbButtonWrapper a.iframe").fancybox({
			'hideOnContentClick': false,
			'frameWidth': 300,
			'frameHeight': 150,
			'overlayOpacity': 0.8
		});
	}
	if ( $j('#financialCalculators li a').length > 0) {
		$j('#financialCalculators li a').addClass('iframe');
		$j("#financialCalculators li a").fancybox({
			'hideOnContentClick': false,
			'frameWidth': 650,
			'frameHeight': 400,
			'overlayOpacity': 0.8
		});
	}

// End of Fancybox jQuery

// Online Account Opening Fade Effect 
	if ($j('#openAccountWrapper').length > 0) {
		$j('#openAccountNormal').css('opacity','1');
		$j('#openAccountHover').css('opacity','0').css('display','block');
		$j('#openAccountWrapper').mouseover( function(){
			$j('#openAccountNormal').stop().fadeTo(400, 0);
			$j('#openAccountHover').stop().fadeTo(400, 1);
		}).mouseout( function(){
			$j('#openAccountHover').stop().fadeTo(1000, 0);
			$j('#openAccountNormal').stop().fadeTo(1000, 1);
		});
	}
	
	if ($j('#olbButtonWrapper').length > 0) {
		$j('#olbButton').css('opacity','1');
		$j('#olbButtonHover').css('opacity','0').css('display','block');
		$j('#olbButtonWrapper').mouseover( function(){
			$j('#olbButton').stop().fadeTo(400, 0);
			$j('#olbButtonHover').stop().fadeTo(400, 1);
		}).mouseout( function(){
			$j('#olbButtonHover').stop().fadeTo(1000, 0);
			$j('#olbButton').stop().fadeTo(1000, 1);
		});
	}
// Online Security Page 
if($j('#securityServices').length > 0) {
	$j('#securityServices ul:last').find('li').addClass('decimal');
}
if($j('#persistentCookies').length > 0) {
	$j('#persistentCookies ul li').addClass('lowerAlpha');
	$j('#persistentCookies ul:first').find('li').removeClass('lowerAlpha');
}
if($j('#onlineSecurity').length > 0) {
	$j('div#onlineSecurity h2.clickable').hover(function(){
		$j(this).css('color','#990000');
	}, function(){
		$j(this).css('color','#333');
	});
	$j('div#onlineSecurity div.securitySection').hide();
	$j('div#onlineSecurity h2.clickable').click(function() {
		
		var $nextDiv = $j(this).next();
		$nextDiv.slideToggle('slow');
		/*
		var $visibleSiblings = $nextDiv.siblings('div:visible');
		if ($visibleSiblings.length ) {
			$visibleSiblings.slideUp('slow', function() {
				
			});
		} else {
			$nextDiv.slideToggle('slow');
		}
		*/
	});
}
$j('h2.clickable').toggle(function(){
	$j(this).css('background-position','left -20px');
}, function(){
	$j(this).css('background-position','left 2px');
});
if($j('#mortgageProfessional').length > 0) {
	$j('a').defuscate();
}

// Category Hover Toggle
/*
	$j("#featuredWrapper").click(function(){
		window.location=$j(this).find("a").attr("href");
	});
*/
	$j("#productCategory ul li").click(function(){
		window.location=$j(this).find("a").attr("href");
	});
	
	$j("#productCategory ul li").hover(
		function(){
			$j(this).find("h3 a").css("color", "#990000").css("background-position","right 3px");
			$j(this).find("h4 a").css("background-position", "0 -29px");
		}, function() {
			$j(this).find("h3 a").css("color", "#212121").css("background-position","right -20px");
			$j(this).find("h4 a").css("background-position", "left top");
		}
	);
/*
	$j('#featuredWrapper').hover(
		function(){
			$j(this).find('#fpLearnMore a').css('background-position','left -29px');
			$j(this).find('h1').css('color','#990000').css('background-position','right -41px');
		}, function() {
			$j(this).find('#fpLearnMore a').css('background-position','left top');
			$j(this).find('h1').css('color','#222222').css('background-position','right 9px');
		}
	);
*/
// Search Results Hover Toggle
	$j('#searchResults li').click(function(){
		window.location=$j(this).find('a').attr('href');
	});
	
	$j('#searchResults li').hover(
		function(){
			$j(this).find('h3 a').css('color','#990000').css('background-position','right 3px');
			$j(this).find('h4 a').css('background-position', '0 -29px');
		}, function() {
			$j(this).find('h3 a').css('color','#212121').css('background-position','right -20px');
			$j(this).find('h4 a').css('background-position','left top');
		}
	);
// Locations Toggle
	if ( $j('#locations .timeValue').length > 0 ){
		$j('#locations .timeValue:empty').each(function(){
			$j(this).prev().addClass('extraWidth');
		});
	}
	function initAccordion() {
		$j('#locations #locList .moreInfo').addClass('moreInfoShow');
		$j('#locations #locList .locInfo').addClass('locInfoShow');
		$j('#locations #locList .locationBody').hide();
		$j('#locations #locList .locationBody:first').show();
		$j('#locations #locList .vcard:first').addClass('selected');
		$j('#locations #locList .locationHeader').click(function() {
			var locWrapper = $j(this).parents('.vcard');
			var locContent = locWrapper.children('.locationBody');
			if((locContent.is('.locationBody')) && (locContent.is(':visible'))) {
				return false;
			}
			if((locContent.is('.locationBody')) && (!locContent.is(':visible'))) {
				$j('li.vcard .locationBody:visible').parents('.vcard').removeClass('selected');
				$j('li.vcard h2').css('color','#333333');
				$j('li.vcard .moreInfo').css('color','#333333').css('background-position','left 2px');
				$j('li.vcard .locationBody:visible').slideUp('normal');
				locContent.parents('.vcard').addClass('selected');
				locContent.slideDown('normal');
				return false;
			}
		});
	}

	$j('#locations #locList .locationHeader').mouseover(function() {
		if($j(this).parent('.vcard').hasClass('selected') == true) {
			return false;
		}
		else {
			$j(this).find('h2').css('color','#990000');
			$j(this).find('.moreInfo').css('color',"#990000").css('background-position','left -15px');
		
		}
	});
	$j('#locations #locList .locationHeader').mouseout(function() {
		if($j(this).parent('.vcard').hasClass('selected') == true) {
			return false;
		}
		else {
			$j(this).find('h2').css('color','#333333');
			$j(this).find('.moreInfo').css('color','#333333').css('background-position','left 2px');
		}
	});
	$j('#atmLocations h2').each(function(){
		if($j(this).html().indexOf('(') > -1) {
			var atmText = $j(this).text();
			var atmReplaced = atmText.replace('(','<span class="secondLine">(').replace(')',')</span>');
			$j(this).html(atmReplaced);
		}
	});
	if ($j('.individualPage').length > 0) {
		$j('.individualContent > *:first').addClass('noTop');
	}
	if ( $j('body#onlineBanking').length > 0) {
		$j('body#onlineBanking #obNav li a').attr('target','_top');
	}
//Twitter Feed Stuff
	/*
	var theTwitterUsername = "sbtTweets";
    var statusUpdateURL = "https://www.sbtbanknow.com/custom/suburbanbanktrust/tal/getStatus.php";
	$j('#twitterFeed2').load(statusUpdateURL, {twitterUsername: theTwitterUsername});
	*/

// hide homepage noscript link
/*var flashLink = $j("body#homepage #mainContent > a"); 
flashLink.children().insertBefore(flashLink);  
flashLink.remove(); 
*/
// Online Banking FAQ
	var getFAQ = $get();
	if( getFAQ.tab != null ) {
		var offset = 40;
		$j('#productTabs dt:eq(0)').removeClass('selected');
		$j('#productTabs dt:eq(2)').addClass('selected');
		$j('#productTabs dd:eq(0)').hide();
		$j('#productTabs dd:eq(2)').show();
		$j('#productTabs').css('height', $j('#productTabs dd:eq(2)').height() + offset);
	}
	
/* Job Listings and Employment Applications */
	if( $j('#jobOpenings td.nth-column-6').length > 0 ){
		$j('#jobOpenings td.nth-column-6 a').click( function(){
			wasClicked = $j(this).parent().prev().prev().prev().prev().prev().text();
			wasClickedTitle = $j(this).parent().prev().prev().prev().prev().text();
		});
	}
	if( $j('#employment_application-position').length > 0 ){
		var get = $get();
		if( get.jobId != null && get.jobTitle != null) {
			var jobIdValue = get.jobId;
			var jobTitleValue = get.jobTitle;
			for(i=0;i<jobIdValue.length;i++) {
				if(jobIdValue.indexOf('%20') > -1) {
					jobIdValue = jobIdValue.replace('%20',' ');
				}
			}
			for(i=0;i<jobTitleValue.length;i++) {
				if(jobTitleValue.indexOf('%20') > -1) {
					jobTitleValue = jobTitleValue.replace('%20',' ');
				}
			}
			$j('#employment_application-job_number').attr('value',jobIdValue);
			$j('#employment_application-job_number').attr('readonly','readonly');
			$j('#employment_application-position').attr('value',jobTitleValue);
			$j('#employment_application-position').attr('readonly','readonly');
			
		}
	}
	$j('body').ajaxComplete(function() {
		if( $j('#jobApplyNow').length > 0 ){
			if( !$j('#jobApplyNow').hasClass('alreadyAdded') ){
				$j('#jobApplyNow').addClass('alreadyAdded');
				var newHref = $j('#jobApplyNow').children().attr('href') + '&jobId=' + wasClicked + '&jobTitle=' + wasClickedTitle;
				$j('#jobApplyNow').children().attr('href', newHref);
			}
		}
	});
}); // END doc ready

function $get(key,url){  
    if(arguments.length < 2) url =location.href;  
    if(arguments.length > 0 && key != ""){  
        if(key == "#"){  
            var regex = new RegExp("[#]([^$]*)");  
        } else if(key == "?"){  
            var regex = new RegExp("[?]([^#$]*)");  
        } else {  
            var regex = new RegExp("[?&]"+key+"=([^&#]*)");  
        }  
        var results = regex.exec(url);  
        return (results == null )? "" : results[1];  
    } else {  
        url = url.split("?");  
        var results = {};  
            if(url.length > 1){  
                url = url[1].split("#");  
                if(url.length > 1) results["hash"] = url[1];  
                url[0].split("&").each(function(item,index){  
                    item = item.split("=");  
                    results[item[0]] = item[1];  
                });  
            }  
        return results;  
    }  
}
function confirmAlert(url){
			jConfirm(alertText, "Confirm", function(r) {
				if( r ){
					window.open(url);
				} else {
					return false;
			}
		});
		return false;
}

function confirmAlert2(url){
	if (!confirmAlert(url)) 
		return false; 
}
function emailAlert(url){
			jConfirm(emailAlertText, "Confirm", function(r) {
				if( r ) {					
					window.open(url);
				} else {
					return false;
			}
		});
		return false;
}

function productTabs(){
	if( $j('#productTabs').length > 0 ){
		var offset = 40;
		$j('#productTabs dt').addClass('label');
		$j('#productTabs dt:eq(0)').addClass('selected');
		$j('#productTabs dd').addClass('pane');
		$j('#productTabs dd:eq(1), #productTabs dd:eq(2), #productTabs dd:eq(3)').hide();
		$j('#productTabs').css('height', $j('#productTabs dd:eq(0)').height() + offset);
		
		$j('#productTabs dt').click( function(){
			var holdThis = $j(this);
			if( !holdThis.hasClass('selected') ){
				$j('#productTabs dt').removeClass('selected');
				holdThis.addClass('selected');
				if(tabEffect == "slide"){
					$j('#productTabs dd').slideUp(slideSpeed);
					$j('#productTabs').animate({ height : holdThis.next().height() + offset }, slideSpeed, function(){
						holdThis.next().slideDown(slideSpeed);									 
					});
				}
				else{
					$j('#productTabs dd').fadeOut(slideSpeed);
					$j('#productTabs').animate({ height : holdThis.next().height() + offset }, slideSpeed, function(){
						holdThis.next().fadeIn(slideSpeed);									 
					});
				}
			}
		});
	}
}

/* add images for addPrintLink  */
/*$j('#logo a').after('<img src="/custom/' + customFolder + '/image/logo.png" alt="BANK NAME"/>');
$j('#footer #firstROI').after('<img class="froiLogo" src="/custom/' + customFolder + '/image/firstroi-logo.png" alt="First ROI"/>');*/

/* addPrintLink function by Roger Johansson, www.456bereastreet.com */
var addPrintLink = {
	init:function(sTargetEl,sLinkText) {
		if (!document.getElementById || !document.createTextNode) {return;} // Check for DOM support
		if (!document.getElementById(sTargetEl)) {return;} // Check that the target element actually exists
		if (!window.print) {return;} // Check that the browser supports window.print
		var oTarget = document.getElementById(sTargetEl);
		var oLink = document.createElement('a');
		oLink.id = 'printLink'; // Give the link an id to allow styling
		oLink.href = '#'; // Make the link focusable for keyboard users
		oLink.appendChild(document.createTextNode(sLinkText));
		oLink.onclick = function() {window.print(); return false;} // Return false prevents the browser from following the link and jumping to the top of the page after printing
		oTarget.appendChild(oLink);
	},
/*
addEvent function included here for portability. Replace with your own addEvent function if you use one.
*/
/* addEvent function from http://www.quirksmode.org/blog/archives/2005/10/_and_the_winner_1.html */
	addEvent:function(obj, type, fn) {
		if (obj.addEventListener)
			obj.addEventListener(type, fn, false);
		else if (obj.attachEvent) {
			obj["e"+type+fn] = fn;
			obj[type+fn] = function() {obj["e"+type+fn](window.event);}
			obj.attachEvent("on"+type, obj[type+fn]);
		}
	}
};
addPrintLink.addEvent(window, 'load', function(){addPrintLink.init('printThisPage','Print this page');});

