var elemId = ""; // USED FOR MULTIPLE HTML ELEMENT IDS
var cmsStates = null;

// CMS STATES & COUNTRY AJAX COMBINATION
function cmsGetStates(count,id){
    elemId = count;
    var country = $("#cmsCountries"+elemId).val();
    if(id == null) id="";
    if(country == null || country == ""){
        $("#cmsStates"+elemId).html(cmsStates);
    }else{
        $("#cmsStates"+elemId).html("Loading...");
        $.ajax({
            type: "POST",
            data: "event=States&state="+id+"&country="+country,
            success: cmsSetStates
        });
    }
}
function cmsSetStates(value){
    if(cmsStates == null) cmsStates = $("#cmsStates"+elemId).html();
    $("#cmsStates"+elemId).html(value);
}

// PARAMETER FUNCTIONS (for strings like query strings Ex: ?cat=1&id=2)
var paramKeys = new Array();
var paramValues = new Array();

function getParam(key){
    var value = null;
    for(var i=0;i<paramKeys.length;i++){
        if (paramKeys[i]==key){
            value = paramValues[i];
            break;
        }
    }
    return unescape(value);
}

function parseParams(data, delimiter){
    paramKeys = new Array();
    paramValues = new Array();

    if(delimiter==null) delimiter="&";
    if(data==null){
        data = document.location.search;
    }
    if(data){
        var c = data.substring(0,1);
        if(c == "?") data = data.substring(1);
    }
	
    var query = data;
    var pairs = query.split(delimiter);
    for(var i=0;i<pairs.length;i++){
        var pos = pairs[i].indexOf('=');
        if(pos >= 0){
            var argname = pairs[i].substring(0,pos);
            var value = pairs[i].substring(pos+1);
            paramKeys[paramKeys.length] = argname;
            paramValues[paramValues.length] = value;
        }
    }
}

// PROTOTYPES & JS ADDONS
Array.prototype.remove = function(from, to) {
    var rest = this.slice((to || from) + 1 || this.length);
    this.length = from < 0 ? this.length + from : from;
    return this.push.apply(this, rest);
};
String.prototype.trim = function() {
    return this.replace(/^\s+|\s+$/g,"");
}
String.prototype.ltrim = function() {
    return this.replace(/^\s+/,"");
}
String.prototype.rtrim = function() {
    return this.replace(/\s+$/,"");
}
function isArray(obj){
    if (obj.constructor.toString().indexOf("Array") == -1)
        return false;
    else
        return true;
}
function inArray(value, array){
    var pos = -1;
    jQuery.each(array, function(index, item){
        var obj = array[index];
        if(obj.id == value){
            pos = index;
        }
    });
    return(pos);
}
function stopEvent(e){
    if(!e){
        e = window.event;
    }
    e.cancelBubble = true;
    if (e.stopPropagation) e.stopPropagation();
}

// FORM FUNCTIONS
function submitForm(form){
    $("#"+form).submit();
}

//png fix for IE 5.5+ (.htc file is in root)
/*if (document.all && document.styleSheets && document.styleSheets[0] &&
  document.styleSheets[0].addRule)
 {
  // Feel free to add rules for specific tags only, you just have to call it several times.
  document.styleSheets[0].addRule('*', 'behavior: url(iepngfix.htc)');
 }*/

// BOF SckrFish Menu (writePrimaryNavigation();)
var sfHover = function() {
    var sfEls = document.getElementById("tabs").getElementsByTagName("LI");
    for (var i=0; i<sfEls.length; i++) {
        sfEls[i].onmouseover=function() {
            this.className+=" sfhover";
        }
        sfEls[i].onmouseout=function() {
            this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
        }
    }
}

if (typeof window.addEventListener != 'undefined') {
	// do nithing
} else if (typeof document.addEventListener != 'undefined') {
	// do nothing
} else {
	window.attachEvent("onload", sfHover);
}

// EOF SckrFish Menu

// BOF Clamshell Menu (writeSecondaryNavigation();)

function toggleClamShellMenu(objectID) {
    var object = document.getElementById(objectID);
    // JERRY - Added try to capture object not defined error
    try {
        if (object.style.display == 'block') {
            object.style.display='none';
        } else {
            object.style.display='block';
        }
    } catch (err) { }
    return;
}

// EOF Clamshell Menu

// BOF MM JavaScripts

function MM_preloadImages() { //v3.0
    var d=document; if(d.images){
        if(!d.MM_p) d.MM_p=new Array();
        var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
            if (a[i].indexOf("#")!=0){
                d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];
            }
    }
}

function MM_swapImgRestore() { //v3.0
    var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
    var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
        d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);
    }
    if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
    for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
    if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
    var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
        if ((x=MM_findObj(a[i]))!=null){
            document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];
        }
}

// EOF MM JavaScripts

//v1.0
//Copyright 2006 Adobe Systems, Inc. All rights reserved.
function AC_AddExtension(src, ext)
{
    if (src.indexOf('?') != -1)
        return src.replace(/\?/, ext+'?');
    else
        return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
    var str = '<object ';
    for (var i in objAttrs)
        str += i + '="' + objAttrs[i] + '" ';
    str += '>';
    for (var i in params)
        str += '<param name="' + i + '" value="' + params[i] + '" /> ';
    str += '<embed ';
    for (var i in embedAttrs)
        str += i + '="' + embedAttrs[i] + '" ';
    str += ' ></embed></object>';

    document.write(str);
}

function AC_FL_RunContent(){
    var ret =
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
        , "application/x-shockwave-flash"
        );
    AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
    var ret =
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
        , null
        );
    AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
    var ret = new Object();
    ret.embedAttrs = new Object();
    ret.params = new Object();
    ret.objAttrs = new Object();
    for (var i=0; i < args.length; i=i+2){
        var currArg = args[i].toLowerCase();

        switch (currArg){
            case "classid":
                break;
            case "pluginspage":
                ret.embedAttrs[args[i]] = args[i+1];
                break;
            case "src":
            case "movie":
                args[i+1] = AC_AddExtension(args[i+1], ext);
                ret.embedAttrs["src"] = args[i+1];
                ret.params[srcParamName] = args[i+1];
                break;
            case "onafterupdate":
            case "onbeforeupdate":
            case "onblur":
            case "oncellchange":
            case "onclick":
            case "ondblClick":
            case "ondrag":
            case "ondragend":
            case "ondragenter":
            case "ondragleave":
            case "ondragover":
            case "ondrop":
            case "onfinish":
            case "onfocus":
            case "onhelp":
            case "onmousedown":
            case "onmouseup":
            case "onmouseover":
            case "onmousemove":
            case "onmouseout":
            case "onkeypress":
            case "onkeydown":
            case "onkeyup":
            case "onload":
            case "onlosecapture":
            case "onpropertychange":
            case "onreadystatechange":
            case "onrowsdelete":
            case "onrowenter":
            case "onrowexit":
            case "onrowsinserted":
            case "onstart":
            case "onscroll":
            case "onbeforeeditfocus":
            case "onactivate":
            case "onbeforedeactivate":
            case "ondeactivate":
            case "type":
            case "codebase":
                ret.objAttrs[args[i]] = args[i+1];
                break;
            case "width":
            case "height":
            case "align":
            case "vspace":
            case "hspace":
            case "class":
            case "title":
            case "accesskey":
            case "name":
            case "id":
            case "tabindex":
                ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
                break;
            default:
                ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
        }
    }
    ret.objAttrs["classid"] = classid;
    if (mimeType) ret.embedAttrs["type"] = mimeType;
    return ret;
}

// CMS STATES & COUNTRY AJAX COMBINATION
function getInfo(type, method){
    $('#'+type+'Info').html("Loading...");
    var country = $("#"+type).val();
    if(country == null || country == "") country = 223

    $.ajax({
        url: 'includes/html/info_router.php',
        type: "GET",
        data: "type="+type+"&method="+method+"&params="+country,
        success: renderInfo
    }).responseText;
}

function renderInfo(data, status) {
    if(renderInfo == null) renderInfo = $('#CountryStates_Info').html();
    $('#CountryStates_Info').html(data);
}

//begin accordian script
jQuery(document).ready(function() {
	 
	//ACCORDION BUTTON ACTION (ON CLICK DO THE FOLLOWING)
	jQuery('.accordionButton').click(function() {

		//REMOVE THE ON CLASS FROM ALL BUTTONS
		jQuery('.accordionButton').removeClass('on');
		  
		//NO MATTER WHAT WE CLOSE ALL OPEN SLIDES
	 	jQuery('.accordionContent').slideUp('normal');
   
		//IF THE NEXT SLIDE WASN'T OPEN THEN OPEN IT
		if(jQuery(this).next().is(':hidden') == true) {
			
			//ADD THE ON CLASS TO THE BUTTON
			jQuery(this).addClass('on');
			  
			//OPEN THE SLIDE
			jQuery(this).next().slideDown('normal');
		 } 
		  
	 });
	  
	
	/*** REMOVE IF MOUSEOVER IS NOT REQUIRED ***/
	
	//ADDS THE .OVER CLASS FROM THE STYLESHEET ON MOUSEOVER 
	jQuery('.accordionButton').mouseover(function() {
		jQuery(this).addClass('over');
		
	//ON MOUSEOUT REMOVE THE OVER CLASS
	}).mouseout(function() {
		jQuery(this).removeClass('over');										
	});
	
	/*** END REMOVE IF MOUSEOVER IS NOT REQUIRED ***/
	
	
	/********************************************************************************************************************
	CLOSES ALL S ON PAGE LOAD
	********************************************************************************************************************/	
	jQuery('.accordionContent').hide();

});