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 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;			
			}
		}); 	
	
// 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 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');});
