function stateprov(ID, label, country) { this.ID = ID this.label = label this.country = country } NAUSA = new stateprov(0,'--',1) NACan = new stateprov(0,'--',2) AA = new stateprov(60,'AA',1); AE = new stateprov(61,'AE',1); AK = new stateprov(2,'AK',1); AL = new stateprov(1,'AL',1); AP = new stateprov(62,'AP',1); AR = new stateprov(4,'AR',1); AS = new stateprov(53,'AS',1); AZ = new stateprov(3,'AZ',1); CA = new stateprov(5,'CA',1); CO = new stateprov(6,'CO',1); CT = new stateprov(7,'CT',1); DC = new stateprov(9,'DC',1); DE = new stateprov(8,'DE',1); FL = new stateprov(10,'FL',1); FM = new stateprov(54,'FM',1); GA = new stateprov(11,'GA',1); GU = new stateprov(55,'GU',1); HI = new stateprov(12,'HI',1); IA = new stateprov(16,'IA',1); ID = new stateprov(13,'ID',1); IL = new stateprov(14,'IL',1); IN = new stateprov(15,'IN',1); KS = new stateprov(17,'KS',1); KY = new stateprov(18,'KY',1); LA = new stateprov(19,'LA',1); MA = new stateprov(22,'MA',1); MD = new stateprov(21,'MD',1); ME = new stateprov(20,'ME',1); MH = new stateprov(57,'MH',1); MI = new stateprov(23,'MI',1); MN = new stateprov(24,'MN',1); MO = new stateprov(26,'MO',1); MP = new stateprov(56,'MP',1); MS = new stateprov(25,'MS',1); MT = new stateprov(27,'MT',1); NC = new stateprov(34,'NC',1); ND = new stateprov(35,'ND',1); NE = new stateprov(28,'NE',1); NH = new stateprov(30,'NH',1); NJ = new stateprov(31,'NJ',1); NM = new stateprov(32,'NM',1); NV = new stateprov(29,'NV',1); NY = new stateprov(33,'NY',1); OH = new stateprov(36,'OH',1); OK = new stateprov(37,'OK',1); OR = new stateprov(38,'OR',1); PA = new stateprov(39,'PA',1); PR = new stateprov(40,'PR',1); PW = new stateprov(58,'PW',1); RI = new stateprov(41,'RI',1); SC = new stateprov(42,'SC',1); SD = new stateprov(43,'SD',1); TN = new stateprov(44,'TN',1); TX = new stateprov(45,'TX',1); UT = new stateprov(46,'UT',1); VA = new stateprov(48,'VA',1); VI = new stateprov(59,'VI',1); VT = new stateprov(47,'VT',1); WA = new stateprov(49,'WA',1); WI = new stateprov(51,'WI',1); WV = new stateprov(50,'WV',1); WY = new stateprov(52,'WY',1); AB = new stateprov(63,'AB',2); BC = new stateprov(64,'BC',2); MB = new stateprov(65,'MB',2); NB = new stateprov(66,'NB',2); NF = new stateprov(67,'NF',2); NS = new stateprov(69,'NS',2); NT = new stateprov(68,'NT',2); NU = new stateprov(70,'NU',2); ON = new stateprov(71,'ON',2); PE = new stateprov(72,'PE',2); QC = new stateprov(73,'QC',2); SK = new stateprov(74,'SK',2); YT = new stateprov(75,'YT',2); stateprovs = new Array(NAUSA,NACan,AA,AE,AK,AL,AP,AR,AS,AZ,CA,CO,CT,DC,DE,FL,FM,GA,GU,HI,IA,ID,IL,IN,KS,KY,LA,MA,MD,ME,MH,MI,MN,MO,MP,MS,MT,NC,ND,NE,NH,NJ,NM,NV,NY,OH,OK,OR,PA,PR,PW,RI,SC,SD,TN,TX,UT,VA,VI,VT,WA,WI,WV,WY,AB,BC,MB,NB,NF,NS,NT,NU,ON,PE,QC,SK,YT) var browserName = navigator.appName; var browserVer = parseInt(navigator.appVersion); if ((browserName == "Netscape" || browserName == "Microsoft Internet Explorer") && browserVer >= 3) {version = "n3"} else {version = "n2"} optional = new Image(); optional.src = "../images/shared/fieldblank.gif"; reqd = new Image(); reqd.src = "../images/shared/required.gif"; warnimg = new Image(); warnimg.src = "../images/shared/warn.gif"; warnreq = new Image(); warnreq.src = "../images/shared/warnreq.gif"; function CheckForm() { var formok = true; var fieldok; vok = new Array; var rf = document.regform; if (rf.username) { fieldok = CheckUNPW('username','Username') if (fieldok == false) { formok = false; warn('username',1); } else { unwarn('username',1); } if (rf.pw.value != '') { fieldok = CheckUNPW('pw','Password') if (fieldok == false) { formok = false; warn('pw',0); } else { var pw = rf.pw.value; var rpw = rf.rpw.value; if (pw == rpw) { unwarn('pw',0); unwarn('rpw',0); } else { formok = false; warn('pw',0); warn('rpw',0); window.alert('Password and repeat password fields were different.'); } } } else { unwarn('pw',0); unwarn('rpw',0); rf.rpw.value = ''; } } fieldok = CheckNoBlank('coname',1); if (fieldok == false) { formok = false; } if (rf.cotype.selectedIndex == 0) { formok = false; warn('cotype',1); } else{ unwarn('cotype',1); } fieldok = CheckNoBlank('codesc',1); if (fieldok == false) { formok = false; } fieldok = CheckNoBlank('firstname',1); if (fieldok == false) { formok = false; } fieldok = CheckNoBlank('lastname',1); if (fieldok == false) { formok = false; } fieldok = CheckTN('telnum',1); if (fieldok == false) { formok = false; } fieldok = CheckNoBlank('address1',1); if (fieldok == false) { fieldok = CheckSA('address1','address2','address3',1); } if (fieldok == false) { formok = false; } fieldok = CheckNoBlank('city',1); if (fieldok == false) { formok = false; } var ci = rf.country.selectedIndex; var cID = rf.country.options[ci].value; if (cID == 1 || cID == 2) { if(rf.stateprov.selectedIndex == 0) { formok = false; warn('stateprov',1); } } else { unwarn('stateprov',0); } fieldok = ValidateZip('zipcode',1); if (fieldok == false) { formok = false; warn('zipcode',1); } else { unwarn('zipcode',1); } fieldok = ValidateEmail('email',1); if (fieldok == false) { formok = false; warn('email',1); } else { unwarn('email',1); } var checkda = false; if (rf.billship) { var darb = rf.billship; if (darb[1].checked == true) { checkda = true; } else { UnwarnSA; } } else { var said = rf.SAID.value; if (said != 0) { var rsa = eval('rf.rsa_' + said); if(rsa.checked == false) { checkda = true; } } else if (rf.daddress1) { if (rf.daddress1.value != '' || rf.daddress2.value != '' || rf.daddress3.value != '' || rf.dcity.value != '' || rf.dzipcode.value != '') { checkda = true; } } } //alert('check ship address? ' + checkda); if (checkda == true) { fieldok = CheckNoBlank('daddress1',1); if (fieldok == false) { fieldok = CheckSA('daddress1','daddress2','daddress3',1); } if (fieldok == false) { formok = false; } fieldok = CheckNoBlank('dcity',1); if (fieldok == false) { formok = false; } var dci = rf.dcountry.selectedIndex; var dcID = rf.dcountry.options[dci].value; if (dcID == 1 || dcID == 2) { if(rf.dstateprov.selectedIndex == 0) { formok = false; warn('dstateprov',1); } } else { unwarn('dstateprov',0); } fieldok = ValidateZip('dzipcode',1); if (fieldok == false) { formok = false; warn('dzipcode',1); } else { unwarn('dzipcode',1); } } if (rf.heard) { fieldok = CheckNoBlank('heard',1); if (fieldok == false) { formok = false; } } if (formok == false) { window.alert("One or more required fields was missing, or possibly mis-typed. Please check field(s) marked with red alerts.") } return formok; } function CheckNoBlank(fname,required) { checkfield = eval("document.regform." + fname); if (checkfield.value == "") { warn(fname,required); return false; } else { unwarn(fname,required); return true; } } function warn(fname,required) { if (document.images && version == "n3") { if (required == 1) { document.images[fname].src = warnreq.src; } else { document.images[fname].src = warnimg.src; } } } function unwarn(fname,required) { if (document.images && version == "n3") { if (required == 1) { document.images[fname].src = reqd.src; } else { document.images[fname].src = optional.src; } } } function CheckSA(fname1,fname2,fname3,required) { var vok; fieldok = CheckNoBlank(fname2,0); if (fieldok == false) { unwarn(fname2,0); fieldok = CheckNoBlank(fname3,0); if (fieldok == false) { vok = false; } else { adr1 = eval('document.regform.' + fname1); adr2 = eval('document.regform.' + fname3); adr1.value = adr2.value; adr2.value = ''; unwarn(fname1,required); vok = true; } } else { adr1 = eval('document.regform.' + fname1); adr2 = eval('document.regform.' + fname2); adr1.value = adr2.value; adr2.value = ''; unwarn(fname1,required); vok = true; fieldok = CheckNoBlank(fname3,0); if (fieldok == true) { adr1 = eval('document.regform.' + fname2); adr2 = eval('document.regform.' + fname3); adr1.value = adr2.value; adr2.value = ''; } } unwarn(fname2,0); unwarn(fname3,0); return vok; } function UnwarnSA() { unwarn('daddress1',0); unwarn('daddress2',0); unwarn('dcity',0); unwarn('dstateprov',0); unwarn('dzipcode',0); } function SetStateProv(cf,spf,ii) { //cfield = eval("document.regform." + cf); var ci = cf.selectedIndex; var cID = cf.options[ci].value; spfield = eval("document.regform." + spf); spfield.options.length = 0; if (cID == 1 || cID == 2) { var selsp; var csp = -1; for (sp in stateprovs) { if (stateprovs[sp].country == cID) { csp++; if (stateprovs[sp].ID == ii) { selsp = csp; } spfield.options[spfield.options.length] = new Option(stateprovs[sp].label,stateprovs[sp].ID,false,false); } } spfield.options[selsp].selected = true; } else { spfield.options[0] = new Option('--',0,false,false); } } function ValidateZip(vfield) { zipfield = eval("document.regform." + vfield) var vzip = zipfield.value; var ci; var cID; var rstr; var zipok = true; if (vfield == "zipcode") { ci = document.regform.country.selectedIndex; cID = document.regform.country.options[ci].value; } else { ci = document.regform.dcountry.selectedIndex; cID = document.regform.dcountry.options[ci].value; } var nvzip = ""; if (cID == 1) { var cc = ""; for (i = 0; i < vzip.length; i++) { cc = vzip.charAt(i); if (!isNaN(cc)) { nvzip = nvzip + cc; } else if (cc == "-") { nvzip = nvzip + cc; if (i != 5) { zipok = false; } } } if (nvzip.length > 10) { nvzip = nvzip.substr(0,10); zipok = false; } zipfield.value = nvzip; if (nvzip.length < 5) { zipok = false; } } else if (cID == 2) { ctype = new Array(0,1,0,0,1,0,1); var cc = ""; var vi = -1; var sp = 0; var ccd = -1; var cprob = 0; for (i = 0; i < vzip.length; i++) { vi++; if (vi < 7) { cc = vzip.charAt(i); ccd = cc.charCodeAt(0); if (cc == " ") { if (i == 3 && sp == 0) { nvzip = nvzip + cc; } else { vi--; } } else if (!((ccd > 47 && ccd < 58) || (ccd > 64 && ccd < 91) ||(ccd > 96 && ccd < 123))) { vi--; } else { if (vi == 3) { nvzip = nvzip + " "; vi++; } if (ccd > 96 && ccd < 123) { cc = cc.toUpperCase(); ccd = cc.charCodeAt(0); } nvzip = nvzip + cc; if (ctype[vi] == 0) { if (!(ccd > 64 && ccd < 91)) { zipok = false; } } else { if (!(ccd > 47 && ccd < 58)) { zipok = false; } } } } } if (vi < 6) { zipok = false; } zipfield.value = nvzip; } else { if (vzip == '') { zipok = false; } } return zipok; } function ValidateEmail() { var email = document.regform.email.value; if (email.length < 7) { return false; } else if (email.indexOf(' ') > -1) { var nf = ""; for (i = 0; i < email.length; i++) { cc = email.charAt(i); if (cc != " ") { nf = nf + cc; } } document.regform.email.value = nf; return false; } else { var amp = email.indexOf('@'); if (amp < 1) { return false; } else { domain = email.substring(amp + 1); var pnt = domain.indexOf('.'); if (pnt < 2) { return false; } else { ltl = domain.length - pnt - 1; if (ltl < 2) { return false; } } } } } function CheckRB(fname) { var rset = eval("document.regform." + fname); var rok = false; for (i = 0; i < rset.length; i++) { //window.alert(rset[i].value); if (rset[i].checked == true) { rok = true; } } return rok; } function CheckTN(fname,required) { var vok; var tnf = eval("document.regform." + fname); var tn = tnf.value; if (tn == '') { vok = false; } else { var nf = 0; for (i = 0; i < tn.length; i++) { cc = tn.charAt(i); if (!isNaN(cc) && cc != " ") { nf++; } } if (nf < 10) { vok = false; } else { vok = true; } } if (vok == false) { warn(fname,required); return false; } else { unwarn(fname,required); return true; } } function CheckUNPW(fname,label) { var vok; var upf = eval("document.regform." + fname); var unpw = upf.value; if (unpw.length < 6) { vok = false; window.alert(label + ' has too few characters. Please use at least six.'); } else if (unpw.length > 20) { vok = false; window.alert(label + ' is too long. Not more than 20 characters are permitted.'); } else { var nv = ''; var xchar = 0; for (i = 0; i < unpw.length; i++) { cc = unpw.charAt(i); ccd = cc.charCodeAt(0); if (!((ccd > 47 && ccd < 58) || (ccd > 64 && ccd < 91) ||(ccd > 96 && ccd < 123))) { xchar = 1; } else { nv = nv + cc; } } if (xchar == 1) { vok = false; upf.value = nv; window.alert(label + ' contained non-alphanumeric characters. Only letters and numbers are allowed. Please check.'); } else { vok = true; } } return vok; } function CheckDAddress() { var daok = true; var pdi = document.regform; if (pdi.daddress1.value == "" && pdi.daddress2.value != "") { pdi.daddress1.value = pdi.daddress2.value; pdi.daddress2.value = ""; } if (pdi.dname.value != "" || pdi.daddress1.value != "" || pdi.dcity.value != "") { if (pdi.dname.value == "") { warn('dname',1); daok = false; } else { unwarn('dname',1); } if (pdi.daddress1.value == "") { warn('daddress1',1); daok = false; } else { unwarn('daddress1',1); } if (pdi.dcity.value == "") { warn('dcity',1); daok = false; } else { unwarn('dcity',1); } fieldok = ValidateZip('dzipcode',1); if (fieldok == false) { warn('dzipcode',1); daok = false; } else { unwarn('dzipcode',1); } if (pdi.dstateprov.selectedIndex == 0) { warn('dstateprov',1); daok = false; } else { unwarn('dstateprov',1); } } else { unwarn('dname',0); unwarn('daddress1',0); unwarn('dcity',0); unwarn('dstateprov',0); unwarn('dzipcode',0); } }