// Add trim to strings:
function strtrim() {
	return this.replace(/^\s+/,'').replace(/\s+$/,'');
}
String.prototype.trim = strtrim;
	
function isEmpty(iStr) {
	return (iStr == null || iStr == "" || iStr.trim() == "")
}


function email_obscure (username, domain, ext, content) {
 // Build mailto tag that's hard to harvest, given user, domain, and optional content
 // If content is not given, user and domain are used
	var atsign = "&#64;";
	var dot = "&#46;";
  var addr = username + atsign + domain + dot + ext;
	if (!content) {
		content = addr;
	}
        document.write( 
          "<" + "a" + " " + "href=" + "\"" + "mail" + "to:" + addr + "\"" +
          //Tracking code from Mark 4/25/2011:
         " onClick=\"javascript: _gaq.push(['_trackPageview', '/email_Clicks']);\"" + ">" + 
         content 
         + "<\/a>"
	);
}


// For contact form:
function isValidInput(frmForm) {
 // Name must be non-empty, and Phone must be at least 7 characters
 // If not empty, Email must contain at least one @ and at least one period, neither at beginning or end
	var sName = frmForm.Name.value;
	if (isEmpty(sName)) {
		alert("Please enter your Name.");
		return false;
	}
	var sPhone =  frmForm.Phone.value;
	if (isEmpty(sPhone)) {
		alert("Please enter your Phone number.");
		return false;
	}
	if (sPhone.trim().length < 7) {
		alert("Please enter a valid Phone number.");
		return false;
	}
	var sEmail = frmForm.EmailFrom.value;
	if (!isEmpty(sEmail)) {
		var iPos = sEmail.indexOf("@");
		if (iPos <= 0 || iPos == sEmail.length-1) {
			alert("Please enter a valid Email address.");
			return false;
		}
		iPos = sEmail.indexOf(".");
		if (iPos <= 0 || iPos == sEmail.length-1) {
			alert("Please enter a valid Email address.");
			return false;
		}
	}
	return true;
}

function TickTock ( ) {
  // Write formatted clock to id "clock"
  var days = new Array("SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN");
	//var days = new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday");
	var months = new Array("JAN", "FEB", "MAR", "APR", "MAY", "JUN", "JUL", "AUG", "SEP", "OCT", "NOV", "DEC");
	//var months = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");

  var now = new Date( );
  var curHours = now.getHours( );
  var curMinutes = now.getMinutes( );
  var curSeconds = now.getSeconds( );
	
	// Pretty it up:
  curMinutes = ( curMinutes < 10 ? "0" : "" ) + curMinutes;
  curSeconds = ( curSeconds < 10 ? "0" : "" ) + curSeconds;
  // am or pm:
	var ampm = ( curHours < 12 ) ? "AM" : "PM";
  curHours = ( curHours > 12 ) ? curHours - 12 : curHours;
  curHours = ( curHours == 0 ) ? 12 : curHours;

  var curTimeString = days[now.getDay()] + ", " 
  									+ months[now.getMonth()] + " "
  									+ now.getDate() + ", "
  									+ now.getFullYear() + " "
  									+ curHours + ":" + curMinutes + ":" + curSeconds + " " + ampm;
	//write to id "clock"
	document.getElementById("clock").firstChild.nodeValue = curTimeString;
}

