function clearField(e, defaultTxt)
{
	if (e != null)
	{
		if (e.value == defaultTxt)
		{
			e.value = "";
		}
	}
}

function fillField(e, txt)
{
	if (e != null)
	{
		if (e.value == "")
		{
			e.value = txt;
		}
	}
}

function openFAQ(url)
{
	window.open(url, "FAQ", "width=400, height=400, scrollbars=1");
}

function togglePass(boolShow)
{
	var show = document.getElementById("ShowPass");
	var hide = document.getElementById("HidePass");
	
	if (boolShow)
	{
		show.style.visibility = "visible";
		show.style.display = "block";
		hide.style.visibilty = "hidden";
		hide.style.display = "none";
	}
	else
	{
		show.style.visibility = "hidden";
		show.style.display = "none";
		hide.style.visibilty = "visible";
		hide.style.display = "block";
	}
}

var spinnerLoaded = false;
var spinner = null;

function initSpinner()
{
	spinner = document.getElementById("Spinner");
}

function startSpinner(el)
{
	if (el != null)
	{
		el.disabled = true;
		
		if (spinner != null)
		{
			spinner.style.visibility = 'visible';
			spinner.style.display = 'inline';
			
			return true;
		}
	}
	
	return false;
}

function stopSpinner(oForm)
{
	oForm.btnSubmit.disabled = false;
	
	if (spinner != null)
	{
		spinner.style.visibility = 'hidden';
		spinner.style.display = 'none';
	}
}

/* FORM VALIDATION */

function validateContact(oForm)
{
	startSpinner(oForm.btnSubmit); 
	
	oForm.tbxName.value = (oForm.tbxName.value == "Artist Name") ? "" : oForm.tbxName.value;
	if (!checkText(oForm.tbxName,"Please enter an Artist Name.")) 
	{
		stopSpinner(oForm);
		return false;
	}
	
	oForm.tbxEmail.value = (oForm.tbxEmail.value == "Email") ? "" : oForm.tbxEmail.value;
	if (!checkEmail(oForm.tbxEmail,"Please enter an Email address."))
	{
		stopSpinner(oForm);
		return false;
	}
	
	oForm.tbxStory.value = (oForm.tbxStory.value == "Your Story") ? "" : oForm.tbxStory.value;
	if (!checkText(oForm.tbxStory,"Please enter your Story.")) 
	{
		stopSpinner(oForm);
		return false;
	}
	
	return true;
}

function validateLogin(oForm)
{
	startSpinner(oForm.btnSubmit); 
	
	oForm.tbxUsername.value = (oForm.tbxUsername.value == "Username") ? "" : oForm.tbxUsername.value;
	if (!checkText(oForm.tbxUsername,"Please enter your Username.")) 
	{
		stopSpinner(oForm);
		return false;
	}
	
	oForm.tbxPassword.value = (oForm.tbxPassword.value == "Password") ? "" : oForm.tbxPassword.value;
	if (!checkText(oForm.tbxPassword,"Please enter your Password.")) 
	{
		stopSpinner(oForm);
		return false;
	}
	
	return true;
}

function validateUser(oForm, userID)
{
	startSpinner(oForm.btnSubmit); 
	
	if (!checkText(oForm.tbxName,"Please enter a Name.")) 
	{
		stopSpinner(oForm);
		return false;
	}
	
	if (!checkText(oForm.tbxUsername,"Please enter a Username.")) 
	{
		stopSpinner(oForm);
		return false;
	}
	
	if (userID == -1)
	{
		if (oForm.tbxPassword.value == "")
		{
			alert("Please enter a password.");
			oForm.tbxPassword.focus();
			stopSpinner(oForm);
			return false;
		}
		else if (oForm.tbxPassword.value != oForm.tbxConfirmPassword.value)
		{
			alert("Passwords must match.");
			stopSpinner(oForm);
			return false;
		}
	}
	else
	{
		if (oForm.tbxPassword.value != "")
		{
			if (oForm.tbxPassword.value != oForm.tbxConfirmPassword.value)
			{
				alert("Passwords must match.");
				stopSpinner(oForm);
				return false;
			}
		}
	}
	
	return true;
}

function validateArtist(oForm)
{
	startSpinner(oForm.btnSubmit); 
	
	if (!checkText(oForm.tbxArtistName,"Please enter your Artist's Name.")) 
	{
		stopSpinner(oForm);
		return false;
	}
	
	if (!checkText(oForm.tbxBio,"Please enter your Bio.")) 
	{
		stopSpinner(oForm);
		return false;
	}
	
	if (oForm.tbxBio.value.length > 750)
	{
		stopSpinner(oForm);
		alert("Bio is limited to 750 characters.  Please shorten your entry and re-submit. Current length: " + oForm.tbxBio.value.length + " characters.");
		oForm.tbxBio.focus();
		return false;
	}

	return true;
}

function validateAlbum(oForm)
{
	startSpinner(oForm.btnSubmit); 
	
	if (!checkText(oForm.tbxTitle,"Please enter your Album Title.")) 
	{
		stopSpinner(oForm);
		return false;
	}
	
	if (!checkText(oForm.tbxAbout,"Please enter your About the Album info.")) 
	{
		stopSpinner(oForm);
		return false;
	}
	
	if (!checkText(oForm.tbxReleaseDate,"Please enter your Release Date.")) 
	{
		stopSpinner(oForm);
		return false;
	}
	
	return true;
}

function validateTracks(oForm)
{
	startSpinner(oForm.btnSubmit); 
	
	return true;
}

function validateTracklist(oForm)
{
	startSpinner(oForm.btnSubmit); 

	return true;
}

/* END FORM VALIDATION */

function deleteAlbum(url)
{
	if (window.confirm("Are you sure you want to remove this album?"))
		document.location.href = url;
}

function confirmDelete()
{
	if (!window.confirm("Are you sure you want to delete this track?"))
	{
		return false;
	}
	
	return true;
}