var ACQ = this.getField("Acquired_Date").value; //user-entered, purchase date of vehicle var ARPD = this.getField("Advanced_Renewal_Period_Date").value;//calculated in that field, 90 days before customer's current year birthday var oDOB = this.getField("BirthDate").valueAsString;//user-entered, Date of Birth var cbBiennial = this.getField("Biennial").value;//checked if customer chooses 2-year registration period, otherwise calculations below consider a 1-year registration period if(oDOB !== "") { //testing for user-entered BirthDate var cDOB = util.scand("mm/dd/yy", oDOB.slice(0,6));//creating current Date of Birth var dACQ = util.scand("mm/dd/yy", ACQ);//creating Acquired Date var dARPD = util.scand("mm/dd/yy", ARPD);//creating date 90 days before current year Date of Birth var msRPSY = cDOB.getTime() - dACQ.getTime();//user-entered DOB follows user-entered Acquired Date in the Same Year (ex. cDOB = 11/02/2021, dACQ = 02/25/21 would be 9 month difference) var ONEDAY = (24 * 60 * 60 * 1000);//millisecond to day conversion var dRPSY = msRPSY/ONEDAY;//period in days between dACQ and cDOB dRPSY = Math.floor(dRPSY);//round down var ONEMONTH = (31 * 24 * 60 * 60 * 1000);//millisecond to month conversion var moRPSY = msRPSY/ONEMONTH;//period in months between dACQ and cDOB var ONEYEAR = (12 * 31 * 24 * 60 * 60 * 1000);//millisecond to year conversion var yRPSY = msRPSY/ONEYEAR;//period in years between dACQ and cDOB var msRPNY = dACQ.getTime() - cDOB.getTime();//user-entered DOB follows user-entered Acquired Date in the Next Year (ex. dACQ = 11/02/2020, cDOB = 02/25/21 would be 4 month difference) var dRPNY = msRPNY/ONEDAY;//period in days between dACQ and cDOB dRPNY = Math.floor(dRPNY);//round down var moRPNY = msRPSY/ONEMONTH;//period in months between dACQ and cDOB var yRPNY = msRPNY/ONEYEAR;//period in years between dACQ and cDOB var msARPD = dARPD.getTime();//convert to milliseconds var msDOB = cDOB.getTime();//convert to milliseconds var msRGRNP = msDOB + msARPD;//add to get Registration Renewal Period in milliseconds var YREGP = cDOB; YREGP.setFullYear(cDOB.getFullYear() + 1); var YYREGP = cDOB; YYREGP.setFullYear(cDOB.getFullYear() + 2); var msYREGP = YREGP.getTime(); var msXRGP = msYREGP + msRGRNP; var moXRGP = msXRGP / ONEMONTH; var msYYREGP = YYREGP.getTime(); var msXXRGP = msYYREGP + msRGRNP; var moXXRGP = msXXRGP / ONEMONTH; } else if (cDOB > dACQ) {event.value = moRPSY;} else if (cDOB < dACQ) {event.value = moRPNY;} else if ((dARWP < dACQ < cDOB) && (cbBiennial === "Off")) {event.value = moXRGP;} else if ((dARWP < dACQ < cDOB) && (cbBiennial !== "Off")) {event.value = moXXRGP;}