/* jquery.easing */
jQuery.easing.jswing=jQuery.easing.swing;jQuery.extend(jQuery.easing,{def:"easeOutQuad",swing:function(B,C,A,E,D){return jQuery.easing[jQuery.easing.def](B,C,A,E,D)},easeInQuad:function(B,C,A,E,D){return E*(C/=D)*C+A},easeOutQuad:function(B,C,A,E,D){return -E*(C/=D)*(C-2)+A},easeInOutQuad:function(B,C,A,E,D){if((C/=D/2)<1){return E/2*C*C+A}return -E/2*((--C)*(C-2)-1)+A},easeInCubic:function(B,C,A,E,D){return E*(C/=D)*C*C+A},easeOutCubic:function(B,C,A,E,D){return E*((C=C/D-1)*C*C+1)+A},easeInOutCubic:function(B,C,A,E,D){if((C/=D/2)<1){return E/2*C*C*C+A}return E/2*((C-=2)*C*C+2)+A},easeInQuart:function(B,C,A,E,D){return E*(C/=D)*C*C*C+A},easeOutQuart:function(B,C,A,E,D){return -E*((C=C/D-1)*C*C*C-1)+A},easeInOutQuart:function(B,C,A,E,D){if((C/=D/2)<1){return E/2*C*C*C*C+A}return -E/2*((C-=2)*C*C*C-2)+A},easeInQuint:function(B,C,A,E,D){return E*(C/=D)*C*C*C*C+A},easeOutQuint:function(B,C,A,E,D){return E*((C=C/D-1)*C*C*C*C+1)+A},easeInOutQuint:function(B,C,A,E,D){if((C/=D/2)<1){return E/2*C*C*C*C*C+A}return E/2*((C-=2)*C*C*C*C+2)+A},easeInSine:function(B,C,A,E,D){return -E*Math.cos(C/D*(Math.PI/2))+E+A},easeOutSine:function(B,C,A,E,D){return E*Math.sin(C/D*(Math.PI/2))+A},easeInOutSine:function(B,C,A,E,D){return -E/2*(Math.cos(Math.PI*C/D)-1)+A},easeInExpo:function(B,C,A,E,D){return(C==0)?A:E*Math.pow(2,10*(C/D-1))+A},easeOutExpo:function(B,C,A,E,D){return(C==D)?A+E:E*(-Math.pow(2,-10*C/D)+1)+A},easeInOutExpo:function(B,C,A,E,D){if(C==0){return A}if(C==D){return A+E}if((C/=D/2)<1){return E/2*Math.pow(2,10*(C-1))+A}return E/2*(-Math.pow(2,-10*--C)+2)+A},easeInCirc:function(B,C,A,E,D){return -E*(Math.sqrt(1-(C/=D)*C)-1)+A},easeOutCirc:function(B,C,A,E,D){return E*Math.sqrt(1-(C=C/D-1)*C)+A},easeInOutCirc:function(B,C,A,E,D){if((C/=D/2)<1){return -E/2*(Math.sqrt(1-C*C)-1)+A}return E/2*(Math.sqrt(1-(C-=2)*C)+1)+A},easeInElastic:function(B,D,A,H,G){var E=1.70158;var F=0;var C=H;if(D==0){return A}if((D/=G)==1){return A+H}if(!F){F=G*0.3}if(C<Math.abs(H)){C=H;var E=F/4}else{var E=F/(2*Math.PI)*Math.asin(H/C)}return -(C*Math.pow(2,10*(D-=1))*Math.sin((D*G-E)*(2*Math.PI)/F))+A},easeOutElastic:function(B,D,A,H,G){var E=1.70158;var F=0;var C=H;if(D==0){return A}if((D/=G)==1){return A+H}if(!F){F=G*0.3}if(C<Math.abs(H)){C=H;var E=F/4}else{var E=F/(2*Math.PI)*Math.asin(H/C)}return C*Math.pow(2,-10*D)*Math.sin((D*G-E)*(2*Math.PI)/F)+H+A},easeInOutElastic:function(B,D,A,H,G){var E=1.70158;var F=0;var C=H;if(D==0){return A}if((D/=G/2)==2){return A+H}if(!F){F=G*(0.3*1.5)}if(C<Math.abs(H)){C=H;var E=F/4}else{var E=F/(2*Math.PI)*Math.asin(H/C)}if(D<1){return -0.5*(C*Math.pow(2,10*(D-=1))*Math.sin((D*G-E)*(2*Math.PI)/F))+A}return C*Math.pow(2,-10*(D-=1))*Math.sin((D*G-E)*(2*Math.PI)/F)*0.5+H+A},easeInBack:function(B,C,A,F,E,D){if(D==undefined){D=1.70158}return F*(C/=E)*C*((D+1)*C-D)+A},easeOutBack:function(B,C,A,F,E,D){if(D==undefined){D=1.70158}return F*((C=C/E-1)*C*((D+1)*C+D)+1)+A},easeInOutBack:function(B,C,A,F,E,D){if(D==undefined){D=1.70158}if((C/=E/2)<1){return F/2*(C*C*(((D*=(1.525))+1)*C-D))+A}return F/2*((C-=2)*C*(((D*=(1.525))+1)*C+D)+2)+A},easeInBounce:function(B,C,A,E,D){return E-jQuery.easing.easeOutBounce(B,D-C,0,E,D)+A},easeOutBounce:function(B,C,A,E,D){if((C/=D)<(1/2.75)){return E*(7.5625*C*C)+A}else{if(C<(2/2.75)){return E*(7.5625*(C-=(1.5/2.75))*C+0.75)+A}else{if(C<(2.5/2.75)){return E*(7.5625*(C-=(2.25/2.75))*C+0.9375)+A}else{return E*(7.5625*(C-=(2.625/2.75))*C+0.984375)+A}}}},easeInOutBounce:function(B,C,A,E,D){if(C<D/2){return jQuery.easing.easeInBounce(B,C*2,0,E,D)*0.5+A}return jQuery.easing.easeOutBounce(B,C*2-D,0,E,D)*0.5+E*0.5+A}});/* jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/ */
jQuery.easing['jswing']=jQuery.easing['swing'];jQuery.extend(jQuery.easing,{def:'easeOutQuad',easeOutQuad:function(x,t,b,c,d){return-c*(t/=d)*(t-2)+b;},easeInOutQuart:function(x,t,b,c,d){if((t/=d/2)<1)return c/2*t*t*t*t+b;return-c/2*((t-=2)*t*t*t-2)+b;}});

/* DOM load complete */
$(document).ready(function(){
	pushGoogleAnalyticsBreadcrumb();

    /* Load remote content */
    $("#quicklinks").load("/includes/remotecontent/nait_remoteajax_quicklinks.htm", function(){
        /* Portal personalization */
        if (hp_IsLoggedIn()) {
            var SSOKeepalive = "<img src=\"/portal/sso/keepalive.gif\" width=\"0\" height=\"0\" />";
            var oblixName = hp_GetCookie("OblixFName");
            var oblixDN = hp_GetCookie("OblixDN");
            var oblixUID = hp_GetCookie("OblixUID");
			
            if (oblixName != null) {
                
                if (oblixDN != null) {

				
                    var TypePos = oblixDN.indexOf("Staff");
                        
                    if (TypePos >= 0) {
                        oblixDN = "to the Campus Community NAITrix";
                    } else {
                        oblixDN = "to the MyNAIT portal";
                    }
                }
                $("#portal-greetingcontent").html("<p><strong>Welcome "+oblixName+"</strong><br /> You are currently signed in"+oblixDN+".</p><ul><li><a href=\"https://www.nait.ca/portal/server.pt?space=Login&amp;control=Login&amp;doLogout=\">Sign Out</a></li></ul>"+ SSOKeepalive);
                $("#quicklink-loginout-lock").toggleClass("closed");
                $("#quicklink-loginout-lock").toggleClass("open");
                $("#portal-status").html("<div id=\"portal-statuscontent\"><p><a href=\"https://www.nait.ca/SSOLogout\"><img src=\"http://www.nait.ca/images/interface/nait_logout.gif\" align=\"left\"/></a><a href=\"https://www.nait.ca/SSOLogout\">Sign Out</a></p></div>");
            }
        }        
    });

    /* Quick links */
    $("#quicklinks-button").click(function () {
        if ($.trim($("#quicklinks-text").text()) == "Quick links") {
            $("#masthead-wrapper").css("border-top","none");
            $("#quicklinks-text").text("Close menu");
            $("#quicklinks-icon").toggleClass("closed");
            $("#quicklinks-icon").toggleClass("open");
            $("#quicklinks-wrapper").slideDown(800, "easeInOutQuart");
        } else {
            $("#masthead-wrapper").css("border-top","none");
            $("#quicklinks-text").text("Quick links");
            $("#quicklinks-icon").toggleClass("closed");
            $("#quicklinks-icon").toggleClass("open");
            $("#quicklinks-wrapper").slideUp(800, "easeInOutQuart");
        }
    });
    $("#quicklinks-button").hover(function() {
        if ($.trim($("#quicklinks-text").text()) != "Close menu") {
            $("#masthead-wrapper").css("border-top","3px solid #1d3c7f");
        }
    }, function () {
        $("#masthead-wrapper").css("border-top","0px solid #1d3c7f");
    });  

    /* Site search */
    swapValues=[];
    $("#search-field").each(function(A){swapValues[A]=$(this).val();
        $(this).focus(function(){
            if($(this).val()==swapValues[A]){
                $(this).val("");
            }
        }).blur(function(){
            if($.trim($(this).val())===""){
                $(this).val(swapValues[A]);
            }
        });
    });
	
	/* Extended Google Analytics Tracking */
	$('#content-wrapper a[href]').each(function(){
		var trackLink = $(this);
		var trackLinkHref = trackLink.attr('href');
		var filetypes = /\.(zip|exe|pdf|doc*|xls*|ppt*|mp3)$/i;
		
		if (trackLink.attr("onclick") == undefined) {
			if ((trackLinkHref.match(/^https?\:/i)) && (!trackLinkHref.match(document.domain))){
				$(this).click(function() {
					var extLink = trackLinkHref.replace(/^https?\:\/\//i, '');
					_gaq.push(['_trackEvent', 'TrackLink', 'External Link', extLink]);
				});
			} else if (trackLinkHref.match(/^mailto\:/i)){
				$(this).click(function() {
					var mailLink = trackLinkHref.replace(/^mailto\:/i, '');
					_gaq.push(['_trackEvent', 'TrackLink', 'Email Link', mailLink]);
				});
			} else if (trackLinkHref.match(filetypes)){
				$(this).click(function() {
					var filePath = trackLinkHref.replace(/^https?\:\/\/(www.)nait\.ca\//i, '');
					_gaq.push(['_trackEvent', 'TrackLink', 'Download Link', filePath]);
				});
			}
		}
	});
});

/* Portal personalization functions */
function hp_GetCookie(name) {
    var dc = document.cookie;
    var prefix = name + "=";
    var begin = dc.indexOf("; " + prefix);
    
    if (begin == -1) {
        begin = dc.indexOf(prefix);
        if (begin != 0) return null;
    } else {
        begin += 2;
    }
    
    var end = document.cookie.indexOf(";", begin);
    
    if (end == -1) {
        end = dc.length;
    }
    
    return unescape(dc.substring(begin + prefix.length, end));
}
function hp_IsLoggedIn() {
    var cookie = hp_GetCookie("ObSSOCookie");
    if (cookie != null) {
        if (cookie.length > 10){
            return true;
        }
    }
    return false;
}

/* Table row toggle */
function toggleTableRowDescriptionMore(){
	$(".table-row-more-results-hidden").removeClass('table-row-more-results-hidden');
	$(".table-row-more-results-show").remove();
}
function toggleCourseDescription(id){
	$("#CourseDescr"+id).toggle();
} 



function trimSpaces(s) {
	s = s.replace(/(^\s*)|(\s*$)/gi,"");
	s = s.replace(/[ ]{2,}/gi," ");
	s = s.replace(/\n /,"\n");
	s = s.replace(/\s/g,'-');
	s = s.replace(/->-/g,'/');
	s = s.substr(5,s.length)
	return s;
}

function pushGoogleAnalyticsBreadcrumb() {
	var breadcrumb = document.getElementById('breadcrumb');
	var breadcrumbText = "";
	
	if (breadcrumb != null) {
		breadcrumbText = breadcrumb.textContent || breadcrumb.innerText || "";
		breadcrumbText = trimSpaces(breadcrumbText);
	}
	
	if (breadcrumbText != "") {
			//if (typeof _qaq != "undefined") {
				_gaq.push(['b._setAccount', 'UA-1247993-18'], ['b._setDomainName', '.nait.ca'], ['b._trackPageview', breadcrumbText]);
			//}
	}
}


