﻿if (!Array.prototype.filter) {
    Array.prototype.filter = function(fun /*, thisp*/) {
        var len = this.length;
        if (typeof fun != "function")
            throw new TypeError();

        var res = new Array();
        var thisp = arguments[1];
        for (var i = 0; i < len; i++) {
            if (i in this) {
                var val = this[i]; // in case fun mutates this
                if (fun.call(thisp, val, i, this))
                    res.push(val);
            }
        }

        return res;
    };
}

$(function() {
	version = parseFloat($.browser.version)
	if (!(
			($.browser.safari && version >= 412) || 
			($.browser.msie && version >= 6) || 
			($.browser.mozilla && (version > 1.8 || $.browser.version.match(/^1\.8\.1/))) ||
			($.browser.opera && version >= 9.0)
		))
			$("#unsupported").show();
})

$(function(){
	$('a#closeFlashNotice').click(function(){
		$('#flashNotice').hide()
		return false
	})
	$('a#closeFlashWarning').click(function(){
		$('#flashWarning').hide()
		return false
	})
	$('a#closeFlashError').click(function(){
		$('#flashError').hide()
		return false
	})
})

// styling fixes for IE6
$(function() {
	var cont = $('.sub-nav-container'),
		content = $('.content, .content-all');
	if ($.browser.msie && version <= 6) {
		var fixsubsize = function() {
			if (content.innerHeight() < 400)
				content.height(400);
			cont.height(content.innerHeight());
		}
		content.resize(fixsubsize);
		fixsubsize();
	}
})

$(function() {
	var menu = $('#subNavList');
	var docBody = $.browser.safari? $(document.body): $(document.documentElement);
	var min = 0;
	
	$(window).scroll(function() {
		var max = menu.parent().innerHeight() - menu.outerHeight();
		var targetTop = Math.min(Math.max(min, docBody.scrollTop() - 100), max);
		menu.css({ top: targetTop + 'px' });
	});
})
