// Make calls to other operations from this file. 


// fired at the end of the page once all html has loaded
function onDOMload () {
	if(typeof sIFR == "function"){
		switchFonts();
	};
	if(typeof buildTransitions == "function") {
		buildTransitions();
	};
};

// fired once all content has loaded
function onPageLoad () {
	
};



document.onload = onPageLoad();


var mmOpenContainer = null;
var mmOpenMenus = null;
var mmHideMenuTimer = null;

function MM_menuStartTimeout(hideTimeout) {
	mmHideMenuTimer = setTimeout("MM_menuHideMenus()", hideTimeout);	
}

function MM_menuHideMenus() {
	MM_menuResetTimeout();
	if(mmOpenContainer) {
		var c = document.getElementById(mmOpenContainer);
		c.style.visibility = "inherit";
		mmOpenContainer = null;
	}
	if( mmOpenMenus ) {
		for(var i in mmOpenMenus) {
			var m = document.getElementById(mmOpenMenus[i]);
			m.style.visibility = "hidden";			
		}
		mmOpenMenus = null;
	}
}

function MM_menuHideSubmenus(menuName) {
	if( mmOpenMenus ) {
		var h = false;
		var c = 0;
		for(var i in mmOpenMenus) {
			if( h ) {
				var m = document.getElementById(mmOpenMenus[i]);
				m.style.visibility = "hidden";
			} else if( mmOpenMenus[i] == menuName ) {
				h = true;
			} else {
				c++;
			}
		}
		mmOpenMenus.length = c+1;
	}
}

function MM_menuOverMenuItem(menuName, subMenuSuffix) {
	MM_menuResetTimeout();
	MM_menuHideSubmenus(menuName);
	if( subMenuSuffix ) {
		var subMenuName = "" + menuName + "_" + subMenuSuffix;
		MM_menuShowSubMenu(subMenuName);
	}
}

function MM_menuShowSubMenu(subMenuName) {
	MM_menuResetTimeout();
	var e = document.getElementById(subMenuName);
	e.style.visibility = "inherit";
	if( !mmOpenMenus ) {
		mmOpenMenus = new Array;
	}
	mmOpenMenus[mmOpenMenus.length] = "" + subMenuName;
}

function MM_menuResetTimeout() {
	if (mmHideMenuTimer) clearTimeout(mmHideMenuTimer);
	mmHideMenuTimer = null;
}

function MM_menuShowMenu(containName, menuName, xOffset, yOffset, triggerName) {
	MM_menuHideMenus();
	MM_menuResetTimeout();
	MM_menuShowMenuContainer(containName, xOffset, yOffset, triggerName);
	MM_menuShowSubMenu(menuName);
}

function MM_menuShowMenuContainer(containName, x, y, triggerName) {	
	var c = document.getElementById(containName);
	var s = c.style;
	s.visibility = "inherit";
	
	mmOpenContainer = "" + containName;
}


function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

	function validateForm(form){
		var valid = true;
		var noalert = true;
		var errors = "";
		var display_name = new Array();
		display_name['telephone_number'] = 'Telephone Number';
		display_name['name'] = 'Name';
		for(var i=0;i<form.elements.length;i++){
			if(form.elements[i].className.indexOf('required') > -1){
				var msgel = getElementByIdIn(form.elements[i].name+'_msg',form,'div');
				if(!form.elements[i].value){
					valid = false;
					if(msgel){
						msgel.style.display = '';
						errors += 'Please enter a '+display_name[form.elements[i].name] + '\n'
					}else{
						noalert = false
						alert('Please enter a '+display_name[form.elements[i].name]);
					}
				}else{
					if(msgel){
						msgel.style.display = 'none';
					}
				}
			}
		}
		//Check Telephone Number
		telephone = getElementByIdIn('telephone_number',form,'input');
		if (telephone){
			if (telephone.value != ''){
				fixedtel = telephone.value;
				fixedtel = fixedtel.replace(/[^\d]/g, "");
				if (fixedtel.length < 10){
					getElementByIdIn('telephone_number_msg_1',form,'div').style.display = 'block';
					errors += 'Please correct the telephone number' + '\n'
					valid = false;
				}else{
					getElementByIdIn('telephone_number_msg_1',form,'div').style.display = 'none';
				}
			}
		}
		
		if (!valid && noalert){
			alert(errors);
		}
		
		return valid;
	}
	
	var valid = 0;
	var checked_once = false;
	
	function validateFormSidebar(){
		
		var telephone_checked = false;
		checked_once = true;
		
		$('#sidebar-form form input.required').each(function(){
		  
		  //check fields have been filled in
		  if($(this).attr('value')=="" || $(this).attr('value')==$('label[for="'+$(this).attr('name')+'"]').text())
		  {
		    $('#'+$(this).attr('name')+'_msg').css({'top':$(this).offset().top-$('#row2right').offset().top-3,'position':'absolute'});
		    $('#'+$(this).attr('name')+'_msg').css('display','block');
		    
		    $(this).addClass("form_errors");
		    if($(this).attr('name')=="telephone_number")
		    {
		      telephone_checked = true;
		    }
		  }else{
		    $('#'+$(this).attr('name')+'_msg').hide();
		    $(this).removeClass("form_errors");
		  }
		  
		  //check telephone number is valid
		  if($(this).attr('name')=="telephone_number" && !telephone_checked)
		  {
		    var fixedtel = $(this).attr('value')
		    fixedtel = fixedtel.replace(/[^\d]/g, "");
		    if(fixedtel.length < 10)
		    {
		      $('#'+$(this).attr('name')+'_msg_1').css({'top':$(this).offset().top-$('#row2right').offset().top-3,'position':'absolute'});
		      $('#'+$(this).attr('name')+'_msg_1').css('display','block');
		      
		      $(this).addClass("form_errors");		    
		    }else{
		      $('#'+$(this).attr('name')+'_msg_1').hide();
		      $(this).removeClass("form_errors");
		    }
		  }
		});
		
		if($('#sidebar-form form input.form_errors').size()>0)
		{
		  if($.browser.msie)
      {
        if(parseInt($.browser.version)!=6)
        {
          $('#shadow').width($(document).width());
		      $('#shadow').height($(document).height());
		      $('#shadow').css('opacity','0.5');
		      $('#shadow').fadeIn();
		    }
		  }else{
		    $('#shadow').width($(document).width());
		    $('#shadow').height($(document).height());
		    $('#shadow').css('opacity','0.5');
		    $('#shadow').fadeIn();
		  }
		  $('html, body').animate({scrollTop: $('#row2right').offset().top}, 'slow');
		}else{
		  $('#shadow').fadeOut();
		}
		
		if($('#sidebar-form form input.form_errors').size()>0)
		{
		  return false;
		}else{
		  return true;
		}
	}
	
	jQuery(document).ready(function($) {
	  
	  $('#shadow').click(function(){
	    $('#sidebar-form form input.required').each(function(){
	      $(this).removeClass("form_errors");
	      $('#'+$(this).attr('name')+'_msg').hide();
	      $('#'+$(this).attr('name')+'_msg_1').hide();
	    });
	    
	    $('#shadow').fadeOut();
	  });
	  
	  $('#sidebar-form form input.required').each(function(){
	    $(this).keyup(function(){
	      if(checked_once)
	      {
	        validateFormSidebar();
	      }
	    });
	  });
  });
	
	function getElementByIdIn(id,el,tagName){
		var els = new Array();
		if(tagName){
			els = el.getElementsByTagName(tagName);
		}else{
			els = el.childNodes();
		}
		for(var i=0;i<els.length;i++){
			if(els[i].id == id){
				return els[i];
			}
		}
		return false;
	}

