function ExpandTextarea(formItem,width,height,margin) {

   if(navigator.appVersion.search('MSIE 6') == -1) {
      
      //Not IE6
      
         formItem.style.margin = margin;
         formItem.style.width = width+'px';
         formItem.style.height = height+'px';
      
   } else {
      
      //IE6: fix textarea height
      
         formItem.style.margin = margin;
         formItem.style.width = width+'px';
         formItem.style.height = (height+10)+'px';
         
   }

}

function CheckContactForm(formId) {
   
   var returnStatus = true;
   var focusTo = "";
   var form = document.forms[formId];
   var className = "";
   
   if(className = GetFormFieldStatus(form.YourName,"text")) { form.YourName.className = className; if(!focusTo) { focusTo = "YourName"; } returnStatus = false; }
   if(className = GetFormFieldStatus(form.YourEmail,"email")) { form.YourEmail.className = className; if(!focusTo) { focusTo = "YourEmail"; } returnStatus = false; }
   if(className = GetFormFieldStatus(form.YourWeb,"url")) { form.YourWeb.className = className; if(!focusTo) { focusTo = "YourWeb"; } returnStatus = false; }
   if(className = GetFormFieldStatus(form.YourCompany,"text")) { form.YourCompany.className = className; if(!focusTo) { focusTo = "YourCompany"; } returnStatus = false; }
   if(className = GetFormFieldStatus(form.YourMessage,"text")) { form.YourMessage.className = className; if(!focusTo) { focusTo = "YourMessage"; } returnStatus = false; }
   
   if(focusTo) { document.getElementById(focusTo).focus(); }
   
   return returnStatus;
   
}

function ResetContactForm(formId) {
   
   var form = document.forms[formId];
   
   ResetFormFieldStatus(form.YourName,true);
   ResetFormFieldStatus(form.YourEmail,true);
   ResetFormFieldStatus(form.YourCompany,true);
   ResetFormFieldStatus(form.YourWeb,true);
   ResetFormFieldStatus(form.YourMessage,true);
   
   return returnStatus;
}

function GetFormFieldStatus(field,type) {
   
   var string = field.value;
   var stringLength = string.length;
   var className = "";
   
   if(stringLength < 1) {
      
      className = "missing";
      
   } else if(type == "email" && !CheckEmail(string)) {
      
      className = "invalid";
      
   } else if(type == "url" && !CheckUrl(string)) {
      
      className = "invalid";
      
   }
   
   return className;
   
}

function SetFormFieldStatus(field,type) {
   
   className = GetFormFieldStatus(field,type);
   
   field.className = className;
   
}

function ResetFormFieldStatus(field,anyway) {
   
   if(field.value.length > 0 || anyway) {
      field.className = "";
   }
   
}

function NoSpam() {
   
   var contentContainer = "";
   var contentText = "";
   
   contentContainer = document.getElementById('Content');
   
   contentText = contentContainer.innerHTML;
   
   //contentText = contentText.replace(/nospam/g,'@');
   //contentText = contentText.replace(/url/g,'andortamas.co.uk');
   
   contentText = contentText.replace(/ \[at\] /g,'@');
   contentText = contentText.replace(/ \[dot\] /g,'.');
   contentText = contentText.replace(/\[co\]/g,'co');
   contentText = contentText.replace(/\[uk\]/g,'uk');
   
   contentContainer.innerHTML = contentText;
   
}

function CheckEmail(email) {
   
   var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
   
   if (!filter.test(email)) { return false; }
   else { return true; }
   
}

function CheckUrl(url) {
   
   var filter = /^(([\w]+:)?\/\/)?(([\d\w]|%[a-fA-f\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)?@)?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)?$/;
   
   if (!filter.test(url)) { return false; }
   else { return true; }
   
}