// JavaScript Document
/*
*************************************************

swfIR
JS Functions

Created by the ridiculous Dan Mall
http://www.danielmall.com

*************************************************
*/

function addLoadEvent(func){
    var oldonload = window.onload;
    if(typeof window.onload != 'function'){
        window.onload = func;
    }else{
        window.onload = function(){
            oldonload();
            func();
        }
    }
}

/*---- Grey Initial Values ------ */

function greyInitialValues(){
	var filled = getElementsByClassName("filled");
	
	if(filled.length > 0){
		for(var i = 0; i < filled.length; i++){
			filled[i].className = "empty";
			filled[i].initialValue = filled[i].value;
			
			filled[i].onclick = filled[i].onfocus = function(){
				this.className = "filled";
				if(this.value == this.initialValue){
					this.value= "";
				}
			}
			
			filled[i].onblur = function(){
				if(this.value == this.initialValue || this.value == ""){
					this.className = "empty";
					this.value = this.initialValue;
				}else{
					this.className = "filled";
				}
			}
		}
	}else{ 
		return; 
	}
}
addLoadEvent(greyInitialValues);

/*---- Grey Initial Values ------ */


/*---- Add effects ------ */
function addEffects(){
	
	if(!document.getElementById || !document.createElement){ return; }
	
	if(document.getElementById('example')){
		var example = document.getElementById('example');
	}else{
		return;
	}
	
	var effects = document.createElement('div');
	effects.setAttribute('id', 'effects');
	
	example.appendChild(effects);
	
	var effects_so = new SWFObject("/swf/effects.swf", "effectsflash", "114", "266", "6", "#9dcee0");
	effects_so.write("effects");
}
addLoadEvent(addEffects);

/*---- changeEffect ------ */
function changeEffect(effect, toggle){
	
	document.getElementById("example").removeChild(document.getElementById("example").getElementsByTagName('span').item(0));
	
	var img = document.createElement("img");
		img.id = "photo";
		img.src = "photos/img.jpg";
		img.alt = "Photo example";
		img.width = "343";
		img.style.border = 'none';
		img.style.padding = '0';
		img.style.width = '343px';
	document.getElementById("example").insertBefore(img, document.getElementById("example").firstChild);
	
	sir.specify('overflow', 'expand-y');
	switch (effect) {
		
		case "shadow":
			if(toggle == "on"){
				sir.specify('shadow-blur', '15');
			}else{
				sir.specify('shadow-blur', '0');
			}			
			break;

		case "corners" :
			if(toggle == "on"){
				sir.specify('border-radius', '15');
			}else{
				sir.specify('border-radius', '0');
			}
			break;
		
		case "rotate":
			if(toggle == "on"){
				sir.specify('rotate', '-5');
			}else{
				sir.specify('rotate', '0');
			}
			break;
		
		case "border":
			if(toggle == "on"){
				sir.specify('border-width', '15');
				sir.specify('border-color', 'fff');
			}else{
				sir.specify('border-width', '0');
				sir.specify('border-color', '000');
			}
			break;

	}
	
	sir.swap("#example img");

}


/*---- form validation ------ */
function checkForm(emailID){
	if(!document.getElementById){ return; }

	var requiredFields;
	var submitForm = true;
	var emailTest = /^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9])+(\.[a-zA-Z0-9_-]+)+$/;
	
	if(document.getElementById('required')){
		requiredFields = document.getElementById('required').value.split(','); //creates an array based on the required fields specified in the "hidden" input value
	}

	//see if they have values
	for(i = 0; i<requiredFields.length; i++){
		if(document.getElementById(requiredFields[i]).value == ""){
			highlightField(requiredFields[i]);
			submitForm = false;
		}else{
			if(requiredFields[i] == emailID){
				if(!emailTest.test(document.getElementById(emailID).value)){
					submitForm = false;
					highlightField(requiredFields[i]);
				}else{
					document.getElementById(requiredFields[i]).className = "";
				}
			}else{
				document.getElementById(requiredFields[i]).className = "";	
			}
		}
	}
	
	if(!submitForm){ 
		alert("Please fill in all required fields.");
		return false; 
	}
	
	return true;
}


function highlightField(fieldID){ document.getElementById(fieldID).className = "stillempty"; }


function attachValidationHandler(formID, emailID){
	if(!document.getElementById) { return; }
	
	
	if(attachValidationHandler.arguments.length == 1){	
		document.getElementById(formID).onsubmit = function(){ 
			return checkForm(); 
		}
	}else{
		document.getElementById(formID).onsubmit = function(){ 
			return checkForm(emailID); 
		}
	}
}

/*---- end form validation ------ */


function addDOMLoadEvent(func) {
   if (!window.__load_events) {
	  var init = function () {
		  if (arguments.callee.done) return;
		  arguments.callee.done = true;
		  if (window.__load_timer) {
			  clearInterval(window.__load_timer);
			  window.__load_timer = null;
		  }
		  for (var i=0;i < window.__load_events.length;i++) {
			  window.__load_events[i]();
		  }
		  window.__load_events = null;
	  };
	  if (document.addEventListener) {
		  document.addEventListener("DOMContentLoaded", init, false);
	  }
	  if (/WebKit/i.test(navigator.userAgent)) {
		  window.__load_timer = setInterval(function() {
			  if (/loaded|complete/.test(document.readyState)) {
				  init();
			  }
		  }, 10);
	  }
	  window.onload = init;
	  window.__load_events = [];
   }
   window.__load_events.push(func);
}

/* -----    getElementsByClassName  -----
	by SCOTT SCHILLER
	http://www.schillmania.com
-----------------------------------*/

function getElementsByClassName(className,oParent) {
  var doc = (oParent||document);
  var matches = [];
  var nodes = doc.all||doc.getElementsByTagName('*');
  for (var i=0; i<nodes.length; i++) {
    if (nodes[i].className == className || nodes[i].className.indexOf(className)+1 || nodes[i].className.indexOf(className+' ')+1 || nodes[i].className.indexOf(' '+className)+1) {
      matches[matches.length] = nodes[i];
    }
  }
  return matches; // kids, don't play with fire. ;)
}

/* end scripts by SS */

