// this check drop down whether it is selected (other than 0 index) and show error message						
function validateDropDown(o_dropdownName, o_dropdownErrorMessage)
{				
	var obj = MM_findObj(o_dropdownName);
	var obj2 = MM_findObj(o_dropdownErrorMessage);
	if (obj != null)
	{
		if (obj.selectedIndex == 0)
		{					
			obj2 = (obj2.style) ? (obj2.style):obj2;
			obj2.display = "block";	
			return false;					
		}
		else
		{
			obj2 = (obj2.style) ? (obj2.style):obj2;
			obj2.display = "none";		
			return true;
		}
	}
	else
		return false;
}

// this check text field whether it is filled and show error message						
function validateTextField(o_textFieldName, o_textFieldErrorMessage)
{
	var obj = MM_findObj(o_textFieldName);				
	var obj2 = MM_findObj(o_textFieldErrorMessage);
	if (obj != null && obj2 != null)
	{
		if (obj.value.replace(/^\s*|\s*$/g,"") == '')
		{			
			obj2 = (obj2.style) ? (obj2.style):obj2;
			obj2.display = "block";	
			return false;
		}
	}
	else
	{
		return false;
	}
		
	obj2 = (obj2.style) ? (obj2.style):obj2;
	obj2.display = "none";	
	return true;
}

function validateTextFieldSize(o_textFieldName, o_textFieldErrorMessage, size)
{
	var obj = MM_findObj(o_textFieldName);				
	var obj2 = MM_findObj(o_textFieldErrorMessage);
	if (obj != null && obj2 != null)
	{
		if (obj.value.length < size)
		{			
			obj2 = (obj2.style) ? (obj2.style):obj2;
			obj2.display = "block";	
			return false;
		}
	}
	else
	{
		return false;
	}
		
	obj2 = (obj2.style) ? (obj2.style):obj2;
	obj2.display = "none";	
	return true;
}

function isNumber(sTxt)
{
	var validChars = "0123456789.";
	var isNumber = true;
	var chr;
	
	for (var i = 0; i < sTxt.length && isNumber == true; i++)
	{
		chr = sTxt.charAt(i);
		if (validChars.indexOf(chr) == -1)
			isNumber = false;
	}
	
	return isNumber;
}

function IsNumeric(sText)
{
   var ValidChars = "0123456789.";
   var IsNumber=true;
   var Char;

 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
   return IsNumber;
   
   }

function validateTextFieldAsNumber(o_textFieldName, o_textFieldErrorMessage)
{
	var obj = MM_findObj(o_textFieldName);				
	var obj2 = MM_findObj(o_textFieldErrorMessage);	
	if (obj != null && obj2 != null)
	{
		if (!IsNumeric(obj.value))
		{			
			obj2 = (obj2.style) ? (obj2.style):obj2;
			obj2.display = "block";	
			return false;
		}
	}
	else
	{
		return false;
	}
		
	obj2 = (obj2.style) ? (obj2.style):obj2;
	obj2.display = "none";	
	return true;
}

// this check radio button whether it is selected and show error message						
function validateRadioButton(o_radioButtonName, o_radioButtonErrorMessage, no)
{				
	var obj = MM_findObj(o_radioButtonName);
	var obj2 = MM_findObj(o_radioButtonErrorMessage);
	if (obj != null)
	{					
		for (var i = 0; i < no; i++)
		{
			if (obj[i].checked)
			{
				obj2 = (obj2.style) ? (obj2.style):obj2;
				obj2.display = "none";	
				return true;
			}						
		}
		obj2 = (obj2.style) ? (obj2.style):obj2;
		obj2.display = "block";	
		return false;
	}
	else
		return false;		
}	

// this check radio button whether it is selected
function checkRadioButton(o_radioButtonName, no)
{				
	var obj = MM_findObj(o_radioButtonName);	
	if (obj != null)
	{					
		for (var i = 0; i < no; i++)
		{
			if (obj[i].checked)
			{				
				return true;
			}						
		}		
		return false;
	}
	else
		return false;		
}	

// this check radio button whether it is selected and show error message						
function validateRadioButtonList(o_formName, o_radioButtonName, o_radioButtonId, o_radioButtonErrorMessage, no)
{					
	var obj = MM_findObj(o_formName);
	var obj2 = MM_findObj(o_radioButtonErrorMessage);	
	
	if (obj != null)
	{
		for (var i = 0; i < obj.elements.length; i++)
		{
			// check radio button for the same group
			if (o_radioButtonId == '')
			{
				if (obj.elements[i].type == "radio" &&
					obj.elements[i].name == o_radioButtonName)				
				{												
					if (obj.elements[i].checked)
					{				
						obj2 = (obj2.style) ? (obj2.style):obj2;
						obj2.display = "none";	
						return true;
					}												 	
				}
			}
			else	// check more specific
			{
				if (obj.elements[i].type == "radio" &&
					obj.elements[i].name == o_radioButtonName && 
					obj.elements[i].id == o_radioButtonId)				
				{												
					if (obj.elements[i].checked)
					{				
						obj2 = (obj2.style) ? (obj2.style):obj2;
						obj2.display = "none";	
						return true;
					}							
					else
					{
						obj2 = (obj2.style) ? (obj2.style):obj2;
						obj2.display = "block";	
						return false;		
					}
				}
			}
		}		
	}
	else
		return false;
		
	obj2 = (obj2.style) ? (obj2.style):obj2;
	obj2.display = "block";	
	return false;
}	

function validateEmail(o_textFieldName, o_textFieldErrorMessage)
{
	var obj = MM_findObj(o_textFieldName);				
	var obj2 = MM_findObj(o_textFieldErrorMessage);	
	var emailRegExp = /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
	if (obj != null && obj2 != null)
	{
		if (!emailRegExp.test(obj.value))
		{			
			obj2 = (obj2.style) ? (obj2.style):obj2;
			obj2.display = "block";	
			return false;
		}
	}
	else
	{
		return false;
	}
		
	obj2 = (obj2.style) ? (obj2.style):obj2;
	obj2.display = "none";	
	return true;
}

	
// Validate Form for Radio Button List
function validateContactForm()
{			
	var isOK = true;	
	if (!(validateTextField('ContactDetail1_tbEmail', 'tbEmail_Error') || 
		validateTextField('ContactDetail1_tbEmail2', 'tbEmail2_Error')))	
		isOK = false;	
		
	if (isOK)
	{
		if (!(validateEmail('ContactDetail1_tbEmail', 'tbEmail_Error_') || 
			  validateEmail('ContactDetail1_tbEmail2', 'tbEmail2_Error_')))
			isOK = false;	
	}
			
	if (!(validateTextField('ContactDetail1_tbName', 'tbName_Error') || 
		  validateTextField('ContactDetail1_tbName2', 'tbName2_Error')))
		isOK = false;
	
	if (!(validateTextField('ContactDetail1_tbMessage', 'tbMessage_Error') || 
		  validateTextField('ContactDetail1_tbMessage2', 'tbMessage2_Error')))
		isOK = false;
	
	return isOK	
}

function validateRegistrationForm()
{	
	var isOK = true;	
		
	if (!validateDropDown('BecomeMember1_ddlTitles', 'reg_title_error'))
		isOK = false;	
	
	if (!validateTextField('BecomeMember1_tbFirstName', 'reg_fname_error'))
		isOK = false;	
			
	if (!validateTextField('BecomeMember1_tbLastName', 'reg_lname_error'))
		isOK = false;
		
	if (!validateTextField('BecomeMember1_tbNickName', 'reg_nname_error'))
		isOK = false;
	
	if (!validateTextField('BecomeMember1_tbEmail', 'reg_email_error1'))
		isOK = false;	
	
	if (!validateEmail('BecomeMember1_tbEmail', 'reg_email_error2'))
		isOK = false;
		
	if (!validateTextField('BecomeMember1_tbCEmail', 'reg_cemail_error1'))
		isOK = false;	
	
	if (!validateEmail('BecomeMember1_tbCEmail', 'reg_cemail_error2'))
		isOK = false;
		
	if (!validateDropDown('BecomeMember1_ddlStates', 'reg_state_error'))
		isOK = false;	
		
	if (!validateTextField('BecomeMember1_tbSuburb', 'reg_suburb_error'))
		isOK = false;			
			
	if (!validateTextField('BecomeMember1_tbPassword', 'reg_pass_error'))
		isOK = false;									
	
	if (!validateTextFieldSize('BecomeMember1_tbPassword', 'reg_pass_error2', 6))
		isOK = false;										
		
	if (!validateTextField('BecomeMember1_tbCPassword', 'reg_cpass_error'))
		isOK = false;	
		
	if (!validateTextFieldSize('BecomeMember1_tbCPassword', 'reg_cpass_error2', 6))
		isOK = false;	
		
	if (!validateTextField('BecomeMember1_tbPostcode', 'reg_postcode_error3'))
		isOK = false;		
		
	if (!validateTextFieldAsNumber('BecomeMember1_tbPostcode', 'reg_postcode_error2'))
		isOK = false;		
		
	if (!validateTextFieldSize('BecomeMember1_tbPostcode', 'reg_postcode_error', 4))
		isOK = false;					
					
	if (!validateTextField('BecomeMember1_tbDayContactNo', 'reg_daycontactno_error'))
		isOK = false;																
		
	return isOK;
}	


function validateMemberDetailForm()
{	
	var isOK = true;	
		
	if (!validateTextField('MemberDetail1_tbFirstName', 'reg_fname_error'))
		isOK = false;	
			
	if (!validateTextField('MemberDetail1_tbLastName', 'reg_lname_error'))
		isOK = false;
		
	if (!validateTextField('MemberDetail1_tbNickName', 'reg_nname_error'))
		isOK = false;
	
	if (!validateTextField('MemberDetail1_tbEmail', 'reg_email_error1'))
		isOK = false;	
	
	if (!validateEmail('MemberDetail1_tbEmail', 'reg_email_error2'))
		isOK = false;
		
	if (!validateDropDown('MemberDetail1_ddlStates', 'reg_state_error'))
		isOK = false;	
	
	if (!validateTextField('MemberDetail1_tbSuburb', 'reg_suburb_error'))
		isOK = false;			
				
	if (!validateTextField('MemberDetail1_tbPostcode', 'reg_postcode_error3'))
		isOK = false;
		
	if (!validateTextFieldAsNumber('MemberDetail1_tbPostcode', 'reg_postcode_error2'))
		isOK = false;	
		
	if (!validateTextFieldSize('MemberDetail1_tbPostcode', 'reg_postcode_error', 4))
		isOK = false;
		
	if (!validateTextField('MemberDetail1_tbDayContactNo', 'reg_daycontactno_error'))
		isOK = false;																														
						
	return isOK;
}		

function validateForgotPasswordForm()
{
	var isOK = true;
		
	if (!validateTextField('SecurityAccess1_tbEmail', 'reg_email_error1'))
		isOK = false;	
	
	if (!validateEmail('SecurityAccess1_tbEmail', 'reg_email_error2'))
		isOK = false;		
		
	return isOK;
}

function validateLoginForm()
{
	var isOK = true;	
				
			
	if (!validateTextField('SecurityAccess1_tbPassword', 'reg_pass_error'))
		isOK = false;
	
	return isOK;
}

function validateTroubleTicketForm(member, isNew)
{
	var isOK  = true;

	if (!member)
	{
		if (!validateTextField('CreateTroubleTicket1_tbFromEmail', 'reg_email_error1'))
			isOK = false;
			
		if (!validateEmail('CreateTroubleTicket1_tbFromEmail', 'reg_email_error2'))
			isOK = false;
	}
	
	if (isNew)
	{
		if (!validateTextField('CreateTroubleTicket1_tbSubject', 'reg_subject_error'))
			isOK = false;
	}
			
	if (!validateTextField('CreateTroubleTicket1_tbComment', 'reg_comment_error'))
		isOK = false;
	
	return isOK;
	
}

function validatePaymentForm()
{
	var isOK  = true;			
		
	if (MM_findObj('PaymentOption1:rblPaymentOption')[0].checked)
	{
		if (!validateDropDown('PaymentOption1_CreditCardForm1_ddlCCType', 'reg_cctype_error'))
			isOK = false;
	
		if (!validateTextField('PaymentOption1_CreditCardForm1_tbCCNo', 'reg_ccno_error'))
			isOK = false;
			
		if (!validateTextFieldSize('PaymentOption1_CreditCardForm1_tbCCNo', 'reg_ccno_error2', 15))
			isOK = false;
			
		if (!validateTextFieldAsNumber('PaymentOption1_CreditCardForm1_tbCCNo', 'reg_ccno_error3'))
			isOK = false;
		
		if (!validateTextField('PaymentOption1_CreditCardForm1_tbCCName', 'reg_ccname_error'))
			isOK = false;	
			
		if (!validateTextField('PaymentOption1_CreditCardForm1_tbCCName', 'reg_ccname_error2', 3))
			isOK = false;			
		
		if (!validateDropDown('PaymentOption1_CreditCardForm1_ddlMonths', 'reg_ccmonth_error'))
			isOK = false;
	
		if (!validateDropDown('PaymentOption1_CreditCardForm1_ddlYears', 'reg_ccyear_error'))
			isOK = false;
		
		if (!validateTextField('PaymentOption1_CreditCardForm1_tbCCIssuer', 'reg_ccissue_error'))
			isOK = false;
		
		if (!validateTextField('PaymentOption1_CreditCardForm1_tbCCID', 'reg_ccid_error'))
			isOK = false;
			
		if (!validateTextFieldSize('PaymentOption1_CreditCardForm1_tbCCID', 'reg_ccid_error2', 3))
			isOK = false;
		
	}
	
	return isOK;
}

function validateOrderForm()
{
	var isOK  = true;					

	if (MM_findObj('ShippingDetail1_tbSAddress1') != null)
	{
	
		if (!validateTextField('ShippingDetail1_tbSName', 'reg_sname_error'))
			isOK = false;
	
		if (!validateTextField('ShippingDetail1_tbSAddress1', 'reg_saddress_error'))
			isOK = false;
			
		if (!validateDropDown('ShippingDetail1_ddlSStates', 'reg_sstate_error'))
			isOK = false;	
			
		if (!validateTextField('ShippingDetail1_tbSSuburb', 'reg_ssuburb_error'))
			isOK = false;	
			
		if (!validateTextField('ShippingDetail1_tbSPostcode', 'reg_spostcode_error1'))
			isOK = false;
			
		if (!validateTextFieldSize('ShippingDetail1_tbSPostcode', 'reg_spostcode_error2', 4))
			isOK = false;
	}		
	
	if (!validateTextField('ShippingDetail1_tbBName', 'reg_bname_error'))
		isOK = false;	

	if (!validateTextField('ShippingDetail1_tbBAddress1', 'reg_baddress_error'))
		isOK = false;
	
	if (!validateDropDown('ShippingDetail1_ddlBStates', 'reg_bstate_error'))
		isOK = false;	
		
	if (!validateTextField('ShippingDetail1_tbBSuburb', 'reg_bsuburb_error'))
		isOK = false;
	
	if (!validateTextField('ShippingDetail1_tbBPostcode', 'reg_bpostcode_error1'))
		isOK = false;
		
	if (!validateTextFieldSize('ShippingDetail1_tbBPostcode', 'reg_bpostcode_error2', 4))
		isOK = false;	
	
	
	return isOK;
	
}

function validateReturnItemForm()
{
	var isOK = true;
	
	if (!validateDropDown('ReturnItem1_ddlInvoiceID', 'reg_invoiceid_error'))
		isOK = false;
		
	if (!validateTextField('ReturnItem1_tbQuantity', 'reg_qty_error1'))
		isOK = false;
		
	if (!validateTextFieldAsNumber('ReturnItem1_tbQuantity', 'reg_qty_error2'))
		isOK = false;
	
	if (!validateTextField('ReturnItem1_tbComment', 'reg_comment_error'))
		isOK = false;
	
	return isOK;
}

function validateReviewItemForm()
{
	var isOK  = true;	
	
	if (!validateTextField('ReviewItem1_tbRate', 'reg_rating_error'))
		isOK = false;		
	
	return isOK;
}

function validateTellFriendForm()
{
	var isOK  = true;
	
	if (!validateTextField('TellFriendAboutProduct1_tbFriendName', 'reg_fname_error'))
		isOK = false;
		
	if (!validateTextField('TellFriendAboutProduct1_tbFriendEmail', 'reg_femail_error'))
		isOK = false;
		
	if (!validateTextField('TellFriendAboutProduct1_tbYourName', 'reg_yname_error'))
		isOK = false;	
	
	if (!validateTextField('TellFriendAboutProduct1_tbYourEmail', 'reg_yemail_error'))
		isOK = false;
		
	if (!validateEmail('TellFriendAboutProduct1_tbFriendEmail', 'reg_femail_error2'))
		isOK = false;
			
	if (!validateEmail('TellFriendAboutProduct1_tbYourEmail', 'reg_yemail_error2'))
		isOK = false;
		
	return isOK;
}


function validateUpdateTransaction(quantity, error, error1_2)
{
	var isOK = true;	
		
	if (!validateTextField(quantity, error))
		isOK = false;
					
	if (!validateTextFieldAsNumber(quantity, error1_2))
		isOK = false;
		
	return isOK;
}
