/**
+	isIE()
+
+	@requires
+		none
+
+	@arguments
+		none
*/
function isIE() {
	if (navigator.appName.indexOf("Microsoft Internet Explorer") != -1) { return true; }
	else { return false; }
}

sfHover = function() {
	var sfEls = document.getElementById("nav").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 (window.attachEvent) window.attachEvent("onload", sfHover);




/**
+	toggle()
+
+	@requires
+		isIE()
+
+	@arguments
+		id - the id of the DOM object you wish to toggle
*/
function toggle(id) {
	var e = document.getElementById(id);
	var d = "block";
	if (!isIE()) {
		if (e.insertRow) { d = "table"; }
		else if (e.insertCell) { d = "table-row"; }
	}
	if (e.style.display == "none" || e.style.display == "") { e.style.display = d; }
	else { e.style.display = "none"; }
	return;
}

/**
+	clearField()
+
+	@requires
+		none
+
+	@arguments
+		field - the DOM object whose value you wish to clear (will almost always be the self-reference of this)
+		text - the default text of the field
*/
function clearField(field, text) {
	if (field.value == text) { field.value = ""; }
	return;
}


// image swap for granite hover galleries
function swap(xSrc,xName) {
	var image = "images/gallery/" + xSrc.toString();
	document.getElementById(xName).src = image;
	document.getElementById('gallery2').innerHTML = xName;
	
	return false;
}

// image swap for before and after galleries
function BAswap(xSrc) {
	var currImg = xSrc.src;
	var newImg = "";

	// switch image name
	if (currImg.indexOf('b.jpg') != -1) { newImg = currImg.replace('b.jpg','a.jpg'); }
	else { newImg = currImg.replace('a.jpg','b.jpg'); }
	
	xSrc.src = newImg;
		
	return false;
}

// preloads gallery images
function preloader(page) {
	var images = new Image();
	var preImages = new Array();
	
	// switches page and adds images on that page
	var pn = page.toString();
	if (pn.indexOf('gallery2') != -1) {
			preImages[0] = 'images/gallery/aa_image001.jpg';
			preImages[1] = 'images/gallery/aa_image002.jpg';
			preImages[2] = 'images/gallery/aa_image003.jpg';
			preImages[3] = 'images/gallery/aa_image004.jpg';
			preImages[4] = 'images/gallery/aa_image005.jpg';
			preImages[5] = 'images/gallery/ldg_image001.jpg';
			preImages[6] = 'images/gallery/ldg_image002.jpg';
			preImages[7] = 'images/gallery/ldg_image003.jpg';
			preImages[8] = 'images/gallery/ldg_image004.jpg';
			preImages[9] = 'images/gallery/ldg_image005.jpg';
			preImages[10] = 'images/gallery/ldg_image006.jpg';
			preImages[11] = 'images/gallery/ldg_image007.jpg';
			preImages[12] = 'images/gallery/ldg_image008.jpg';
			preImages[13] = 'images/gallery/ldg_image009.jpg';
			preImages[14] = 'images/gallery/ldg_image010.jpg';
			preImages[15] = 'images/gallery/bp_gallery16.jpg';
			preImages[16] = 'images/gallery/bp_gallery17.jpg';
			preImages[17] = 'images/gallery/bp_gallery18.jpg';
			preImages[18] = 'images/gallery/bp_gallery19.jpg';
			preImages[19] = 'images/gallery/bp_gallery20.jpg';
			preImages[20] = 'images/gallery/bp_gallery21.jpg';
			preImages[21] = 'images/gallery/bp_gallery22.jpg';
			preImages[22] = 'images/gallery/bp_gallery23.jpg';
			preImages[23] = 'images/gallery/bp_gallery24.jpg';
			preImages[24] = 'images/gallery/bp_gallery25.jpg';
			preImages[25] = 'images/gallery/bp_gallery26.jpg';
			preImages[26] = 'images/gallery/bp_gallery27.jpg';
			preImages[27] = 'images/gallery/bp_gallery28.jpg';
			preImages[28] = 'images/gallery/bp_gallery29.jpg';
			preImages[29] = 'images/gallery/bp_gallery30.jpg';
			preImages[30] = 'images/gallery/bp_gallery31.jpg';
			preImages[31] = 'images/gallery/bp_gallery32.jpg';
			preImages[32] = 'images/gallery/bp_gallery33.jpg';
			preImages[33] = 'images/gallery/bp_gallery34.jpg';
			preImages[34] = 'images/gallery/bp_gallery35.jpg';
			preImages[35] = 'images/gallery/bp_gallery36.jpg';
			preImages[36] = 'images/gallery/bp_gallery37.jpg';
			preImages[37] = 'images/gallery/bp_gallery38.jpg';
			preImages[38] = 'images/gallery/bp_gallery39.jpg';
			preImages[39] = 'images/gallery/bp_gallery40.jpg';
			preImages[39] = 'images/gallery/cdd_1.jpg';
			preImages[40] = 'images/gallery/cdd_2.jpg';
			preImages[41] = 'images/gallery/cdd_3.jpg';
			preImages[42] = 'images/gallery/cdd_4.jpg';
			preImages[43] = 'images/gallery/cdd_5.jpg';
			preImages[44] = 'images/gallery/cdd_6.jpg';
			preImages[45] = 'images/gallery/cdd_7.jpg';
			preImages[46] = 'images/gallery/cdd_8.jpg';
			preImages[47] = 'images/gallery/cdd_9.jpg';
			preImages[48] = 'images/gallery/cdd_10.jpg';
			preImages[49] = 'images/gallery/cdd_11.jpg';
			preImages[50] = 'images/gallery/cdd_12.jpg';
			preImages[51] = 'images/gallery/cdd_13.jpg';
			preImages[52] = 'images/gallery/cdd_14.jpg';
			preImages[53] = 'images/gallery/cdd_15.jpg';
			preImages[54] = 'images/gallery/cdd_16.jpg';
			preImages[55] = 'images/gallery/cdd_17.jpg';
			preImages[56] = 'images/gallery/cdd_18.jpg';
			preImages[57] = 'images/gallery/cdd_19.jpg';
	}
	
	// start preloading
	for (i = 0; i < preImages.length; i++) {
		images[i].src = preImages[i];
	}
	
	return true;
}

/**
+	fillField()
+
+	@requires
+		isblank()
+
+	@arguments
+		field - the DOM object whose value you wish to fill (will almost always be the self-reference of this)
+		text - the default text of the field
*/
function fillField(field, text) {
	if (isblank(field.value)) { field.value = text; }
	return;
}

// finds if a string is blank (nothing but spaces)
function isblank(x) {
	var blank = true;
	for (i = 0; i < x.length; i++) {
		if (x.charAt(i) != ' ') { blank = false; }
	}
	return blank;
}

// finds if a form value is empty
function isempty(x) {
	if (x == "" || isblank(x)) { return true; }
	else { return false; }
}

// finds if a select box has not been changed
function unchanged(x) {
	if (x.selectedIndex == 0) { return true; }
	else { return false; }
}


// Toggle div that only shows one at a time
function toggleone(thechosenone) {
	var togglebox = document.getElementsByTagName("div");
			for(var x=0; x<togglebox.length; x++) {
			name = togglebox[x].getAttribute("name");
			if (name == 'togglebox') {
				if (togglebox[x].id == thechosenone) {
					togglebox[x].style.display = 'block';
				}
				else {
					togglebox[x].style.display = 'none';
				}
			}
	}
}
