//var u_flds=new Array('first_name','last_name','address1','address2','city','postcode','phone_number','email_address','mobile','memb_num','junior','dob','cfirst_name','clast_name');
var m_flds=new Array('first_name','last_name','bhdtanum1','dob1','address1','address2','city','postcode','phone_number','email_address','mobile','memb_num','cfirst_name','clast_name','mnew','useemail','first_name2','last_name2','bhdtanum2','dob2','first_name3','last_name3','bhdtanum3','dob3','first_name4','last_name4','bhdtanum4','dob4');

//var e_flds=new Array('class','groomname','h_vehicle','h1_name','h1_breed','h1_age','h1_sex','h1_height','h2_name','h2_breed','h2_age','h2_sex','h2_height','h3_name','h3_breed','h3_age','h3_sex','h3_height','h4_name','h4_breed','h4_age','h4_sex','h4_height');

//fields are posted to server by name but read by Mozilla by id. Mozilla can get some element types by name but not all...

//-----------------------------------------------------------------------------------------------
function m_clear()
{
saveCookie('mdetails',"");          //clear user/customer details
//saveCookie('edetails',"");          //clear event/horse details
}
//-----------------------------------------------------------------------------------------------
function m_save()
{
 m_save_ex(m_flds,'mdetails');          //save member/user details
// m_save_ex(e_flds,'edetails');          //save event/horse details
}
//-----------------------------------------------------------------------------------------------
function m_init()
{
m_init_base();
m_init_join();
}
//-----------------------------------------------------------------------------------------------
function m_init_base()
{
m_calculateprice();
}
//-----------------------------------------------------------------------------------------------
function m_init_join()
{
m_read_ex(m_flds,'mdetails');        //just load fields from saved cookies
//m_read_ex(e_flds,'edetails');        //just load fields from saved cookies


var all = document.getElementsByTagName('input');
var imax = all.length;
 for (var i = 0;i<imax;i++) {
  o = all[i];
  o.onfocus= function () {
    m_sethelp(this.name);
    }

  o.onmouseover=m_mousehelp;
  o.onmouseout=m_mouseout;
  }

o = document.getElementById('mtype');
o.onmouseover=m_mousehelp;
o.onmouseout=m_mouseout;

m_calculateprice();

m_sethelp(m_mode);
}
//-----------------------------------------------------------------------------------------------
function m_newclick()
//called when new member changes - hide/show new member details
{
//no action for IHDT members

}
//-----------------------------------------------------------------------------------------------
function m_typechange()
//called when membership type changes - hide show more members
{
var i,n;

var o = igetElement('mtype');               //get class selector as it changes number  etc

if (!o) return;                             //oops can't find it
switch (o.value) {
case "0":
case "1":
  n=1;
  break;
case "3":
  n=1;
  break;
default:
  n=3;
  }
for (i=2;i<=4;i++) { //for all the possible name entry rows
  m_setvisibility('m' + i + 'row', (i <= n));
  }

  m_calculateprice();
}
//----------------------------------------------------------------
function m_cardisdriver()     //fill in cardname from drivername
{
igetElement('cfirst_name').value = igetElement('first_name').value;
igetElement('clast_name').value = igetElement('last_name').value;
}
//-----------------------------------------------------------------------------------------------
function m_calculateprice()
{
var i,n,s;
var cost;

switch (igetElement('mtype').value) {
case "1":
  n=1;
  cost = 25
  break;
case "3":
  n=1;
  cost = 10
  break;
default:
  n=3;
  cost = 60
  }

  igetElement('cost').innerHTML = 'Total cost: £' + FormatMyNumber(cost,2);

  igetElement('amount').value = FormatMyNumber(cost,2);

  return cost;
}
//-----------------------------------------------------------------------------------------------
function m_validate()
{
var msg='';
var n;
var o;
var i;
var s;

if ((igetElement('first_name').value.length < 1) || (igetElement('last_name').value.length < 3)) {
  msg += 'We need a valid name, please\n';
  }

if  (igetElement('address1').value.length + igetElement('address2').value.length < 8) {
  msg += 'We need a valid address, please\n';
  }

if  (igetElement('city').value.length < 3) {
  msg += 'We need a valid town, please\n';
  }

if  (igetElement('postcode').value.length < 6) {
  msg += 'We need a valid postcode, please\n';
  }

if (!mcheckphone(igetElement('phone_number').value)) {
  msg += 'We need a valid phone number in case we need to contact you about your entry or payment\n';
  }

if (!checkemail(igetElement('email_address').value)){
  msg += 'We need a valid email address to acknowledge your entry and payment.  We look after it and won\'t send spam!\n';
  }

if (!igetElement('iagree').checked) {
  msg += 'We can only accept your entry if you agree to abide by the rules - please check the box\n';
  }


switch (igetElement('mtype').value) {
case "0":
case "1":
  n=1;
  break;
case "2":
  n=3;
  break;
case "3":
  n=1;
  break;
default:
  n=4;
  }

for (i=n+1;i<=4;i++) { //for all the possible name entry rows after valid entries, clear
  igetElement('first_name' + i).value = '';
  igetElement('last_name' + i).value = '';
  igetElement('bhdtanum' + i).value = '';
  igetElement('dob' + i).value = '';
  }

for (i=2;i<=n;i++) { //check all required names are filled in
  if (igetElement('first_name' + i).value.length + igetElement('last_name' + i).value.length < 3) {      //if not enough letters in this name
    msg += 'Please fill in name ' + i + '\n';
    }
  }

//now enforce the capitalisation we think correct

CapitaliseNameField('first_name');
CapitaliseNameField('last_name');
CapitaliseNameField('address1');
CapitaliseNameField('address2');
CapitaliseNameField('city');
igetElement('postcode').value = Trim(igetElement('postcode').value).toUpperCase();

CapitaliseNameField('cfirst_name');
CapitaliseNameField('clast_name');

s = "";

igetElement('newnotes').value = s;

if (msg.length>1) {
  alert(msg);
  return false;
  }

return true;
}
//------------------------------------------------------------------------------------------------------------------



