function MM_displayStatusMsg(msgStr) { //v1.0
  status=msgStr;
  document.MM_returnValue = true;
}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function YY_checkform() { //v4.71
//copyright (c)1998,2002 Yaromat.com
  var a=YY_checkform.arguments,oo=true,v='',s='',err=false,r,o,at,o1,t,i,j,ma,rx,cd,cm,cy,dte,at;
  for (i=1; i<a.length;i=i+4) {
    if (a[i+1].charAt(0)=='#') {
    	r=true; 
    	a[i+1] = a[i+1].substring(1);
    } else {
    	r=false;
    }
    o = MM_findObj(a[i].replace(/\[\d+\]/ig,""));
    o1 = MM_findObj(a[i+1].replace(/\[\d+\]/ig,""));
    v = o.value;
    t = a[i+2];
    if (o.type=='text' || o.type=='password' || o.type=='hidden') {
      if (r && v.length==0) err = true;
      if (v.length > 0)
      	if (t==1){ //fromto
       	  ma = a[i+1].split('_');
       	  if (isNaN(v)||v<ma[0]/1||v > ma[1]/1) err=true;
      	} else if (t==2) {
      	  rx = new RegExp("^[\\w\.=-]+@[\\w\\.-]+\\.[a-zA-Z]{2,4}$");
      	  if (!rx.test(v)) err=true;
	    } else if (t==3){ // date
    	  ma=a[i+1].split("#");
    	  at=v.match(ma[0]);
          if(at) {
          	cd = (at[ma[1]]) ? at[ma[1]] : 1;
          	cm = at[ma[2]]-1;
          	cy = at[ma[3]];
          	dte = new Date(cy,cm,cd);
          	if (dte.getFullYear()!=cy||dte.getDate()!=cd||dte.getMonth()!=cm) err = true;
          } else err = true;
      	} else if (t==4){ // time
          ma=a[i+1].split("#");
          at=v.match(ma[0]);
          if(!at) err=true;
      	} else if (t==5){ // check this 2
          if (o1.length) o1 = o1[a[i+1].replace(/(.*\[)|(\].*)/ig,"")];
          if (!o1.checked) err = true;
      } else if (t==6){ // the same
            if (v != MM_findObj(a[i+1]).value) err=true;
      }
    } else if (!o.type&&o.length > 0 && o[0].type == 'radio') {
          at = a[i].match(/(.*)\[(\d+)\].*/i);
          o2= (o.length>1) ? o[at[2]] : o;
      if (t==1 && o2 && o2.checked && o1 && o1.value.length / 1 == 0) err = true;
      else if (t==2) {
        oo = false;
        for (j=0; j<o.length; j++) oo = oo || o[j].checked;
        if (!oo) s += '* '+a[i+3]+'\n';
      }
    } else if (o.type == 'checkbox'){
      if ((t==1 && o.checked==false) || 
      	  (t==2 && o.checked && o1 && o1.value.length / 1 == 0)) err = true;
    } else if (o.type == 'select-one' || o.type == 'select-multiple'){
      if (t==1 &&o.selectedIndex/1==0) err = true;
    } else if (o.type == 'textarea') {
      if (v.length < a[i+1]) err = true;
    }
    if (err) {
    	s += '* '+a[i+3]+'\n'; 
    	err=false;
    }
  }
  if (s!='') alert('The required information is incomplete or contains errors:\t\t\t\t\t\n\n'+s);
  document.MM_returnValue = (s=='');
}

var handle_contactForm_onsubmit = function() {
	var contact_form = document.getElementById('contact');
	YY_checkform('contact','name','#q','0','Please enter your name or handle.',
				 'email','#S','2','Please enter a valid email address.',
				 'validity','#q','0','Please enter the validation code.',
				 'message','5','1','Please enter your message or feedback.');
	return document.MM_returnValue;
}

window.onload = function() {
	var contact_form = document.getElementById('contact');
	if (contact_form) contact_form.onsubmit = handle_contactForm_onsubmit;
}
