
function changeImage(src, alt){
    //Changes src and alt tag of image
    $("image").src = src;
    $("image").alt = alt;
    $("image").style.width = "";
    $("image").style.height = "";
    if($("image").width >= $("image").height && $("image").width >= 150){
        $("image").style.width = 150;
    }else if($("image").height >= $("image").width && $("image").height >= 150){
        $("image").style.height = 150;
    } 
}

function validateForm(){
	var strErrors = "";
	var RegExPattern = /^(?=\d)(?:(?:(?:(?:(?:0?[13578]|1[02])(\/|-|\.)31)\1|(?:(?:0?[1,3-9]|1[0-2])(\/|-|\.)(?:29|30)\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})|(?:0?2(\/|-|\.)29\3(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))|(?:(?:0?[1-9])|(?:1[0-2]))(\/|-|\.)(?:0?[1-9]|1\d|2[0-8])\4(?:(?:1[6-9]|[2-9]\d)?\d{2}))($|\ (?=\d)))?(((0?[1-9]|1[012])(:[0-5]\d){0,2}(\ [AP]M))|([01]\d|2[0-3])(:[0-5]\d){1,2})?$/;
    //Check the date after date 
	if((document.submitform.OMEFindAfterDate.value != "") && !(document.submitform.OMEFindAfterDate.value.match(RegExPattern))){
		strErrors = strErrors + "Your start date must be a valid date in the form mm/dd/yyyy - 1/2/2007 will not work. \n";
	}
	//Check the before date
	if((document.submitform.OMEFindBeforeDate.value != "") && !(document.submitform.OMEFindBeforeDate.value.match(RegExPattern))){
		strErrors = strErrors + "Your end date must be a valid date in the form mm/dd/yyyy - 1/2/2007 will not work. \n";
	}
	if((document.submitform.OMEFindBeforeDate.value == "") && (document.submitform.OMEFindAfterDate.value == "")){
	    strErrors = strErrors + "You must have either a starting date or an ending date or both. \n";
	}
	//Check that at least one event type is checked
	if(!$("Fairs").checked && !$("Museums").checked && !$("Music").checked && !$("Other").checked){
	    strErrors = strErrors + "You must have at least one event type checked.\n";
	}
	//Check that at least one region type is checked
	if(!$("central").checked && !$("northeast").checked && !$("northwest").checked && !$("southeast").checked && !$("southwest").checked && !$("borderland").checked){
	    strErrors = strErrors + "You must have at least one region type checked.\n";
	}
	
	if(strErrors == ""){
	    createCookie("OMEFindAfterDate", document.submitform.FindAfterDate.value,365);
	    createCookie("OMEFindBeforeDate", document.submitform.FindBeforeDate.value,365);
	    createCookie("OMEDateRange", document.submitform.selectDay.value,365);
	    var eventType = "";
	    if($("Fairs").checked){eventType=eventType+"Fairs/Festivals";}
	    if($("Museums").checked){if(eventType!=""){eventType=eventType+',';}eventType=eventType+'Museums/Galleries';}
	    if($("Music").checked){if(eventType!=""){eventType=eventType+',';}eventType=eventType+'Music/Theater';}
	    if($("Other").checked){if(eventType!=""){eventType=eventType+',';}eventType=eventType+'OtherEvents';}
	    if(eventType == "Fairs/Festivals,Museums/Galleries,Music/Theater,OtherEvents"){createCookie("OMEAllEventType","1",365);}else{createCookie("OMEAllEventType","",365);}
	    var regionType = "";
	    if($("central").checked){regionType=regionType+"Central";}
	    if($("northeast").checked){if(regionType!="")regionType=regionType+',';regionType=regionType+'Northeast';}
	    if($("northwest").checked){if(regionType!="")regionType=regionType+',';regionType=regionType+'Northwest';}
	    if($("southeast").checked){if(regionType!="")regionType=regionType+',';regionType=regionType+'Southeast';}
	    if($("southwest").checked){if(regionType!="")regionType=regionType+',';regionType=regionType+'Southwest';}
	    if($("borderland").checked){if(regionType!="")regionType=regionType+',';regionType=regionType+'Borderland';}
        if(regionType == "Central,Northeast,Northwest,Southeast,Southwest,Borderland"){createCookie("OMEAllRegionType","1",365);}else{createCookie("OMEAllRegionType","",365);}
	    createCookie("OMETier2", regionType,365);
	    createCookie("OMETier1", eventType,365);
	    

		
	    //Saves keyword only if user specifies that he wants it, otherwise empties any existing keyword cookies.
	    if(getCheckedValue(document.submitform.Keywords) == "Yes"){
	        createCookie("OMEKeywords", "Y",365);
	        createCookie("OMEQuery1", document.submitform.OMEQuery1.value.replace(/ /g,"%20") ,365);
	        createCookie("OMEContainsOption", document.submitform.OMEContainsOption.value,365);
	        createCookie("OMESearchType", document.submitform.OMESearchType.value,365);
	    }else{
	        createCookie("OMEKeywords", "",365);
	        createCookie("OMEQuery1", "",365);
	        createCookie("OMEContainsOption", "",365);
	        createCookie("OMESearchType", "",365);
	    }
	    return true;
	}
	else{
		alert(strErrors);
		return false;
	}
}

function createCookie(name,value,days) {
    if (days) {
	    var date = new Date();
	    date.setTime(date.getTime()+(days*24*60*60*1000));
	    var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
}

// return the value of the radio button that is checked
// return an empty string if none are checked, or
// there are no radio buttons
function getCheckedValue(radioObj) {
    if(!radioObj)
	    return "";
    var radioLength = radioObj.length;
    if(radioLength == undefined)
	    if(radioObj.checked)
		    return radioObj.value;
	    else
		    return "";
    for(var i = 0; i < radioLength; i++) {
	    if(radioObj[i].checked) {
		    return radioObj[i].value;
	    }
    }
    return "";
}

            function setDateBeforeAndAfter(day){
                var d = new Date();
                if(day == "today"){
                    document.getElementsByName("OMEFindAfterDate")[0].value = formatDate(d);
                    document.getElementsByName("OMEFindBeforeDate")[0].value = formatDate(d);
                }else if(day == "tomorrow"){
                    d.setDate(d.getDate() + 1)
                    document.getElementsByName("OMEFindAfterDate")[0].value = formatDate(d);
                    document.getElementsByName("OMEFindBeforeDate")[0].value = formatDate(d);
                }else{ //Weekend
                    if(d.getDay() == 0){
                        document.getElementsByName("OMEFindAfterDate")[0].value = formatDate(d);
                        document.getElementsByName("OMEFindBeforeDate")[0].value = formatDate(d);
                    }
                    else if(d.getDay() < 5){
                        d.setDate(d.getDate() + (5 - d.getDay()));
                        document.getElementsByName("OMEFindAfterDate")[0].value = formatDate(d);
                        d.setDate(d.getDate()+2);
                        document.getElementsByName("OMEFindBeforeDate")[0].value = formatDate(d);
                    }
                    else if(d.getDay() == 5){
                        document.getElementsByName("OMEFindAfterDate")[0].value = formatDate(d);
                        d.setDate(d.getDate()+2);
                        document.getElementsByName("OMEFindBeforeDate")[0].value = formatDate(d);
                    }
                    else {
                        document.getElementsByName("OMEFindAfterDate")[0].value = formatDate(d);
                        d.setDate(d.getDate() + 1);
                        document.getElementsByName("OMEFindBeforeDate")[0].value = formatDate(d);
                    }
                }
            }

function formatDate(date){
    var strMonth = "", strDay = "";
    var month = date.getMonth() + 1;
    var day = date.getDate();
    if(day < 10){strDay = "0" + day;}else{strDay = "" + day;}
    if(month < 10){
        strMonth = "0" + month;
    }else{
        strMonth = "" + month;
    }
    return(strMonth + "/" + strDay + "/" + date.getFullYear());
}
                                
                              
function toggleRegions(){
    if(!$("Select All Regions").checked){
        $("central").checked = false;
        $("northeast").checked = false;
        $("northwest").checked = false;
        $("southwest").checked = false;
        $("southeast").checked = false;
        $("borderland").checked = false;
    }else{
        $("central").checked = true;
        $("northeast").checked = true;
        $("northwest").checked = true;
        $("southwest").checked = true;
        $("southeast").checked = true;
        $("borderland").checked = true;
    }
}
                    
function togglechecked(id){
    if($(id).checked){
        $(id).checked = false;
    }else{
        $(id).checked = true;
    }
}
function toggleKeywordDisable(str){
    if(str=="enable"){
        $('contains').disabled = false;
        $('query').disabled = false;
        $('searchType').disabled = false;
    }else{
        $('contains').disabled = true;
        $('query').disabled = true;
        $('searchType').disabled = true;
    }
}
    
function toggleEvents(){
    if(!$("Select All Events").checked){
        $("Fairs").checked = false;
        $("Museums").checked = false;
        $("Music").checked = false;
        $("Other").checked = false;
    }else{
        $("Fairs").checked = true;
        $("Museums").checked = true;
        $("Music").checked = true;
        $("Other").checked = true;
    }
}

