another way :
Code:public function WeekNumber(adate:Date):int{ // // 1 - CALC JULIAN DATE NUMBER (note: nothing to do with the Julian calendar) // var wfullyear:int = adate.getFullYear(); var wmonth:int = adate.getMonth() + 1; var wdate:int = adate.getDate(); // var wa:int = Math.floor((14 - wmonth) / 12); var wy:int = wfullyear + 4800 - wa; var wm:int = wmonth + 12 * wa - 3; // // wJDN is the Julian Day Number // var wJDN:int = wdate + Math.floor(((153 * wm) + 2) / 5) + wy * 365 + Math.floor(wy / 4) - Math.floor(wy / 100) + Math.floor(wy / 400) - 32045; // // 2 - CALC WEEK NB // var d4:int = (((wJDN + 31741 - (wJDN % 7)) % 146097) % 36524) % 1461; var L:int = Math.floor(d4 / 1460); var d1:int = ((d4 - L) % 365) + L; var wweekNb:int = Math.floor(d1 / 7) + 1; return wweekNb; };




Reply With Quote
