/*#####################################################This file gives added javascript functionality tothe site and the admin area.WindowHelper function taken from Squid FingersFileName:   default.jsAuthor:		Scott Upton, UPTONICVersion:    2004.06.30#####################################################*/// ----------------------------------------------------------------------// Global Utility Functions// ----------------------------------------------------------------------// Determine browservar isMinIE5 = (navigator.appVersion.indexOf("5.")) >= 0 ? 1 : 0;var isDOM = (document.getElementById) ? 1 : 0;// ----------------------------------------------------------------------// Hide/Show rows in admin interface// ----------------------------------------------------------------------// Set array for rows that can get hidden by Hide all/Show allLayerArray = new Array()LayerArray[0] = "csi_parent_pulldown"// Hide allfunction collapseAll() {	for (var i = 0; i < LayerArray.length; i++) {	document.getElementById(LayerArray[i]).style.display = 'none';	}}// Show allfunction revealAll() {	for (var i = 0; i < LayerArray.length; i++) {	document.getElementById(LayerArray[i]).style.display = '';	}}// Toggle text view on and offfunction toggle(objId) {	if (isMinIE5||isDOM) {		if (document.getElementById(LayerArray[objId]).style.display == 'none') {			document.getElementById(LayerArray[objId]).style.display = '';		} else {			document.getElementById(LayerArray[objId]).style.display = 'none';		}	} else {		return;	}}// Toggle visibility of category pulldowns based on selected valuefunction changeSelect(select, other){	var selectValue = select.options[select.selectedIndex].value;	if(selectValue == "1") {		revealAll();	} else {		collapseAll();		other.selectedIndex = 0; // Reset other menu	}}// Toggle visibility of category pulldowns based on selected valuefunction eraseSelect(select, other){	var selectValue = select.options[select.selectedIndex].value;	if(selectValue == "") {		other.value = ""; // Reset other text field	} else {		return false;	}}// Shortcut and other pulldown menu auto-activator// Click-and-go!function shortcutMenu(targ,selObj,restore) {	eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");	if (restore) selObj.selectedIndex=0;}// ----------------------------------------------------------------------// Change color of objects on the page// ----------------------------------------------------------------------// Alter color of text elementsfunction changeColor(objId,color) {	if (isMinIE5||isDOM) {		document.getElementById(objId).style.color=color;	} else {		return;	}}// Alter background color of elementsfunction changeBgcolor(objId,color) {	if (isMinIE5||isDOM) {		document.getElementById(objId).style.backgroundColor=color;	} else {		return;	}}// Alter font weight and/or decoration of a linkfunction changeLink(objId, weight, decor) {	if (isMinIE5||isDOM) {		document.getElementById(objId).style.fontWeight=weight;		document.getElementById(objId).style.textDecoration=decor;	} else {		return;	}}// ----------------------------------------------------------------------// Verify text field content for searches// ----------------------------------------------------------------------// Check to see if search box has anything in it firstfunction validateSearchField(objId, selObj) {	var searchField = document.getElementById(objId).value;	var objRegExp  = /(^\d{5}$)/;		// Perhaps no selection pulldown exists	if(selObj == "") {		var selectValue = "";	} else {		var selectValue = selObj.options[selObj.selectedIndex].value;	}        // Is search field blank?    if (searchField == "" && selectValue !== "") {    	alert("Please enter a search term.");        document.getElementById(objId).focus();        return false;    }    // Is search field a zip code or blank?    else if(selectValue == "zip" || selectValue == "") {    	    	// Check if 5-digit zip code has been entered    	if(!objRegExp.test(searchField)) {    		alert("Please enter a 5-digit zip code.");    		document.getElementById(objId).focus();    		return false;    	}	}	// Otherwise do the search	else {        return true;    }}// ----------------------------------------------------------------------// Verify user review contents before submission// ----------------------------------------------------------------------// Check those fieldsfunction validateReviewInfo() {        // Is the name field blank?    if (document.getElementById('opinion[name]').value == "") {    	alert("Please enter your name.");        document.getElementById('opinion[name]').focus();        return false;    }    // Is the city field blank?    else if (document.getElementById('opinion[city]').value == "") {    	alert("Please enter your city.");        document.getElementById('opinion[city]').focus();        return false;    }    // Is a state selected from the pulldown?       else if (document.getElementById('opinion[state]').value == "") {    	alert("Please select your state from the menu.");        document.getElementById('opinion[state]').focus();        return false;    }    // Is a rating selected from the pulldown?       else if (document.getElementById('opinion[rating]').value == "") {    	alert("Please choose a rating from the menu.");        document.getElementById('opinion[rating]').focus();        return false;    }    // Is there any text in the review?       else if (document.getElementById('opinion[text]').value == "") {    	alert("Please type your review in the space provided.");        document.getElementById('opinion[text]').focus();        return false;    }	// Otherwise do the search	else {        return true;    }}// ----------------------------------------------------------------------// Verify contact form before submission// ----------------------------------------------------------------------// Check those fieldsfunction validateContactInfo() {	// Pattern for valid e-mail address    var objRegExp  = /(^([_a-z0-9-]+)(\.[_a-z0-9-]+)*@([a-z0-9-]+)(\.[a-z0-9-]+)*(\.[a-z]{2,4})$)/;    var emailField = document.getElementById('contact[email]').value;        // Is the name field blank?    if (document.getElementById('contact[name]').value == "") {    	alert("Please enter your name.");        document.getElementById('contact[name]').focus();        return false;    }    // Is the email field blank?    else if (document.getElementById('contact[email]').value == "") {    	alert("Please supply an e-mail address.");        document.getElementById('contact[email]').focus();        return false;    }    // Check if the email is valid    else if(!objRegExp.test(emailField)) {		alert("Please enter a valid e-mail address.");        document.getElementById('contact[email]').focus();		return false;	}    // Is the subject field blank?    else if (document.getElementById('contact[subject]').value == "") {    	alert("Please give your message a subject.");        document.getElementById('contact[subject]').focus();        return false;    }    // Is there any text in the message?       else if (document.getElementById('contact[message]').value == "") {    	alert("Please type your message in the space provided.");        document.getElementById('contact[message]').focus();        return false;    }	// Otherwise allow the form to be submitted	else {        return true;    }}