/// <reference path="jquery-1.3.2-vsdoc.js" />
// JavaScript Document

function d(id)
{
	var ie	= (document.all);
	var ns4	= document.layers?true:false;
	var dom	= document.getElementById && !document.all?true:false;

	if (dom) 
	    return document.getElementById(id);
	else if (ie) 
	    return document.all[id];
	else if (ns4) 
	    return document.layers[id];
}

function callFlash(fileName,theWidth,theHeight) {

    var intWidth = theWidth;
    var intHeight = theHeight;
    if (intWidth==null) {
        intWidth=920
    };
    if (intHeight==null) {
        intHeight=44
    };
    
    document.write('<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"');
    document.write('    codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" ');
    document.write('    ID="sale" WIDTH="'+intWidth+'" HEIGHT="'+intHeight+'" ALIGN="center">');
    document.write('    <PARAM NAME="movie" VALUE="' + fileName + '"/> <param name="quality" value="high"/><param name="wmode" value="transparent"/>   ');
    
    document.write('    <EMBED src="' + fileName + '" quality=high bgcolor=#000000  ');
    document.write('        swLiveConnect="FALSE" WIDTH="'+intWidth+'" HEIGHT="'+intHeight+'" NAME="sale" ALIGN="center" wmode="transparent"');
    document.write('        TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer" width="'+intWidth+'" height="'+intHeight+'">');
    document.write('    </EMBED>');
    document.write('</OBJECT>'); 
    
}

function liHover(id, mode) {
    if (mode == "over") {
        document.getElementById(id).className = "topNavHover";
    }
    else {
        document.getElementById(id).className = "";
    }
}

function topNavHomeHover(hId, currId, mode) {
	try {
		if(currId==0) {
			document.getElementById(hId).className = "homeNew on";
		}
		else { //when hovering on home, but on another section, eg not on index page
			if (mode == "over") {
				document.getElementById("topNavAlink"+currId).className = "";
			}
			else {
				document.getElementById("topNavAlink"+currId).className = "on";	
			}
		}
	}
	catch(e) {}
}

function topNavHover(currId,mode) {
	try {
		if (mode == "over") {
			document.getElementById("topNavAlink"+currId).className = "";
			document.getElementById("topNavAlink0").className = "homeNew";
		}
		else {	
			document.getElementById("topNavAlink"+currId).className = "on";
			if(currId==0) { document.getElementById("topNavAlink0").className = "homeNew on";}
		}
	}
	catch(e) {}
}

function clearSearchBox(id) {
	if(d(id).value=="Search") {d(id).value="";}	
}

function GetParameterByName(name)
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}



$().ready(function() {
    PageFade();
    Accordian();
    Popout();
    Scrollable();
    Dropdown();
});

function OpenAccordianOnStart(parameter)
{
    var s = {
        speed: 'fast',
        trigger: '.trigger',
        itemContainer: '.toggle_container',
        runningClass: 'active'
    };
	
	$(s.trigger).each(function(){
		var elem = $(this);
		var rel = elem.attr('rel');
		
		if (rel == parameter)
		{
			var height	= $(this).addClass(s.runningClass).next().height();
			elem.addClass(s.runningClass).next().css('height',0).animate({'height': height}, s.speed);
		}		
	});
}

function Dropdown() {
    var s = {
        speed: 'fast',
        timeout: 2000,
        runningClass: 'subhover',
        hoverElement: 'ul.topnav li',
        subNavigation: 'ul.subnav'
    }

    $(s.hoverElement).hover(function() {
        $(this).addClass(s.runningClass).children(s.subNavigation).slideDown(s.speed).show();
    }, function() {
        $(this).removeClass(s.runningClass).children(s.subNavigation).slideUp(s.speed);
    });
}

function PageFade() {
    var s = {
        runningClass: '.goodBad',
        speed: 3000
    };

    $(s.runningClass).each(function() {
        var elem = $(this);
		elem.css('height',0);
		elem.animate({'height': 300}, s.speed);
    })
}

function Scrollable() {
    $("div.scrollable").scrollable({
        interval: 2000,
        loop: true,
        speed: 900,
        onBeforeSeek: function() {
            this.getItems().fadeTo(300, 0.2);
        },
        onSeek: function() {
            this.getItems().fadeTo(300, 1);
        }
    });
}

function Popout() {
    var s = {
        selector: 'ul.sidenav li',
        box: '#myBox',
        speed: 'fast'
    };

    $(s.selector).hover(function() {
        $(this).find("div").stop()
            .animate({ left: "149", opacity: 1 }, s.speed)
            .css("display", "block")
    }, function() {
        $(this).find("div").stop()
            .animate({ left: "0", opacity: 0 }, s.speed)
    });
}

function Accordian() {
    var s = {
        speed: 'fast',
        trigger: '.trigger',
        itemContainer: '.toggle_container',
        reOpen: 'open',
        runningClass: 'active',
        closeOnClick: true
    };
	
	OpenAccordianOnStart(GetParameterByName('mem'));

    $(s.itemContainer).hide();

    $(s.trigger).click(function(e) {
        e.preventDefault();

        if ($(this).hasClass(s.runningClass)) {			
            if (s.closeOnClick)
                $(this).removeClass(s.runningClass).next().slideUp(s.speed);

            if ($(s.trigger).attr('rel') == s.reOpen)
                $(this).removeClass(s.runningClass).next().slideUp(s.speed);
        }
        else {
            if ($(s.trigger).attr('rel') != s.reOpen) {
				// close item
                $(s.itemContainer).each(function() {
                    $(this).slideUp(s.speed).prev().removeClass(s.runningClass);
                });
            }
			
			// open click item
			var height	= $(this).addClass(s.runningClass).next().height();
            $(this).addClass(s.runningClass).next().css('height',0).animate({'height': height}, s.speed);
        }
    });
}
