var $j=jQuery.noConflict();
var alertText = "Please be advised that you are leaving Northern Skies FCU's website. This link is provided as a courtesy. Northern Skies FCU does not endorse or control the content of third party websites.";
var customFolder = "northernskiesfcu";
var slideSpeed = 500;
var tabEffect = "fade";

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

	productTabs();
	
	// replace body.nojs with .js
	$j('body').removeClass('nojs').addClass('js');
	
	// add link to home page static flash and replace image with png for transparency
	if($j('#flashBanner img').length){
		$j(window).load(function(){ 
			$j('#flashBanner img').attr('src','/custom/northernskiesfcu/image/flash-temp.png').wrap('<a href="/loans/auto-loans.html"/>');
		}); 
	}
	
	// starfield - add background to span and fade div
	// container so ie doesn't add black outline on transparent images	
	var starfield = '<div id="stars1"><span></span></div><div id="stars2"><span></span></div><div id="stars3"><span></span></div>';
	$j("body").not("body.popup").append(starfield);
	var stars1 = $j("#stars1");
	var stars2 = $j("#stars2");
	var stars3 = $j("#stars3");
	// animate stars
	function animateStars (){
		$j(stars1).fadeOut(300).delay(200).fadeIn(250);
		$j(stars2).fadeIn(200).delay(300).fadeOut(200);
		$j(stars3).fadeOut(300).delay(100).fadeIn(300);
	}
	
	// get the window width
	var windowWidth = window.innerWidth || document.body.clientWidth
	// continuously cycle the stars
	var cycleStars = setInterval(animateStars, 4000);
	
	// add shooting star and animate
	var shootingStarContainer = '<div id="shootingStar"><span></span></div>';
	$j("body").not("body.popup").append(shootingStarContainer);
	var shootingStar = $j('#shootingStar');
	
	function animateShootingStar (){
		// keep the star in the upper left on the home page and in IE
		if ((location.href.indexOf("index") != -1) || $j.browser.msie ) {
			$j(shootingStar).fadeIn(100).animate({left: '+=375', top: '+=375'}, 1700).fadeOut(200);
		} else {
		// make it random and less noticeable on other pages
			var randomWidth = Math.floor(Math.random()*windowWidth) - 400;
			var newLeftPosition = randomWidth + 'px';
			$j(shootingStar).css({left: newLeftPosition, opacity: '.6'})
			.fadeIn(100).animate({left: '+=350', top: '+=350'}, 1800).fadeOut(200);
		}
	}
	// animate the star 2.5 seconds after the page loads
	var moveShootingStar = setTimeout(animateShootingStar, 2500);
	
	// cufon that mook font
	Cufon.set("selector", jQuery);
	Cufon.replace("#primaryNav a, #quickLinks a, #catDescription h1", { textShadow: "#333 1px 1px 4px", separate: "words", hover: true  });
	Cufon.replace("#featuredProducts h3, #featuredProducts h4, #leftNav h2, #catContent h3, a.catImage, #productSummary h1, .individualPage h1, #applyNow a, #productTabs dt, button.submitButton, body.popup h1, #applicationPage h1", { separate: "words", hover: true  });
	
	// ncua footer disclaimer #ncuaDisclaimer
	$j('#ncua').mouseover(function() {
		$j('#ncuaDisclaimer').stop(true,true).fadeIn(200);
	});
	$j('#ncuaDisclaimer').mouseleave(function() {
		$j('#ncuaDisclaimer').stop(true,true).fadeOut(200);
	});
	
	// primary nav
	$j("#primaryNav li a").hover(
		function() {
		$j(this).stop().animate({height : "23px"}, 250);
	},
		function(){
		$j(this).stop().animate({height : "17px"}, 150);
	});
	
	// home page featured products
	if($j("#home").length){
		var featuredLi = $j("#featuredProducts li");
		$j(featuredLi).css('cursor','pointer');
		$j(featuredLi).hover(
			function() {
				$j(this).css('backgroundPosition','0 -161px');
				$j(this).find("h3 a").css('color','#2D406B');
				$j(this).find("h4 a").css('color','#4288AC');
				Cufon.refresh();
				$j(this).find("div.image").stop(true, true).fadeOut(200);
				//$j(this).find("span.imageOver").stop(true, true).fadeIn(200);
			},
			function(){
				$j(this).css('backgroundPosition','0 0');
				$j(this).find("h3 a").css('color','#2D241F');
				$j(this).find("h4 a").css('color','#223866');
				Cufon.refresh();
				$j(this).find("div.image").stop(true, true).fadeIn(250);
				//$j(this).find("span.imageOver").stop(true, true).fadeOut(250);
		});
	} // END ome page featured products
	
	// category page hover
	if($j("#catContent").length){
		var catLi = $j("#catContent > li");
		$j(catLi).css('cursor','pointer');
		// add a span to hold the hover bg
		$j(catLi).append("<span class='catLiBg'></span>");
		$j(catLi).hover(
			function() {
				$j(this).find("a").css('color','#4288AC');
				Cufon.refresh();
				$j(this).find("span.catLiBg").stop(true, true).fadeIn(300);
			},
			function(){
				$j(this).find("a").css('color','#333333');
				Cufon.refresh();
				$j(this).find("span.catLiBg").stop(true, true).fadeOut(250);
		});
	} // END category page hover
	
	// clickable container
	$j('#featuredProducts li, ul#catContent li').click(function(){
		window.location=$j(this).find("a").attr("href");
	});
	
	// clickable container on search results
	if($j('#search').length){
		var searchLi = $j('#search ul li');
		$j(searchLi).live('click',function(){
			window.location=$j(this).find("a").attr("href");
		});
	}
	// open obl popup links in _parent
	if($j('#oblPopup ul#obNav li a').length){
		$j('#oblPopup ul#obNav li a').attr('target','_parent');
	}	

	$j(".confirm").click( function() {						   
		if (!confirmAlert($j(this).attr('href'))){
			return false;			
		}
	});

	// New page for INMO
	$j('a.newPage').each( function(){
		this.target = "_blank";
	});

	// FancyBox popup on applications
	$j("a#ssnWhy").fancybox({
		'frameWidth': 300,
		'frameHeight': 190
	});
	
	// Tell Me More, calculator, and online banking login popups provided by FancyBox 
	$j('#questions a, #downstream li a:contains("Online Banking"), #financialCalculators li a').addClass('iframe');
	
	$j("#questions a").fancybox({
		'hideOnContentClick': false,
		'frameWidth': 540,
		'frameHeight': 360,
		'overlayOpacity': 0.8
	});
	
	$j("#ultraTopNav li a.iframe, #downstream li a.iframe").fancybox({
		'hideOnContentClick': false,
		'frameWidth': 400,
		'frameHeight': 130,
		'overlayOpacity': 0.8
	});

	$j("#financialCalculators li a").fancybox({
		'hideOnContentClick': false,
		'frameWidth': 650,
		'frameHeight': 394,
		'padding': 10,
		'overlayOpacity': 0.8
	});

	
	//	Overlabel - place a div with the class 'overLabelWrapper' around whatever will be using this code. Make sure that the label is set to display block
	if($j('.overLabelWrapper').length){
		var labelFor = $j('.overLabelWrapper form label[for]');
		var inputFor = $j('.overLabelWrapper form input').attr('id');
		if (labelFor !== inputFor) {
			labelFor.addClass('overLabel');
			$j('.overLabelWrapper input[type=text]').addClass('overLabel');
			$j('.overLabelWrapper input[type=password]').addClass('overLabel');
			$j('.overLabelWrapper input.overLabel').focus(function(){
				$j(this).prev().css({
					'text-indent': '-9999px'
				});
			});
			$j('.overLabelWrapper input.overLabel').blur(function(){
				if($j(this).val() == ''){
					$j(this).prev().css({
						'text-indent': '0'
					});
				}
			});	
		}
	}

}); // end doc ready

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').css('position','absolute');
		$j('#productTabs dd').not("dd:eq(0)").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);									 
					});
				}
			}
		});
	}
}
