


parent.document.carton='off';

function emptycart() 
{

parent.document.cat=new Array();
parent.document.desc=new Array();
parent.document.price=new Array();
parent.document.cartcontents=new Array();
parent.document.cartnumber=0;
parent.document.subtotal=0; parent.document.freight='TBA'; parent.document.total='TBA'; parent.document.discount='TBA'; parent.document.totalex='TBA'; parent.document.total=0;
parent.document.cartcontentsstring=' ';
document.getElementById('cart').innerHTML='<div class="topmost"><table width="470" height="140" border="1" rules="none" class="cart"><tr><td align="left" valign="top"><strong style="font-size: 12px;">Shopping cart contents:</strong></td></tr><tr><td valign="top"><table>'+parent.document.cartcontentsstring+'</table></td><td width="100" valign="top" align="right" style="padding-right: 5px;"><a href="checkout.htm" target="shopframe"><img src="checkout.gif" border="none" width="80" height="27" alt="Proceed to checkout..." /></a><br />Sub-total: $'+parent.document.subtotal.toFixed(2)+'<br /><span style="color: red;">Discount: $'+parent.document.discount+'</span><br />Freight: $'+parent.document.freight+'<br />Total: $'+parent.document.totalex+'<br /><span style="color: rgb(190,190,190)">(ex GST)</span><br /><br /><img src="sp.gif" alt="" width="20"/><img class="hand" src="empty.gif" border="none" alt="Empty shopping cart" onclick="emptycart()" /><br /></td></tr></table></div>';
// document.frames['shopframe'].getElementById('totalbox').innerHTML='TBA'; //why doesn't this work?
}

function safepop(theURL,winName,features) 
{
window.open(theURL,winName,features);
}



function validate(thisform)
{ //-----start function validate(this)

if (document.contactform.name.value=="") {alert('Please enter a contact name         '); document.contactform.name.focus(); return false;}

if (document.contactform.phone.value=="" && document.contactform.email.value=="") {alert('Please enter your phone number or email address.          '); document.contactform.email.focus(); return false;}

if (document.contactform.subject.value=="" && document.contactform.machine.value=="") {alert('Please select your machine or enter a subject.          '); document.contactform.machine.focus(); return false;}

if (document.contactform.message.value=="Message: ") {alert('Please enter a short message.         '); document.contactform.message.focus(); return false;}

if (document.contactform.phone.value!="") {return dv(thisform);}
if (document.contactform.email.value!="") {return ev(thisform);}

//-----------alert('validation done');

//-----ok - it works tight, but the form still ditches out here - proved by putting the alert in. it ignores anything else after the 'return dv...'. 
//-----removing the 'returns' just above lets it go through to the alert, but it doesn't validate either? so maybe i need to do a similar line like XXX below??

} //-----end function validate()


 
function ev(thisform)
{
with (thisform)
{
if (emailvalidation(email,'Please enter your correct email address         ')==false) {email.focus(); return false;} //---------XXX like this line?
}
}

function dv(thisform)
{
with (thisform)
{
if (digitvalidation(phone, 10, 12,'Please re-enter phone number.\nArea code (ie. NSW = 02)            \nand numbers only - no spaces.            ','')==false) {phone.focus(); return false;}
}
}


//----phone number validator, calledd on by dv(thisform)

function digitvalidation(entered, min, max, alertbox, datatype)
{
with (entered)
{
checkvalue=parseFloat(value);
if (datatype)
  {smalldatatype=datatype.toLowerCase();
   if (smalldatatype.charAt(0)=="i") {checkvalue=parseInt(value); if (value.indexOf(".")!=-1) {checkvalue=checkvalue+1}};
  }
if ((parseFloat(min)==min && value.length<min) || (parseFloat(max)==max && value.length>max) || value!=checkvalue)
{if (alertbox!="") {alert(alertbox);} return false;}
else {return true;}
}
}


//----email validator, called on by ev(thisform) 

function emailvalidation(entered, alertbox)
{
with (entered)
{
apos=value.indexOf("@");
dotpos=value.lastIndexOf(".");
lastpos=value.length-1;
if (apos<1 || dotpos-apos<2 || lastpos-dotpos>3 || lastpos-dotpos<2) 
{if (alertbox) {alert(alertbox);} return false;}
else {return true;}
}
}

function validatecontact(thisform)
{ //-----start function validate(this)

if (document.contactform.name.value=="") {alert('Please enter a contact name         '); document.contactform.name.focus(); return false;}

if (document.contactform.phone.value=="" && document.contactform.email.value=="") {alert('Please enter your phone number or email address.          '); document.contactform.email.focus(); return false;}

if (document.contactform.subject.value=="" && document.contactform.machine.value=="") {alert('Please select your machine or enter a subject.          '); document.contactform.machine.focus(); return false;}

if (document.contactform.message.value=="Message: ") {alert('Please enter a short message.         '); document.contactform.message.focus(); return false;}

if (document.contactform.phone.value!="") {return dv(thisform);}
if (document.contactform.email.value!="") {return ev(thisform);}
}


function validaterepair(thisform)
{ //-----start function validate(this)

if (!document.repairform.repair[0].checked && !document.repairform.repair[1].checked) {alert('Please choose either On-site Service Call or Workshop Repairs.             '); document.repairform.repair[0].focus(); return false;}
if (document.repairform.company.value=="") {alert('Please enter your company name         '); document.repairform.company.focus(); return false;}
if (document.repairform.name.value=="") {alert('Please enter a contact name         '); document.repairform.name.focus(); return false;}

if (document.repairform.phone.value=="" && document.repairform.email.value=="") {alert('Please enter your phone number or email address.          '); document.repairform.phone.focus(); return false;}
if (document.repairform.address.value=="") {alert('Please enter your street address.          '); document.repairform.address.focus(); return false;}

if (document.repairform.subject.value=="") {alert('Please enter your machine make and model.          '); document.repairform.subject.focus(); return false;}

if (document.repairform.message.value=="Message: ") {alert('Please enter a detailed description of the problem.         '); document.repairform.message.focus(); return false;}

if (document.repairform.phone.value!="") {return dv(thisform);}
if (document.repairform.email.value!="") {return ev(thisform);}
}

