
Event.observe(window, 'load', function() {
   loadActiveStylesheet();
   $$('#text-sizer a').each(function(link) {
	  link.onclick = function() {
			setActiveStyleSheet(link.title);
			return false;
		}
   })
});

Event.observe(window, 'unload', unloadActiveStylesheet);


function validateEmail(address) {
	var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	return filter.test(address);
}

function autoClearInput(input) {

   if($(input)) {

	  input = $(input);

	  if(input.type == 'text' || input.type == 'textarea') {
		 input.onfocus = function() {
			if (this.value == this.defaultValue){
			   this.value='';
			   this.removeClassName('defaultValue');
			}
		 };

		 input.onblur = function() {
			if (!this.value) {
			   this.value = this.defaultValue;
			   this.addClassName('defaultValue');
			}
		 };
		 
		 if (input.value == input.defaultValue) input.addClassName('defaultValue');
		 else input.removeClassName('defaultValue');

	  }
   }

}

/* SCRIPT FROM A LIST APART'S STYLESHEET SWITCHER
*******************************************************************************
Source: http://www.alistapart.com/stories/alternate/ 
Modifications:
   The window.onload and window.onunload statements have been put 
   into functions called loadActiveStylesheet() and unloadActiveStylesheet() so
   that they play well with other loading and unloading logic. Loading and 
   unloading is handled in custom.js.
*/

function setActiveStyleSheet(title) {
  var i, a, main;
  for (i = 0; (a = document.getElementsByTagName("link")[i]); i++) 
  {
	  if (a.getAttribute("rel")) {
		if (a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
			a.disabled = true;
			if (a.getAttribute("title") == title) a.disabled = false;
		}
	}
  }
}

function getActiveStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
	if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) return a.getAttribute("title");
  }
  return null;
}

function getPreferredStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
	if(a.getAttribute("rel").indexOf("style") != -1
	   && a.getAttribute("rel").indexOf("alt") == -1
	   && a.getAttribute("title")
	   ) return a.getAttribute("title");
  }
  return null;
}

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 expires = "";
  document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for(var i=0;i < ca.length;i++) {
	var c = ca[i];
	while (c.charAt(0)==' ') c = c.substring(1,c.length);
	if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
  }
  return null;
}

function loadActiveStylesheet(e) {
  var cookie = readCookie("style");
  var title = cookie ? cookie : getPreferredStyleSheet();
  setActiveStyleSheet(title);
}

function unloadActiveStylesheet(e) {
  var title = getActiveStyleSheet();
  createCookie("style", title, 365);
}

var cookie = readCookie('style');
var title = cookie ? cookie : getPreferredStyleSheet();
setActiveStyleSheet(title);

/* ****************************************************************************
 * END STYLESHEET SWITCHER
** ************************************************************************** */
