function CheckSignInForm() { if(trim(document.frmSignIn.txtUsername.value)=="") { alert("Please enter your username to sign in") document.frmSignIn.txtUsername.focus(); return false; } else if(trim(document.frmSignIn.txtPassword.value)=="") { alert("Please enter your password to sign in") document.frmSignIn.txtPassword.focus(); return false; } else return true; } function CheckContactForm() { if(trim(document.frmContact.txtFirstName.value)=="") { alert("Please enter your first name"); document.frmContact.txtFirstName.focus(); return false; } else if(trim(document.frmContact.txtSurname.value)=="") { alert("Please enter your surname"); document.frmContact.txtSurname.focus(); return false; } else if(trim(document.frmContact.txtEMail.value)=="") { alert("Please enter your email address"); document.frmContact.txtEMail.focus(); return false; } else if(trim(document.frmContact.txtComments.value)=="") { alert("Please enter your comments"); document.frmContact.txtComments.focus(); return false; } else return true; } function CheckSignInMainForm() { if(trim(document.frmSignInMain.txtUsername.value)=="") { alert("Please enter your username to sign in") document.frmSignInMain.txtUsername.focus(); return false; } else if(trim(document.frmSignInMain.txtPassword.value)=="") { alert("Please enter your password to sign in") document.frmSignInMain.txtPassword.focus(); return false; } else return true; } function CheckRegisterForm() { if(trim(document.frmRegister.txtRegisterFirstName.value)=="") { alert("Please enter your first name"); document.frmRegister.txtRegisterFirstName.focus(); return false; } else if(trim(document.frmRegister.txtRegisterSurname.value)=="") { alert("Please enter your surname"); document.frmRegister.txtRegisterSurname.focus(); return false; } else if(trim(document.frmRegister.txtRegisterUsername.value)=="") { alert("Please enter your desired username"); document.frmRegister.txtRegisterUsername.focus(); return false; } else if(trim(document.frmRegister.txtRegisterPassword.value)=="") { alert("Please enter your password"); document.frmRegister.txtRegisterPassword.focus(); return false; } else if(trim(document.frmRegister.txtRegisterPassword.value.toLowerCase()) =="magicwand") { alert("Sorry, 'MagicWand' is an invalid password"); document.frmRegister.txtRegisterPassword.focus(); return false; } else if(document.frmRegister.txtRegisterPassword.value.length < 6) { alert("You Password Must Be At Least Six Characters Long"); document.frmRegister.txtRegisterPassword.focus(); return false; } else if(document.frmRegister.txtRegisterPassword.value!=document.frmRegister.txtRegisterPasswordConfirm.value) { alert("Your passwords do not match.Please check and re-enter them"); document.frmRegister.txtRegisterPassword.focus(); return false; } else if(!IsValidEmailAddress(document.frmRegister.txtRegisterEMail.value)) { alert("Please enter a valid email address"); document.frmRegister.txtRegisterEMail.focus(); return false; } else if (trim(document.getElementById("txtRegisterDOBD").value) == "" || trim(document.getElementById("txtRegisterDOBM").value) == "" || trim(document.getElementById("txtRegisterDOBY").value) == "") { alert("You must fill in your age"); document.frmRegister.txtRegisterDOBD.focus(); return false; } else if (!CheckDate(document.getElementById("txtRegisterDOBD").options[document.getElementById("txtRegisterDOBD").selectedIndex].value + document.getElementById("txtRegisterDOBM").options[document.getElementById("txtRegisterDOBM").selectedIndex].value + document.getElementById("txtRegisterDOBY").options[document.getElementById("txtRegisterDOBY").selectedIndex].value)) { alert("You birthday is not valid, must be in form DD/MM/YYYY"); document.frmRegister.txtRegisterDOBD.focus(); return false; } else if (!radio_button_checker()) { alert("You must say if you are a boy or a girl."); return false; } else if (!IsAdult()){ if (IsValidObject(document.frmRegister.hdGuardianFieldActive)){ if (!IsValidEmailAddress(document.getElementById("txtGuardianEMail").value)) { alert("You must enter a guardians e-mail address if you are under 13"); document.frmRegister.txtGuardianEMail.focus(); return false; } } else { document.getElementById("divGuardianInputSec").innerHTML = " *

It looks like your under 13. Please ask a Parent or Guardian to supply there email address, so we can send them confirmation of your membership.

"; document.getElementById("divGuardianTitleSec").innerHTML = "

Guardians E-mail :

" alert("You must enter a guardians e-mail address if you are under 13"); document.frmRegister.txtGuardianEMail.focus(); return false; } } else { return true; } } function CheckUpdateDetailsForm() { if(trim(document.frmRegister.txtRegisterFirstName.value)=="") { alert("Please enter your first name"); document.frmRegister.txtRegisterFirstName.focus(); return false; } else if(trim(document.frmRegister.txtRegisterSurname.value)=="") { alert("Please enter your surname"); document.frmRegister.txtRegisterSurname.focus(); return false; } else if(trim(document.frmRegister.txtRegisterUsername.value)=="") { alert("Please enter your desired username"); document.frmRegister.txtRegisterUsername.focus(); return false; } else if(trim(document.frmRegister.txtRegisterPassword.value)=="") { alert("Please enter your password"); document.frmRegister.txtRegisterPassword.focus(); return false; } else if(trim(document.frmRegister.txtRegisterPassword.value.toLowerCase()) =="magicwand") { alert("Sorry, 'MagicWand' is an invalid password"); document.frmRegister.txtRegisterPassword.focus(); return false; } else if(document.frmRegister.txtRegisterPassword.value.length < 6) { alert("You Password Must Be At Least Six Characters Long"); document.frmRegister.txtRegisterPassword.focus(); return false; } else if(document.frmRegister.txtRegisterPassword.value!=document.frmRegister.txtRegisterPasswordConfirm.value) { alert("Your passwords do not match.Please check and re-enter them"); document.frmRegister.txtRegisterPassword.focus(); return false; } else if(!IsValidEmailAddress(document.frmRegister.txtRegisterEMail.value)) { alert("Please enter a valid email address"); document.frmRegister.txtRegisterEMail.focus(); return false; } else if (trim(document.getElementById("txtRegisterDOBD").value) == "" || trim(document.getElementById("txtRegisterDOBM").value) == "" || trim(document.getElementById("txtRegisterDOBY").value) == "") { alert("You must fill in your age"); document.frmRegister.txtRegisterDOBD.focus(); return false; } else if (!CheckDate(document.getElementById("txtRegisterDOBD").options[document.getElementById("txtRegisterDOBD").selectedIndex].value + document.getElementById("txtRegisterDOBM").options[document.getElementById("txtRegisterDOBM").selectedIndex].value + document.getElementById("txtRegisterDOBY").options[document.getElementById("txtRegisterDOBY").selectedIndex].value)) { alert("You birthday is not valid, must be in form DD/MM/YYYY"); document.frmRegister.txtRegisterDOBD.focus(); return false; } else if (!radio_button_checker()) { alert("You must say if you are a boy or a girl."); return false; } else { return true; } } function CheckUpdateDetailsForm() { if(trim(document.frmRegister.txtRegisterFirstName.value)=="") { alert("Please enter your first name"); document.frmRegister.txtRegisterFirstName.focus(); return false; } else if(trim(document.frmRegister.txtRegisterSurname.value)=="") { alert("Please enter your surname"); document.frmRegister.txtRegisterSurname.focus(); return false; } else if(trim(document.frmRegister.txtRegisterPassword.value)=="") { alert("Please enter your password"); document.frmRegister.txtRegisterPassword.focus(); return false; } else if(trim(document.frmRegister.txtRegisterPassword.value)!=trim(document.frmRegister.txtRegisterPasswordConfirm.value)) { alert("Your passwords do not match.Please check and re-enter them"); document.frmRegister.txtRegisterPassword.focus(); return false; } else if(trim(document.frmRegister.txtRegisterEMail.value)=="") { alert("Please enter your email address"); document.frmRegister.txtRegisterEMail.focus(); return false; } else return true; } function CheckEMailFriendForm() { if(trim(document.frmEMailFriend.txtName.value)=="") { alert("Please enter your friend's name"); document.frmEMailFriend.txtName.focus(); return false; } else if(trim(document.frmEMailFriend.txtEMail.value)=="") { alert("Please enter your friend's email address"); document.frmEMailFriend.txtEMail.focus(); return false; } else if(trim(document.frmEMailFriend.txtNameFrom.value)=="") { alert("Please enter your name"); document.frmEMailFriend.txtNameFrom.focus(); return false; } else if(trim(document.frmEMailFriend.txtEMailFrom.value)=="") { alert("Please enter your email address"); document.frmEMailFriend.txtEMailFrom.focus(); return false; } else return true; } function SubmitEMailFriendForm() { if(CheckEMailFriendForm()) document.frmEMailFriend.submit(); } function CheckTradeRegisterForm() { if(document.frmTradeRegister.txtFirstName.value=="") { alert("Please enter your first name"); document.frmTradeRegister.txtFirstName.focus(); return false; } else if(document.frmTradeRegister.txtSurname.value=="") { alert("Please enter your surname"); document.frmTradeRegister.txtSurname.focus(); return false; } else if(document.frmTradeRegister.txtJobTitle.value=="") { alert("Please enter your job title"); document.frmTradeRegister.txtJobTitle.focus(); return false; } else if(document.frmTradeRegister.txtCompanyName.value=="") { alert("Please enter the company's name"); document.frmTradeRegister.txtCompanyName.focus(); return false; } else if(document.frmTradeRegister.txtEMail.value=="") { alert("Please enter your email address"); document.frmTradeRegister.txtEMail.focus(); return false; } else if(document.frmTradeRegister.txtWebAddress.value=="" || document.frmTradeRegister.txtWebAddress.value=="http://") { alert("Please enter your company's web address"); document.frmTradeRegister.txtWebAddress.focus(); return false; } else return true; } function CheckSignInTradeForm() { if(document.frmSignInTrade.txtTradeUsername.value=="") { alert("Please enter your username to sign in") document.frmSignInTrade.txtTradeUsername.focus(); return false; } else if(document.frmSignInTrade.txtTradePassword.value=="") { alert("Please enter your password to sign in") document.frmSignInTrade.txtTradePassword.focus(); return false; } else return true; } function CheckCheckoutForm() { if(trim(document.frmCheckout.txtBillName.value)=="") { alert("Please enter your name"); document.frmCheckout.txtBillName.focus(); return false; } if(trim(document.frmCheckout.txtBillTelephone.value)=="") { alert("Please enter your telephone number"); document.frmCheckout.txtBillTelephone.focus(); return false; } if(!IsValidEmailAddress(document.frmCheckout.txtBillEMail.value)) { alert("Please enter a valid email address"); document.frmCheckout.txtBillEMail.focus(); return false; } if(trim(document.frmCheckout.txtBillAddress1.value)=="") { alert("Please enter your billing address 1"); document.frmCheckout.txtBillAddress1.focus(); return false; } if(trim(document.frmCheckout.txtBillCity.value)=="") { alert("Please enter your billing city"); document.frmCheckout.txtBillCity.focus(); return false; } if(trim(document.frmCheckout.txtBillPostcode.value)=="") { alert("Please enter your billing postcode"); document.frmCheckout.txtBillPostcode.focus(); return false; } if(document.getElementById("lbCountry").options[document.getElementById("lbCountry").selectedIndex].value == -1) { alert("You must select your country"); return false; } if((document.getElementById("lbCountry").options[document.getElementById("lbCountry").selectedIndex].value != "UNITED KINGDOM") && (document.frmCheckout.cbShippingAddress.checked == false)) { document.frmCheckout.action="http://www.marvinsmagic.com/Default.asp?Page=CheckOut&Area=CantDeliverAbroad"; return true; } if (document.frmCheckout.cbShippingAddress.checked == false) { document.frmCheckout.action = "http://www.marvinsmagic.com/Checkout/Submit.asp"; return true; } return true; } function CheckCheckoutShippingForm() { if(trim(document.frmCheckout.txtShippingName.value)=="") { alert("Please enter your shipping name"); document.frmCheckout.txtShippingName.focus(); return false; } else if(trim(document.frmCheckout.txtShipAddress1.value)=="") { alert("Please enter your shipping address 1"); document.frmCheckout.txtShipAddress1.focus(); return false; } else if(trim(document.frmCheckout.txtShipCity.value)=="") { alert("Please enter your shipping city"); document.frmCheckout.txtShipCity.focus(); return false; } else if(trim(document.frmCheckout.txtShipPostcode.value)=="") { alert("Please enter your shipping postcode"); document.frmCheckout.txtShipPostcode.focus(); return false; } else if(document.getElementById("lbCountry").options[document.getElementById("lbCountry").selectedIndex].value != "UNITED KINGDOM") { document.frmCheckout.action="http://www.marvinsmagic.com/Default.asp?Page=CheckOut&Area=CantDeliverAbroad"; document.frmCheckout.submit() return false; } else { return true; } } function CheckThreadForm() { if(document.frmThread.txtThreadTitle.value=="") { alert("Please enter the new topic's name"); document.frmThread.txtThreadTitle.focus(); return false; } else if(document.frmThread.txtThreadText.value=="") { alert("Please enter the a short description of the new topic"); document.frmThread.txtThreadText.focus(); return false; } else if(document.frmThread.txtThreadText.value.length>500) { alert("The description you have entered is too long. It is "+document.frmThread.txtThreadText.value.length+" characters long, but must not be more tha 500 characters"); document.frmThread.txtThreadText.focus(); return false; } else return true; } function CheckPostForm() { if(document.frmPost.txtPostText.value=="") { alert("Please enter your post"); return false; } else { return true; } } function CheckSearchForm() { if(document.frmSearch.txtSearch.value=="") { alert("Please enter your search phrase"); document.frmSearch.txtSearch.focus(); return false; } else return true; } function SubmitSearchResults(nIndex) { document.frmResults.txtIndex.value=nIndex; document.frmResults.submit(); } function CheckCompetitionForm() { var nIndex; for(nIndex=0; nIndex 13) { return true; // Old Enough } if ((nYear - nBYear) == 13) { if ((nBMonth - nMonth) > 0) { return false; } else if ((nBMonth - nMonth) == 0) { if ((nBDay - nDay) > 0) { return false; } else { return true; // Old Enough } } } else { return false; } } function CheckDate(strDate){ var checkstr = "0123456789"; var Datevalue = ""; var DateTemp = ""; var seperator = "."; var day; var month; var year; var leap = 0; var err = 0; var i; err = 0; DateValue = strDate; /* Delete all chars except 0..9 */ for (i = 0; i < DateValue.length; i++) { if (checkstr.indexOf(DateValue.substr(i,1)) >= 0) { DateTemp = DateTemp + DateValue.substr(i,1); } } DateValue = DateTemp; if (DateValue == "") { err = 29; } /* Always change date to 8 digits - string*/ /* if year is entered as 2-digit / always assume 20xx */ if (DateValue.length == 6) { DateValue = DateValue.substr(0,4) + '20' + DateValue.substr(4,2); } if (DateValue.length != 8) { err = 19;} /* year is wrong if year = 0000 */ year = DateValue.substr(4,4); if (year == 0) { err = 20; } /* Validation of month*/ month = DateValue.substr(2,2); if ((month < 1) || (month > 12)) { err = 21; } /* Validation of day*/ day = DateValue.substr(0,2); if (day < 1) { err = 22; } /* Validation leap-year / february / day */ if ((year % 4 == 0) || (year % 100 == 0) || (year % 400 == 0)) { leap = 1; } if ((month == 2) && (leap == 1) && (day > 29)) { err = 23; } if ((month == 2) && (leap != 1) && (day > 28)) { err = 24; } /* Validation of other months */ if ((day > 31) && ((month == "01") || (month == "03") || (month == "05") || (month == "07") || (month == "08") || (month == "10") || (month == "12"))) { err = 25; } if ((day > 30) && ((month == "04") || (month == "06") || (month == "09") || (month == "11"))) { err = 26; } /* WHAT THE HELL IS THIS BIT FOR - means no error if letters entered */ /* if 00 ist entered, no error, deleting the entry if ((day == 0) && (month == 0) && (year == 00)) { err = 0; day = ""; month = ""; year = ""; seperator = ""; }*/ if (err == 0) { return true; } else { return false; } } function radio_button_checker() { var radio_choice = false; for (counter = 0; counter < document.frmRegister.rblGender.length; counter++) { if (document.frmRegister.rblGender[counter].checked) radio_choice = true; } if (!radio_choice) { return false; } return true; } function IsValidEmailAddress(strInput) { if (strInput == "") { return false; } var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/; if (filter.test(strInput)) { return true; } else { return false; } } function trim(str) { return str.replace(/^\s*|\s*$/g,""); } function IsValidObject(objToTest) { if (null == objToTest) { return false; } if ("undefined" == typeof(objToTest) ) { return false; } return true; } function clearDefault(el) { if (el.defaultValue==el.value) el.value = "" }